[go: up one dir, main page]

CN101382583B - JTAG debugging method for multi-core microprocessor - Google Patents

JTAG debugging method for multi-core microprocessor Download PDF

Info

Publication number
CN101382583B
CN101382583B CN200810143445XA CN200810143445A CN101382583B CN 101382583 B CN101382583 B CN 101382583B CN 200810143445X A CN200810143445X A CN 200810143445XA CN 200810143445 A CN200810143445 A CN 200810143445A CN 101382583 B CN101382583 B CN 101382583B
Authority
CN
China
Prior art keywords
core
debugging
tdi
jtag
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.)
Expired - Fee Related
Application number
CN200810143445XA
Other languages
Chinese (zh)
Other versions
CN101382583A (en
Inventor
陈书明
高晓梅
孙海燕
扈啸
陈跃跃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN200810143445XA priority Critical patent/CN101382583B/en
Publication of CN101382583A publication Critical patent/CN101382583A/en
Application granted granted Critical
Publication of CN101382583B publication Critical patent/CN101382583B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明公开了一种多核微处理器JTAG调试方法,要解决的技术问题是通过单一JTAG调试接口对多核处理器内多个IP核进行调试。技术方案是先在多核微处理器中增加一个由链选指令寄存器、译码器、第一多路选择器、第二多路选择器组成的调试支持模块作为整个多核芯片的调试接口,且在多核芯片的调试软件中增加一条链选命令,然后由JTAG仿真器保持k个TCK时钟低电平的链选命令的使能信号,最后采用调试支持模块对多核微处理器进行调试。采用本发明可经由一个JTAG调试接口调试多核芯片中多个内核,支持的内核数多达2k个,且原有单核的调试软件可重用。

Figure 200810143445

The invention discloses a multi-core microprocessor JTAG debugging method, and the technical problem to be solved is to debug multiple IP cores in the multi-core processor through a single JTAG debugging interface. The technical solution is to first add a debugging support module composed of chain selection instruction register, decoder, first multiplexer and second multiplexer in the multi-core microprocessor as the debugging interface of the whole multi-core chip, and in A chain selection command is added in the debugging software of the multi-core chip, and then the enable signal of the chain selection command of k TCK clock low levels is maintained by the JTAG emulator, and finally the multi-core microprocessor is debugged by using the debugging support module. The invention can debug a plurality of cores in a multi-core chip through a JTAG debugging interface, the number of supported cores is up to 2 k , and the original single-core debugging software can be reused.

Figure 200810143445

Description

多核微处理器JTAG调试方法 JTAG debugging method for multi-core microprocessor

技术领域:本发明涉及微处理器芯片的基于JTAG标准的调试方法,尤其是对多核微处理器芯片进行JTAG调试的方法。Technical field: the present invention relates to a debugging method based on the JTAG standard of a microprocessor chip, especially a method for JTAG debugging of a multi-core microprocessor chip.

背景技术:随着问题规模的增大和对实时性要求的提高,单核微处理器的处理能力已难以满足需求。多核技术为设备开发人员带来了前所未有的优势体验,包括更高的处理器性能、更高的功率利用效率和针对嵌入式设备的更小的物理内存体积。然而,多核结构显著增加了系统的复杂度,随着单芯片内多核结构的普及,多处理器系统的调试问题越显突出。Background technology: With the increase of the scale of the problem and the improvement of the real-time requirement, the processing capability of the single-core microprocessor has been difficult to meet the requirement. Multi-core technology brings unprecedented advantages to device developers, including higher processor performance, higher power utilization efficiency and smaller physical memory size for embedded devices. However, the multi-core structure significantly increases the complexity of the system. With the popularization of the multi-core structure in a single chip, the debugging problem of the multi-processor system becomes more and more prominent.

目前,大多数IP(Intellectual Property,知识产权)模块都采用IEEE1149.1标准的JTAG接口作为其调试接口,这就带来了一个问题:这个芯片上有多个TAP(Test Access Port,测试访问端口)控制器。一些IP提供商已经利用自己开发的芯片级通道支持调试单个IP模块。为了能够对多个内核进行调试,一个标准的可访问所有TAP控制器的芯片级通道十分必要。另外一个复杂的系统芯片上,多个不同的内核会使用不同的调试工具,如何让这些单个IP模块的调试工具继续发挥作用也是一个重要问题。如果仅仅在多核微处理器芯片上集成多个需要调试的IP就需要开发新的调试软件显然是一种浪费。最好的办法是能够重用那些针对单IP的调试工具,软件上不作修改或只做少量的修改。At present, most IP (Intellectual Property, intellectual property rights) modules use the JTAG interface of the IEEE1149.1 standard as their debugging interface, which brings a problem: there are multiple TAP (Test Access Port, test access ports) ) controller. Some IP providers have used their own developed chip-level channels to support debugging a single IP block. In order to be able to debug multiple cores, a standard on-chip access to all TAP controllers is necessary. In addition, on a complex system chip, multiple different cores will use different debugging tools. How to make the debugging tools of these single IP modules continue to function is also an important issue. It is obviously a waste to develop new debugging software if only integrating multiple IPs that need to be debugged on a multi-core microprocessor chip. The best way is to be able to reuse those debugging tools for a single IP, with no or only a small amount of modification on the software.

在多内核处理器中,开发人员希望通过片外单一的JTAG接口访问片内集成的多个内核就可以对这些内核进行调试。目前,多核处理器JTAG调试最常用的方法是菊花链连接(Daisy-chain)方法,所有IP核的TDI(Test DataInput,测试数据输入)和TDO(Test Data Output,测试数据输出)连接成一个串行的链,IPi的TDO连接到IPi+1(1≤i≤n-1,n为IP核的个数)的TDI。控制信号TCK(Test Clock,测试时钟)、TMS(Test Mode Select,测试模式选择)和TRST(Test Reset,测试复位)连接到所有IP核的TAP控制器上。在指令扫描操作时,指令被串行移入每个IP核TAP的指令寄存器,这样就可以同时对多个TAP控制器进行访问,捕捉同一时刻各个IP核边界上的输入和输出信号,对于互联测试非常有价值。然而,这种单芯片上的菊花链连接方式存在两个缺点:首先,它与IEEE 1149.1协议不兼容;其次,它使得对n个IP核中的单个TAP控制器的测试访问变得复杂。In multi-core processors, developers hope to debug these cores by accessing multiple cores integrated on-chip through a single JTAG interface off-chip. At present, the most commonly used method for JTAG debugging of multi-core processors is the daisy-chain method. TDI (Test DataInput, test data input) and TDO (Test Data Output, test data output) of all IP cores are connected into a serial The chain of rows, the TDO of IP i is connected to the TDI of IP i+1 (1≤i≤n-1, n is the number of IP cores). The control signals TCK (Test Clock, test clock), TMS (Test Mode Select, test mode selection) and TRST (Test Reset, test reset) are connected to the TAP controllers of all IP cores. During the instruction scanning operation, the instruction is serially shifted into the instruction register of each IP core TAP, so that multiple TAP controllers can be accessed at the same time, and the input and output signals on the boundaries of each IP core can be captured at the same time. For interconnection testing Great value. However, this daisy-chain connection on a single chip has two disadvantages: first, it is not compatible with the IEEE 1149.1 protocol; second, it complicates test access to a single TAP controller in n IP cores.

为达到与IEEE 1149.1协议的兼容性,有人提出一种增加TAP连接模块TLM(TAP Linking Module)的方案,在多核微处理器芯片上只提供一个完全与IEEE 1149.1协议兼容的TAP接口,对外提供TDI、TMS、TCK、TRST和TD05个引脚,仿真器的JTAG调试接口通过TLM连接到各个TAP,TLM负责把JTAG调试接口的信号连接到某一个指定的要测试的IP核的TAP上,而芯片内部IP核的TAP与TLM进行互连,每个TAP除了绑定的JTAG调试接口的5根信号线外,还增加了选择信号SEL和使能信号ENA,通过SEL和ENA确定哪一个或哪几个IP核的TAP连接到仿真器的JTAG调试接口上。TLM根据SEL和ENA将仿真器的测试信号TDI、TMS、TCK、TRST传送到片内某个TAP相应的TDI、TMS、TCK和TRST端口,将该TAP的TDO端口输出的数据通过TDO引脚经过JTAG仿真器送达调试主机,以实现对多核芯片中的某个IP核的JTAG调试。但这种方法必须为IP核内部的TAP增加额外的选择和使能信号,这就必须修改IP核内部的TAP,将ENA和SEL信号加入TAP的设计中。每个TAP的TAP控制器从TLM获得的ENA作为输入使能或禁止该TAP,TAP中的指令寄存器增加SEL信号输出到TLM以响应扫入其指令寄存器的指令,这使硬件设计变得复杂,如果IP核是硬核,这种修改是不可能的。由于TLM可以连接多个IP核的TAP,且硬件上对TAP的修改使得除了要把原有的单IP核的调试软件进行修改外还要将修改后的单核调试软件集成为多核芯片的调试软件,这也使得调试软件的设计变得复杂,可重用性不好。In order to achieve compatibility with the IEEE 1149.1 protocol, someone proposed a scheme to increase the TAP connection module TLM (TAP Linking Module), which only provides a TAP interface fully compatible with the IEEE 1149.1 protocol on the multi-core microprocessor chip, and provides TDI externally. , TMS, TCK, TRST and TD05 pins, the JTAG debugging interface of the emulator is connected to each TAP through the TLM, and the TLM is responsible for connecting the signal of the JTAG debugging interface to the TAP of a specified IP core to be tested, and the chip The TAP of the internal IP core is interconnected with the TLM. In addition to the 5 signal lines of the bound JTAG debugging interface, each TAP also adds a selection signal SEL and an enable signal ENA. Which one or which ones are determined by SEL and ENA The TAP of each IP core is connected to the JTAG debugging interface of the emulator. TLM transmits the test signals TDI, TMS, TCK, and TRST of the emulator to the corresponding TDI, TMS, TCK, and TRST ports of a certain TAP in the chip according to SEL and ENA, and the data output by the TDO port of the TAP passes through the TDO pin. The JTAG emulator is sent to the debugging host to implement JTAG debugging of a certain IP core in the multi-core chip. However, this method must add additional selection and enable signals to the TAP inside the IP core, which requires modifying the TAP inside the IP core and adding the ENA and SEL signals to the design of the TAP. The TAP controller of each TAP obtains ENA from the TLM as an input to enable or disable the TAP, and the instruction register in the TAP increases the SEL signal output to the TLM in response to the instruction scanned into its instruction register, which makes the hardware design complicated. This modification is not possible if the IP core is a hard core. Since TLM can connect multiple IP-core TAPs, and the modification of TAP on the hardware makes it necessary to integrate the modified single-core debugging software into multi-core chip debugging in addition to modifying the original single-IP-core debugging software. Software, which also makes the design of the debugging software complicated, and the reusability is not good.

因此,多核处理器调试领域亟需一种能够兼容IEEE 1149.1协议,可重用各个内核的调试方法,对多核处理器各个内核进行调试。Therefore, in the field of multi-core processor debugging, there is an urgent need for a debugging method that is compatible with the IEEE 1149.1 protocol and can reuse each core to debug each core of the multi-core processor.

发明内容:Invention content:

本发明要解决的技术问题就是如何基于IEEE 1149.1标准,使得能够通过单一JTAG调试接口对多核处理器内集成的多个IP核进行JTAG调试。The technical problem to be solved by the present invention is exactly how to make it possible to carry out JTAG debugging to multiple IP cores integrated in a multi-core processor through a single JTAG debugging interface based on the IEEE 1149.1 standard.

本发明的技术方案包括以下步骤:Technical scheme of the present invention comprises the following steps:

第一步,在具有n个IP核的多核微处理器中增加一个芯片级的TAP控制器——调试支持模块DSM(Debug Support Module)。调试支持模块的设计方法是:The first step is to add a chip-level TAP controller in the multi-core microprocessor with n IP cores - Debug Support Module DSM (Debug Support Module). The design approach for the debug support module is:

调试支持模块是整个多核芯片的调试接口,它具有与IEEE 1149.1协议兼容的JTAG接口,除具有TDI、TMS、TCK、TRST、TDO这五个引脚与仿真器的JTAG调试接口相连外,还添加一个多核调试选择引脚接受链选命令的使能信号MDS(Mutil-core Debug Select);MDS由仿真器产生,选择JTAG仿真器的EMU0(Emulation 0,仿真脚0)或是EMU1((Emulation 1,仿真脚1)引脚作为MDS信号的输出引脚。调试支持模块与片内所有的IP核都相连,它将从仿真器输入的测试信号TDI、TMS、TCK和TRST信号传送到片内某个TAP相应的TDI、TMS、TCK和TRST端口,将该TAP的TDO端口输出的数据通过TDO引脚经过JTAG仿真器送达调试主机,以实现对多核芯片中的某个IP核的JTAG调试。The debugging support module is the debugging interface of the entire multi-core chip. It has a JTAG interface compatible with the IEEE 1149.1 protocol. In addition to the five pins TDI, TMS, TCK, TRST, and TDO, which are connected to the JTAG debugging interface of the emulator, it also adds A multi-core debug selection pin accepts the enable signal MDS (Mutil-core Debug Select) of the chain selection command; MDS is generated by the emulator, and selects EMU0 (Emulation 0, emulation pin 0) or EMU1 ((Emulation 1) of the JTAG emulator , the emulation pin 1) pin is used as the output pin of the MDS signal. The debugging support module is connected with all the IP cores in the chip, and it transmits the test signals TDI, TMS, TCK and TRST signals input from the emulator to an on-chip The corresponding TDI, TMS, TCK and TRST ports of each TAP, the data output by the TDO port of the TAP is delivered to the debugging host through the TDO pin through the JTAG emulator, so as to realize the JTAG debugging of a certain IP core in the multi-core chip.

调试支持模块由链选指令寄存器、译码器、第一多路选择器和第二多路选择器组成。JTAG仿真器的TCK和TRST通过调试支持模块与每个IP核的TAP控制器相连。链选指令寄存器的长度为k( k = [ log 2 n ] + 1 ( k ≠ 2 n ) log 2 n ( k = 2 n ) , n为多核芯片中集成的IP核的个数)位,它的输入端与JTAG仿真器的TDI和EMU0(或EMU1)引脚相连,从JTAG仿真器获得TDI和MDS,其输出端与译码器相连,MDS为低电平且保持k个TCK时钟时,串行输入的TDI逐位移入链选指令寄存器,MDS在第k+1个TCK时钟的上升沿由低电平变为高电平,此时链选指令寄存器将从TDI获得的k位二进制码作为链选指令码传送给译码器;译码器的输入端与EMU0(或EMU1)引脚和链选指令寄存器相连,输出端与第一多路选择器和第二多路选择器相连,MDS为高电平时,译码器将从链选指令寄存器输入的链选指令码译码成某个IP核的标识号(即IP核的序号),并将译码结果传送给第一多路选择器和第二多路选择器;第一多路选择器的输入端既与JTAG仿真器的TDI、TMS相连,又与译码器的输出端相连,输出端与所有IP核的TAP的TDI和TMS相连,它从JTAG仿真器获得TDI和TMS,从译码器获得译码结果,根据译码结果将TDI和TMS送给某个IP核TAP的TDI和TMS;第二多路选择器的输入端既与所有IP核TAP的TDO相连,又与译码器的输出端相连,其输出端与JTAG仿真器的TDO相连,根据译码结果将某个IP核传来的TDO送到JTAG仿真器的TDO引脚。The debugging support module is composed of a chain selection instruction register, a decoder, a first multiplexer and a second multiplexer. TCK and TRST of the JTAG emulator are connected with the TAP controller of each IP core through the debugging support module. The length of the chain selection instruction register is k( k = [ log 2 no ] + 1 ( k ≠ 2 no ) log 2 no ( k = 2 no ) , n is the number of IP cores integrated in the multi-core chip), its input terminal is connected to the TDI and EMU0 (or EMU1) pins of the JTAG emulator, TDI and MDS are obtained from the JTAG emulator, and its output terminal is connected to the decoding When MDS is low level and keeps k TCK clocks, the serial input TDI is shifted into the chain selection instruction register bit by bit, and MDS changes from low level to high level on the rising edge of the k+1 TCK clock , at this moment, the chain selection instruction register transmits the k-bit binary code obtained from TDI as the chain selection instruction code to the decoder; the input terminal of the decoder is connected with the EMU0 (or EMU1) pin and the chain selection instruction register, and the output terminal Connected with the first multiplexer and the second multiplexer, when MDS is high level, the decoder decodes the chain selection instruction code input from the chain selection instruction register into the identification number of a certain IP core (ie IP The serial number of the core), and the decoding result is sent to the first multiplexer and the second multiplexer; the input of the first multiplexer is connected with TDI and TMS of the JTAG emulator, and is connected with the decoding Connected to the output of the device, the output is connected to the TDI and TMS of all TAPs of the IP core, it obtains TDI and TMS from the JTAG emulator, obtains the decoding result from the decoder, and sends TDI and TMS to a certain TDI and TMS of each IP core TAP; the input end of the second multiplexer is connected with the TDO of all IP core TAPs, and is connected with the output end of the decoder again, and its output end is connected with the TDO of JTAG emulator, according to The decoding result sends the TDO from an IP core to the TDO pin of the JTAG emulator.

第二步,将原有单IP核的调试软件集成为多核芯片调试软件,并在多核芯片的调试软件中增加一条链选命令,链选命令格式为:intSelectIP(int IpNum),功能是将IpNum发送到仿真器,参数IpNum是各IP核的标识号,当IpNum为j时,表示选择第j(1≤j≤n)个IP核进行调试。The second step is to integrate the original single IP core debugging software into multi-core chip debugging software, and add a chain selection command in the multi-core chip debugging software. The chain selection command format is: intSelectIP(int IpNum), the function is to Sent to the emulator, the parameter IpNum is the identification number of each IP core. When IpNum is j, it means that the jth (1≤j≤n) IP core is selected for debugging.

第三步,由JTAG仿真器保持k个TCK时钟低电平的MDS信号。方法是:在JTAG仿真器的可编程逻辑中定义一个长度为p

Figure G200810143445XD00051
位、计数单位为k的计数器Counter,将Counter初值置为k,JTAG仿真器接收到调试主机发送的链选命令后,Counter在TCK时钟控制下开始计数,将EMU0(或EMU1)引脚的输出置为低电平,同时将从调试主机传来的IpNum从仿真器TDI引脚串行输出;Counter的值减到0时,将EMU0(或EMU1)引脚的输出置为高电平。这样在JTAG仿真器的可编程逻辑中就生成了k个TCK周期低电平的MDS信号。In the third step, the JTAG emulator keeps the MDS signal of k low-level TCK clocks. The method is: define a length of p in the programmable logic of the JTAG emulator
Figure G200810143445XD00051
Bit, counting unit is the counter Counter of k, the initial value of Counter is set to k, after the JTAG emulator receives the link selection command sent by the debugging host, the Counter starts counting under the control of the TCK clock, and the EMU0 (or EMU1) pin The output is set to low level, and the IpNum transmitted from the debugging host is serially output from the TDI pin of the emulator; when the value of Counter is reduced to 0, the output of the EMU0 (or EMU1) pin is set to high level. In this way, in the programmable logic of the JTAG emulator, low-level MDS signals of k TCK cycles are generated.

第四步,采用调试支持模块对多核微处理器进行调试,方法是:The fourth step is to use the debugging support module to debug the multi-core microprocessor, the method is:

步骤一,调试主机执行链选命令,将参数IpNum送给JTAG仿真器。Step 1, the debugging host executes the chain selection command, and sends the parameter IpNum to the JTAG emulator.

步骤二,JTAG仿真器收到IpNum后,生成保持k个TCK时钟低电平的MDS信号,由仿真器的EMU0(或EMU1)引脚输出到调试支持模块的多核调试选择引脚,同时将IpNum逐位输出到JTAG调试接口的TDI引脚。Step 2, after the JTAG emulator receives the IpNum, it generates an MDS signal that keeps k TCK clock low levels, and outputs it to the multi-core debug selection pin of the debug support module from the EMU0 (or EMU1) pin of the emulator, and simultaneously sets the IpNum Bit by bit output to the TDI pin of the JTAG debug interface.

步骤三,当MDS为低电平时(前k个TCK时钟),TDI串行移入调试支持模块的链选指令寄存器,当MDS由低电平变为高电平时(第k+1个TCK时钟),译码器开始译码。Step 3, when MDS is low level (the first k TCK clocks), TDI is serially shifted into the chain selection instruction register of the debugging support module, when MDS changes from low level to high level (the k+1th TCK clock) , the decoder starts decoding.

步骤四,根据IpNum的不同,译码器将链选指令码译码为第j个IP核的标识号,第一多路选择器收到译码结果后将从JTAG仿真器获得的TDI和TMS传送到第j个IP核的TAP的TDIj和TMSj,第二多路选择器收到译码结果后将该IP核TAP的输出TDOj传送到芯片调试接口的TDO然后经仿真器送达调试主机,调试主机调用集成在多核芯片调试软件中的IPj原有的单IP核调试软件对IPj进行调试。Step 4, according to the difference of IpNum, the decoder decodes the chain selection instruction code into the identification number of the jth IP core, and the TDI and TMS obtained from the JTAG emulator will be obtained by the first multiplexer after receiving the decoding result TDI j and TMS j of the TAP transmitted to the jth IP core, the second multiplexer receives the decoding result and transmits the output TDO j of the IP core TAP to the TDO of the chip debugging interface and then delivered by the emulator Debugging host, the debugging host invokes the original single IP core debugging software of IP j integrated in the multi-core chip debugging software to debug IP j .

采用本发明可以得到以下技术效果:Adopt the present invention can obtain following technical effect:

1.采用本发明开发人员可经由一个JTAG调试接口调试多核芯片中多个离散状态的内核,它避免了菊花链方法中所遇到的比特移位随着集成的内核的数目而改变的问题,因而在多核芯片结构中具有更高的性能。1. Adopt the developer of the present invention to debug the core of a plurality of discrete states in the multi-core chip via a JTAG debugging interface, it has avoided the bit shift that encounters in the daisy chain method and changes with the number of integrated cores, Therefore, it has higher performance in multi-core chip structure.

2.只需在多核芯片的调试软件中增加简单的链选命令,执行完链选命令之后,调用集成在多核芯片调试软件中的IP核原有的调试软件就可对多核芯片任意一个IP核进行调试,因此原有IP核的调试软件可重用。在主机端,无论是原有IP核的片上调试硬件还是调试软件都可以得到很好的重用性。在多核芯片中,无论芯片中集成的是哪种结构的IP核,只需将这些IP核原有的调试接口与调试支持模块进行互连,便可在多核芯片中复用这些IP核的片上调试硬件和原有的调试功能。2. Just add a simple chain selection command to the debugging software of the multi-core chip. After executing the chain selection command, call the original debugging software of the IP core integrated in the multi-core chip debugging software to control any IP core of the multi-core chip. Debugging, so the debugging software of the original IP core can be reused. On the host side, whether it is the on-chip debugging hardware or debugging software of the original IP core, good reusability can be obtained. In a multi-core chip, no matter what kind of structure of the IP core is integrated in the chip, the on-chip of these IP cores can be reused in the multi-core chip only by interconnecting the original debugging interface of these IP cores with the debugging support module. Debug hardware and legacy debug capabilities.

3.是一种可高度扩展的解决方法,由于链选指令寄存器为k位,可支持多达2k条链选命令,因此能够支持多达2k个内核的调试。3. It is a highly extensible solution. Since the chain selection instruction register is k bits, it can support up to 2 k chain selection commands, so it can support debugging of up to 2 k cores.

附图说明Description of drawings

图1是背景技术采用菊花链方法对多核微处理器进行调试时多个TAP的连接示意图;Fig. 1 is the connection schematic diagram of a plurality of TAPs when the background technology adopts the daisy chain method to debug the multi-core microprocessor;

图2是采用增加TLM方法对多核微处理器进行调试时的多个TAP的连接示意图;Fig. 2 is the connection schematic diagram of a plurality of TAPs when multi-core microprocessor is debugged by adopting the method of adding TLM;

图3是本发明调试支持模块与片内各个内核TAP的互连结构图;Fig. 3 is the interconnection structural diagram of debugging support module and each kernel TAP in chip of the present invention;

图4是本发明调试支持模块内部逻辑结构图;Fig. 4 is a diagram of the internal logic structure of the debugging support module of the present invention;

图5是本发明调试支持模块执行链选命令时所要求的MDS信号时序图。Fig. 5 is a timing diagram of the MDS signal required when the debugging support module of the present invention executes the chain selection command.

具体实施方式Detailed ways

图1是采用菊花链连接方法对多核微处理器进行调试时n个TAP的连接图:IP1的TAP的TDI连接到片外JTAG调试接口的TDI,IPi的TAP的TDO连接到IPi+1(1≤i≤n-1)TAP的TDI,IPnTAP的TDO连接到片外JTAG调试接口的TDO。各个IP核TAP的TDI信号和TDO信号连接成一个串行的链,控制信号TMS、TCK和TRST则是所有TAP共享,即片外JTAG调试接口的TMS、TCK和TRST与所有TAP的TMS、TCK和TRST都相连。这种方法在PCB板级的芯片互连测试中应用非常普遍,也可在单芯片中使用,实现对所有嵌入的TAP的访问以实现对多核微处理器各个IP核的调试。但它与IEEE 1149.1协议不兼容,且菊花链的连接方式使得对n个IP核中的单个TAP的测试访问变得复杂。Figure 1 is the connection diagram of n TAPs when debugging a multi-core microprocessor using the daisy chain connection method: the TDI of the TAP of IP 1 is connected to the TDI of the off-chip JTAG debugging interface, and the TDO of the TAP of IP i is connected to the IP i+ 1 (1≤i≤n-1) TDI of TAP, IP n TDO of TAP is connected to TDO of off-chip JTAG debug interface. The TDI signal and TDO signal of each IP core TAP are connected into a serial chain, and the control signals TMS, TCK and TRST are shared by all TAPs, that is, TMS, TCK and TRST of the off-chip JTAG debugging interface and TMS and TCK of all TAPs Both are connected to TRST. This method is widely used in PCB board-level chip interconnection testing, and can also be used in a single chip to realize access to all embedded TAPs to realize debugging of each IP core of a multi-core microprocessor. But it is not compatible with the IEEE 1149.1 protocol, and the daisy chain connection makes the test access to a single TAP in n IP cores complicated.

图2是采用增加TLM方法对多核微处理器进行调试时的多个TAP的连接示意图。TLM作为芯片唯一的调试接口,它的输入是TDI、TMS、TCK和TRST,输出是TDO。每个IP核TAP的5针信号TDI、TMS、TCK、TRST和TDO都与TLM进行互连,TLM负责把JTAG调试接口的信号连接到某一个指定的要测试的IP核的TAP上。这种方法需要为每个TAP增加选择信号SEL和使能信号ENA与TLM相连,通过SEL和ENA确定选择哪一个或哪几个IP核的TAP连接到芯片的TAP接口上。因此这种方法必须修改IP核内部的TAP,将SEL和ENA加入TAP的设计中,使硬件设计变得复杂。由于TLM可以连接多个IP核的TAP,且硬件上对TAP的修改使得原有IP核的调试软件必须进行修改后才能集成在多核芯片的调试软件中,这使得调试软件的设计变得复杂,可重用性不好。FIG. 2 is a schematic diagram of connection of multiple TAPs when debugging a multi-core microprocessor by adding a TLM method. TLM is the only debug interface of the chip, its input is TDI, TMS, TCK and TRST, and its output is TDO. The 5-pin signals TDI, TMS, TCK, TRST and TDO of each IP core TAP are interconnected with the TLM, and the TLM is responsible for connecting the signal of the JTAG debugging interface to a specified TAP of the IP core to be tested. This method needs to add a selection signal SEL and an enable signal ENA for each TAP to be connected to the TLM, and determine which or which TAPs of the IP core are selected to be connected to the TAP interface of the chip through SEL and ENA. Therefore, this method must modify the TAP inside the IP core, and add SEL and ENA to the design of the TAP, which makes the hardware design complicated. Since the TLM can connect multiple IP core TAPs, and the modification of the TAP on the hardware makes the original IP core debugging software must be modified before it can be integrated into the multi-core chip debugging software, which makes the design of the debugging software complicated. Bad reusability.

图3是本发明调试支持模块与片内各个内核TAP的互连结构图。Fig. 3 is a diagram of the interconnection structure between the debugging support module and each core TAP in the chip according to the present invention.

调试支持模块除具有TDI、TMS、TCK、TRST、TDO这五个输入引脚与仿真器的JTAG调试接口相连外,还有一个多核调试选择引脚接受链选命令的使能信号MDS,MDS由仿真器产生,JTAG仿真器的EMU0(或EMU1)引脚是MDS信号的输入引脚。调试支持模块的输出TDI1~TDIn,TMS1~TMSn,TCK_N,TRST_N分别与IP1~IPn的TAP的TDI、TMS、TCK、TRST相连(即IPj的TAP的TDI、TMS、TCK、TRST分别为输入信号TDIj、TMSj、TCK_N、TRST_N),调试支持模块将仿真器的测试信号TDI、TMS、TCK和TRST信号传送到片内要调试的某个IP核的TAP相应的TDI、TMS、TCK和TRST端口;调试支持模块另有TDO1~TDOn这n个输入分别与IP1~IPn的TAP的输出信号TDO相连,将被调试的IP核的TAP输出的数据通过TDO引脚经过JTAG仿真器送达调试主机。调试支持模块的输入TDI、TMS、TCK、TRST、MDS和输出TDO连接至片外作为整个芯片统一的JTAG接口,通过调试支持模块这样一个芯片级TAP控制器通道对多核芯片上的各个IP核进行JTAG调试。In addition to the five input pins of TDI, TMS, TCK, TRST, and TDO connected to the JTAG debug interface of the emulator, the debug support module also has a multi-core debug selection pin to accept the enable signal MDS of the chain selection command. MDS is controlled by Generated by the emulator, the EMU0 (or EMU1) pin of the JTAG emulator is the input pin of the MDS signal. The output TDI 1 ~ TDI n , TMS 1 ~ TMS n , TCK_N, TRST_N of the debugging support module are respectively connected with the TDI, TMS, TCK, TRST of the TAP of IP 1 ~ IP n (that is, the TDI, TMS, TCK of the TAP of IP j , TRST are input signals TDI j , TMS j , TCK_N, TRST_N respectively), the debugging support module transmits the test signals TDI, TMS, TCK and TRST signals of the emulator to the TAP corresponding TDI of a certain IP core to be debugged in the chip , TMS, TCK and TRST ports; the debugging support module also has n inputs TDO 1 ~ TDO n , which are respectively connected to the TAP output signal TDO of IP 1 ~ IP n , and the data output by the TAP of the IP core to be debugged is passed through TDO The pins are sent to the debug host via the JTAG emulator. The input TDI, TMS, TCK, TRST, MDS and output TDO of the debugging support module are connected to the off-chip as the unified JTAG interface of the whole chip, and each IP core on the multi-core chip is implemented through a chip-level TAP controller channel such as the debugging support module. JTAG debugging.

图4是本发明调试支持模块逻辑结构图。调试支持模块由链选指令寄存器、译码器、第一多路选择器和第二多路选择器组成。链选指令寄存器的输入端与JTAG仿真器的TDI和EMU0(或EMU1)相连,从仿真器获得TDI和MDS,输出端与译码器相连,将链选指令码送到译码器;译码器的输入端与EMU0(或EMU1)和链选指令寄存器相连,输出端与第一多路选择器和第二多路选择器相连;第二多路选择器的输入端分别与所有IP核的TAP的TDO和译码器的输出端相连,其输出端与JTAG仿真器的TDO相连,它在译码结果的控制下,选择某个IP核TAP的TDO送到仿真器的TDO引脚。MDS信号为低电平时,使能调试支持模块中的链选指令寄存器,TDI串行移入链选指令寄存器中。MDS信号维持k个TCK时钟周期之后由低电平变为高电平,此时链选指令寄存器中存入的便是链选指令码。当链选命令是选择IPj(1≤j≤n)时,第一多路选择器将TDI与IPj的测试输入信号TDIj连接,TMS与IPj的测试输入信号TMSj连接,第二多路选择器将IPj的测试输出信号TDOj连接到片外测试输出信号TDO上。此时,在芯片JTAG调试接口(TDI、TMS、TCK、TRST、TDO)和IPj的调试接口(TDIj、TMSj、TCK_N、TRST_N、TDOj)之间形成了一条通路,便可通过片外唯一的JTAG调试接口对片内集成的IPj进行JTAG调试。Fig. 4 is a logical structure diagram of the debugging support module of the present invention. The debugging support module is composed of a chain selection instruction register, a decoder, a first multiplexer and a second multiplexer. The input end of the chain selection instruction register is connected with TDI and EMU0 (or EMU1) of the JTAG emulator, TDI and MDS are obtained from the emulator, the output end is connected with the decoder, and the chain selection instruction code is sent to the decoder; decoding The input end of the device is connected with EMU0 (or EMU1) and the chain selection instruction register, and the output end is connected with the first multiplexer and the second multiplexer; the input end of the second multiplexer is connected with all IP cores respectively The TDO of TAP is connected to the output terminal of the decoder, and its output terminal is connected to the TDO of the JTAG emulator. Under the control of the decoding result, it selects the TDO of an IP core TAP and sends it to the TDO pin of the emulator. When the MDS signal is at low level, the chain selection instruction register in the debugging support module is enabled, and TDI is serially shifted into the chain selection instruction register. After the MDS signal is maintained for k TCK clock cycles, it changes from low level to high level. At this time, the chain selection command register stores the chain selection command code. When the chain selection command is to select IP j (1≤j≤n), the first multiplexer connects TDI to the test input signal TDI j of IP j , TMS is connected to the test input signal TMS j of IP j , and the second multiplexer The multiplexer connects the test output signal TDO j of IP j to the off-chip test output signal TDO. At this time, a path is formed between the JTAG debug interface (TDI, TMS, TCK, TRST, TDO) of the chip and the debug interface of IP j (TDI j , TMS j , TCK_N, TRST_N, TDO j ), and the on-chip The only external JTAG debugging interface is used for JTAG debugging of the integrated IP j on-chip.

图5是调试支持模块执行链选命令时所需的MDS信号的时序图:JTAG仿真器接收到链选命令请求后产生k个TCK时钟低电平的MDS信号,由JTAG仿真器的EMU0(或EMU1)引脚输出到调试支持模块的多核调试选择引脚,同时参数IpNum由JTAG仿真器的TDI引脚输出到调试支持模块的TDI。Fig. 5 is a timing diagram of the MDS signal required when the debugging support module executes the chain selection command: after the JTAG emulator receives the chain selection command request, it generates k MDS signals with a low level of the TCK clock, which is sent by the EMU0 (or The EMU1) pin is output to the multi-core debug selection pin of the debug support module, and the parameter IpNum is output to the TDI of the debug support module by the TDI pin of the JTAG emulator.

Claims (1)

1.一种多核微处理器JTAG调试方法,其特征在于包括以下步骤:1. a multi-core microprocessor JTAG debugging method is characterized in that comprising the following steps: 第一步,在具有n个IP核的多核微处理器中增加一个芯片级的TAP控制器——调试支持模块DSM作为整个多核芯片的调试接口,方法是:调试支持模块具有与IEEE1149.1协议兼容的JTAG接口,除具有TDI、TMS、TCK、TRST、TDO这五个引脚与仿真器的JTAG调试接口相连外,还添加一个多核调试选择引脚接受链选命令的使能信号MDS,MDS由仿真器产生,选择JTAG仿真器的仿真脚0即EMU0或仿真脚1即EMU1引脚作为MDS信号的输出引脚;调试支持模块与片内所有的IP核都相连,它将从仿真器输入的测试信号TDI、TMS、TCK和TRST信号传送到片内某个TAP相应的TDI、TMS、TCK和TRST端口,将该TAP的TDO端口输出的数据通过TDO引脚经过JTAG仿真器送达调试主机;调试支持模块由链选指令寄存器、译码器、第一多路选择器和第二多路选择器组成;JTAG仿真器的TCK和TRST通过调试支持模块与每个IP核的TAP控制器相连;链选指令寄存器的长度为k位,
Figure F200810143445XC00011
它的输入端与JTAG仿真器的TDI和EMU0或EMU1引脚相连,从JTAG仿真器获得TDI和MDS,其输出端与译码器相连,MDS为低电平且保持k个TCK时钟时,串行输入的TDI逐位移入链选指令寄存器,MDS在第k+1个TCK时钟的上升沿由低电平变为高电平,此时链选指令寄存器将从TDI获得的k位二进制码作为链选指令码传送给译码器;译码器的输入端与EMU0或EMU1引脚和链选指令寄存器相连,输出端与第一多路选择器和第二多路选择器相连,MDS为高电平时,译码器将从链选指令寄存器输入的链选指令码译码成某个IP核的标识号,并将译码结果传送给第一多路选择器和第二多路选择器;第一多路选择器的输入端既与JTAG仿真器的TDI、TMS相连,又与译码器的输出端相连,输出端与所有IP核的TAP的TDI和TMS相连,它从JTAG仿真器获得TDI和TMS,从译码器获得译码结果,根据译码结果将TDI和TMS送给某个IP核TAP的TDI和TMS;第二多路选择器的输入端既与所有IP核TAP的TDO相连,又与译码器的输出端相连,其输出端与JTAG仿真器的TDO相连,根据译码结果将某个IP核传来的TDO送到JTAG仿真器的TDO引脚;
The first step is to add a chip-level TAP controller in the multi-core microprocessor with n IP cores—the debugging support module DSM as the debugging interface of the entire multi-core chip. Compatible JTAG interface, in addition to the five pins TDI, TMS, TCK, TRST, TDO connected to the JTAG debugging interface of the emulator, a multi-core debugging selection pin is added to accept the enable signal MDS of the chain selection command, MDS Generated by the emulator, select the emulation pin 0 of the JTAG emulator, that is, EMU0 or the emulation pin 1, that is, EMU1, as the output pin of the MDS signal; the debugging support module is connected to all IP cores in the chip, and it will be input from the emulator The test signals TDI, TMS, TCK and TRST signals are transmitted to the corresponding TDI, TMS, TCK and TRST ports of a certain TAP in the chip, and the data output by the TDO port of the TAP is sent to the debugging host through the JTAG emulator through the TDO pin ;The debugging support module is composed of chain selection instruction register, decoder, first multiplexer and second multiplexer; TCK and TRST of the JTAG emulator are connected to the TAP controller of each IP core through the debugging support module ;The length of the chain selection instruction register is k bits,
Figure F200810143445XC00011
Its input terminal is connected to the TDI and EMU0 or EMU1 pins of the JTAG emulator, TDI and MDS are obtained from the JTAG emulator, and its output terminal is connected to the decoder. When MDS is low and keeps k TCK clocks, the serial The TDI input by the row is shifted into the chain selection instruction register bit by bit, and the MDS changes from low level to high level on the rising edge of the k+1 TCK clock. At this time, the chain selection instruction register uses the k-bit binary code obtained from TDI as The chain selection instruction code is sent to the decoder; the input end of the decoder is connected with the EMU0 or EMU1 pin and the chain selection instruction register, the output end is connected with the first multiplexer and the second multiplexer, MDS is high When the level is high, the decoder decodes the chain selection instruction code input from the chain selection instruction register into an identification number of a certain IP core, and transmits the decoding result to the first multiplexer and the second multiplexer; The input end of the first multiplexer is connected with TDI and TMS of the JTAG emulator, and is connected with the output end of the decoder, and the output end is connected with TDI and TMS of TAP of all IP cores, and it is obtained from the JTAG emulator TDI and TMS, obtain the decoding result from the decoder, and send TDI and TMS to the TDI and TMS of a certain IP core TAP according to the decoding result; the input terminal of the second multiplexer is connected to the TDO of all IP core TAPs It is connected to the output terminal of the decoder, and its output terminal is connected to the TDO of the JTAG emulator, and the TDO from a certain IP core is sent to the TDO pin of the JTAG emulator according to the decoding result;
第二步,将原有单IP核的调试软件集成为多核芯片调试软件,并在多核芯片的调试软件中增加一条链选命令,链选命令格式为:int SelectIP(intIpNum),功能是将IpNum发送到仿真器,参数IpNum是各IP核的标识号,当I pNum为j时,表示选择第j个IP核进行调试,1≤j≤n;The second step is to integrate the original single IP core debugging software into multi-core chip debugging software, and add a chain selection command in the multi-core chip debugging software. The chain selection command format is: int SelectIP(intIpNum), the function is Send to the emulator, the parameter IpNum is the identification number of each IP core, when IpNum is j, it means that the jth IP core is selected for debugging, 1≤j≤n; 第三步,由JTAG仿真器保持k个TCK时钟低电平的MDS信号,方法是:在JTAG仿真器的可编程逻辑中定义一个长度为p位、计数单位为k的计数器Counter,将Count er初值置为k,JTAG仿真器接收到调试主机发送的链选命令后,Counter在TCK时钟控制下开始计数,将EMU0或EMU1引脚的输出置为低电平,同时将从调试主机传来的I pNum从仿真器TDI引脚串行输出;Counter的值减到0时,将EMU0或EMU1引脚的输出置为高电平,这样在JTAG仿真器的可编程逻辑中就生成了k个TCK周期低电平的MDS信号;In the third step, the MDS signals of k TCK clock low levels are maintained by the JTAG emulator. The method is: in the programmable logic of the JTAG emulator, define a counter Counter with a length of p bits and a counting unit of k. Set the initial value of Counter to k, and after the JTAG emulator receives the chain selection command sent by the debugging host, the Counter starts counting under the control of the TCK clock, and sets the output of the EMU0 or EMU1 pin to low level, and at the same time the slave debugging The IpNum from the host is serially output from the TDI pin of the emulator; when the value of the Counter is reduced to 0, the output of the EMU0 or EMU1 pin is set to a high level, so that it is generated in the programmable logic of the JTAG emulator The low-level MDS signal of k TCK cycles; 第四步,采用调试支持模块对多核微处理器进行调试,方法是:The fourth step is to use the debugging support module to debug the multi-core microprocessor, the method is: 步骤一,调试主机执行链选命令,将参数IpNum送给JTAG仿真器;Step 1, the debugging host executes the chain selection command, and sends the parameter IpNum to the JTAG emulator; 步骤二,JTAG仿真器收到I pNum后,生成保持k个TCK时钟低电平的MDS信号,由仿真器的EMU0或EMU1引脚输出到调试支持模块的多核调试选择引脚,同时将IpNum逐位输出到JTAG调试接口的TDI引脚;Step 2, after the JTAG emulator receives the IpNum, generate the MDS signal that keeps k TCK clock low levels, output to the multi-core debugging selection pin of the debug support module by the EMU0 or EMU1 pin of the emulator, and simultaneously set the IpNum one by one bit output to the TDI pin of the JTAG debug interface; 步骤三,当MDS为低电平时,TDI串行移入调试支持模块的链选指令寄存器,当MDS由低电平变为高电平时,译码器开始译码;Step 3, when MDS is at low level, TDI is serially shifted into the chain selection instruction register of the debugging support module, and when MDS is changed from low level to high level, the decoder starts to decode; 步骤四,根据IpNum的不同,译码器将链选指令码译码为第j个IP核的标识号,第一多路选择器收到译码结果后将从JTAG仿真器获得的TDI和TMS传送到第j个IP核的TAP的TDIj和TMSj,第二多路选择器收到译码结果后将该IP核TAP的输出TDOj传送到芯片调试接口的TDO然后经仿真器送达调试主机,调试主机调用集成在多核芯片调试软件中的IPj原有的单IP核调试软件对IPj进行调试。Step 4, according to the difference of IpNum, the decoder decodes the chain selection instruction code into the identification number of the jth IP core, and the TDI and TMS obtained from the JTAG emulator will be obtained by the first multiplexer after receiving the decoding result TDI j and TMS j of the TAP transmitted to the jth IP core, the second multiplexer receives the decoding result and transmits the output TDO j of the IP core TAP to the TDO of the chip debugging interface and then delivered by the emulator Debugging host, the debugging host invokes the original single IP core debugging software of IP j integrated in the multi-core chip debugging software to debug IP j .
CN200810143445XA 2008-10-30 2008-10-30 JTAG debugging method for multi-core microprocessor Expired - Fee Related CN101382583B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810143445XA CN101382583B (en) 2008-10-30 2008-10-30 JTAG debugging method for multi-core microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810143445XA CN101382583B (en) 2008-10-30 2008-10-30 JTAG debugging method for multi-core microprocessor

Publications (2)

Publication Number Publication Date
CN101382583A CN101382583A (en) 2009-03-11
CN101382583B true CN101382583B (en) 2010-09-08

Family

ID=40462529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810143445XA Expired - Fee Related CN101382583B (en) 2008-10-30 2008-10-30 JTAG debugging method for multi-core microprocessor

Country Status (1)

Country Link
CN (1) CN101382583B (en)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101968760B (en) * 2009-07-27 2012-10-31 上海华虹集成电路有限责任公司 ARM core processor chip simulator
CN102103535B (en) * 2011-03-07 2013-05-08 北京大学深圳研究生院 Multicore processor, and system and method for debugging multicore processor
US8914693B2 (en) 2012-02-15 2014-12-16 International Business Machines Corporation Apparatus for JTAG-driven remote scanning
CN102880536B (en) * 2012-09-07 2015-06-03 杭州中天微系统有限公司 JTAG (joint test action group) debug method of multi-core processor
CN103226504B (en) * 2013-04-19 2016-05-11 中国科学院自动化研究所 A kind of distributed On-chip debug system
CN104237666B (en) * 2013-06-21 2017-05-03 京微雅格(北京)科技有限公司 Method for testing devices in series connection chain of joint test action group
CN105550140B (en) * 2014-11-03 2018-11-09 联想(北京)有限公司 A kind of electronic equipment and data processing method
CN105182221B (en) * 2015-10-09 2017-12-22 天津国芯科技有限公司 A kind of JTAG MUXs and its connection method in system-on-a-chip
CN105550119B (en) * 2016-01-29 2018-06-19 中国人民解放军国防科学技术大学 A kind of simulator based on JTAG protocol
CN105929818B (en) * 2016-07-05 2020-03-06 深圳市博巨兴微电子科技有限公司 Microcontroller SOC built-in IO maps testing arrangement
CN107301144A (en) * 2017-06-22 2017-10-27 湖南国科微电子股份有限公司 A kind of jtag interface multiplexing method and device
CN109062099A (en) * 2018-08-06 2018-12-21 珠海格力电器股份有限公司 DSP chip selection circuit and related equipment
CN109344018B (en) * 2018-09-10 2022-03-29 深圳忆联信息系统有限公司 Multi-core CPU test method and device, computer equipment and storage medium
CN110781049A (en) * 2019-11-29 2020-02-11 合肥富煌君达高科信息技术有限公司 Automatic identifying and expanding device for JTAG link
CN111579974B (en) * 2020-06-09 2021-09-03 中国电子科技集团公司第十四研究所 Embedded system for realizing boundary scan test and test method
CN112182998B (en) * 2020-07-29 2024-08-30 北京智芯微电子科技有限公司 Object-oriented chip-level port interconnection circuit and port interconnection method thereof
CN112519234B (en) * 2020-10-19 2022-07-01 中国科学院微电子研究所 Temperature control chip, debugging system and 3D printer for 3D printing nozzles
CN112667455A (en) * 2020-12-29 2021-04-16 西安富成防务科技有限公司 Method for multiprocessor to share one debugging serial port
CN112948197B (en) * 2021-04-02 2024-02-06 珠海奔图电子有限公司 Multi-core processor testing device, system, method and system on chip
CN113569526A (en) * 2021-07-02 2021-10-29 苏州盛科通信股份有限公司 CPU configuration method, CPU configuration device, and chip simulation method
CN113590517A (en) * 2021-07-30 2021-11-02 西安超越申泰信息科技有限公司 Computer supporting remote control
CN117271236B (en) * 2023-09-08 2024-08-06 湖南长城银河科技有限公司 Processor for debugging CPU core by multiplexing JTAG debugging channel and application method
CN118209994B (en) * 2024-05-20 2024-07-19 长沙北斗产业安全技术研究院股份有限公司 Navigation signal simulation method based on heterogeneous multi-core system-on-chip

Also Published As

Publication number Publication date
CN101382583A (en) 2009-03-11

Similar Documents

Publication Publication Date Title
CN101382583B (en) JTAG debugging method for multi-core microprocessor
Hopkins et al. Debug support for complex systems on-chip: A review
US9274169B2 (en) Asynchronous programmable JTAG-based interface to debug any system-on-chip states, power modes, resets, clocks, and complex digital logic
CN102880536B (en) JTAG (joint test action group) debug method of multi-core processor
US6115763A (en) Multi-core chip providing external core access with regular operation function interface and predetermined service operation services interface comprising core interface units and masters interface unit
US5708773A (en) JTAG interface system for communicating with compliant and non-compliant JTAG devices
US7536597B2 (en) Apparatus and method for controlling power, clock, and reset during test and debug procedures for a plurality of processor/cores
US8281280B2 (en) Method and apparatus for versatile controllability and observability in prototype system
US6523136B1 (en) Semiconductor integrated circuit device with processor
US7558984B2 (en) Apparatus and method for test and debug of a processor/core having advanced power management
US6430727B1 (en) Diagnostic procedures in an integrated circuit device
CN102103535B (en) Multicore processor, and system and method for debugging multicore processor
CN207965049U (en) Circuitry for coupling TAP signals to a JTAG interface in an integrated circuit package
CN101963934B (en) Method for debugging 8051 core-based system on chip (SOC) on line
US7451367B2 (en) Accessing sequential data in microcontrollers
US20070038433A1 (en) Auxiliary Link Control Commands
CN105095040A (en) Chip debugging method and device
EP0840218B1 (en) An integrated circuit device and method of communication therewith
CN117234831A (en) A chip function testing method and system based on multi-core CPU
CN111722968A (en) Hardware debugging method, device and system and readable storage medium
US5515530A (en) Method and apparatus for asynchronous, bi-directional communication between first and second logic elements having a fixed priority arbitrator
CN102929829B (en) A kind of information transfer device for computer hardware experiment
CN1462979A (en) Loading method of Flash chip and JTAG controller
CN116324439A (en) High speed functional protocol based testing and debugging
CN1463031A (en) Fault-telerance method and system of testing chip for boundary scanning

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

Granted publication date: 20100908

Termination date: 20201030

CF01 Termination of patent right due to non-payment of annual fee