[发明专利]用于flash存储器的高可靠性数据读取方法在审
申请号: | 201510039315.1 | 申请日: | 2012-12-31 |
公开(公告)号: | CN104598169A | 公开(公告)日: | 2015-05-06 |
发明(设计)人: | 郑茳;肖佐楠;匡启和;王廷平;薛毅 | 申请(专利权)人: | 苏州国芯科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F11/10 |
代理公司: | 苏州创元专利商标事务所有限公司 32103 | 代理人: | 马明渡;王健 |
地址: | 215011 江苏省苏州市高*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 flash 存储器 可靠性数据 读取 方法 | ||
技术领域
本发明涉及一种存储设备读写方法,具体涉及一种用于flash存储器的高可靠性数据读取方法。
背景技术
现有nandflash内存由若干物理块组成,如图1所示,物理块包含若干个物理页,物理页包括管理字节区、若干个由至少两个扇区组成的用户数据区和若干个分别与所述用户数据区一一对应的错误校验区(ECC),每个错误校验区(ECC)用于校验并纠错其负责的用户数据区的错误代码,所述管理字节区用来建立逻辑页与物理页之间或者建立逻辑块与物理块之间的对应关系。
管理理字节:一般是存储控制器厂家根据自己的管理算法定义的几个字节,在实际应用中需要单独读取这部分数据用来建立逻辑页与物理页之间或者建立逻辑块与物理块之间的对应关系和提供其它用户管理信息。
1k用户数据: 包含用户数据两个扇区的数据。
LBA: logical block address,逻辑块地址对应于用户一个扇区(512个字节)的数据,PC主端与存储类设备通信是以一个扇区(512个字节)为单位进行读写的。
ECC: error correction code,错误校验(代码)。 nandflash 物理特性上使得其数据读写过程中会发生一定几率的错误,需要有个对应的错误检验和纠正的机制,所以存储控制器一般都提供ECC用于用户数据的检测和纠正. Nandflash的ECC,常见的算法有BCH和海明码;
当用户只需要1k用户数据中前一个扇区或后一个扇区的数据,如果将整个1k的数据都加载到存储控制器缓存中,势必存储控制器缓存需要多增加一个扇区大小的容量; 另外本来只需要对一个扇区进行纠错,如果对整个1k用户数据都进行纠错的话, 必然降低了对nandflash的读速度。因此如何提高了对nandflash存储设备的读写速度,成为本领域技术人员努力的方向。
发明内容
本发明目的是提供一种用于flash存储器的高可靠性数据读取方法,该方法提高了对flash存储器的读写速度,且保证了读写信息准确性且硬件利用率高。
为达到上述目的,本发明采用的技术方案是:一种应用于nandflash存储设备的快速读写方法,所述nandflash存储器由若干物理块组成,物理块包含若干个物理页,物理页包括管理字节区、若干个由左、右两个扇区组成的用户数据区和若干个分别与所述用户数据区一一对应的具有纠错功能的错误校验区(ECC),每个错误校验区(ECC)用于校验并纠错其负责的用户数据区中错误代码,所述管理字节区用来建立逻辑页与物理页之间的对应关系或者建立逻辑块与物理块之间的对应关系;
还包括一组ECC控制寄存器用于对管理字节区、用户数据区及错误校验区分别控制是否进行纠错,此ECC控制寄存器包括:
管理字节使能位,用于控制是否对所述管理字节区进行纠错;
左扇区数据使能位,用于控制是否对所述用户数据区中一个扇区进行纠错处理;
右扇区数据使能位,用于控制是否对所述用户数据区中另一个扇区进行纠错处理;
错误校验使能位,用于控制是否对所述错误校验区(ECC)进行纠错处理;
管理字节长度控制位,用于配置管理字节的长度,从而控制对物理页中使能的区域进行纠错,而对物理页中关闭的区域不进行纠错;
所述用户数据区包括一个第一用户数据区和至少一个第二用户数据区,所述错误校验区(ECC)包括一个第一错误校验区(ECC)和至少一个第二错误校验区(ECC),所述第一错误校验区(ECC)用于将其相应的第一用户数据区和管理字节区合在一起进行校验纠错编码;
在对nandflash进行读操作时:当在逻辑上读用户数据区中左扇区时,则使能ECC控制寄存器中左扇区数据使能位,如果左扇区位于第一用户数据区内,则配置ECC控制寄存器中管理字节长度控制位有效(长度为8),发送读命令将用户管理信息读入BCH模块解码查错,但不加载到控制器缓存中,将左扇区数据读到BCH模块解码查错,并加载到控制器缓存中进行纠错,再将右扇区读到BCH模块解码查错,但不加载到控制器缓存中,否则,发送读命令将左扇区数据读到BCH模块解码查错,并加载到控制器缓存中进行纠错,再将右扇区读到BCH模块解码查错,但不加载到控制器的缓存中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州国芯科技有限公司;,未经苏州国芯科技有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510039315.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于元数据的阵列重建方法及装置
- 下一篇:一种数据恢复方法及对象存储设备