CN110362440A - 一种带虚拟uart的jtag调试系统 - Google Patents
一种带虚拟uart的jtag调试系统 Download PDFInfo
- Publication number
- CN110362440A CN110362440A CN201910529501.1A CN201910529501A CN110362440A CN 110362440 A CN110362440 A CN 110362440A CN 201910529501 A CN201910529501 A CN 201910529501A CN 110362440 A CN110362440 A CN 110362440A
- Authority
- CN
- China
- Prior art keywords
- jtag
- module
- virtual uart
- uart
- data
- 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.)
- Granted
Links
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/273—Tester hardware, i.e. output processing circuits
-
- 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
- G06F11/2733—Test interface between tester and unit under test
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)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明涉及芯片测试技术领域,特别涉及一种带虚拟UART的JTAG调试系统。所述一种带虚拟UART的JTAG调试系统,包括:PC端和SOC端,所述PC端通讯连接所述SOC端;所述PC端包括:gdb调试器、openocd和JTAG驱动;所述SOC端包括:JTAG控制器、CPU和总线矩阵;所述JTAG控制器包括:虚拟UART模块;所述虚拟UART模块通过总线接口连接总线矩阵。通过在JTAG控制器内设置虚拟UART模块,可实现UART数据输入输出功能,又无需实际的UART接口芯片引脚引出,在节约了引脚资源的同时,仍确保UART功能的实现。
Description
技术领域
本发明涉及芯片测试技术领域,特别涉及一种带虚拟UART的JTAG调试系统。
背景技术
JTAG(Joint Test Action Group;联合测试工作组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSP、FPGA、SOC器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。
UART即通用异步收发传输器,简称串口,一般采用RS232标准。常用于中低速的通讯。
SOC芯片一般都会带有调试接口,典型的为JTAG接口和UART接口。通过JTAG调试接口,软件开发人员可以方便地控制芯片中CPU的运行,方便快捷地调试代码。通过UART接口,软件开发人员可以方便的查看程序运行过程中的打印信息,输入程序运行时所需的数据。
现有技术中,SOC芯片需要JTAG接口和UART接口两种调试接口,而两种接口都需要通过芯片引脚引出,浪费宝贵的引脚资源。
发明内容
为此,需要提供一种带虚拟UART的JTAG调试系统,用以解决现有SOC芯片需要JTAG接口和UART接口两种调试接口,而两种接口都需要通过芯片引脚引出,浪费引脚资源的问题。具体技术方案如下:
一种带虚拟UART的JTAG调试系统,包括:PC端和SOC端,所述PC端通讯连接所述SOC端;所述PC端包括:gdb调试器、openocd和JTAG驱动;所述SOC端包括:JTAG控制器、CPU和总线矩阵;所述JTAG控制器包括:虚拟UART模块;所述虚拟UART模块通过总线接口连接总线矩阵。
进一步的,所述JTAG控制器还包括:模块选择寄存器和DEBUG模块;所述模块选择寄存器用于:选择是对DEBUG模块还是虚拟UART模块进行操作;所述DEBUG模块连接CPU的DEBUG模块。
进一步的,所述虚拟UART模块包括:总线接口、数据寄存器A、读FIFO、写FIFO、数据寄存器B和JTAG逻辑;所述总线接口对接标准总线;所述数据寄存器A用于:供总线端访问;所述数据寄存器A还用于:总线端写数据至写FIFO,或从读FIFO读数据;所述数据寄存器B用于:供JTAG端访问;所述数据寄存器B还用于:JTAG端写数据至写FIFO,或从读FIFO读数据;所述JTAG逻辑用于:将JTAG接口信号转换成对数据寄存器B的读写访问。
进一步的,所述虚拟UART模块还包括:状态寄存器A和状态寄存器B;所述状态寄存器A或状态寄存器B用于:记录读FIFO和写FIFO的空满状态。
进一步的,所述PC端通过JTAG线和JTAG适配器连接所述SOC端。
本发明的有益效果是:通过在JTAG控制器内设置虚拟UART模块,可实现UART数据输入输出功能,又无需实际的UART接口芯片引脚引出,在节约了引脚资源的同时,仍确保JTAG调试系统原有的调试功能。
附图说明
图1为具体实施方式所述一种带虚拟UART的JTAG调试系统的模块示意图;
图2为具体实施方式所述JTAG控制器的示意图;
图3为具体实施方式所述虚拟UART模块的示意图;
图4为具体实施方式所述带状态寄存器的虚拟UART模块的示意图;
图5为具体实施方式所述一种带虚拟UART的JTAG调试系统的模块示意图。
附图标记说明:
100、带虚拟UART的JTAG调试系统,
101、PC端,
102、SOC端,
1011、gdb调试器,
1012、openocd,
1013、JTAG驱动,
1021、JTAG控制器,
1022、CPU,
1023、总线矩阵,
10211、虚拟UART模块,
10212、模块选择寄存器,
10213、DEBUG模块,
102111、总线接口,
102112、数据寄存器A,
102113、写FIFO,
102114、读FIFO,
102115、数据寄存器B,
102116、JTAG逻辑,
102117、状态寄存器A,
102118、状态寄存器B。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
请参阅图1至图5,在本实施方式中,一种带虚拟UART的JTAG调试系统100的具体实施方式如下:
一种带虚拟UART的JTAG调试系统100,包括:PC端101和SOC端102,所述PC端101通讯连接所述SOC端102;所述PC端101包括:gdb调试器1011、openocd1012和JTAG驱动1013;所述SOC端102包括:JTAG控制器1021、CPU1022和总线矩阵1023;所述JTAG控制器1021包括:虚拟UART模块10211;所述虚拟UART模块10211通过总线接口102111连接总线矩阵1023。
通过在JTAG控制器1021内设置虚拟UART模块10211,可实现UART数据输入输出功能,又无需实际的UART接口芯片引脚引出,在节约了引脚资源的同时,仍确保JTAG调试系统原有的调试功能。
请参阅图2,在本实施方式中,所述JTAG控制器1021还包括:模块选择寄存器10212和DEBUG模块10213;所述模块选择寄存器10212用于:选择是对DEBUG模块10213还是虚拟UART模块10211进行操作;所述DEBUG模块10213连接CPU1022的DEBUG模块10213。
其中DEBUG模块10213用于负责CPU1022的正常调试,虚拟UART模块10211实现UART的数据输入输出功能。确保了JTAG调试系统原有的JTAG和UART二者的正常调试功能。
请参阅图3,在本实施方式中,所述虚拟UART模块10211包括:总线接口102111、数据寄存器A102112、读FIFO102114、写FIFO102113、数据寄存器B102115和JTAG逻辑102116;所述总线接口102111对接标准总线;所述数据寄存器A102112用于:供总线端访问;所述数据寄存器A102112还用于:总线端写数据至写FIFO102113,或从读FIFO102114读数据;所述数据寄存器B用于:供JTAG端访问;所述数据寄存器B还用于:JTAG端写数据至写FIFO102113,或从读FIFO102114读数据;所述JTAG逻辑102116用于:将JTAG接口信号转换成对数据寄存器B的读写访问。具体可采用如下方式:
总线可通过数据寄存器A102112写数据到写FIFO102113或是从读FIFO102114读取数据,JTAG接口可通过数据寄存器B写数据到读FIFO102114或是从写FIFO102113读取数据。
进一步的,请参阅图4,在本实施方式中,为了反映读FIFO102114和写FIFO102113的空满状态,所述虚拟UART模块10211还包括:状态寄存器A102117和状态寄存器B102118;所述状态寄存器A102117或状态寄存器B102118用于:记录读FIFO102114和写FIFO102113的空满状态。具体可采用如下方式:
当SOC的软件代码需要往虚拟UART打印数据时,通过总线接口102111访问虚拟UART模块10211,查询状态寄存器A102117,如果写FIFO102113满,则等待,否则往写FIFO102113写入数据。而PC端101的openocd1012程序则定时地进行查询状态寄存器B102118,发现写FIFO102113中有数据,则读出,并在PC上显示出来。
当SOC的软件代码需要读取虚拟UART的数据时,通过总线接口102111访问虚拟UART模块10211,查询寄状态寄存器A102117,看读FIFO102114是否数据,如果有,则读取,否则,继续查询。而PC端101可通过gdb调试器1011,写数据到openocd.openocd检测gdb写过来的数据,判断是否是写到虚拟UART模块10211。如果是,查询状态寄存器B102118,如果读FIFO102114满,则等待,否则往读FIFO102114写入相应数据。
请参阅图5,在本实施方式中,所述PC端101通过JTAG线和JTAG适配器连接所述SOC端102。
需要说明的是,尽管在本文中已经对上述各实施例进行了描述,但并非因此限制本发明的专利保护范围。因此,基于本发明的创新理念,对本文所述实施例进行的变更和修改,或利用本发明说明书及附图内容所作的等效结构或等效流程变换,直接或间接地将以上技术方案运用在其他相关的技术领域,均包括在本发明的专利保护范围之内。
Claims (5)
1.一种带虚拟UART的JTAG调试系统,其特征在于,包括:PC端和SOC端,所述PC端通讯连接所述SOC端;
所述PC端包括:gdb调试器、openocd和JTAG驱动;
所述SOC端包括:JTAG控制器、CPU和总线矩阵;
所述JTAG控制器包括:虚拟UART模块;
所述虚拟UART模块通过总线接口连接总线矩阵。
2.根据权利要求1所述的一种带虚拟UART的JTAG调试系统,其特征在于,
所述JTAG控制器还包括:模块选择寄存器和DEBUG模块;
所述模块选择寄存器用于:选择是对DEBUG模块还是虚拟UART模块进行操作;
所述DEBUG模块连接CPU的DEBUG模块。
3.根据权利要求1所述的一种带虚拟UART的JTAG调试系统,其特征在于,
所述虚拟UART模块包括:总线接口、数据寄存器A、读FIFO、写FIFO、数据寄存器B和JTAG逻辑;
所述总线接口对接标准总线;
所述数据寄存器A用于:供总线端访问;
所述数据寄存器A还用于:总线端写数据至写FIFO,或从读FIFO读数据;
所述数据寄存器B用于:供JTAG端访问;
所述数据寄存器B还用于:JTAG端写数据至写FIFO,或从读FIFO读数据;
所述JTAG逻辑用于:将JTAG接口信号转换成对数据寄存器B的读写访问。
4.根据权利要求1所述的一种带虚拟UART的JTAG调试系统,其特征在于,
所述虚拟UART模块还包括:状态寄存器A和状态寄存器B;
所述状态寄存器A或状态寄存器B用于:记录读FIFO和写FIFO的空满状态。
5.根据权利要求1所述的一种带虚拟UART的JTAG调试系统,其特征在于,
所述PC端通过JTAG线和JTAG适配器连接所述SOC端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910529501.1A CN110362440B (zh) | 2019-06-19 | 2019-06-19 | 一种带虚拟uart的jtag调试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910529501.1A CN110362440B (zh) | 2019-06-19 | 2019-06-19 | 一种带虚拟uart的jtag调试系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110362440A true CN110362440A (zh) | 2019-10-22 |
CN110362440B CN110362440B (zh) | 2022-06-21 |
Family
ID=68217402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910529501.1A Active CN110362440B (zh) | 2019-06-19 | 2019-06-19 | 一种带虚拟uart的jtag调试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110362440B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111722948A (zh) * | 2020-06-05 | 2020-09-29 | 河海大学常州校区 | 一种arm指令集软错误故障注入系统及其方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110124617A (ko) * | 2010-05-11 | 2011-11-17 | 삼성전자주식회사 | 시스템-온-칩 및 그것의 디버깅 방법 |
CN105405280A (zh) * | 2015-10-22 | 2016-03-16 | 宁波三星医疗电气股份有限公司 | 一种用于调试电力采集终端并获得抄表信息的实现方法 |
CN106598909A (zh) * | 2016-11-11 | 2017-04-26 | 湘潭大学 | 一种可编程片上系统构建方法 |
CN106776195A (zh) * | 2016-12-16 | 2017-05-31 | 福州瑞芯微电子股份有限公司 | 一种soc芯片调试方法和设备 |
-
2019
- 2019-06-19 CN CN201910529501.1A patent/CN110362440B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110124617A (ko) * | 2010-05-11 | 2011-11-17 | 삼성전자주식회사 | 시스템-온-칩 및 그것의 디버깅 방법 |
CN105405280A (zh) * | 2015-10-22 | 2016-03-16 | 宁波三星医疗电气股份有限公司 | 一种用于调试电力采集终端并获得抄表信息的实现方法 |
CN106598909A (zh) * | 2016-11-11 | 2017-04-26 | 湘潭大学 | 一种可编程片上系统构建方法 |
CN106776195A (zh) * | 2016-12-16 | 2017-05-31 | 福州瑞芯微电子股份有限公司 | 一种soc芯片调试方法和设备 |
Non-Patent Citations (2)
Title |
---|
NETKISSER: ""Jtag+OpenOCD+GDB调试"", 《HTTP://BLOG.CHINAUNIX.NET/UID-7585066-ID-2048721.HTML》 * |
刘慧: ""基于SOC嵌入式处理器调试系统的开发与研究"", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111722948A (zh) * | 2020-06-05 | 2020-09-29 | 河海大学常州校区 | 一种arm指令集软错误故障注入系统及其方法 |
CN111722948B (zh) * | 2020-06-05 | 2023-06-13 | 河海大学常州校区 | 一种arm指令集软错误故障注入系统及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110362440B (zh) | 2022-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5983379A (en) | Test access port controller and a method of effecting communication using the same | |
US6088822A (en) | Integrated circuit with tap controller | |
EP0840219B1 (en) | An integrated circuit device and method of communication therewith | |
EP0840220B1 (en) | An integrated circuit device and method of communication therewith | |
US6189140B1 (en) | Debug interface including logic generating handshake signals between a processor, an input/output port, and a trace logic | |
US6142683A (en) | Debug interface including data steering between a processor, an input/output port, and a trace logic | |
US6145100A (en) | Debug interface including timing synchronization logic | |
US6154856A (en) | Debug interface including state machines for timing synchronization and communication | |
US6430727B1 (en) | Diagnostic procedures in an integrated circuit device | |
EP0652516A1 (en) | Integrated microprocessor | |
JPH02287635A (ja) | マイクロコンピュータ,マイクロプロセッサおよびコア・プロセッサ集積回路用デバッグ周辺装置 | |
CN102662835A (zh) | 一种针对嵌入式系统的程序调试方法及嵌入式系统 | |
CN100487668C (zh) | 一种嵌入式处理器的调试方法 | |
US20060248391A1 (en) | State machine-based command line debugger | |
CN100585568C (zh) | 一种ahb总线测试方法与系统 | |
CN111090603A (zh) | 一种lvds转usb3.0适配器 | |
US6484273B1 (en) | Integrated EJTAG external bus interface | |
US6041378A (en) | Integrated circuit device and method of communication therewith | |
CN110362440A (zh) | 一种带虚拟uart的jtag调试系统 | |
EP0840235B1 (en) | Message protocol | |
CN101329647A (zh) | 一种仿真片内flash的仿真器 | |
CN115017038A (zh) | 一种兼容apb协议的jtag调试系统 | |
EP1367489A1 (en) | A microprocessor development system | |
CN100394359C (zh) | 一种用于智能卡仿真调试系统的接口 | |
CN101764716A (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 | ||
CB02 | Change of applicant information |
Address after: 350003 building 18, No.89, software Avenue, Gulou District, Fuzhou City, Fujian Province Applicant after: Ruixin Microelectronics Co.,Ltd. Address before: 350003 building 18, No.89, software Avenue, Gulou District, Fuzhou City, Fujian Province Applicant before: FUZHOU ROCKCHIP ELECTRONICS Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |