CN208384556U - 仿真器 - Google Patents
仿真器 Download PDFInfo
- Publication number
- CN208384556U CN208384556U CN201820695457.2U CN201820695457U CN208384556U CN 208384556 U CN208384556 U CN 208384556U CN 201820695457 U CN201820695457 U CN 201820695457U CN 208384556 U CN208384556 U CN 208384556U
- Authority
- CN
- China
- Prior art keywords
- debugging
- breakpoint
- module
- user
- emulator
- 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.)
- Active
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本实用新型公开了一种仿真器,包括:信号检测模块、断点地址寄存器、调试模块和用户电脑;所述信号检测模块的输入端与写信号线相连接,通过断点触发信号线与调试模块相连接,所述断点地址寄存器通过所述断点触发信号线与调试模块相连接;所述调试模块通过调试通道与用户电脑相连接。本实用新型能够在用户程序执行到指定地址前,如果发生数据存储器非预期异常写入,则会立即触发断点功能。
Description
技术领域
本实用新型涉及处理器芯片调试领域,特别是涉及一种仿真器。
背景技术
处理器芯片内有用户开发的用户程序,在用户程序的编写和调试中,所使用的工具一般是仿真器。仿真器内使用包含产品处理器芯片各项功能的仿真芯片,用于模拟产品处理器芯片的工作行为,仿真芯片与仿真器其他部件(存放用户程序的程序存储器、存放数据的数据存储器,以及用户电脑上的集成开发环境等)配合实现用户程序的仿真运行和各项调试功能。
用户程序调试过程中经常会遇到代码执行过程中出现数据存储器非预期的异常写入情况,非常希望能有调试手段准确地寻找到执行哪一段或哪一句代码时,触发了非预期的异常数据存储器写入,以便进一步分析和调试。
使用现有的仿真器设计,调试上述问题时,只能采用不断设置代码断点,触发断点后不断查看数据存储器是否有异常写入,来逐步逼近造成问题的代码段或代码语句,非常麻烦、调试效率低下。同时,如果数据存储器异常写入不是每次执行代码时都稳定发生的,采用上述调试方法将更加困难。
实用新型内容
本实用新型要解决的技术问题是提供一种仿真器,能够在用户程序执行到指定地址前,如果发生数据存储器非预期异常写入,则会立即触发断点功能。
为解决上述技术问题,本实用新型的仿真器,包括:信号检测模块、断点地址寄存器、调试模块和用户电脑;所述信号检测模块的输入端与写信号线相连接,通过断点触发信号线与调试模块相连接,所述断点地址寄存器通过所述断点触发信号线与调试模块相连接;所述调试模块通过调试通道与用户电脑相连接。
所述用户电脑上安装有集成开发环境模块,所述调试模块通过调试通道与安装在用户电脑上的集成开发环境模块相连接。
由于采用本实用新型的仿真器,能够提供一种断点调试功能,在用户程序执行到指定地址前,如果发生数据存储器非预期异常写入,则会立即触发断点功能,用户程序立即停止执行,且程序执行地址指针停止在发生数据存储器异常写入时所执行的用户程序语句地址上,并通过调试界面显示给用户查看。这样,极大地方便了用户调试、定位数据存储器非预期异常写入的错误,提高了代码开发和调试的效率。
附图说明
下面结合附图和具体实施方式对本实用新型作进一步详细的说明:
图1是所述仿真器一实施例的结构示意图。
具体实施方式
如图1所示,所述仿真器1在下面的实施例中,包括:信号检测模块2、断点地址寄存器3、调试模块4和集成开发环境模块5。所述信号检测模块2通过写信号线6接收来自处理器核的数据存储器写信号,通过断点触发信号线7与调试模块4相连接,所述断点触发信号线7同时与断点地址寄存器3相连接。调试模块4通过调试通道8与用户电脑上的集成开发环境模块5相连接。
所述断点地址寄存器3中存放用户设置的用户程序断点地址数据,全速开始执行用户程序后,如果用户程序执行到了断点地址寄存器3中存放的用户程序断点地址处,断点地址寄存器3马上通过断点触发信号线7向调试模块4发出触发断点信号。仿真器1上用户代码开始全速执行后,所述信号检测模块2通过写信号线6实时监测输入的数据存储器写信号,如果是无效的写信号,则不通过断点触发信号线7向调试模块4发出触发断点信号;如果出现了有效的写信号,则马上通过断点触发信号线7向调试模块4发出触发断点信号。所述调试模块4接收到触发断点信号后,马上停止执行用户程序,并把停止执行时的用户程序地址通过调试通道8发送给集成开发环境模块5显示出来。
这样,用户程序执行到指定地址前,如果发生数据存储器非预期异常写入,则会立即触发断点功能,用户程序立即停止执行,且程序执行地址指针停止在发生数据存储器异常写入时所执行的用户程序语句地址上,并通过调试界面显示给用户查看,用户可以方便、高效地查找出引起异常写入的程序语句位置;如果没有发生异常写入,则用户程序也会执行到设置的断点地址处后停止执行,与正常断点功能一样,方便用户了解本次执行中未触发数据存储器异常写入,如果多次重复都未触发,则用户可以据此判断执行到设置断点的地址处的用户程序程序段不会触发异常写入,可以把怀疑点放到其他程序段上去。这就极大地方便了用户调试、定位数据存储器非预期异常写入的错误,提高了代码开发和调试的效率。
所述信号检测模块3、断点地址寄存器3和调试模块4都可使用FPGA(Field-Programmable Gate Array,即现场可编程门阵列)中的逻辑资源和寄存器资源配合逻辑设计实现。
以上通过具体实施方式对本实用新型进行了详细的说明,但这些并非构成对本实用新型的限制。在不脱离本实用新型原理的情况下,本领域的技术人员还可做出许多变形和改进,这些也应视为本实用新型的保护范围。
Claims (3)
1.一种仿真器,其特征在于,包括:信号检测模块、断点地址寄存器、调试模块和用户电脑;所述信号检测模块的输入端与写信号线相连接,通过断点触发信号线与调试模块相连接,所述断点地址寄存器通过所述断点触发信号线与调试模块相连接;所述调试模块通过调试通道与用户电脑相连接。
2.如权利要求1所述的仿真器,其特征在于:所述用户电脑上安装有集成开发环境模块,所述调试模块通过调试通道与安装在用户电脑上的集成开发环境模块相连接。
3.如权利要求1所述的仿真器,其特征在于:所述信号检测模块、断点地址寄存器和调试模块FPGA采用FPGA构成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201820695457.2U CN208384556U (zh) | 2018-05-10 | 2018-05-10 | 仿真器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201820695457.2U CN208384556U (zh) | 2018-05-10 | 2018-05-10 | 仿真器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN208384556U true CN208384556U (zh) | 2019-01-15 |
Family
ID=64973995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201820695457.2U Active CN208384556U (zh) | 2018-05-10 | 2018-05-10 | 仿真器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN208384556U (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108388522A (zh) * | 2018-05-10 | 2018-08-10 | 上海市信息网络有限公司 | 仿真器及断点实现方法 |
-
2018
- 2018-05-10 CN CN201820695457.2U patent/CN208384556U/zh active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108388522A (zh) * | 2018-05-10 | 2018-08-10 | 上海市信息网络有限公司 | 仿真器及断点实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3072051B1 (en) | Diagnosing production applications based on process snapshots | |
US9507688B2 (en) | Execution history tracing method | |
EP3369015B1 (en) | Methods and circuits for debugging circuit designs | |
US9632138B2 (en) | Functional testing of an integrated circuit chip | |
US9176821B2 (en) | Watchpoint support system for functional simulator | |
CN102467446A (zh) | 可设置程序指针值的处理器芯片仿真器 | |
CN208384556U (zh) | 仿真器 | |
CN106528414A (zh) | 处理器芯片仿真器 | |
CN101178685A (zh) | 带特殊功能寄存器断点的增强型微处理器片上动态跟踪方法 | |
US9348723B2 (en) | Method, system, and computer program product | |
EP1125200B1 (en) | Maintaining object size information concurrent with data optimization for debugging | |
Aponte-Moreno et al. | MiFIT: A fault injection tool to validate the reliability of microprocessors | |
CN101329650B (zh) | 智能卡仿真器 | |
CN207302034U (zh) | 处理器芯片仿真器 | |
CN111008133A (zh) | 粗粒度数据流架构执行阵列的调试方法及装置 | |
CN208384554U (zh) | 仿真器 | |
US9946624B1 (en) | Systems and methods to capture data signals from a dynamic circuit | |
CN108647144A (zh) | 仿真器及代码执行异常断点实现方法 | |
CN108388522A (zh) | 仿真器及断点实现方法 | |
CN106484584A (zh) | 处理器芯片仿真器 | |
Seo et al. | Automating embedded software testing on an emulated target board | |
CN112965458B (zh) | 控制系统的控制逻辑仿真调试方法、设备及可读存储介质 | |
CN114610596B (zh) | 实现用户程序断点调试的处理器芯片调试系统 | |
Azimi et al. | Reliability evaluation of heterogeneous systems-on-chip for automotive ECUs | |
Wagner et al. | A scriptable, standards-compliant reporting and logging extension for SystemC |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant |