CN110444244A - 存储设备读错误纠错能力的测试装置 - Google Patents
存储设备读错误纠错能力的测试装置 Download PDFInfo
- Publication number
- CN110444244A CN110444244A CN201910701402.7A CN201910701402A CN110444244A CN 110444244 A CN110444244 A CN 110444244A CN 201910701402 A CN201910701402 A CN 201910701402A CN 110444244 A CN110444244 A CN 110444244A
- Authority
- CN
- China
- Prior art keywords
- data
- error
- storage
- read
- storage equipment
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 55
- 238000003860 storage Methods 0.000 claims abstract description 164
- 238000012937 correction Methods 0.000 claims abstract description 71
- 238000007689 inspection Methods 0.000 claims abstract description 18
- 230000015654 memory Effects 0.000 claims abstract description 16
- 238000004891 communication Methods 0.000 claims abstract description 4
- 238000009826 distribution Methods 0.000 claims description 3
- 238000013500 data storage Methods 0.000 abstract description 3
- 230000000694 effects Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 5
- 238000000151 deposition Methods 0.000 description 4
- 235000013399 edible fruits Nutrition 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010998 test method Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000001681 protective effect Effects 0.000 description 2
- 101100401739 Caenorhabditis elegans mlc-3 gene Proteins 0.000 description 1
- 230000003796 beauty Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
一种存储设备读错误纠错能力的测试装置,属于数据存储装置的性能测试装置领域,具有存储芯片、控制芯片以及用于与存储设备相插拔连接的接口,控制芯片具有:读取擦除模块;翻转模块;再写入模块;读取检验模块,其中,控制芯片以及接口能绕过存储设备的纠错电路而直接与存储设备上的闪存块连接通信并进行读写操作。通过预先插入一些预定义好的闪存的读错误数据(通过1‑0翻转来得到)来写入到存储芯片的数据页中,再进行读取检验,最终读取到的数据就是经过了存储芯片的纠错电路和算法、程序处理后的数据,对比该数据与预先插入的读错误数据进行比对,比对的结果就代表了具有存储芯片的存储设备的读错误纠错能力。
Description
技术领域
本发明涉及数据存储装置的数据纠错能力测试方法,属于数据存储装置的性能测试装置领域。
背景技术
随着闪存芯片(Flash Memory Chip)的普及,越来越多的存储设备使用闪存芯片作为存储介质。闪存芯片由于本身的物理特性,写进去的数据在读出来的时候会发生一定量的数据位的翻转错误,即将闪存芯片中基本的存储电路双层浮空栅MOS管中的浮空栅极的带电状态(表示为二进制数码的1)和不带电状态(表示为二进制数码的0)翻转错误,这样,在以闪存芯片作为存储介质的存储设备控制器上,就必须加上冗余纠错以及错误处理程序来保证存储数据的正确性。闪存的错误处理能力也渐渐成为评价整个基于闪存芯片的存储设备的可靠性的重要指标之一。
然而,存储设备制造商经常是从国际少有的几个垄断存储芯片厂商(三星、海力士、东芝、茂德、美光等)处采购晶片或是芯片进行生产,然而实际使用前,为了保证采购得到的晶元或是芯片的质量可靠进而确保最终的存储设备存储数据的可靠性以及读写准确性,必须对晶元或是芯片进行纠错能力检验,以验证外购的晶片或是芯片中自带的纠错电路和算法、程序的读错误纠错能力(纠错能力就是该芯片自有的纠错电路对发生在读写过程中的翻转错误的纠正和识读能力)。
而一旦将多个存储晶片或是芯片制造的存储设备(移动硬盘,存储阵列或是存储服务器)制造完成后,也需要进行整体设备的读错误纠错能力测试,而且行业中是需要标注该设备的纠错能力的,现有的方法依然是通过写入一段特殊设计的数据来进行多次测试来得到的,为此,至今尚没有发现合适的装置来对晶片或是芯片制作的存储设备的纠错能力进行测试和评价。
发明内容
本发明是为了解决上述没有合适的装置来对晶片或是芯片制作的存储设备的纠错能力进行测试和评价的问题而进行的,目的在于提供一种存储设备读错误纠错能力的测试装置。
本发明提供一种存储设备读错误纠错能力的测试装置,其特征在于,具有存储芯片、控制芯片以及用于与所述存储设备相插拔连接的接口,
所述控制芯片具有:
读取擦除模块,其用于:选择并读取写入有效数据的闪存块上的所有闪存页上的数据并保存在缓存中,然后擦除该闪存块中的数据;
翻转模块,其用于:在缓存中保存的数据中挑选包含有效数据的数据页,并对该数据页中的数据位进行0-1翻转然后保存;
再写入模块,其用于将翻转模块中翻转后的保存在缓存中的数据再次写入到读取擦除步骤中被擦除的数据块中;
读取检验模块,其用于对被再次写入数据的数据块的数据进行读取检验,并根据报错的数据位的数量大小、报错的数据块的地址、数据页的地址与翻转步骤中被翻转的数据位的数量大小、对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果即为该存储设备的读错误的纠错能力的测试结果,
其中,所述控制芯片以及所述接口能绕过存储设备的纠错电路而直接与所述存储设备上的闪存块连接通信并进行读写操作。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,读取擦除模块中,选择并读取写入有效数据的数据块是随机的,被选中的数据块在存储设备的存储芯片中的地址是连续的或是间隔的或是连续与间隔并存的。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,在翻转模块中,被进行0-1翻转的数据页是整页整页被翻转的,不存在某个数据页被部分翻转的情况。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,在翻转模块中,每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,每个数据页中被翻转的数据位的大小为15-95bit。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,所述控制芯片还具有记录模块,分别记录每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值的三个测试结果。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,所述存储芯片为闪存芯片。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,所述接口为PCIe、SATA或USB接口或供应商独特接口(vendor uniqueinterface)。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,所述控制芯片还具有写入模块,
所述存储芯片还存储有预先设计好的随机数据以及该数据对应的存储地址,
所述写入模块按照所述存储地址将所述随机数据写入到待检测的存储芯片或是存储设备中。
本发明提供的存储设备读错误纠错能力的测试装置,还可以具有这样的特征:
其中,所述存储地址遍布所述存储设备或是存储芯片的每一个数据块,但在每一个数据块的数据页的地址确实随机分布的。
发明的作用和效果
根据发明所所提供的存储设备读错误纠错能力的测试装置,因为所述控制芯片具有:读取擦除模块,其用于:选择并读取写入有效数据的闪存块上的所有闪存页上的数据并保存在缓存中,然后擦除该闪存块中的数据;翻转模块,其用于:在缓存中保存的数据中挑选包含有效数据的数据页,并对该数据页中的数据位进行0-1翻转然后保存;再写入模块,其用于将翻转模块中翻转后的保存在缓存中的数据再次写入到读取擦除步骤中被擦除的数据块中;读取检验模块,其用于对被再次写入数据的数据块的数据进行读取检验,并根据报错的数据位的数量大小、报错的数据块的地址、数据页的地址与翻转步骤中被翻转的数据位的数量大小、对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果即为该存储设备的读错误的纠错能力的测试结果,所以,通过预先插入一些预定义好的闪存的读错误数据(通过1-0翻转来得到)来写入到存储芯片的数据页中,再进行读取检验,最终读取到的数据就是经过了存储芯片的纠错电路和算法、程序处理后的数据,对比该数据与预先插入的读错误数据进行比对,比对的结果就代表了具有存储芯片的存储设备的读错误纠错能力。
附图说明
图1为存储设备读错误纠错能力的测试装置的结构示意图;
图2为本发明的实施例中控制芯片的组成模块框图;
图3为存储芯片中数据块、数据页的结构框架示意图;
图4为本发明的另一实施例中控制芯片的组成模块框图;以及
图5为本发明实施例中存储设备读错误纠错能力的测试方法的步骤示意图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下实施例结合附图对本发明存储设备读错误纠错能力的测试方法、系统及存储介质作具体阐述。
实施例1
如图1、2所示,存储设备读错误纠错能力的测试装置100,具有存储芯片10、控制芯片20以及用于与所述存储设备相插拔连接的接口30以及PCB板40。控制芯片20以及所述接口30能绕过存储设备的纠错电路而直接与所述存储设备上的闪存块连接通信并进行读写操作。
其中控制芯片具有读取擦除模块100、翻转模块200、再写入模块300以及读取检验模块400。
所述存储芯片10为SLC、MLC、TLC或QLC闪存颗粒制成的存储芯片。
在本实施例中,所述存储芯片为NAND闪存芯片,具体为SLC、MLC、TLC或QLC闪存颗粒制作的NAND闪存芯片。在理论上,也可以是其他类型的存储芯片,比如NOR闪存、ROM、PROM、EPROM、EEPROM、Flash ROM、FRAM、MRAM、RRAM、PCRAM等,都是可以作为本发明的存储芯片的。
SLC,Single-LevelCell,即1bit/cell,速度快寿命长,价格超贵(约MLC3倍以上的价格),约10万次擦写寿命。MLC,Multi-LevelCell,即2bit/cell,速度一般寿命一般,价格一般,约3000-10000次擦写寿命。TLC,Trinary-LevelCell,即3bit/cell,也有Flash厂家叫8LC,速度相对慢寿命相对短,价格便宜,约500次擦写寿命。QLC,Quad-Level Cell,即4bit/cell,支持16充电值,速度最慢寿命最短。这三种结构的NAND闪存芯片,简单地说SLC的性能最优,价格超高。一般用作企业级或高端发烧友使用。MLC性能够用,价格适中为消费级SSD应用主流,TLC综合性能最低,价格最便宜。但可以通过高性能主控芯片、主控算法来弥补、提高TLC闪存的性能。
控制芯片20,使用通用的SSD控制芯片,市售购买,比如使用以下现成的:
SATA3控制器,选用美国Marvell公司(中文名迈威科技集团有限公司,现更名美满)的88SS1074、88SS1079控制器,适用SATA数据接口;
NVMe控制器,选用美国Marvell公司(中文名迈威科技集团有限公司,现更名美满)88SS1093、88SS1092控制器,适合于NVMe协议下的PCIe数据接口。
这里列举的美国Marvell公司只是一个实例,实际上市面上任何厂家的SSD控制器都可以实现,并不限定是美国Marvell公司。
数据源连接的接口30,使用的接口包括PCIe、SATA接口或供应商独特接口(vendorunique interface)。
PCB板40,作为以上硬件的电路载体,所述存储芯片10、控制芯片20以及接口30都设置在所述PCB板40上。
读取擦除模块100,其用于:选择并读取写入有效数据的闪存块上的所有闪存页上的数据并保存在缓存中,然后擦除该闪存块中的数据。
如图3所示,存储芯片(本实施例中测试装置和存储设备的存储芯片均为闪存芯片Flash Memory Chip)包括多个数据块,每个数据块又具有多个数据页,其工作是按数据块为单位擦除,按数据页为单位写读,一个块里包含多个页,一个块里面的页必须要按顺序写入,并且写入之前必须先擦除。
选择并读取写入有效数据的数据块是随机的,被选中的数据块在存储设备的存储芯片中的地址是连续的或是间隔的或是连续与间隔并存的。数据块可以是多个,其地址没有必要是连续的,可以是间隔选取。间隔跟连续两种方案并不影响结果,效果并没有实质性的区别,为了提高检测方法的代表性,发明人建议使用连续与间隔并存的数据块地址进行数据块的选取。
翻转模块200,其用于:从缓存中保存的数据中挑选包含有效数据的数据页,并对该数据页中的数据位进行0-1翻转然后保存。
在翻转过程中,被进行0-1翻转的数据页是整页整页被翻转的,不存在某个数据页被部分翻转的情况。
数据页可以挑选多个。一般来说控制芯片20对于数据的保护单位都小于等于一个数据页,所以通常都是对每个数据页做独立保护的。如果一个数据页是32K(也可以是其他的容量大小,根据芯片厂商的情况而定),那么翻转这个数据页里的所有数据。只是当数据翻转到一定数量,那么整个数据页32K的数据都没法读出来,但是如果低于控制芯片或是芯片自带的纠错电路、算法的纠错阈值,那么整个32K的数据都还是能够读出来,所以翻转一个32K的数据页,只会有两个结果,1)整个32K的数据页能够读出来,2)整个32K的数据页都读不出来。
如果想翻转128k的数据的话,只能放在4个数据页里并且刚好放满,如果放到8个数据页里,就有可能所有数据页的数据都没法读出来,导致破坏了256K的数据页。如果想翻转135k的数据,则需要放满4个数据页另外再占用1个数据页,即使没有全部使用也会占据。
为了全面试探出存储芯片在各种错误容量下的纠错实际表现,每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值,具体的就是将要翻转的数据页分别设置为被翻转的数据位的大小大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值。显然,此处的纠错阈值时芯片制造厂商标识的纠错阈值。
一般而言,发明人经过试验,推荐每个数据页中被翻转的数据位的大小为15-95bit。
再写入模块300,其用于将翻转模块中翻转后的保存在缓存中的数据再次写入到读取擦除步骤中被擦除的数据块中。
读取检验模块400,其用于对被再次写入数据的数据块的数据进行读取检验,并根据报错的数据位的数量大小、报错的数据块的地址、数据页的地址与翻转步骤中被翻转的数据位的数量大小、对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果即为该存储设备的读错误的纠错能力的测试结果。
假设在翻转模块200中对一个8个数据页进行了1-0翻转,分别翻转的数据位大小为15、15、15、30、30、45、60、90共300bit,结果通过纠错电路以及算法、程序反馈得到289bit错误并得到纠错,则通过比较预设的翻转错误300bit与纠错发现的错误289bit就可以定量评估该被测试的芯片的纠错能力。
进一步的,还根据报错的数据块的地址、数据页的地址与翻转步骤中被翻转的对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果也作为为该存储设备的读错误的纠错能力的测试结果。在知道具体的数据块跟数据页地址,那么纠错电路的检验程序、算法就可以根据上述反馈得到的纠错的289bit的结果来做准确判断:所纠错的数据页的地址是不是预设的翻转的数据页,从而避免遇到非预期的错误。
实施例2
在实施例1的基础上,如图4所示,本实施例进一步提供的测试装置的控制芯片还具有记录模块500,分别记录每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值的三个测试结果。
实施例3
在实施例1或2的基础上,如图4所示,本实施例进一步提供的测试装置的控制芯片还具有写入模块600,对应的所述存储芯片10还存储有预先设计好的随机数据以及该数据对应的存储地址,
所述写入模块按照所述存储地址将所述随机数据写入到待检测的存储芯片或是存储设备中,如图3所示。
所述存储地址遍布所述存储设备或是存储芯片的每一个数据块,但在每一个数据块的数据页的地址确实随机分布的。
以下结合附图5说明上述的测试装置的运行步骤。
在将测试装置通过接口与待测试的存储装置连接后,控制芯片通过接口直接与待测试的存储装置的存储芯片连接,并自动运行以下步骤:
写入步骤S0,所述写入模块600按照所述存储地址将所述随机数据写入到待检测的存储芯片或是存储设备中。所述存储芯片预先存储有预先设计好的随机数据以及该数据对应的存储地址。
读取擦除步骤S1,读取擦除模块100选择并读取写入有效数据的闪存块上的所有闪存页上的数据并保存在测试装置的存储芯片10中,然后擦除该闪存块中的数据。
如图3所示,存储芯片(本实施例中测试装置和存储设备的存储芯片均为闪存芯片Flash Memory Chip)包括多个数据块,每个数据块又具有多个数据页,其工作是按数据块为单位擦除,按数据页为单位写读,一个块里包含多个页,一个块里面的页必须要按顺序写入,并且写入之前必须先擦除。
选择并读取写入有效数据的数据块是随机的,被选中的数据块在存储设备的存储芯片中的地址是连续的或是间隔的或是连续与间隔并存的。数据块可以是多个,其地址没有必要是连续的,可以是间隔选取。间隔跟连续两种方案并不影响结果,效果并没有实质性的区别,为了提高检测方法的代表性,发明人建议使用连续与间隔并存的数据块地址进行数据块的选取。
翻转步骤S2,翻转模块200从存储芯片10中保存的数据中挑选包含有效数据的数据页,并对该数据页中的数据位进行0-1翻转然后保存。
在翻转步骤中,被进行0-1翻转的数据页是整页整页被翻转的,不存在某个数据页被部分翻转的情况。
数据页可以挑选多个。一般来说控制芯片20对于数据的保护单位都小于等于一个数据页,所以通常都是对每个数据页做独立保护的。如果一个数据页是32K(也可以是其他的容量大小,根据芯片厂商的情况而定),那么翻转这个数据页里的所有数据。只是当数据翻转到一定数量,那么整个数据页32K的数据都没法读出来,但是如果低于控制芯片或是芯片自带的纠错电路、算法的纠错阈值,那么整个32K的数据都还是能够读出来,所以翻转一个32K的数据页,只会有两个结果,1)整个32K的数据页能够读出来,2)整个32K的数据页都读不出来。
如果想翻转128k的数据的话,只能放在4个数据页里并且刚好放满,如果放到8个数据页里,就有可能所有数据页的数据都没法读出来,导致破坏了256K的数据页。如果想翻转135k的数据,则需要放满4个数据页另外再占用1个数据页,即使没有全部使用也会占据。
为了全面试探出存储芯片在各种错误容量下的纠错实际表现,每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值,具体的就是将要翻转的数据页分别设置为被翻转的数据位的大小大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值。显然,此处的纠错阈值时芯片制造厂商标识的纠错阈值。
一般而言,发明人经过试验,推荐每个数据页中被翻转的数据位的大小为15-95bit。
再写入步骤S3,在写入模块300将翻转步骤中翻转后的保存在存储芯片10中的数据再次写入到读取擦除步骤中存储设备被擦除的数据块中。
读取检验步骤S4,读取检验模块400对被再次写入数据的数据块的数据进行读取检验,并根据报错的数据位的数量大小、报错的数据块的地址、数据页的地址与翻转步骤中被翻转的数据位的数量大小、对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果即为该存储设备的读错误的纠错能力的测试结果,该对比结果即为该存储设备的读错误的纠错能力的测试结果。
假设在翻转步骤S2中对一个8个数据页进行了1-0翻转,分别翻转的数据位大小为15、15、15、30、30、45、60、90共300bit,结果通过纠错电路以及算法、程序反馈得到289bit错误并得到纠错,则通过比较预设的翻转错误300bit与纠错发现的错误289bit就可以评估该被测试的芯片的纠错能力。
进一步的根据报错的数据块的地址、数据页的地址与翻转步骤中被翻转的对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果也作为为该存储设备的读错误的纠错能力的测试结果。在知道具体的数据块跟数据页地址,那么纠错电路的检验程序、算法就可以根据上述反馈得到的纠错的289bit的结果来做准确判断:所纠错的数据页的地址是不是预设的翻转的数据页,从而避免遇到非预期的错误。
记录步骤S5,记录模块500分别记录每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值的三个测试结果。
如此,通过预先插入一些预定义好的闪存的大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值的三个类型的读错误数据(通过1-0翻转来得到)来写入到存储设备的存储芯片的数据页中,再进行读取检验,最终读取到的数据就是经过了存储芯片的纠错电路和算法、程序处理后的数据,对比该数据与预先插入的读错误数据进行比对,比对的结果就代表了该存储芯片的读错误纠错能力。
实施例的作用与效果
实施例提供的存储设备读错误纠错能力的测试装置,因为所述控制芯片具有:读取擦除模块,其用于:选择并读取写入有效数据的闪存块上的所有闪存页上的数据并保存在缓存中,然后擦除该闪存块中的数据;翻转模块,其用于:在缓存中保存的数据中挑选包含有效数据的数据页,并对该数据页中的数据位进行0-1翻转然后保存;再写入模块,其用于将翻转模块中翻转后的保存在缓存中的数据再次写入到读取擦除步骤中被擦除的数据块中;读取检验模块,其用于对被再次写入数据的数据块的数据进行读取检验,并根据报错的数据位的数量大小、报错的数据块的地址、数据页的地址与翻转步骤中被翻转的数据位的数量大小、对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果即为该存储设备的读错误的纠错能力的测试结果,所以,通过预先插入一些预定义好的闪存的读错误数据(通过1-0翻转来得到)来写入到存储芯片的数据页中,再进行读取检验,最终读取到的数据就是经过了存储芯片的纠错电路和算法、程序处理后的数据,对比该数据与预先插入的读错误数据进行比对,比对的结果就代表了具有存储芯片的存储设备的读错误纠错能力。因为,在读取检验步骤中,还根据报错的数据块的地址、数据页的地址与翻转步骤中被翻转的对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果也作为为该存储设备的读错误的纠错能力的测试结果,如此的操作,可以做准确判断:所纠错的数据页的地址是不是预设的翻转的数据页,从而避免遇到非预期的错误。
在翻转模块中,被进行0-1翻转的数据页是整页整页被翻转的,不存在某个数据页被部分翻转的情况,如此操作,不会在测试时过多的影响一个数据库的数据页,使得测试对产品的影响尽可能的小。
进一步的,在翻转模块中,每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值,这样的设置可以尽可能得到在不同的出错情况下待测试的存储芯片的纠错结果,使得测试结果更能反映芯片的纠错能力。
Claims (10)
1.一种存储设备读错误纠错能力的测试装置,其特征在于,具有存储芯片、控制芯片以及用于与所述存储设备相插拔连接的接口,
所述控制芯片具有:
读取擦除模块,其用于:选择并读取写入有效数据的闪存块上的所有闪存页上的数据并保存在缓存中,然后擦除该闪存块中的数据;
翻转模块,其用于:在缓存中保存的数据中挑选包含有效数据的数据页,并对该数据页中的数据位进行0-1翻转然后保存;
再写入模块,其用于将翻转模块中翻转后的保存在缓存中的数据再次写入到读取擦除步骤中被擦除的数据块中;
读取检验模块,其用于对被再次写入数据的数据块的数据进行读取检验,并根据报错的数据位的数量大小、报错的数据块的地址、数据页的地址与翻转步骤中被翻转的数据位的数量大小、对应的数据块的地址、数据页的地址进行对比并得出对比结果,该对比结果即为该存储设备的读错误的纠错能力的测试结果,
其中,所述控制芯片以及所述接口能绕过存储设备的纠错电路而直接与所述存储设备上的闪存块连接通信并进行读写操作。
2.根据权利要求1所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,读取擦除模块中,选择并读取写入有效数据的数据块是随机的,被选中的数据块在存储设备的存储芯片中的地址是连续的或是间隔的或是连续与间隔并存的。
3.根据权利要求1所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,在翻转模块中,被进行0-1翻转的数据页是整页整页被翻转的,不存在某个数据页被部分翻转的情况。
4.根据权利要求1所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,在翻转模块中,每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值。
5.根据权利要求4所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,每个数据页中被翻转的数据位的大小为15-95bit。
6.根据权利要求4所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,所述控制芯片还具有记录模块,分别记录每个数据页中被翻转的数据位的大小分别为大于存储设备的纠错阈值、小于存储设备的纠错阈值以及等于存储设备的纠错阈值的三个测试结果。
7.根据权利要求1所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,所述存储芯片为闪存芯片。
8.根据权利要求1所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,所述接口为PCIe、SATA或USB接口或供应商独特接口(vendor uniqueinterface)。
9.根据权利要求1所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,所述控制芯片还具有写入模块,
所述存储芯片还存储有预先设计好的随机数据以及该数据对应的存储地址,
所述写入模块按照所述存储地址将所述随机数据写入到待检测的存储芯片或是存储设备中。
10.根据权利要求9所述的存储设备读错误纠错能力的测试装置,其特征在于:
其中,所述存储地址遍布所述存储设备或是存储芯片的每一个数据块,但在每一个数据块的数据页的地址确实随机分布的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910701402.7A CN110444244B (zh) | 2019-07-31 | 2019-07-31 | 存储设备读错误纠错能力的测试装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910701402.7A CN110444244B (zh) | 2019-07-31 | 2019-07-31 | 存储设备读错误纠错能力的测试装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110444244A true CN110444244A (zh) | 2019-11-12 |
CN110444244B CN110444244B (zh) | 2021-05-11 |
Family
ID=68432521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910701402.7A Active CN110444244B (zh) | 2019-07-31 | 2019-07-31 | 存储设备读错误纠错能力的测试装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110444244B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113470728A (zh) * | 2021-06-29 | 2021-10-01 | 成都佰维存储科技有限公司 | 纠错能力测试方法、装置、可读存储介质及电子设备 |
CN114550801A (zh) * | 2022-02-25 | 2022-05-27 | 长鑫存储技术有限公司 | 存储芯片的测试方法和测试装置、电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006040900A1 (ja) * | 2004-10-14 | 2006-04-20 | Advantest Corporation | 誤り訂正符号が付加されたデータ列を記憶する被試験メモリを試験する試験装置及び試験方法 |
CN102332311A (zh) * | 2011-10-18 | 2012-01-25 | 中国航天科技集团公司第五研究院第五一〇研究所 | 一种基于fpga的nand flash器件单粒子效应测试方法 |
US20160042809A1 (en) * | 2014-08-11 | 2016-02-11 | Young-Il Kim | Semiconductor memory devices and memory systems including the same |
CN107331420A (zh) * | 2016-04-28 | 2017-11-07 | 大心电子股份有限公司 | 解码方法、存储器存储装置及存储器控制电路单元 |
CN108806758A (zh) * | 2013-01-14 | 2018-11-13 | 美光科技公司 | 存储器装置及验证数据路径完整性的方法 |
CN109558269A (zh) * | 2018-12-05 | 2019-04-02 | 郑州云海信息技术有限公司 | 一种固态硬盘状态的检测方法、装置和介质 |
-
2019
- 2019-07-31 CN CN201910701402.7A patent/CN110444244B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006040900A1 (ja) * | 2004-10-14 | 2006-04-20 | Advantest Corporation | 誤り訂正符号が付加されたデータ列を記憶する被試験メモリを試験する試験装置及び試験方法 |
CN102332311A (zh) * | 2011-10-18 | 2012-01-25 | 中国航天科技集团公司第五研究院第五一〇研究所 | 一种基于fpga的nand flash器件单粒子效应测试方法 |
CN108806758A (zh) * | 2013-01-14 | 2018-11-13 | 美光科技公司 | 存储器装置及验证数据路径完整性的方法 |
US20160042809A1 (en) * | 2014-08-11 | 2016-02-11 | Young-Il Kim | Semiconductor memory devices and memory systems including the same |
CN107331420A (zh) * | 2016-04-28 | 2017-11-07 | 大心电子股份有限公司 | 解码方法、存储器存储装置及存储器控制电路单元 |
CN109558269A (zh) * | 2018-12-05 | 2019-04-02 | 郑州云海信息技术有限公司 | 一种固态硬盘状态的检测方法、装置和介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113470728A (zh) * | 2021-06-29 | 2021-10-01 | 成都佰维存储科技有限公司 | 纠错能力测试方法、装置、可读存储介质及电子设备 |
CN113470728B (zh) * | 2021-06-29 | 2023-11-21 | 成都佰维存储科技有限公司 | 纠错能力测试方法、装置、可读存储介质及电子设备 |
CN114550801A (zh) * | 2022-02-25 | 2022-05-27 | 长鑫存储技术有限公司 | 存储芯片的测试方法和测试装置、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110444244B (zh) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104919434B (zh) | 用于在固态驱动器中进行较低页数据恢复的系统和方法 | |
US8910002B2 (en) | NAND flash-based storage device with built-in test-ahead for failure anticipation | |
CN106157999A (zh) | 包括虚设存储单元的半导体存储器件及其操作方法 | |
CN102403039A (zh) | 半导体存储器件及其操作方法 | |
CN106683701B (zh) | 存储器管理方法、存储器储存装置及存储器控制电路单元 | |
CN109933280A (zh) | 数据存储装置及其操作方法 | |
CN108694097A (zh) | 存储设备的不同存储器区域中编程数据的多码本的使用 | |
CN108694099A (zh) | 确定用于储存器设备的不同的存储器区域的码本 | |
CN105097050B (zh) | 一种存储器寿命测试方法 | |
US9552287B2 (en) | Data management method, memory controller and embedded memory storage apparatus using the same | |
CN110444243A (zh) | 存储设备读错误纠错能力的测试方法、系统及存储介质 | |
KR20100090001A (ko) | 메모리 장치, 메모리 관리 장치 및 메모리 관리 방법 | |
CN109147854A (zh) | 数据存储装置及其操作方法 | |
CN110111832A (zh) | 半导体存储器装置及其操作方法 | |
CN110444244A (zh) | 存储设备读错误纠错能力的测试装置 | |
CN102929740A (zh) | 检测存储设备坏块的方法和装置 | |
US7707380B2 (en) | Memories, method of storing data in memory and method of determining memory cell sector quality | |
CN109960466A (zh) | 存储器系统及其操作方法 | |
CN105825884B (zh) | 存储器操作方法及相关的存储器装置 | |
CN114446379A (zh) | 基于各种定时容限参数设定的性能度量来对存储器装置进行评级 | |
CN106683698A (zh) | 存储器件及其操作方法 | |
US20230420066A1 (en) | Performing select gate integrity checks to identify and invalidate defective blocks | |
CN104067348B (zh) | 用于模拟存储器单元的编程及擦除方案 | |
CN109147852A (zh) | 控制器及其操作方法 | |
CN110444247A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 430000 west of 2-3 / F, No.2 factory building, Guannan Industrial Park, No.1 Gaoxin 2nd Road, Wuhan Donghu New Technology Development Zone, Wuhan City, Hubei Province Patentee after: Zhiyu Technology Co.,Ltd. Address before: 430223 west of building 2-3, Guannan Industrial Park, No. 1, Gaoxin 2nd Road, Wuhan East Lake New Technology Development Zone, Wuhan, Hubei Province Patentee before: EXASCEND TECHNOLOGY (WUHAN) CO.,LTD. |
|
CP03 | Change of name, title or address |