CN110162438B - 仿真调试装置和仿真调试方法 - Google Patents
仿真调试装置和仿真调试方法 Download PDFInfo
- Publication number
- CN110162438B CN110162438B CN201910461616.1A CN201910461616A CN110162438B CN 110162438 B CN110162438 B CN 110162438B CN 201910461616 A CN201910461616 A CN 201910461616A CN 110162438 B CN110162438 B CN 110162438B
- Authority
- CN
- China
- Prior art keywords
- cid
- development environment
- integrated development
- simulation
- module
- 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
- 238000004088 simulation Methods 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 title claims abstract description 11
- 238000011161 development Methods 0.000 claims abstract description 64
- 238000007689 inspection Methods 0.000 claims abstract description 4
- 206010010099 Combined immunodeficiency Diseases 0.000 claims description 92
- 238000001360 collision-induced dissociation Methods 0.000 claims description 15
- 238000004891 communication Methods 0.000 abstract description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种仿真调试装置,包括:安装在用户电脑上的集成开发环境模块和仿真器;所述集成开发环境模块内设有一CID检查模块,所述仿真器内设有一仿真芯片,该仿真芯片内设有一管理模块和一CID寄存器;所述CID寄存器通过仿真调试通道与集成开发环境模块相连接,所述管理模块通过寄存器读写通道与CID寄存器相连接。本发明还公开了一种仿真调试方法。本发明能够确保用户通过集成开发环境软件开始用户程序调试工作时,仿真器、仿真芯片已进入正常工作状态,且仿真调试通道连接正常、通信稳定,提高调试工作效率。
Description
技术领域
本发明涉及处理器芯片仿真领域,特别是涉及一种仿真调试装置。本发明还涉及一种仿真调试方法。
背景技术
处理器芯片内有用户开发的用户程序,在用户程序的编写和调试中,所使用的工具一般是仿真调试装置。仿真调试装置内使用包含产品处理器芯片各项功能的仿真芯片,用于模拟产品处理器芯片的工作行为,仿真芯片与仿真调试装置其他部件(存放用户程序的程序存储器、存放数据的数据存储器,调试通道,以及安装在用户电脑上的集成开发环境模块等)配合实现用户程序的仿真运行和各项调试功能,用于模拟实际产品处理器芯片进行调试、测试,以及检测机构的送检、预检等。
现有仿真调试装置上电后,首先安装在用户电脑上的集成开发环境模块通过调试通道读取仿真器中仿真芯片里的CID(芯片身份标识Chip Identification),如果读取到CID就判断集成开发环境模块与仿真器已成功建立了通信连接,可以访问仿真芯片,开始进行用户程序的下载和调试了。但是,由于仿真器和仿真芯片属于开发工具,一般也通用于多款多系列处理器芯片的调试,并不是唯一一种型号的真正产品处理器芯片,不会被厂商分配符合规范具有一定格式的CID,所以现有的仿真调试装置中,在集成开发环境模块通过调试通道访问仿真芯片,读取CID,建立通信连接时,仿真芯片只是反馈一个随机数值的CID给集成开发环境模块,而通用的集成开发环境软件基于通用性考虑也不会判断CID的数值,只要读取到任意数值的CID,就判断已成功建立调试通道的连接,可以进入正常的用户程序下载和调试了。
实际上,如果仿真器或仿真芯片出现问题,反馈了一个异常的CID给集成开发环境模块,或者由于调试通道存在连接异常或不稳定,集成开发环境模块读取到的CID与仿真芯片产生的CID并不相同,由于集成开发环境模块并不判断CID的正确性,只要读取到CID就判断通信已正常建立,在集成开发环境模块上用户就可以继续后续的用户程序下载和调试操作了。但此时,由于仿真器或仿真芯片存在问题,或者调试通道存在连接异常或不稳定,后续的用户程序调试过程必然会出现很多异常;同时,由于用户程序处于开发调试阶段,用户程序本身也是不成熟的,存在极大的用户程序代码错误引起异常的可能性,用户再回过来查找和排除是仿真器、仿真芯片或调试通道的问题,还是用户程序代码本身存在错误引发的问题,极大地增加了的问题的复杂性,影响了调试工作的效率。
发明内容
本发明要解决的技术问题是提供一种仿真调试装置,能够确保用户通过集成开发环境软件开始用户程序调试工作时,仿真器、仿真芯片已进入正常工作状态,且仿真调试通道连接正常、通信稳定,提高调试工作效率;为此,本发明还要提供一种仿真调试方法。
为解决上述技术问题,本发明的仿真调试装置,包括:
安装在用户电脑上的集成开发环境模块和仿真器;所述集成开发环境模块内设有一CID检查模块,所述仿真器内设有一仿真芯片,该仿真芯片内设有一管理模块和一CID寄存器;
所述CID寄存器通过仿真调试通道与集成开发环境模块相连接,所述管理模块通过寄存器读写通道与CID寄存器相连接;
所述仿真器上电后,仿真芯片的管理模块能产生一组符合指定格式的CID,并通过寄存器读写通道写入CID寄存器;所述集成开发环境模块通过仿真调试通道从CID寄存器读取CID;所述集成开发环境模块内的CID检查模块对读取到的CID进行检查,判断其是否符合指定格式的CID,如果符合指定格式的CID,所述CID检查模块通知集成开发环境模块,仿真调试通道已建立了稳定连接,仿真器和仿真芯片都已进入正常工作状态。
所述仿真调试装置采用的另一种技术方案是,包括:用户电脑和仿真器;所述用户电脑内设有一CID检查模块,所述仿真器内设有一仿真芯片,该仿真芯片内设有一管理模块和一CID寄存器;述CID寄存器通过仿真调试通道与用户电脑相连接,所述管理模块通过寄存器读写通道与CID寄存器相连接。
所述用户电脑上安装有一集成开发环境模块,所述CID检查模块设置在该集成开发环境模块内,所述CID寄存器通过仿真调试通道与集成开发环境模块相连接。
本发明的仿真调试方法,是采用如下技术方案现的:仿真器每次上电后,仿真芯片的管理模块将会产生一组符合指定格式的CID,并通过寄存器读写通道写入仿真芯片的CID寄存器;安装在用户电脑上的集成开发环境模块通过仿真调试通道从所述CID寄存器4读取CID;所述集成开发环境模块5内的CID检查模块首先对读取到的CID进行检查,判断其是否是符合指定格式的CID,如果符合指定格式,CID检查模块通知集成开发环境模块,集成开发环境模块所连接的仿真器、仿真芯片都已进入正常工作状态,仿真调试通道已建立了稳定连接。
采用本发明的仿真调试装置和方法,仿真器每次上电后,都自动产生带有指定格式的CID,集成开发环境模块通过仿真调试通道获取和检查CID后,确定仿真器和仿真芯片是否已正常工作,仿真调试通道是否已建立稳定连接。确保用户通过集成开发环境模块开始用户程序调试工作时,仿真器和仿真芯片进入正常工作状态,且仿真调试通道连接正常、通信稳定。只有仿真器已正常工作,仿真调试通道稳定连接,用户才能通过集成开发环境模块开始用户程序的下载和调试工作。在出现用户程序代码调试异常时,帮助用户提前消除了仿真器、仿真调试通道存在问题的怀疑和可能性,降低了问题的复杂性,用户只需要关注用户程序代码问题,有助于帮助用户提高用户程序调试工作的效率。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明:
图1是所述仿真调试装置的结构示意图。
具体实施方式
如图1所示,所述仿真调试装置1在下面的实施例中,包括:安装在用户电脑上的集成开发环境模块5和仿真器8。所述仿真器8内设有一仿真芯片2。所述集成开发环境模块5内设有一有CID检查模块6。所述仿真芯片2内设有一管理模块3和一CID寄存器4。所述CID寄存器4通过仿真调试通道7与集成开发环境模块5相连接,所述管理模块3通过寄存器读写通道9与CID寄存器4相连接。
所述仿真器8每次上电后,仿真芯片2的管理模块3将会产生一组符合指定格式的CID,并通过寄存器读写通道9写入CID寄存器4。所述集成开发环境模块5通过仿真调试通道7从CID寄存器4读取CID。所述集成开发环境模块5内的CID检查模块6首先对读取到的CID进行检查,判断其是否是符合指定格式的CID,如果符合指定格式,CID检查模块6通知集成开发环境模块5,集成开发环境模块5所连接的仿真器8、仿真芯片2都已进入正常工作状态,仿真调试通道7已建立了稳定连接,可以开始正常和稳定的用户程序下载和调试。
这样,只有仿真器8已正常工作,仿真调试通道7稳定连接,用户才能通过集成开发环境模块5开始用户程序的下载和调试工作。调试过程中,在出现用户程序代码调试异常时,用户无需怀疑仿真器8、仿真调试通道7存在问题,降低了问题的复杂性,用户只需要关注用户程序代码问题即可。
所述仿真芯片2仍可以采用FPGA(Field Programmable Gate Array,现场可编程门阵列)芯片和网表实现;所述CID寄存器4可以使用FPGA内的寄存器资源或逻辑资源实现;所述管理模块3可以使用FPGA内的逻辑资源实现;所述集成开发环境模块5可以采用通用集成开发环境,例如KEIL、ADS、MDK等,或自定义开发的专用集成开发环境软件实现。仿真调试通道7可以使用标准调试协议的调试通道,例如JTAG等,或自定义协议的调试通道实现。CID检查模块6可以采用通用集成开发环境软件提供的扩展调试接口和自行开发的软件模块实现,例如KIEL的AGDI接口和自行开发的DLL动态链接库。所述CID需要符合的指定格式可以是一组指定数据,或者一组数据加上与之匹配的校验值(使用通用校验算法获得)等方式自定义实现,例如16位数据加基于CRC16算法的校验值构成一组CID等。
以上通过具体实施方式对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出许多变形和改进,这些也应视为本发明的保护范围。
Claims (6)
1.一种仿真调试装置,其特征在于,包括:
安装在用户电脑上的集成开发环境模块和仿真器;所述集成开发环境模块内设有一CID检查模块,所述仿真器内设有一仿真芯片,该仿真芯片内设有一管理模块和一CID寄存器;
所述CID寄存器通过仿真调试通道与集成开发环境模块相连接,所述管理模块通过寄存器读写通道与CID寄存器相连接;
所述仿真器上电后,仿真芯片的管理模块能产生一组符合指定格式的CID,并通过寄存器读写通道写入CID寄存器;所述集成开发环境模块通过仿真调试通道从CID寄存器读取CID;所述集成开发环境模块内的CID检查模块对读取到的CID进行检查,判断其是否符合指定格式的CID,如果符合指定格式的CID,所述CID检查模块通知集成开发环境模块,仿真调试通道已建立了稳定连接,仿真器和仿真芯片都已进入正常工作状态,此时,用户才能通过集成开发环境模块开始用户程序的下载和调试工作;
其中,所述指定格式的CID是一组指定数据,或者是一组数据加上与之匹配的校验值。
2.如权利要求1所述的仿真调试装置,其特征在于,包括:利用用户电脑替代安装在用户电脑上的集成开发环境模块,且所述用户电脑内设有所述CID检查模块。
3.如权利要求2所述的装置,其特征在于:所述用户电脑上安装有一集成开发环境模块,所述CID检查模块设置在该集成开发环境模块内,所述CID寄存器通过仿真调试通道与集成开发环境模块相连接。
4.如权利要求2所述的装置,其特征在于:所述管理模块采用FPGA芯片构成。
5.如权利要求2所述的装置,其特征在于:所述集成开发环境模块采用通用集成开发环境模块。
6.一种仿真调试方法,其特征在于:仿真器每次上电后,仿真芯片的管理模块将会产生一组符合指定格式的CID,并通过寄存器读写通道写入仿真芯片的CID寄存器;安装在用户电脑上的集成开发环境模块通过仿真调试通道从所述CID寄存器读取CID;所述集成开发环境模块内的CID检查模块首先对读取到的CID进行检查,判断其是否是符合指定格式的CID,如果符合指定格式,CID检查模块通知集成开发环境模块,集成开发环境模块所连接的仿真器、仿真芯片都已进入正常工作状态,仿真调试通道已建立了稳定连接,此时,用户才能通过集成开发环境模块开始用户程序的下载和调试工作;
其中,所述指定格式的CID是一组指定数据,或者是一组数据加上与之匹配的校验值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910461616.1A CN110162438B (zh) | 2019-05-30 | 2019-05-30 | 仿真调试装置和仿真调试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910461616.1A CN110162438B (zh) | 2019-05-30 | 2019-05-30 | 仿真调试装置和仿真调试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110162438A CN110162438A (zh) | 2019-08-23 |
CN110162438B true CN110162438B (zh) | 2024-03-26 |
Family
ID=67630080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910461616.1A Active CN110162438B (zh) | 2019-05-30 | 2019-05-30 | 仿真调试装置和仿真调试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110162438B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101197191A (zh) * | 2001-09-13 | 2008-06-11 | 株式会社瑞萨科技 | 存储卡及其初始化设置方法 |
CN101315796A (zh) * | 2007-05-30 | 2008-12-03 | 日立环球储存科技荷兰有限公司 | 内容数据管理***以及方法 |
CN103207832A (zh) * | 2012-01-13 | 2013-07-17 | 上海华虹集成电路有限责任公司 | 自动判断仿真芯片进入稳态的仿真器 |
CN103746882A (zh) * | 2014-01-14 | 2014-04-23 | 国家电网公司 | 智能变电站站控层测试的方法 |
CN105895158A (zh) * | 2016-04-23 | 2016-08-24 | 华为技术有限公司 | 芯片中的die id的读取电路以及芯片 |
CN106528414A (zh) * | 2016-11-03 | 2017-03-22 | 上海华虹集成电路有限责任公司 | 处理器芯片仿真器 |
CN207302033U (zh) * | 2017-09-26 | 2018-05-01 | 上海市信息网络有限公司 | 带有随机uid的处理器芯片仿真器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070180509A1 (en) * | 2005-12-07 | 2007-08-02 | Swartz Alon R | Practical platform for high risk applications |
-
2019
- 2019-05-30 CN CN201910461616.1A patent/CN110162438B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101197191A (zh) * | 2001-09-13 | 2008-06-11 | 株式会社瑞萨科技 | 存储卡及其初始化设置方法 |
CN101315796A (zh) * | 2007-05-30 | 2008-12-03 | 日立环球储存科技荷兰有限公司 | 内容数据管理***以及方法 |
CN103207832A (zh) * | 2012-01-13 | 2013-07-17 | 上海华虹集成电路有限责任公司 | 自动判断仿真芯片进入稳态的仿真器 |
CN103746882A (zh) * | 2014-01-14 | 2014-04-23 | 国家电网公司 | 智能变电站站控层测试的方法 |
CN105895158A (zh) * | 2016-04-23 | 2016-08-24 | 华为技术有限公司 | 芯片中的die id的读取电路以及芯片 |
CN106528414A (zh) * | 2016-11-03 | 2017-03-22 | 上海华虹集成电路有限责任公司 | 处理器芯片仿真器 |
CN207302033U (zh) * | 2017-09-26 | 2018-05-01 | 上海市信息网络有限公司 | 带有随机uid的处理器芯片仿真器 |
Also Published As
Publication number | Publication date |
---|---|
CN110162438A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8924937B1 (en) | Method and system for generating verification information and tests for software | |
US7225357B2 (en) | SDIO card development system | |
US20090248390A1 (en) | Trace debugging in a hardware emulation environment | |
US20060150126A1 (en) | Hardware verification scripting | |
CN115952758A (zh) | 芯片验证方法、装置、电子设备及存储介质 | |
CN116681013B (zh) | 网络芯片的仿真验证方法、平台、装置、设备及介质 | |
CN110704315B (zh) | 一种嵌入式软件测试的故障注入装置 | |
US8095331B2 (en) | Transaction based verification of a system on chip on system level by translating transactions into machine code | |
CN110688313B (zh) | 一种VxWorks操作***下软件测试的故障注入方法 | |
CN113282439B (zh) | eMMC测试方法、装置、可读存储介质及电子设备 | |
US7243059B2 (en) | Simulation of hardware based on smart buffer objects | |
US20050022058A1 (en) | Methods and systems for automatic verification of specification document to hardware design | |
CN110162438B (zh) | 仿真调试装置和仿真调试方法 | |
US20020099953A1 (en) | Debugging of chipcards | |
CN106610862B (zh) | 支持eeprom掉电测试的仿真器 | |
CN111459730A (zh) | 一种Whitley平台下PCH端参数的调整方法及*** | |
CN116049015A (zh) | 一种计算设备的通用调试器、调试***及调试方法 | |
CN209980234U (zh) | 仿真调试装置 | |
CN113535580B (zh) | 一种cts测试方法、装置及测试设备 | |
CN115757099A (zh) | 平台固件保护恢复功能自动测试方法和装置 | |
CN104678292A (zh) | 一种复杂可编程逻辑器件cpld测试方法和装置 | |
CN112256554B (zh) | 一种基于场景测试用例进行测试的方法及设备 | |
CN111338761A (zh) | 一种51单片机虚拟中断控制器及实现方法 | |
CN112986806A (zh) | 一种接口测试方法、测试***及计算机存储介质 | |
Hwang et al. | Black-box testing tool of railwaysignalling system software with a focus on user convenience |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |