CN109243517A - 一种用于NAND Flash不良区块的查找方法、固态硬盘 - Google Patents

一种用于NAND Flash不良区块的查找方法、固态硬盘 Download PDF

Info

Publication number
CN109243517A
CN109243517A CN201710557810.0A CN201710557810A CN109243517A CN 109243517 A CN109243517 A CN 109243517A CN 201710557810 A CN201710557810 A CN 201710557810A CN 109243517 A CN109243517 A CN 109243517A
Authority
CN
China
Prior art keywords
faulty blocks
address
nand flash
faulty
blocks
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.)
Granted
Application number
CN201710557810.0A
Other languages
English (en)
Other versions
CN109243517B (zh
Inventor
廖启宏
张佑全
王荣諆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Deyi Microelectronics Co ltd
Original Assignee
Li Ding Technology (shenzhen) Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Li Ding Technology (shenzhen) Co Ltd filed Critical Li Ding Technology (shenzhen) Co Ltd
Priority to CN201710557810.0A priority Critical patent/CN109243517B/zh
Publication of CN109243517A publication Critical patent/CN109243517A/zh
Application granted granted Critical
Publication of CN109243517B publication Critical patent/CN109243517B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

本发明涉及一种用于NAND Flash不良区块的查找方法、固态硬盘。包括:将不良区块查找表建立在随机存取内存内;判断控制器待写入或读取的区块是否为不良区块,若是,则进行不良区块地址查找;通过哈希查找法进行不良区块地址查找,若查找到,则结束;若未查找到,则通过二分法进行不良区块地址查找,直至查找到不良区块的直接对应地址为止。本发明的查找表是用随机存取内存实现,同时使用硬件进行搜寻,也可以将查找表存放在不同的内存,使用韧体或硬件的方式来搜寻,可大幅缩短不良区块查找表的搜寻时间,减少不必要的地址搜寻时间,增加控制器的数据写入或读取速度。

Description

一种用于NAND Flash不良区块的查找方法、固态硬盘
技术领域
本发明涉及固态硬盘领域,更具体地说,涉及一种用于NAND Flash不良区块的查找方法、固态硬盘。
背景技术
由于NAND Flash制程技术限制,使得必然存在无法使用的区块,一般称之为不良区块(Bad Block)。因此在实际使用时,控制器必须将预计要写入或读出于不良区块的资料,转为写入或读出在别的区块,所以必须有一套对应的方式来帮助控制器纪录每一个不良区块的地址对应到那一个好的区块地址。
现有的技术中,为控制器一开机时,由固件先建立一组查找表,纪录每一个不良区块的地址对应到那一个好的区块地址。此查找表可能纪录于随机存取内存(SRAM),由固件或硬件在每一次要写入或读取不良区块的时候,经过搜寻查找表,得到新的地址,才实际执行写入或读取。
查找表的大小根据NAND Flash内不良区块的数量决定,一般在几十组到几百组不等。而每一次搜寻,不管由固件或硬件执行,都要耗费非常多的频率次数,因此导致写入或读取的速度下降。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述查找过程中耗费频率次数多,导致写入或读取的速度下降缺陷,提供一种用于NAND Flash不良区块的查找方法、固态硬盘。
本发明解决其技术问题所采用的技术方案是:构造一种用于NAND Flash不良区块的查找方法,包括:
S1:将不良区块查找表建立在随机存取内存内;
S2:判断控制器待写入或读取的区块是否为不良区块,若是,则进行不良区块地址查找;
S3:通过哈希查找法进行所述不良区块地址查找,若查找到,则结束;若未查找到,则执行步骤S4;
S4:通过二分法进行所述不良区块地址查找,直至查找到所述不良区块的直接对应地址为止。
优选地,本发明所述的用于NAND Flash不良区块的查找方法,所述步骤S1包括:
S11:在编写所述不良区块查找表时,将所述不良区块的对应数据写在所述随机存取内存内,选定的所述随机存取内存的地址等于所述不良区块的直接对应地址。
优选地,本发明所述的用于NAND Flash不良区块的查找方法,所述步骤S1包括:
S12:每一次启动NAND Flash时,从系统引导文件下载所述不良区块查找表,固件将完整的所述不良区块查找表建立在所述随机存取内存内。
优选地,本发明所述的用于NAND Flash不良区块的查找方法,所述步骤S1包括:
S13:若有一个以上的所述不良区块对应同样的所述直接对应地址,则按照所述直接对应地址的地址大小进行排列。
优选地,本发明所述的用于NAND Flash不良区块的查找方法,所述步骤S13包括:
S131:若有一个以上的所述不良区块对应同样的直接对应地址,则按照所述直接对应地址的地址大小由小到大的顺序排列。
优选地,本发明所述的用于NAND Flash不良区块的查找方法,将完整的NANDFLASH地址分为哈希地址和截断地址,
所述哈希地址为所述不良区块的直接对应地址,并作为所述随机存取内存的地址,可由硬件直接进行查找;
所述截断地址为所述NAND FLASH地址中除去所述不良区块的直接对应地址的剩余部分。
优选地,本发明所述的用于NAND Flash不良区块的查找方法,所述步骤S3包括:
硬件通过所述哈希查找法在所述哈希地址中进行查找,若查找到,则结束;若未查找到,则执行所述步骤S4。
优选地,本发明所述的用于NAND Flash不良区块的查找方法,所述步骤S3包括:
若通过哈希查找法未查找到,则固件根据所述哈希地址的地址大小在所述随机存取内存选择对应的地址进行存储。
优选地,本发明所述的用于NAND Flash不良区块的查找方法,所述步骤S4包括:
S41:判断所述不良区块的地址与所述不良区块查找表的上限值和下限值是否相等;
S42:若否,则根据所述上限值和所述下限值确定中间值;
S43:判断所述不良区块与所述中间值是否相等,若否,则比较所述目标值与所述中间值的大小;
S44:根据比较结果,确定所述下限值和所述中间值为下一个查找区间,或所述中间值和所述上限值为下一个查找区间;
S45:重复执行所述步骤S41至步骤S44,直至找到所述不良区块的直接对应地址。
另,本发明还构造一种固态硬盘,所述固态硬盘使用上述的用于NAND Flash不良区块的查找方法。
实施本发明的用于NAND Flash不良区块的查找方法、固态硬盘,具有以下有益效果:该方法包括:将不良区块查找表建立在随机存取内存内;判断控制器待写入或读取的区块是否为不良区块,若是,则进行不良区块地址查找;通过哈希查找法进行不良区块地址查找,若查找到,则结束;若未查找到,则通过二分法进行不良区块地址查找,直至查找到不良区块的直接对应地址为止。本发明的查找表是用随机存取内存实现,同时使用硬件进行搜寻,也可以将查找表存放在不同的内存,使用韧体或硬件的方式来搜寻。可以大幅缩短不良区块查找表的搜寻时间,可减少不必要的地址搜寻时间,增加控制器的数据写入或读取速度。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明FLASH阵列中不良区块与正常区块的对应关系图;
图2是本发明一种用于NAND Flash不良区块的查找方法的流程示意图;
图3是本发明步骤S1的流程示意图;
图4是本发明步骤S4的流程示意图;
图5是本发明二分法查找的实施例示意图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
图2是本发明一种用于NAND Flash不良区块的查找方法的流程示意图。
具体的,该用于NAND Flash不良区块的查找方法包括:
S1:将不良区块查找表建立在随机存取内存内。
具体的,参考图1,图1是本发明FLASH阵列中不良区块与正常区块的对应关系图。在FLASH阵列中,将不良区块选择对应的正常区块进行对应,并将对应地址存储在不良区块查找表中,且不良区块查找表在FLASH中第一次使用时建立。
图3是本发明步骤S1的流程示意图,步骤S1包括:
S11:在编写不良区块查找表时,将不良区块的对应数据写在随机存取内存内,选定的随机存取内存的地址等于不良区块的直接对应地址。可以理解,一颗FLASH的不良区块在使用前都需要经过扫描才能得知不良区块的地址,这些不良区块的地址会另存为FLASH内,在每次开机时,这次不良区块的地址会被下载到随机存取内存中,供硬件查找。
S12:每一次启动NAND Flash时,即在开机时,从系统引导文件下载不良区块查找表,固件将完整的不良区块查找表建立在随机存取内存内。因断电后随机存取内存内的数据无法保存,因此在每次开机时都需要查找到不良区块查找表并存储在随机存取内存中。
S13:若有一个以上的不良区块对应同样的直接对应地址,则按照直接对应地址的地址大小进行排列。
优选地,本发明的用于NAND Flash不良区块的查找方法,步骤S13包括:
S131:若有一个以上的不良区块对应同样的直接对应地址,则按照直接对应地址的地址大小由小到大的顺序排列。
S2:判断控制器待写入或读取的区块是否为不良区块,若是,则进行不良区块地址查找;
S3:通过哈希查找法进行不良区块地址查找,若查找到,则结束;若未查找到,则执行步骤S4;
具体的,表1为随机存取内存的中不良区块地址与正常区块地址的对应表。
表1
0x0 不良区块地址0 正常区块地址0
0x1 不良区块地址1 正常区块地址1
0x2 不良区块地址2 正常区块地址2
······ ······ ······
0x200 不良区块地址512 正常区块地址512
S4:通过二分法进行不良区块地址查找,直至查找到不良区块的直接对应地址为止。
优选地,本发明的用于NAND Flash不良区块的查找方法,将完整的NAND FLASH地址分为哈希地址和截断地址,哈希地址为不良区块的直接对应地址,并作为随机存取内存的地址,可由硬件直接进行查找;截断地址为NAND FLASH地址中除去不良区块的直接对应地址的剩余部分。
例如,表2为一个完整的NAND FLASH地址分为哈希地址和截断地址。
表2
哈希地址 截断地址
A34-A26 A25-A0
优选地,本发明的用于NAND Flash不良区块的查找方法,步骤S3包括:
硬件通过哈希查找法在哈希地址中进行查找,若查找到,则结束;若未查找到,则执行步骤S4。
优选地,固件应在随机存取内存中设置查找列表,该查找列表包括查找顺序,以及每步中包含的哈希查找和/或二分法查找。如表3所示。
表3
优选地,本发明的用于NAND Flash不良区块的查找方法,步骤S3包括:
若通过哈希查找法未查找到,则固件根据哈希地址的地址大小在随机存取内存选择对应的地址进行存储。
参考图4,图4是本发明步骤S4的流程示意图,步骤S4包括:
S41:判断不良区块的地址与不良区块查找表的上限值和下限值是否相等;
S42:若否,则根据上限值和下限值确定中间值,
S43:判断不良区块与中间值是否相等,若否,则比较目标值与中间值的大小;
S44:根据比较结果,确定下限值和中间值为下一个查找区间,或中间值和上限值为下一个查找区间;
S45:重复执行步骤S41至步骤S44,直至找到不良区块的直接对应地址。
现举例对二分法查找不良区块地址的过程。参考图5,是本发明二分法查找的实施例示意图。
具体的,本次查找的目标地址为20,地址最小值为4,地址最大值,98,采用二分法,中间值为35,选取35后,通过比较,20对应的地址小于35对应的地址,说明待查询地址应在4和35之间;
此时地址最小值为4,地址最大值为35,采用二分法,取中间值15,通过比较,20对应的地址大于15对应的地址,说明待查询地址应在15至335之间;
此时地址最小值为15,地址最大值为25,采用二分法,取中间值20,通过比较,20对应的地址与待查询地址相等,则查询到20对应的地址。
另,本发明还构造一种固态硬盘,固态硬盘使用上述的用于NAND Flash不良区块的查找方法。
本发明的查找表是用随机存取内存实现,同时使用硬件进行搜寻,也可以将查找表存放在不同的内存,使用韧体或硬件的方式来搜寻。可以大幅缩短不良区块查找表的搜寻时间,可减少不必要的地址搜寻时间,增加控制器的数据写入或读取速度。
以上实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据此实施,并不能限制本发明的保护范围。凡跟本发明权利要求范围所做的均等变化与修饰,均应属于本发明权利要求的涵盖范围。

Claims (10)

1.一种用于NAND Flash不良区块的查找方法,其特征在于,包括:
S1:将不良区块查找表建立在随机存取内存内;
S2:判断控制器待写入或读取的区块是否为不良区块,若是,则进行不良区块地址查找;
S3:通过哈希查找法进行所述不良区块地址查找,若查找到,则结束;若未查找到,则执行步骤S4;
S4:通过二分法进行所述不良区块地址查找,直至查找到所述不良区块的直接对应地址为止。
2.根据权利要求1所述的用于NAND Flash不良区块的查找方法,其特征在于,所述步骤S1包括:
S11:在编写所述不良区块查找表时,将所述不良区块的对应数据写在所述随机存取内存内,选定的所述随机存取内存的地址等于所述不良区块的直接对应地址。
3.根据权利要求1所述的用于NAND Flash不良区块的查找方法,其特征在于,所述步骤S1包括:
S12:每一次启动NAND Flash时,从系统引导文件下载所述不良区块查找表,固件将完整的所述不良区块查找表建立在所述随机存取内存内。
4.根据权利要求1所述的用于NAND Flash不良区块的查找方法,其特征在于,所述步骤S1包括:
S13:若有一个以上的所述不良区块对应同样的所述直接对应地址,则按照所述直接对应地址的地址大小进行排列。
5.根据权利要求4所述的用于NAND Flash不良区块的查找方法,其特征在于,所述步骤S13包括:
S131:若有一个以上的所述不良区块对应同样的直接对应地址,则按照所述直接对应地址的地址大小由小到大的顺序排列。
6.根据权利要求1所述的用于NAND Flash不良区块的查找方法,其特征在于,将完整的NAND FLASH地址分为哈希地址和截断地址,
所述哈希地址为所述不良区块的直接对应地址,并作为所述随机存取内存的地址,可由硬件直接进行查找;
所述截断地址为所述NAND FLASH地址中除去所述不良区块的直接对应地址的剩余部分。
7.根据权利要求6所述的用于NAND Flash不良区块的查找方法,其特征在于,所述步骤S3包括:
硬件通过所述哈希查找法在所述哈希地址中进行查找,若查找到,则结束;若未查找到,则执行所述步骤S4。
8.根据权利要求6所述的用于NAND Flash不良区块的查找方法,其特征在于,所述步骤S3包括:
若通过哈希查找法未查找到,则固件根据所述哈希地址的地址大小在所述随机存取内存选择对应的地址进行存储。
9.根据权利要求1所述的用于NAND Flash不良区块的查找方法,其特征在于,所述步骤S4包括:
S41:判断所述不良区块的地址与所述不良区块查找表的上限值和下限值是否相等;
S42:若否,则根据所述上限值和所述下限值确定中间值;
S43:判断所述不良区块与所述中间值是否相等,若否,则比较所述目标值与所述中间值的大小;
S44:根据比较结果,确定所述下限值和所述中间值为下一个查找区间,或所述中间值和所述上限值为下一个查找区间;
S45:重复执行所述步骤S41至步骤S44,直至找到所述不良区块的直接对应地址。
10.一种固态硬盘,其特征在于,所述固态硬盘使用权利要求1-9任一项所述的用于NAND Flash不良区块的查找方法。
CN201710557810.0A 2017-07-10 2017-07-10 一种用于NAND Flash不良区块的查找方法、固态硬盘 Active CN109243517B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710557810.0A CN109243517B (zh) 2017-07-10 2017-07-10 一种用于NAND Flash不良区块的查找方法、固态硬盘

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710557810.0A CN109243517B (zh) 2017-07-10 2017-07-10 一种用于NAND Flash不良区块的查找方法、固态硬盘

Publications (2)

Publication Number Publication Date
CN109243517A true CN109243517A (zh) 2019-01-18
CN109243517B CN109243517B (zh) 2020-11-13

Family

ID=65083678

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710557810.0A Active CN109243517B (zh) 2017-07-10 2017-07-10 一种用于NAND Flash不良区块的查找方法、固态硬盘

Country Status (1)

Country Link
CN (1) CN109243517B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110211617A (zh) * 2019-05-17 2019-09-06 中国科学院计算技术研究所 一种哈希硬件处理装置及方法
CN110765074A (zh) * 2019-09-20 2020-02-07 国网山东省电力公司青岛供电公司 一种采集终端用电负荷曲线数据的快速存取方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008108162A (ja) * 2006-10-27 2008-05-08 Megachips Lsi Solutions Inc メモリ管理方法
CN102541667A (zh) * 2010-09-21 2012-07-04 国际商业机器公司 用散列函数区分存储系统中随机和重复差错的方法和系统
CN103390430A (zh) * 2012-05-07 2013-11-13 中国科学院微电子研究所 基于哈希表的存储器内建自修复系统及方法
US20160098201A1 (en) * 2014-10-07 2016-04-07 SK Hynix Inc. Data storage device and operating method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008108162A (ja) * 2006-10-27 2008-05-08 Megachips Lsi Solutions Inc メモリ管理方法
CN102541667A (zh) * 2010-09-21 2012-07-04 国际商业机器公司 用散列函数区分存储系统中随机和重复差错的方法和系统
CN103390430A (zh) * 2012-05-07 2013-11-13 中国科学院微电子研究所 基于哈希表的存储器内建自修复系统及方法
US20160098201A1 (en) * 2014-10-07 2016-04-07 SK Hynix Inc. Data storage device and operating method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110211617A (zh) * 2019-05-17 2019-09-06 中国科学院计算技术研究所 一种哈希硬件处理装置及方法
CN110765074A (zh) * 2019-09-20 2020-02-07 国网山东省电力公司青岛供电公司 一种采集终端用电负荷曲线数据的快速存取方法及系统

Also Published As

Publication number Publication date
CN109243517B (zh) 2020-11-13

Similar Documents

Publication Publication Date Title
CN105278876B (zh) 一种固态硬盘的数据擦除方法及装置
US8234423B2 (en) Multi-reader multi-writer circular buffer memory
US20150078112A1 (en) Method for auto-refreshing memory cells in semiconductor memory device and semiconductor memory device using the method
CN109491596B (zh) 一种降低电荷捕获型3d闪存中数据保存错误率的方法
US10007446B2 (en) Method, apparatus, and storage medium for writing data into persistent storage device
KR20170041885A (ko) 메모리의 상이한 메모리 평면들을 동시에 액세스하기 위한 장치들 및 방법들
CN103544031B (zh) 多分区外存储设备的Android系统升级方法和系统
CN109243517A (zh) 一种用于NAND Flash不良区块的查找方法、固态硬盘
US9733835B2 (en) Data storage method and storage server
US10083120B2 (en) Memory system, and address mapping method and access method thereof
CN108829347A (zh) 一种Nand设备的硬件控制器、控制方法及液晶显示器
CN103730160B (zh) 一种存储器及其读取方法、读取电路
CN112767983A (zh) 刷新控制电路及存储器
TW202038083A (zh) 通用快閃儲存記憶體模組、控制器及具有進階倍速寫入緩衝器之電子裝置,以及用於操作記憶體模組之方法
US10748462B2 (en) Hardware controller of NAND device, control method and liquid crystal display
CN112133350A (zh) 搜索电路、锤子地址管理电路及包括其的存储器系统
CN103581024A (zh) Mac地址硬件与软件相结合的学习方法及装置
CN102231136B (zh) 一种闪存存储设备的数据存储方法和装置
US20110238895A1 (en) Nonvolatile memory controller and nonvolatile storage device
TW201239374A (en) Test card for testing one or more devices under test and tester
CN109669830B (zh) 一种用于内存的物理检测方法及终端设备
CN102799536A (zh) 一种嵌入式系统中存储设备容量自适应的方法及装置
CN105677246B (zh) 一种nand闪存的数据读取方法、装置及nand闪存
CN103970683A (zh) 一种加速u盘启动的方法
US8671262B2 (en) Single-port memory with addresses having a first portion identifying a first memory block and a second portion identifying a same rank in first, second, third, and fourth memory blocks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20190506

Address after: 518000 09-2, 10-11 unit, 6 building, Changhong science and technology building, 18 South Road, science and Technology Park, Nanshan District, Shenzhen, Guangdong, China 18

Applicant after: Shenzhen city a microelectronics limited liability company

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant before: Li Ding Technology (Shenzhen) Co., Ltd.

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 518000 area a, 7th floor, building A1, Shenzhen digital technology park, 17 Gaoxin South 7th Road, high tech Zone community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Deyi Microelectronics Co.,Ltd.

Address before: 518000 09-2, 10-11 unit, 6 building, Changhong science and technology building, 18 South Road, science and Technology Park, Nanshan District, Shenzhen, Guangdong, China 18

Patentee before: YEESTOR MICROELECTRONICS Co.,Ltd.