CN101751323A - 微处理器芯片仿真器及断点设置的方法 - Google Patents
微处理器芯片仿真器及断点设置的方法 Download PDFInfo
- Publication number
- CN101751323A CN101751323A CN200810044031A CN200810044031A CN101751323A CN 101751323 A CN101751323 A CN 101751323A CN 200810044031 A CN200810044031 A CN 200810044031A CN 200810044031 A CN200810044031 A CN 200810044031A CN 101751323 A CN101751323 A CN 101751323A
- Authority
- CN
- China
- Prior art keywords
- emulation
- chip
- emulation chip
- management module
- user program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种微处理器芯片仿真器,包括仿真芯片,仿真管理模块,用户程序存储器,监控程序存储器。仿真管理模块通过所述的仿真管理接口控制仿真芯片工作在监控模式或者用户模式。当仿真芯片工作在监控模式时,仿真管理模块可通过所述的仿真管理接口提供断点信息给仿真芯片,仿真芯片执行监控程序完成断点的设置。控制仿真芯片从用户模式切换到监控模式时,仿真管理模块会记录用户程序执行停止的位置,仿真芯片切换回用户模式时,仿真管理模块会控制仿真芯片从所述停止位置处继续执行用户程序。本发明还公开了一种全速运行用户程序时设置断点的方法。本发明在全速运行用户程序时仍旧可以设置断点,提高了程序的调试工作效率。
Description
技术领域
本发明涉及一种微处理器芯片仿真器。本发明还涉及一种全速运行用户程序时设置断点的方法。
背景技术
在开发、调试微处理器芯片中用户程序时,程序开发人员所使用的工具是与微处理器芯片配套的仿真器。与产品芯片不同,在仿真器中使用的是仿真芯片,仿真芯片工作在用户模式或者监控模式,并始终在这两种模式间切换。当仿真芯片工作在用户模式时,执行用户程序模拟产品芯片的实际工作状态;当仿真芯片工作在监控模式时,执行仿真器独有的监控程序,通过仿真器与仿真芯片间的仿真通道观察、设置、修改芯片的状态和参数。
使用仿真器调试用户程序时,往往需要用到断点这一十分常用的调试手段,断点的主要作用是用于观察程序在全速执行的过程中是否能执行到设置了断点的程序位置,同时在断点设置位置处程序停下后,可以观察此时存储器、SFR等的芯片状态。现有的仿真器都只能在仿真芯片处于监控模式下,才能设置断点,在全速执行用户程序时是不能设置断点的。使用现有的仿真器,用户如果启动仿真器全速执行用户程序后,就不能再直接设置断点,必须先使仿真器停止执行用户程序,使仿真器和仿真芯片进入监控模式,再设置断点。如果需要继续运行的话,再控制仿真芯片从停止处继续运行。这样处理使用起来不是很方便。
另外,很多微处理器芯片的仿真过程中需要与其他目标系统配合调试。例如接触式智能卡芯片就需要配合接触式智能卡读卡机(目标系统)调试。在接触式智能卡中,如果目标系统一定时间内没有收到接触式智能卡芯片的响应信息,就会认为用户程序或芯片工作出错;目标系统就会拉低复位信号,强制停止与接触式智能卡芯片和用户程序的交互的通信过程,使其退回到复位状态。采用现有的仿真器配合目标系统调试用户程序,在全速执行用户程序并与目标系统交互通信后,如果需要设置断点,就必须停止执行用户程序,设置断点,再重新启动仿真芯片继续执行用户程序;这一过程所需的时间必然超过目标系统的响应时间要求,使用户程序无法从停止处继续运行,必须从头再来执行一遍之前的通信过程。这对调试工作是非常不方便的,极大地降低了程序调试的效率。
发明内容
本发明要解决的技术问题是提供一种微处理器芯片仿真器,在全速运行用户程序时仍旧可以设置断点;为此本发明还要提供一种全速运行用户程序时设置断点的方法。
为解决上述技术问题,本发明的微处理器芯片仿真器,包括:仿真芯片和仿真管理模块;所述仿真芯片通过仿真管理接口与仿真管理模块相连接,仿真管理模块控制仿真芯片工作在监控模式或者用户模式;
当仿真芯片工作在监控模式时,仿真管理模块向仿真芯片提供断点信息,仿真芯片执行监控程序完成断点的设置;
当仿真芯片从用户模式切换到监控模式时,仿真管理模块记录用户程序执行停止的位置;当仿真芯片从监控模式切换回用户模式时,仿真管理模块控制仿真芯片从所述停止的位置处继续执行用户程序。
仿真芯片从用户模式切换到监控模式后,始终从监控程序的“0”地址处开始执行。
本发明的全速运行用户程序时设置断点的方法是,仿真管理模块通过仿真管理接口控制仿真芯片工作在用户模式或监控模式;
仿真芯片工作在用户模式时,仿真芯片通过数据/地址总线全速执行用户程序存储器中的用户程序;如果用户设置了断点,仿真管理模块通过仿真管理接口控制仿真芯片切换到监控模式,并把断点信息提供给仿真芯片;仿真芯片通过数据/地址总线执行监控程序存储器中的监控程序完成断点的设置;然后,仿真管理模块通过仿真管理接口控制仿真芯片重新工作到用户模式,仿真芯片通过数据/地址总线继续执行用户程序存储器的用户程序。
用本发明的微处理器芯片仿真器及方法,全速运行用户程序时也可以设置断点,提高了程序的调试工作效率,特别是可以极大地提高需要配合目标系统交互通信调试,且目标系统对响应时间有要求情况下的程序调试效率。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明:
附图是本发明的微处理器芯片仿真器结构示意图。
具体实施方式
如图所示,本发明的微处理器芯片仿真器1包括仿真芯片2、仿真管理模块3、用户程序存储器4和监控程序存储器5。仿真芯片2与仿真管理模块3之间有仿真管理接口8,仿真管理模块3通过仿真管理接口8控制仿真芯片2工作在监控模式或者用户模式。当仿真芯片2工作在监控模式时,仿真管理模块3可通过仿真管理接口8提供断点信息给仿真芯片2,仿真芯片2执行监控程序完成断点的设置。仿真芯片2从用户模式切换到监控模式时,仿真管理模块3会记录用户程序执行停止的位置;仿真芯片2再切换回用户模式时,仿真管理模块3控制仿真芯片2从所述停止的位置处继续执行用户程序。仿真芯片2从用户模式切换到监控模式后,始终从监控程序的“0”地址处开始执行。
仿真芯片2与用户程序存储器4间有标准的数据/地址总线6,当仿真芯片2工作在用户模式时,仿真芯片2执行用户程序存储器4中的用户程序,模拟产品芯片的工作情况。仿真芯片2与监控程序存储器5间也有标准的数据/地址总线7,当仿真芯片2工作在监控模式时,仿真芯片2执行监控程序存储器7中的监控程序,可以在仿真管理模块3的控制下设置断点。
用户要求微处理器芯片仿真器1全速运行后,仿真管理模块3通过仿真管理接口8控制仿真芯片2工作在用户模式,仿真芯片2通过数据/地址总线6执行用户程序存储器4中的用户程序。此时,仿真芯片2全速执行用户程序,如果用户设置了断点,仿真管理模块3通过仿真管理接口8控制仿真芯片2切换到监控模式,并把断点信息提供给仿真芯片2。仿真芯片2通过数据/地址总线7执行监控程序存储器5中的监控程序完成断点的设置。然后,仿真管理模块3通过仿真管理接口8控制仿真芯片2重新工作到用户模式,仿真芯片2通过数据/地址总线6继续执行用户程序存储器4中的用户程序。
在上述过程中,仿真芯片2工作模式的切换对用户而言是不可见的,这样就实现了用户程序全速运行时设置断点的功能。
对于需要配合目标系统调试的微处理器芯片仿真器1,完成工作模式的切换、断点的设置都是由微处理器芯片仿真器1在后台完成的,这一过程所需的时间非常的短。由于没有手动停止程序执行,设置断点,再启用程序运行的过程,不会出现因这一手动控制过程所导致的目标系统判断交互通信超时的错误,保证了需要交互通信的程序可以连续地调试下去。
以上通过具体实施方式对本发明进行了详细的说明,对于本领域的技术人员来说,在不脱离本发明原理的情况下,还可做出若干变形和改进,这些也应视为属于本发明的保护范围。
Claims (4)
1.一种微处理器芯片仿真器,其特征在于:包括仿真芯片和仿真管理模块;所述仿真芯片通过仿真管理接口与仿真管理模块相连接,仿真管理模块控制仿真芯片工作在监控模式或者用户模式;
当仿真芯片工作在监控模式时,仿真管理模块向仿真芯片提供断点信息,仿真芯片执行监控程序完成断点的设置;
当仿真芯片从用户模式切换到监控模式时,仿真管理模块记录用户程序执行停止的位置;当仿真芯片从监控模式切换回用户模式时,仿真管理模块控制仿真芯片从所述停止的位置处继续执行用户程序。
2.如权利要求1所述的微处理器芯片仿真器,其特征在于:所述仿真芯片从用户模式切换到监控模式后,始终从监控程序的“0”地址处开始执行。
3.如权利要求1所述的微处理器芯片仿真器,其特征在于:还包括通过数据/地址总线与仿真芯片相连接的用户程序存储器和监控程序存储器;当仿真芯片全速执行用户程序存储器中的用户程序时,如果用户设置了断点,仿真芯片切换到监控模式,仿真管理模块将断点信息提供给仿真芯片;仿真芯片执行监控程序存储器中的监控程序完成断点的设置;然后,仿真芯片重新返回到用户模式,通过继续执行用户程序存储器的用户程序。
4.一种全速运行用户程序时设置断点的方法,其特征在于,仿真管理模块通过仿真管理接口控制仿真芯片工作在用户模式或监控模式;
仿真芯片工作在用户模式时,仿真芯片通过数据/地址总线全速执行用户程序存储器中的用户程序;如果用户设置了断点,仿真管理模块通过仿真管理接口控制仿真芯片切换到监控模式,并把断点信息提供给仿真芯片;仿真芯片通过数据/地址总线执行监控程序存储器中的监控程序完成断点的设置;然后,仿真管理模块通过仿真管理接口控制仿真芯片重新工作到用户模式,仿真芯片通过数据/地址总线继续执行用户程序存储器的用户程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810044031A CN101751323A (zh) | 2008-11-28 | 2008-11-28 | 微处理器芯片仿真器及断点设置的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810044031A CN101751323A (zh) | 2008-11-28 | 2008-11-28 | 微处理器芯片仿真器及断点设置的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101751323A true CN101751323A (zh) | 2010-06-23 |
Family
ID=42478330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810044031A Pending CN101751323A (zh) | 2008-11-28 | 2008-11-28 | 微处理器芯片仿真器及断点设置的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101751323A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102467446A (zh) * | 2010-11-11 | 2012-05-23 | 上海华虹集成电路有限责任公司 | 可设置程序指针值的处理器芯片仿真器 |
CN103677953A (zh) * | 2012-09-25 | 2014-03-26 | 上海华虹集成电路有限责任公司 | 可设置程序指针值的仿真器 |
CN103677954A (zh) * | 2012-09-25 | 2014-03-26 | 上海华虹集成电路有限责任公司 | 仿真器 |
CN104063298A (zh) * | 2014-07-02 | 2014-09-24 | 南通国芯微电子有限公司 | 单片机仿真芯片及单片机仿真方法 |
CN107239614A (zh) * | 2017-06-05 | 2017-10-10 | 芯海科技(深圳)股份有限公司 | 一种外部事件触发断点的芯片仿真方法 |
CN114492261A (zh) * | 2021-08-10 | 2022-05-13 | 北京芯娴电子科技有限公司 | 一种芯片仿真系统 |
-
2008
- 2008-11-28 CN CN200810044031A patent/CN101751323A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102467446A (zh) * | 2010-11-11 | 2012-05-23 | 上海华虹集成电路有限责任公司 | 可设置程序指针值的处理器芯片仿真器 |
CN103677953A (zh) * | 2012-09-25 | 2014-03-26 | 上海华虹集成电路有限责任公司 | 可设置程序指针值的仿真器 |
CN103677954A (zh) * | 2012-09-25 | 2014-03-26 | 上海华虹集成电路有限责任公司 | 仿真器 |
CN103677954B (zh) * | 2012-09-25 | 2018-02-13 | 上海华虹集成电路有限责任公司 | 仿真器 |
CN104063298A (zh) * | 2014-07-02 | 2014-09-24 | 南通国芯微电子有限公司 | 单片机仿真芯片及单片机仿真方法 |
CN107239614A (zh) * | 2017-06-05 | 2017-10-10 | 芯海科技(深圳)股份有限公司 | 一种外部事件触发断点的芯片仿真方法 |
CN114492261A (zh) * | 2021-08-10 | 2022-05-13 | 北京芯娴电子科技有限公司 | 一种芯片仿真系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101751323A (zh) | 微处理器芯片仿真器及断点设置的方法 | |
CN101458652B (zh) | 微控制器嵌入式在线仿真调试系统 | |
CN105740139B (zh) | 一种基于虚拟环境的嵌入式软件调试方法 | |
CN111213099B (zh) | 一种运动控制卡、运动控制系统、机器人系统及数控机床 | |
CN101975937B (zh) | 一种智能卡仿真器装置及其使用方法 | |
CN101206614B (zh) | 仿真特殊功能寄存器的仿真器 | |
CN103123598A (zh) | 一种编译型软plc的在线调试实现方法 | |
CN102467446A (zh) | 可设置程序指针值的处理器芯片仿真器 | |
CN100511179C (zh) | 带特殊功能寄存器断点的增强型微处理器片上动态跟踪方法 | |
CN105468390A (zh) | Boot在线升级装置及方法 | |
CN101968759A (zh) | 具有断点功能的处理器芯片仿真器 | |
CN102023887B (zh) | 一种计算机系统的电源管理方法及计算机系统 | |
CN101329650A (zh) | 智能卡仿真器 | |
CN101354676A (zh) | 一种嵌入式程序调试方法 | |
CN101751324A (zh) | 非接触式智能卡仿真器及工作模式切换方法 | |
CN101763110A (zh) | 一种柔性流水线监控系统 | |
CN201749350U (zh) | 小型plc的人机界面装置 | |
CN205015664U (zh) | 一种光伏驱动模拟装置 | |
CN106484585A (zh) | 非接触式智能卡芯片仿真器 | |
CN101751322B (zh) | 接触式智能卡仿真器及断点设置方法 | |
CN101114241A (zh) | 非接触式智能卡仿真器 | |
CN101968764A (zh) | 具有断点功能的仿真器 | |
CN105117305A (zh) | 一种智能变电站智能设备数据管理装置 | |
CN102880112A (zh) | 一种数控系统下位机以及其对数控设备控制的方法 | |
CN201796358U (zh) | 一种智能卡仿真器装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100623 |