[发明专利]带有软件断点的仿真器有效

专利信息
申请号: 201210009702.7 申请日: 2012-01-13
公开(公告)号: CN103207830A 公开(公告)日: 2013-07-17
发明(设计)人: 许国泰 申请(专利权)人: 上海华虹集成电路有限责任公司
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 上海浦一知识产权代理有限公司 31211 代理人: 戴广志
地址: 201203 上海*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 带有 软件 断点 仿真器
【说明书】:

技术领域

发明涉及一种处理器芯片仿真器,特别是涉及一种带有软件断点的仿真器。

背景技术

处理器芯片内有用户开发的用户程序,在用户程序的编写和调试中,所使用的工具一般是处理器芯片仿真器。仿真器内使用包含产品处理器芯片各项功能的仿真芯片和存放用户程序的存储器,模拟产品处理器芯片的读取和执行用户程序的工作行为。仿真器的其他部件与仿真芯片、存储器相互配合实现各项调试功能,包括设置/清除断点、单步运行程序等。

断点功能是仿真器必须具备的基本功能,也是程序调试中使用最多的调试手段之一。采用扫描链技术实现的仿真器中包含硬件断点和软件断点这两种断点。硬件断点是在仿真芯片内以寄存器资源实现的,硬件断点寄存器内存放用户设置了断点的用户程序语句地址,在用户在程序中设置硬件断点时写入仿真芯片内的硬件断点寄存器,在仿真芯片全速读取和执行用户程序时,仿真芯片一旦发现通过数据/地址总线读取到的用户程序语句地址与硬件断点寄存器内存放的用户程序语句地址相同,就会停止执行该地址上的用户程序语句,进入停止状态。用户通过集成开发环境清除硬件断点,仅需由仿真器清除仿真芯片中对应硬件断点寄存器中存放的该断点所在用户程序语句地址即可。但是,因为硬件断点是需要占用仿真芯片寄存器资源实现的,所以现有仿真器中一般都只支持2-4个硬件断点,这在数量上是远远无法满足程序调试需求的。因此,采用扫描链技术实现的仿真器中通常还带有软件断点。软件断点实现方式是用户在程序中设置软件断点时,由集成开发环境模块(个人电脑上)记录设置了软件断点的用户程序语句地址和用户程序语句数据,通过仿真器以仅仿真芯片能识别的非标程序语句(例如8051中的A5机器码指令可以用来做软件断点)来替换存储器内用户程序中设置了软件断点的用户程序语句地址处的用户程序语句数据。仿真芯片开始读取和执行用户程序后,一旦发现通过数据/地址总线读取到的用户程序语句数据是预定的仅仿真芯片能识别的非标程序语句,就会停止执行数据/地址总线上的程序语句,进入停止状态;然后由仿真器把该软件断点程序地址处的用户程序语句数据(预定的仅仿真芯片能识别的非标程序语句)按照集成开发环境模块中的记录替换回对应的原始用户程序语句数据,以便继续从该断点处执行用户程序。用户通过集成开发环境模块清除软件断点,亦需由仿真器把存储器内该软件断点程序地址处的用户程序语句数据(预定的仅仿真芯片能识别的非标程序语句)按照集成开发环境模块中的记录替换回对应的原始用户程序语句数据。

从上述实现原理可以看出,相比于硬件断点,软件断点设置的个数可以不受限制,但是在设置和清除软件断点时,都有一次修改存储器内用户程序语句的过程。如果存储器是易失性存储器,例如SRAM(Static Random Access Memory,静态随机存取存储器)等则不存在什么问题。但如果产品芯片中存放用户程序的是非易失性存储器,例如EEPROM(E1ectrically Erasable Programmable Read-Only Memory,电可擦可编程只读存储器),FLASH(闪速存储器)等非易失性存储器,且为了真实仿真存储器性能,仿真器内存储器使用与产品处理器芯片中一致的非易失性存储器;由于非易失性存储器都具有按页(128字节或512字节一页等)且按流程(先擦除整页后写入等)写入的特点,设置/清除软件断点也就是修改部分用户程序语句时,需要对目标程序语句所在的存储器页重新按流程整页写入;这样就会表现为设置/清除软件断点操作非常慢,与硬件断点的设置/清除速度差距极大,影响用户的调试感受和效率。因此,仿真器中在用户设置断点时一般都是优先使用硬件断点,硬件断点资源用完后才自动开始使用软件断点。此外,开始运行用户程序前,断点设置/清除的动作一般较为频繁,硬件断点用完后,使用的软件断点个数比较多的话,反复替换存储器中用户程序语句也会加大存储器内程序修改出错的风险。遇到软件断点恢复原始用户程序语句的过程,由于程序已经停止运行,该过程用户基本感受不到,所以基本没有影响。

发明内容

本发明要解决的技术问题提供一种带有软件断点的仿真器,能够整体上提高软件断点的设置/清除效率,改善用户的调试感受和效率,降低存储器内程序修改出错的风险。

为解决上述技术问题,本发明的带有软件断点的仿真器,包括:仿真芯片,仿真模块,存储器,以及用户电脑上的集成开发环境模块;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海华虹集成电路有限责任公司,未经上海华虹集成电路有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210009702.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top