CN112885403A - 一种Flash控制器的功能测试方法、装置及设备 - Google Patents

一种Flash控制器的功能测试方法、装置及设备 Download PDF

Info

Publication number
CN112885403A
CN112885403A CN202110182238.0A CN202110182238A CN112885403A CN 112885403 A CN112885403 A CN 112885403A CN 202110182238 A CN202110182238 A CN 202110182238A CN 112885403 A CN112885403 A CN 112885403A
Authority
CN
China
Prior art keywords
flash
flash controller
tested
operation instruction
controller
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
CN202110182238.0A
Other languages
English (en)
Other versions
CN112885403B (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.)
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center 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 Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202110182238.0A priority Critical patent/CN112885403B/zh
Publication of CN112885403A publication Critical patent/CN112885403A/zh
Application granted granted Critical
Publication of CN112885403B publication Critical patent/CN112885403B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C29/56016Apparatus features
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C29/56004Pattern generation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本发明公开了一种Flash控制器的功能测试方法、装置、设备及计算机可读存储介质,基于与待测Flash控制器和Flash控制器仿真平台的第一Flash仿真模型不同数据链路的指令读取数据链路,获取预存于指定存储位置的Flash操作指令码,继而根据该Flash操作指令码执行对待测Flash控制器的功能测试,区分了指令读取数据链路和待测Flash控制器执行Flash操作指令的链路,消除了待测Flash控制器读取Flash操作指令码和执行Flash操作指令的冲突,从而有效提高了Flash控制器的功能仿真测试的成功率。

Description

一种Flash控制器的功能测试方法、装置及设备
技术领域
本发明涉及IP设计的测试技术领域,特别是涉及一种Flash控制器的功能测试方法、装置、设备及计算机可读存储介质。
背景技术
固态硬盘(Solid State Disk,SSD)的基本组成结构包括Flash(闪存)颗粒和Flash控制器,Flash控制器中有芯片,负责Flash的读写、磨损均衡、寿命监控等等。
在对Flash控制器进行功能测试时,通过搭建Flash控制器测试平台,验证Flash控制器解析得到自中央处理器(central processing unit,CPU)发送的Flash操作指令、对片外Flash芯片发送该Flash操作指令的执行能力。为了进行有针对性的测试,基于仿真平台对Flash控制器进行测试也是需要进行的。而在搭建Flash控制器仿真平台时,若直接采用Flash模型模拟物理上的Flash芯片,将CPU的Flash操作指令转换为Flash模型要求数据格式的初始化文件,供仿真时CPU在Flash模型中读取Flash操作指令码以及对待测Flash控制器执行对片外Flash的操作,在仿真过程中往往会出现指令读取失败、仿真无法进行等现象。
提高Flash控制器的功能仿真测试的成功率,是本领域技术人员需要解决的技术问题。
发明内容
本发明的目的是提供一种Flash控制器的功能测试方法、装置、设备及计算机可读存储介质,用于提高Flash控制器的功能仿真测试的成功率。
为解决上述技术问题,本发明提供一种Flash控制器的功能测试方法,包括:
预先搭建Flash控制器仿真平台;
基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码;
向待测Flash控制器发送所述Flash操作指令码,以使所述待测Flash控制器对所述Flash控制器仿真平台部署的第一Flash仿真模型执行与所述Flash操作指令码对应的Flash操作指令;
获取所述待测Flash控制器执行所述Flash操作指令的执行结果;
根据所述执行结果确定所述待测Flash控制器的功能测试结果;
其中,所述待测Flash控制器和第一Flash仿真模型所在的数据链路和所述指令读取数据链路为不同的数据链路。
可选的,所述Flash控制器仿真平台还部署有第二Flash仿真模型;
所述基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码,具体为:
向辅助Flash控制器发送读取指令,以使所述辅助Flash控制器在所述第二Flash仿真模型中获取并返回与所述读取指令对应的Flash操作指令码;
其中,所述辅助Flash控制器被系统总线分配的基地址与所述待测Flash控制器被所述系统总线分配的基地址不同。
可选的,搭建所述Flash控制器仿真平台,具体为:
基于ACE总线协议,建立与通过高级高性能总线接入片内总线网络的所述待测Flash控制器的通信连接,并部署所述第一Flash仿真模型与所述待测Flash控制器对应的串行外设接口的连接关系。
可选的,部署所述第一Flash仿真模型与所述待测Flash控制器对应的串行外设接口的连接关系,具体包括:
获取所述待测Flash控制器待连接的Flash芯片对应的Flash模型代码和所述Flash模型代码的仿真说明文件;
基于所述Flash模型代码和所述仿真说明文件部署所述第一Flash仿真模型与所述串行外设接口的连接关系。
可选的,所述Flash操作指令码的类型具体包括:Flash写入操作指令码、Flash读取操作指令码和Flash擦除操作指令码。
可选的,所述Flash操作指令具体为对目的地址的Flash写入操作指令;
相应的,所述获取所述待测Flash控制器执行所述Flash操作指令的执行结果,具体包括:
向所述待测Flash控制器发送对所述目的地址的Flash读取操作指令,得到所述待测Flash控制器反馈的数据读取结果;
若所述数据读取结果为所述Flash写入操作指令对应的数据,则确定执行结果为成功执行;否则确定所述执行结果为未成功执行。
可选的,还包括:
根据所述待测Flash控制器在执行所述Flash操作指令时的CPU总线时序、串行外设接口总线时序、芯片内执行模式,以及与所述第一Flash仿真模型对应的端口数据时序,确定所述待测Flash控制器的工作状态;
相应的,所述根据所述执行结果确定所述待测Flash控制器的功能测试结果,具体为:
若所述执行结果为成功执行且所述待测Flash控制器的工作状态为正常工作状态,则确定所述功能测试结果为合格;否则确定所述功能测试结果为不合格。
为解决上述技术问题,本发明还提供一种Flash控制器的功能测试装置,包括:
部署单元,用于预先搭建Flash控制器仿真平台;
第一获取单元,用于基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码;
发送单元,用于向待测Flash控制器发送所述Flash操作指令码,以使所述待测Flash控制器对所述Flash控制器仿真平台部署的第一Flash仿真模型执行与所述Flash操作指令码对应的Flash操作指令;
第二获取单元,用于获取所述待测Flash控制器执行所述Flash操作指令的执行结果;
判断单元,用于根据所述执行结果确定所述待测Flash控制器的功能测试结果;
其中,所述待测Flash控制器和第一Flash仿真模型所在的数据链路和所述指令读取数据链路为不同的数据链路。
为解决上述技术问题,本发明还提供一种Flash控制器的功能测试设备,包括:
存储器,用于存储指令,所述指令包括上述任意一项所述Flash控制器的功能测试方法的步骤;
处理器,用于执行所述指令。
为解决上述技术问题,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述Flash控制器的功能测试方法的步骤。
本发明所提供的Flash控制器的功能测试方法,在预先搭建Flash控制器仿真平台的基础上,基于与待测Flash控制器和Flash控制器仿真平台的第一Flash仿真模型不同数据链路的指令读取数据链路,获取预存于指定存储位置的Flash操作指令码,继而向待测Flash控制器发送该Flash操作指令码,验证待测Flash控制器执行该Flash操作指令码对应的Flash操作指令的执行结果以及最终得到待测Flash控制器的功能测试结果,区分了指令读取数据链路和待测Flash控制器执行Flash操作指令的链路,消除了待测Flash控制器读取Flash操作指令码和执行Flash操作指令的冲突,从而有效提高了Flash控制器的功能仿真测试的成功率。
本发明还提供了一种Flash控制器的功能测试装置、设备及计算机可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种Flash控制器的功能测试方法的流程图;
图2为本发明实施例提供的一种Flash控制器仿真平台的架构示意图;
图3为本发明实施例提供的一种Flash控制器的功能测试装置的结构示意图;
图4为本发明实施例提供的一种Flash控制器的功能测试设备的结构示意图。
具体实施方式
本发明的核心是提供一种Flash控制器的功能测试方法、装置、设备及计算机可读存储介质,用于提高Flash控制器的功能仿真测试的成功率。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种Flash控制器的功能测试方法的流程图。
如图1所示,本发明实施例提供的Flash控制器的功能测试方法包括:
S101:预先搭建Flash控制器仿真平台。
S102:基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码。
S103:向待测Flash控制器发送Flash操作指令码,以使待测Flash控制器对Flash控制器仿真平台部署的第一Flash仿真模型执行该Flash操作指令码对应的Flash操作指令。
S104:获取待测Flash控制器执行Flash操作指令的执行结果。
S105:根据执行结果确定待测Flash控制器的功能测试结果。
其中,待测Flash控制器和第一Flash仿真模型所在的数据链路和指令读取数据链路为不同的数据链路。
在具体实施中,本发明实施例提供的Flash控制器的功能测试方法基于CPU实现,在系统级芯片(SoC)上,CPU具体为ARM处理器。在实际应用中,ARM处理器通过ACE总线协议接入片内总线网络,Flash控制器通过高级高性能总线(Advanced High Performance Bus,AHB)接入片内总线网络,基于片内总线网络预先分配的基地址与ARM处理器通信,Flash控制器通过串行外设接口与片外Flash芯片连接。因此,针对系统级芯片,步骤S101中搭建Flash控制器仿真平台,具体为:
基于ACE总线协议,建立与通过高级高性能总线接入片内总线网络的待测Flash控制器的通信连接,并部署第一Flash仿真模型与待测Flash控制器对应的串行外设接口的连接关系。
其中,部署第一Flash仿真模型与待测Flash控制器对应的串行外设接口的连接关系,具体包括:
获取待测Flash控制器待连接的Flash芯片对应的Flash模型代码和Flash模型代码的仿真说明文件;
基于Flash模型代码和仿真说明文件部署第一Flash仿真模型与串行外设接口(Serial Peripheral Interface,SPI)的连接关系。
在搭建Flash控制器仿真平台时,需要Flash仿真模型来模拟物理上的Flash芯片。根据待测Flash控制器将要连接的Flash芯片的厂家和型号,从对应的官网上获取用于RTL仿真的对应Flash模型代码和仿真说明文件。该Flash模型代码的行为描述与物理上的Flash芯片相同,能模拟实现Flash芯片的所有功能,同时对应管脚的输入输出时序与Flash芯片管脚的时序相同。在部署第一Flash仿真模型与串行外设接口的连接关系时,第一Flash仿真模型的输入输出接口与要模拟的Flash芯片的管脚相同,根据管脚对应关系,第一Flash仿真模型的管脚接口与Flash控制器仿真平台的串行外设接口相连,仿真中使用对第一Flash仿真模型的操作来模拟对物理上Flash芯片的对应操作。在针对系统级芯片上的Flash控制器进行仿真功能验证时,串行外设接口采用QSPI(四线串行外设接口)形式。
对于步骤S102来说,Flash操作指令码为CPU编译器生成的可执行文件,CPU从指定存储位置获取Flash操作指令码以对待测Flash控制器进行功能验证。区分于待测Flash控制器和第一Flash仿真模型所在的数据链路,CPU通过指令读取数据链路,获取预存于指定存储位置的Flash操作指令码,指定存储位置可以位于外部存储介质,也可以位于Flash控制器仿真平台中除第一Flash仿真模型外的其他存储空间。
对于步骤S103来说,CPU向待测Flash控制器发送Flash操作指令码。待测Flash控制器在正常工作状态下,会接收并解析Flash操作指令码得到Flash操作指令,并向第一Flash仿真模型执行该Flash操作指令。
对于步骤S104来说,CPU向待测Flash控制器发送相应的命令(如对写入操作指令的数据的读取命令)以获取待测Flash控制器执行Flash操作指令的执行结果。
具体来说,Flash操作指令码是根据待测Flash控制器的功能说明以及待测Flash控制器下发控制命令的要求设定的,Flash操作指令码的类型具体可以包括:Flash写入操作指令码、Flash读取操作指令码和Flash擦除操作指令码等操作指令码,以对待测Flash控制器进行Flash的写入、读取、擦除等作为存储介质的功能验证。
例如,Flash操作指令具体为对目的地址的Flash写入操作指令;
相应的,步骤S104中获取待测Flash控制器执行Flash操作指令的执行结果,具体包括:
向待测Flash控制器发送对目的地址的Flash读取操作指令,得到待测Flash控制器反馈的数据读取结果;
若数据读取结果为Flash写入操作指令对应的数据,则确定执行结果为成功执行;否则确定执行结果为未成功执行。
对步骤S105来说,可以在待测Flash控制器能够成功执行所有Flash操作指令码对应的Flash操作指令后,认为待测Flash控制器的功能测试结果为合格。为具体分析待测Flash控制器的功能测试结果,本发明实施例提供的Flash控制器的功能测试方法还包括:
根据待测Flash控制器在执行Flash操作指令时的CPU总线时序、串行外设接口总线时序、芯片内执行模式,以及与第一Flash仿真模型对应的端口数据时序,确定待测Flash控制器的工作状态;
相应的,步骤S105中根据执行结果确定待测Flash控制器的功能测试结果,具体为:
若执行结果为成功执行且待测Flash控制器的工作状态为正常工作状态,则确定功能测试结果为合格;否则确定功能测试结果为不合格。
本发明实施例提供的Flash控制器的功能测试方法,在预先搭建Flash控制器仿真平台的基础上,基于与待测Flash控制器和Flash控制器仿真平台的第一Flash仿真模型不同数据链路的指令读取数据链路,获取预存于指定存储位置的Flash操作指令码,继而向待测Flash控制器发送该Flash操作指令码,验证待测Flash控制器执行该Flash操作指令码对应的Flash操作指令的执行结果以及最终得到待测Flash控制器的功能测试结果,区分了指令读取数据链路和待测Flash控制器执行Flash操作指令的链路,消除了待测Flash控制器读取Flash操作指令码和执行Flash操作指令的冲突,从而有效提高了Flash控制器的功能仿真测试的成功率。
图2为本发明实施例提供的一种Flash控制器仿真平台的架构示意图。
在上述实施例的基础上,在本发明实施例提供的Flash控制器的功能测试方法中,Flash控制器仿真平台还部署有第二Flash仿真模型;
则步骤S102中基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码,具体为:
向辅助Flash控制器发送读取指令,以使辅助Flash控制器在第二Flash仿真模型中获取并返回与读取指令对应的Flash操作指令码。
其中,辅助Flash控制器被系统总线分配的基地址与待测Flash控制器被系统总线分配的基地址不同。
在具体实施中,第二Flash仿真模型的部署方式可以参考第一Flash仿真模型的部署方式。
如图2所示,CPU 201通过ACE总线接入片内总线网络。辅助Flash控制器202通过AHB总线接入片内总线网络,辅助Flash控制器202通过QSPI总线连接第二Flash仿真模型203,构成指令读取数据链路。待测Flash控制器204通过AHB总线接入片内总线网络,待测Flash控制器204通过QSPI总线连接第一Flash仿真模型205,构成指令码执行链路。辅助Flash控制器202和待测Flash控制器204在系统总线上分配的基地址不同,以此区分CPU201对不同Flash仿真模型的操作,避免读取指令失败、仿真无法进行等问题。
在实际应用中,Flash操作指令码存放在第二Flash仿真模型203中。第一Flash仿真模型205可以为空,也可以预先存放等待读取的文件内容,该文件内容可修改。CPU 201通过片内总线网络与辅助Flash控制器202通信,读取Flash操作指令码,而后通过片内总线网络将Flash操作指令码发送到待测Flash控制器204。待测Flash控制器204解析Flash操作指令码得到相应的Flash操作指令,在第一Flash仿真模型205中执行Flash操作指令。
上文详述了Flash控制器的功能测试方法对应的各个实施例,在此基础上,本发明还公开了与上述方法对应的Flash控制器的功能测试装置、设备及计算机可读存储介质。
图3为本发明实施例提供的一种Flash控制器的功能测试装置的结构示意图。
如图3所示,本发明实施例提供的Flash控制器的功能测试装置包括:
部署单元301,用于预先搭建Flash控制器仿真平台;
第一获取单元302,用于基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码;
发送单元303,用于向待测Flash控制器发送Flash操作指令码,以使待测Flash控制器对Flash控制器仿真平台部署的第一Flash仿真模型执行与Flash操作指令码对应的Flash操作指令;
第二获取单元304,用于获取待测Flash控制器执行Flash操作指令的执行结果;
判断单元305,用于根据执行结果确定待测Flash控制器的功能测试结果;
其中,待测Flash控制器和第一Flash仿真模型所在的数据链路和指令读取数据链路为不同的数据链路。
进一步的,本发明实施例提供的Flash控制器的功能测试装置还可以包括:
检查单元,用于根据待测Flash控制器在执行Flash操作指令时的CPU总线时序、串行外设接口总线时序、芯片内执行模式,以及与第一Flash仿真模型对应的端口数据时序,确定待测Flash控制器的工作状态;
相应的,判断单元305根据执行结果确定待测Flash控制器的功能测试结果,具体为:
若执行结果为成功执行且待测Flash控制器的工作状态为正常工作状态,则确定功能测试结果为合格;否则确定功能测试结果为不合格。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图4为本发明实施例提供的一种Flash控制器的功能测试设备的结构示意图。
如图4所示,本发明实施例提供的Flash控制器的功能测试设备包括:
存储器410,用于存储指令,所述指令包括上述任意一项实施例所述的Flash控制器的功能测试方法的步骤;
处理器420,用于执行所述指令。
其中,处理器420可以包括一个或多个处理核心,比如3核心处理器、8核心处理器等。处理器420可以采用数字信号处理DSP(Digital Signal Processing)、现场可编程门阵列FPGA(Field-Programmable Gate Array)、可编程逻辑阵列PLA(Programmable LogicArray)中的至少一种硬件形式来实现。处理器420也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器CPU(CentralProcessing Unit);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器420可以集成有图像处理器GPU(Graphics Processing Unit),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器420还可以包括人工智能AI(Artificial Intelligence)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器410可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器410还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器410至少用于存储以下计算机程序411,其中,该计算机程序411被处理器420加载并执行之后,能够实现前述任一实施例公开的Flash控制器的功能测试方法中的相关步骤。另外,存储器410所存储的资源还可以包括操作系统412和数据413等,存储方式可以是短暂存储或者永久存储。其中,操作系统412可以为Windows。数据413可以包括但不限于上述方法所涉及到的数据。
在一些实施例中,Flash控制器的功能测试设备还可包括有显示屏430、电源440、通信接口450、输入输出接口460、传感器470以及通信总线480。
本领域技术人员可以理解,图4中示出的结构并不构成对Flash控制器的功能测试设备的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的Flash控制器的功能测试设备,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如上所述的Flash控制器的功能测试方法,效果同上。
需要说明的是,以上所描述的装置、设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本发明各个实施例所述方法的全部或部分步骤。
为此,本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如Flash控制器的功能测试方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器ROM(Read-OnlyMemory)、随机存取存储器RAM(Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例中提供的计算机可读存储介质所包含的计算机程序能够在被处理器执行时实现如上所述的Flash控制器的功能测试方法的步骤,效果同上。
以上对本发明所提供的一种Flash控制器的功能测试方法、装置、设备及计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种Flash控制器的功能测试方法,其特征在于,包括:
预先搭建Flash控制器仿真平台;
基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码;
向待测Flash控制器发送所述Flash操作指令码,以使所述待测Flash控制器对所述Flash控制器仿真平台部署的第一Flash仿真模型执行与所述Flash操作指令码对应的Flash操作指令;
获取所述待测Flash控制器执行所述Flash操作指令的执行结果;
根据所述执行结果确定所述待测Flash控制器的功能测试结果;
其中,所述待测Flash控制器和第一Flash仿真模型所在的数据链路和所述指令读取数据链路为不同的数据链路。
2.根据权利要求1所述的功能测试方法,其特征在于,所述Flash控制器仿真平台还部署有第二Flash仿真模型;
所述基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码,具体为:
向辅助Flash控制器发送读取指令,以使所述辅助Flash控制器在所述第二Flash仿真模型中获取并返回与所述读取指令对应的Flash操作指令码;
其中,所述辅助Flash控制器被系统总线分配的基地址与所述待测Flash控制器被所述系统总线分配的基地址不同。
3.根据权利要求1所述的功能测试方法,其特征在于,搭建所述Flash控制器仿真平台,具体为:
基于ACE总线协议,建立与通过高级高性能总线接入片内总线网络的所述待测Flash控制器的通信连接,并部署所述第一Flash仿真模型与所述待测Flash控制器对应的串行外设接口的连接关系。
4.根据权利要求3所述的功能测试方法,其特征在于,部署所述第一Flash仿真模型与所述待测Flash控制器对应的串行外设接口的连接关系,具体包括:
获取所述待测Flash控制器待连接的Flash芯片对应的Flash模型代码和所述Flash模型代码的仿真说明文件;
基于所述Flash模型代码和所述仿真说明文件部署所述第一Flash仿真模型与所述串行外设接口的连接关系。
5.根据权利要求1所述的功能测试方法,其特征在于,所述Flash操作指令码的类型具体包括:Flash写入操作指令码、Flash读取操作指令码和Flash擦除操作指令码。
6.根据权利要求1所述的功能测试方法,其特征在于,所述Flash操作指令具体为对目的地址的Flash写入操作指令;
相应的,所述获取所述待测Flash控制器执行所述Flash操作指令的执行结果,具体包括:
向所述待测Flash控制器发送对所述目的地址的Flash读取操作指令,得到所述待测Flash控制器反馈的数据读取结果;
若所述数据读取结果为所述Flash写入操作指令对应的数据,则确定执行结果为成功执行;否则确定所述执行结果为未成功执行。
7.根据权利要求1所述的功能测试方法,其特征在于,还包括:
根据所述待测Flash控制器在执行所述Flash操作指令时的CPU总线时序、串行外设接口总线时序、芯片内执行模式,以及与所述第一Flash仿真模型对应的端口数据时序,确定所述待测Flash控制器的工作状态;
相应的,所述根据所述执行结果确定所述待测Flash控制器的功能测试结果,具体为:
若所述执行结果为成功执行且所述待测Flash控制器的工作状态为正常工作状态,则确定所述功能测试结果为合格;否则确定所述功能测试结果为不合格。
8.一种Flash控制器的功能测试装置,其特征在于,包括:
部署单元,用于预先搭建Flash控制器仿真平台;
第一获取单元,用于基于指令读取数据链路,获取预存于指定存储位置的Flash操作指令码;
发送单元,用于向待测Flash控制器发送所述Flash操作指令码,以使所述待测Flash控制器对所述Flash控制器仿真平台部署的第一Flash仿真模型执行与所述Flash操作指令码对应的Flash操作指令;
第二获取单元,用于获取所述待测Flash控制器执行所述Flash操作指令的执行结果;
判断单元,用于根据所述执行结果确定所述待测Flash控制器的功能测试结果;
其中,所述待测Flash控制器和第一Flash仿真模型所在的数据链路和所述指令读取数据链路为不同的数据链路。
9.一种Flash控制器的功能测试设备,其特征在于,包括:
存储器,用于存储指令,所述指令包括权利要求1至7任意一项所述Flash控制器的功能测试方法的步骤;
处理器,用于执行所述指令。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述Flash控制器的功能测试方法的步骤。
CN202110182238.0A 2021-02-08 2021-02-08 一种Flash控制器的功能测试方法、装置及设备 Active CN112885403B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110182238.0A CN112885403B (zh) 2021-02-08 2021-02-08 一种Flash控制器的功能测试方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110182238.0A CN112885403B (zh) 2021-02-08 2021-02-08 一种Flash控制器的功能测试方法、装置及设备

Publications (2)

Publication Number Publication Date
CN112885403A true CN112885403A (zh) 2021-06-01
CN112885403B CN112885403B (zh) 2023-07-14

Family

ID=76056412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110182238.0A Active CN112885403B (zh) 2021-02-08 2021-02-08 一种Flash控制器的功能测试方法、装置及设备

Country Status (1)

Country Link
CN (1) CN112885403B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114024714A (zh) * 2021-09-30 2022-02-08 山东云海国创云计算装备产业创新中心有限公司 一种访问请求处理方法、装置、网卡设备及存储计算系统

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030076125A1 (en) * 2000-09-22 2003-04-24 Mccord Don Method and system for wafer and device level testing of an integrated circuit
US6662314B1 (en) * 1999-11-15 2003-12-09 Mitsubishi Denki Kabushiki Kaisha Microcomputer including program for rewriting data in an internal flash memory
US20090144041A1 (en) * 2007-11-30 2009-06-04 Larry Ira Goldsmith System and method for simulating a semiconductor wafer prober and a class memory test handler
CN102197382A (zh) * 2008-10-23 2011-09-21 美信集成产品公司 多层内容保护微控制器
CN102207871A (zh) * 2011-06-13 2011-10-05 深圳市海博瑞德汽车技术有限公司 基于k线及kwp2000协议的pc端的ecu调试软件
US20130117610A1 (en) * 2010-07-13 2013-05-09 Nec Corporation Emulator verification system, emulator verification method
CN104064222A (zh) * 2013-03-20 2014-09-24 华邦电子股份有限公司 闪存存储器的验证装置
CN106161132A (zh) * 2015-04-17 2016-11-23 伊姆西公司 用于对存储网络进行测试的装置和方法
CN109684150A (zh) * 2018-12-24 2019-04-26 北京紫光得瑞科技有限公司 存储颗粒控制器的性能测试系统、测试方法及仿真平台
US20190347047A1 (en) * 2018-05-10 2019-11-14 Seagate Technology Llc Virtual solid state storage system with solid state storage error emulation
US10642747B1 (en) * 2018-05-10 2020-05-05 Seagate Technology Llc Virtual flash system
CN111752772A (zh) * 2020-05-11 2020-10-09 珠海妙存科技有限公司 存储设备仿真测试系统及方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6662314B1 (en) * 1999-11-15 2003-12-09 Mitsubishi Denki Kabushiki Kaisha Microcomputer including program for rewriting data in an internal flash memory
US20030076125A1 (en) * 2000-09-22 2003-04-24 Mccord Don Method and system for wafer and device level testing of an integrated circuit
US20090144041A1 (en) * 2007-11-30 2009-06-04 Larry Ira Goldsmith System and method for simulating a semiconductor wafer prober and a class memory test handler
CN102197382A (zh) * 2008-10-23 2011-09-21 美信集成产品公司 多层内容保护微控制器
US20130117610A1 (en) * 2010-07-13 2013-05-09 Nec Corporation Emulator verification system, emulator verification method
CN102207871A (zh) * 2011-06-13 2011-10-05 深圳市海博瑞德汽车技术有限公司 基于k线及kwp2000协议的pc端的ecu调试软件
CN104064222A (zh) * 2013-03-20 2014-09-24 华邦电子股份有限公司 闪存存储器的验证装置
CN106161132A (zh) * 2015-04-17 2016-11-23 伊姆西公司 用于对存储网络进行测试的装置和方法
US20190347047A1 (en) * 2018-05-10 2019-11-14 Seagate Technology Llc Virtual solid state storage system with solid state storage error emulation
US10642747B1 (en) * 2018-05-10 2020-05-05 Seagate Technology Llc Virtual flash system
CN109684150A (zh) * 2018-12-24 2019-04-26 北京紫光得瑞科技有限公司 存储颗粒控制器的性能测试系统、测试方法及仿真平台
CN111752772A (zh) * 2020-05-11 2020-10-09 珠海妙存科技有限公司 存储设备仿真测试系统及方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114024714A (zh) * 2021-09-30 2022-02-08 山东云海国创云计算装备产业创新中心有限公司 一种访问请求处理方法、装置、网卡设备及存储计算系统

Also Published As

Publication number Publication date
CN112885403B (zh) 2023-07-14

Similar Documents

Publication Publication Date Title
US11302412B2 (en) Systems and methods for simulated device testing using a memory-based communication protocol
WO2018018978A1 (zh) 一种通用串行总线控制器验证方法、系统及设备
WO2014035463A1 (en) System and methods for generating and managing a virtual device
CN113076227A (zh) Mcu验证方法、系统和终端设备
CN115146568B (zh) 一种基于uvm的芯片验证系统及验证方法
CN113486625B (zh) 芯片的验证方法与验证系统
CN114707453A (zh) 芯片功能的验证方法、装置、电子设备及存储介质
CN112579508A (zh) 一种数据处理方法、数据处理装置、设备及存储介质
CN107273249B (zh) 主板测试方法、处理器和主板测试系统
CN112885403B (zh) 一种Flash控制器的功能测试方法、装置及设备
CN112434478B (zh) 仿真逻辑系统设计的虚拟接口的方法及相关设备
CN112417802B (zh) 一种模拟存储芯片的方法、系统、设备及存储介质
CN117330935A (zh) 一种集成电路测试方法、装置、介质
CN113760751B (zh) 生成测试用例的方法、电子设备及存储介质
CN115587026A (zh) 芯片测试方法、装置、存储介质及芯片
US11860748B2 (en) Memory test method, memory test apparatus, device and storage medium
US8990624B2 (en) Emulator verification system, emulator verification method
CN115185638A (zh) 一种仿真运行应用程序时获取调用栈的方法及计算设备
US10585615B1 (en) Virtual flash system
CN113850036A (zh) 一种信息枚举方法、装置、设备及可读存储介质
JP2013020425A (ja) オープンソースソフトウェアを利用したハードウェア・ソフトウェア協調検証方法
CN112463633A (zh) 一种片上存储器的地址译码校验方法、装置、设备及介质
CN111104271A (zh) 一种带内刷新固件过程的稳定性测试方法、装置及设备
CN113673106B (zh) 一种fpga内核可编程仿真器
TWI794997B (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