本发明涉及芯片,尤其涉及一种芯片软硬件联合仿真调试系统。
背景技术:
1、在芯片开发阶段,需要对芯片的模块进行仿真。芯片包括硬件模块和软件模块,通过硬件模块和软件模块交互实现软硬件联合仿真。硬件模块的代码可以通过gdb波形来调试,而软件模块运行的是由高级语言代码编译生成的二进制代码,在现有的软硬件联合仿真过程中,无法直接通过波形的方式来调试高级语言代码,也无法获取到高级语言代码的程序执行到了哪个阶段,更无法获取到与软件模块交互的硬件模块的信号波形和高级语言代码的对应关系。如果仅凭经验通过多次尝试来调试,会导致软硬件联合仿真调试的效率低,且无法保证准确性。由此可知,如何提高芯片在软硬件仿真阶段的调试效率和准确性,成为亟待解决的技术问题。
技术实现思路
1、本发明目的在于,提供一种芯片软硬件联合仿真调试系统,提高了芯片在软硬件仿真阶段的调试效率和准确性。
2、根据本发明一方面,提供了一种芯片软硬件联合仿真调试系统,包括芯片、存储有计算机程序的第一存储器、第一处理器和显示界面,其中,所述芯片包括至少一组具有互联关系的硬件模块和软件模块,所述硬件代码模块基于硬件描述语言生成,所述软件模块包括用于存储预设二进制代码的第二存储器和用于执行预设二进制代码的第二处理器,所述预设二进制代码由高级语言编写的预设源代码转换生成;所述显示界面包括第一显示区域、第二显示区域、时间轴,所述第一显示区域和第二显示区域共用所述时间轴,所述时间轴用于表示芯片的软硬件联合仿真时间;
3、当所述第一处理器执行所述计算机程序时,实现以下步骤:
4、步骤s1、建立预设二进制代码的指令码和软件模块中函数的映射关系,生成映射关系表;
5、步骤s2、建立所述软件模块对应的字符串数组,所述字符串数组的长度为预设源代码的最大函数嵌套层数m;
6、步骤s3、基于所述硬件模块和软件模块进行芯片软硬件联合仿真,生成硬件模块对应的硬件信号波形数据,并基于所述映射关系表按照所述软件模块中的函数调用顺序以栈存储的形式将函数标识存储在所述字符串数组中;
7、步骤s4、基于所述硬件信号波形数据在所述第一显示区域实时生成硬件信号波形,基于所述字符串数组在所述第二显示区域中实时显示软件模块中的函数调用顺序,基于所述时间轴建立硬件信号波形和软件模块中的函数调用顺序的对应关系;
8、步骤s5、基于所述时间轴建立硬件信号波形和软件模块中的函数调用顺序的对应关系执行芯片的软硬件联合仿真调试。
9、本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本发明提供的一种芯片软硬件联合仿真调试系统可达到相当的技术进步性及实用性,并具有产业上的广泛利用价值,其至少具有以下有益效果:
10、本发明所述系统通过建立预设二进制代码的指令码和软件模块中函数的映射关系以及字符串数组,在基于所述硬件模块和软件模块进行芯片软硬件联合仿真过程中建立硬件信号波形和软件模块中的函数调用顺序的对应关系,基于时间轴建立硬件信号波形和软件模块中的函数调用顺序的对应关系实现行芯片的软硬件联合仿真调试,提高了芯片在软硬件仿真阶段的调试效率和准确性。
1.一种芯片软硬件联合仿真调试系统,其特征在于,
2.根据权利要求1所述的系统,其特征在于,
3.根据权利要求1所述的系统,其特征在于,
4.根据权利要求3所述的系统,其特征在于,
5.根据权利要求3所述的系统,其特征在于,
6.根据权利要求5所述的系统,其特征在于,
7.根据权利要求1所述的系统,其特征在于,
8.根据权利要求7所述的系统,其特征在于,
9.根据权利要求1所述的系统,其特征在于,
10.根据权利要求1所述的系统,其特征在于,