DE102008022750B4 - Verbesserte JTAG-Schnittstelle - Google Patents

Verbesserte JTAG-Schnittstelle Download PDF

Info

Publication number
DE102008022750B4
DE102008022750B4 DE102008022750.1A DE102008022750A DE102008022750B4 DE 102008022750 B4 DE102008022750 B4 DE 102008022750B4 DE 102008022750 A DE102008022750 A DE 102008022750A DE 102008022750 B4 DE102008022750 B4 DE 102008022750B4
Authority
DE
Germany
Prior art keywords
jtag
data
tdi
signals
input
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
Application number
DE102008022750.1A
Other languages
English (en)
Other versions
DE102008022750A1 (de
Inventor
Dan Storakers
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE102008022750A1 publication Critical patent/DE102008022750A1/de
Application granted granted Critical
Publication of DE102008022750B4 publication Critical patent/DE102008022750B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318572Input/Output interfaces
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318555Control logic

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

Vorrichtung, umfassend:
wenigstens einen Signaleingang (312), wobei der wenigstens eine Signaleingang (312) dazu ausgestaltet ist, sowohl TMS-Signale gemäß dem JTAG-Standard als auch TDI-Signale gemäß dem JTAG-Standard zu empfangen, eine JTAG-kompatible Vorrichtung (302) und
eine Steuervorrichtung (304; 400) zur Kopplung mit der JTAG-kompatiblen Vorrichtung (302),
wobei die Steuervorrichtung (304; 400) mit dem wenigstens einen Signaleingang (312) gekoppelt ist und zum Empfang der über den wenigstens einen Signaleingang (312) übermittelten Signale ausgestaltet ist,
wobei die Steuervorrichtung (304; 400) einen Eingang (404) zum Empfang von Zustandsmaschinendaten einer TAP-Steuerung der JTAG-kompatiblen Vorrichtung (302), einen Ausgang (406) zur Ausgabe der TMS-Signale an die JTAG-kompatible Vorrichtung und einen Ausgang (408) zur Ausgabe der TDI-Signale an die JTAG-kompatible Vorrichtung beinhaltet, und
wobei die Steuervorrichtung die an dem wenigstens einen Signaleingang (312) empfangenen Signale über den Ausgang zur Ausgabe der TDI-Signale ausgibt, wenn die empfangenen Zustandsmaschinendaten einen Shift-DR-Zustand oder einen Shift-IR-Zustand anzeigen.

Description

  • Hintergrund
  • JTAG ist ein weit verbreitetes Test- und Bauteilprogrammiermodell. JTAG ist ein Kurzwort, welches für die „Joint Test Action Group” steht, welche ein für die Entwicklung des IEEE-Standards 1149.1 verantwortliches technisches Unterkomitee war. Der JTAG-Standard legt eine Methodik dar zur Durchführung von Tests an komplexen integrierten Schaltungen und Schaltungsplatinen. JTAG bietet eine Strategie, die Integrität von einzelnen Komponenten und den Verbindungen zwischen ihnen nach der Installation auf einer Leiterplatte sicherzustellen. Allgemein wurde der JTAG-Standard in großem Umfang angenommen.
  • Gemäß dem JTAG-Standard hat die Architektur einer integrierten Schaltung für ein JTAG-kompatibles Bauteil einen Testzugriffsanschluss (TAP-Anschluss, TAP: „Test Access Port”), welcher die Verwendung von wenigstens vier Pins erfordert. Insbesondere empfängt ein Testtaktpin (TCK-Pin, TCK: „Test Clock”) ein Testtaktsignal für das zu prüfende Bauteil. Ein Testmodusauswahl-Pin (TMS-Pin, TMS: „Test Mode Select”) nimmt Befehle auf, um bestimmte Testmodi auszuwählen. Ein Testdateneingang-Pin (TDI-Pin, TDI: „Test Data In”) nimmt Daten in das zu testende Bauteil auf. Ein Testdatenausgang-Pin (TDO-Pin, TDO: „Test Data Output”) sendet Daten aus dem zu testenden Bauteil aus. Ein optionaler fünfter Pin, bezeichnet als Testrücksetzung-Pin (TRST-Pin, TRST: „Test Reset”), ermöglicht die Rücksetzung einer Initialisierung einer JTAG-Steuerung (TAP-Steuerung), ohne die übrige Bauteil- oder Systemlogik zu beeinträchtigen. Daher erfordert ein JTAG-kompatibles Bauteil wenigstens vier zweckbestimmte Pins, oder fünf zweckbestimmte Pins, wenn ein TRST-Pin verwendet wird.
  • Integrierte Schaltungen enthalten mehr und mehr Funktionalitäten. Diese Zunahme an Funktionalität erhöht häufig die Anzahl von Pins, welche bei einer gegebenen integrierten Schaltung implementiert sind. Jeder bei einer integrierten Schaltung verwendete Pin erhöht die Herstellungskosten, welche mit der Herstellung der integrierten Schaltung verbunden sind. Folglich ist eine Reduzierung der Anzahl von Pins, welche mit integrierten Schaltungen verbunden sind, häufig wünschenswert, wenn die Funktionalität nicht beeinträchtigt wird. Es besteht folglich ein Bedarf für Verbesserungen an JTAG-kompatiblen Vorrichtungen und Bauteilen, und eine Aufgabe der vorliegenden Erfindung besteht darin, diesem Bedarf gerecht zu werden.
  • In der DE 601 10 514 T2 wird eine JTAG-Testanordnung beschrieben, bei welcher ein asynchroner Übertragungsweg zur Übertragung von JTAG-Signalen verwendet wird. Insbesondere werden TMS-Signale und TDI-Signale über den asynchronen Übertragungsweg an einen Prüfling übertragen, und TDO-Signale werden über den asynchronen Übertragungsweg von dem Prüfling an eine Testeinrichtung übertragen.
  • In Tietze, U., Schenk, Ch.: „Halbleiter-Schaltungstechnik”, Achte, überarbeitete Auflage, S. 222–224 wird ein 1-aus-4-Demultiplexer beschrieben, welcher den Wert einer Eingangsvariablen an einem ausgewählten Ausgang ausgibt.
  • In der DE 10 2004 043 063 A1 wird ein Halbleiter-Bauelement mit einer JTAG-kompatiblen Testschnittstelle beschrieben. Pins der Testschnittstelle werden in einem Testbetriebsmodus zur Übertragung von Testsignalen gemäß dem JTAG-Standard verwendet. In einem Normalbetriebsmodus können einige dieser Pins als Applikations-Funktions-Pins betrieben werden.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung bietet eine Vorrichtung gemäß Anspruch 1, eine Vorrichtung gemäß Anspruch 4 und ein Verfahren gemäß Anspruch 9. Die abhängigen Ansprüche definieren bevorzugte und vorteilhafte Ausführungsformen der Erfindung.
  • Eine Vorrichtung in Übereinstimmung mit einem Ausführungsbeispiel der vorliegenden Erfindung nutzt einen Pin einer integrierten Schaltung, welcher sowohl die TMS- als auch die TDI-Signale aufnimmt. Daher beseitigt die erfindungsgemäße Vorrichtung das Erfordernis von vier Pins, welches in dem IEEE-JTAG-Standard vorgeschrieben ist. Insbesondere beinhaltet eine erfindungsgemäße Vorrichtung einen TMS/TDI-Eingang, einen TCK-Eingang und einen TDO-Eingang. Optional beinhaltet die Vorrichtung auch einen TRST-Eingang. Jeder dieser Eingänge kann durch Pins an einer integrierten Schaltung, Leiterplatte oder anderen ähnlichen Einrichtung gebildet sein. Erfindungsgemäß werden an dem TMS/TDI-Eingang empfangene Daten als TDI-Daten an eine JTAG-kompatible Vorrichtung ausgegeben, wenn Zustandsmaschinendaten einer TAP-Steuerung der JTAG-kompatiblen Vorrichtung einen Shift-DR-Zustand oder einen Shift-IR-Zustand anzeigen.
  • Kurzbeschreibung der Zeichnungen
  • Es folgt eine detaillierte Beschreibung unter Bezugnahme auf die beigefügten Zeichnungen. In den Figuren ist durch die ganz linke Ziffer bzw. durch die ganz linken Ziffern einer Bezugszahl die Figur gekennzeichnet, in welcher die Bezugszahl zuerst erscheint. Die Verwendung derselben Bezugszahlen in verschiedenen Figuren bezeichnet ähnliche oder identische Elemente.
  • 1 ist ein Diagramm, welches ein herkömmliches JTAG-kompatibles Bauteil veranschaulicht.
  • 2 veranschaulicht ein Zustandsübergangsdiagramm für die Zustandsmaschine einer herkömmlichen JTAG-Steuerung.
  • 3 veranschaulicht ein verbessertes JTAG-kompatibles Bauteil in Übereinstimmung mit einem Ausführungsbeispiel der Erfindung.
  • 4 veranschaulicht eine beispielhafte Steuervorrichtung, welche verwendet werden kann zur Reduzierung der Anzahl von Pins, welche notwendig sind, um ein JTAG-kompatibles Bauteil herzustellen.
  • 5 veranschaulicht ein Flussdiagramm, welches mehrere zu einem Steuerprozess und/oder Mechanismus gehörende Vorgänge enthält, der zur Ermöglichung eines verbesserten JTAG-kompatiblen Bauteils verwendet werden kann.
  • Detaillierte Beschreibung
  • Im Folgenden erfolgt eine kurze Diskussion eines herkömmlichen JTAG-kompatiblen Bauteils. Danach erfolgt eine kurze Diskussion der Zustandsmaschine einer herkömmlichen JTAG-Steuerung. Anschließend wird eine detaillierte Beschreibung eines verbesserten JTAG-kompatiblen Bauteils gegeben. Sowohl auf das System als auch auf das Verfahren bezogene Details, welche mit dem verbesserten JTAG-kompatiblen Bauteil verbunden sind, werden hierin angegeben.
  • Herkömmliche JTAG-Anordnung
  • 1 veranschaulicht ein herkömmliches JTAG-kompatibles Bauteil 100. Das JTAG-kompatible Bauteil 100 beinhaltet eine TAP-Steuerung 102. Die TAP-Steuerung 102 dient dazu, Takt- und Steuersignale zu erzeugen, welche für ein Instruktionsregister 104, ein Umleitungsregister 106 und ein Boundary-Scan-Register 108 erforderlich sind. Zwei Ereignisse können eine Änderung des Zustands der TAP-Steuerung 102 auslösen. Das erste Ereignis ist eine ansteigende Flanke eines empfangenen Testtaktes. Das zweite Ereignis ist ein Einschalten des Systems. Die von der TAP-Steuerung 102 gelieferten Steuersignale gewährleisten eine korrekte Eingangs- und Ausgangskopplung für die Register 104, 106 oder 108 unter Verwendung von Multiplexern 110 und 112.
  • Das herkömmliche JTAG-kompatible Bauteil 100 beinhaltet einen TMS-Pin 114, welcher mit der TAP-Steuerung 102 gekoppelt ist. Logiksignale (Nullen und Einsen), welche an dem TMS-Pin 114 empfangen werden, werden von der TAP-Steuerung 102 interpretiert, um die Testvorgänge zu steuern. Die TMS-Signale werden an der ansteigenden Flanke von an einen TCK-Pin 116 empfangenen TCK-Pulsen abgetastet. Die an dem TMS-Pin 114 empfangenen Signale werden von der TAP-Steuerung 102 decodiert, um innerhalb des herkömmlichen JTAG-Bauteils 100 die erforderlichen Steuersignale zu erzeugen. Wenn er nicht angesteuert wird, wird der TMS-Pin 114 auf einem hohen Signalpegel gehalten. Ein TDI-Pin 118 ist abhängig von dem Zustand der TAP-Steuerung 102 mit einem der Register 104, 106 oder 108 gekoppelt. Dem TDI-Pin 108 zugeführte serielle Eingangsdaten können einem Register (104, 106, 108) zugeführt werden, welches von der TAP-Steuerung 102 ausgewählt wird. Daten werden bei einer ansteigenden Flanke der TCK-Pulse über den TDI-Pin 118 hereingeschoben. Wenn er nicht angesteuert wird, wird der TDI-Pin 118 auf einem hohen Signalpegel gehalten.
  • Ein TDO-Pin 120 dient abhängig von dem Zustand der TAP-Steuerung 102 als ein Ausgang für eines der Register 104, 106 oder 108. Daten werden bei einer abfallenden Flanke der TCK-Pulse über den TDO-Pin 120 herausgeschoben. Der TDO-Pin 120 kann zu allen anderen Zeiten in einem Tristate-Zustand bleiben.
  • 2 veranschaulicht eine Zustandsmachine 200 mit 16 Zuständen, welche durch die TAP-Steuerung 102 implementiert ist. Die Zustandsmachine 200 zeigt die verschiedenen Betriebszustände des JTAG-kompatiblen Bauteils 100. Die in 2 dargestellten Betriebszustände sind in dem JTAG-Standard spezifiziert.
  • Eine Funktion der Zustandsmachine 200 ist zu steuern, wie Daten in das Instruktionsregister 104 und die Datenregister (d. h. das Umleitungsregister 106 oder das Boundary-Scan-Register 108) eingelesen werden. Der Zustand des TMS-Signals bei der ansteigenden Flanke der TCK-Pulse bestimmt die Abfolge von Übergängen. Die in 2 dargestellten Nullen und Einsen bezeichnen die Übergänge der Zustandsmachine 200 abhängig davon, ob das TMS-Signal auf einem logisch hohen Pegel oder einem logisch niedrigen Pegel ist.
  • Die Zustandsmachine wird initialisiert, indem in einen Testlogik-Rücksetzung-Zustand (Test-Logic Reset) 202 eingetreten wird. Danach wird bei Übergang auf einen niedrigen Logikpegel des TMS-Signals in einen Testausführung-/Leerlaufzustand (Run-Test/Idle) 204 eingetreten. Wie in 2 dargestellt, existieren zwei Hauptzustandsabfolgen. Die erste dient dem Verschieben von Daten in eines der Datenregister, und die zweite dient dem Verschieben einer Instruktion in das Instruktionsregister 104.
  • Nachdem die Zustandsmaschine 200 in dem Testausführung-/Leerlaufzustand 204 ist, wird ein Select-DR-Scan-Zustand 206 initialisiert, indem für nur einen Taktzyklus ein hoher Logikpegel des TMS-Signals gesetzt wird. Ein Select-IR-Scan-Zustand 208 wird initialisiert, indem für zwei Taktzyklen ein hoher Logikpegel des TMS-Signals gesetzt wird.
  • Wenn der Select-DR-Scan-Zustand 206 veranlasst ist, kann die Zustandsmaschine 200 in einen Capture-DR-Zustand 210, einen Shift-DR-Zustand 212, einen Exit1-DR-Zustand 214, einen Pause-DR-Zustand 216, einen Exit2-DR-Zustand 218 und einen Update-DR-Zustand 220 eintreten, indem die in 2 gezeigten geeigneten Logikpegel des TMS-Signals gesetzt werden.
  • Auf eine Beschreibung von allen verschiedenen Zuständen der endlichen Zustandsmaschine 200 wird verzichtet. Es werden nur diejenigen Zustände beschrieben, bei welchen die TDI- und TDO-Pins miteinander gekoppelt sind.
  • In dem Shift-IR-Zustand ist das Instruktionsregister 104 zwischen den TDI-Pin 118 und den TDO-Pin 120 geschaltet. Verschiebungen (Shifts) treten bei jeder ansteigenden Flanke der TCK-Pulse in Richtung eines Ausgangs des Instruktionsregisters 104 auf. Die ansteigende Flanke der TCK-Pulse verschiebt auch neue Instruktionsbits in das Instruktionsregister 104.
  • In dem Shift-DR-Zustand ist ein Datenregister (z. B. das Umleitungsregister 106 oder das Boundary-Scan-Register 108) zwischen den TDI-Pin 118 und den TDO-Pin 120 geschaltet. Als ein Ergebnis einer gegenwärtigen Instruktion werden bei jeder ansteigenden Flanke der TCK-Pulse Daten in Richtung eines Ausgangs des Datenregisters verschoben. Zur gleichen Zeit werden mittels des TDI-Pins 118 Daten in das Datenregister verschoben.
  • Der Pause-IR-Zustand ermöglicht, die Verschiebung des Instruktionsregisters 104 vorübergehend anzuhalten. Dieser Zustand wird beibehalten, während das TMS-Signal auf einem niedrigen Pegel ist.
  • Der Pause-DR-Zustand ermöglicht, die Verschiebung eines Datenregisters (z. B. das Umleitungsregister 106 oder das Boundary-Scan-Register 108) vorübergehend anzuhalten. Dieser Zustand wird beibehalten, während das TMS-Signal auf einem niedrigen Pegel ist.
  • Zusätzliche sich auf den JTAG-Standard beziehende Details können den mit dem IEEE 1149.1-Standard verbundenen Dokumenten entnommen werden.
  • Ausführungsbeispiele
  • 3 veranschaulicht ein verbessertes JTAG-kompatibles Bauteil 300 in Übereinstimmung mit einem hierin beschriebenen Ausführungsbeispiel. Bei der in 3 dargestellten beispielhaften Implementierung ist das JTAG-kompatible Bauteil 300 eine integrierte Schaltung bzw. ein IC-Bauteil (IC: Integrated Circuit). Das JTAG-kompatible Bauteil 300 kann auch eine Leiterplatte, eine Endnutzereinrichtung wie z. B. ein Computer, ein drahtloses Telefon oder eine andere ähnliche Einrichtung sein.
  • Das IC-Bauteil 300 kann ein JTAG-kompatibles Bauteil 302 enthalten, welches ähnlich zu dem in 1 dargestellten JTAG-kompatiblen Bauteil 100 ist. Eine Steuervorrichtung 304 kann in dem IC-Bauteil 300 enthalten sein. Die Steuervorrichtung 304 kann mit dem JTAG-kompatiblen Bauteil 302 gekoppelt sein und ist in der Lage, TMS- und TDI-Signale über Signalleitungen 306 bzw. 308 an das JTAG-kompatible Bauteil 302 zu senden. Die Steuervorrichtung 304 kann über eine Signalleitung 310 Zustandsmaschinendaten von dem JTAG-kompatiblen Bauteil 302 empfangen. Die Zustandsmaschinendaten können von einer TAP-Steuerung des JTAG-kompatiblen Bauteils 302 erzeugt werden. Eine solche TAP-Steuerung ist in 1 dargestellt (siehe die TAP-Steuerung 102).
  • Das IC-Bauteil 300 beinhaltet wenigstens drei zweckbestimmte Pins (312, 314 und 316), welche zur Verarbeitung von JTAG-bezogenen Signalen verwendbar sind. Der TMS/TDI-Pin 312 kann verwendet werden, um TMS- oder TDI-Signale zu empfangen. An dem TMS/TDI-Pin 312 empfangene Signale können über eine Signalleitung 318 an die Steuervorrichtung 304 gesendet werden. Der TCK-Pin 314 kann verwendet werden, um TCK-Pulse zu empfangen. Die an dem TCK-Pin 314 empfangenen TCK-Pulse können über eine Signalleitung 320 an das JTAG-kompatible Bauteil 302 übermittelt werden. Der TDO-Pin 316 ist über eine Signalleitung 322 mit einem TDO-Ausgang des JTAG-kompatiblen Bauteils 302 gekoppelt.
  • Anders als herkömmliche JTAG-kompatible Bauteile ist das IC-Bauteil 300 in der Lage, in Übereinstimmung mit dem JTAG-Standard zu arbeiten, obwohl die normalerweise getrennten TMS- und TDI-Pins unter Verwendung des TMS/TDI-Pins 312 kombiniert sind. Wie es nachfolgend näher beschrieben wird, ermöglicht die Steuervorrichtung 304 die Verwendung des kombinierten TMS/TDI-Pins 312. Weil TMS- und TDI-Signale nicht gleichzeitig übermittelt werden, kann der TMS/TDI-Pin 312 sowohl die TMS- als auch die TDI-Signale empfangen. Die Steuervorrichtung 304 ist dafür verantwortlich, zu bestimmen, welcher Signaltyp (TMS oder TDI) über die Signalleitung 318 übermittelt wird. Die Steuervorrichtung 304 verwendet wenigstens teilweise die auf der Signalleitung 310 übertragenen Zustandsmaschinendaten zur Bestimmung, ob an dem TMS/TDI-Pin 312 ein TMS-Signal oder ein TDI-Signal empfangen wurde.
  • Als Vorgabe hat die Steuervorrichtung 304 die TMS-Signalleitung 306 aktiviert. Die Steuervorrichtung 304 kann diesen Zustand beibehalten, bis auf der Signalleitung 310 Zustandsmaschinendaten empfangen werden, welche einen von fünf Schleifenzuständen anzeigen. Diese so genannten Schleifenzustände treten auf, wenn das TMS-Signal auf einem niedrigen logischen Pegel ist und wenn dieser niedrige logische Pegel bewirkt, dass ein gegenwärtiger Zustand unverändert bleibt.
  • Auf 2 Bezug nehmend beinhalten die so genannten Schleifenzustände den Shift-DR-Zustand 212 und den Shift-IR-Zustand 224. Wenn die Steuervorrichtung 304 anhand der Zustandsmaschinendaten die Information über die Signalleitung 310 empfängt, dass einer der fünf Schleifenzustände aktiv ist, gibt die Steuervorrichtung 304 auf der Signalleitung 318 empfangene Daten unter Verwendung der TDI-Signalleitung 308 aus.
  • Die Steuervorrichtung 304 beinhaltet einen Befehlsregister-/Datenregisterzähler 324, welcher verwendet werden kann, um die Anzahl von TDI-Bits zu zählen, welche auf der Signalleitung 318 empfangen werden und von der Steuervorrichtung 304 über die TDI-Signalleitung 308 weitergegeben werden. Die Steuervorrichtung 304 verwendet die von dem Zähler 324 gesammelten Bitzahldaten, um zu bestimmen, wann zurückgeschaltet werden soll zur Ausgabe von auf der Signalleitung 318 empfangenen Daten unter Verwendung der TMS-Signalleitung 306. Spezieller beinhaltet die Steuervorrichtung 304 programmierte Daten, welche die Größe der Informationsregister und Datenregister anzeigen, welche von dem JTAG-kompatiblen Bauteil 302 eingesetzt werden. Sobald die Anzahl von auf der Signalleitung 318 empfangenen TDI-Bits die Größe des geladenen Registers (z. B. das Instruktionsregister oder ein Datenregister) erreicht, weiß die Steuervorrichtung 304, dass ein nächstes empfangenes Bit mit einem TMS-Signal verbunden sein wird. Die Steuervorrichtung 304 reagiert, indem sie zurückschaltet zur Ausgabe von empfangenen Signalen über die TMS-Signalleitung 306. Die Steuervorrichtung 304 wird weiter Empfangssignale unter Verwendung der TMS-Signalleitung 306 ausgeben, bis auf der Signalleitung 310 empfangene Zustandsmaschinendaten anzeigen, dass einer der zwei Schleifenzustände begonnen hat.
  • 4 veranschaulicht eine beispielhafte Steuervorrichtung 400, welche verwendet werden kann, um die Anzahl von Pins zu reduzieren, welche notwendig ist, um ein JTAG-kompatibles Bauteil herzustellen. Die Steuervorrichtung 400 beinhaltet eine kombinierte TMS/TDI-Eingangssignalleitung 402, eine Zustandsmaschinendateneingangssignalleitung 404, eine TMS-Ausgangssignalleitung 406 und eine TDI-Ausgangssignalleitung 408. Zwei Schalter 410 und 412 sind bei der beispielhaften Steuervorrichtung 400 implementiert. Die Schalter 410 und 412 sind durch eine Schaltersteuerungsvorrichtung 414 gesteuert. Die Schaltersteuerungsvorrichtung 414 nimmt zwei Eingänge auf. Insbesondere nimmt ein Eingang der Schaltersteuerungsvorrichtung 414 Zustandsmaschinendaten über die Zustandsmaschinendateneingangssignalleitung 404 auf. Ein weiterer Eingang der Schaltersteuerungsvorrichtung 414 nimmt Daten von einem Bitzähler 416 auf.
  • Als Vorgabe ist die TMS/TDI-Signalleitung 402 über den Schalter 410 mit der TMS-Ausgangssignalleitung 406 verbunden. Die Steuervorrichtung 400 bleibt in diesem Zustand, bis durch die auf der Zustandsmaschinendateneingangssignalleitung 404 empfangenen Daten einer der so genannten Schleifenzustände (d. h. der Shift-DR-Zustand oder der Shift-IR-Zustand) angezeigt wird. Einer dieser Schleifenzustände bewirkt, dass die Schaltersteuerungsvorrichtung 414 einen Schaltbefehl 418 erzeugt. In diesem Fall schließt der Schaltbefehl den Schalter 412 und öffnet den Schalter 410.
  • Auf der TMS/TDI-Signalleitung 402 empfangene Signale werden nun durch den Bitzähler 416 geleitet und über die TDI-Ausgangssignalleitung 408 ausgegeben. Der Bitzähler 416 zählt die Anzahl von mit TDI-Signalen verbundenen Bits, welche über die TDI-Ausgangssignalleitung 408 ausgegeben werden. Dieser Zählwert wird über eine Signalleitung 420 an die Schaltersteuerungsvorrichtung 414 weitergegeben. Sobald eine Kapazität eines gegenwärtig die TDI-Signale empfangenden Registers erreicht ist, wie durch eine von dem Bitzähler 416 gezählte Anzahl von Bits im Vergleich gegenüber der Größe des gegenwärtig die TDI-Signale empfangenden Registers angezeigt, erzeugt die Schaltersteuerungsvorrichtung 414 einen Schaltbefehl 418. In diesem Fall schließt der Schaltbefehl 418 den Schalter 410 und öffnet den Schalter 412. Die Schaltersteuerungsvorrichtung 414 kann einen nichtflüchtigen Speicher oder einen flüchtigen Speicher beinhalten, um die physikalischen Registergrößen eines oder mehrerer JTAG-kompatibler Bauteile zu speichern, mit welchen die beispielhafte Steuervorrichtung 400 gekoppelt sein kann.
  • Verfahrensablauf
  • Die folgende Diskussion beschreibt Verfahrensabläufe, welche unter Verwendung der zuvor hierin beschriebenen Implementierungen realisiert werden können. Die Verfahrensabläufe sind als eine Zusammenstellung von Blöcken in einem logischen Ablaufdiagramm veranschaulicht, welche eine Abfolge von Vorgängen darstellen, die durch Hardware, Software oder eine Kombination von Hardware und Software implementiert sein können. Im Zusammenhang mit Software stellen die Blöcke durch einen Computer ausführbare Instruktionen dar, welche bei Ausführung durch einen oder mehrere Prozessoren die genannten Vorgänge ausführen. Allgemein beinhalten durch Computer ausführbaren Instruktionen Routinen, Programme, Objekte, Komponenten, Datenstrukturen und dergleichen, welche bestimmte Funktionen ausführen oder bestimmte abstrakte Datentypen implementieren. Es ist nicht beabsichtigt, dass die Reihenfolge, in welcher die Vorgänge beschrieben sind, als ein Einschränkung auszulegen ist, und eine beliebige Anzahl der beschriebenen Blöcke kann in einer beliebigen Reihenfolge und/oder parallel kombiniert werden, um den Prozess zu implementieren. In Abschnitten der folgenden Diskussion kann Bezug genommen werden auf die Darstellungen von 14 und deren Gegenstand.
  • 5 veranschaulicht ein Flussdiagramm, welches eine Anzahl von Vorgängen 500 beinhaltet, welche zu einem Steuerprozess und/oder -mechanismus gehören, der zur Ermöglichung eines verbesserten JTAG-kompatiblen Bauteils verwendet werden kann.
  • Bei Block 502 werden Zustandsmaschinendaten geprüft. Derartige Zustandsmaschinendaten können von einem JTAG-kompatiblen Bauteil empfangen werden, wie z. B. dem JTAG-kompatiblen Bauteil 302, welches in 3 dargestellt ist. Bei Block 504 wird bestimmt, ob die bei Block 502 empfangenen Zustandsmaschinendaten Informationen beinhalten, welche sich auf einen der so genannten Schleifenzustände beziehen. Wie hierin zuvor diskutiert, beinhalten die so genannten Schleifenzustände den Shift-DR-Zustand und den Shift-IR-Zustand. Wenn die bei Block 502 empfangenen Zustandsmaschinendaten keine Information enthalten, welche anzeigt, dass die Zustandsmaschine einen der so genannten Schleifenzustände erreicht hat, kehrt der Prozess zum Block 502 zurück.
  • Wenn die bei Block 502 empfangenen Zustandsmaschinendaten Informationen beinhalten, welche anzeigen, dass die Zustandsmaschine einen der so genannten Schleifenzustände erreicht hat, werden bei Block 506 die auf einer kombinierten TMS/TDI-Signalleitung empfangenen Daten als TDI-Daten ausgegeben. Bei Block 508 werden mit den TDI-Daten verbundene Bits gezählt. Bei Block 510 wird bestimmt, ob die Anzahl von gezählten Bits die Größe eines die TDI-Daten empfangenden Registers erreicht. Bei Block 512 werden, sobald die Anzahl von gezählten Bits die Größe des die TDI-Daten aufnehmenden Registers erreicht, die auf einer kombinierten TMS/TDI-Signalleitung empfangenen Daten als TMS-Daten ausgegeben.
  • Schlussbemerkung
  • Für die Zwecke dieser Offenbarung und die folgenden Ansprüche wurden die Ausdrücke „gekoppelt” und „verbunden” verwendet, um zu beschreiben, wie verschiedene Elemente gekoppelt sind. Eine solche beschriebene Kopplung von verschiedenen Elementen kann entweder direkt oder indirekt sein. Obwohl der Gegenstand durch für strukturelle Merkmale und/oder Verfahrensschritte typische Sprache beschrieben wurde, versteht es sich, dass der in den beigefügten Ansprüchen definierte Gegenstand nicht notwendigerweise auf die speziellen beschriebenen Merkmale oder Schritte begrenzt ist. Vielmehr sind die speziellen Merkmale und Schritte offenbart als beispielhafte Formen zur Implementierung der Ansprüche.

Claims (11)

  1. Vorrichtung, umfassend: wenigstens einen Signaleingang (312), wobei der wenigstens eine Signaleingang (312) dazu ausgestaltet ist, sowohl TMS-Signale gemäß dem JTAG-Standard als auch TDI-Signale gemäß dem JTAG-Standard zu empfangen, eine JTAG-kompatible Vorrichtung (302) und eine Steuervorrichtung (304; 400) zur Kopplung mit der JTAG-kompatiblen Vorrichtung (302), wobei die Steuervorrichtung (304; 400) mit dem wenigstens einen Signaleingang (312) gekoppelt ist und zum Empfang der über den wenigstens einen Signaleingang (312) übermittelten Signale ausgestaltet ist, wobei die Steuervorrichtung (304; 400) einen Eingang (404) zum Empfang von Zustandsmaschinendaten einer TAP-Steuerung der JTAG-kompatiblen Vorrichtung (302), einen Ausgang (406) zur Ausgabe der TMS-Signale an die JTAG-kompatible Vorrichtung und einen Ausgang (408) zur Ausgabe der TDI-Signale an die JTAG-kompatible Vorrichtung beinhaltet, und wobei die Steuervorrichtung die an dem wenigstens einen Signaleingang (312) empfangenen Signale über den Ausgang zur Ausgabe der TDI-Signale ausgibt, wenn die empfangenen Zustandsmaschinendaten einen Shift-DR-Zustand oder einen Shift-IR-Zustand anzeigen.
  2. Vorrichtung nach Anspruch 1, darüber hinaus umfassend wenigstens einen zusätzlichen Signaleingang (314) und einen Signalausgang (316), wobei der wenigstens eine zusätzliche Signaleingang (314) ein Eingang zum Empfang von TCK-Signalen gemäß dem JTAG-Standard ist und der Signalausgang (316) ein Ausgang zur Ausgabe von TDO-Signalen gemäß dem JTAG-Standard ist.
  3. Vorrichtung nach einem der vorhergehenden Ansprüche, wobei die Steuervorrichtung (304; 400) einen Bitzähler (324; 416) beinhaltet, wobei der Bitzähler dazu ausgestaltet ist, zu den an dem wenigstens einen Signaleingang (312) empfangenen TDI-Signalen gehörende Datenbits zu zählen.
  4. Vorrichtung, umfassend: einen ersten Eingang (402) zum Empfang von sowohl TMS-Signalen gemäß dem JTAG-Standard als auch TDI-Signalen gemäß dem JTAG-Standard; einen zweiten Eingang (404) zum Empfang von Zustandsmaschinendaten einer TAP-Steuerung einer JTAG-kompatiblen Vorrichtung; einen ersten Ausgang (406) zur Ausgabe der an dem ersten Eingang empfangenen TMS-Signale; und einen zweiten Ausgang (408) zur Ausgabe der an dem ersten Eingang empfangenen TDI-Signale, einen ersten Schalter (410), welcher umschaltbar ist, um den ersten Eingang (402) mit dem ersten Ausgang (406) zu verbinden, und einen zweiten Schalter (412), welcher umschaltbar ist, um den ersten Eingang (402) mit dem zweiten Ausgang (408) zu verbinden, und eine Schaltersteuerung (414), welche mit dem ersten und dem zweiten Schalter (410, 412) gekoppelt ist, wobei die Schaltersteuerung (414) dazu ausgestaltet ist, die zwei Schalter (410, 412) basierend auf zumindest den Zustandsmaschinendaten umzuschalten, so dass der erste Eingang (402) mit dem zweiten Ausgang (408) verbunden wird, wenn die Zustandsmaschinendaten einen Shift-DR-Zustand oder einen Shift-IR-Zustand anzeigen.
  5. Vorrichtung nach Anspruch 4, wobei die Schaltersteuerung (414) dazu ausgestaltet ist, die zwei Schalter (410, 412) gleichzeitig umzuschalten.
  6. Vorrichtung nach Anspruch 4 oder 5, wobei die Schaltersteuerung (414) einen ersten Eingang zum Empfang der Zustandsmaschinendaten und einen zweiten Eingang zum Empfang von Bitzählerdaten beinhaltet.
  7. Vorrichtung nach einem der Ansprüche 4–6, darüber hinaus umfassend einen Bitzähler (416), wobei der Bitzähler (416) zum Zählen von an dem ersten Eingang (402) empfangenen Datenbits ausgestaltet ist.
  8. Vorrichtung nach einem der Ansprüche 4–7, wobei die Schaltersteuerung (414) dazu ausgestaltet ist, die zwei Schalter (410, 412) basierend auf den Zustandsmaschinendaten und Datenbitzählwerten umzuschalten.
  9. Verfahren, umfassend: Empfangen von sowohl TMS-Signalen gemäß dem JTAG-Standard als auch TDI-Signalen gemäß dem JTAG-Standard an einem einzigen Eingang, Prüfen von empfangenen Zustandsmaschinendaten einer TAP-Steuerung einer JTAG-kompatiblen Vorrichtung (302), um einen gegenwärtigen Zustand der JTAG-kompatiblen Vorrichtung zu bestimmen, und Ausgabe von empfangenen Daten als TDI-Daten gemäß dem JTAG-Standard, wenn die geprüften Zustandsmaschinendaten einen Shift-DR-Zustand oder einen Shift-IR-Zustand anzeigen.
  10. Verfahren nach Anspruch 9, darüber hinaus umfassend: Ausgeben von empfangenen Daten als TDI-Daten und Zählen von zu den TDI-Daten gehörenden Bits.
  11. Verfahren nach Anspruch 10, darüber hinaus umfassend: Ausgeben der empfangenen Daten als TMS-Daten, wenn die Anzahl der zu den TDI-Daten gehörenden Bits eine Größe eines Registers zum Empfang der TDI-Daten erreicht.
DE102008022750.1A 2007-05-14 2008-05-08 Verbesserte JTAG-Schnittstelle Active DE102008022750B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/748,415 2007-05-14
US11/748,415 US7747916B2 (en) 2007-05-14 2007-05-14 JTAG interface

Publications (2)

Publication Number Publication Date
DE102008022750A1 DE102008022750A1 (de) 2008-11-27
DE102008022750B4 true DE102008022750B4 (de) 2017-02-09

Family

ID=39877388

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008022750.1A Active DE102008022750B4 (de) 2007-05-14 2008-05-08 Verbesserte JTAG-Schnittstelle

Country Status (2)

Country Link
US (1) US7747916B2 (de)
DE (1) DE102008022750B4 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9164858B2 (en) * 2013-03-29 2015-10-20 Testonica Lab Ou System and method for optimized board test and configuration

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60110514T2 (de) * 2000-09-14 2006-01-19 Patria Advanced Solutions Oy Jtag Testanordnung
DE102004043063A1 (de) * 2004-09-06 2006-03-23 Infineon Technologies Ag Halbleiter-Bauelement mit Test-Schnittstellen-Einrichtung

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7308629B2 (en) * 2004-12-07 2007-12-11 Texas Instruments Incorporated Addressable tap domain selection circuit with TDI/TDO external terminal
US5521556A (en) * 1995-01-27 1996-05-28 American Microsystems, Inc. Frequency converter utilizing a feedback control loop
US6020760A (en) * 1997-07-16 2000-02-01 Altera Corporation I/O buffer circuit with pin multiplexing
US6381717B1 (en) * 1998-04-24 2002-04-30 Texas Instruments Incorporated Snoopy test access port architecture for electronic circuits including embedded core having test access port with instruction driven wake-up
US20040264223A1 (en) * 2003-06-30 2004-12-30 Intel Corporation Switched capacitor power converter
US7284170B2 (en) * 2004-01-05 2007-10-16 Texas Instruments Incorporated JTAG circuit transferring data between devices on TMS terminals
US7345502B1 (en) * 2006-01-17 2008-03-18 Xilinx, Inc. Design security for configurable devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60110514T2 (de) * 2000-09-14 2006-01-19 Patria Advanced Solutions Oy Jtag Testanordnung
DE102004043063A1 (de) * 2004-09-06 2006-03-23 Infineon Technologies Ag Halbleiter-Bauelement mit Test-Schnittstellen-Einrichtung

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
The Institute of Electrical and Electronics Engineers: IEEE Standard Test Access Port and Boundary-Scan Architecture. IEEE Standard 1149. 1a-1993, New York, 1993, S.1-1 bis 1-5, 3-1 bis 3-9, 4-1 bis 4-3, 5-1 bis 5-16, 8-1 bis 8-3 *
TIETZE,U., SCHENK,Ch.: Halbleiterschaltungstechnik, 8.überarb. Aufl., Berlin [u.a.]: Springer Verlag, 1986, S.222-227. ISBN 3-540-16720-X *

Also Published As

Publication number Publication date
US7747916B2 (en) 2010-06-29
DE102008022750A1 (de) 2008-11-27
US20080288823A1 (en) 2008-11-20

Similar Documents

Publication Publication Date Title
DE4221748C2 (de) Bypass-Abtastpfad und integrierte Schaltkreiseinrichtung mit mindestens einem solchen Bypass-Abtastpfad
DE69737732T2 (de) Nachrichtenübertragungsverfahren für eine Testzugriffsportsteuerungsvorrichtung (TAP)
DE69118952T2 (de) Halbleitervorrichtung mit integrierter Halbleiterschaltung und Betriebsverfahren dafür
DE69030528T2 (de) Verfahren und Anordnung zum Testen von Schaltungsplatten
DE60025789T2 (de) Logische eingebaute Selbstprüfung (LBIST) Steuerschaltungen, Systeme und Verfahren mit automatischer Bestimmung der maximalen Abtastkettenlänge
DE69024138T2 (de) Verfahren und Einrichtung zur Erzeugung von Steuersignalen
DE69530949T2 (de) Vorrichtung und Verfahren zum Testen eines Systems unter Verwendung eines JTAG-Schaltkreises
EP0186724B1 (de) Prüf- und Diagnoseeinrichtung für Digitalrechner
DE69217524T2 (de) Testschaltung, vorgesehen in digitalen logischen Schaltungen
DE69832605T2 (de) Schnittstellenabtastungselement und kommunikationsvorrichtung die dieses verwendet
DE602005003302T2 (de) Automatischer mit Geschwindigkeit ablaufender Test auf Fehler von Logikblöcken unter Verwendung von BIST-Logikschaltungen
DE2747384A1 (de) Datenverarbeitungseinheit
DE102016116717A1 (de) Scan-Ketten-Schaltung, die eine Injektion eines logischen Selbsttestmusters während der Laufzeit unterstützt
DE60110199T2 (de) Testzugriffs-portsteuerungsvorrichtung (tap) und verfahren zur beseitigung interner intermediärer abtastprüffehler
DE60314525T2 (de) TAP Zeitmultiplexen mit Abtasttest
DE19952262A1 (de) Schaltungssystem und Verfahren zum Prüfen von Mikroprozessoren
DE4208688C2 (de) Umgehungs-Abtastpfad und integrierte Schaltungseinrichtung
DE102009012768B4 (de) JTAG Nachrichtenbox
DE19927094C2 (de) Abtast-Flipflop
DE102008022750B4 (de) Verbesserte JTAG-Schnittstelle
EP1430320B1 (de) Elektronischer baustein und verfahren zu dessen qualifizierungsmessung
DE3784468T2 (de) Testbares mehrmodus-zaehlernetz und methode zur durchfuehrung des tests.
DE4030790C2 (de)
DE3785914T2 (de) Vorgriffsendwertzaehler und methode zur erzeugung eines endzaehlerstandes als ausgangsignal.
DE602004008234T2 (de) Automatisches detektieren und routen von testsignalen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R018 Grant decision by examination section/examining division
R020 Patent grant now final