CN112540882A - 闪存设备检测***及闪存设备检测方法 - Google Patents
闪存设备检测***及闪存设备检测方法 Download PDFInfo
- Publication number
- CN112540882A CN112540882A CN201910901380.9A CN201910901380A CN112540882A CN 112540882 A CN112540882 A CN 112540882A CN 201910901380 A CN201910901380 A CN 201910901380A CN 112540882 A CN112540882 A CN 112540882A
- Authority
- CN
- China
- Prior art keywords
- block
- memory device
- flash memory
- blocks
- available
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
- G06F11/106—Correcting systematically all correctable errors, i.e. scrubbing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2268—Logging of test results
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
本发明提供一种闪存设备检测***及闪存设备检测方法。闪存设备检测***包括:闪存设备,包括多个区块;以及主机耦合到闪存设备。闪存设备记录可用区块表,在可用区块表中多个区块的每一个对应第一标记。主机发出擦除命令依序擦除多个区块。当多个区块的第一区块发生擦除错误,闪存设备将可用区块表中第一区块对应的第一标记更新成第二标记。在擦除多个区块后,主机发出写入命令将测试数据写入多个区块,并依序读取多个区块的每一个的被纠错码纠错后的读取数据。当多个区块的第二区块的读取数据和测试数据有部分不同,闪存设备将可用区块表中第二区块对应的第一标记更新成第二标记。因此,在闪存设备质量不理想的时候能有效减少不良品的产生。
Description
技术领域
本发明涉及一种闪存设备检测***及闪存设备检测方法,尤其涉及一种提升闪存设备质量的闪存设备检测***及闪存设备检测方法。
背景技术
闪存设备传统的检测坏区块的方法,一般都是按照规格表(Specification)上的说明只检测每一个区块的第一个千字节(1K Byte)和最后一个千字节区域是否有不可操作的字节存在,来判定该区块的好坏。然而,这样的做法会在很多时候都会导致生产出来的闪存设备品质不良,会在读写数据时候出错而导致数据的不完整性。
发明内容
本发明提供一种闪存设备检测***及闪存设备检测方法,以完善的闪存设备检测方法来提升闪存设备质量和保存数据的完整性。
本发明提出一种闪存设备检测***,包括:闪存设备,包括多个区块;以及主机耦合到闪存设备。闪存设备记录可用区块表,在可用区块表中多个区块的每一个对应第一标记。主机发出擦除命令依序擦除多个区块。当多个区块的第一区块发生擦除错误,闪存设备将可用区块表中第一区块对应的第一标记更新成第二标记。在擦除多个区块并根据擦除的多个区块更新可用区块表后,主机发出写入命令将测试数据写入多个区块,并依序读取多个区块的每一个的被纠错码纠错后的读取数据。当多个区块的第二区块的读取数据和测试数据有部分不同,闪存设备将可用区块表中第二区块对应的第一标记更新成第二标记。
本发明提出一种闪存设备检测方法,适用于闪存设备检测***。闪存设备检测***包括:闪存设备,包括多个区块;以及主机,耦合到闪存设备。闪存设备检测方法包括:闪存设备记录可用区块表,在可用区块表中多个区块的每一个对应第一标记;主机发出擦除命令依序擦除多个区块;当多个区块的第一区块发生擦除错误,闪存设备将可用区块表中第一区块对应的第一标记更新成第二标记;在擦除多个区块并根据擦除的多个区块更新可用区块表后,主机发出写入命令将测试数据写入多个区块,并依序读取多个区块的每一个的被纠错码纠错后的读取数据;以及当多个区块的第二区块的读取数据和测试数据有部分不同,闪存设备将可用区块表中第二区块对应的第一标记更新成第二标记。
基于上述,本发明实施例所提出的闪存设备检测***及闪存设备检测方法会在闪存设备记录可用区块表。在检测程序中先依序擦除多个区块,并当第一区块发生擦除错误时,闪存设备将第一区块在可用区块表的第一标记更新成第二标记以代表第一区块为坏区块。在擦除多个区块后,主机将测试数据写入多个区块并依序读取被纠错码纠错后的读取数据。当第二区块的读取数据和测试数据存在部分不同时,闪存设备将第二区块在可用区块表的第一标记更新成第二标记以代表此区块为坏区块。通过擦除错误及写入读取错误的检测,可以全面检测闪存设备的坏区块而有效减少不良品的产生并增加闪存设备存储数据的可靠性。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所示附图作详细说明如下。
附图说明
包含附图以便进一步理解本发明,且附图并入本说明书中并构成本说明书的一部分。附图说明本发明的实施例,并与描述一起用于解释本发明的原理。
图1为根据本发明一实施例的闪存设备检测***的方块图;
图2为根据本发明一实施例的闪存设备检测方法的流程图。
附图标号说明:
100:闪存设备检测***;
110:主机;
120:闪存设备;
S201~S212:闪存设备检测方法的步骤。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
图1为根据本发明一实施例的闪存设备检测***的方块图;
请参照图1,根据本发明一实施例的闪存设备检测***100包括主机110及闪存设备120。主机110耦合到闪存设备120。闪存设备120例如是固态硬盘(Solid State Drive,SSD)、闪存盘(flash drive)或其他类似设备。闪存设备120包括多个区块(或称为块)。
在一实施例中,闪存设备120记录可用区块表,在可用区块表中多个区块的每一个对应第一标记。也就是说,可用区块表中每个区块会被默认设定对应第一标记,以代表所有区块都是好区块。在闪存设备120开始检测时,主机110发出擦除命令依序擦除多个区块,以清除闪存设备120内部可能存在的数据。当多个区块的第一区块发生擦除错误,闪存设备120将可用区块表中第一区块对应的第一标记更新成第二标记,以表示发生擦除错误的第一区块为坏区块。在擦除多个区块并根据擦除的多个区块更新所述可用区块表后,主机110发出写入命令将测试数据写入多个区块的所有存储空间,并依序读取多个区块的每一个的被纠错码纠错后的读取数据。当多个区块的第二区块的读取数据和测试数据有部分不同(即,被纠错码纠错后的读取数据存在不正常的字节),闪存设备120将可用区块表中第二区块对应的第一标记更新成第二标记,以表示第二区块为坏区块。
值得注意的是,写入不同区块的测试数据可以是相同或不同的测试数据,且主机110会记录每个区块和每个区块对应写入的测试数据。
在一实施例中,闪存设备将120可用区块表存储在备用区块中。
在一实施例中,当第一区块在擦除操作后有任一存储单元的临界电压大于门坎值,则第一区块发生擦除错误。
在一实施例中,第一区块在擦除操作后并非第一区块的所有存储单元通过检测电压获得的值皆为第一比特值(例如,0),则第一区块发生擦除错误。
在一实施例中,当第一区块发生擦除错误时,闪存设备120就不对第一区块进行后续的测试数据的写入读取操作,以加入检测流程。
图2为根据本发明一实施例的闪存设备检测方法的流程图。
请参照图2,在步骤S201中,开始流程。开始坏区块检测机制。
在步骤S202中,开始擦除多个区块。
在步骤S203中,是否成功擦除目前区块。
若成功擦除目前区块,在步骤S204中,判断目前区块是否为最后区块。
若目前区块不是最后区块,在步骤S205中,存取下一个区块。
若没成功擦除目前区块,在步骤S206中,根据目前区块更新可用区块表。也就是说,可用区块表可包含目前区块被标记坏区块的信息(例如,将目前区块对应的第一标记更新成第二标记)。
若目前区块是最后区块,在步骤S207中,将测试数据写入所有区块。
在步骤S208中,判断目前区块的读取数据是否符合写入的测试数据。具体来说,当目前区块的读取数据和测试数据有部分不同,闪存设备将可用区块表中目前区块对应的第一标记更新成第二标记。
若目前区块的读取数据符合写入的测试数据,在步骤S209中,判断目前区块是否为最后区块。
若目前区块不是最后区块,在步骤S210中,存取下一个区块。
若目前区块的读取数据不符合写入的测试数据,在步骤S211中,根据目前区块更新可用区块表。也就是说,可用区块表可包含目前区块被标记坏区块的信息(例如,将目前区块对应的第一标记更新成第二标记)。
在步骤S212中,结束流程。结束坏区块检测机制。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种闪存设备检测***,其特征在于,包括:
闪存设备,包括多个区块;以及
主机,耦合到所述闪存设备,其中
所述闪存设备记录可用区块表,在所述可用区块表中所述多个区块的每一个对应第一标记;
所述主机发出擦除命令依序擦除所述多个区块;
当所述多个区块的第一区块发生擦除错误,所述闪存设备将所述可用区块表中所述第一区块对应的所述第一标记更新成第二标记;
在擦除所述多个区块并根据擦除的所述多个区块更新所述可用区块表后,所述主机发出写入命令将测试数据写入所述多个区块,并依序读取所述多个区块的每一个的被纠错码纠错后的读取数据;以及
当所述多个区块的第二区块的所述读取数据和所述测试数据有部分不同,所述闪存设备将所述可用区块表中所述第二区块对应的所述第一标记更新成所述第二标记。
2.根据权利要求1所述的闪存设备检测***,其特征在于,所述主机发出所述写入命令将所述测试数据写入所述多个区块的所有存储空间。
3.根据权利要求1所述的闪存设备检测***,其特征在于,所述闪存设备将所述可用区块表存储在备用区块中。
4.根据权利要求1所述的闪存设备检测***,其特征在于,当所述第一区块在擦除操作后有任一存储单元的临界电压大于门坎值,则所述第一区块发生所述擦除错误。
5.根据权利要求1所述的闪存设备检测***,其特征在于,当所述第一区块在擦除操作后并非所述第一区块的所有存储单元通过检测电压获得的值皆为第一比特值,则所述第一区块发生所述擦除错误。
6.一种闪存设备检测方法,适用于闪存设备检测***,闪存设备检测***包括:闪存设备,包括多个区块;以及主机,耦合到所述闪存设备,其特征在于,所述闪存设备检测方法包括:
所述闪存设备记录可用区块表,在所述可用区块表中所述多个区块的每一个对应第一标记;
所述主机发出擦除命令依序擦除所述多个区块;
当所述多个区块的第一区块发生擦除错误,所述闪存设备将所述可用区块表中所述第一区块对应的所述第一标记更新成第二标记;
在擦除所述多个区块并根据擦除的所述多个区块更新所述可用区块表后,所述主机发出写入命令将测试数据写入所述多个区块,并依序读取所述多个区块的每一个的被纠错码纠错后的读取数据;以及
当所述多个区块的第二区块的所述读取数据和所述测试数据有部分不同,所述闪存设备将所述可用区块表中所述第二区块对应的所述第一标记更新成所述第二标记。
7.根据权利要求6所述的闪存设备检测方法,其特征在于,所述主机发出所述写入命令将所述测试数据写入所述多个区块的所有存储空间。
8.根据权利要求6所述的闪存设备检测方法,其特征在于,所述闪存设备将所述可用区块表存储在备用区块中。
9.根据权利要求6所述的闪存设备检测方法,其特征在于,当所述第一区块在擦除操作后有任一存储单元的临界电压大于门坎值,则所述第一区块发生所述擦除错误。
10.根据权利要求6所述的闪存设备检测方法,其特征在于,所述第一区块在擦除操作后并非所述第一区块的所有存储单元通过检测电压获得的值皆为第一比特值,则所述第一区块发生所述擦除错误。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910901380.9A CN112540882A (zh) | 2019-09-23 | 2019-09-23 | 闪存设备检测***及闪存设备检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910901380.9A CN112540882A (zh) | 2019-09-23 | 2019-09-23 | 闪存设备检测***及闪存设备检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112540882A true CN112540882A (zh) | 2021-03-23 |
Family
ID=75013193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910901380.9A Pending CN112540882A (zh) | 2019-09-23 | 2019-09-23 | 闪存设备检测***及闪存设备检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112540882A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI831118B (zh) * | 2022-01-21 | 2024-02-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其編程應力消除方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064636A1 (en) * | 2001-03-16 | 2004-04-01 | Takeo Yoshii | Storage device, storage device controlling method, and program |
JP2005141418A (ja) * | 2003-11-05 | 2005-06-02 | Tdk Corp | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |
CN101499316A (zh) * | 2008-01-30 | 2009-08-05 | 群联电子股份有限公司 | 快闪存储器区块管理方法及使用此方法的控制器 |
CN102237143A (zh) * | 2010-04-21 | 2011-11-09 | 深圳市江波龙电子有限公司 | 一种闪存块信息的重建方法、***及重建设备 |
CN102543216A (zh) * | 2010-12-29 | 2012-07-04 | 中芯国际集成电路制造(上海)有限公司 | 一种闪存的测试方法 |
-
2019
- 2019-09-23 CN CN201910901380.9A patent/CN112540882A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064636A1 (en) * | 2001-03-16 | 2004-04-01 | Takeo Yoshii | Storage device, storage device controlling method, and program |
JP2005141418A (ja) * | 2003-11-05 | 2005-06-02 | Tdk Corp | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |
CN101499316A (zh) * | 2008-01-30 | 2009-08-05 | 群联电子股份有限公司 | 快闪存储器区块管理方法及使用此方法的控制器 |
CN102237143A (zh) * | 2010-04-21 | 2011-11-09 | 深圳市江波龙电子有限公司 | 一种闪存块信息的重建方法、***及重建设备 |
CN102543216A (zh) * | 2010-12-29 | 2012-07-04 | 中芯国际集成电路制造(上海)有限公司 | 一种闪存的测试方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI831118B (zh) * | 2022-01-21 | 2024-02-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其編程應力消除方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9092361B2 (en) | Nonvolatile storage device, memory controller, and defective region detection method | |
US8271515B2 (en) | System and method for providing copyback data integrity in a non-volatile memory system | |
US10613943B2 (en) | Method and system for improving open block data reliability | |
US8412879B2 (en) | Hybrid implementation for error correction codes within a non-volatile memory system | |
US8713381B2 (en) | Systems and methods of using dynamic data for wear leveling in solid-state devices | |
JP4901987B1 (ja) | 記憶装置、電子機器及び誤りデータの訂正方法 | |
US7240178B2 (en) | Non-volatile memory and non-volatile memory data rewriting method | |
US8266481B2 (en) | System and method of wear-leveling in flash storage | |
US7979737B2 (en) | Method for accessing a Flash memory, and associated memory device and controller thereof | |
US20070061498A1 (en) | Method and System for NAND-Flash Identification without Reading Device ID Table | |
TWI459393B (zh) | 用於非揮發性記憶體的資料寫入方法、控制器與儲存裝置 | |
US8762810B2 (en) | Semiconductor recording device, control method of semiconductor recording device, and semiconductor recording system | |
US9514843B2 (en) | Methods for accessing a storage unit of a flash memory and apparatuses using the same | |
CN104282342A (zh) | 闪存装置、存储器控制器及闪存的控制方法 | |
CN108564981B (zh) | 一种存储装置数据安全动态监控方法 | |
CN116880781B (zh) | 一种存储设备及其控制方法 | |
CN112540882A (zh) | 闪存设备检测***及闪存设备检测方法 | |
JP3675375B2 (ja) | 不揮発性メモリ並びに不揮発性メモリのデータ書き換え方法 | |
CN113434086B (zh) | 数据存储方法、装置、非易失性存储器件和存储器 | |
CN113625947B (zh) | 一种数据纠错方法、装置、设备及计算机可读存储介质 | |
KR20050064887A (ko) | 오류 검출 능력이 강화된 플래시 메모리 및 다비트 오류검출 방법 | |
CN114203252A (zh) | 非易失存储器的坏块检测方法、装置、设备及存储介质 | |
CN111949198A (zh) | 一种坏块管理方法、装置和存储设备 | |
CN114930299A (zh) | 一种管理数据存储阵列的方法、装置及存储介质 | |
CN112306382A (zh) | 快闪存储器控制器、储存装置及其读取方法 |
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 |