CN104516992B - 一种验证方法及装置 - Google Patents
一种验证方法及装置 Download PDFInfo
- Publication number
- CN104516992B CN104516992B CN201310450585.2A CN201310450585A CN104516992B CN 104516992 B CN104516992 B CN 104516992B CN 201310450585 A CN201310450585 A CN 201310450585A CN 104516992 B CN104516992 B CN 104516992B
- Authority
- CN
- China
- Prior art keywords
- signal
- module
- submodule
- reconstruction
- subsignal
- 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
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种验证方法,包括:通过第一验证代码向SoC输入第一激励信号,所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形;当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC;根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形。相应地,本发明实施例还公开一种验证装置。本发明实施例可以提高验证效率。
Description
技术领域
本发明涉及通信领域,尤其涉及一种验证方法及装置。
背景技术
仿真目前在研发领域中应用十分广泛,例如:在电子设计自动化(ElectronicDesign Automation,EDA)仿真调试在电学和通信领域中得到广泛应用,很多发明设计都需要经过EDA仿真。其中,EDA仿真中是需要重复多次通过验证代码片上系统(Systemona ChipSoC)。而在实际应用中,一项设计中的SoC都是非常大的,有些甚至需要占用几十G的硬盘空间,验证过程中也需要占用好几十G的内存,且每验证一次都是需要很长时时间可以完成。可见,这样在重复验证通过验证代码验证SoC,或者通过不同的验证代码验证SoC过程中,消耗的时间是非常长的,且占用仿真设备的资源也是非常大的。综上所述,目前的验证方法的验证效率比较低。
发明内容
本发明实施例提供了一种验证方法及装置,可以提高验证效率。
第一方面,本发明实施例提供一种验证方法,包括:
通过第一验证代码向SoC输入第一激励信号,所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形;
当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC;
根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;
通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
在第一方面的第一种可能的实现方式中,所述SoC包括至少包括第一模块和第二模块;
所述通过第一验证代码向片上系统输入第一激励信号,所述片上系统对所述第一激励信号进行仿真运算,以得到所述片上系统输出的信号的第一信号图形,包括:
通过所述第一验证代码向片上系统的第一模块输入第一子激励信号,所述第一模块对所述第一子激励信号进行第一仿真运算,以得到所述第一模块输出的信号的第一子信号图形;
通过所述第一验证代码向片上系统的第二模块输入第二子激励信号,所述第二模块对所述第二子激励信号进行第二仿真运算,以得到所述第二模块输出的信号的第二子信号图形;
所述根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建片上系统,包括:
根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块;
根据所述第二子信号图形生成用于将所述第二子激励信号赋值为所述第二子信号图形的第二重建模块。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述第一模块包括至少一个子模块;所述根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块,包括:
根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,包括:
保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称,使得所述片上系统包括的子模块的模块名称不重复;
根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,其中,所述重建子模块的模块名称为该重建子模块对应的子模块的模块名称,该重建子模块的子模块名称为该重建子模块对应的子模块的子模块名称。
结合第一方面,在第一方面的第四种可能的实现方式中,所述根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC,包括:
根据所述第一信号图形通过过程语句生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC。
第二方面,本发明实施例提供一种验证设备,包括:第一验证单元、生成单元、修改单元和第二验证单元,其中:
所述第一验证单元,用于通过第一验证代码向SoC输入第一激励信号,控制所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形;
所述生成单元,用于当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC;
所述修改单元,用于根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;
所述第二验证单元,用于通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
在第二方面的第一种可能的实现方式中,所述SoC至少包括第一模块和第二模块;
所述第一验证单元还用于通过所述第一验证代码向片上系统的第一模块输入第一子激励信号,所述第一模块对所述第一子激励信号进行第一仿真运算,以得到所述第一模块输出的信号的第一子信号图形;以及通过所述第一验证代码向片上系统的第二模块输入第二子激励信号,所述第二模块对所述第二子激励信号进行第二仿真运算,以得到所述第二模块输出的信号的第二子信号图形;
所述生成单元还用于根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块;以及根据所述第二子信号图形生成用于将所述第二子激励信号赋值为所述第二子信号图形的第二重建模块。
结合第二方面的第一种可能的实现方式,所述第一模块包括至少一个子模块;所述生成单元还用于根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述生成单元包括:
分配单元,用于保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称,使得所述片上系统包括的子模块的模块名称不重复;
生成子单元,用于根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,其中,所述重建子模块的模块名称为该重建子模块对应的子模块的模块名称,该重建子模块的子模块名称为该重建子模块对应的子模块的子模块名称。
结合第二方面,在第二方面的第四种可能的实现方式中,所述生成单元还用于根据所述第一信号图形通过过程语句生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC。
上述技术方案中,通过第一验证代码向SoC输入第一激励信号,所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形;当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC;根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。而重建SoC都是采用赋值实现,都是一些赋值语句,相比现有技术运行SoC进行仿真运算,本发明实施例可以提高验证效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术赋值中所需要使用的附图作简单地介绍,显而易见地,下面赋值中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种仿真方法的流程示意图;
图2是本发明实施例提供的另一种仿真方法的流程示意图;
图3是本发明实施例提供的举例仿真结果示意图;
图4是本发明实施例提供的一种仿真装置的结构示意图;
图5是本发明实施例提供的另一种仿真装置的结构示意图;
图6是本发明实施例提供的另一种仿真装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地赋值,显然,所赋值的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中SoC具体可以是通信或者电子领域中任何SoC,该SoC具体可以是某一芯片上集成的一个完整的系统,具体可以是通过特定的设计代码实现该SoC。另外,本发明实施例第一激励信号和第二激励信号具体可以是时钟信号、复位信号和数据等,本发明实施例对此不作限定。
图1是本发明实施例提供的一种验证方法的流程示意图,如图1所示,包括以下步骤:
101、通过第一验证代码向SoC输入第一激励信号,所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形。
具体可以是在某一个设备时同时运行上述第一验证代码和上述SoC,运行后SoC就可以接收到上述第一激励信号,从而完成对第一激励信号的仿真运算,以输出上述信号,其中,上述第一信号图形具体可以是验证代码采用采集SoC输出的信号而生成的信号图形,该信号图形具体可以是信号波形或者图标(log)。
102、当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC。
具体可以是获取到上述第一信号图形后,将该第一信号图形与预先获取的信号图形进行对比,当当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC。具体可以是验证代码采集到上述第一信号图形后,将该第一信号图形与预先获取的信号图形进行对比。其中,上述预先获取的信号图形具体可以是通过用户操作获取的信号图形,该信号图形表示SoC和验证代码都正确时,SoC输出的信号图形。
可选的,上述赋值重建SoC具体可以是将上述第一激励信号直接赋值为上述第一信号图形,上述重建SoC具体可以是应用于某一芯片的完整的赋值系统,即该系统接收到一个特定的激励信号,就可以输出一个特定信号图形,例如,接收到上述第一激励信号就可以直接输出上述第一信号图形。这样就可以将现有技术或者步骤101中的仿真运算过程替换为赋值过程,由于赋值是不需要运算,或者说赋值过程所消耗的功耗或者时间远远小于仿真运算过程。
其中,步骤102具体可以采用过程语句生成上述重建SoC,即步骤102具体可以包括:
根据所述第一信号图形通过过程语句生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC。
103、根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码。
可选的,该修改具体可以是通过用户的操作修改所述第一验证代码,以得到第二验证代码,例如:显示上述第一信号图像与所述预先获取的信号图形,用户根据这两个图像的差别输入操作,或者显示第一信号图像与所述预先获取的信号图形的差别,用户看到该差别后就可以输入操作;还可以自动根据上述差别修改所述第一验证代码,以得到第二验证代码,例如:预先设置好上述差别与修改的对应关系,这样步骤103就可以根据该差别直接修改所述第一验证代码,以得到第二验证代码。。
104、通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
上述重建SoC接收到上述第二激励信号后,就可以将第二激励信号直接赋值为上述第二信号图形。由到上述重建SoC是不变的,这样该重建征上系统如何到不同的激励信号时,就可以输出不同的信号图形。
需要说明的,步骤103和步骤104可以是多次执行,但每次执行的第二验证代码可以是经过修改后的,也可以是未经过修改的,这样执行多次步骤103和步骤104可以是使上述第二信号图形更加与预先获取的信号图形一致,即验证代码更加正确。
可选的,所述方法可以应用于任何具备仿真代码的设备,即该设备可以实现上述方法。例如:服务器、个人计算机(Personal Computer,PC)、笔记本电脑、车载设备。
上述技术方案中,通过第一验证代码向SoC输入第一激励信号,所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形;当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC;根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。而重建SoC都是采用赋值实现,都是一些赋值语句,相比现有技术运行SoC进行仿真运算,本发明实施例可以提高验证效率。
图2是本发明实施例提供的另一种仿真方法的流程示意图,如图2所示,包括以下步骤:
201、通过所述第一验证代码向SoC的各个模块输入第一激励信号,各个模块对该模块接收到第一激励信号进行仿真运算,以得到该模块输出的信号的第一信号图形。
可选的,向各个模块输入的第一激励信号可以是不同的激励信号也可以是相同的激励信号,本实施例对此不作限定。各个模块接收到第一激励信号后对可以对该第一激励信号进行仿真运算并输出信号。其中,上述模块具体可以是能够完成一定功能的虚拟模块(例如:一段代码),例如,某一个模块为对输入信号进行放大功能的虚拟模块,或者另一模块为对输入信号进行振荡放大功能的虚拟模块等,本实施例对此不作限定。
202、当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据每个模块输出的信号的第一信号图形生成用于将该模块接收第一激励信号赋值该第一信号图形的重建模块,以得到重建SoC。
即上述重建SoC包括多个重建模块。
可以理解为,为每个模块的生成一个重建模块,即重建模块的名称可以采用模块的名称,且每个重建模块所赋值的信号图形的名称保持不变,重建模块输出的信号图片的名字与获取该重建模块上述SoC的模块名相同。
作为一种可选的实施方式,所述SoC至少可以包括第一模块和第二模块,其中,该第一模块和第二模块仅是为了更清楚介绍本技术方案,第一模块和第二模块并不表示在SoC中的位置或者顺序等,第一模块和第二模块可以是SoC中任两个模块;步骤201具体可以包括:
通过所述第一验证代码向片上系统的第一模块输入第一子激励信号,所述第一模块对所述第一子激励信号进行第一仿真运算,以得到所述第一模块输出的信号的第一子信号图形;
通过所述第一验证代码向片上系统的第二模块输入第二子激励信号,所述第二模块对所述第二子激励信号进行第二仿真运算,以得到所述第二模块输出的信号的第二子信号图形。
其中,上述第一子激励信号和第二子激励信号可以是两个相同的激励信号也可以是两个不同的激励信号。其中,上述第一仿真运算和第二仿真运算可以是两个不同的仿真运算,即第一模块和第二模块是两个不同功能的模块。
当然,若上述SoC还包括第三模块,那么步骤201还可以包括:
通过所述第一验证代码向片上系统的第三模块输入第三子激励信号,所述第二模块对所述第三子激励信号进行第三仿真运算,以得到所述第三模块输出的信号的第三子信号图形。
参考该实施方式,当上述SoC还包括第四模块和第五模块等模块,都可以参考上述实现方式,此处不作重复说明。
可选的,步骤202还可以包括:
当所述第一子信号图形与预先获取的第一信号图形的相似度小于相似度阈值,和/或所述第二子信号图形与预先获取的第二信号图形的相似度小于相似度阈值时,根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块;根据所述第二子信号图形生成用于将所述第二子激励信号赋值为所述第二子信号图形的第二重建模块。
通过上述步骤就可以实现为每个模块重建一个重建模块。同理,当上述SoC还包括第三模块、第四模块等模块时,通过上述实施方式同样可以重建这些模块的重建模块,此处不作详细说明。
可选的,上述SoC包括所有的模块都可以包括至少一个子模块,其中,本实施例中的子模块是指可以单独完成某一功能的实例,且不同的子模块可以完成不同或者相同的仿真运算。例如,一个模块为一个表示多级放大电路的虚拟模块,那么该模块就可以包括多个子模块(即,实例),每个子模块可以是一级虚拟的放大电路。另外,如果某一个模块只包括一个子模块那么,该子模块就等同于该模块。例如:上述第一模块包括至少一个子模块时,上述根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块的步骤就可以包括:
根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块。
例如:第一模块包括第一子模块和第二子模块,那么上述根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块步骤就可以包括:
根据第一子模块输出的信号的第一子信号图形生成用于将第一子模块接收第一子激励信号赋值为该第一子信号图形的第一重建子模块;
根据第二子模块输出的信号的第一子信号图形生成用于将第二子模块接收第一子激励信号赋值为该第一子信号图形的第二重建子模块。
同理,可以重建上述SoC包括的其它模块包括的子模块的重建子模块。
另外,在步骤201中的验证代码可以是为每个子模块输入一个第一子激励信号,且每个子模块输入的第一子激励信号可以是相同或者不同激励信号。上述根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块的步骤具体可以包括:
保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称,使得所述片上系统包括的子模块的模块名称不重复;
根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,其中,所述重建子模块的模块名称为该重建子模块对应的子模块的模块名称,该重建子模块的子模块名称为该重建子模块对应的子模块的子模块名称。
需要说明的是,上述保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称的步骤在本实施例中只需要执行一次,例如:为上述第一模块的子模块重建时执行该步骤,那么在为上述第二模块或者其它模块的子模块重建时,就不需要执行该步骤。同理,上述第二模块或者其它模块的子模块重建可以参考第一模块的子模块的重建过程。
可选的,具体可以是将SoC中除最顶层模块之外的所有模块包括的子模块的模块名称都修改,例如:修改为一个序列的名称,如,M1、M2、M3、M4和M5。这样在生成每个重建子模块的模块名称就不全出现重复。当然还可以为SoC包括的模块名称重复的子模块分配模块名称,例如:同一个模块下包括两个子模块,那么这两个子模块的模块名称就相同,即为这两个子模块分配模块名称,从而得这两个子模块对应的重建子模块的模块名称不重复。当然如果SoC包括的子模块不存在重复的模块名称,这样本实施例就可以不执行上述步骤。
通过上述步骤可以为即为每个子模块(即实例)生成一个重建子模块,这样通过第二验证代码进行验证时,每个重建子模块可以是输出一个第二信号图形。
可选的,上述重建SoC(例如包括多个重建模块或者包括多个重建子模块)可以是采用与上述SoC相同的硬件描述语言,这样就不需要额外的工具实现仿真。
203、根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码。
204、通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
上述技术方案中,在上面实施例的基础上实现了多种可选的实施方式,且都可以实现提高验证效率。
下面以一个具体的实例进行举例说明:
SoC的代码dut.v如下:
a1:assert property(p1(.in(top.u_dff1.q),.clk(top.clk)));
a2:assert property(p1(.in(top.u_dff2.q),.clk(top.clk)));
endmodule
其中,SoC包括模块dff、模块counter和最顶层模块top,验证代码包括模块sva
其中,第一信号图形如图3所示,第一行301表示最顶层模块top的第一信号图形,第二行302表示模块dff的第一信号图形,第三行303表示模块counter的第一信号图形。
步骤203根据上述第一信号图形就可以生成如下重建SoC:
dut_new.sv
module M1();
reg[4:0]q;
initial begin
force q=’b00000;
#50ns force q=5’b00001;
#50ns force q=5’b00010;
#50ns force q=5’b00011;
#50ns force q=5’b00100;
end
endmodule
module M2();
reg[4:0]q;
initial begin
force q=5’b0000;
#30ns force q=5’b00011;
#20ns force q=5’b00100;
#20ns force q=5’b00101;
#20ns force q=5’b00110;
#20ns force q=5’b00111;
end
endmodule
module top();
reg clk;
M1 u_dff1();
M2 u_dff2();
sva u_sva();
initial begin
force clk=1’b0;
#10ns force clk=1’b1;
#10ns force clk=1’b0;
#10ns force clk=1’b1;
#10ns force clk=1’b0;
#10ns force clk=1’b1;
#10ns force clk=1’b0;
#10ns force clk=1’b1;
#10ns force clk=1’b0;
#10ns force clk=1’b1;
#10ns force clk=1’b0;
#10ns force clk=1’b1;
#10ns force clk=1’b0;
end
endmodule
其中,步骤202将模块名称dff修改为M1,将模块名称counter修改为M2,保持模块名称top不变。当通过上述第一验证代码输入上述第一激励信号时,该重建SoC的输出第一信号图形与图3所示的第一信号图形一致。
步骤204修改后的第二验证代码可以如下:
module sva;
property p1(clk,in);
@(posedge clk)in!=3;
endproperty
即步骤204将property p1中in的取值需要从不等于5改为不等于3。
下面为本发明装置实施例,本发明装置实施例用于执行本发明方法实施例一至二实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例一和实施例二。
图4是本发明实施例提供的一种验证装置的结构示意图,如图4所示,包括:第一验证单元41、生成单元42、修改单元43和第二验证单元44,其中:
第一验证单元41,用于通过第一验证代码向SoC输入第一激励信号,控制所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形。
具体可以是在某一个设备时同时运行上述第一验证代码和上述SoC,运行后SoC就可以接收到上述第一激励信号,从而完成对第一激励信号的仿真运算,以输出上述信号,其中,上述第一信号图形具体可以是验证代码采用采集SoC输出的信号而生成的信号图形,该信号图形具体可以是信号波形或者图标(log)。
生成单元42,用于当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC。
具体可以是获取到上述第一信号图形后,将该第一信号图形与预先获取的信号图形进行对比,当当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC。具体可以是验证代码采集到上述第一信号图形后,将该第一信号图形与预先获取的信号图形进行对比。其中,上述预先获取的信号图形具体可以是通过用户操作获取的信号图形,该信号图形表示SoC和验证代码都正确时,SoC输出的信号图形。
其中,生成单元42具体可以采用过程语句生成上述重建SoC,即生成单元42具体可以用于根据所述第一信号图形通过过程语句生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC。
修改单元43,用于根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;
第二验证单元44,用于通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值
在另一个实施例中,第一验证单元41具体还可以用于通过所述第一验证代码向SoC的各个模块输入第一激励信号,各个模块对该模块接收到第一激励信号进行仿真运算,以得到该模块输出的信号的第一信号图形。
可选的,向各个模块输入的第一激励信号可以是不同的激励信号也可以是相同的激励信号,本实施例对此不作限定。各个模块接收到第一激励信号后对可以对该第一激励信号进行仿真运算并输出信号。其中,上述模块具体可以是能够完成一定功能的虚拟模块(例如:一段代码),例如,某一个模块为对输入信号进行放大功能的虚拟模块,或者另一模块为对输入信号进行振荡放大功能的虚拟模块等,本实施例对此不作限定。
可选的,生成单元42具体还可以用于当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据每个模块输出的信号的第一信号图形生成用于将该模块接收第一激励信号赋值该第一信号图形的重建模块,以得到重建SoC。
可以理解为,为每个模块的生成一个重建模块,即重建模块的名称可以采用模块的名称,且每个重建模块所赋值的信号图形的名称保持不变,重建模块输出的信号图片的名字与获取该重建模块上述SoC的模块名相同。
可选的,上述SoC至少包括第一模块和第二模块;
第一验证单元41还可以用于通过所述第一验证代码向片上系统的第一模块输入第一子激励信号,所述第一模块对所述第一子激励信号进行第一仿真运算,以得到所述第一模块输出的信号的第一子信号图形;以及通过所述第一验证代码向片上系统的第二模块输入第二子激励信号,所述第二模块对所述第二子激励信号进行第二仿真运算,以得到所述第二模块输出的信号的第二子信号图形;
生成单元42还可以用于当所述第一子信号图形与预先获取的第一信号图形的相似度小于相似度阈值,和/或所述第二子信号图形与预先获取的第二信号图形的相似度小于相似度阈值时,根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块;以及根据所述第二子信号图形生成用于将所述第二子激励信号赋值为所述第二子信号图形的第二重建模块。
可选的,上述SoC包括所有的模块都可以包括至少一个子模块,其中,本实施例中的子模块是指可以单独完成某一功能的实例,且不同的子模块可以完成不同或者相同的仿真运算。例如,一个模块为一个表示多级放大电路的虚拟模块,那么该模块就可以包括多个子模块(即,实例),每个子模块可以是一级虚拟的放大电路。另外,如果某一个模块只包括一个子模块那么,该子模块就等同于该模块。例如,生成单元42生成第一模块的重建模块时,生成单元42可以是根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块。
例如:第一模块包括第一子模块和第二子模块,那么生成单元42还可以用于根据第一子模块输出的信号的第一子信号图形生成用于将第一子模块接收第一子激励信号赋值为该第一子信号图形的第一重建子模块;以及根据第二子模块输出的信号的第一子信号图形生成用于将第二子模块接收第一子激励信号赋值为该第一子信号图形的第二重建子模块。
同理,可以重建上述SoC包括的其它模块包括的子模块的重建子模块
可选的,如图5所示,所述生成单元41还可以包括:
分配单元411,用于保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称,使得所述片上系统包括的子模块的模块名称不重复;
生成子单元412,用于根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,其中,所述重建子模块的模块名称为该重建子模块对应的子模块的模块名称,该重建子模块的子模块名称为该重建子模块对应的子模块的子模块名称。
需要说明的是,上述分配单元411保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称的操作在本实施例中只需要执行一次,例如:生成子单元412为上述第一模块的子模块重建时上述分配单元411执行该操作,那么生成子单元412为上述第二模块或者其它模块的子模块重建时,就分配单元411不需要执行该操作。同理,生成子单元412为上述第二模块或者其它模块的子模块重建可以参考第一模块的子模块的重建过程。
可选的,分配单元411具体可以是将SoC中除最顶层模块之外的所有模块包括的子模块的模块名称都修改,例如:修改为一个序列的名称,如,M1、M2、M3、M4和M5。这样在生成每个重建子模块的模块名称就不全出现重复。当然还可以为SoC包括的模块名称重复的子模块分配模块名称,例如:同一个模块下包括两个子模块,那么这两个子模块的模块名称就相同,即为这两个子模块分配模块名称,从而得这两个子模块对应的重建子模块的模块名称不重复。当然如果SoC包括的子模块不存在重复的模块名称,这样本实施例就可以不执行上述步骤。
可选的,上述重建SoC(例如包括多个重建模块或者包括多个重建子模块)可以是采用与上述SoC相同的硬件描述语言,这样就不需要额外的工具实现仿真。
可选的,所述装置可以应用于任何具备仿真代码的设备,例如:服务器、PC、笔记本电脑、车载设备。
上述技术方案中,通过第一验证代码向SoC输入第一激励信号,所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形;当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC;根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。而重建SoC都是采用赋值实现,都是一些赋值语句,相比现有技术运行SoC进行仿真运算,本发明实施例可以提高验证效率。
图6是本发明实施例提供的另一种验证装置的结构示意图,如图6所示,包括:存储器61和显示器62,以及分别与存储器61和显示器62连接的处理器63,其中,所述存储器61用于存储一组程序代码,处理器63用于调用存储器61存储的程序执行如下操作:
通过第一验证代码向SoC输入第一激励信号,所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形;
当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC;
根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;
通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
在另一个实施例中,处理器63还可以用于执行如下操作:
通过所述第一验证代码向SoC的各个模块输入第一激励信号,各个模块对该模块接收到第一激励信号进行仿真运算,以得到该模块输出的信号的第一信号图形;
当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据每个模块输出的信号的第一信号图形生成用于将该模块接收第一激励信号赋值该第一信号图形的重建模块,以得到重建SoC;
根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;
通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
作为一种可选的实施方式,所述SoC至少可以包括第一模块和第二模块,其中,该第一模块和第二模块仅是为了更清楚介绍本技术方案,第一模块和第二模块并不表示在SoC中的位置或者顺序等,第一模块和第二模块可以是SoC中任一两个模块。处理器63执行通过所述第一验证代码向SoC的各个模块输入第一激励信号,各个模块对该模块接收到第一激励信号进行仿真运算,以得到该模块输出的信号的第一信号图形的操作可以包括:
通过所述第一验证代码向片上系统的第一模块输入第一子激励信号,所述第一模块对所述第一子激励信号进行第一仿真运算,以得到所述第一模块输出的信号的第一子信号图形;
通过所述第一验证代码向片上系统的第二模块输入第二子激励信号,所述第二模块对所述第二子激励信号进行第二仿真运算,以得到所述第二模块输出的信号的第二子信号图形。
处理器63执行当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据每个模块输出的信号的第一信号图形生成用于将该模块接收第一激励信号赋值该第一信号图形的重建模块的操作可以包括:
当所述第一子信号图形与预先获取的第一信号图形的相似度小于相似度阈值,和/或所述第二子信号图形与预先获取的第二信号图形的相似度小于相似度阈值时,根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块;根据所述第二子信号图形生成用于将所述第二子激励信号赋值为所述第二子信号图形的第二重建模块。
可选的,上述SoC包括所有的模块都可以包括至少一个子模块,其中,本实施例中的子模块是指可以单独完成某一功能的实例,且不同的子模块可以完成不同或者相同的仿真运算。例如:上述第一模块包括至少一个子模块时,处理器63执行的根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块的操作,可以包括:
根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块。
例如:第一模块包括第一子模块和第二子模块,那么处理器63执行的根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块的操作就可以包括:
根据第一子模块输出的信号的第一子信号图形生成用于将第一子模块接收第一子激励信号赋值为该第一子信号图形的第一重建子模块;
根据第二子模块输出的信号的第一子信号图形生成用于将第二子模块接收第一子激励信号赋值为该第一子信号图形的第二重建子模块。
同理,可以重建上述SoC包括的其它模块包括的子模块的重建子模块。
可选的,处理器63执行的根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块的操作就可以包括:
保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称,使得所述片上系统包括的子模块的模块名称不重复;
根据第一模块包括的每个子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,其中,所述重建子模块的模块名称为该重建子模块对应的子模块的模块名称,该重建子模块的子模块名称为该重建子模块对应的子模块的子模块名称。
需要说明的是,上述保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称的操作在本实施例中只需要执行一次,例如:处理器63为上述第一模块的子模块重建时执行该操作,那么处理器63在为上述第二模块或者其它模块的子模块重建时,就不需要执行该操作。同理,上述第二模块或者其它模块的子模块重建可以参考第一模块的子模块的重建过程。
上述技术方案中,通过第一验证代码向SoC输入第一激励信号,所述SoC对所述第一激励信号进行仿真运算,以得到所述SoC输出的信号的第一信号图形;当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建SoC;根据第一信号图像与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;通过第二验证代码向所述重建SoC输入第二激励信号,所述重建SoC对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。而重建SoC都是采用赋值实现,都是一些赋值语句,相比现有技术运行SoC进行仿真运算,本发明实施例可以提高验证效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (10)
1.一种验证方法,其特征在于,包括:
通过第一验证代码向片上系统输入第一激励信号,所述片上系统对所述第一激励信号进行仿真运算,以得到所述片上系统输出的信号的第一信号图形;
当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建片上系统;
根据第一信号图形与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;
通过第二验证代码向所述重建片上系统输入第二激励信号,所述重建片上系统对所述第二激励信号进行赋值处理,以得到第二信号图形,使所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
2.如权利要求1所述的方法,其特征在于,所述片上系统至少包括第一模块和第二模块;
所述通过第一验证代码向片上系统输入第一激励信号,所述片上系统对所述第一激励信号进行仿真运算,以得到所述片上系统输出的信号的第一信号图形,包括:
通过所述第一验证代码向片上系统的第一模块输入第一子激励信号,所述第一模块对所述第一子激励信号进行第一仿真运算,以得到所述第一模块输出的信号的第一子信号图形;
通过所述第一验证代码向片上系统的第二模块输入第二子激励信号,所述第二模块对所述第二子激励信号进行第二仿真运算,以得到所述第二模块输出的信号的第二子信号图形;
所述根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建片上系统,包括:
根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块;
根据所述第二子信号图形生成用于将所述第二子激励信号赋值为所述第二子信号图形的第二重建模块。
3.如权利要求2所述的方法,其特征在于,所述第一模块包括至少一个子模块;所述根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块,包括:
根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块。
4.如权利要求3所述的方法,其特征在于,所述根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,包括:
保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称,使得所述片上系统包括的子模块的模块名称不重复;
根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,其中,所述重建子模块的模块名称为该重建子模块对应的子模块的模块名称,该重建子模块的子模块名称为该重建子模块对应的子模块的子模块名称。
5.如权利要求1所述的方法,其特征在于,所述根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建片上系统,包括:
根据所述第一信号图形通过过程语句生成用于将所述第一激励信号赋值为所述第一信号图形的重建片上系统。
6.一种验证装置,其特征在于,包括:第一验证单元、生成单元、修改单元和第二验证单元,其中:
所述第一验证单元,用于通过第一验证代码向片上系统输入第一激励信号,控制所述片上系统对所述第一激励信号进行仿真运算,以得到所述片上系统输出的信号的第一信号图形;
所述生成单元,用于当所述第一信号图形与预先获取的信号图形的相似度小于相似度阈值时,根据所述第一信号图形生成用于将所述第一激励信号赋值为所述第一信号图形的重建片上系统;
所述修改单元,用于根据第一信号图形与所述预先获取的信号图形的差别,修改所述第一验证代码,以得到第二验证代码;
所述第二验证单元,用于通过第二验证代码向所述重建片上系统输入第二激励信号,所述重建片上系统对所述第二激励信号进行赋值处理,以得到第二信号图形,所述第二信号图形与所述预先获取的信号图形的相似度大于所述相似度阈值。
7.如权利要求6所述的装置,其特征在于,所述片上系统至少包括第一模块和第二模块;
所述第一验证单元还用于通过所述第一验证代码向片上系统的第一模块输入第一子激励信号,所述第一模块对所述第一子激励信号进行第一仿真运算,以得到所述第一模块输出的信号的第一子信号图形;以及通过所述第一验证代码向片上系统的第二模块输入第二子激励信号,所述第二模块对所述第二子激励信号进行第二仿真运算,以得到所述第二模块输出的信号的第二子信号图形;
所述生成单元还用于根据所述第一子信号图形生成用于将所述第一子激励信号赋值为所述第一子信号图形的第一重建模块;以及根据所述第二子信号图形生成用于将所述第二子激励信号赋值为所述第二子信号图形的第二重建模块。
8.如权利要求7所述的装置,其特征在于,所述第一模块包括至少一个子模块;所述生成单元还用于根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块。
9.如权利要求8所述的装置,其特征在于,所述生成单元包括:
分配单元,用于保持所述片上系统包括的最顶层模块的模块名称不变,并为所述片上系统包括除所述最顶层模块之外的所有模块包括的子模块中的至少一个子模块分配模块名称,使得所述片上系统包括的子模块的模块名称不重复;
生成子单元,用于根据每个所述子模块输出的信号的第一子信号图形生成用于将该子模块接收的第一子激励信号赋值为该第一子信号图形的重建子模块,其中,所述重建子模块的模块名称为该重建子模块对应的子模块的模块名称,该重建子模块的子模块名称为该重建子模块对应的子模块的子模块名称。
10.如权利要求6所述的装置,其特征在于,所述生成单元还用于根据所述第一信号图形通过过程语句生成用于将所述第一激励信号赋值为所述第一信号图形的重建片上系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310450585.2A CN104516992B (zh) | 2013-09-27 | 2013-09-27 | 一种验证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310450585.2A CN104516992B (zh) | 2013-09-27 | 2013-09-27 | 一种验证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104516992A CN104516992A (zh) | 2015-04-15 |
CN104516992B true CN104516992B (zh) | 2017-12-01 |
Family
ID=52792291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310450585.2A Active CN104516992B (zh) | 2013-09-27 | 2013-09-27 | 一种验证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104516992B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565292B (zh) * | 2020-12-22 | 2023-05-02 | 咪咕文化科技有限公司 | 验证码验证方法、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1324232A2 (en) * | 2001-12-27 | 2003-07-02 | Kabushiki Kaisha Toshiba | Lsi design verification apparatus, method and program |
CN101587166A (zh) * | 2009-06-26 | 2009-11-25 | 上海大学 | 片上系统中嵌入式逻辑芯核的故障测试系统 |
CN101923133A (zh) * | 2010-01-21 | 2010-12-22 | 上海大学 | 集成电路片上系统核间连线故障的测试系统和方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1981288A (zh) * | 2004-07-01 | 2007-06-13 | 富士通株式会社 | 验证支援装置、验证支援方法、验证支援程序以及记录介质 |
-
2013
- 2013-09-27 CN CN201310450585.2A patent/CN104516992B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1324232A2 (en) * | 2001-12-27 | 2003-07-02 | Kabushiki Kaisha Toshiba | Lsi design verification apparatus, method and program |
CN101587166A (zh) * | 2009-06-26 | 2009-11-25 | 上海大学 | 片上系统中嵌入式逻辑芯核的故障测试系统 |
CN101923133A (zh) * | 2010-01-21 | 2010-12-22 | 上海大学 | 集成电路片上系统核间连线故障的测试系统和方法 |
Non-Patent Citations (2)
Title |
---|
一种基于ARM7TDMI的用户可重构SoC构架研究;黄嵩人等;《电子器件》;20080630;第31卷(第3期);全文 * |
可重构技术综述;徐惠萍;《甘肃科技》;20071031;第23卷(第10期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104516992A (zh) | 2015-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8185368B2 (en) | Mixed-domain analog/RF simulation | |
CN114626324B (zh) | Fpga电路后仿真验证方法、装置、电子设备及存储介质 | |
US10846455B2 (en) | Automatic definition and extraction of functional coverage metric for emulation-based verification | |
CN107491581A (zh) | 一种对数字电路进行仿真验证的方法及时钟发生器 | |
CN110785761B (zh) | 存在时钟动态重编程时仿真时间线的压缩方法 | |
CN107197120B (zh) | 图像源兼容测试方法及系统 | |
CN109446097A (zh) | 一种回归测试用例选择方法、装置、终端及存储介质 | |
Dong et al. | Energy conservation, singular orbits, and FPGA implementation of two new Hamiltonian chaotic systems | |
CN103268272B (zh) | 基于场景的处理器系统级验证完备性度量方法 | |
CN104516992B (zh) | 一种验证方法及装置 | |
CN105447214A (zh) | 器件参数的确定方法和装置 | |
CN117574767A (zh) | 存内计算架构软硬件系统仿真方法和仿真器 | |
CN106844900B (zh) | 电磁暂态仿真系统的搭设方法 | |
KR102545621B1 (ko) | 상태-유지 루프들 및 발진 루프들을 식별하기 위한 하드웨어 시뮬레이션 시스템들 및 방법들 | |
Jiang et al. | PyH2: Using PyMTL3 to create productive and open-source hardware testing methodologies | |
Huang et al. | UML-based hardware/software co-design platform for dynamically partially reconfigurable network security systems | |
CN105930603A (zh) | 一种esd激励模型的构建方法及装置 | |
US11941339B1 (en) | Automated equal-resistance routing in compact pattern | |
US20210303336A1 (en) | Advanced Register Merging | |
US9477800B1 (en) | System, method, and computer program product for automatically selecting a constraint solver algorithm in a design verification environment | |
US20230244512A1 (en) | Fast waveform capture with low hardware footprint enabling full visibility | |
CN115292102B (zh) | 仿真方法、电子设备、可读存储介质 | |
US11868694B1 (en) | System and method for optimizing emulation throughput by selective application of a clock pattern | |
US20240028812A1 (en) | Waveform capture using multicycle path properties | |
CN107526585A (zh) | 基于Scala的FPGA开发平台及其调试、测试方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |