本发明涉及仿真测试。更具体地说,本发明涉及基于芯片待测设计的仿真通信方法及装置。
背景技术:
1、目前现有的大多数仿真技术都是通过testbench进行激励设计,以实现与待测设计(英文全称为design under test,简称dut)之间的通信。testbench是一种模拟实际场景的仿真模型,testbench为dut传递激励,且通过输入信号线、输出信号线与dut相连,输入信号线、输出信号线分别与testbench和dut的软件端口相连,dut通过输出信号线向testbench输出逻辑验证结果,testbench通过将接收到的逻辑验证结果与预期的逻辑验证结果进行比较,评估逻辑验证的正确性。
2、然而在实际仿真与验证过程中,随着待测设计复杂性的增加,dut内部的中央处理器(英文简称为cpu)等模块直接与前端框架(例如stimulus)等组件通信的会越来越复杂,为片上系统(英文简称为soc)中芯片待测设计的仿真验证带来了阻碍。这些阻碍主要体现在,在仿真时,片上系统中芯片待测设计的cpu无法及时获取testbench中stimulus组件的仿真激励信息等情况。
技术实现思路
1、本发明实施例的一个目的是解决上述问题,并提供后面将说明的优点。
2、在一个方面,本申请实施例提供了一种基于芯片待测设计的仿真通信方法,应用于仿真测试系统,所述仿真测试系统包括testbench和dut,testbench包括stimulus组件和monitor组件;所述仿真通信方法包括:
3、testbench确定用于写入激励信息的虚拟寄存器;
4、dut确定其cpu中用于映射所述虚拟寄存器的地址空间;
5、testbench在加激励时,stimulus组件向所述虚拟寄存器中写入激励信息;
6、dut获取所述激励信息时,cpu从所述地址空间中读取所述激励信息。在一些技术方案中,所述基于芯片待测设计的仿真通信方法,还包括:
7、cpu根据testbench发出调取监控信息的请求,向所述地址空间中写入监控信息;
8、cpu向所述地址空间中写入监控信息后,monitor组件从所述虚拟寄存器中读取监控信息。
9、在又一个方面,本申请实施例提供了一种基于芯片待测设计的仿真通信方法,应用于仿真测试系统,所述仿真测试系统包括testbench和dut,testbench包括stimulus组件和monitor组件;
10、所述仿真通信方法包括:
11、testbench确定用于写入激励信息的虚拟寄存器;其中,所述虚拟寄存器映射于dut的cpu的地址空间;
12、testbench在加激励时,stimulus组件向所述虚拟寄存器中写入激励信息,以供dut的cpu读取。
13、在一些技术方案中,所述基于芯片待测设计的仿真通信方法,还包括:
14、testbench发出调取监控信息的请求,以使得dut的cpu向所述地址空间中写入监控信息。
15、在cpu向所述地址空间中写入所述监控信息后,testbench的monitor组件从所述虚拟寄存器中读取监控信息。
16、在又一个方面,本申请实施例提供了一种基于芯片待测设计的仿真通信方法,应用于仿真测试系统,所述仿真测试系统包括testbench和dut,testbench包括stimulus组件和monitor组件;所述仿真通信方法包括:
17、dut确定其cpu中用于映射testbench的虚拟寄存器的地址空间,其中,所述虚拟寄存器用于testbench的stimulus组件写入激励信息;
18、dut获取所述激励信息时,cpu从所述地址空间中读取所述激励信息。
19、在一些技术方案中,基于芯片待测设计的仿真通信方法,还包括:
20、cpu根据testbench发出调取监控信息的请求,向所述地址空间中写入监控信息,以供monitor组件读取。
21、在一些技术方案中,所述dut确定其cpu中用于映射testbench的虚拟寄存器的地址空间,包括:
22、dut确定其cpu中用于映射所述虚拟寄存器的物理寄存器;
23、根据所述物理寄存器确定所述地址空间。
24、在又一个方面,本申请实施例提供了一种基于芯片待测设计的仿真通信装置,应用于仿真测试系统,所述仿真测试系统包括testbench和dut,testbench包括stimulus组件和monitor组件;所述仿真通信装置包括:
25、虚拟寄存器确定模块,用于testbench确定用于写入激励信息的虚拟寄存器;
26、地址空间确定模块,用于dut确定其cpu中用于映射所述虚拟寄存器的地址空间;
27、加激励模块,用于testbench在加激励时,stimulus组件向所述虚拟寄存器中写入激励信息;
28、激励获取模块,用于dut获取所述激励信息时,cpu从所述地址空间中读取所述激励信息。
29、在一些技术方案中,所述的基于芯片待测设计的仿真通信装置,还包括:
30、监控信息写入模块,用于cpu根据testbench发出调取监控信息的请求,向所述地址空间中写入所述监控信息;
31、监控信息读取模块,用于cpu向所述地址空间中写入所述监控信息后,monitor组件从所述虚拟寄存器中读取所述监控信息。
32、本发明实施例能够实现的有益效果包括:
33、本申请实施例的基于芯片待测设计的仿真通信方法,根据testbench中的stimulus组件创建虚拟寄存器,并映射到dut中物理寄存器的地址空间上,即可实现testbench通过虚拟寄存器与stimulus组件进行通信,从而使得cpu可以及时获取testbench中stimulus组件的仿真激励信息等情况,能够提升电路仿真验证的灵活性和可操作性。
34、本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。
1.基于芯片待测设计的仿真通信方法,其特征在于,应用于仿真测试系统,所述仿真测试系统包括testbench和dut,testbench包括stimulus组件和monitor组件;所述仿真通信方法包括:
2.根据权利要求1所述的基于芯片待测设计的仿真通信方法,其特征在于,还包括:
3.根据权利要求1所述的基于芯片待测设计的仿真通信方法,其特征在于,所述dut确定其cpu中用于与所述虚拟寄存器映射的地址空间,包括:
4.基于芯片待测设计的仿真通信方法,其特征在于,应用于仿真测试系统,所述仿真测试系统包括testbench和dut,testbench包括stimulus组件和monitor组件;所述仿真通信方法包括:
5.根据权利要求4所述的基于芯片待测设计的仿真通信方法,其特征在于,还包括:
6.根据权利要求4所述的基于芯片待测设计的仿真通信方法,其特征在于,所述虚拟寄存器映射于dut的cpu的地址空间,包括:
7.基于芯片待测设计的仿真通信方法,其特征在于,应用于仿真测试系统,所述仿真测试系统包括testbench和dut,testbench包括stimulus组件和monitor组件;所述仿真通信方法包括:
8.根据权利要求7所述的基于芯片待测设计的仿真通信方法,其特征在于,还包括:
9.基于芯片待测设计的仿真通信装置,其特征在于,应用于仿真测试系统,所述仿真测试系统包括testbench和dut,testbench包括stimulus组件和monitor组件;所述仿真通信装置包括:
10.根据权利要求9所述的基于芯片待测设计的仿真通信装置,其特征在于,还包括: