CN109684150B - 存储颗粒控制器的性能测试系统、测试方法及仿真平台 - Google Patents
存储颗粒控制器的性能测试系统、测试方法及仿真平台 Download PDFInfo
- Publication number
- CN109684150B CN109684150B CN201811583601.4A CN201811583601A CN109684150B CN 109684150 B CN109684150 B CN 109684150B CN 201811583601 A CN201811583601 A CN 201811583601A CN 109684150 B CN109684150 B CN 109684150B
- Authority
- CN
- China
- Prior art keywords
- storage
- storage particle
- controller
- simulator
- flash memory
- 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.)
- Active
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/2289—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
-
- 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
-
- 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/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种存储颗粒控制器的性能测试系统、测试方法及仿真平台,该测试方法包括:接收主机控制中心发送的闪存命令;采用闪存命令模拟存储颗粒控制器发送的控制命令,并将控制命令发送到存储颗粒模拟器,以操作存储颗粒模拟器中的待操作数据,存储颗粒模拟器用于模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据进行相应处理;接收存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对操作结果进行纠错处理并发送到主机控制中心,以确定纠错模型的性能。本发明不仅可以快速、高效地实现对存储颗粒控制器的性能测试,还能够高效、可控地实现特性以及异常场景的测试,极大提高了存储产品的性能和数据可靠性。
Description
技术领域
本发明涉及集成电路测试技术领域,尤其涉及一种存储颗粒控制器的性能测试系统、测试方法及仿真平台。
背景技术
半导体存储颗粒由于本身的原理以及特性所限,一般都是不可靠的存储介质。在读、写、擦的操作过程中,随着使用寿命和使用环境的变化,存储颗粒特性呈现出很多随机的变化,包括访问以及擦写时间,存储信息错误,读、写、擦的错误。而且这些特性的变化,是要经过长时间的使用(以年计)后才会发生。不同厂家,不同类型的存储颗粒,特性变化曲线和错误发生曲线以及分布都不相同,这对存储颗粒控制器的软硬件实现带来了极大挑战。
存储颗粒控制器(如SSD控制器),是由控制芯片加上里面的固件实现对存储颗粒的性能以及以上描述的颗粒错误进行管理,保证整个存储产品的性能和数据可靠性。但由于存储颗粒错误的随机性(不可控)以及测试周期过长,很难达到存储颗粒控制器的全面有效的测试,往往会有corner case(极端情况)无法覆盖,尤其是一些错误的叠加和嵌套场景,很难测试到,可能导致整个存储系统的bug无法发现。而且这些特性以及错误不可控制,也很难重复,这对存储颗粒控制器系统的开发都是极有挑战,最后会影响最后整个存储系统的可靠和稳定性。
现有技术中的存储颗粒控制器测试方案,大多是在实际系统中用实际存储颗粒做长周期测试覆盖。这种方法的确可以以实际的性能运行,但是却无法控制异常以及错误场景,如果仅依赖存储颗粒本身的长时间使用的随机产生的异常以及错误,那需要的很长时间测试以及大量的样本采集。而且不同厂家的存储颗粒的命令特性,以及错误模型都不相同。在实际中也是无法实现存储系统的全面测试。
发明内容
鉴于上述问题,本发明实施例提出了一种存储颗粒控制器的性能测试系统、测试方法及仿真平台,以快速、高效地实现对所仿真的存储颗粒控制器的性能测试,提高了存储产品的性能和数据可靠性。
本发明的一个方面,提供了一种存储颗粒控制器的性能测试系统,所述系统包括主机控制中心、与所述主机控制中心连接的至少一个存储颗粒控制器仿真平台以及每一存储颗粒控制器仿真平台对应的至少一个存储颗粒模拟器;
所述主机控制中心,用于向所述存储颗粒控制器仿真平台发送闪存命令,以及向所述存储颗粒模拟器发送配置信息;
所述存储颗粒控制器仿真平台,用于采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器;
所述存储颗粒模拟器,用于根据主机控制中心下发的配置信息确定所述存储颗粒模拟器所模拟的Flash存储颗粒的寿命周期,以模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据进行相应处理,得到所述待操作数据,并根据存储颗粒控制器仿真平台发送的所述控制命令操作所述存储颗粒模拟器中的待操作数据;
所述存储颗粒控制器仿真平台,还用于接收所述存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心;
所述主机控制中心,还用于根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
可选地,所述主机控制中心,具体用于向所述存储颗粒控制器仿真平台发送测试向量;
所述存储颗粒控制器仿真平台,具体用于解析接收到的所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列,采用所述闪存命令队列中的闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器。
可选地,所述存储颗粒模拟器,包括:
配置模块,用于根据主机控制中心下发的配置信息确定当前所模拟的Flash存储颗粒的寿命周期,并根据当前所模拟的Flash存储颗粒的寿命周期配置对应的NAND存储特性;
数据处理模块,用于根据配置的所述NAND存储特性对预设原始数据进行相应处理,以得到所述待操作数据;
命令执行模块,根据存储颗粒控制器仿真平台发送的所述控制命令操作所述存储颗粒模拟器中的待操作数据。
可选地,所述数据处理模块,具体用于确定所述NAND存储特性对应的数据出错几率,根据所述数据出错几率对预设原始数据进行数据的比特翻转。
本发明的另一个方面,提供了一种存储颗粒控制器的性能测试方法,所述方法包括:
接收主机控制中心发送的闪存命令;
采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器,以操作所述存储颗粒模拟器中的待操作数据,所述存储颗粒模拟器用于根据主机控制中心下发的配置信息,模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据进行相应处理,以得到所述待操作数据;
接收所述存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心,以供所述主机控制中心根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
可选地,所述接收主机控制中心发送的闪存命令,包括:
接收主机控制中心发送的测试向量;
解析所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列。
可选地,在所述采用所述闪存命令模拟存储颗粒控制器发送的控制命令之前,所述方法还包括:
采用ONFI的接口模式建立与存储颗粒模拟器之间的控制连接。
本发明的再一个方面,提供了一种存储颗粒控制器仿真平台,包括:
接收模块,用于接收主机控制中心发送的闪存命令;
命令管理模块,用于采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器,以操作所述存储颗粒模拟器中的待操作数据,所述存储颗粒模拟器用于根据主机控制中心下发的配置信息,模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据进行相应处理,以得到所述待操作数据;
数据处理模块,用于接收所述存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心,以供所述主机控制中心根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
可选地,所述接收模块,包括:
接收单元,用于接收主机控制中心发送的测试向量;
生成单元,用于解析所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列。
可选地,还包括:
接口管理模块,用于在所述采用所述闪存命令模拟存储颗粒控制器发送的控制命令之前,采用ONFI的接口模式建立与存储颗粒模拟器之间的控制连接。
本发明实施例提供的存储颗粒控制器的性能测试系统、测试方法及仿真平台,采用存储颗粒控制器仿真平台模拟存储颗粒控制器,并采用存储颗粒模拟器模拟实现Flash存储颗粒在不同寿命周期内的NAND存储特性,不仅可以快速、高效地实现对所仿真的存储颗粒控制器的性能测试,还能够高效、可控地实现特性以及异常场景的测试,极大提高了存储产品的性能和数据可靠性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例提出的存储颗粒控制器的性能测试系统的结构框图;
图2为本发明实施例提出的存储颗粒模拟器的内部原理框图;
图3为本发明另一实施例提出的存储颗粒控制器的性能测试系统的结构框图;
图4为本发明实施例提出的存储颗粒控制器的性能测试方法的流程示意图;
图5为本发明实施例提出的存储颗粒控制器仿真平台的内部原理框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
图1为本发明实施例提出的存储颗粒控制器的性能测试系统的结构框图。如图1所示,本发明实施例提供的存储颗粒控制器的性能测试系统,包括主机控制中心10、与所述主机控制中心10连接的至少一个存储颗粒控制器仿真平台20以及每一存储颗粒控制器仿真平台20对应的至少一个存储颗粒模拟器Flash Emulator30。
其中,主机控制中心10,用于向所述存储颗粒控制器仿真平台20发送闪存命令,以及向所述存储颗粒模拟器30发送配置信息。
存储颗粒控制器仿真平台20,用于采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器30。
存储颗粒模拟器30,用于根据主机控制中心10下发的配置信息确定所述存储颗粒模拟器30所模拟的Flash存储颗粒的寿命周期,以模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据进行相应处理,得到所述待操作数据,并根据存储颗粒控制器仿真平台20发送的所述控制命令操作所述存储颗粒模拟器30中的待操作数据。
具体的,存储颗粒模拟器30可以模拟NAND全寿命期间内不同寿命周期的表现。
本实施例中,配置信息用于指定所述存储颗粒模拟器30所需要模拟的Flash存储颗粒的寿命周期。
存储颗粒控制器仿真平台20,还用于接收所述存储颗粒模拟器30返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心10;
主机控制中心10,还用于根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
本发明采用存储颗粒控制器仿真平台模拟存储颗粒控制器,并采用存储颗粒模拟器模拟实现Flash存储颗粒在不同寿命周期内的NAND存储特性,不仅可以快速、高效地实现对所仿真的存储颗粒控制器的性能测试,还能够高效、可控地实现特性以及异常场景的测试,极大提高了存储产品的性能和数据可靠性。
在本发明实施例中,主机控制中心10,具体用于向所述存储颗粒控制器仿真平台20发送测试向量。
进一步地,存储颗粒控制器仿真平台20,具体用于解析接收到的所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列,采用所述闪存命令队列中的闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器30。
图2为本发明实施例提出的存储颗粒模拟器的内部原理框图。如图2所示,在本发明实施例中,所述存储颗粒模拟器30,具体包括配置模块301、数据处理模块302以及命令执行模块303,其中:
配置模块301,用于根据主机控制中心下发的配置信息确定当前所模拟的Flash存储颗粒的寿命周期,并根据当前所模拟的Flash存储颗粒的寿命周期配置对应的NAND存储特性;
数据处理模块302,用于根据配置的所述NAND存储特性对预设原始数据进行相应处理,以得到所述待操作数据。在一个具体实施例中,所述数据处理模块,具体用于确定所述NAND存储特性对应的数据出错几率,根据所述数据出错几率对预设原始数据进行数据的比特翻转,以使得得到的待操作数据相对于原始数据存在一定的数据出错几率。
命令执行模块303,根据存储颗粒控制器仿真平台发送的所述控制命令操作所述存储颗粒模拟器中的待操作数据。
本发明实施例提供的存储颗粒控制器的性能测试系统,主要包括3个部分组成,具体为:主机控制中心10、存储颗粒控制器仿真平台20以及存储颗粒模拟器30。其中,存储颗粒控制器仿真平台20是利用计算机软件或数字逻辑在ASIC或可编程逻辑器件上实现的对存储颗粒控制器的仿真,例如对SSD主控器在可编程逻辑器件上仿真。存储颗粒模拟器30同样是利用计算机软件或数字逻辑在ASIC或可编程逻辑器件上实现的一种颗粒全寿命特性模拟系统。
本实施例中,主机控制中心的职责是用来控制利用FPGA实现的存储颗粒控制器仿真平台及存储颗粒模拟器Flash Emulator。存储颗粒控制器仿真平台,实现了闪存控制器仿真和闪存驱动仿真,提供了测试框架和Flash命令控制器,能从主机控制中心接收测试向量,然后生成Flash命令并且下发给Flash Emulator或者NAND芯片。具体的,存储颗粒控制器仿真平台用于接收并解析从主机控制中心发来的测试向量(test case),生成相对应的闪存命令队列,并且把这些生成的闪存命令队列经由存储颗粒控制器仿真平台里发送到Flash Emulator,并且检验和纠错从Flash Emulator反馈的结果,并且把结果报告给主机控制中心。
存储颗粒模拟器Flash Emulator,实现了存储颗粒的电性能仿真和控制接口仿真,能够模拟各种不同类型的Flash,它不仅仅能支持真正的Flash命令,还可以支持各种扩展命令来验证SSD控制器。具体的,Flash Emulator用来模拟NAND Flash全寿命期间的不同表现,这样就可以在开发SSD主控时,使用Flash Emulator来代替真正的NAND Flash来响应存储颗粒控制器仿真平台发来的各种命令,并且根据设置来体现不同寿命时的NAND特性,如在NAND寿命后期出错率变高,断电后随着时间增长数据发生bit flip。
在本发明的一个可选实施例中,如图3所示,主机控制中心可以连接多个FPGA验证平台和Flash Emulator,这样,用户就可以很方便的测试在不同NAND特性反应下的SSD控制器的各种反应。主机控制中心相当于用户界面,用户可以给Flash Emulator添加各种测试向量和配置信息。主机控制中心需要数据库作为底层支持。
下面通过一个具体实施例来对整个测试系统进行解释说明。
首先,主机控制中心将配置信息下发到Flash Emulator,Flash Emulator接收到配置信息,并将接口切换到ONFI NVDDR3的模式。然后Flash Emulator中的bit flipgenerator模块会根据配置信息确定所模拟的Flash存储颗粒的寿命周期,并根据所模拟的Flash存储颗粒的寿命周期对应的NAND存储特性,制定产生比特翻转,比如,配置信息中希望按照1000PE Cycle,3个月的断点数据保持时间来配置Flash Emulator,当存储颗粒控制器仿真平台从Flash Emulator读取数据时,这些比特翻转就会被加入到真正的数据中,来传给存储颗粒控制器仿真平台。
然后,开发人员通过主机控制中心发送测试向量到FPGA验证平台,存储颗粒控制器仿真平台会将收到的这些测试向量解析成Flash命令,并且发送给Flash Emulator。FPGA验证平台会用这些命令从Flash Emulator中读取数据,就像从NAND芯片中读取数据一样,并且纠错这些数据,最后将这些数据发还给主机控制中心,由主机控制中心来确认这些数据正确与否,进而实现对仿真的存储颗粒控制器的性能测试。
图4示意性示出了本发明一个实施例的存储颗粒控制器的性能测试方法的流程图。参照图4,本发明实施例的存储颗粒控制器的性能测试方法具体包括以下步骤:
S11、接收主机控制中心发送的闪存命令。
在本发明实施例中,步骤S11中的接收主机控制中心发送的闪存命令,具体包括以下步骤:接收主机控制中心发送的测试向量;解析所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列。
S12、采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器,以操作所述存储颗粒模拟器中的待操作数据,所述存储颗粒模拟器用于根据主机控制中心下发的配置信息,模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据进行相应处理,以得到所述待操作数据。
本实施例中,配置信息用于指定所述存储颗粒模拟器30所需要模拟的Flash存储颗粒的寿命周期。
S13、接收所述存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心,以供所述主机控制中心根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
本发明不仅可以快速、高效地实现对所仿真的存储颗粒控制器的性能测试,还能够高效、可控地实现特性以及异常场景的测试,极大提高了存储产品的性能和数据可靠性。
在本发明实施例中,在所述采用所述闪存命令模拟存储颗粒控制器发送的控制命令之前,采用ONFI的接口模式建立与存储颗粒模拟器之间的控制连接。
在实际应用中,本发明实施例提出的存储颗粒控制器的性能测试方法具有如下优点:
在存储系统测试中,可以在实际应用系统内可控地进行特性以及异常场景测试;
相对目前传统解决方案,可以非常的高效的实现corner case测试,极大提高SSD产品的可靠性。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图5为本发明实施例提出的存储颗粒控制器仿真平台的内部原理框图。如图5所示,本发明实施例提供的存储颗粒控制器仿真平台,具体包括接收模块201、命令管理模块202以及数据处理模块203,其中:
接收模块201,用于接收主机控制中心发送的闪存命令;
命令管理模块202,用于采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器,以操作所述存储颗粒模拟器中的待操作数据,所述存储颗粒模拟器用于根据主机控制中心下发的配置信息,模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据进行相应处理,以得到所述待操作数据;
数据处理模块203,用于接收所述存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心,以供所述主机控制中心根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
在本发明实施例中,所述接收模块201,具体包括接收单元和生成单元,其中:
接收单元,用于接收主机控制中心发送的测试向量;
生成单元,用于解析所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列。
本发明实施例提出的存储颗粒控制器仿真平台,还包括附图中未示出的接口管理模块,该接口管理模块,用于在所述采用所述闪存命令模拟存储颗粒控制器发送的控制命令之前,采用ONFI的接口模式建立与存储颗粒模拟器之间的控制连接。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例提供的存储颗粒控制器的性能测试系统、测试方法及仿真平台,采用存储颗粒控制器仿真平台模拟存储颗粒控制器,并采用存储颗粒模拟器模拟实现Flash存储颗粒在不同寿命周期内的NAND存储特性,不仅可以快速、高效地实现对所仿真的存储颗粒控制器的性能测试,还能够高效、可控地实现特性以及异常场景的测试,极大提高了存储产品的性能和数据可靠性。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种存储颗粒控制器的性能测试系统,其特征在于,所述系统包括主机控制中心、与所述主机控制中心连接的至少一个存储颗粒控制器仿真平台以及每一存储颗粒控制器仿真平台对应的至少一个存储颗粒模拟器;
所述主机控制中心,用于向所述存储颗粒控制器仿真平台发送闪存命令,以及向所述存储颗粒模拟器发送配置信息;
所述存储颗粒控制器仿真平台,用于采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器;
所述存储颗粒模拟器,用于根据主机控制中心下发的配置信息确定所述存储颗粒模拟器所模拟的Flash存储颗粒的寿命周期,以模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据按照与所述NAND存储特性对应的数据出错几率进行数据的比特翻转,得到待操作数据,并根据存储颗粒控制器仿真平台发送的所述控制命令操作所述存储颗粒模拟器中的待操作数据;
所述存储颗粒控制器仿真平台,还用于接收所述存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心;
所述主机控制中心,还用于根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
2.根据权利要求1所述的系统,其特征在于,所述主机控制中心,具体用于向所述存储颗粒控制器仿真平台发送测试向量;
所述存储颗粒控制器仿真平台,具体用于解析接收到的所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列,采用所述闪存命令队列中的闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到所述存储颗粒模拟器。
3.根据权利要求1所述的系统,其特征在于,所述存储颗粒模拟器,包括:
配置模块,用于根据主机控制中心下发的配置信息确定当前所模拟的Flash存储颗粒的寿命周期,并根据当前所模拟的Flash存储颗粒的寿命周期配置对应的NAND存储特性;
数据处理模块,用于根据配置的所述NAND存储特性对预设原始数据进行相应处理,以得到所述待操作数据;
命令执行模块,根据存储颗粒控制器仿真平台发送的所述控制命令操作所述存储颗粒模拟器中的待操作数据。
4.根据权利要求3所述的系统,其特征在于,所述数据处理模块,具体用于确定所述NAND存储特性对应的数据出错几率,根据所述数据出错几率对预设原始数据进行数据的比特翻转。
5.一种存储颗粒控制器的性能测试方法,其特征在于,所述方法包括:
接收主机控制中心发送的闪存命令;
采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到存储颗粒模拟器,以操作所述存储颗粒模拟器中的待操作数据,所述存储颗粒模拟器用于根据主机控制中心下发的配置信息,模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据按照与所述NAND存储特性对应的数据出错几率进行数据的比特翻转,以得到所述待操作数据;
接收所述存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心,以供所述主机控制中心根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
6.根据权利要求5所述的方法,其特征在于,所述接收主机控制中心发送的闪存命令,包括:
接收主机控制中心发送的测试向量;
解析所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列。
7.根据权利要求5或6所述的方法,其特征在于,在所述采用所述闪存命令模拟存储颗粒控制器发送的控制命令之前,所述方法还包括:
采用ONFI的接口模式建立与存储颗粒模拟器之间的控制连接。
8.一种存储颗粒控制器仿真平台,其特征在于,包括:
接收模块,用于接收主机控制中心发送的闪存命令;
命令管理模块,用于采用所述闪存命令模拟存储颗粒控制器发送的控制命令,并将所述控制命令发送到存储颗粒模拟器,以操作所述存储颗粒模拟器中的待操作数据,所述存储颗粒模拟器用于根据主机控制中心下发的配置信息,模拟Flash存储颗粒在指定寿命周期的NAND存储特性对预设原始数据按照与所述NAND存储特性对应的数据出错几率进行数据的比特翻转,以得到所述待操作数据;
数据处理模块,用于接收所述存储颗粒模拟器返回的操作结果,按照所仿真的存储颗粒控制器的纠错模型对所述操作结果进行纠错处理,并将纠错处理后的操作结果发送到主机控制中心,以供所述主机控制中心根据接收到的操作结果实现对所仿真的存储颗粒控制器的性能测试。
9.根据权利要求8所述的存储颗粒控制器仿真平台,其特征在于,所述接收模块,包括:
接收单元,用于接收主机控制中心发送的测试向量;
生成单元,用于解析所述测试向量,生成与所述测试向量对应的至少一个闪存命令,将生成的各个闪存命令形成闪存命令队列。
10.根据权利要求8或9所述的存储颗粒控制器仿真平台,其特征在于,还包括:
接口管理模块,用于在所述采用所述闪存命令模拟存储颗粒控制器发送的控制命令之前,采用ONFI的接口模式建立与存储颗粒模拟器之间的控制连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811583601.4A CN109684150B (zh) | 2018-12-24 | 2018-12-24 | 存储颗粒控制器的性能测试系统、测试方法及仿真平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811583601.4A CN109684150B (zh) | 2018-12-24 | 2018-12-24 | 存储颗粒控制器的性能测试系统、测试方法及仿真平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109684150A CN109684150A (zh) | 2019-04-26 |
CN109684150B true CN109684150B (zh) | 2022-04-26 |
Family
ID=66189028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811583601.4A Active CN109684150B (zh) | 2018-12-24 | 2018-12-24 | 存储颗粒控制器的性能测试系统、测试方法及仿真平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109684150B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110399645B (zh) * | 2019-06-28 | 2023-07-07 | 深圳忆联信息系统有限公司 | 基于固态硬盘的fpga原型验证加速系统及实现方法 |
CN111752772B (zh) * | 2020-05-11 | 2024-10-18 | 珠海妙存科技有限公司 | 存储设备仿真测试系统及方法 |
CN112509631A (zh) * | 2020-12-25 | 2021-03-16 | 东莞记忆存储科技有限公司 | 存储颗粒质量的批量测试系统、方法、计算机设备及存储介质 |
CN112885403B (zh) * | 2021-02-08 | 2023-07-14 | 山东云海国创云计算装备产业创新中心有限公司 | 一种Flash控制器的功能测试方法、装置及设备 |
CN117971583B (zh) * | 2024-03-28 | 2024-06-11 | 合肥康芯威存储技术有限公司 | 一种存储颗粒的测试方法、系统、电子设备及存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103000230A (zh) * | 2011-09-09 | 2013-03-27 | 上海华虹Nec电子有限公司 | 一种非易失性存储器ip核的测试和验证开发系统 |
CN104536864A (zh) * | 2014-12-10 | 2015-04-22 | 山东华芯半导体有限公司 | 一种位翻转可控的Nand Flash仿真模型的注错方法 |
CN104658610A (zh) * | 2015-01-14 | 2015-05-27 | 广东省电子信息产业集团有限公司 | 一种动态调整的闪存错误检测方法及装置 |
CN105068909A (zh) * | 2015-08-13 | 2015-11-18 | 北京京存技术有限公司 | 一种内嵌式存储器的模拟测试开发平台 |
CN105159840A (zh) * | 2015-10-16 | 2015-12-16 | 华中科技大学 | 一种闪存器件的软信息提取方法 |
CN105630623A (zh) * | 2015-12-31 | 2016-06-01 | 深圳市金胜电子科技有限公司 | 一种闪存颗粒检测装置 |
CN106681893A (zh) * | 2016-12-29 | 2017-05-17 | 记忆科技(深圳)有限公司 | 一种nand flash模拟器的实现方法 |
WO2017142185A1 (ko) * | 2016-02-16 | 2017-08-24 | 단국대학교 산학협력단 | 플래시 메모리의 신뢰성 검증을 위한 아날로그 정보 기반 에뮬레이션 방법 및 그 장치 |
CN107391395A (zh) * | 2017-09-04 | 2017-11-24 | 北京国华世纪电子科技有限公司 | 一种嵌入式系统的长寿命曲线记录方法 |
KR101826778B1 (ko) * | 2016-09-28 | 2018-03-22 | 현대오트론 주식회사 | 플래쉬 라이프 사이클 및 성능 개선을 고려한 eeprom 에뮬레이션 구현 방법 |
CN107944128A (zh) * | 2017-11-21 | 2018-04-20 | 上海航天测控通信研究所 | 基于存储控制fpga的flash坏块仿真验证系统 |
CN108804272A (zh) * | 2018-05-25 | 2018-11-13 | 深圳市德名利电子有限公司 | 一种高速的闪存模拟器及其模拟方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9569120B2 (en) * | 2014-08-04 | 2017-02-14 | Nvmdurance Limited | Adaptive flash tuning |
-
2018
- 2018-12-24 CN CN201811583601.4A patent/CN109684150B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103000230A (zh) * | 2011-09-09 | 2013-03-27 | 上海华虹Nec电子有限公司 | 一种非易失性存储器ip核的测试和验证开发系统 |
CN104536864A (zh) * | 2014-12-10 | 2015-04-22 | 山东华芯半导体有限公司 | 一种位翻转可控的Nand Flash仿真模型的注错方法 |
CN104658610A (zh) * | 2015-01-14 | 2015-05-27 | 广东省电子信息产业集团有限公司 | 一种动态调整的闪存错误检测方法及装置 |
CN105068909A (zh) * | 2015-08-13 | 2015-11-18 | 北京京存技术有限公司 | 一种内嵌式存储器的模拟测试开发平台 |
CN105159840A (zh) * | 2015-10-16 | 2015-12-16 | 华中科技大学 | 一种闪存器件的软信息提取方法 |
CN105630623A (zh) * | 2015-12-31 | 2016-06-01 | 深圳市金胜电子科技有限公司 | 一种闪存颗粒检测装置 |
WO2017142185A1 (ko) * | 2016-02-16 | 2017-08-24 | 단국대학교 산학협력단 | 플래시 메모리의 신뢰성 검증을 위한 아날로그 정보 기반 에뮬레이션 방법 및 그 장치 |
KR101826778B1 (ko) * | 2016-09-28 | 2018-03-22 | 현대오트론 주식회사 | 플래쉬 라이프 사이클 및 성능 개선을 고려한 eeprom 에뮬레이션 구현 방법 |
CN106681893A (zh) * | 2016-12-29 | 2017-05-17 | 记忆科技(深圳)有限公司 | 一种nand flash模拟器的实现方法 |
CN107391395A (zh) * | 2017-09-04 | 2017-11-24 | 北京国华世纪电子科技有限公司 | 一种嵌入式系统的长寿命曲线记录方法 |
CN107944128A (zh) * | 2017-11-21 | 2018-04-20 | 上海航天测控通信研究所 | 基于存储控制fpga的flash坏块仿真验证系统 |
CN108804272A (zh) * | 2018-05-25 | 2018-11-13 | 深圳市德名利电子有限公司 | 一种高速的闪存模拟器及其模拟方法 |
Non-Patent Citations (3)
Title |
---|
FlashSim: A Simulator for NAND Flash-Based Solid-State Drives;Youngjae Kim;《2009 First International Conference on Advances in System Simulation》;20091009;全文 * |
Real usage-based precise reliability test by extracting read/write/retention-mixed real-life access of NAND flash memory from system-level SSD emulator;Yusuke Yamaga;《2017 IEEE International Reliability Physics Symposium (IRPS)》;20170601;全文 * |
基于FPGA的NAND Flash控制器系统设计;刘巍杰;《中国优秀硕士学位论文全文数据库信息科技辑》;20170331;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109684150A (zh) | 2019-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109684150B (zh) | 存储颗粒控制器的性能测试系统、测试方法及仿真平台 | |
CN112148542B (zh) | 一种分布式存储集群的可靠性测试方法、装置及系统 | |
CN109165025A (zh) | 芯片离线烧录方法、装置、系统、计算机存储介质及设备 | |
CN105738854A (zh) | 智能电表嵌入式应用的模拟存储器测试板系统及测试方法 | |
US10203371B2 (en) | Methods and systems for generating functional test patterns for manufacture test | |
CN111814354B (zh) | 仪器性能的模拟测试方法、系统、介质及电子设备 | |
US20160125958A1 (en) | Testing storage device power circuitry | |
CN110941934B (zh) | 一种fpga原型验证开发板分割仿真系统、方法、介质及终端 | |
CN107038120A (zh) | 一种软件测试方法和设备 | |
CN113886162A (zh) | 一种计算设备性能测试方法、计算设备及存储介质 | |
US9501390B1 (en) | Enhancing automated mobile application testing | |
CN116909800B (zh) | 崩溃信息的定位方法、崩溃信息的定位装置及存储介质 | |
CN117497036A (zh) | NAND Flash颗粒模拟装置、读写方法和系统 | |
CN116090380B (zh) | 数字集成电路验证的自动化方法及装置、存储介质和终端 | |
CN114492269B (zh) | 闪存控制器的验证系统 | |
CN106909484B (zh) | 一种用于存储环境下模拟坏盘测试的系统及方法 | |
US10481969B2 (en) | Configurable system wide tests | |
CN115588458A (zh) | 存储设备测试方法、系统、设备和可读存储介质 | |
CN114356679B (zh) | 实现坏块设置的方法、装置、存储介质及电子设备 | |
US20080209259A1 (en) | Method and system for testing reliability of data stored in raid | |
CN113674795B (zh) | 用于固态硬盘的测试系统和测试方法 | |
US11847393B2 (en) | Computing device and method for developing a system model utilizing a simulation assessment module | |
TWI670721B (zh) | 用於儲存裝置之不正常斷電測試方法及設備 | |
CN118838769A (zh) | 硬件设备的容错功能测试方法、装置、设备及存储介质 | |
CN116662085A (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 14th Floor of Shining Building, 35 College Road, Haidian District, Beijing, 100083 (1407-005) Applicant after: BEIJING DERA TECHNOLOGY Co.,Ltd. Address before: 14th Floor of Shining Building, 35 College Road, Haidian District, Beijing, 100083 (1407-005) Applicant before: BEIJING ZIGUANG DERA TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |