本申请涉及芯片设计,更具体地说,涉及一种芯片调试方法、系统、电子设备及计算机存储介质。
背景技术:
1、uvm(universal verification methodology,通用验证方法学)具有速度快、效率高、灵活稳定、集成度高等优点,所以在芯片硬件逻辑验证与设计中是十分必要的。dpl(direct programming interface)是一种在systemverilog(硬件描述语言)编程语言中,用于与外部c/c++等代码交互的机制,其允许systemverilog模拟器与外部的c/c++等代码进行通信,实现从硬件描述语言到软件编程语言的无缝集成。
2、然而,仿真平台的模型部分只能通过dpi建立仿真平台的验证逻辑部分和高级语言的算法部分的联系,在仿真处理器时,并不能将仿真平台的验证逻辑部分、rtl(register-transfer level,寄存器传输级)建模的处理器内的执行代码进行联调,导致芯片调试效率较低。
3、综上所述,如何提高芯片调试的效率是目前本领域技术人员亟待解决的问题。
技术实现思路
1、本申请的目的是提供一种芯片调试系统,其能在一定程度上解决如何提高芯片调试的效率的技术问题。本申请还提供了一种芯片调试方法、电子设备及计算机可读存储介质。
2、为了实现上述目的,本申请提供如下技术方案:
3、一种芯片调试系统,包括:
4、与待调试芯片的sram时序接口连接的链接模块,用于获取所述待调试芯片内部的联调信息,所述联调信息包括所述待调试芯片内部sram的地址和所述sram对应的数据;
5、与所述链接模块及仿真平台分别连接的译码模块,用于对所述联调信息进行解码,得到所述待调试芯片的断点信息,并将所述断点信息传输至所述仿真平台,以使所述仿真平台将所述断点信息与仿真行为相关联;
6、其中,所述仿真平台基于硬件描述语言搭建,且所述仿真平台用于对所述待调试芯片进行验证。
7、在一示例性实施例中,还包括:
8、编码模块,用于获取对所述待调试芯片进行调试的测试程序,对所述测试程序进行编码,得到目标编码结果;
9、与所述编码模块及所述待调试芯片连接的编译工具,用于将所述目标编码结果编译为二进制处理器指令,并将所述二进制处理器指令传输至所述待调试芯片。
10、在一示例性实施例中,所述编码模块对所述测试程序进行编码,得到目标编码结果,包括:
11、对所述测试程序进行解析,得到所述测试程序对所述待调试芯片进行操作的sram地址信息;
12、对所述sram地址信息进行编码,得到第一编码结果;
13、确定所述待调试芯片的sram地址格式;
14、按照所述sram地址格式对所述第一编码结果进行封装,得到sram偏移地址;
15、对所述测试程序进行解析,得到所述测试程序中与所述sram地址信息对应的断点信息,所述断点信息包括跳入断点、跳过断点、跳出断点、跨越至下一个断点中的一个或多个;
16、对所述断点信息进行编码,得到第二编码结果;
17、确定所述待调试芯片的sram数据格式;
18、按照所述sram数据格式对所述第二编码结果进行封装,得到sram写数据编码;
19、根据所述sram偏移地址和所述sram写数据编码确定所述目标编码结果。
20、在一示例性实施例中,所述目标编码结果的高位为非常用字符,以区分sram写数据与其他数据;所述目标编码结果的低位为独热码,以表征分类标签。
21、在一示例性实施例中,还包括:
22、与所述译码模块及语言模块连接的格式转换模块,用于对所述断点信息进行格式转换,得到转换结果,并将所述转换结果发送至所述语言模块,以使将所述转换结果与所述语言模块中的代码算法关联;
23、其中,所述语言模块用于存储表征所述待调试芯片的参考模型数据结果的所述代码算法。
24、在一示例性实施例中,所述译码模块通过所述硬件描述语言的跨模块调试功能,与将所述断点信息传输至所述仿真平台。
25、在一示例性实施例中,所述联调信息的高位为数据,所述联调信息的低位为地址。
26、一种芯片调试方法,包括:
27、获取所述待调试芯片内部的联调信息,所述联调信息包括所述待调试芯片内部sram的地址和所述sram对应的数据;
28、对所述联调信息进行解码,得到所述待调试芯片的断点信息,并将所述断点信息传输至所述仿真平台,以使所述仿真平台将所述断点信息与仿真行为相关联;
29、其中,所述仿真平台基于硬件描述语言搭建,且所述仿真平台用于对所述待调试芯片进行验证。
30、一种电子设备,包括:
31、存储器,用于存储计算机程序;
32、处理器,用于执行所述计算机程序时实现如上所述芯片调试方法的步骤。
33、一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上所述芯片调试方法的步骤。
34、本申请提供的一种芯片调试系统,包括与待调试芯片的sram时序接口连接的链接模块,用于获取待调试芯片内部的联调信息,联调信息包括待调试芯片内部sram的地址和sram对应的数据;与链接模块及仿真平台分别连接的译码模块,用于对联调信息进行解码,得到待调试芯片的断点信息,并将断点信息传输至仿真平台,以使仿真平台将断点信息与仿真行为相关联;其中,仿真平台基于硬件描述语言搭建,且仿真平台用于对待调试芯片进行验证。本申请可以通过链接模块从待调试芯片的sram时序接口获取联调信息,并通过译码模块对联调信息进行解码来得到待调试芯片的断点信息,且可以通过译码模块将断点信息传输给仿真平台,使得仿真平台将断点信息与仿真行为相关联,由于断点信息反映了待调试芯片内部处理器的执行代码,仿真平台基于硬件描述语言搭建,所以本申请可以将仿真平台的验证逻辑部分、处理器内的执行代码进行联调,便于仿真平台对待调试芯片进行验证,提高了芯片调试效率。本申请提供的一种芯片调试方法、电子设备及计算机可读存储介质也解决了相应技术问题。
1.一种芯片调试系统,其特征在于,包括:
2.根据权利要求1所述的芯片调试系统,其特征在于,还包括:
3.根据权利要求2所述的芯片调试系统,其特征在于,所述编码模块对所述测试程序进行编码,得到目标编码结果,包括:
4.根据权利要求3所述的芯片调试系统,其特征在于,所述目标编码结果的高位为非常用字符,以区分sram写数据与其他数据;所述目标编码结果的低位为独热码,以表征分类标签。
5.根据权利要求1所述的芯片调试系统,其特征在于,还包括:
6.根据权利要求1所述的芯片调试系统,其特征在于,所述译码模块通过所述硬件描述语言的跨模块调试功能,与将所述断点信息传输至所述仿真平台。
7.根据权利要求1所述的芯片调试系统,其特征在于,所述联调信息的高位为数据,所述联调信息的低位为地址。
8.一种芯片调试方法,其特征在于,包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求8所述芯片调试方法的步骤。
