CN104765695A - 一种nand flash坏块管理系统及方法 - Google Patents
一种nand flash坏块管理系统及方法 Download PDFInfo
- Publication number
- CN104765695A CN104765695A CN201510158107.3A CN201510158107A CN104765695A CN 104765695 A CN104765695 A CN 104765695A CN 201510158107 A CN201510158107 A CN 201510158107A CN 104765695 A CN104765695 A CN 104765695A
- Authority
- CN
- China
- Prior art keywords
- bad block
- nand flash
- bad
- block management
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开了一种NAND FLASH坏块管理系统,包括NAND FLASH接口控制单元、坏块管理单元、非易失性存储器接口控制单元和非易失性存储器,所述NAND FLASH接口控制单元连接NAND FLASH阵列,所述NAND FLASH接口控制单元连接坏块管理单元,所述坏块管理单元通过非易失性存储器接口控制单元连接非易失性存储器。所述的非易失性存储器是EEPROM。所述的坏块管理单元基于FPGA。
Description
技术领域
本发明属于集成电路存储技术领域,特别涉及一种NAND FLASH坏块管理系统及方法。
背景技术
FLASH,是一种电子式可清除程序化只读存储器的形式,允许在操作中被多次擦或写的存储器。这种科技主要用于一般性数据存储,以及在电脑与其他数字产品间交换传输数据,如储存卡与U盘。闪存是一种特殊的、以宏块抹写的EEPROM。早期的闪存进行一次抹除掉就会清除掉整颗芯片上的数据。闪存是非易失性的存储器。这表示单就保存数据而言,它是不需要消耗电力的。与硬盘相比,闪存也有更佳的动态抗震性。这些特性正是闪存被移动设备广泛采用的原因。闪存将数据存储在由浮闸晶体管组成的记忆单元数组内,在单阶存储单元(Single-level cell,SLC)设备中,每个单元只存储1比特的信息。而多阶存储单元(Multi-level cell,MLC)设备则利用多种电荷值的控制让每个单元可以存储1比特以上的数据。
NOR型闪存内部记忆单元以平行方式连接到比特线,允许个别读取与程序化记忆单元。这种记忆单元的平行连接类似于CMOS NOR闸中的晶体管平行连接。NOR型闪存面世后,成为比现有的EPROM与EEPROM存储器更经济、更方便的复写型只读存储器。NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。
NAND型闪存内部记忆单元以顺序方式连接,类似于NAND闸。顺序连接方式所占空间较平行连接方式为小,降低了NAND型闪存的成本。因为采用顺序连接方式及去除字符组的接触点,NAND型闪存记忆单元的大型闸格所占面积只有NOR型记忆单元的60%。NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理需要特殊的系统接口。为了能够有效使用NAND FLASH,需要在读写操作前建立坏块表,用于屏蔽坏块,防止破坏数据有效性。
发明内容
本发明的目的是提供一种NAND FLASH坏块管理系统及方法。
本发明的技术方案是,一种NAND FLASH坏块管理系统,包括NANDFLASH接口控制单元、坏块管理单元、非易失性存储器接口控制单元和非易失性存储器,
所述NAND FLASH接口控制单元连接NAND FLASH阵列,
所述NAND FLASH接口控制单元连接坏块管理单元,
所述坏块管理单元通过非易失性存储器接口控制单元连接非易失性存储器。
进一步的,所述的非易失性存储器是EEPROM。
进一步的,所述的坏块管理单元基于FPGA。
一种NAND FLASH坏块管理方法,所述的NAND FLASH坏块管理方法包括更新坏块表,具体步骤如下:
按照块地址递增的顺序遍历NAND FLASH阵列的每一个块单元;
查看当前块的首个OOB区域,如果该区域的第一个字节为00H,表示该块单元为坏块,如果不为00H,那么对该块进行擦除操作,
如果状态寄存器显示擦除成功,则进行误码检测,否则将首个OOB区域的第一个字节数据编程为00H用于标记该坏块,同时在坏块表中将该地址代表的块标记为坏块。
进一步的,所述的误码检测通过写入全0数据,再通过读取操作检验非0个数来判断误码个数,重复进行若干次,若超过纠错性能则标记为坏块。
进一步的,所述坏块表保存在片上RAM中。
进一步的,所述误码检测完成后,将片上RAM保存的坏块表写入到非易失性存储器的相应存储区域,用于更新坏块表。
进一步的,更新坏块表时,跳过当前坏块,对其余块进行包括擦除和误码检测。
一种NAND FLASH坏块管理方法,所述的NAND FLASH坏块管理方法包括读取坏块表,当读取坏块表时,通过比较三份备份判断是否发生掉电事件,
如果三份备份数据相同,则坏块保存过程中过程完整,数据有效,如果不同,则选取坏块数量最多的备份作为有效坏块表,更新其余两份备份。
进一步的,进行更新坏块表操作。
本发明的技术方案在系统上电后,根据需求决定更新坏块表或读取坏块表。系统更新坏块表时,跳过现有坏块,对其余块进行坏块检测,包括擦除检测以及误码检测。检测完成后更新坏块表。
系统读取坏块表时,通过比较三份备份判断是否发生掉电事件。如果三份备份数据相同,则坏块保存过程中过程完整,数据有效。如果不同,则选取坏块数量最多的备份作为有效坏块表,更新其余两份备份,同时建议重新进行坏块检测更新操作。
在上述实现NAND FLASH坏块管理的方法中,对坏块的检测分为擦除检测和误码检测两部分。擦除检测通过对选中块进行擦除操作,根据擦除结果判断选中块的有效性。误码检测通过对通过擦除检测的块进行数据写入和读出比对,判断误码出现次数,超过现有系统的误码校验能力,则标记为坏块。
在上述实现NAND FLASH坏块管理的方法中,对坏块的更新通过三次写入来防止掉电等特殊情况带来的数据有效性的破坏。
本发明提及的OOB区域,OOB是out of band缩写,带外的意思。最初基于Nand Flash的硬件特性:数据在读写时候相对容易错误,所以为了保证数据的正确性,必须要有对应的检测和纠错机制,此机制被叫做EDC(ErrorDetection Code)/ECC(Error Code Correction,错误码纠正,或者Error Checkingand Correcting),所以设计了多余的区域,用于放置数据的校验值。
本发明可以提高坏块表的有效性,提高NAND FLASH在使用过程中存储读取数据的准确性,提高效率。
附图说明
图1是本发明的设计结构示意图;
图2是本发明的NAND FLASH坏块检测程序流程图;
图3是本发明的在系统中的应用示意图。
具体实施方式
如图1所示,本发明包括NAND FLASH的接口控制单元,非易失性存储器的接口控制单元以及坏块管理单元。非易失性存储器可以为EEPROM,比常规的写入在NAND FLASH的OOB区域带来更高的数据有效性。
如图2所示,按照块地址(Block Address)递增的顺序遍历NAND FLASH阵列的每一个块(Block)单元,查看当前块(Block)的首个OOB区域,如果该区域的第一个字节(Byte)为8’h00,表示该Block单元为坏块。如果不为8’h00,那么对该块进行擦除操作,如果状态寄存器显示擦除成功,则进行误码检测,否则将首个OOB区域的第一个字节(Byte)数据编程为8’h00用于标记该坏块,同时在嵌入式系统片上RAM的坏块表中将该地址代表的块(Block)标记为坏块。误码检测通过写入全0数据,再通过读取操作检验非0个数来判断误码个数,重复进行三次,若超过纠错性能则标记为坏块。在NAND FLASH阵列完成上述操作后,将片上RAM保存的坏块表写入到EEPROM的相应存储区域,用于更新坏块表。
如图3所示,系统中的FPGA通过本发明控制NAND FLASH,并将坏块数据通过本发明与EEPROM进行交互。
Claims (10)
1.一种NAND FLASH坏块管理系统,其特征在于,包括NAND FLASH接口控制单元、坏块管理单元、非易失性存储器接口控制单元和非易失性存储器,
所述NAND FLASH接口控制单元连接NAND FLASH阵列,
所述NAND FLASH接口控制单元连接坏块管理单元,
所述坏块管理单元通过非易失性存储器接口控制单元连接非易失性存储器。
2.如权利要求1所述的NAND FLASH坏块管理系统,其特征在于,所述的非易失性存储器是EEPROM。
3.如权利要求1所述的NAND FLASH坏块管理系统,其特征在于,所述的坏块管理单元基于FPGA。
4.一种NAND FLASH坏块管理方法,采用如权利要求1所述的NAND FLASH坏块管理系统,其特征在于,所述的NAND FLASH坏块管理方法包括更新坏块表,具体步骤如下:
按照块地址递增的顺序遍历NAND FLASH阵列的每一个块单元;
查看当前块的首个OOB区域,如果该区域的第一个字节为00H,表示该块单元为坏块,如果不为00H,那么对该块进行擦除操作,
如果状态寄存器显示擦除成功,则进行误码检测,否则将首个OOB区域的第一个字节数据编程为00H用于标记该坏块,同时在坏块表中将该地址代表的块标记为坏块。
5.如权利要求4所述的NAND FLASH坏块管理方法,其特征在于,所述的误码检测通过写入全0数据,再通过读取操作检验非0个数来判断误码个数,重复进行若干次,若超过纠错性能则标记为坏块。
6.如权利要求4所述的NAND FLASH坏块管理方法,其特征在于,所述坏块表保存在片上RAM中。
7.如权利要求6所述的NAND FLASH坏块管理方法,其特征在于,所述误码检测完成后,将片上RAM保存的坏块表写入到非易失性存储器的相应存储区域,用于更新坏块表。
8.如权利要求4所述的NAND FLASH坏块管理方法,其特征在于,更新坏块表时,跳过当前坏块,对其余块进行包括擦除和误码检测。
9.一种NAND FLASH坏块管理方法,采用如权利要求1所述的NAND FLASH坏块管理系统,其特征在于,所述的NAND FLASH坏块管理方法包括读取坏块表,当读取坏块表时,通过比较三份备份判断是否发生掉电事件,
如果三份备份数据相同,则坏块保存过程中过程完整,数据有效,如果不同,则选取坏块数量最多的备份作为有效坏块表,更新其余两份备份。
10.如权利要求9所述的NAND FLASH坏块管理方法,其特征在于,进行如权利要求4所述的更新坏块表操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510158107.3A CN104765695A (zh) | 2015-04-03 | 2015-04-03 | 一种nand flash坏块管理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510158107.3A CN104765695A (zh) | 2015-04-03 | 2015-04-03 | 一种nand flash坏块管理系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104765695A true CN104765695A (zh) | 2015-07-08 |
Family
ID=53647538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510158107.3A Pending CN104765695A (zh) | 2015-04-03 | 2015-04-03 | 一种nand flash坏块管理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104765695A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105005453A (zh) * | 2015-07-17 | 2015-10-28 | 上海卫星工程研究所 | 星载nand flash固存坏区管理系统 |
CN105786719A (zh) * | 2016-03-03 | 2016-07-20 | 北京兆易创新科技股份有限公司 | 一种NAND Flash存储器和存储器中坏块的处理方法 |
CN105843749A (zh) * | 2016-03-24 | 2016-08-10 | 浙江大学 | 一种基于FPGA的NAND Flash容错方法 |
CN107102821A (zh) * | 2017-04-21 | 2017-08-29 | 济南浪潮高新科技投资发展有限公司 | 一种nand flash阵列写失败的处理方法 |
CN108665942A (zh) * | 2017-04-01 | 2018-10-16 | 北京兆易创新科技股份有限公司 | 一种nand闪存芯片的测试方法及设备 |
TWI664528B (zh) * | 2018-06-06 | 2019-07-01 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
CN110333971A (zh) * | 2019-07-10 | 2019-10-15 | 深圳忆联信息系统有限公司 | Ssd坏块表备份方法、装置、计算机设备及存储介质 |
CN110609795A (zh) * | 2018-06-14 | 2019-12-24 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN110837345A (zh) * | 2019-11-08 | 2020-02-25 | 杭州华澜微电子股份有限公司 | 一种坏块表的存放方法及装置 |
CN112181304A (zh) * | 2020-09-30 | 2021-01-05 | 浙江大学 | 一种星载NAND Flash存储管理系统 |
CN114627932A (zh) * | 2020-12-09 | 2022-06-14 | 南京长峰航天电子科技有限公司 | 一种nand flash存储芯片坏区检测管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080082736A1 (en) * | 2004-03-11 | 2008-04-03 | Chow David Q | Managing bad blocks in various flash memory cells for electronic data flash card |
CN102135927A (zh) * | 2011-04-29 | 2011-07-27 | 杭州华三通信技术有限公司 | 一种基于nand flash的系统引导方法和装置 |
CN102169462A (zh) * | 2011-04-27 | 2011-08-31 | 中国科学院光电技术研究所 | 基于NAND Flash的数据记录方法与记录控制器 |
CN103593303A (zh) * | 2013-10-29 | 2014-02-19 | 福建星网视易信息系统有限公司 | 一种坏块表存放方法、装置以及与非门型非易失存储器 |
CN104360958A (zh) * | 2014-12-09 | 2015-02-18 | 哈尔滨工业大学 | 基于块保留区替换的坏块管理系统及管理方法 |
-
2015
- 2015-04-03 CN CN201510158107.3A patent/CN104765695A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080082736A1 (en) * | 2004-03-11 | 2008-04-03 | Chow David Q | Managing bad blocks in various flash memory cells for electronic data flash card |
CN102169462A (zh) * | 2011-04-27 | 2011-08-31 | 中国科学院光电技术研究所 | 基于NAND Flash的数据记录方法与记录控制器 |
CN102135927A (zh) * | 2011-04-29 | 2011-07-27 | 杭州华三通信技术有限公司 | 一种基于nand flash的系统引导方法和装置 |
CN103593303A (zh) * | 2013-10-29 | 2014-02-19 | 福建星网视易信息系统有限公司 | 一种坏块表存放方法、装置以及与非门型非易失存储器 |
CN104360958A (zh) * | 2014-12-09 | 2015-02-18 | 哈尔滨工业大学 | 基于块保留区替换的坏块管理系统及管理方法 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105005453A (zh) * | 2015-07-17 | 2015-10-28 | 上海卫星工程研究所 | 星载nand flash固存坏区管理系统 |
CN105005453B (zh) * | 2015-07-17 | 2018-05-22 | 上海卫星工程研究所 | 星载nand flash固存坏区管理系统 |
CN105786719A (zh) * | 2016-03-03 | 2016-07-20 | 北京兆易创新科技股份有限公司 | 一种NAND Flash存储器和存储器中坏块的处理方法 |
CN105843749B (zh) * | 2016-03-24 | 2019-01-25 | 浙江大学 | 一种基于FPGA的NAND Flash容错方法 |
CN105843749A (zh) * | 2016-03-24 | 2016-08-10 | 浙江大学 | 一种基于FPGA的NAND Flash容错方法 |
CN108665942A (zh) * | 2017-04-01 | 2018-10-16 | 北京兆易创新科技股份有限公司 | 一种nand闪存芯片的测试方法及设备 |
CN107102821A (zh) * | 2017-04-21 | 2017-08-29 | 济南浪潮高新科技投资发展有限公司 | 一种nand flash阵列写失败的处理方法 |
TWI664528B (zh) * | 2018-06-06 | 2019-07-01 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
CN110609795A (zh) * | 2018-06-14 | 2019-12-24 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN110609795B (zh) * | 2018-06-14 | 2022-11-22 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN110333971A (zh) * | 2019-07-10 | 2019-10-15 | 深圳忆联信息系统有限公司 | Ssd坏块表备份方法、装置、计算机设备及存储介质 |
CN110333971B (zh) * | 2019-07-10 | 2021-08-17 | 深圳忆联信息系统有限公司 | Ssd坏块表备份方法、装置、计算机设备及存储介质 |
CN110837345A (zh) * | 2019-11-08 | 2020-02-25 | 杭州华澜微电子股份有限公司 | 一种坏块表的存放方法及装置 |
CN112181304A (zh) * | 2020-09-30 | 2021-01-05 | 浙江大学 | 一种星载NAND Flash存储管理系统 |
CN114627932A (zh) * | 2020-12-09 | 2022-06-14 | 南京长峰航天电子科技有限公司 | 一种nand flash存储芯片坏区检测管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104765695A (zh) | 一种nand flash坏块管理系统及方法 | |
TWI527037B (zh) | 資料儲存方法、記憶體控制電路單元與記憶體儲存裝置 | |
US8806301B2 (en) | Data writing method for a flash memory, and controller and storage system using the same | |
Cooke | The inconvenient truths of NAND flash memory | |
US8386905B2 (en) | Error correcting method, and memory controller and memory storage system using the same | |
TWI470431B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI479314B (zh) | 系統資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
TWI476590B (zh) | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
TW201437807A (zh) | 映射資訊記錄方法、記憶體控制器與記憶體儲存裝置 | |
CN104765568A (zh) | 数据存储方法、存储器控制电路单元与存储器存储装置 | |
US8667210B2 (en) | Memory management method, memory controller and memory storage apparatus | |
US9383929B2 (en) | Data storing method and memory controller and memory storage device using the same | |
CN105808371A (zh) | 数据备份与恢复方法、控制芯片及存储装置 | |
CN104765569A (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
CN113885808B (zh) | 映射信息记录方法以及存储器控制电路单元与存储装置 | |
TWI486765B (zh) | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI540428B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
US20120166706A1 (en) | Data management method, memory controller and embedded memory storage apparatus using the same | |
CN104636267A (zh) | 存储器控制方法、存储器存储装置与存储器控制电路单元 | |
CN107291374A (zh) | 纪录数据区块的使用时间的方法及其装置 | |
CN102592670B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN103593296A (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
CN105022695A (zh) | 数据存储方法、存储器控制电路单元与存储器存储装置 | |
CN103136111A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102446137B (zh) | 数据写入方法、存储器控制器与存储器储存装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150708 |