CN106776433A - 一种微控制器芯片中的调试单元 - Google Patents
一种微控制器芯片中的调试单元 Download PDFInfo
- Publication number
- CN106776433A CN106776433A CN201611157025.8A CN201611157025A CN106776433A CN 106776433 A CN106776433 A CN 106776433A CN 201611157025 A CN201611157025 A CN 201611157025A CN 106776433 A CN106776433 A CN 106776433A
- Authority
- CN
- China
- Prior art keywords
- debugging
- serial
- chip
- serial communication
- communication
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0002—Serial port, e.g. RS232C
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种微控制器芯片中的调试单元,微控制器芯片内部包括IO控制单元IO_CTRL、串行通信调试接口模块SC_INTF、调试模式控制模块DEBUG_CTRL、程序存储器PMEM以及微控制器内核MCU_CORE,微控制器芯片通过串行通信调试接口模块SC_INTF与芯片外部进行串行通信,串行通信调试接口模块SC_INTF内部包括串行接收单元RXC以及串行发送单元TXC,串行接收单元RXC负责完成串行通信调试的接收过程。本发明采用串行通信调试接口只需要1个双向端口即可以完成微控制器芯片与芯片外部上位机的通信,实现上位机对微控制器芯片的调试。
Description
技术领域
本发明涉及一种调试单元,具体是一种微控制器芯片中的调试单元。
背景技术
MCU调试器是用户在开发基于MCU芯片的应用程序的时候,用来调试应用程序的工具。MCU调试器使程序能够根据用户的意愿来运行,如单步运行,全速运行,或者在指定的某行指令暂停运行(断点)。也可以通过调试器来查看MCU芯片在运行时的相关信息,比如查看堆栈、程序指针、累加器、状态寄存器、SRAM存储空间或者其它特殊功能寄存器等。
发明内容
本发明的目的在于提供一种微控制器芯片中的调试单元,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种微控制器芯片中的调试单元,微控制器芯片内部包括IO控制单元IO_CTRL、串行通信调试接口模块SC_INTF、调试模式控制模块DEBUG_CTRL、程序存储器PMEM以及微控制器内核MCU_CORE,微控制器芯片通过串行通信调试接口模块SC_INTF与芯片外部进行串行通信,串行通信调试接口模块SC_INTF内部包括串行接收单元RXC以及串行发送单元TXC,串行接收单元RXC负责完成串行通信调试的接收过程,串行发送单元RXC负责完成串行通信调试的发送过程,串行通信调试接口模块SC_INTF与芯片外部上位机通过调试通信数据端口DDA进行串行通信,当调试通信数据端口DDA为输入状态时,IO控制单元IO_CTRL通过接收数据信号rxd将芯片外部的数据传送至串行接收单元RXC进行处理,当微控制器芯片需要传送数据至芯片外部的上位机时,调试通信数据端口DDA为输出状态,串行发送单元TXC通过发送数据信号txd将数据传送至IO控制单元IO_CTRL。
作为本发明再进一步的方案:所述调试通信数据端口DDA是一个双向端口。
与现有技术相比,本发明的有益效果是:本发明采用串行通信调试接口只需要1个双向端口即可以完成微控制器芯片与芯片外部上位机的通信,实现上位机对微控制器芯片的调试。本方案与需要2个端口进行通信的普通调试方案相比,节省了1个端口,从而节省芯片的生产成本。本方案中采用的串行通信调试接口中物理层协议定义的通信起始位、通信结束位、比特0、比特1、字节分界位的相互之间的差异较大,即使在工作时钟频率存在较大偏差的情况下,依然能够保证数据的正常通信。调试方案中实现上位机对微控制器芯片内部数据存储器空间或者特殊功能寄存器的读写时,无需增加过多的逻辑资源,而是使用替代程序存储器指令码的方式,利用微控制器芯片内核的逻辑资源即可以实现,从而节省芯片的面积、节约生产成本。
附图说明
图1为本发明中微控制器芯片的原理框图。
图2为本发明中串行通信调试接口数据格式。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
请参阅图1~2,本发明实施例中,一种微控制器芯片中的调试单元,微控制器芯片包括IO控制单元IO_CTRL、串行通信调试接口模块SC_INTF、调试模式控制模块DEBUG_CTRL、程序存储器PMEM以及微控制器内核MCU_CORE。
在本方案中,微控制器芯片通过串行通信调试接口模块SC_INTF与芯片外部进行串行通信。串行通信调试接口模块SC_INTF内部包括串行接收单元RXC以及串行发送单元TXC。串行接收单元RXC负责完成串行通信调试的接收过程。串行发送单元RXC负责完成串行通信调试的发送过程。调试通信数据端口DDA是一个双向端口,微控制器芯片通过串行通信调试接口模块SC_INTF与芯片外部上位机进行串行通信时只需要这1根信号线就可以完成。串行通信调试接口的数据通讯格式中的通信起始位、通信结束位、比特0、比特1、字节分界位的定义如图 2所示。通信起始位或者通信结束位皆为14个单位时间Tu的低电平;比特0为8个单位时间的低电平接着2个单位时间的高电平;比特1为3个单位时间的低电平接着7个单位时间的高电平;字节分界位为连接2个字节之间的分界,它的格式为12个单位时间的高电平。本方案中采用的串行通信调试接口中物理层协议定义的通信起始位、通信结束位、比特0、比特1、字节分界位的相互之间的差异较大,即使在工作时钟频率存在较大偏差的情况下,依然能够保证数据的正常通信。当调试通信数据端口DDA为输入状态时,IO控制单元IO_CTRL通过接收数据信号rxd将芯片外部的数据传送至串行接收单元(RXC)进行处理。当微控制器芯片需要传送数据至芯片外部的上位机时,调试通信数据端口DDA为输出状态,串行发送单元TXC通过发送数据信号txd将数据传送至IO控制单元IO_CTRL。
在微控制器芯片进入调试模式后,芯片外部的上位机将调试指令单步、断点、全速等通过串行通信数据输送至芯片内部,串行通信调试接口模块SC_INTF将串行通信数据进行并行化处理,然后通过并行通信总线bus_pc与调试模式控制模块DEBUG_CTRL进行数据交互。调试模式控制模块DEBUG_CTRL内部对并行通信总线bus_pc送过来的数据进行译码,然后通过调试控制信号ctrl_dbg输送至微控制器内核MCU_CORE,微控制器内核根据调试控制信号作出相应的操作。在调试模式下,芯片外部的上位机也可以通过串行通信读取到微控制器芯片运行的实时状态。这些实时状态包括堆栈、程序指针、累加器、状态寄存器等信息。除了上述的实时状态信息之外,在调试模式下,用户还可以获得微控制器芯片内部数据存储器空间和所有特殊功能寄存器的值,从而使用户可以较为全面地获知芯片执行程序时的情况。
在调试模式下,上位机获得数据存储器空间或者特殊功能寄存器的值的原理如图1所示。当微控制器芯片正常运行时,调试模式控制模块DEBUG_CTRL输出的调试模式标志信号mode_dbg为低电平有效状态,指令码选择器MUX选择程序存储器PMEM中的指令码输送至微控制器内核,微控制器内核将根据此指令码执行相应的操作。芯片处于调试模式时,调试模式控制模块DEBUG_CTRL输出的调试模式标志信号mode_dbg为高电平有效状态。当需要获得数据存储器空间或者特殊功能寄存器的值时,外部上位机需要先将累加器、状态寄存器进行备份,然后调试模式控制模块DEBUG_CTRL将通过调试指令码信号instr_dbg输出一组特定的指令码。当选择器MUX检测到调试模式标志信号mode_dbg为高电平有效状态时,指令码选择器MUX选择调试指令码信号instr_dbg上的替代指令码输送至微控制器内核。然后调试模式控制模块DEBUG_CTRL将驱动微控制器内核执行一条指令,并且在控制微控制器内核在执行完此指令后立即停止。此特定的指令码与微控制器芯片正常运行时的“MOV ACC,R”一样,即执行完此指令码后,需要获得的数据存储器空间或者特殊功能寄存器的值被复制至累加器中,此后,上位机再请求芯片通过串行通信调试接口将累加器的值送至上位机。通过上述过程,上位机可以获取一个地址单元的值,待上位机将所有地址单元的值读出后,需要再将累加器和状态寄存器恢复为最被的备份值。在调试模式下,上位机还可以通过上述的替换指令机制,改写芯片内部的状态值、数据存储器空间或者特殊功能寄存器的值。此过程的原理与读数据存储器空间或者特殊功能寄存器的过程相似。调试方案中实现上位机对微控制器芯片内部数据存储器空间或者特殊功能寄存器的读写时,无需增加过多的逻辑资源,而是使用替代程序存储器指令码的方式,利用微控制器芯片内核的逻辑资源即可以实现,从而节省芯片的面积、节约生产成本。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (2)
1.一种微控制器芯片中的调试单元,微控制器芯片内部包括IO控制单元IO_CTRL、串行通信调试接口模块SC_INTF、调试模式控制模块DEBUG_CTRL、程序存储器PMEM以及微控制器内核MCU_CORE,其特征在于,微控制器芯片通过串行通信调试接口模块SC_INTF与芯片外部进行串行通信,串行通信调试接口模块SC_INTF内部包括串行接收单元RXC以及串行发送单元TXC,串行接收单元RXC负责完成串行通信调试的接收过程,串行发送单元RXC负责完成串行通信调试的发送过程,串行通信调试接口模块SC_INTF与芯片外部上位机通过调试通信数据端口DDA进行串行通信,当调试通信数据端口DDA为输入状态时,IO控制单元IO_CTRL通过接收数据信号rxd将芯片外部的数据传送至串行接收单元RXC进行处理,当微控制器芯片需要传送数据至芯片外部的上位机时,调试通信数据端口DDA为输出状态,串行发送单元TXC通过发送数据信号txd将数据传送至IO控制单元IO_CTRL。
2.根据权利要求1所述的微控制器芯片中的调试单元,其特征在于,所述调试通信数据端口DDA是一个双向端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611157025.8A CN106776433A (zh) | 2016-12-15 | 2016-12-15 | 一种微控制器芯片中的调试单元 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611157025.8A CN106776433A (zh) | 2016-12-15 | 2016-12-15 | 一种微控制器芯片中的调试单元 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106776433A true CN106776433A (zh) | 2017-05-31 |
Family
ID=58889006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611157025.8A Pending CN106776433A (zh) | 2016-12-15 | 2016-12-15 | 一种微控制器芯片中的调试单元 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106776433A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101154183A (zh) * | 2006-09-29 | 2008-04-02 | 上海海尔集成电路有限公司 | 一种微控制器嵌入式在线仿真调试系统 |
CN201051255Y (zh) * | 2007-03-23 | 2008-04-23 | 中国科学院光电技术研究所 | 基于uart和双任务模型的dsp实时调试平台 |
CN101261601A (zh) * | 2008-04-25 | 2008-09-10 | 浙江大学 | 一种微处理器调试方法及所用的微处理器调试模块 |
CN101963934A (zh) * | 2010-10-27 | 2011-02-02 | 山东大学 | 一种基于8051核的片上系统的在线调试方法 |
CN102662835A (zh) * | 2012-03-23 | 2012-09-12 | 凌阳科技股份有限公司 | 一种针对嵌入式系统的程序调试方法及嵌入式系统 |
-
2016
- 2016-12-15 CN CN201611157025.8A patent/CN106776433A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101154183A (zh) * | 2006-09-29 | 2008-04-02 | 上海海尔集成电路有限公司 | 一种微控制器嵌入式在线仿真调试系统 |
CN201051255Y (zh) * | 2007-03-23 | 2008-04-23 | 中国科学院光电技术研究所 | 基于uart和双任务模型的dsp实时调试平台 |
CN101261601A (zh) * | 2008-04-25 | 2008-09-10 | 浙江大学 | 一种微处理器调试方法及所用的微处理器调试模块 |
CN101963934A (zh) * | 2010-10-27 | 2011-02-02 | 山东大学 | 一种基于8051核的片上系统的在线调试方法 |
CN102662835A (zh) * | 2012-03-23 | 2012-09-12 | 凌阳科技股份有限公司 | 一种针对嵌入式系统的程序调试方法及嵌入式系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8990462B2 (en) | Storage device, computing system including the same and data transferring method thereof | |
CN100565472C (zh) | 一种适用于多处理器核系统芯片的调试方法 | |
CN100566278C (zh) | 在使用串行数据传送总线的通信系统中的从设备 | |
US8825922B2 (en) | Arrangement for processing trace data information, integrated circuits and a method for processing trace data information | |
CN204537117U (zh) | 一种基于微处理器的fpga远程在线升级系统 | |
CN107111572B (zh) | 用于避免死锁的方法和电路 | |
CN101799795A (zh) | 一种1553b总线监控器及具有该监控器的总线系统 | |
CN102347896A (zh) | 一种基于以太网加载fpga和dsp的平台及其实现方法 | |
CN103399830B (zh) | 通过PCI Express总线读取计算机物理内存的设备及方法 | |
CN107194257B (zh) | 一种基于国产tcm芯片的可信系统 | |
CN101154207A (zh) | 一种微控制器配置接口操作方法 | |
CN101510185A (zh) | 一种高速总线向低速总线写入、读取数据的方法和装置 | |
CN101122783A (zh) | 单片机存储系统 | |
CN203260029U (zh) | 基于fpga的系统芯片原型验证调试装置 | |
CN105335548A (zh) | 一种用于ice的mcu仿真方法 | |
CN106547636A (zh) | 除错系统与方法 | |
CN106773954A (zh) | 一种微控制器芯片中的工作模式控制方法 | |
CN115033444A (zh) | 基于8051core在线调试电路控制装置及控制方法 | |
CN104461796B (zh) | 用于嵌入式8051cpu的jtag调试模块及调试方法 | |
WO2016184170A1 (zh) | Smi接口器件的调试装置及方法、存储介质 | |
CN102193860B (zh) | 微控制器在线调试电路及方法、微控制器 | |
CN102110045B (zh) | 实时显示调试信息的仿真器 | |
CN103064817B (zh) | 一种简化两线式串行数据总线传输方法 | |
CN103150262B (zh) | 管道式串行接口闪存访问装置 | |
CN106776433A (zh) | 一种微控制器芯片中的调试单元 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170531 |