掌桥专利:专业的专利平台
掌桥专利
首页

闪存设备检测系统及闪存设备检测方法

文献发布时间:2023-06-19 10:21:15


闪存设备检测系统及闪存设备检测方法

技术领域

本发明涉及一种闪存设备检测系统及闪存设备检测方法,尤其涉及一种提升闪存设备质量的闪存设备检测系统及闪存设备检测方法。

背景技术

闪存设备传统的检测坏区块的方法,一般都是按照规格表(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中,结束流程。结束坏区块检测机制。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

相关技术
  • 闪存设备检测系统及闪存设备检测方法
  • 一种闪存设备中的数据存储方法及闪存设备
技术分类

06120112519015