本发明专利技术公开了一种大容量Flash芯片的空间管理方法,其将Flash芯片的空间分为系统管理区和用户区;系统管理区包括两个管理页,每个管理页分成两部分:配置信息区和逻辑地址映射信息区;用户区包括文件块和空闲块;在修改文件块内容时,先找到一个空闲块擦除其数据,再写入该空闲块,最后更新管理页。本发明专利技术提供的方案不仅能有效管理用户的存贮空间,而且还能够实现文件物理空间的不连续,提高系统的效率和安全性;并且没有单独的断电保护模块,降低系统的开发难度,减少维护成本。
【技术实现步骤摘要】
【专利摘要】本专利技术公开了,其将Flash芯片的空间分为系统管理区和用户区;系统管理区包括两个管理页,每个管理页分成两部分:配置信息区和逻辑地址映射信息区;用户区包括文件块和空闲块;在修改文件块内容时,先找到一个空闲块擦除其数据,再写入该空闲块,最后更新管理页。本专利技术提供的方案不仅能有效管理用户的存贮空间,而且还能够实现文件物理空间的不连续,提高系统的效率和安全性;并且没有单独的断电保护模块,降低系统的开发难度,减少维护成本。【专利说明】
本专利技术涉及芯片存储技术,具体涉及大容量Flash芯片的空间管理技术。
技术介绍
芯片技术发展突飞猛进,芯片的应用场合越来越丰富,需要芯片支持的功能越来 越多,与之对应的是对芯片空间的要求不断增加。由于工艺的原因,EEPROM的芯片价格总 高出FLASH芯片许多,大容量的芯片更是如此。目前大容量的FLASH芯片因成本较低,逐步 成为市场主流。 由此,针对大容量的FLASH需要配置相应的空间管理机制。但是现有大容量的 FLASH的空间管理方案,无法高效的管理用户的存贮空间,其文件系统空间具有连续性,容 易分析其内部结构,断电保护系统占用单独的空间和解决方案,降低系统的运行效率,增加 开发难度和维护成本。
技术实现思路
针对现有大容量的FLASH芯片的空间管理机制所存在的问题,本专利技术的目的在于 提供一种优化的大容量Flash芯片的空间管理方法,以解决现有技术所存在的问题。 为了达到上述目的,本专利技术采用如下的技术方案: ,该管理方法将Flash芯片的空间分为系 统管理区和用户区; 所述系统管理区包括两个管理页,每个管理页分成两部分:配置信息区和逻辑地 址映射信息区; 所述用户区包括文件块和空闲块; 在修改文件块内容时,先找到一个空闲块擦除其数据,再写入该空闲块,最后更新 管理页。 在上述方案中,所述两个管理页之间相互交替更新。 进一步的,所述管理页上的配置信息区为32字节,包括4字节的流水号、2字节的 映射区块数、2字节的文件区块数、预留8字节RFU以及16字节的物理块使用状态信息。 进一步的,所述逻辑地址映射信息区112字节。 再进一步的,在逻辑地址映射信息区中文件区的逻辑页首地址与物理页首地址的 映射公式如下: 逻辑页首地址〇物理页首地址 具体如下: LogAddress 物理基地址+MAParray * 页单位)(0 = <i〈l 11), 其中: i表示逻辑页号,取值,通过逻辑号*页单位得到逻辑页首地址。 LogAddress=逻辑页号⑴*页单位。 " H ":对应于或映射于; 物理基地址:用户区可用FLASH空间的首地址; MAParray :逻辑映射数组,共112字节。MAParray 取0?127中唯一值; 页单位:表示页的大小。 进一步的,所述用户区中的文件块为112个,空闲块为16个。 进一步的,所述修改文件块内容的具体过程如下: (1)首先据物理块使用状态信息,查找到一个空闲块; (2)擦干净该空闲块的旧数据; (3)依据内存逻辑映射数组的偏移内容,写入物理页的空闲块; (4)更新内存逻辑映射数组的偏移内容; (5)更新内存流水号; (6)更新内存中物理块使用状态信息; (7)更新管理页。 再进一步的,所述步骤(3)的具体过程如下: 首先,从物理映射表区读取相应逻辑页首地址对应的映射值; 接着,根据逻辑页首地址对应的映射值,计算对应的物理页首地址; 再接着,根据计算得到的物理页首地址读出其对应的物理页数据放入缓存; 最后,在缓存中组织欲修改的新数据,写入计算得到的物理页。 本专利技术提供的方案不仅能有效管理用户的存贮空间,而且还能够提高系统的效率 和安全性,降低系统的开发难度,减少维护成本。具体达到的效果如下: (1)采用逻辑地址映射的方式管理文件块,文件系统在物理空间上没有连续性,不 易被分析其文件内容,提高系统的效率和安全性。 (2)没有单独的掉电保护系统,减少开发难度,提高系统运行效率;同时管理页的 交替修改,流水号的大者有效,可防止掉电带来的破坏。 (3)可以根据不同芯片空间的大小,灵活配置管理页结构,便于项目移植和维护。 【专利附图】【附图说明】 以下结合附图和【具体实施方式】来进一步说明本专利技术。 图1为本专利技术实例中管理页的示意图; 图2为本专利技术实例中初始管理页的示意图; 图3为本专利技术实例中初始映射关系示意图; 图4为本专利技术实例中管理页2更新内容的示意图。 【具体实施方式】 为了使本专利技术实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结 合具体图示,进一步阐述本专利技术。 对于大容量Flash芯片,本方案提供的空间管理机制将Flash芯片的空间分为系 统管理区和用户区两部分。其中,系统管理区包括两个管理页,这两个管理页之间相互交替 更新;同时每个管理页依次分成两部分:配置信息区和逻辑地址映射信息区。 对于用户区,其包括文件块和空闲块。 基于上述的管理机制,在修改文件块内容时,先找到一个空闲块擦除其数据,再写 入该空闲块,最后更新管理页。 基于上述原理方案,以下通过一具体应用实例来进一步说明本方案: 本实例中,Flash芯片的空间分为系统管理区和用户区两部分。其中管理区包括 两个管理页,管理页1和管理页2。管理页分成两部分:32字节配置信息和112字节逻辑地 址映射信息,共计144字节为一个管理单元,如图1所示。 本实例以管理页1举例说明,初始配置如图2所示,该管理页从起始地址开始依次 包括32字节配置信息区和112字节逻辑地址映射信息区。 其中,32字节配置信息区依次包括4字节的流水号、2字节的映射区块数、2字节的 文件区块数、预留8字节RFU、16字节的物理块使用状态。 流水号:管理页的修改次数,初始值为0,每修改1次加1。管理页共有两个,每个 管理页大小为2K,交替修改,流水号大的管理页有效。 映射区块数:表示用户区的可用FLASH块数。块数也即页数,本方案通用,共128 块。 文件区块数:表示文件系统可用FLASH块数。 空闲块数:映射区块数减去文件区块数的差值,用作文件修改的中间数据。 物理块使用状态:记录用户区的使用情况。假设用户区的物理首地址30000H开 始,用户区共128页,文件区112页,空闲区16页。16字节的物理块使用状态共128bit位, 表示从30000H开始的128页的用户区使用情况。bit = 1,表示该块被文件区占用;bit = 〇,表示该块空闲。任何时刻,1占用112bit,0占用16bit。初始值为FFFFFFFFFFFFFFFF FFFFFFFFFFFF0000,表示从30000H开始的112页为文件块,之后的16块为空闲块。 物理映射表区:该区域的112字节空间,表示从地址0000开始112页的逻辑地址 空间。每逻辑页首地址对应的物理页首地址,如下公式所示 逻辑页首地址0物理页首地址。其初始值如图2所示,从地址0000开始本文档来自技高网...
【技术保护点】
一种大容量Flash芯片的空间管理方法,其特征在于,所述管理方法将Flash芯片的空间分为系统管理区和用户区;所述系统管理区包括两个管理页,每个管理页分成两部分:配置信息区和逻辑地址映射信息区;所述用户区包括文件块和空闲块;在修改文件块内容时,先找到一个空闲块擦除其数据,再写入该空闲块,最后更新管理页。
【技术特征摘要】
【专利技术属性】
技术研发人员:王翔平,沈勇坚,胡永刚,
申请(专利权)人:上海动联信息技术股份有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。