CN109425824B - 在jtag接口中的组合串行和并行测试访问端口选择 - Google Patents
在jtag接口中的组合串行和并行测试访问端口选择 Download PDFInfo
- Publication number
- CN109425824B CN109425824B CN201710847649.0A CN201710847649A CN109425824B CN 109425824 B CN109425824 B CN 109425824B CN 201710847649 A CN201710847649 A CN 201710847649A CN 109425824 B CN109425824 B CN 109425824B
- Authority
- CN
- China
- Prior art keywords
- test
- tap
- circuit
- signal
- debug
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 242
- 230000009471 action Effects 0.000 claims abstract description 11
- 239000003292 glue Substances 0.000 claims description 14
- 238000000034 method Methods 0.000 claims description 14
- 230000008878 coupling Effects 0.000 claims description 8
- 238000010168 coupling process Methods 0.000 claims description 8
- 238000005859 coupling reaction Methods 0.000 claims description 8
- 230000000295 complement effect Effects 0.000 claims 2
- 230000000694 effects Effects 0.000 claims 1
- PLMFYJJFUUUCRZ-UHFFFAOYSA-M decyltrimethylammonium bromide Chemical compound [Br-].CCCCCCCCCC[N+](C)(C)C PLMFYJJFUUUCRZ-UHFFFAOYSA-M 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318594—Timing aspects
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31705—Debugging aspects, e.g. using test circuits for debugging, using dedicated debugging test circuits
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318307—Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318516—Test of programmable logic devices [PLDs]
- G01R31/318519—Test of field programmable gate arrays [FPGA]
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318536—Scan chain arrangements, e.g. connections, test bus, analog signals
- G01R31/318538—Topological or mechanical aspects
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318555—Control logic
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318558—Addressing or selecting of subparts of the device under test
- G01R31/318563—Multiple simultaneous testing of subparts
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318572—Input/Output interfaces
-
- 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/267—Reconfiguring circuits for testing, e.g. LSSD, partitioning
-
- 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/27—Built-in tests
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318558—Addressing or selecting of subparts of the device under test
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本申请涉及在JTAG接口中的组合串行和并行测试访问端口选择。电路用于将测试访问端口(TAP)信号耦合到集成电路封装中的联合测试动作组(JTAG)接口。nTRST引脚接收测试复位信号,TMS引脚接收测试模式选择信号,测试用测试访问端口(TAP)具有测试复位信号输入和测试模式选择信号输入,以及调试用测试访问端口(TAP)具有耦合到nTRST引脚的测试复位信号输入和耦合到TMS引脚的测试模式选择信号输入。反相器具有耦合到nTRST引脚的输入和耦合到测试用TAP的测试复位信号输入的输出,并且与门具有耦合到反相器的输出的第一输入、耦合到TMS引脚的第二输入、以及耦合到测试用TAP的测试模式选择输入的输出。
Description
技术领域
本公开涉及根据IEEE 1149.1标准的联合测试行动组(JTAG)测试或接口的领域,并且尤其涉及符合此标准但减少所使用的引脚数量并且减少延迟的设备特定功能性。
背景技术
JTAG是用于IEEE 1149.1标准的名称,其题为针对用于测试印刷电路板(PCB)和微处理器的测试访问端口(TAP)的标准测试访问端口和边界扫描架构。缩写JTAG代表联合测试行动组——制定IEEE1149.1标准的个体组织的名称。
由JTAG所提供的功能性是向PCB和微处理器提供调试访问和边界扫描测试的功能性以及提供PCB和微处理器的调试访问和边界扫描测试的功能性。由调试工具使用调试访问来访问芯片的内部,从而使其资源和功能性可用和可修改,例如寄存器、存储器和系统状态。因此,可以使用调试访问来测试芯片本身的功能。由硬件测试工具使用边界扫描测试来测试芯片与印刷电路板(PCB)上的其他器件的物理连接。因此,可以使用边界扫描测试来测试芯片和其他器件之间的正确的电连接。
调试功能在某些情况下可以利用一个TAP,而边界扫描功能则利用另一个TAP。然而,这可能需要使用额外的引脚来在它们之间进行选择,这高于JTAG标准所要求的最小值,这在某些场景中可能是不期望的。
在一些实例中,边界扫描功能TAP和调试功能TAP二者可以串行连接。然而,这可能导致在边界扫描测试期间的延迟增加,这可能是不期望的。
因此,需要在实现JTAG接口的硬件中的进一步开发。
发明内容
提供本发明内容来介绍下面在详细描述中进一步描述的概念的选择。本发明内容并非旨在标识所要求保护的主题的关键或基本特征,也不旨在用于帮助限制所要求保护的主题的范围。
本文所公开的是一种用于将测试访问端口(TAP)信号耦合到集成电路封装中的联合测试动作组(JTAG)接口的电路。该电路包括被配置为接收测试复位信号的nTRST引脚、被配置为接收测试模式选择信号的TMS引脚、具有测试复位信号输入和测试模式选择信号输入的测试用测试访问端口(TAP)、以及具有耦合到nTRST引脚的测试复位信号输入和耦合到TMS引脚的测试模式选择信号输入的调试用测试访问端口(TAP)。电路还包括反相器和与门,所述反相器具有耦合到nTRST引脚的输入和耦合到测试用TAP的测试复位信号输入的输出,所述与门具有耦合到反相器的输出的第一输入、耦合到TMS引脚的第二输入和耦合到测试用TAP的测试模式选择输入的输出。
当测试复位信号为生效(低电平激活,因此生效为逻辑0)时,选择测试用TAP并将调试用TAP置于复位模式,并根据测试模式选择信号控制测试用TAP操作。
当测试复位信号为无效(低电平激活,因此无效为逻辑1)时,选择调试用TAP并将测试用TAP置于复位模式,并根据测试模式选择信号控制调试用TAP操作。
该电路否则将包括用于接收TAP选择信号的TAPSEL引脚,但是改为通过不包括TAPSEL引脚而将其总引脚数减少一个。
该电路否则将包括用于接收TAP选择信号的TAPSEL引脚,但是改为具有通用输入输出引脚。
JTAG接口可以是符合题为标准测试访问端口和边界扫描架构的IEEE标准1149.1-2013的接口。
本文还公开了一种用于将测试访问端口(TAP)信号耦合到集成电路封装中的联合测试动作组(JTAG)接口的电路。电路包括被配置为接收测试数据输入信号的测试数据输入(TDI)引脚、被配置为输出测试数据输出信号的测试数据输出(TDO)引脚、以及调试用测试访问端口(TAP)电路,该调试用TAP电路具有耦合到TDI引脚的测试数据输入、以及旁路寄存器,该旁路寄存器具有耦合到调试用TAP电路的测试数据输入的输入。多路复用电路具有耦合到TDI引脚的第一输入、耦合为接收来自调试用TAP电路的输出的第二输入、以及输出。测试用测试访问端口(TAP)电路具有耦合到多路复用电路的输出的测试数据输入、以及数据寄存器,该数据寄存器具有耦合到测试用TAP电路的测试数据输入的输入。调试用TAP电路还包括指令寄存器。测试用TAP电路包括指令寄存器。胶合逻辑被配置为控制多路复用电路的切换,使得当调试用TAP电路和测试用TAP电路都处于移位数据寄存器(shift-dr)状态并且调试用TAP电路的指令寄存器包含旁路指令时,或者当调试用TAP电路和测试用TAP电路的指令寄存器都包含设备ID代码(IDCODE)指令时,测试数据输入信号耦合到测试用TAP电路的数据寄存器的输入,从而当调试用TAP电路和测试用TAP电路不都处于shift-dr状态或不处于shift-dr状态,并且调试用TAP电路不包含旁路指令,或调试用TAP电路和测试用TAP电路不包含设备ID代码(IDCODE)指令时,调试用TAP电路的输出耦合到测试用TAP电路的数据寄存器的输入。
胶合逻辑被配置为控制多路复用电路的切换,使得当调试用TAP电路和测试用TAP电路都处于移位指令寄存器(shift-ir)状态时,调试用TAP电路的输出耦合到测试用TAP的指令寄存器的输入。
上述的各个方法方面被考虑并包括在本申请的范围内。
附图说明
图1是通用JTAG TAP的示意性框图。
图2是允许利用附加tap选择引脚和相关联的信号并行地在测试(边界扫描)用TAP和调试用TAP之间进行选择的电路的示意性框图。
图3是根据本公开的允许不是使用附加tap选择引脚而是在选择中利用测试复位引脚和相关联的信号nTRST、并行地在测试(边界扫描)用TAP和调试用TAP之间进行选择的电路的示意性框图。
图4是允许以在边界扫描测试期间引入延迟的方式串行地在调试用TAP和测试(边界扫描)用TAP之间进行选择的电路的示意性框图。
图5是根据本公开的允许以在边界扫描测试期间消除延迟的方式串行地在调试用TAP和测试(边界扫描)用TAP之间进行选择的电路的示意性框图。
具体实施方式
下面将描述本公开的一个或多个实施例。这些描述的实施例仅是本公开技术的示例。此外,为了提供简明的描述,实际实现的一些特征可以在说明书中不被描述。当介绍本公开的各种实施例的元素时,冠词“一”、“一个”和“该”旨在意指存在一个或多个元素。术语“包括”、“包含”和“具有”旨在是包容性的,并且意指除了所列出的元素之外可以存在附加元素。
JTAG是一种硬件接口,其为调试工具提供了一种与片上系统、片上系统的核心、微处理器或印刷电路板(PCB)上的微处理器的核心直接通信的方式。如所解释的,JTAG被编纂成IEEE 1149.1,其内容通过引用整体并入本文。
如图1中所示的是包括实现通用JTAG功能性的调试和测试访问块(DTAB)16的片上系统(SoC)10。SoC 10包括中央处理单元核心12,其本身在其中已经集成了片上调试逻辑14。片上调试逻辑14经由与DTAB 16相关联的调试总线18来与DTAB 16通信。DTAB 16包括诸如状态机之类的TAP控制器20,其与指令寄存器(IR)22和数据寄存器(DR)24交互。DTAB 16提供最终连接到用于SoC 10的TAP 28的片上TAP 26。
根据IEEE 1149.1,TAP 28具有五个引脚,每个引脚被配置为接收或提供特定信号。引脚及其相关联的信号为:
1.TCK,其接收测试时钟信号。TCK信号是TAP 20控制器的时钟,并指示TAP 20控制器的操作的速度。在测试时钟信号TCK的每次生效时,TAP控制器20采取单一动作。在IEEE1149.1标准中没有规定实际的时钟速度,而是根据所接收的测试信号时钟TCK来对TAP控制器20进行钟控。
2.TMS,其接收测试模式选择信号。TMS信号控制由TAP控制器20所采取的具体动作。
3.TDI,其接收向SoC 10馈送数据的测试数据输入信号。IEEE 1149.1标准没有定义通过该引脚进行通信的协议。这些细节是依赖于应用的,并且可以由设备制造商来定义。
4.TDO,其接收提供来自SoC 10的输出的测试数据输出信号。像TDI信号一样,IEEE1149.1标准没有定义通过TDO引脚进行通信的协议。同样,这些细节是依赖于应用的,并且可以由设备制造商来定义。
5.nTRST,其接收测试复位信号。nTRST信号用于将JTAG复位到已知的良好状态。根据IEEE 1149.1标准,该nTRST引脚是可选的,并且设备制造商可以决定是否包括它。
TMS和TDI信号在TCK信号的每个上升沿上由DTAB 16采样。TDO信号在TCK信号的每个下降沿处输出它的值。
经由被加载到IR 22中的不同指令,DTAB 16的功能性是可访问的。通过将指令加载到IR 22中,选择对应的DR 24用于访问,从而根据所选择的指令提供和/或接受数据。
某些指令由IEEE 1149.1标准来定义。这些指令包括用于在串行连接一个以上的芯片或核心的TAP的菊花链配置中使用的旁路(BYPASS)指令和用于识别特定设备的IDCODE指令。
TAP控制器20是由IEEE 1149.1标准定义的状态机。TAP控制器20的每个状态可以取决于当前状态并且通过经由TMS信号所发送的比特序列来达到。
TAP控制器的以下状态是感兴趣的:
1.测试逻辑复位将IR 22设置为其复位值(IDCODE或旁路(BYPASS))。通过在TMS上移位五次逻辑“1”值,可以从任何其他状态到达该状态。
2.运行-测试/空闲和选择DR-扫描(DR-Scan)被调试器用作暂停停放位置。
3.在移位-IR(Shift-IR)状态下,调试工具将指令移位到IR 22中。一旦TAP控制器20达到更新-IR(Update-IR)状态,该指令就被激活。
4.在移位-DR(Shift-DR)状态下,调试工具将数据从由当前加载的指令所选择的DR 24移入/移出。
如所解释的,在一些设计中,分开的TAP可用于边界扫描测试以及用于调试。现在关于图2描述一个这样的设计。这里,测试用TAP52和调试用TAP 54并行地访问待测试的电路66,包括例如片上系统的核心、微处理器或微处理器的核心。由于边界扫描测试和调试模式不可以被同时执行,所以相关联的逻辑电路50选择测试用TAP 52和调试用TAP 54中的哪一个耦合到片上系统的核心、微处理器或微处理器的核心。
更详细地,测试用TAP 52除了其其它端子之外还具有nTRST端子和TMS端子。与(AND)门56使其输出耦合到测试用TAP 52的nTRST端子,并且接收来自芯片nTRST引脚的nTRST信号、以及从反相器64接收的tap选择信号TAPSEL的反相版本作为输入。与门58使其输出耦合到测试用TAP 52的TMS端子,并且接收来自反相器64的TAPSEL的反相版本和来自芯片TMS引脚的TMS信号作为输入。
调试用TAP 54除了其其它端子之外还具有nTRST端子和TMS端子。与门60使其输出耦合到调试用TAP 54的TMS端子,并接收来自芯片TAPSEL引脚的TAPSEL信号和TMS信号作为输入。与门62使其输出耦合到调试用TAP 54的nTRST端子,并且接收来自芯片nTRST引脚的nTRST信号和来自芯片TAPSEL引脚的TAPSEL信号作为输入。
在操作中,当TAPSEL为生效(例如,逻辑高)时,选择调试用TAP 54并取消选择测试用TAP 52。同样地,当TAPSEL为无效(例如,逻辑低)时,选择测试用TAP 52并取消选择调试用TAP 54。
正如可以容易地意识到的那样,虽然该电路50允许测试用TAP52和调试用TAP 54与电路66(例如,片上系统的核心、微处理器或微处理器的核心)并行耦合,但是芯片的TAPSEL引脚被利用。这表示将附加的引脚添加到封装,这可能是不期望的,因为这样的引脚在使用较少引脚的应用封装中可以被消除,或者,在支持较多引脚的应用封装中可以改为作为通用目的的输入/输出引脚而被重新利用。
因此,如图2中所示,发明人已经设计出新的电路来实现相同的并行功能性,但是不使用TAPSEL引脚。这种方法可用于存在可选nTRST信号的实现中。
参考图3,现在描述这个设计。这里,电路100包括测试用TAP 52和调试用TAP 54。与门58使其输出耦合到测试用TAP 52的TMS端子,并且接收来自芯片的TMS引脚的TMS信号以及来自反相器64的nTRST信号的反相版本作为输入,反相器64的输入接收来自芯片nTRST引脚的nTRST信号。测试用TAP 52的nTRST端子也被耦合以接收nTRST信号的反相版本。调试用TAP 54的TMS端子被耦合以接收来自芯片TMS引脚的TMS信号,并且调试用TAP 54的nTRST端子被耦合以接收来自芯片nTRST引脚的nTRST信号。
在操作中,当nTRST为生效(例如,逻辑低)时,选择测试用TAP 52并取消选择调试用TAP 54。同样,当nTRST为无效(例如,逻辑高)时,选择调试用TAP 54并取消选择测试用TAP 52。
该电路100提供了一种方式来在将使用nTRST引脚的设备中在不添加TATREL引脚和TAPSEL信号的情况下在测试用TAP 52和调试用TAP 54之间进行选择的方式。否则将成为TAPSEL引脚的那个引脚可以被消除,或者用作通用目的的输入/输出引脚。
如现在参考图4所描述的,在一些设计中,调试用TAP 152和测试用TAP 162串行地访问片上系统的核心、微处理器或微处理器的核心。调试用TAP 152包括旁路寄存器156、数据寄存器191-193和指令寄存器155。旁路寄存器156和数据寄存器191-193接收TDI信号,并向多路复用器158提供输出,多路复用器158本身根据inst_reg[n:o]信号而被控制,所述inst_reg[n:o]信号指示由指令寄存器155中的指令所选择的寄存器。多路复用器158的输出被馈送到多路复用器190的输入,多路复用器190的输入也接收来自指令寄存器155的输入。多路复用器190根据tap_状态(tap_state)信号而被控制。
调试用TAP 152的输出TDO被馈送到测试用TAP 162的输入TDI。测试用TAP 162包括旁路寄存器166、数据寄存器194-196和指令寄存器165。旁路寄存器166和数据寄存器194-196接收TDI信号(来自调试用TAP 152的TDO),并向多路复用器168提供输出,多路复用器168本身根据其inst_reg[n:o]信号而被控制,所述信号指示由指令寄存器165中的指令所选择的寄存器。多路复用器168的输出被馈送到多路复用器189的输入,多路复用器189的输入也接收来自指令寄存器165的输入。多路复用器189根据tap_state信号而被控制。在多路复用器189的输出处提供用于电路150的TDO。
这里,如果要选择测试用TAP 162,则在shift-IR操作期间,调试用TAP 152的指令寄存器155被加载有旁路指令,并且测试用TAP 162的指令寄存器165被加载有测试指令。在shift-DR操作期间,inst_reg[n:0]信号使得多路复用器158选择旁路寄存器156,并且tap_state信号使得多路复用器190选择多路复用器158的输出。
在shift-DR操作期间,由多路复用器168根据inst_reg[n:0]信号来选择测试用TAP 162的数据寄存器194-196之一,并且由多路复用器189根据tap_state信号来选择多路复用器168的输出。
因此,旁路寄存器156的输出通过多路复用器158和190连接到测试用TAP 162的数据寄存器194-196之一。这些数据寄存器194-196之一的输出通过多路复用器168和189耦合到测试用TAP 162的TDO端子。
正如可以容易地意识到的那样,在该电路150允许调试用TAP 152和测试用TAP162串行地耦合到片上系统的核心、微处理器或微处理器的核心的同时,当将要选择测试用TAP 162时,通过首先将TDI信号移位通过调试用TAP 152的旁路寄存器156的必要性引入了延迟。这种延迟可能是不期望的。
因此,发明人已经设计出新的电路来实现相同的串行功能,但是没有延迟。参考图5,现在描述这个设计。这里,胶合(glue)逻辑182接收来自调试用TAP 152和测试用TAP 162的tap_state和inst_reg[n:0]信号。多路复用器180被耦合为接收到调试用TAP 152的TDI以及来自调试用TAP 152的TDO作为输入。多路复用器180由胶合逻辑182控制。
这里,如果要选择测试用TAP 162,则在shift-IR操作期间,调试用TAP 152的指令寄存器155被加载有旁路指令,并且测试用TAP 162的指令寄存器165被加载有测试指令,以选择所期望的数据寄存器194-196。在shift-DR操作期间,并且当指令寄存器155被加载有旁路指令时,胶合逻辑182将控制多路复用器180,使得其将TDI信号直接传递到测试用TAP162的TDI端子,旁路调试用TAP 152。否则,胶合逻辑182控制多路复用器180,使得调试用TAP 152的TDO输出耦合到测试用TAP 162的TDI输入。
这减少了延迟,从而减少了测试时间。这在某些情况下是所期望的。
更详细地说,在布尔逻辑中,当((debug_tap.tap_state=shift_dr&debug_tap.instr_reg(n:0)=旁路指令代码&test_tap.tap_state=shift_dr)|debug_tap.tap_state=shift_dr&debug_tap.instr_reg(n:0)=debug idcode指令&test_tap.tap_state=shift_dr&test_tap.instr_reg(n:0)=设备idcode指令))时,胶合逻辑182选择调试用TAP 152的TDI信号。否则,胶合逻辑182选择调试用TAP 152的TDO输出。
虽然已经关于有限数量的实施例描述了本公开内容,但是受益于本公开的本领域技术人员将理解,可以设想不脱离本文所公开的本公开内容的范围的其他实施例。因此,本公开内容的范围将仅由所附权利要求来限制。
Claims (19)
1.一种用于将测试访问端口(TAP)信号耦合到集成电路封装中的联合测试动作组(JTAG)接口的电路,所述电路包括:
nTRST引脚,被配置为接收测试复位信号;
TMS引脚,被配置为接收测试模式选择信号;
测试用测试访问端口(TAP),具有测试复位信号输入和测试模式选择信号输入;
调试用测试访问端口(TAP),具有耦合到所述nTRST引脚的测试复位信号输入和耦合到所述TMS引脚的测试模式选择信号输入;
反相器,具有耦合到所述nTRST引脚的输入和耦合到所述测试用TAP的所述测试复位信号输入的输出;和
与门,具有耦合到所述反相器的所述输出的第一输入、耦合到所述TMS引脚的第二输入和耦合到所述测试用TAP的测试模式选择输入的输出。
2.根据权利要求1所述的电路,其中,当所述测试复位信号为生效时,选择所述测试用TAP并且将所述调试用TAP置于复位模式,并且根据所述测试模式选择信号控制所述测试用TAP的操作。
3.根据权利要求1所述的电路,其中,当所述测试复位信号为无效时,选择所述调试用TAP并且将所述测试用TAP置于复位模式,并且根据所述测试模式选择信号控制所述调试用TAP的操作。
4.根据权利要求1所述的电路,其中,所述电路不包括用于接收TAP选择信号的TAPSEL引脚,并且其总引脚数通过不包括所述TAPSEL引脚而减少1。
5.根据权利要求1所述的电路,其中,所述电路不包括用于接收TAP选择信号的TAPSEL引脚,而是具有通用输入输出引脚。
6.根据权利要求1所述的电路,其中,所述JTAG接口包括符合题为标准测试访问端口和边界扫描架构的IEEE标准1149.1-2013的接口;其中所述测试复位信号包括根据IEEE标准1149.1-2013的nTRST信号;其中测试模式选择信号包括根据所述IEEE标准1149.1-2013的TMS信号;其中所述测试用TAP包括根据IEEE标准1149.1-2013的测试用TAP;并且其中所述调试用TAP包括根据IEEE标准1149.1-2013的调试用TAP。
7.一种用于将测试访问端口(TAP)信号耦合到集成电路封装中的联合测试动作组(JTAG)接口的电路,所述电路包括:
测试数据输入(TDI)引脚,被配置为接收测试数据输入信号;
测试数据输出(TDO)引脚,被配置为输出测试数据输出信号;
调试用测试访问端口(TAP)电路,具有耦合到所述TDI引脚的测试数据输入、以及旁路寄存器,所述旁路寄存器具有耦合到所述调试用TAP电路的所述测试数据输入的输入;
多路复用器,具有耦合到所述TDI引脚的第一输入、耦合为接收来自所述调试用TAP电路的输出的第二输入、和输出;
测试用测试访问端口(TAP)电路,具有耦合到所述多路复用器的输出的测试数据输入、以及数据寄存器,所述数据寄存器具有耦合到所述测试用TAP电路的所述测试数据输入的输入;
其中所述调试用TAP电路还包括指令寄存器;
其中所述测试用TAP电路还包括指令寄存器;
胶合逻辑,被配置为控制所述多路复用器的切换,使得当所述调试用TAP电路和所述测试用TAP电路都处于移位数据寄存器(shift-dr)状态并且所述调试用TAP电路的所述指令寄存器包含旁路指令时,或者当所述调试用TAP电路和所述测试用TAP电路的所述指令寄存器都包含设备ID代码(IDCODE)指令时,所述测试数据输入信号耦合到所述测试用TAP电路的所述数据寄存器的输入,从而当所述调试用TAP电路和所述测试用TAP电路不都处于shift-dr状态或不处于shift-dr状态,并且所述调试用TAP电路不包含旁路指令或所述调试用TAP电路和所述测试用TAP电路不包含设备ID代码(IDCODE)指令时,所述调试用TAP电路的输出耦合到所述测试用TAP电路的所述数据寄存器的输入。
8.根据权利要求7所述的电路,其中,所述胶合逻辑被配置为控制所述多路复用器的切换,使得当所述调试用TAP电路和所述测试用TAP电路都处于移位指令寄存器(shift-ir)状态时,所述调试用TAP电路的输出耦合到所述测试用TAP的所述指令寄存器的输入。
9.根据权利要求8所述的电路,其中,所述JTAG接口包括满足题为标准测试访问端口和边界扫描架构的IEEE标准1149.1-2013的接口;其中所述测试用TAP电路包括根据IEEE标准1149.1-2013的测试用TAP电路;其中所述调试用TAP电路包括根据IEEE标准1149.1-2013的调试用TAP电路;其中所述测试数据输入信号包括符合IEEE标准1149.1-2013的测试数据输入信号;其中所述测试数据输出信号包括符合IEEE标准1149.1-2013的测试数据输出信号;其中所述shift-dr状态包括符合IEEE标准1149.1-2013的shift-dr状态;其中所述shift-ir状态包括符合IEEE标准1149.1-2013的shift-ir状态。
10.一种将测试访问端口(TAP)信号耦合到集成电路封装中的联合测试动作组(JTAG)接口而不使用tap选择信号的方法,所述方法包括:
当测试复位信号为生效时,选择测试用测试访问端口(TAP)并将调试用测试访问端口(TAP)置于复位模式,并且根据对所述测试复位信号执行的逻辑互补运算以及对所述逻辑互补运算的输出和测试模式选择信号执行的逻辑与运算,从所述测试模式选择信号控制所述测试用测试访问端口(TAP)的操作;
当测试复位信号为无效时,将所述测试用TAP置于所述复位模式并选择所述调试用TAP,并且从所述测试模式选择信号控制所述调试用测试访问端口(TAP)的操作。
11.根据权利要求10所述的方法,还包括通过不包括用于接收所述TAP选择信号的TAPSEL引脚来减少所述集成电路封装的总引脚数。
12.根据权利要求10所述的方法,还包括为所述集成电路封装提供通用输入输出引脚,而不是用于接收所述TAP选择信号的TAPSEL引脚。
13.根据权利要求10所述的方法,其中,所述JTAG接口包括满足题为标准测试访问端口和边界扫描架构的IEEE标准1149.1-2013的接口;其中所述测试复位信号包括根据IEEE标准1149.1-2013的nTRST信号;其中所述测试模式选择信号包括根据IEEE标准1149.1-2013的TMS信号;其中所述测试用TAP包括根据IEEE标准1149.1-2013的测试用TAP;并且其中所述调试用TAP包括根据IEEE标准1149.1-2013的调试用TAP。
14.一种用于将测试访问端口(TAP)信号耦合到集成电路封装中的联合测试动作组(JTAG)接口的方法,所述方法包括:
当所述测试用TAP电路和调试用测试访问端口(TAP)电路都处于移位数据寄存器(shift-dr)状态并且所述调试用TAP电路的指令寄存器包含旁路指令时,或者当所述调试用TAP电路和所述测试用TAP电路的所述指令寄存器包含设备ID代码指令(IDCODE)时,将测试数据输入信号耦合到测试用测试访问端口(TAP)电路的数据寄存器的输入;和
当所述调试用TAP电路和所述测试用TAP电路不都处于shift-dr状态或不处于shift-dr状态,并且所述调试用TAP电路不包含旁路指令或者所述调试用TAP电路和所述测试用TAP电路不包含设备ID代码(IDCODE)指令时,将所述调试用TAP电路的输出耦合到所述测试用TAP电路的所述数据寄存器的输入。
15.根据权利要求14所述的方法,其中,通过使用胶合逻辑来将所述测试数据输入信号耦合到所述测试用TAP的所述数据寄存器的输入,所述胶合逻辑根据是否所述调试用TAP电路和测试用测试数据访问端口(TAP)电路都处于移位数据寄存器(shift-dr)状态并且调试用TAP电路的所述指令寄存器包含旁路指令,或者当所述调试用TAP电路和所述测试用TAP电路的所述指令寄存器都包含设备ID代码指令(IDCODE)时,控制多路复用器的选择,所述多路复用器具有耦合到所述测试数据输入信号和所述测试用TAP电路的输出的输入。
16.根据权利要求14所述的方法,其中,通过使用胶合逻辑来将所述调试用TAP电路的输出耦合到所述测试用TAP的所述数据寄存器的输入,所述胶合逻辑根据是否所述调试用TAP电路和测试用测试数据访问端口(TAP)电路不都处于shift-dr状态或不处于shift-dr状态、以及所述调试用TAP电路不包含旁路指令、或所述调试用TAP电路和所述测试用TAP电路不包含设备ID代码(IDCODE)指令,控制多路复用器的选择,所述多路复用器具有耦合到所述测试数据输入信号和所述调试用TAP电路的输出的输入。
17.根据权利要求14所述的方法,其中,通过使用胶合逻辑来将所述调试用TAP电路的输出耦合到所述测试用TAP的所述指令寄存器的输入,所述胶合逻辑根据是否所述调试用TAP电路和测试用测试数据访问端口(TAP)电路都处于移位指令寄存器(shift-ir)状态,控制多路复用器的选择,所述多路复用器具有耦合到所述测试数据输入信号和所述调试用TAP电路的输出的输入。
18.根据权利要求17所述的方法,其中所述JTAG接口包括满足题为标准测试访问端口和边界扫描架构的IEEE标准1149.1-2013的接口;其中所述测试用TAP电路包括根据IEEE标准1149.1-2013测试用TAP电路;其中所述调试用TAP电路包括根据IEEE标准1149.1-2013的调试用TAP电路;其中所述测试数据输入信号包括符合IEEE标准1149.1-2013的测试数据输入信号;其中所述shift-dr状态包括符合IEEE标准1149.1-2013的shift-dr状态。
19.根据权利要求17所述的方法,其中,所述JTAG接口包括满足题为标准测试访问端口和边界扫描架构的IEEE标准1149.1-2013的接口;其中所述测试用TAP电路包括根据IEEE标准1149.1-2013的测试用TAP电路;其中所述调试用TAP电路包括根据IEEE标准1149.1-2013的调试用TAP电路;其中所述测试数据输入信号包括符合IEEE标准1149.1-2013的测试数据输入信号;并且其中所述shift-ir状态包括符合IEEE标准1149.1-2013的shift-ir状态。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/688,184 | 2017-08-28 | ||
US15/688,184 US10495690B2 (en) | 2017-08-28 | 2017-08-28 | Combinatorial serial and parallel test access port selection in a JTAG interface |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109425824A CN109425824A (zh) | 2019-03-05 |
CN109425824B true CN109425824B (zh) | 2021-02-12 |
Family
ID=63724492
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201721206324.6U Withdrawn - After Issue CN207965049U (zh) | 2017-08-28 | 2017-09-19 | 用于将tap信号耦合到集成电路封装中的jtag接口的电路 |
CN201710847649.0A Active CN109425824B (zh) | 2017-08-28 | 2017-09-19 | 在jtag接口中的组合串行和并行测试访问端口选择 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201721206324.6U Withdrawn - After Issue CN207965049U (zh) | 2017-08-28 | 2017-09-19 | 用于将tap信号耦合到集成电路封装中的jtag接口的电路 |
Country Status (2)
Country | Link |
---|---|
US (2) | US10495690B2 (zh) |
CN (2) | CN207965049U (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10386411B2 (en) * | 2017-08-23 | 2019-08-20 | Stmicroelectronics International N.V. | Sequential test access port selection in a JTAG interface |
DE112019007386T5 (de) * | 2019-05-31 | 2022-02-17 | Micron Technology, Inc. | Verbesserte jtag-register mit gleichzeitigen eingängen |
CN112445663B (zh) * | 2019-09-02 | 2022-05-03 | 瑞昱半导体股份有限公司 | 测试存取端口电路 |
US11411565B2 (en) * | 2020-01-06 | 2022-08-09 | Stmicroelectronics International N.V. | Clock and data recovery circuit |
CN111398786B (zh) * | 2020-04-02 | 2020-12-25 | 上海燧原科技有限公司 | 切换控制电路、片上系统芯片、芯片测试系统及方法 |
US11941133B2 (en) * | 2021-09-23 | 2024-03-26 | Hewlett Packard Enterprise Development Lp | FPGA chip with protected JTAG interface |
CN114578217B (zh) * | 2022-05-06 | 2022-08-09 | 南京邮电大学 | 一种可控的Chiplet串行测试电路 |
CN117520262B (zh) * | 2024-01-05 | 2024-03-19 | 苏州萨沙迈半导体有限公司 | Jtag接口解耦控制模块、方法和系统 |
CN117741411A (zh) * | 2024-02-19 | 2024-03-22 | 西安简矽技术有限公司 | 一种芯片的调校系统和方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1661385A (zh) * | 2004-02-26 | 2005-08-31 | 联想(北京)有限公司 | 一种jtag模块及应用该模块的调试方法 |
CN101228451A (zh) * | 2005-07-22 | 2008-07-23 | Nxp股份有限公司 | 可测试集成电路,系统级封装和测试指令集 |
CN101297208A (zh) * | 2005-10-24 | 2008-10-29 | Nxp股份有限公司 | Ic测试方法和设备 |
US7665002B1 (en) * | 2005-12-14 | 2010-02-16 | Advanced Micro Devices, Inc. | Multi-core integrated circuit with shared debug port |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5935266A (en) * | 1996-11-15 | 1999-08-10 | Lucent Technologies Inc. | Method for powering-up a microprocessor under debugger control |
KR100240662B1 (ko) * | 1997-09-25 | 2000-01-15 | 윤종용 | 제이태그에 의한 다이나믹램 테스트장치 |
US7168032B2 (en) * | 2000-12-15 | 2007-01-23 | Intel Corporation | Data synchronization for a test access port |
US7010722B2 (en) * | 2002-09-27 | 2006-03-07 | Texas Instruments Incorporated | Embedded symmetric multiprocessor system debug |
US8219863B2 (en) * | 2004-12-02 | 2012-07-10 | Texas Instruments Incorporated | TAP state count specifying advanced mode command and command data |
US7793152B2 (en) * | 2004-12-02 | 2010-09-07 | Texas Instruments Incorporated | Zero-bit scans defining command window and control level |
US7650542B2 (en) * | 2004-12-16 | 2010-01-19 | Broadcom Corporation | Method and system of using a single EJTAG interface for multiple tap controllers |
US20140101500A1 (en) * | 2012-10-05 | 2014-04-10 | Lsi Corporation | Circuits and methods for functional testing of integrated circuit chips |
CN107783874A (zh) * | 2016-08-26 | 2018-03-09 | 华为技术有限公司 | Jtag调试装置以及jtag调试方法 |
-
2017
- 2017-08-28 US US15/688,184 patent/US10495690B2/en active Active
- 2017-09-19 CN CN201721206324.6U patent/CN207965049U/zh not_active Withdrawn - After Issue
- 2017-09-19 CN CN201710847649.0A patent/CN109425824B/zh active Active
-
2019
- 2019-11-01 US US16/671,933 patent/US11041905B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1661385A (zh) * | 2004-02-26 | 2005-08-31 | 联想(北京)有限公司 | 一种jtag模块及应用该模块的调试方法 |
CN100357751C (zh) * | 2004-02-26 | 2007-12-26 | 联想(北京)有限公司 | 一种jtag模块及应用该模块的调试方法 |
CN101228451A (zh) * | 2005-07-22 | 2008-07-23 | Nxp股份有限公司 | 可测试集成电路,系统级封装和测试指令集 |
CN101297208A (zh) * | 2005-10-24 | 2008-10-29 | Nxp股份有限公司 | Ic测试方法和设备 |
US7665002B1 (en) * | 2005-12-14 | 2010-02-16 | Advanced Micro Devices, Inc. | Multi-core integrated circuit with shared debug port |
Also Published As
Publication number | Publication date |
---|---|
US11041905B2 (en) | 2021-06-22 |
US20200064405A1 (en) | 2020-02-27 |
US10495690B2 (en) | 2019-12-03 |
CN109425824A (zh) | 2019-03-05 |
US20190064270A1 (en) | 2019-02-28 |
CN207965049U (zh) | 2018-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109425824B (zh) | 在jtag接口中的组合串行和并行测试访问端口选择 | |
US6988230B2 (en) | Test arrangement for assemblages of intergrated circuit blocks | |
US6446230B1 (en) | Mechanism for enabling compliance with the IEEE standard 1149.1 for boundary-scan designs and tests | |
US7856581B1 (en) | Methods and apparatuses for external test methodology and initialization of input-output circuits | |
EP1402278B1 (en) | Method and apparatus for optimized parallel testing and access of electronic circuits | |
US6000051A (en) | Method and apparatus for high-speed interconnect testing | |
US11906582B2 (en) | Shadow access port method and apparatus | |
US20160349320A1 (en) | Remote bus wrapper for testing remote cores using automatic test pattern generation and other techniques | |
US20090019328A1 (en) | Ic circuit with test access control circuit using a jtag interface | |
US6055656A (en) | Control register bus access through a standardized test access port | |
WO2007140366A2 (en) | Testing components of i/o paths of an integrated circuit | |
WO2008093312A1 (en) | On-chip testing | |
US7447962B2 (en) | JTAG interface using existing I/O bus | |
WO2004073027A2 (en) | Microprocessor based self-diagnostic port | |
WO2002029568A2 (en) | A test access port (tap) controller system and method to debug internal intermediate scan test faults | |
US10890619B2 (en) | Sequential test access port selection in a JTAG interface | |
JP2010159989A (ja) | テスト回路 | |
EP1817596B1 (en) | Integrated circuit and a method for testing a multi-tap integrated circuit | |
KR100694315B1 (ko) | 다중 시스템 클럭 및 이종 코어를 포함하는 시스템 온 칩용연결선 지연 고장 테스트 제어기 | |
KR101016733B1 (ko) | 스캔 제어 방법, 스캔 제어 회로 및 장치 |
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 |