CN101329650B - 智能卡仿真器 - Google Patents
智能卡仿真器 Download PDFInfo
- Publication number
- CN101329650B CN101329650B CN 200710042247 CN200710042247A CN101329650B CN 101329650 B CN101329650 B CN 101329650B CN 200710042247 CN200710042247 CN 200710042247 CN 200710042247 A CN200710042247 A CN 200710042247A CN 101329650 B CN101329650 B CN 101329650B
- Authority
- CN
- China
- Prior art keywords
- timer
- single step
- emulation chip
- control signal
- administration 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种智能卡仿真器,该仿真器包括仿真芯片、管理模块和程序存储器;其中,管理模块,接收仿真器的操作指令并记录仿真器的配置信息,并通过控制信号线与仿真芯片连接,当配置信息为单步运行时定时器不工作,则该管理模块仅接收单步运行的操作指令,并向仿真芯片发出控制信号,其定时器停止计数;当配置信息为单步运行时定时器工作,则该管理模块无论接收任何操作指令,都不向仿真芯片发出控制信号,其定时器进行计数。本发明用户可通过仿真器软件界面选择配置信息,避免单步方式调试用户程序段时,定时器中断的干扰等影响,便于用户的调试,提高调试效率。
Description
技术领域
本发明涉及一种智能卡仿真器。
背景技术
在开发、调试智能卡中用户程序时,程序开发人员所使用的工具是智能卡仿真器,这些仿真器一般都具有全速运行、单步运行、断点等基本调试功能。仿真器内用仿真芯片替代产品芯片,仿真器在工作时,仿真芯片除了处于运行状态运行用户程序之外,还会处于监控状态运行监控程序,用户程序与监控程序之间是相互独立的,也就是说,用户程序只有在仿真芯片处于运行状态时,才会被仿真芯片执行。
智能卡芯片内除了处理器核、存储器等之外,还有一些其他的资源,其中通常就包括定时器,在程序中可用来做定时器中断。随着智能卡应用的不断丰富,卡内的智能卡芯片中的用户程序也日渐复杂,程序开发人员经常会在程序中使用芯片内的定时器来做定时器中断程序。在用户程序运行时,当使能定时器中断后,用户程序运行的同时,定时器也会同时不断计数,当达到某个程序设定值后就会进入定时器中断程序执行。
使用智能卡仿真器调试带有定时器中断的用户程序时,如果全速运行用户程序,由于整个过程仿真芯片都只运行用户程序,始终处于运行状态,用户程序的状况与运行在使用产品芯片的智能卡上是完全一样的。但是,开发人员在调试用户程序时,经常需要使用仿真器的单步调试功能调试一些较为关键的程序段,当开发人员通过仿真器执行一个单步操作时,仿真芯片首先从执行仿真器监控程序的监控状态进入运行状态,然后执行一条用户程序的指令,再退回到监控状态重新执行监控程序。
开发人员使用智能卡仿真器调试带有定时器中断程序的用户程序时,如果需要用单步方式调试其中的某一个程序段,一般都会先在这段程序开始的地方设置一个断点,让用户程序全速运行,用户程序运行到断点地方就会停下来,仿真器进入监控状态,用户程序的运行指针停在这段用户程序开始的地方,然后,开发人员就会开始通过仿真器使用单步操作来调试所关心的那段程序了。但是,如果此时,在前面用户程序全速运行的过程中已经启动了定时器中断,但定时器计数值还没有达到预设值的话,由于单步运行中,每次执行单步,仿真芯片都会有一段时间处于运行状态运行用户程序,这段时间内定时器是会继续工作并计数的(监控状态下仿真芯片执行监控程序,而不执行用户程序,可以控制仿真芯片的定时器不工作),就会出现这样的情况,在单步调试一个程序段时,执行了几次单步之后,由于定时器还在继续计数,在执行完某一次单步后就会达到计数预设值,在下一次执行单步时,不再继续执行需要调试的那段用户程序中的下一语句行,而是进入了定时器中断程序,使开发人员无法继续调试所关心的那段用户程序,给调试带来极大的不便。
当然,开发人员可以通过暂时修改用户程序,先暂时关闭用户程序中的定时器中断使能,再来单步调试所关心的程序段。但是,在整个用户程序的调试过程中,经常需要全速运行完整的整个用户程序,也经常需要单步调试某一段程序,如果老是需要修改程序,打开/关闭定时器中断使能,不仅是一件很麻烦的事情,影响调试效率,也容易把用户程序改错,带来不必要的麻烦。
发明内容
本发明要解决的技术问题是提供一种智能卡仿真器,它可以在单步运行用户程序时,避免定时器中断的现象,便于用户的调试和提高调试的效率。
为解决上述技术问题,本发明的智能卡仿真器,包括仿真芯片、程序存储器和定时器,所述程序存储器通过地址/数据总线与仿真芯片连接,其中,还包括管理模块,该管理模块,接收仿真器的操作指令并记录仿真器的配置信息,且通过控制信号线与仿真芯片连接;当配置信息为单步运行时定时器不工作,则该管理模块仅在接收单步运行的操作指令时,向仿真芯片输出“1”控制信号,使其定时器停止计数;该管理模块在接收到全速运行的操作指令时,向仿真芯片输出“0”控制信号;当配置信息为单步运行时定时器工作,则该管理模块无论接收任何操作指令,都向仿真芯片输出“0”控制信号,其定时器进行计数。
所述操作指令为单步运行或全速运行。
所述仿真芯片采用仿真功能的逻辑来实现。
所述管理模块采用单片机实现。
采用本发明的智能卡仿真器,用户在仿真器软件界面选择配置信息,通过向仿真芯片发出控制信号的与否来控制定时器的计数工作,从而,避免单步方式调试用户程序时,定时器中断的干扰等影响,便于用户的调试,有利于提高用户程序的调试效率。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明:
附图是本发明智能卡仿真器的结构示意图。
具体实施方式
如附图所示,本发明的智能卡仿真器1包括仿真芯片2、管理模块3和程序存储器4。管理模块3与仿真芯片2之间有一根控制信号线5连接。用户可以通过仿真器软件界面选择配置信息,如仿真器1在单步运行时,定时器是否工作,同时该配置信息记录在仿真器1的管理模块3中。
管理模块3能够接收用户通过仿真器软件界面发出的操作指令,该操作指令包括全速、单步运行等。当管理模块3中记录的配置信息为“单步运行时,定时器不工作”,那么,管理模块3在接收到的操作指令为全速运行时,通过控制信号线5向仿真芯片2继续发出“0”信号;管理模块3在接收到的操作指令为单步运行时,通过信号线5向仿真芯片2发出“1”信号。当管理模块3中记录的配置信息为“单步运行时,定时器工作”,那么管理模块3无论接收到全速还是单步运行的操作指令,始终通过控制信号线5向仿真芯片2发出“0”信号。
仿真芯片2设计时,增加一控制信号的输入引脚,与管理模块3通过控制信号线5连接,同时增加一块专用于实现仿真功能的逻辑,所实现的功能是,当仿真芯片2通过控制信号线5获得“1”信号时,则仿真芯片2在控制信号线5上的信号为“1”期间,即使仿真芯片2处于运行状态,其中的定时器也停止计数。当仿真芯片2通过控制信号线5获得“0”信号时,则当仿真芯片2处于运行状态,仿真芯片2内的定时器计数工作,仿真芯片2处于监控状态,运行监控程序时,其中的定时器始终不工作。
程序存储器4与仿真芯片2之间通过标准的地址/数据总线6连接,监控程序和用户程序存放在程序存储器4的不同地址段,仿真芯片2在运行模式下执行程序存储器4中的用户程序;仿真芯片2在监控模式下执行程序存储器4中的监控程序。
这样,如果用户通过仿真器软件界面选择了“单步运行时,定时器不工作”的配置,在单步调试用户程序时,由于定时器不工作,就不会进入定时器中断程序了;在全速调试用户程序时,由于定时器始终工作,仍旧可以正常进入定时器中断程序,与用户程序在产品芯片上运行一致。
本发明中的仿真芯片2所增加的逻辑和引脚都是用于实现仿真功能的逻辑和引脚,与实现产品芯片功能部分的逻辑和引脚相互独立,因此并不影响仿真芯片2全速运行用户程序时的功能和性能,保持了与产品芯片的一致性。
所述管理模块可以用通用的单片机实现。
Claims (4)
1.一种智能卡仿真器,包括仿真芯片、程序存储器和定时器,所述程序存储器通过地址/数据总线与仿真芯片连接,其特征在于:
还包括管理模块,该管理模块,接收仿真器的操作指令并记录仿真器的配置信息,且通过控制信号线与仿真芯片连接;
当配置信息为单步运行时定时器不工作,则该管理模块仅在接收单步运行的操作指令时,向仿真芯片输出“1”控制信号,使其定时器停止计数,该管理模块在接收到全速运行的操作指令时,向仿真芯片输出“0”控制信号;当配置信息为单步运行时定时器工作,则该管理模块无论接收任何操作指令,都向仿真芯片输出“0”控制信号,其定时器进行计数。
2.如权利要求1所述的智能卡仿真器,其特征在于:所述操作指令为单步运行或全速运行。
3.如权利要求2所述的智能卡仿真器,其特征在于:所述仿真芯片采用仿真功能的逻辑来实现。
4.如权利要求2所述的智能卡仿真器,其特征在于:所述管理模块采用单片机实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710042247 CN101329650B (zh) | 2007-06-20 | 2007-06-20 | 智能卡仿真器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710042247 CN101329650B (zh) | 2007-06-20 | 2007-06-20 | 智能卡仿真器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101329650A CN101329650A (zh) | 2008-12-24 |
CN101329650B true CN101329650B (zh) | 2013-02-27 |
Family
ID=40205466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710042247 Expired - Fee Related CN101329650B (zh) | 2007-06-20 | 2007-06-20 | 智能卡仿真器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101329650B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103207832A (zh) * | 2012-01-13 | 2013-07-17 | 上海华虹集成电路有限责任公司 | 自动判断仿真芯片进入稳态的仿真器 |
CN103207830B (zh) * | 2012-01-13 | 2016-12-14 | 上海华虹集成电路有限责任公司 | 带有软件断点的仿真器 |
CN103365701B (zh) * | 2013-07-10 | 2017-05-03 | 飞天诚信科技股份有限公司 | 一种模拟读卡器的工作方法和模拟通信系统 |
CN104680059B (zh) * | 2013-12-03 | 2017-11-03 | 北京中电华大电子设计有限责任公司 | 一种保护芯片固件程序的仿真器及方法 |
CN114492261B (zh) * | 2021-08-10 | 2024-10-22 | 上海芯圣电子股份有限公司 | 一种芯片仿真系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2783418Y (zh) * | 2005-04-01 | 2006-05-24 | 北京清华同方微电子有限公司 | 用于智能卡仿真调试系统的硬件断点电路 |
-
2007
- 2007-06-20 CN CN 200710042247 patent/CN101329650B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN2783418Y (zh) * | 2005-04-01 | 2006-05-24 | 北京清华同方微电子有限公司 | 用于智能卡仿真调试系统的硬件断点电路 |
Also Published As
Publication number | Publication date |
---|---|
CN101329650A (zh) | 2008-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6957180B1 (en) | System and a method for communication between an ICE and a production microcontroller while in a halt state | |
US6145122A (en) | Development interface for a data processor | |
US7188063B1 (en) | Capturing test/emulation and enabling real-time debugging using an FPGA for in-circuit emulation | |
EP2847681B1 (en) | Device having configurable breakpoint based on interrupt status | |
CN101004707A (zh) | 一种嵌入式软件调试装置及其调试实现方法 | |
CN107907814B (zh) | 一种提高芯片量产测试效率的方法 | |
CN101329650B (zh) | 智能卡仿真器 | |
CN101339581A (zh) | 基于中断通讯的嵌入式系统的在线调试仿真方法 | |
CN101206614B (zh) | 仿真特殊功能寄存器的仿真器 | |
CN100487668C (zh) | 一种嵌入式处理器的调试方法 | |
US6175913B1 (en) | Data processing unit with debug capabilities using a memory protection unit | |
CN100511179C (zh) | 带特殊功能寄存器断点的增强型微处理器片上动态跟踪方法 | |
CN106528414B (zh) | 处理器芯片仿真器 | |
CN102708015A (zh) | 基于cpu不可屏蔽中断系统问题诊断的调试方法 | |
CN103793263A (zh) | 一种基于PowerPC处理器的DMA事务级建模方法 | |
CN102193860B (zh) | 微控制器在线调试电路及方法、微控制器 | |
CN101782626B (zh) | 一种jtag端口控制器 | |
CN111008133B (zh) | 粗粒度数据流架构执行阵列的调试方法及装置 | |
CN100474266C (zh) | 一种用于数字信号处理器的调试系统及其调试方法 | |
CN208384556U (zh) | 仿真器 | |
Kao et al. | Hardware-software approaches to in-circuit emulation for embedded processors | |
US20060259664A1 (en) | Real-time prioritization of stall or event information | |
CN106484584A (zh) | 处理器芯片仿真器 | |
CN108647144A (zh) | 仿真器及代码执行异常断点实现方法 | |
CN1219254C (zh) | 一种用于51核ic卡的硬件仿真系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130227 Termination date: 20200620 |