[发明专利]可设置程序指针值的仿真器在审
申请号: | 201210362728.X | 申请日: | 2012-09-25 |
公开(公告)号: | CN103677953A | 公开(公告)日: | 2014-03-26 |
发明(设计)人: | 许国泰 | 申请(专利权)人: | 上海华虹集成电路有限责任公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 上海浦一知识产权代理有限公司 31211 | 代理人: | 戴广志 |
地址: | 201203 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 设置 程序 指针 仿真器 | ||
技术领域
本发明涉及一种处理器芯片仿真器,具体而言是涉及一种可设置程序指针值的仿真器。
背景技术
处理器芯片内有用户开发的用户程序,在用户程序的编写和调试中,所使用的工具一般是处理器芯片仿真器。仿真器内使用包含产品处理器芯片各项功能的仿真芯片,用于模拟产品处理器芯片的工作行为,在功能和性能上均十分接近产品处理器芯片;仿真芯片与仿真器主机配合实现用户程序的仿真运行和各项调试功能。因此,仿真芯片一般都是在产品芯片基础上设计的,在沿用产品芯片几乎所有功能模块、处理器核的同时,去除一些与用户程序调试无关的模块,例如安检模块等,去除存储器(存储器在仿真器上外挂,包括程序和数据存储器)引出读写存储器的标准数据/地址总线,增加一个仿真芯片与仿真器通信和导出仿真芯片内数据用的仿真通信通道,以及一些实现仿真调试功能的模块(仿真模块)。在停止执行用户程序时,仿真器处于监控模式,仿真芯片上的仿真模块、仿真通信通道才工作,配合仿真器实现各种仿真调试功能。在执行用户程序时,仿真器处于运行模式,仿真芯片上的仿真模块、仿真通信通道都对用户程序不可见,用户程序与在产品芯片上运行时功能基本一致。为避免与产品芯片发生功能不一致,仿真芯片的处理器核设计完全沿用产品芯片处理器核设计,不会去做修改,因此不能支持产品芯片处理器核不支持的指令。
程序指针(Program Counter,简称PC)值是用户程序执行以及在仿真器上仿真调试时非常重要的一个参数,它表示下一条将要执行的用户程序语句的位置,即PC值指示的用户程序地址就是下一条将被执行的用户程序语句。修改PC值是仿真器一项非常实用的调试功能,使用户可以通过设置当前PC值,控制仿真芯片下一条执行哪个程序地址处的程序语句。在现有仿真器和仿真芯片中,这一功能需要处理器核支持,处理器核需要支持写PC值的指令,即处理器核可以通过执行程序语句修改PC值,仿真器可以在监控模式下,由仿真芯片执行写PC值的指令把PC值修改为用户设定值。产品芯片处理器核不支持写PC值的指令的话,那么如果在设计仿真芯片时不修改处理器核设计,则仿真器就不能支持修改PC值的调试功能了;如果在设计仿真芯片时修改处理器核设计,增加写PC值的指令,由于修改了处理器核设计为保证修改后的正确性,以及仿真芯片在功能上与产品芯片的一致性,则需要重新对仿真芯片的处理器核部分做验证和测试。这一工作十分耗时耗力,而且如果产品处理器核部分是硬核(即芯片厂商无法修改),那么也就无法通过修改处理器核设计增加写PC值的指令,来使对应仿真器和仿真芯片支持修改PC值的调试功能了。
发明内容
本发明要解决的技术问题是提供一种可设置程序指针值的仿真器,即使仿真芯片的处理器核不支持写PC值指令,也可以修改PC值。
为解决上述技术问题,本发明的可设置程序指针值的仿真器,包括:仿真芯片,调试模块,存储器;
所述仿真芯片通过调试通道与调试模块相连接;所述仿真芯片内具有与产品芯片一致的处理器核;该处理器核与存储器和调试模块之间通过数据/地址总线相连接;
所述存储器内具有用户程序和数据存储器区和监控程序存储器区;
所述调试模块控制仿真芯片处于监控模式或者用户模式,在监控模式下控制仿真芯片执行所述监控程序存储器区内相应地址处的程序;
其中:在所述监控程序存储器区内存储有修改程序指针PC值监控程序,当执行该修改程序指针PC值监控程序的返回语句后,当前程序指针PC值自动变成堆栈内存放的地址值。
所述调试模块通过所述标准数据/地址总线修改存储器内监控程序存储器区的监控程序语句。
所述仿真芯片的处理器核在用户模式下,通过所述标准数据/地址总线从存储器的用户程序和数据存储器区读取并执行用户程序及读写用户数据;在用户模式下该处理器核不能访问存储器的监控程序存储器区。
所述仿真芯片的处理器核在监控模式下,通过所述标准数据/地址总线从存储器的监控程序存储器区读取并执行监控程序;在监控模式下该处理器核不能访问存储器的用户程序和数据存储器区。
还包括位于用户电脑上的集成开发环境模块,所述调试模块通过通信通道与集成开发环境模块相连接,该调试模块通过所述通信通道从集成开发环境模块接收指令和参数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海华虹集成电路有限责任公司,未经上海华虹集成电路有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210362728.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:干眼症的对症用药
- 下一篇:可拆式节流孔板机构及拆装用工具