CN114116351A - 一种芯片验证的方法、装置、设备及可读介质 - Google Patents
一种芯片验证的方法、装置、设备及可读介质 Download PDFInfo
- Publication number
- CN114116351A CN114116351A CN202111429262.6A CN202111429262A CN114116351A CN 114116351 A CN114116351 A CN 114116351A CN 202111429262 A CN202111429262 A CN 202111429262A CN 114116351 A CN114116351 A CN 114116351A
- Authority
- CN
- China
- Prior art keywords
- chip
- state information
- simulation
- test
- detecting
- 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/2247—Verification or detection of system hardware configuration
-
- 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)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种芯片验证的方法、装置、设备及可读介质,该方法包括:运行待测试的芯片,并实时检测芯片的运行状态;响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;将芯片的硬件状态信息进行存储;将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。通过使用本发明的方案,能够解决ASIC平台长时间压力测试或者随机测试过程中出现的问题,能够减少对ASIC debug手段以及Trace工具的依赖,能够快速定位芯片验证测试过程中的问题。
Description
技术领域
本发明涉及计算机领域,并且更具体地涉及一种芯片验证的方法、装置、设备及可读介质。
背景技术
目前芯片验证的平台主要有Simulation、Emulation、FPGA以及ASIC,Simulation平台能够将芯片运行的状态全部保存下来,可以方便的在线或者离线调试,但能够保存的运行时间有限,而且运行速度过慢,尤其当要抓取波形时更慢;Emulation平台是各大厂商针对Simulation平台慢的缺点发展的硬件加速平台,同样可以将芯片运行的状态全部保存下来,并且所能保存的时间又有所增长,但相比Simulation平台的缺点就是成本高昂,并且要想在Emulation平台上完成大型任务如OS的运行,仍然困难重重;FPGA平台同样也能够将芯片运行的状态全部保存下来,并且所能保存的时间又有所增长,但需要提前将所要监测的信息加入到实现中,虽然FPGA理论上可以像Simulation一样保存所有的信息,但保存的时间仍有所限制,FPGA平台较为适合长时间压力测试或者随机测试,何时保存信号成为了FPGA平台的又一个痛点难点;以上是硅前验证常见的验证平台,相对于ASIC平台上的验证,硅前验证虽然有很多问题,但彼此之间能够通过一定的手段发挥各自平台的优势,反观ASIC平台,一旦验证出现问题,常见的手段是将所要监测的信号关联在为数不多的GPIO上,然后通过示波器分析波形解决问题,与硅前验证平台相比,ASIC平台包含了FPGA平台的所有缺点,并且相较于FPGA平台可以使用的调试手段、调试工具更为有限,ASIC平台与前端验证平台的割裂,使得定位问题更加困难。总体来说,目前Simulation&Emulation平台无法利用FPGA或ASIC平台运行速度快的优点完成复杂任务的仿真验证,FPGA或ASIC平台也无法利用Simulation或Emulation平台透明化调试SoC的优点,并且FPGA或ASIC平台需要更多的专业工具进行辅助调试。
发明内容
有鉴于此,本发明实施例的目的在于提出一种芯片验证的方法、装置、设备及可读介质,通过使用本发明的技术方案,能够解决ASIC平台长时间压力测试或者随机测试过程中出现的问题,能够减少对ASIC debug手段以及Trace工具的依赖,能够快速定位芯片验证测试过程中的问题。
基于上述目的,本发明的实施例的一个方面提供了一种芯片验证的方法,包括以下步骤:
运行待测试的芯片,并实时检测芯片的运行状态;
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;
将芯片的硬件状态信息进行存储;
将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。
根据本发明的一个实施例,运行待测试的芯片,并实时检测芯片的运行状态包括:
响应于在ASIC(专用集成电路,为特定用户要求和特定电子系统的需要而设计、制造的集成电路)上开始测试任务,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片;
运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
根据本发明的一个实施例,响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储包括:
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息存进行暂存;
启动DMA(Direct Memory Access,直接存储器访问)将暂存的状态信息发送到DDR(双倍速率同步动态随机存储器,是内存的其中一种)中。
根据本发明的一个实施例,将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真包括:
将芯片的状态信息和硬件状态信息发送到Simulation仿真软件;
基于硬件状态信息将芯片的状态进行恢复并判断是否恢复成功;
响应于芯片的状态恢复成功,使能芯片并使用Simulation仿真软件进行仿真以得到仿真结果;
基于仿真结果进行分析。
本发明的实施例的另一个方面,还提供了一种芯片验证的装置,装置包括:
检测模块,检测模块配置为运行待测试的芯片,并实时检测芯片的运行状态;
探针模块,探针模块配置为响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;
存储模块,存储模块配置为将芯片的硬件状态信息进行存储;
仿真模块,仿真模块配置为将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。
根据本发明的一个实施例,检测模块还配置为:
响应于在ASIC上开始测试任务,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片;
运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
根据本发明的一个实施例,探针模块还配置为:
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息存进行暂存;
启动DMA将暂存的状态信息发送到DDR中。
根据本发明的一个实施例,仿真模块还配置为:
将芯片的状态信息和硬件状态信息发送到Simulation仿真软件;
基于硬件状态信息将芯片的状态进行恢复并判断是否恢复成功;
响应于芯片的状态恢复成功,使能芯片并使用Simulation仿真软件进行仿真以得到仿真结果;
基于仿真结果进行分析。
本发明的实施例的另一个方面,还提供了一种计算机设备,该计算机设备包括:
至少一个处理器;以及
存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述任意一项方法的步骤。
本发明的实施例的另一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述任意一项方法的步骤。
本发明具有以下有益技术效果:本发明实施例提供的芯片验证的方法,通过运行待测试的芯片,并实时检测芯片的运行状态;响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;将芯片的硬件状态信息进行存储;将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真的技术方案,能够解决ASIC平台长时间压力测试或者随机测试过程中出现的问题,能够减少对ASIC debug手段以及Trace工具(主机可以通过JTAG接口连接SoC,并用来调试SoC)的依赖,能够快速定位芯片验证测试过程中的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为根据本发明一个实施例的芯片验证的方法的示意性流程图;
图2为根据本发明一个实施例的芯片验证的硬件框架的示意图;
图3为根据本发明一个实施例的芯片验证的装置的示意图;
图4为根据本发明一个实施例的计算机设备的示意图;
图5为根据本发明一个实施例的计算机可读存储介质的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
基于上述目的,本发明的实施例的第一个方面,提出了一种芯片验证的方法的一个实施例。图1示出的是该方法的示意性流程图。
如图1中所示,该方法可以包括以下步骤:
S1运行待测试的芯片,并实时检测芯片的运行状态。
在ASIC上开始测试任务时,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片,然后运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
S2响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储。
检测到芯片发出测试任务完成的信号后,将芯片的状态信息暂时存储在检测模块的存储中,之后再启动DMA将暂存的信息发送到DDR中。
S3将芯片的硬件状态信息进行存储。
S4将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。
可以使用如图2所示的系统实现本发明的方法,本发明通过在芯片设计过程中增加一些探针模块(后文中的Monitor即指此探针模块),在使能本功能时,探针模块会在完成一次任务时将对应模块的状态都记录下来,当在ASIC或FPGA验证出现问题时,可以方便地将探针模块上次记录的硬件模块的状态信息与本次发送的请求信息一并送到Simulation仿真软件中,在Simulation环境中由探针模块将记录的硬件模块状态恢复出来,并根据记录的请求信息发起一次任务,以此增加了ASIC或FPGA与Simulation平台联合验证的桥梁。当ASIC或FPGA平台在完成压力验证的过程中出现问题时,不需要在ASIC或FPGA平台进行艰难的debug,可以直接在Simulation平台中快速重现问题,之后分析并解决问题。
本发明的硬件结构分为两大块:Main Function包含了SoC(系统级芯片,也称为片上系统,是一个有专用目标的集成电路)所有要实现的功能,本发明暂定包含Module A(模块,芯片)、Module B、Module N、DDR/RAM等模块,Debug/Trace Function包含了调试SoCMain Function中各模块的模块,本发明暂定Module A对应的Debug/Trace模块为MonitorA(探针模块),Module N对应的Debug/Trace模块为Monitor N,Monitor N中Save Module(保存模块)负责将某个时间节点上的Module N中的状态暂存下来,Recovery Module(恢复模块)负责把保存的硬件状态信息恢复到Module N,DDR/RAM负责存储Monitor N模块采集到的Module N的状态信息,此DDR/RAM非必须,也可以通过SoC与主机的互连接口(PCIe、Uart等)将其存储到主机中的DDR中。
当在ASIC或者FPGA平台上开始测试验证任务时,验证程序首先生成一组参数,准备好必要的数据后发起一次任务提交到被测模块,之后开始检测任务完成状态,一旦使能Module后,对应的Monitor也将会被触发,Monitor中的Save Module将不断探测Module中显示任务完成的信号,当任务正常完成时,Save Module在探测到Module中任务完成的信号后,将预先定义的关键信息(状态信息)暂存在自身空间中,之后再启动DMA将暂存的信息发送到DDR中(可以是SoC内部DDR/RAM,也可以是通过通信接口连接的外部DDR),保存的动作可以是Save Module触发DMA完成,也可以是验证软件检测到某个状态触发DMA完成,之后重复同样的动作,直到测试完成。当验证出现异常时,Save Module探测不到Module的任务完成信号,因此也就不会完成暂存,同样也就不会触发DMA保存状态信息,验证程序保存本次测试过程中的参数及数据,由于本次硬件状态信息没有被暂存,因此此时保存在DDR中的状态信息是上次正常完成任务结束时的硬件状态信息。当验证框架拿到本次测试发送的请求信息以及上次正常完成任务结束的硬件状态信息,就可以方便地在Simulation仿真软件中重现异常现场,这样就将Simulation仿真与ASIC或FPGA平台的优势充分结合起来,发挥ASIC或FPGA平台快和Simulation平台全的特点。整体验证流程中如芯片无异常,那么完成一次回归验证,在此过程,每次都用本轮状态数据覆盖上轮状态数据,保证所使用的DDR空间尽可能少,当芯片某一次出现异常时,则只保存本轮任务的详细信息到DDR中,硬件状态信息并不被保存到DDR中,结束ASIC或FPGA的验证。
其中,保存硬件状态信息遵循一定的标准,状态信息中首先有一组Magic Number,硬件根据Magic Number判定当前的信息是否是有效的硬件状态,不同的硬件模块可以选择不同的Magic Number,这样可以保证不同硬件模块不会错误的使用硬件状态信息,防止恢复硬件状态操作本身出错;接着是一组Header Info,是一组记录状态信息的元信息,比如本状态信息是否需要恢复到硬件模块中或者本次需要恢复的硬件状态信息有多少字节;再往下是具体的硬件信息,不同硬件模块根据实现的功能不同,所保存的硬件状态信息会有差别,包括但不限于FIFO状态、状态机状态、总线状态等;接着是一组padding,主要是为方便计算CRC(循环冗余校验)校验码;最后是CRC校验码。
通过本发明的技术方案,能够解决ASIC平台长时间压力测试或者随机测试过程中出现的问题,能够减少对ASIC debug手段以及Trace工具的依赖,能够快速定位芯片验证测试过程中的问题。
在本发明的一个优选实施例中,运行待测试的芯片,并实时检测芯片的运行状态包括:
响应于在ASIC上开始测试任务,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片;
运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
在本发明的一个优选实施例中,响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储包括:
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息存进行暂存;
启动DMA将暂存的状态信息发送到DDR中。
在本发明的一个优选实施例中,将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真包括:
将芯片的状态信息和硬件状态信息发送到Simulation仿真软件;
基于硬件状态信息将芯片的状态进行恢复并判断是否恢复成功;
响应于芯片的状态恢复成功,使能芯片并使用Simulation仿真软件进行仿真以得到仿真结果;
仿真软件拿到ASIC或FPGA平台保存的硬件状态信息数据以及任务信息和芯片状态信息后,仿真环境首先根据任务信息创建一次任务请求,并发送请求到硬件模块以及Monitor,Monitor收到任务请求后,校验硬件状态信息有效后根据保存的硬件状态恢复硬件,之后仿真环境使能硬件模块完成仿真过程,如校验无效,则报错并结束仿真,验证人员根据仿真结果分析并解决问题。
本发明使用探针模块记录芯片运行的中间状态,用来解决ASIC或FPGA平台长时间压力测试或者随机测试过程中出现的问题,减少了对ASIC或FPGA debug手段以及Trace工具的依赖,通过保存的硬件模块信息数据搭建了ASIC或FPGA与Simulation平台联合验证的桥梁,可以快速高效定位问题。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
此外,根据本发明实施例公开的方法还可以被实现为由CPU执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被CPU执行时,执行本发明实施例公开的方法中限定的上述功能。
基于上述目的,本发明的实施例的第二个方面,提出了一种芯片验证的装置,如图3所示,装置200包括:
检测模块,检测模块配置为运行待测试的芯片,并实时检测芯片的运行状态;
探针模块,探针模块配置为响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;
存储模块,存储模块配置为将芯片的硬件状态信息进行存储;
仿真模块,仿真模块配置为将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。
在本发明的一个优选实施例中,检测模块还配置为:
响应于在ASIC上开始测试任务,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片;
运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
在本发明的一个优选实施例中,探针模块还配置为:
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息存进行暂存;
启动DMA将暂存的状态信息发送到DDR中。
在本发明的一个优选实施例中,仿真模块还配置为:
将芯片的状态信息和硬件状态信息发送到Simulation仿真软件;
基于硬件状态信息将芯片的状态进行恢复并判断是否恢复成功;
响应于芯片的状态恢复成功,使能芯片并使用Simulation仿真软件进行仿真以得到仿真结果;
基于仿真结果进行分析。
基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备。图4示出的是本发明提供的计算机设备的实施例的示意图。如图4所示,本发明实施例包括如下装置:至少一个处理器21;以及存储器22,存储器22存储有可在处理器上运行的计算机指令23,指令由处理器执行时实现以下方法:
运行待测试的芯片,并实时检测芯片的运行状态;
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;
将芯片的硬件状态信息进行存储;
将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。
在本发明的一个优选实施例中,运行待测试的芯片,并实时检测芯片的运行状态包括:
响应于在ASIC上开始测试任务,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片;
运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
在本发明的一个优选实施例中,响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储包括:
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息存进行暂存;
启动DMA将暂存的状态信息发送到DDR中。
在本发明的一个优选实施例中,将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真包括:
将芯片的状态信息和硬件状态信息发送到Simulation仿真软件;
基于硬件状态信息将芯片的状态进行恢复并判断是否恢复成功;
响应于芯片的状态恢复成功,使能芯片并使用Simulation仿真软件进行仿真以得到仿真结果;
基于仿真结果进行分析。
基于上述目的,本发明实施例的第四个方面,提出了一种计算机可读存储介质。图5示出的是本发明提供的计算机可读存储介质的实施例的示意图。如图5所示,计算机可读存储介质31存储有被处理器执行时执行如下方法的计算机程序32:
运行待测试的芯片,并实时检测芯片的运行状态;
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;
将芯片的硬件状态信息进行存储;
将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。
在本发明的一个优选实施例中,运行待测试的芯片,并实时检测芯片的运行状态包括:
响应于在ASIC上开始测试任务,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片;
运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
在本发明的一个优选实施例中,响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储包括:
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息存进行暂存;
启动DMA将暂存的状态信息发送到DDR中。
在本发明的一个优选实施例中,将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真包括:
将芯片的状态信息和硬件状态信息发送到Simulation仿真软件;
基于硬件状态信息将芯片的状态进行恢复并判断是否恢复成功;
响应于芯片的状态恢复成功,使能芯片并使用Simulation仿真软件进行仿真以得到仿真结果;
基于仿真结果进行分析。
此外,根据本发明实施例公开的方法还可以被实现为由处理器执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被处理器执行时,执行本发明实施例公开的方法中限定的上述功能。
此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
在一个或多个示例性设计中,功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则可以将功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(DSL)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、DSL或诸如红外线、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种芯片验证的方法,其特征在于,包括以下步骤:
运行待测试的芯片,并实时检测芯片的运行状态;
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;
将芯片的硬件状态信息进行存储;
将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。
2.根据权利要求1所述的方法,其特征在于,运行待测试的芯片,并实时检测芯片的运行状态包括:
响应于在ASIC上开始测试任务,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片;
运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
3.根据权利要求1所述的方法,其特征在于,响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储包括:
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息存进行暂存;
启动DMA将暂存的状态信息发送到DDR中。
4.根据权利要求1所述的方法,其特征在于,将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真包括:
将芯片的状态信息和硬件状态信息发送到Simulation仿真软件;
基于硬件状态信息将芯片的状态进行恢复并判断是否恢复成功;
响应于芯片的状态恢复成功,使能芯片并使用Simulation仿真软件进行仿真以得到仿真结果;
基于仿真结果进行分析。
5.一种芯片验证的装置,其特征在于,所述装置包括:
检测模块,所述检测模块配置为运行待测试的芯片,并实时检测芯片的运行状态;
探针模块,所述探针模块配置为响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息进行存储;
存储模块,所述存储模块配置为将芯片的硬件状态信息进行存储;
仿真模块,所述仿真模块配置为将芯片的状态信息和硬件状态信息发送到仿真软件中进行仿真。
6.根据权利要求5所述的装置,其特征在于,所述检测模块还配置为:
响应于在ASIC上开始测试任务,生成一组测试参数并将测试参数和测试中需要的数据发送到待测试芯片;
运行待测试芯片,并实时检测芯片运行测试任务的完成信号。
7.根据权利要求5所述的装置,其特征在于,所述探针模块还配置为:
响应于检测到芯片发出测试任务完成的信号,将预定义的芯片的状态信息存进行暂存;
启动DMA将暂存的状态信息发送到DDR中。
8.根据权利要求5所述的装置,其特征在于,所述仿真模块还配置为:
将芯片的状态信息和硬件状态信息发送到Simulation仿真软件;
基于硬件状态信息将芯片的状态进行恢复并判断是否恢复成功;
响应于芯片的状态恢复成功,使能芯片并使用Simulation仿真软件进行仿真以得到仿真结果;
基于仿真结果进行分析。
9.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-4任意一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-4任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111429262.6A CN114116351A (zh) | 2021-11-29 | 2021-11-29 | 一种芯片验证的方法、装置、设备及可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111429262.6A CN114116351A (zh) | 2021-11-29 | 2021-11-29 | 一种芯片验证的方法、装置、设备及可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114116351A true CN114116351A (zh) | 2022-03-01 |
Family
ID=80370853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111429262.6A Pending CN114116351A (zh) | 2021-11-29 | 2021-11-29 | 一种芯片验证的方法、装置、设备及可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114116351A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117439583A (zh) * | 2023-12-14 | 2024-01-23 | 苏州萨沙迈半导体有限公司 | 信号比较系统、芯片及车辆 |
-
2021
- 2021-11-29 CN CN202111429262.6A patent/CN114116351A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117439583A (zh) * | 2023-12-14 | 2024-01-23 | 苏州萨沙迈半导体有限公司 | 信号比较系统、芯片及车辆 |
CN117439583B (zh) * | 2023-12-14 | 2024-02-23 | 苏州萨沙迈半导体有限公司 | 信号比较系统、芯片及车辆 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110221983B (zh) | 测试方法、装置、计算机可读存储介质和计算机设备 | |
CN110992992A (zh) | 一种硬盘测试方法、设备以及存储介质 | |
CN108628734B (zh) | 一种功能程序调试方法和终端 | |
CN105487966A (zh) | 程序测试方法、装置及系统 | |
EP3276493A1 (en) | Method and system for debugging automotive applications in an electronic control unit of an automobile | |
CN108874441B (zh) | 一种板卡配置方法、装置、服务器和存储介质 | |
CN114116351A (zh) | 一种芯片验证的方法、装置、设备及可读介质 | |
WO2021047184A1 (zh) | 系统故障分析处理方法、装置、存储介质及电子设备 | |
CN110941520B (zh) | 基于二取二安全控制单元的硬件功能测试系统及方法 | |
CN108595332B (zh) | 软件测试方法及装置 | |
US20120110383A1 (en) | Method and apparatus for off-line analyzing crashed programs | |
US8533544B2 (en) | System for tree sequence testing of a device and method for tree sequence testing of a device in a test framework architecture | |
CN114115168A (zh) | 故障注入测试系统 | |
CN112114220A (zh) | 故障检测方法、装置 | |
CN114546823B (zh) | 用于重现逻辑系统设计的调试场景的方法及相关设备 | |
US9857423B2 (en) | Debugging circuit, debugger device, and debugging method | |
CN114756463A (zh) | 一种测试环境开发方法、系统、设备以及介质 | |
CN109491846B (zh) | 一种用于服务器抓取SATA硬盘trace的方法和系统 | |
CN114496053A (zh) | 数据异常检测方法、装置、设备及计算机可读存储介质 | |
CN112363875A (zh) | 一种系统缺陷检测方法、设备、电子设备和存储介质 | |
CN114461479A (zh) | 调试多媒体处理芯片的方法、装置、存储介质和电子设备 | |
JP2007328447A (ja) | ソフトウェア試験項目選択装置、ソフトウェア試験項目選択プログラム、ソフトウェア試験項目選択プログラムが格納された記憶媒体およびソフトウェア試験項目選択方法 | |
JP2004101203A (ja) | ロジックlsiの不良解析システム及び不良解析方法 | |
CN113886165B (zh) | 一种固件诊断功能的验证方法、装置、设备及可读介质 | |
CN117910401B (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 |