经信息序列化实现闪存控制器管理数据存储与还原的方法

文档序号:6471372阅读:180来源:国知局
专利名称:经信息序列化实现闪存控制器管理数据存储与还原的方法
技术领域
本发明涉及闪存的存储技术,具体涉及一种经信息序列化实现闪存控制器管理数
据存储与还原的方法。
背景技术
序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序 列化,它将流转换为对象。这两个过程结合起来,就使得数据能够被轻松地存储和传输。目 前大部分闪存控制器对于NandFlash的信息是写入NandFlash备用数据区进行存储管理, 这样做的存在操作时要不断的存取相应的扇区的备用区数据,频繁的存取操作影响了读写 的速度;由于备用数据区空间较小,闪存控制器的结构稍微复杂一些便不再适合。

发明内容
本发明的目的在于提供一种经信息序列化实现闪存控制器管理数据存储与还原 的方法,其解决了背景技术中对NandFlash中的块与扇区的管理信息读写速度慢以及管理 信息单独存储就受备用数据区大小的限制的问题。
本发明的技术解决方案是 —种经信息序列化实现闪存控制器管理数据存储的方法,其特征在于,该方法包 括以下步骤 a).根据每一个信息对应一个枚举标识符常量,建立包含所有标识符常量的枚举 表; b).生成一个与枚举列表对应的地址映射索引表,地址映射索引表的具体数据结 构包括信息的起始扇区号和信息大小,每一个枚举列表中的枚举标识符常量对应索引表中 的一项; C).对枚举列表与地址映射索引表中的信息进行初始化赋值操作; d).对初始化管理的信息进行存储管理; e).对存储管理的信息建立更新地址映射索引表; f).对更新地址映射索引表中的信息进行存储,最终完成存储的整个过程。
上述步骤(d)中的存储管理还包括 首先对初始化信息进行存储,接着根据信息存储的块地址获取信息的起始扇区 号,根据初始化信息获取要保存的信息大小;然后对信息大小进行判断,具体判断如下
若信息的大小超过一个块的大小,接着对存储信息起始扇区号及总大小进行跨块 存储,然后对地址映射索引表中的扇区号及信息大小进行更新;若信息的大小没有超过一 个块的大小,直接对地址映射索引表中的扇区号及信息大小进行更新,更新完后存储地址 映射索引表。 上述跨块存储首先获取将用来存储上一块未存储完的信息的块的扇区号,再经过 计算剩余信息大小来实现存储。
—种经信息序列化实现闪存控制器管理数据还原的方法,其特征在于所述闪存控
制器管理信息的还原包括一下步骤 a).对地址映射索引表的信息进行读取; b).以枚举标识符为索引获取信息的起始扇区号和大小; C).针对获取的扇区号和大小按扇区读取信息内容; d).将重组与还原信息的指针指向还原后的信息内容,从而完成整个还原过程。
上述步骤(c)还包括对信息的读取是否完毕进行判断,
具体判断如下 若所要读取的信息读取完毕后,直接对内存信息进行重组还原;
若信息的读取未完毕,进入下一个步骤对信息是否跨块存储进行判断;
若信息没有跨块存储,直接返回上一步骤按扇区对信息内容进行读取;
若信息读取完毕,直接对内存信息进行重组还原; 若信息跨块存储,进入下一步骤,获取剩余信息在其他块的起始扇区号及大小,获 取完后再返回按扇区读取信息内容步骤,再继续对信息进行读取,直至信息读取完毕,信息 读取完毕后再对内存中的信息进行重组与还原,最终完成整个还原过程。
本发明具有以下优点 1.由于扇区的管理信息在内存中可以直接获取,所以速度相比每次从扇区备用区
中获取信息快许多,可以显著提高扇区读写的效率。 2.管理信息单独存储可以不受备用数据区大小的限制。 3.闪存控制器应用灵活。


图1是本发明管理信息序列化的组成框图;
图2是本发明存储管理信息操作框图;
图3是本发明还原管理信息操作框图;
图4是本发明信息存储程序流程图;
图5是本发明信息还原程序流程图。
具体实施例方式
参见图1-图5,一种经信息序列化实现闪存控制器管理数据存储的方法,其特征 在于,该方法包括以下步骤 a).根据每一个信息对应一个枚举标识符常量,建立包含所有标识符常量的枚举 表; b).生成一个与枚举列表对应的地址映射索引表,地址映射索引表的具体数据结 构包括信息的起始扇区号和信息大小,每一个枚举列表中的枚举标识符常量对应索引表中 的一项; C).对枚举列表与地址映射索引表中的信息进行初始化赋值操作; d).对初始化管理的信息进行存储管理; e).对存储管理的信息建立更新地址映射索引表;
f).对更新地址映射索引表中的信息进行存储,最终完成存储的整个过程。
上述步骤(d)中的存储管理还包括 首先对初始化信息进行存储,接着根据信息存储的块地址获取信息的起始扇区号,根据初始化信息获取要保存的信息大小;然后对信息大小进行判断,具体判断如下
若信息的大小超过一个块的大小,接着对存储信息起始扇区号及总大小进行跨块存储,然后对地址映射索引表中的扇区号及信息大小进行更新;若信息的大小没有超过一个块的大小,直接对地址映射索引表中的扇区号及信息大小进行更新,更新完后存储地址映射索引表。 跨块存储首先获取将用来存储上一块未存储完的信息的块的扇区号,再经过计算剩余信息大小来实现存储。 —种经管理信息序列化实现闪存控制器管理数据还原的方法,其特征在于所述闪
存控制器管理信息的还原包括一下步骤 a).对地址映射索引表的信息进行读取; b).以枚举标识符为索引获取信息的起始扇区号和大小; c).针对获取的扇区号和大小按扇区读取信息内容; d).将重组与还原信息的指针指向还原后的信息内容,从而完成整个还原过程。
上述步骤(c)还包括对信息的读取是否完毕进行判断, 具体判断如下若所要读取的信息读取完毕后,直接对内存信息进行重组还原;
若信息的读取未完毕,进入下一个步骤对信息是否跨块存储进行判断;若信息没有跨块存
储,直接返回上一步骤按扇区对信息内容进行读取;若信息读取完毕,直接对内存信息进行
重组还原;若信息跨块存储,进入下一步骤,获取剩余信息在其他块的起始扇区号及大小,
获取完后再返回按扇区读取信息内容步骤,再继续对信息进行读取,直至信息读取完毕,信
息读取完毕后再对内存中的信息进行重组与还原,最终完成整个还原过程。 本发明把一些在NandFlash管理上常用的公用信息提取出来单独存储管理,这样
就克服了备用数据区空间小的缺点。在每次闪存控制器的加电初始化过程中将相应管理信
息读取到内存中,一直到闪存控制器断电之前所有对NandFlash管理信息的操作都是在内
存中完成的,断电的时候才一次性把所有管理信息写回NandFlash。这样就很大程度上提高
了读写速度。使用闪存控制器管理信息序列化的方法来构建、存取管理信息,把之前存储的
信息读取出来之后和相应的块及扇区对应起来,也增加了闪存控制器应用的灵活性。
权利要求
一种经信息序列化实现闪存控制器管理数据存储的方法,其特征在于,该方法包括以下步骤a).根据每一个信息对应一个枚举标识符常量,建立包含所有标识符常量的枚举表;b).生成一个与枚举列表对应的地址映射索引表,地址映射索引表的具体数据结构包括信息的起始扇区号和信息大小,每一个枚举列表中的枚举标识符常量对应索引表中的一项;c).对枚举列表与地址映射索引表中的信息进行初始化赋值操作;d).对初始化管理的信息进行存储管理;e).对存储管理的信息建立更新地址映射索引表;f).对更新地址映射索引表中的信息进行存储,最终完成存储的整个过程。
2. 根据权利要求1所述的经信息序列化实现闪存控制器管理数据存储的方法,其特征在于所述步骤(d)中的存储管理还包括首先对初始化信息进行存储,接着根据信息存储的块地址获取信息的起始扇区号,根据初始化信息获取要保存的信息大小;然后对信息大小进行判断,具体判断如下若信息的大小超过一个块的大小,接着对存储信息起始扇区号及总大小进行跨块存储,然后对地址映射索引表中的扇区号及信息大小进行更新;若信息的大小没有超过一个块的大小,直接对地址映射索引表中的扇区号及信息大小进行更新,更新完后存储地址映射索引表。
3. 根据权利要求2所述的经信息序列化实现闪存控制器管理数据存储的方法,其特征在于所述跨块存储首先获取将用来存储上一块未存储完的信息的块的扇区号,再经过计算剩余信息大小来实现存储。
4. 一种经信息序列化实现闪存控制器管理数据还原的方法,其特征在于所述闪存控制器管理信息的还原包括一下步骤a) .对地址映射索引表的信息进行读取;b) .以枚举标识符为索引获取信息的起始扇区号和大小;C).针对获取的扇区号和大小按扇区读取信息内容;d).将重组与还原信息的指针指向还原后的信息内容,从而完成整个还原过程。
5. 根据权利要求4所述的经信息序列化实现闪存控制器管理数据还原的方法,其特征在于所述步骤(C)还包括对信息的读取是否完毕进行判断,具体判断如下若所要读取的信息读取完毕后,直接对内存信息进行重组还原;若信息的读取未完毕,进入下一个步骤对信息是否跨块存储进行判断;若信息没有跨块存储,直接返回上一步骤按扇区对信息内容进行读取;若信息读取完毕,直接对内存信息进行重组还原;若信息跨块存储,进入下一步骤,获取剩余信息在其他块的起始扇区号及大小,获取完后再返回按扇区读取信息内容步骤,再继续对信息进行读取,直至信息读取完毕,信息读取完毕后再对内存中的信息进行重组与还原,最终完成整个还原过程。
全文摘要
一种经信息序列化实现闪存控制器管理数据存储与还原的方法,该方法通过建立枚举表;生成一个与枚举列表对应的地址映射索引表;对枚举列表与地址映射索引表中的信息进行初始化赋值操作;对初始化管理的信息进行存储管理;建立更新地址映射索引表以及存储,最终完成存储的整个过程。还原方法包括对地址映射索引表的信息进行读取;获取信息的起始扇区号和大小;读取信息内容;将重组与还原信息的指针指向还原后的信息内容,从而完成整个还原过程。本发明解决了NandFlash中的块与扇区的管理信息读写速度慢以及管理信息单独存储就受备用数据区大小的限制的问题。具有扇区读写的效率高,闪存控制器应用灵活等优点。
文档编号G06F12/02GK101727398SQ20081023206
公开日2010年6月9日 申请日期2008年10月31日 优先权日2008年10月31日
发明者任明刚 申请人:西安奇维测控科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1