[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE69031362T2 - Verzögerungsfehler-Testvorrichtung - Google Patents

Verzögerungsfehler-Testvorrichtung

Info

Publication number
DE69031362T2
DE69031362T2 DE69031362T DE69031362T DE69031362T2 DE 69031362 T2 DE69031362 T2 DE 69031362T2 DE 69031362 T DE69031362 T DE 69031362T DE 69031362 T DE69031362 T DE 69031362T DE 69031362 T2 DE69031362 T2 DE 69031362T2
Authority
DE
Germany
Prior art keywords
test
output
input
signal
logic
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
DE69031362T
Other languages
English (en)
Other versions
DE69031362D1 (de
Inventor
Lee D Whetsel
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Application granted granted Critical
Publication of DE69031362D1 publication Critical patent/DE69031362D1/de
Publication of DE69031362T2 publication Critical patent/DE69031362T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/318541Scan latches or cell details
    • 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/318552Clock circuits details
    • 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/318577AC testing, e.g. current testing, burn-in
    • G01R31/31858Delay testing

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Description

    BETROFFENE ANWENDUNGEN
  • Diese Anwendung bezieht sich auf die anhängige Anmeldung für das US-Patent Nr. 241,520, eingereicht am 7. September 1988, mit dem Titel "Integrated Test Circuit", (europäische Patentanmeldung EP-A-0 358 376).
  • Diese Anwendung bezieht sich auf die gleichzeitig anhängige Anmeldung für das US-Patent Nr. 241,439, eingereicht am 7. September 1988, mit dem Titel "Testing Buffer/Register ", (europäische Patentanmeldung EP-A-0 358 365).
  • Diese Anwendung bezieht sich auf die europäische Patentanmeldung EP-A-0 358 371 mit dem Titel "Enhanced Test Circuit".
  • TECHNISCHES GEBIET DER ERFINDUNG
  • Diese Erfindung bezieht sich allgemein auf integrierte Schaltungen und insbesondere auf ein Verfahren und eine Vorrichtung zum Testen von Verzögerungsfehlern zwischen integrierten Schaltungen.
  • HINTERGRUND DER ERFINDUNG
  • Integrierte Schaltungen sind auf einer Schaltungsplatine über Signalwegverbindungen verbunden, um Schaltkreise auszubilden. Während der Schaltungsoperation tauschen die integrierten Schaltungen über die Signalwegverbindungen untereinander Daten und Steuerinformationen aus. Für eine korrekte Schaltungsoperation müssen die Signalwegverbindungen frei sein von Fehlern, wie z. B. Unterbrechungen oder Kurzschlüssen. In integrierten Schaltungen sind im allgemeinen Techniken wie z. B. Boundary Scan implementiert, um die Signalwegverbindungen zwischen den integrierten Schaltungen auf Kurzschlüsse und Unterbrechungen zu prüfen.
  • Jedoch können zeitbezogene Fehler, die als "Laufzeitfehler" bezeichnet werden, auf den Signalwegverbindungen unter Verwendung der Standard-Boundary-Scan-Techniken nicht geeignet geprüft werden. Ein Laufzeitfehler ist weder eine Unterbrechung noch ein Kurzschluß und kann auf einem Signalweg vorhanden sein, der elektrisch in Ordnung ist. Ein Laufzeitfehler tritt dann auf, wenn die Zeitspanne, die für ein Signal erforderlich ist, um sich von der sendenden Quelle zu einer empfangenden Senke auszubreiten, eine vorgegebene Zeitspanne überschreitet.
  • Obwohl ein Boundary- oder Randtestversuch verwendet werden kann, um die Integrität der Verdrahtungsverbindungen zwischen integrierten Schaltungen zu prüfen, kann er nicht effektiv verwendet werden, um Laufzeitprobleme zu prüfen, die zwischen einem Ausgangspuffer einer integrierten Treiberschaltung und einem Eingangspuffer einer integrierten Empfangsschaltung auftreten können. Um Signalweglaufzeiten zu testen, müssen von den Ausgängen einer integrierten Schaltung Daten angelegt werden und innerhalb einer kurzen Zeitperiode in die Eingänge einer weiteren integrierten Schaltung eingelesen werden. Ein Boundary-Scan-Versuch ist aufgrund der Länge der Zeitspanne zwischen dem Anlegen von Daten an den Ausgang einer integrierten Schaltung und dem Einlesen des Ausgangs in einen Eingang einer benachbarten integrierten Schaltung zur Durchführung von Lauf zeittests ungeeignet. In der vorgeschlagenen IEEE-Boundary-Scan-Norm beträgt z. B. die minimale Anzahl der Testtakte zwischen einem Zeitpunkt, zu dem Daten von einer integrierten Schaltung ausgegeben werden können, bis zu einem Zeitpunkt, zu dem diese in eine weitere integrierte Schaltung eingelesen werden können, 1,5 Testtakte. Bei einer Testtaktfrequenz von 10 MHz müßte die Kombinationslogikverzögerung zwischen der integrierten Treiberschaltung und der integrierten Empfangsschaltung größer sein als 150 ns, um als verzögerungsbezogener Fehler erfaßt zu werden. Dieser Grad der zeitlichen Auflösung ist ungeeignet, um Kombinationslogik oder andere Typen von Verzögerungsfehlern auf den Signalwegverbindungen zwischen integrierten Schaltungen zu prüfen.
  • Es entstand somit in der Industrie Bedarf an einem Verfahren und einer Vorrichtung zum Testen von Laufzeitfehlern zwischen integrierten Schaltungen.
  • Die DE-A 37 00 251, auf der der Oberbegriff des Anspruchs 1 beruht, schlägt eine Vorrichtung vor zum Messen von Laufzeitverzögerungen innerhalb logischer Schaltungen, in der ein Signal mit der steigenden Flanke eines Taktimpulses an die zu testende Schaltung angelegt wird und das Ausgangssignal von der logischen Schaltung mit der fallenden Flanke desselben Taktimpulses detektiert wird. Die Länge des Taktimpulses wird anschließend variiert, um die minimale Zeitspanne zu finden, innerhalb der sich das Eingangssignal durch die getestete Schaltung ausbreiten kann.
  • Die Erfindung schafft eine Vorrichtung zum Testen der Laufzeitverzögerung zwischen einer Treibervorrichtung und einer Empfangsvorrichtung, mit: einem Taktgeber zum Erzeugen mehrerer Taktimpulse mit ersten und zweiten Flanken; wobei die Treibervorrichtung dazu dient, abhängig von einer ersten Taktflanke ein einem bekannten Wert entsprechendes Signal abzugeben; wobei die Empfangsvorrichtung abhängig von der zweiten Taktflanke an einem Eingang der Empfangsvorrichtung abtastet; und einer Schaltung zum Vergleichen des abgetasteten Eingangssignals mit erwarteten Daten, um zu bestimmen, ob das Signal innerhalb der Zeitperiode zwischen der ersten und der zweiten Flanke zu der Empfangsvorrichtung gelangt ist; dadurch gekennzeichnet, daß die Treibervorrichtung eine Testzellenschaltung enthält, die wahlweise entweder in einem ersten Modus zur Durchführung eines Boundary-Scan-Tests oder einem zweiten Modus zum Ausgeben des Signals entsprechend dem bekannten Wert abhängig von einer ersten Taktflanke arbeitet, daß die Empfangsvorrichtung eine Testzellenschaltung enthält, die wahlweise in einem ersten Modus zur Durchführung eines Boundary-Scan-Tests oder einem zweiten Modus zum Abtasten des Signals an einem Eingang der Empfangsvorrichtung abhängig von der zweiten Taktflanke arbeitet; und daß die Vergleichsschaltung Schaltungseinheiten zum Vergleichen des abgetasteten Eingangssignals mit dem bekannten Wert im zweiten Modus aufweist, um wie oben erwähnt zu bestimmen, ob das Signal innerhalb der Zeitperiode zwischen der ersten und der zweiten Flanke zu der Empfangsvorrichtung gelangt ist.
  • Gemäß der vorliegenden Erfindung kann eine Laufzeitfehlertestvorrichtung geschaffen werden, die die Nachteile und Probleme, die mit Laufzeitfehlertestvorrichtungen des Standes der Technik einhergehen, im wesentlichen beseitigt oder verhindert. Eine Randtestzelle enthält vorzugsweise einen Kippmodus, der durch einen Spezialtestbefehl aktiviert werden kann, um dem Ausgangsrand einer integrierten Schaltung zu ermöglichen, mit der fallenden oder steigenden Flanke eines Testtaktsignals einen Übergang zwischen Logikzuständen auszugeben. Derselbe Befehl konfiguriert eine Randtestzelle am Eingangsrand einer integrierten Empfangsschaltung in einem Abtastmodus, um das Abtasten der Daten am Eingang der integrierten Empfangsschaltung mit der folgenden Flanke des Testtakteingangssignals zu ermöglichen. Die abgetasteten Daten können untersucht werden, um zu ermitteln, ob das Ausgangssignal in der vorgeschriebenen Zeitspanne zur integrierten Empfangsschaltung gelangt ist. Dieser Aspekt der Erfindung bietet gegenüber dem Stand der Technik mehrere Vorteile. Unter Verwendung dieses Lösungsansatzes kann der Signalweglauf zeittest während des Zeitintervalls zwischen einer fallenden und einer steigenden Flanke eines Testtaktsignals durchgeführt werden, d. h. während des Zeitintervalls, das einem halben Taktzyklus entspricht. Bei einem Takteingangssignal mit 10 MHz und 50 % Tastverhältnis kann z. B. eine Signalwegverzögerung detektiert werden, die 50 ns überschreitet. Bei 20 MHz ist die Messung einer Verzögerung von 25 ns möglich.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Für ein besseres Verständnis der vorliegenden Erfindung und deren Vorteile wird hiermit auf die folgenden Beschreibungen in Verbindung mit den beigefügten Zeichnungen verwiesen, in welchen:
  • Fig. 1 ein Schaltbild einer integrierten Schaltung zeigt, die Testzellen besitzt, die am Rand der internen Anwendungslogik angeordnet sind;
  • Fig. 2 ein Schaltbild einer bevorzugten Ausführungsform der Testzelle der Fig. 1 zeigt;
  • Fig. 3 ein Schaltbild der Verbindungen zwischen Testzellen einer integrierten Schaltung zeigt;
  • Fig. 4a ein Schaltbild einer bevorzugten Ausführungsform einer bidirektionalen Testzelle zeigt;
  • Fig. 4b ein Schaubild der bidirektionalen Testzelle der Fig. 4a zeigt, die in einer integrierten Schaltung angeordnet ist;
  • Fig. 5 eine Implementierung der Testzelle der vorliegen Erfindung zeigt;
  • Fig. 6 eine Testschaltung zeigt, die eine Basistestzelle mit Vergleichslogikschaltung enthält;
  • Fig. 7 eine Testschaltung zeigt, die eine Basistestzelle mit PRPG/PSA-Logikschaltung enthält;
  • Fig. 8 eine Testschaltung zeigt, die eine Basistestzelle mit PRPG/PSA-Logikschaltung und programmierbarer Polynomabgriff- Logikschaltung enthält;
  • Fig. 9a-b Verbindungen zwischen Testschaltungen zeigen, die programmierbare Polynom-Tap-Logikschaltungen besitzen;
  • Fig. 10 eine bidirektionale Testzelle mit PRPG/PSA-Testschaltung zeigt;
  • Fig. 11 eine bidirektionale Testzelle mit PRPG/PSA-Testschaltung und programmierbarer Polynom-Tap-Logikschaltung zeigt;
  • Fig. 12 eine Schaltung zeigt, die Testvorrichtungen verwendet, um Eingangssignale für eine Standardkombinationslogik zu beobachten und Ausgangssignale derselben zu steuern;
  • Fig. 13 ein Schaltbild einer bevorzugten Ausführungsform einer Testvorrichtung der Fig. 12 zeigt;
  • Fig. 14 ein Schaltbild einer Testvorrichtung zeigt, die PSA- Operationen ausführt;
  • Fig. 15 ein Schaltbild einer Testvorrichtung zeigt, die gleichzeitig PSA- und PRPG-Operationen ausführt;
  • Fig. 16 ein Schaltbild einer Zählerfreigabelogik zeigt, die in Verbindung mit einem Testzellenregister verwendet wird;
  • Fig. 17 ein Blockschaltbild einer Schaltung zeigt, die das Signalweglauf zeittestverfahren und die Vorrichtung der vorliegenden Erfindung verwendet;
  • Fig. 18 ein Zeitablaufdiagramm ist, das die vorliegende Erfindung erläutert;
  • Fig. 19 ein Zeitablaufdiagramm ist, das die vorliegende Erfindung darstellt, die verwendet wird, um die Verzögerung eines Ausgangs mit offenem Kollektor zu messen;
  • Fig. 20 ein Blockschaltbild der vorliegenden Erfindung zeigt, mit der mehrere Signalwege getestet werden;
  • Fig. 21 die vorliegende Erfindung zeigt, die in Verbindung mit Teilschaltungen einer einzelnen IC verwendet wird; und
  • Fig. 22 die vorliegende Erfindung zeigt, die beim Testen von Verzögerungen durch Logikgatter verwendet wird.
  • GENAUE BESCHREIBUNG DER ERFINDUNG
  • Die bevorzugte Ausführungsform der vorliegenden Erfindung wird am besten mit Bezug auf die Fig. 1 bis 22 der Zeichnungen verstanden, wobei für ähnliche und einander entsprechende Teile der verschiedenen Zeichnungen ähnliche Bezugszeichen verwendet werden.
  • Fig. 1 zeigt ein Blockschaltbild einer integrierten Schaltung (IC) 10, die Testzellen 12a-h besitzt, die an deren Rand angeordnet sind, um den Datenfluß durch die Anwendungslogik 14 der IC 10 zu steuern und zu beobachten. Die integrierte Schaltung 10 umfaßt mehrere Anschlußstifte 16, die eine elektrische Verbindung zwischen der integrierten Schaltung 10 und anderen integrierten Schaltungen ermöglichen. Zu Darstellungszwecken ist die integrierte Schaltung 10 mit vier Anschlußstiften, die die Eingangssignale IN1, 1N2, 1N3 und 1N4 empfangen, sowie vier Anschlußstiften, die die Ausgangssignale OUT1, OUT2, OUT3 und OUT4 erzeugen, gezeigt. Andere Signale für den Chip umfassen einen seriellen Dateneingang (SDI), einen Steuerbus 17 sowie einen seriellen Datenausgang (SDO). Die Eingangssignale IN1-IN4 sind mit den Eingangspuffern 18 verbunden, deren Ausgänge mit den entsprechenden Testzellen 12a-d verbunden sind. Jede Testzelle 12a-h besitzt ihren eigenen seriellen Dateneingang und ihren eigenen seriellen Datenausgang, die mit SDI 1-8 und SDO 1-8 bezeichnet sind. In der dargestellten Konfiguration ist der SDI-Eingang der IC 10 mit SDI1 der Testzelle 12a verbunden, während die SDI-Eingänge der nachfolgenden Zellen 12b-h den SDO der jeweils vorangehenden Zelle empfangen. Somit ist SDO1 mit SD12 verbunden, SDO2 mit SDI3 verbunden usw. SDO8 ist mit dem SDO-Anschlußstift der IC 10 verbunden. Der Steuerbus 17 ist parallel mit jeder der Testzellen 12a-f verbunden.
  • Jede Testzelle enthält einen Dateneingang (DIN) und einen Datenausgang (DOUT). Bei den Eingangstestzellen 12a-d ist DIN mit dem Ausgang des entsprechenden Puffers 18 verbunden, während DOUT mit den Eingängen der Anwendungslogik 14 verbunden ist. Die Eingänge der Anwendungslogik 14 sind entsprechend den Eingängen IN1-IN4 mit IN1'-IN4' bezeichnet. IN1'-IN4' waren die Eingänge in den Chip, wenn keine Teststruktur vorgesehen wäre.
  • Die Ausgänge der Anwendungslogik 14 sind mit OUT1', OUT2', OUT3' und OUT4' bezeichnet. Die Ausgänge der Anwendungslogik OUT1'-OUT4' sind mit den Dateneingängen (DINs) der Ausgangstestzellen 12e-h verbunden. Die Datenausgänge (DOUTs) der Ausgangstestzellen 12e-h sind mit den Ausgangspuffern 20 verbunden, die den OUT-Signalen OUTI-OUT4 zugeordnet sind.
  • Die Testzellen 12a-h bilden die Grundlage für einen großen Teil der Testfunktionen innerhalb der integrierten Schaltung 10. Das SDI-Signal tritt über die IC 10 in die Testzelle 12a ein und kann sich zur jeweils folgenden Zelle 12b-h ausbreiten, wobei es schließlich über SDO8 von der Testzelle 12h ausgegeben wird. Der serielle Datenweg wird verwendet, um Daten in die jeweiligen Testzellen 12a-h hineinzuschieben oder aus diesen herauszuschieben.
  • Der Steuerbus bietet Signale zum Betreiben der jeweiligen Testzellen 12a-h während des Tests und wird in Verbindung mit den Fig. 2-3 genauer beschrieben. Wenn die Testzellen 12a-h in einen Testmodus versetzt sind, unterbinden sie den normalen Datenfluß in die IC 10 und aus dieser heraus. Im Testmodus steuert jede Testzelle 12a-h den mit ihrem Ausgang verbundenen logischen Knoten und beobachtet den mit ihrem Eingang verbundenen logischen Knoten. Wie z. B. in Fig. 1 gezeigt, können die mit den vier Eingängen INI-IN4 verbundenen Testzellen 12ad die Logikpegel an den Eingängen INI-IN4 beobachten und die Logikpegel an den Ausgängen IN1'-IN4' steuern. In ähnlicher Weise können die mit den vier Ausgängen verbundenen Testzellen 12e-h die Logikpegel an den Eingängen OUT1'-OUT4' beobachten und die Logikpegel an den Ausgängen OUT1-OUT4 steuern.
  • In Fig. 2 ist ein genaues Blockschaltbild einer einzelnen Testzelle 12 gezeigt. Die Testzelle 12 besitzt drei Dateneingänge, nämlich Dateneingang (DIN), Beobachtbarkeitsdateneingang (ODI) sowie serieller Dateneingang (SDI). Es sind zwei Datenausgänge vorhanden: Datenausgang (DOUT) und serieller Datenausgang (SDO). Der Steuerbus 17 umfaßt fünf Signale, Dateneingang-Multiplexerauswahlsignale A und B, ein Registertaktsignal (CLK), ein Zwischenspeicherfreigabesignal (HOLD) sowie ein Datenausgangs-Multiplexerauswahlsignal (DMX).
  • Ein erster Multiplexer 22 empfängt die Signale ODI und SDI gemeinsam mit dem Ausgang eines D-Flip-Flops 24 und dem invertierten Ausgang eines D-Zwischenspeichers 26. Der Ausgang des Multiplexers 22 ist mit dem Eingang des Flip-Flops 24 verbunden. Das Signal CLK ist mit dem Takteingang des Flip-Flops verbunden. Der Ausgang des Flip-Flops 24 ist mit dem Eingang des Zwischenspeichers 26 verbunden und erzeugt ferner das Signal SDO. Der Ausgang des Zwischenspeichers 26 ist gemeinsam mit dem Signal DIN mit dem Eingang eines zweiten Multiplexers 28 verbunden. Das Signal HOLD ist mit dem Zwischenspeicherfreigabeanschluß verbunden. Der Ausgang des Multiplexers 28 erzeugt das Signal DOUT. Der Multiplexer 28 wird durch das Signal DMX freigegeben.
  • Im Betrieb ermöglicht der 4:1-Multiplexer 22, daß das Eingangssignal für das Flip-Flop 24 aus einer von vier möglichen Quellen ausgewählt wird: ODI, SDI, der Ausgang des Flip-Flops 24 oder der invertierte Ausgang des Zwischenspeichers 26. Der Zwischenspeicher 26 kann so gesteuert werden, daß er den Ausgang des Flip-Flops 24 weiterleitet oder seinen aktuellen Zustand hält, in Abhängigkeit von dem Logikpegel, der vom Eingangssignal HOLD angelegt wird. Der 2:1-Multiplexer 28 ermöglicht, daß der Ausgang DOUT vom Eingang DIN oder vom Ausgang des Zwischenspeichers 26 gesteuert wird, in Abhängigkeit vom Logikpegel, der vom Eingang DMX angelegt wird. Die Kombination des 4:1-Multiplexers 22, des Flip-Flops 24, des Zwischenspeichers 26 und des 2:1-Multiplexers ermöglicht, daß die Testzelle 12 in vier synchronen Betriebsarten operiert: Laden, Verschieben, Kippen und Leerlauf.
  • Im Lademodus gibt die Testzelle 12 den Logikzustand des Eingangs ODI über den Multiplexer 22 in das D-Flip-Flop 24 ein. Der Eingang ODI ist mit einem Signal gekoppelt, das während des Tests zu beobachten ist, wobei in den meisten Fällen der Eingang ODI mit demselben Randsignal verbunden ist, das mit dem Eingang DIN der Testzelle verbunden ist. Jedoch kann ODI auch mit anderen Signalen verbunden sein. Um zu bewirken, daß eine Ladeoperation stattfindet, werden die Eingänge A und B auf vorgegebene Pegel gesetzt, wodurch ermöglicht wird, daß der Eingang ODI über den 4:1-Multiplexer 22 mit dem Flip-Flop 24 verbunden wird. Normalerweise liegt der Eingang HOLD des Zwischenspeichers 26 auf Niedrigpegel, wodurch der Zwischenspeicherausgang gezwungen wird, seinen derzeitigen Zustand während einer Ladeoperation beizubehalten.
  • Im Schiebemodus gibt die Testzelle den Logikzustand des Eingangs SDI in das Flip-Flop 24 ein und gibt diesen Logikzustand über den Ausgang SDO aus. Der Schiebemodus ermöglicht, daß die Testzellen 12 im Boundary-Scan-Weg miteinander verbunden werden, so daß serielle Daten in den Boundary-Scan-Weg geschoben und aus diesem herausgeschoben werden können. In einer Boundary-Scan-Konfiguration ist der Eingang SDI der Testzelle mit dem Ausgang SDO einer vorangehenden Testzelle verbunden, wie in Fig. 1 gezeigt ist. Um zu veranlassen, daß die Schiebeoperation stattfindet, werden die Eingänge A und B auf vorgegebene Pegel gesetzt, wodurch ermöglicht wird, daß der Eingang SDI über den 4:1-Multiplexer mit dem Flip-Flop 24 verbunden wird. Normalerweise wird der Eingang HOLD des Zwischenspeichers 26 auf Niedrigpegel gehalten, wodurch der Zwischenspeicherausgang gezwungen wird, während der Schiebeoperation seinen aktuellen Zustand beizubehalten.
  • Im Kippmodus wird unabhängig vom Zustand der Eingänge SDI oder ODI der Ausgang des Flip-Flops 24 mit der Geschwindigkeit des Eingangs CLK zwischen den zwei Logikzuständen hin- und hergeschaltet. In dieser Konfiguration ist der Eingang HOLD auf einen hohen Logikpegel gesetzt, um den Zwischenspeicher 26 freizugeben, wobei die Eingänge A und B so gesetzt sind, daß der invertierte Ausgang des Zwischenspeichers 26 an das Flip- Flop 24 weitergeleitet wird. Mit dem in dieser Weise gesetzten Steuereingang wird der Rückführungsweg vom Ausgang des Flip- Flops 24 zum Eingang des Zwischenspeichers 26 und vom invertierten Ausgang des Zwischenspeichers 26 zum Eingang des Flip- Flops 24 ausgebildet. Aufgrund der Dateninversion am invertierten Ausgang des Zwischenspeichers 26 wird bei jedem CLK-Eingangssignal der entgegengesetzte Logikzustand in das Flip-Flop 24 eingegeben, wodurch der Kippeffekt erzeugt wird.
  • Im Leerlaufmodus verharrt die Testzelle im aktuellen Zustand, während CLK aktiv ist, unabhängig vom Zustand der Eingänge SDI oder ODI. In dieser Konfiguration wird der Ausgang des Flip- Flops 24 über den 4:1-Multiplexer 22 geleitet; somit ist der Eingang des Flip-Flops 24 mit dessen Ausgang verbunden, wodurch der aktuelle Zustand des Flip-Flops 24 bei jedem Takteingang aktualisiert werden kann.
  • Die Testzelle 12 kann sich entweder im "Normal"-Modus oder im "Test"-Modus befinden. Im Normalmodus erzeugt die Testzelle 12 den Datenweg, über den die Eingänge (IN1-IN4) und die Ausgänge (OUT1-OUT4) frei weitergeleitet werden können. Der Normalmodus wird erreicht durch Setzen des Signals DMX derart, daß das Signal DIN über den Multiplexer 28 zu DOUT weitergeleitet wird. Im Normalmodus kann die Testzelle 12 in irgendeiner der vier synchronen Betriebsarten (Laden, Verschieben, Leerlauf oder Kippen) betrieben werden, ohne den normalen Betrieb der IC 10 zu stören.
  • Ein Steuersignal kann über die Eingänge A und B ausgegeben werden, um die Testzelle 12 zu veranlassen, eine Ladeoperation auszuführen. Die Ladeoperation veranlaßt die Testzelle 12, den am Eingang ODI vorhandenen Logikpegel aufzunehmen. Wenn die Daten aufgenommen worden sind, können sie aus der Testzelle 12 herausgeschoben werden, indem eine Schiebeoperation durchgeführt wird. Die Ladeoperation findet synchron mit dem Eingangssignal CLK statt. Nach der Schiebeoperation kehrt die Testzelle 12 typischerweise in den Leerlaufmodus zurück. Diese Fähigkeit erlaubt der Testzelle 12, einen Eingang der IC und/oder Ausgangsrandsignale abzutasten und die abgetasteten Daten zur Untersuchung während des normalen Betriebs der IC herauszuschieben. Die Möglichkeit, Randdaten während des normalen Betriebs abzutasten, ermöglicht der Testzelle 12, die Funktionswechselwirkung mehrerer ICS auf einer Schaltungsplatine zu überprüfen, ohne daß eine teuere Testausrüstung und externe Testproben verwendet werden müssen.
  • Ferner kann im Normalmodus die Steueranweisung über den Eingang DMX ausgegeben werden, um die Testzelle 12 zu veranlassen, ein vorgegebenes Testdatenbit in den normalen Eingangs/Ausgangs-Randweg der IC einzusetzen. Das einzusetzende Testdatenbit wird mittels einer Schiebeoperation in das Flip- Flop 24 geschoben. Der Eingang HOLD des Zwischenspeichers 26 wird auf Hochpegel gesetzt, um zu ermöglichen, daß die Testdaten im Flip-Flop über den Zwischenspeicher geleitet und in den 2:1-Multiplexer 28 eingegeben werden. Um die Testdaten einzusetzen, wird der Eingang DMX auf einen Pegel gesetzt, der den Multiplexer veranlaßt, die Testdaten vom Ausgang des Zwischenspeichers 26 an den Ausgang DOUT weiterzuleiten. Nachdem die Testdaten eingesetzt worden sind, wird der Eingang DMX umgeschaltet, um den 2:1-Multiplexer 28 zu veranlassen, normale Daten von DIN nach DOUT weiterzuleiten.
  • Die Fähigkeit zum Einsetzen von Testdaten während des Normalbetriebs erlaubt den Testzellen, das normale Verhalten einer oder mehrerer ICs in einer Schaltung zu modifizieren. Eine bestimmte Verwendung der Einsetzfähigkeit ist, in den Eingangsrand und/oder Ausgangsrand einer oder mehrerer ICs einer Schaltungsplatine einen Fehler einzuschleusen, um zu beobachten, ob der Fehler detektiert und korrigiert werden kann. Um die Abtast- und Einsetztestfunktionen während des Normalbetriebs durchzuführen, muß die Testzelle 12 zu einem qualifizierten Zeitpunkt Steuersignale über den Steuerbus 17 empfangen.
  • Die Testzelle 12 kann ferner einen Selbsttest durchführen, während sie sich im Normalmodus befindet, ohne den normalen Betrieb der IC 10 zu stören. Eine Schiebeoperation kann durchgeführt werden, um das Flip-Flop 24 mit einem bekannten Zustand zu initialisieren. Nach der Schiebeoperation wird das Steuersignal ausgegeben, um die Testzelle 12 zu veranlassen, für einen CLK-übergang in den Kippmodus zu wechseln. Während dieses übergangs wird das Flip-Flop mit seinem invertierten Zustand geladen. Nach dieser Inversion der Daten wird eine weitere Schiebeoperation durchgeführt, um die Inhalte des Flip-Flops 24 wiederzugewinnen und die Inversionsoperation zu überprüfen. Dieser Test überprüft die kombinierte Operation aller Flip-Flops 24, 4:1-Multiplexer 22 und Zwischenspeicher 26 der Testzellen sowie die Integrität des gesamten Boundary- Scan-Weges.
  • Im Testmodus unterbindet die Testzelle 12 den normalen Datenfluß vom Eingang DIN zum Ausgang DOUT. Der Testmodus wird erreicht, indem der Eingang DMX auf einen solchen Pegel gesetzt wird, daß der Ausgang des Zwischenspeichers 26 mit dem Ausgang DOUT verbunden ist. Normalerweise wird vor dem Wechseln in den Testmodus die Testzelle 12 vorbereitet, um über ein Schiebemuster ein Anfangstestmuster auszugeben. Ferner befindet sich die Testzelle 12 üblicherweise im Leerlaufzustand, wobei der Eingang HOLD des D-Zwischenspeichers auf Niedrigpegel gesetzt ist, so daß dessen aktueller Ausgangswert aufrechterhalten wird.
  • Während des Testmodus kann eine Ladeoperation durchgeführt werden, wodurch die Testzelle 12 veranlaßt wird, den am Eingang ODI anliegenden Logikpegel aufzunehmen. Die Ladeoperation findet synchron mit dem Eingangssignal CLK statt. Während einer Ladeoperation wird der Eingang HOLD auf Niedrigpegel gesetzt, so daß der D-Zwischenspeicher in seinem aktuellen Zustand verharrt. In ähnlicher Weise verharrt der Ausgang DOUT in seinem aktuellen Zustand, da er durch den Zwischenspeicherausgang gesteuert wird.
  • Nach der Ladeoperation wird eine Schiebeoperation durchgeführt, die die Testzelle 12 veranlaßt, Daten durch das Flip- Flop 24 vom Eingang SDI zum Ausgang SDO zu schieben. Die Schiebeoperation ermöglicht der Testzelle, die während einer früheren Ladeoperation aufgenommenen Daten herauszuschieben und die nächsten Ausgangstestdaten hineinzuschieben, um den Ausgang DOUT zu beaufschlagen. Die Schiebeoperation tritt synchron mit dem Eingangssignal CLK auf. Während einer Schiebeoperation wird der Eingang HOLD auf Niedrigpegel gehalten, so daß der Ausgang des Zwischenspeichers 26 in seinem aktuellen Zustand verharrt. Ebenso verharrt der Ausgang DOUT in seinem akktuellen Zustand, da er vom Zwischenspeicherausgang angesteuert wird.
  • Nach der Lade- und Schiebeoperationssequenz kehrt die Testzelle 12 in den Leerlaufmodus zurück, wobei der Eingang HOLD auf Hochpegel gesetzt wird, so daß der Zwischenspeicher 26 mit den neuen Ausgangstestdaten aktualisiert wird, die im Flip- Flop 24 vorhanden sind. Wenn der Zwischenspeicher 26 aktualisiert wird, werden die neuen Ausgangstestdaten an den Ausgang DOUT angelegt. Nach der Aktualisierungsoperation wird der Eingang HOLD auf Niedrigpegel gesetzt, so daß der Zwischenspeicher 26 während der anschließenden Lade- und Schiebeoperationen in seinem aktuellen Zustand verharrt.
  • Die HOLD-, Lade-, Schiebe- und Aktualisierungs/Anlege-Sequenz wird während des Boundary-Scan-Tests der internen und externen Logikelemente, die mit der Testschaltung der IC verbunden sind, wiederholt. Durch Vorsehen separater Speicherelemente für die Ausgangsteststeuerung (z. B. Zwischenspeicher 26) und für die Eingangstestbeobachtung und Verschiebung (z. B. Flip- Flop 24) kann die Testzelle 12 die interne Logik einer IC 10 und die externe Logik und/oder die Verdrahtungsverbindungen, die am Rand der IC angebracht sind, gleichzeitig testen. Dieses Merkmal verringert die Testzeit beträchtlich.
  • Im Testmodus kann die Testzelle 12 eine Kippoperation ausführen. Da der Ausgang des Zwischenspeichers 26 während des Testmodus mit dem Ausgang DOUT verbunden ist, kann der Ausgang DOUT veranlaßt werden, mit dem Takt des Eingangs CLK zu kippen, wenn die Kippoperation durchgeführt wird. Der Vorteil der Verwendung eines D-Zwischenspeichers anstelle eines zweiten D- Flip-Flops ist, daß der D-Zwischenspeicher veranlaßt werden kann, den Ausgang Q des D-Flip-Flops weiterzuleiten, indem der Eingang HOLD auf Hochpegel gesetzt wird. Der Kippmodus kann als einfacher Testmustergenerator verwendet werden oder kann zur Messung von Parametern der Ausgangspuffer 20 der IC 10 verwendet werden.
  • Fig. 3 zeigt eine vereinfachte Ansicht eines IC-Entwurfs mit einem Eingang (IN), einem Ausgang (OUT), einem Anwendungslogikabschnitt 14 sowie einem Boundary-Scan-Weg, der aus zwei Testzellen 12i und 12j besteht. Der Eingang der Anwendungslogik 14 ist mit dem Ausgang des 2:1-Multiplexers 28 der Testzelle 12i verbunden und ist mit IN' bezeichnet. Der Ausgang der Anwendungslogik ist mit OUT' bezeichnet und mit den Signalen DIN und ODI der Testzelle 12j verbunden.
  • Das Eingangssignal IN tritt in den Eingang DIN der Eingangstestzelle 12i ein, durchläuft den 2:1-Multiplexer 28 und wird vom Ausgang DOUT der Eingangstestzelle über IN' an die Anwendungsschaltung 14 ausgegeben. In ähnlicher Weise wird das Ausgangssignal OUT' der Anwendungslogik in den Eingang DIN der Ausgangstestzelle 12j eingegeben, durchläuft dessen 2: 1-Multiplexer 28 und wird über OUT vom Ausgang DOUT der Ausgangstestzelle aus der IC ausgegeben. Der Eingang ODI der Eingangstestzelle 12i ist mit dem Eingang (IN) der IC verbunden, während der Eingang ODI der Ausgangstestzelle 12j mit dem Ausgang (OUT') der Anwendungslogik verbunden ist. Der Eingang SDI der IC ist mit dem Eingang SDI der Eingangstestzelle verbunden, während der serielle Datenausgang (SDO) der IC mit dem Ausgang SDO der Ausgangstestzelle verbunden ist. Zwischen dem Ausgang SDO der Eingangstestzelle 12i und dem Eingang SDI der Ausgangstestzelle 12j besteht ein serieller Datenweg, der eine interne Verbindung zwischen den Testzellen zum Verschieben von Daten erzeugt. Die Steuerbussignale (A, B, CLK, HOLD und DMX) sind mit beiden Testzellen 12i und 12j verbunden, wodurch beiden ermöglicht wird, gemeinsam synchron zu operieren.
  • Im Normalmodus fließen die Daten von IN zu IN' über die Eingangstestzelle 12i in die Anwendungslogik 14 und fließen anschließend aus der Anwendungslogik von OUT' über die Ausgangstestzelle 12j zu OUT. Die folgenden Beispiele beschreiben die Sequenz der Steuersignale, die über den Steuerbus 17 ausgegeben wird, um die Testzellen 12i und 12j zu veranlassen, eine Abtast- und eine Einsetztestoperation am Rand der IC in Fig. 3 während des normalen Betriebs durchzuführen.
  • ABTASTOPERATIONSSEQUENZ
  • (1) Anfangs befinden sich beide Testzellen im Normalmodus und im Leerlaufmodus 64 46 64 44 66 4644
  • - Steuerbus: DMX = 0, BA 11( HOLD = 0, CLK = aktiv
  • - (wobei BA den Auswahlsteuersignalen entspricht, die an den 4:1-Multiplexer 22 ausgegeben werden)
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (2) Wechsel in den Lademodus für einen CLK-Takt, um Eingangs-
  • - und Ausgangs-Randdaten aufzunehmen
  • - Steuerbus: DMX = 0, BA = 01, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen lesen jeweils den Logikpegel an ihrem Eingang ODI ein
  • (3) Wechsel in den Schiebemodus für zwei CLK-Takte, um die aufgenommenen Daten heraus zuschieben
  • - Steuerbus: DMX = 0, BA = 00, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen lesen jeweils den Logikpegel an ihrem Eingang SDI ein
  • (4) Wechsel in den Leerlaufmodus, Test abgeschlossen
  • - Steuerbus: DMX = 0, BA = 11( HOLD 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • TESTDATENEINSETZ-OPERATIONSSEQUENZ
  • (1) Anfangs befinden sich beide Testzellen im Normalmodus und im Leerlaufmodus
  • - Steuerbus: DMX = 0, BA = 11, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (2) Wechsel in den Schiebemodus für zwei CLK-Takte, um die Testdaten zum Einsetzen zu laden
  • - Steuerbus: DMX = 0, BA = 00, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen lesen jeweils den Logikpegel an ihrem Eingang SDI ein
  • (3) Wechsel in den Leerlaufmodus und aktualisieren der D- Zwischenspeicher beider Testzellen mit den einzusetzenden Testdaten
  • - Steuerbus: DMX = 0, BA = 11, HOLD = "0,1,0", CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen werden auf den Logikpegel in den D-Flip-Flops aktualisiert
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (4) Bleiben im Leerlaufmodus, Setzen von DMX auf Hochpegel, um Daten einzusetzen
  • - Steuerbus: DMX = 1, BA = 11, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom D-Zwischenspeicher der Eingangstestzelle angesteuert
  • - Ausgang OUT der IC wird vom D-Zwischenspeicher der Ausgangstestzelle angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (5) Bleiben im Leerlaufmodus, Setzen von DMX auf Niedrigpegel, um Testdaten zu entfernen, Test abgeschlossen
  • - Steuerbus: DMX = 0, BA = 11, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • Im Testmodus ist der normale Fluß von Eingangs- und Ausgangsdaten durch die Testzellen 12i und 12j unterbunden. Im Testmodus steuert die Eingangstestzelle 12i den Eingang IN' der Anwendungslogik und beobachtet den Eingang IN des IC. In ähnlicher Weise steuert die Ausgangstestzelle 12j den Ausgang OUT vom IC 10 und beobachtet den Ausgang OUT' von der Anwendungslogik. Die folgenden Beispiele beschreiben die Sequenz der Steuersignale, die über den Steuerbus ausgegeben werden, um die Testzellen 12i und 12j zu veranlassen, eine Boundary- Scan-Test- und Ausgangspuffer-Kippoperation durchzuführen.
  • BOUNDARY-SCAN-TEST-OPERATIONSSEQUENZ
  • (1) Anfangs befinden sich beide Testzellen im Normalmodus und im Leerlaufmodus
  • - Steuerbus: DMX = 0, BA = 11, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (2) Wechsel in den Schiebemodus für zwei CLK-Takte, um das erste Ausgangstestmuster hineinzuschieben
  • - Steuerbus: DMX = 0, BA = 00, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen lesen jeweils den Logikpegel an ihrem Eingang SDI ein
  • (3) Wechsel in den Leerlaufmodus, aktualisieren der D-Zwischenspeicher mit dem ersten Ausgangstestmuster
  • - Steuerbus: DMX = 0, BA = 11, HOLD = "0,1,0", CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen werden auf den Logikpegel in den D-Flip-Flops aktualisiert
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (4) Bleiben im Leerlaufmodus, Wechsel in den Testmodus, Anlegen des ersten Ausgangstestmusters
  • - Steuerbus: DMX = 1, BA = 11, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom D-Zwischenspeicher der Eingangstestzelle angesteuert
  • - Ausgang OUT der IC wird vom D-Zwischenspeicher der Ausgangstestzelle angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (5) Wechsel in den Lademodus für einen CLK-Takt, um Eingangsund Ausgangsranddaten aufzunehmen
  • - Steuerbus: DMX = 1, BA = 01, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom D-Zwischenspeicher der Eingangstestzelle angesteuert
  • - Ausgang OUT der IC wird vom D-Zwischenspeicher der Ausgangstestzelle angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen lesen jeweils den Logikpegel an ihrem Eingang ODI ein
  • (6) Wechsel in den Schiebemodus für zwei CLK-Takte, um die aufgenommenen Daten herauszuschieben und das nächste Ausgangstestmuster hineinzuschieben
  • - Steuerbus: DMX 1, BA = 00, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom D-Zwischenspeicher der Eingangstestzelle angesteuert
  • - Ausgang OUT der IC wird vom D-Zwischenspeicher der Ausgangstestzelle angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen lesen jeweils den Logikpegel an ihrem Eingang SDI ein
  • (7) Wechsel in den Leerlaufmodus, aktualisieren der D-Zwischenspeicher, um nächstes Ausgangstestmuster anzulegen
  • - Steuerbus: DMX = 1, BA = 11, HOLD = "0,1,0", CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom D-Zwischenspeicher der Eingangstestzelle angesteuert
  • - Ausgang OUT der IC wird vom D-Zwischenspeicher der Ausgangstestzelle angesteuert
  • - Die D-Zwischenspeicher beider Testzellen werden auf den Logikpegel in den D-Flip-Flops aktualisiert
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (8) Wiederholen der Schritte 5 bis 7, bis der Randtest abgeschlossen ist, und anschließendes Ausgeben von Steuersignalen, um in den Normalmodus und den Leerlaufmodus (Schritt 1) zurückzukehren
  • AUSGANGSPUFFER-KIPPOPERATIONSSEQUENZ
  • (1) Anfangs befinden sich beide Testzellen im Normalmodus und im Leerlaufmodus
  • - Steuerbus: DMX = 0, BA = 11, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (2) Wechsel in den Schiebemodus für zwei CLK-Takte, um das Ausgangspufferkippmuster hineinzuschieben
  • - Steuerbus: DMX = 0, BA = 00, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen lesen jeweils den Logikpegel an ihrem Eingang SDI ein
  • (3) Wechsel in den Leerlaufmodus, aktualisieren der D-Zwischenspeicher mit dem Ausgangstestmuster
  • - Steuerbus: DMX = 0, BA = 11, HOLD = "0,1,0", CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen werden auf den Logikpegel in den D-Flip-Flops aktualisiert
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (4) Bleiben im Leerlaufmodus, Wechsel in den Testmodus, Anlegen des Ausgangstestmusters
  • - Steuerbus: DMX = 1, BA = 11, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom D-Zwischenspeicher der Eingangstestzelle angesteuert
  • - Ausgang OUT der IC wird vom D-Zwischenspeicher der Ausgangstestzelle angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • (5) Wechsel in den Kippmodus, Setzen des Eingangs HOLD auf Hochpegel, Kipptest beginnt (für "N" Takte)
  • - Steuerbus: DMX = 1, BA = 10, HOLD = 1, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom D-Zwischenspeicher der Eingangstestzelle angesteuert
  • - Ausgang OUT der IC wird vom D-Zwischenspeicher der Ausgangstestzelle angesteuert
  • - Die D-Zwischenspeicher beider Testzellen leiten Daten vom D-Flip-Flop zum Ausgang DOUT weiter
  • - Die D-Flip-Flops beider Testzellen lesen Q-D-Zwischenspeicherausgang ein
  • (6) Wechsel in den Leerlaufmodus, Setzen der Eingänge HOLD und DMX auf Niedrigpegel, Kipptest abgeschlossen
  • - Steuerbus: DMX = 0, BA = 11, HOLD = 0, CLK = aktiv
  • - Eingang IN' der Anwendungslogik wird vom Eingang IN der IC angesteuert
  • - Ausgang OUT der IC wird vom Ausgang OUT' der Anwendungslogik angesteuert
  • - Die D-Zwischenspeicher beider Testzellen verharren in ihren aktuellen Zuständen
  • - Die D-Flip-Flops beider Testzellen verharren in ihren aktuellen Zuständen
  • BEACHTE: Wenn in Fig. 3 nicht erwünscht ist, die Eingangstestzelle während des Kipptests zu kippen, kann ein separater Eingang HOLD verwendet werden, um den Ausgang der Eingangstestzelle zu zwingen, statisch zu sein, während die Ausgangstestzelle kippt. In ähnlicher Weise kann ein separates Steuersignal (A und B) die Eingangstestzelle in einen Leerlaufmodus versetzen, während die Ausgangstestzelle kippt.
  • In Fig. 4a ist ein Blockschaltbild einer bevorzugten Implementierung einer bidirektionalen Testzelle 30 gezeigt. Die bidirektionale Testzelle 30 kann in Verbindung mit einem Eingangs/Ausgangs-Anschlußstift verwendet werden, über den Signale in beiden Richtungen fließen können. Die bidirektionale Zelle verwendet die in Fig. 2 dargestellte Testzelle 12 als Basiszelle, wobei zusätzliche Schaltungen hinzugefügt sind, um eine bidirektionale Operation zu ermöglichen. Genauer enthält die bidirektionale Zelle 30 drei zusätzliche Multiplexer 32, 34 und 36. Der erste Multiplexer 32 besitzt zwei Eingänge SYSG (die System-Dreizustandsfreigabe) und TSTG (die Test-Dreizustandsfreigabe). Der Multiplexer wird durch ein Signal SELG (Auswahlfreigabe) gesteuert, das einen der zwei Eingänge auswählt. Der Ausgang des ersten Multiplexers 32 ist das Signal OBG (Ausgangspuffer-Dreizustandsfreigabe). Das Signal OBG steuert den Ausgangszustand des inaktiven Ausgangspuffers der IC.
  • Der zweite Multiplexer 34 empfängt zwei Eingangssignale, ein Signal DINA und ein Signal DINB. Der Multiplexer 34 wird vom Ausgang des Multiplexers 32, dem Signal OBG, gesteuert. Das Eingangssignal DINA ist ein Ausgangssignal der Anwendungslogik 14 der IC, während das Eingangssignal DINB das externe Eingangssignal vom I/O-Puffer ist. Das Signal OBG, das vom Multiplexer 32 ausgegeben wird, wird verwendet, um zwischen den Eingängen des Multiplexers 34 zu wählen.
  • Der dritte Multiplexer 36 besitzt zwei Eingänge, DINA und den nicht invertierten Ausgang (LQ) vom Zwischenspeicher 26 der Basistestzelle 12. Dieser dritte Multiplexer 36 wird vom Signal DMX gesteuert.
  • Der Ausgang des zweiten Multiplexers 34 ist mit dem Eingang ODI der Basistestzelle 12 verbunden. Der Ausgang des dritten Multiplexers 36 ist mit DOUTA bezeichnet, während das Signal DOUT von der Basistestzelle 12 mit DOUTB bezeichnet ist.
  • Im Betrieb wird der Ausgang OBG vom Eingang SYSG (Normalmodus- Dreizustandssteuereingang) gesteuert, wenn der Eingang SELG auf Niedrigpegel liegt. Wenn der Eingang SELG auf Hochpegel liegt, wird der Ausgang OBG des ersten Multiplexers 32 vom Eingang TSTG (Testmodus-Dreizustandssteuereingang) gesteuert. In Fig. 4a wird angenommen, daß ein auf dem Signal OBG ausgegebener Niedrigpegel einen Ausgangspuffer veranlaßt, aktiv zu sein, während ein auf dem Signal OBG ausgegebener Hochpegel einen Ausgangspuffer veranlaßt, inaktiv zu sein.
  • Der zweite Multiplexer 34 wird vom Ausgang OBG des ersten Multiplexers 32 gesteuert. Der Zweck des zweiten Multiplexers ist, einen der zwei Dateneingänge DINA oder DINB mit dem Eingang ODI der Basistestzelle zu verbinden, um zu ermöglichen, daß ein geeignetes Signal während einer Ladeoperation abgetastet wird. Der Eingang DINA des zweiten Multiplexers 34 ist ein Ausgang der Anwendungslogik. Wenn der Auswahleingang OBG des zweiten Multiplexers auf Niedrigpegel gesetzt wird, was eine Ausgangsoperation der Anwendungslogik anzeigt, wird das Signal DINA mit dem Eingang ODI der Basistestzelle 12 verbunden und kann während einer Ladeoperation abgetastet werden. Wenn der Auswahleingang OBG des zweiten Multiplexers auf Hochpegel gesetzt wird, was eine Eingabeoperation in die Anwendungslogik anzeigt, wird das Signal DINB mit dem Eingang ODI der Testzelle 12 verbunden und kann während einer Ladeoperation abgetastet werden. Der dritte Multiplexer 36 wird vom Signal DMX gesteuert, das ebenfalls an die Testzelle 12 gesendet wird. Der Ausgang LQ der Testzelle 12 ist der Ausgang des D-Zwischenspeichers 26 innerhalb der Testzelle 12. Der Ausgang LQ ermöglicht, daß das Ausgangssignal DOUTA im Testmodus während der Lade- und Schiebeoperationen konstant gehalten wird. Wenn der Eingang DMX der Testzelle 12 und des dritten Multiplexers 36 auf Niedrigpegel gehalten wird, befindet sich die bidirektionale Zelle 30 im Normalmodus. Im Normalmodus wird der Ausgang DINA über den dritten Multiplexer 36 geleitet und über den Ausgang DOUTA aus der Zelle ausgegeben, wodurch der normale Datenausgabeweg von der Anwendungslogik 14 zum Ausgangspufferabschnitt eines I/O-Puffers eingerichtet wird. In ähnlicher Weise wird im Normalmodus der Eingang DINB über den 2:1-Multiplexer 28 innerhalb der Testzelle 12 geleitet und über den Ausgang DOUTB aus der Zelle ausgegeben, wodurch der normale Dateneingangsweg vom Eingangspufferabschnitt eines I/O-Puffers zur Anwendungslogik 14 eingerichtet wird.
  • Wenn der Eingang DMX der Testzelle 12 und des dritten Multiplexers 36 auf Hochpegel gesetzt wird, wird die bidirektionale Testzelle 30 in den Testmodus versetzt. Im Testmodus wird der Testdatenausgang LQ der Testzelle über den dritten Multiplexer 36 geleitet und über den Ausgang DOUTA aus der Randzelle ausgegeben, wodurch der Testdatenausgangsweg von der Testzelle 12 zum Ausgangspufferabschnitt eines I/O-Puffers eingerichtet wird. In ähnlicher Weise wird im Testmodus der Testdatenausgang LQ der internen Testzellen über den internen 2: 1-Multiplexer 28 der Testzellen geleitet und über den Ausgang DOUTB aus der Testzelle 12 ausgegeben, wodurch der Testdatenausgangsweg von der Testzelle zur Anwendungslogik 14 eingerichtet wird.
  • In Fig. 4b ist eine Blockdarstellung der bidirektionalen Testzelle 30 gezeigt, die zwischen einem bidirektionalen Puffer und der Anwendungslogik 14 angeschlossen ist. Wenn eine Datenausgangsoperation durchgeführt wird, wird der Ausgangspuffer 38 durch OBG freigegeben. Im Normalmodus treten die Daten von der Anwendungslogik 14 über den Eingang DINA in die bidirektionale Testzelle 30 ein, durchlaufen die bidirektionale Testzelle 30 und werden über den Ausgang DOUTA zum Ausgangspuffer 38 weitergeleitet. Der Ausgang DOUTA wird über den Ausgangspuffer 38 geleitet und an den I/O-Anschlußstift 40 angelegt. Im Testmodus werden die in der bidirektionalen Testzelle 30 gespeicherten Testdaten über den Ausgang DOUTA dem Ausgangspuffer zugeführt, durchlaufen den Ausgangspuffer 38 und werden am I/O-Anschlußstift 40 angelegt.
  • Wenn eine Dateneingabeoperation durchgeführt wird, wird der Ausgangspuffer durch das Signal OBG in einen Zustand mit hoher Impedanz versetzt. Im Normalmodus treten die Daten vom I/O- Anschlußstift 40 über den Eingangspuffer 41 und den Eingang DINB in die bidirektionale Testzelle 30 ein, durchlaufen die Testzelle 30 und werden über den Ausgang DOUTB an die Anwendungslogik angelegt. Im Testmodus werden die in der Testzelle 30 gespeicherten Testdaten über den Ausgang DOUTB an die Anwendungs logik angelegt.
  • In Fig. 5 ist ein schematisches Schaubild gezeigt, das eine bestimmte Implementierung der Testzelle 12 zeigt. Die Implementierung umfaßt Multiplexer 22 und 28, ein D-Flip-Flop 24 sowie einen Zwischenspeicher 26.
  • Der erste Multiplexer 22 besitzt sechs unabhängige Eingangssignale. Das Signal SDI wird in zwei kaskadierte Invertierer 108 und 110 eingegeben. Der resultierende Ausgang des Inverters 110 wird anschließend in ein Übertragungsgatter 112 eingegeben. Ein Übertragungsgatter wird gebildet, indem die beiden Source-Anschlüsse und Drain-Anschlüsse eines P-Kanal- Transistors mit einem N-Kanal-Transistors verbunden werden. Der Ausgang des Übertragungsgatters 112 ist mit dem Ausgang des Übertragungsgatters 114 und mit dem Eingang des Übertragungsgatters 116 verbunden. Der Ausgang des Übertragungsgatters 116 ist in ähnlicher Weise mit dem Ausgang des Übertragungsgatters 122 und mit dem Eingang zweier kaskadierter Invertierer 118 und 120 verbunden. Dieser Ausgang am Invertierer 120 stellt den endgültigen Ausgang des Multiplexers 22 dar.
  • Der Eingang ODI des Multiplexers 22 ist mit dem Übertragungsgatter 114 verbunden. Der Ausgang des Übertragungsgatters 114 ist mit dem Ausgang des Übertragungsgatters 112 und mit dem Eingang des Übertragungsgatters 116 verbunden.
  • Ein dritter Eingang des Multiplexers 22 ist der invertierte Ausgang des Zwischenspeichers 26. Dieses Signal wird in das Übertragungsgatter 124 eingegeben. Der Ausgang des Übertragungsgatters 124 ist mit dem Ausgang des Übertragungsgatters 126 und mit dem Eingang des Übertragungsgatters 122 verbunden.
  • Ein vierter Eingang des Multiplexers 22 ist der Ausgang des D- Flip-Flops 24. Dieses Signal wird in das Übertragungsgatter 126 eingegeben. Der Ausgang des Übertragungsgatters 126 ist mit dem Ausgang des Übertragungsgatters 124 und mit dem Eingang des Übertragungsgatters 122 verbunden. Der resultierende Ausgang des Übertragungsgatters 122 ist mit dem Ausgang des Übertragungsgatters 116 verbunden.
  • Die zwei übrigen Eingänge des Multiplexers 22 dienen als Auswahlsignale für die verschiedenen Übertragungsgatter innerhalb des Multiplexers 22. Das Eingangssignal A ist zuerst mit dem Invertierer 128 verbunden. Der Ausgang des Invertierers 128 wird dann mit dem Eingang des Invertierers 130 verbunden. Zusätzlich wird der Ausgang des Invertierers 128 mit dem P- Kanal-Gate-Anschluß der Übertragungsgatter 114 und 126 verbunden. Derselbe Ausgang ist mit dem N-Kanal-Gate-Anschluß der Übertragungsgatter 112 und 114 verbunden. Der Ausgang des Invertierers 130 ist mit dem P-Kanal-Gate-Anschluß der Übertragungsgatter 112 und 124 und mit dem N-Kanal-Gate-Anschluß der Übertragungsgatter 114 und 126 verbunden.
  • Der Eingang B des Multiplexers 22 wird ferner als Auswahlsignal verwendet. Der Eingang B ist mit dem Invertierer 132 verbunden. Der Ausgang des Invertierers 132 ist mit dem Invertierer 134 verbunden. Außerdem ist der Ausgang des Invertierers 132 mit dem P-Kanal-Gate-Anschluß des Übertragungsgatters 122 und dem N-Kanal-Gate-Anschluß des Übertragungsgatters 116 verbunden. Der Ausgang des Invertierers 134 ist mit dem N- Kanal-Gate-Anschluß des Übertragungsgatters 122 und mit dem P- Kanal-Gate-Anschluß des Übertragungsgatters 116 verbunden.
  • Das D-Flip-Flop 24 ist sowohl mit einem Takteingang CLK als auch mit dem Ausgang des Multiplexers 22 verbunden. Innerhalb des D-Flip-Flops 24 wird das Taktsignal in den Invertierer 140 eingegeben, dessen Ausgang verwendet wird, um den Gate-Anschluß des N-Kanal-Transistors 142 zu steuern. Das Taktsignal wird ferner verwendet, um den Gate-Anschluß des N-Kanal-Transistors 144 zu steuern. Der Eingang D des D-Flip-Flops 24 ist mit dem ersten Source/Drain-Anschluß des N-Kanal-Transistors 142 verbunden. Der zweite Source/Drain-Anschluß des Transistors 142 ist mit dem Eingang des Invertierers 146 verbunden. Der Ausgang des Invertierers 146 ist mit dem ersten Source/Drain-Anschluß des N-Kanal-Transistors 144 und ferner mit dem Eingang des Invertierers 148 verbunden. Der Ausgang des Invertierers 148 ist mit dem Eingang des Invertierers 146 verbunden. Der zweite Source/Drain-Anschluß des Transistors 144 ist mit dem Eingang des Invertierers 150 verbunden. Der Ausgang des Invertierers 150 ist sowohl mit dem Eingang des Invertierers 152 als auch mit dem Eingang des Invertierers 154 verbunden. Der Ausgang des Invertierers 154 ist mit dem Eingang des Invertierers 150 verbunden. Der Ausgang des Invertierers 150 ist ferner mit dem Eingang des Übertragungsgatters 126 verbunden. Der Ausgang des Invertierers 152 ist mit dem invertierten Ausgang des D-Flip-Flops 24 verbunden. Der invertierte Ausgang des D-Flip-Flops 24 wird anschließend in den Invertierer 156 eingegeben. Der Ausgang des Invertierers 156 ist mit dem Ausgang SDO der Testzelle verbunden.
  • Der Ausgang des D-Flip-Flops 24 (der Ausgang des Invertierers 150) ist mit dem Eingang D des Zwischenspeichers 26 verbunden. Dieser Eingang ist mit dem ersten Source/Drain-Anschluß des N- Kanal-Transistors 160 verbunden. Der zweite Source/Drain- Anschluß des N-Kanal-Transistors 160 ist mit dem Eingang des Invertierers 162 verbunden. Innerhalb des Zwischenspeichers 26 ist der Ausgang des Invertierers 162 mit dem Eingang des Invertierers 166 und des Invertierers 164 verbunden. Der Ausgang des Invertierers 166 ist mit dem Eingang des Invertierers 162 verbunden. Der Ausgang des Invertierers 162 stellt auch den invertierten Ausgang des Zwischenspeichers 26 dar. Wie oben erwähnt, ist dieser invertierte Ausgang über das Übertragungsgatter 124 mit dem Multiplexer 22 verbunden. Der Ausgang des Invertierers 164 stellt den nicht invertierten Ausgang des Zwischenspeichers 26 dar, der mit dem Multiplexer 28 verbunden ist. Der Zwischenspeicher 26 wird ferner durch eine Haltespannung gesteuert, die in den Basis-Anschluß des N- Kanal-Transistors 160 eingegeben wird.
  • Der zweite Multiplexer 28 innerhalb der Testzelle besitzt drei separate Eingänge, nämlich DIN, den Ausgang des Invertierers 164 sowie DMX. Das Signal DIN ist mit einem der Gate-Anschlüsse des P-Kanal-Transistors 170 und des N-Kanal-Transistors 172 verbunden. Der Ausgang des Invertierers 164 ist mit dem Gate-Anschluß des P-Kanal-Transistors 182 und des N-Kanal- Transistors 184 verbunden. Der Eingang DMX ist mit den Gate- Anschlüssen der N-Kanal-Transistoren 174, 176 und 178 sowie mit dem Gate-Anschluß des P-Kanal-Transistors 180 verbunden. Der erste Source/Drain-Anschluß des N-Kanal-Transistors 178 ist mit Vcc verbunden, während der zweite Source/Drain-Anschluß mit dem Knoten 196 verbunden ist. In ähnlicher Weise ist der erste Source/Drain-Anschluß des N-Kanal-Transistors 176 mit Masse verbunden, während der zweite Source/Drain- Anschluß mit dem Knoten 196 verbunden ist. Der Knoten 196 ist ferner mit dem Gate-Anschluß des P-Kanal-Transistors 188 und dem Gate-Anschluß des N-Kanal-Transistors 186 verbunden. Die ersten Source/Drain-Anschlüsse der P-Kanal-Transistoren 188 und 180 sind miteinander verbunden und mit Vcc verbunden. Die zweiten Source/Drain-Anschlüsse der P-Kanal-Transistoren 188 und 180 sind mit den ersten Source/Drain-Anschlüssen der P- Kanal-Transistoren 182 bzw. 170 verbunden. Die zweiten Source/Drain-Anschlüsse der P-Kanal-Transistoren 182 und 170 sind miteinander verbunden und mit dem Knoten 194 verbunden. Die ersten Source/Drain-Anschlüsse der N-Kanal-Transistoren 184 und 172 sind miteinander verbunden und ferner mit dem Knoten 194 verbunden. Die zweiten Source/Drain-Anschlüsse der N-Kanal-Transistoren 184 und 172 sind mit den ersten Source/Drain-Anschlüssen der N-Kanal-Transistoren 174 bzw. 186 verbunden. Die zweiten Source/Drain-Anschlüsse der N-Kanal- Transistoren 174 und 186 sind mit Masse verbunden. Der Knoten 196 ist ferner mit den Gate-Anschlüssen der N-Kanal-Transistoren 192 und 190 verbunden. Der erste Source/Drain-Anschluß des N-Kanal-Transistors 192 ist mit Vcc verbunden. Der zweite Source/Drain-Anschluß des N-Kanal-Transistors 192 ist mit dem ersten Source/Drain-Anschluß des N-Kanal-Transistors 190 verbunden, wobei dieses kombinierte Signal das Signal DOUT der Testzelle darstellt. Der zweite Source/Drain-Anschluß des N- Kanal-Transistors 190 ist mit Masse verbunden.
  • Die vorliegende Erfindung erzielt eine Hochgeschwindigkeitsleistung am Beobachtbarkeitsdateneingang (ODI), behält eine Nullhaltezeit am Schiebedateneingang (SDI) bei, erhöht die Initialisierungszeit am SDI und erhöht die Lauf zeitverzögerung vom Taktübergang bis zur Ausgabe am SDO. Eine Nullhaltezeit am SDI eliminiert jedes anomale Datenausbreitungsproblem in einer kaskadierten Konfiguration. Eine große Initialisierungszeit am SDI und eine leichte Erhöhung der Takt-Q-Verzögerung vergrößert den Taktverzögerungsspielraum, um Ausbreitungsfehler aufgrund von Verzögerungen zwischen den verschiedenen Komponenten der Testzelle zu eliminieren.
  • Im ersten Multiplexer 22 werden zwei weiche Invertierer 108 und 110 verwendet, um das serielle Dateneingangssignal zu verlangsamen und somit die Initialisierungszeit zu erhöhen. Da diese Invertierer nur auf den Eingang SDI angewendet werden, wird durch dieses Verfahren keine Leistungsverschlechterung am Eingang ODI erhalten. Im Ausgangsweg von SDO sind zwei weitere Invertierer 150 und 152 eingesetzt, um die Takt-Q-Ausbreitungsverzögerung etwas zu erhöhen. Eine SPICE-Charakterisierung zeigt, daß die Erfindung eine Minimum/Maximum-SDI- Initialisierungszeit von 2/14 ns, eine SDI-Nullhaltezeit und eine Minimum/Maximum-Takt-Q-Verzögerung von 0,96/5,96 ns besitzt. Diese Daten führen zu einem Minimum/Maximum- Taktverzögerungsspielraum von 2,96/19,96 ns.
  • Die Testzellen der vorliegenden Erfindung bieten erhebliche Vorteile gegenüber dem Stand der Technik. Erstens, die Testzelle der vorliegenden Erfindung kann verwendet werden, um interne und externe Randtestverfahren gleichzeitig durchzuführen, um die Gesamttestzeit zu reduzieren. Zweitens, die Testzellen können während des normalen Betriebs der integrierten Host-Schaltung am Rand Daten abtasten oder einsetzen. Drittens, die Testzelle wird synchron mit einem freilaufenden Testtakt betrieben. Viertens, die vorliegende Erfindung schafft ein Verfahren des Kippens eines Ausgangspuffers einer IC, unabhängig von der Anwendungslogik der IC, um parametrische Messungen zu erhalten und die Randtests zu vereinfachen. Fünftens, die Testzelle bietet eine Selbsttestfähigkeit.
  • Die Funktionalität der Testzelle 12 der vorliegenden Erfindung kann durch die Verwendung von Zellbibliotheken verbessert werden, in denen zusätzliche Schaltungen in einer oder mehreren der Testzellen 12, die in der IC 10 verwendet werden, vorgesehen sein können, um eine verbesserte Testschaltung zu schaffen. Eine Bibliothek von solchen Schaltungen kann vorgesehen sein, um einem Schaltungsentwickler zu ermöglichen, eine bestimmte IC 10 den Kundenwünschen anzupassen.
  • In Fig. 6 ist ein maskierbarer Vergleichslogikabschnitt 200 in Verbindung mit der Testzelle 12 der vorliegenden Erfindung gezeigt. Der maskierbare vergleichslogikabschnitt 200 fügt Vergleichstestmerkmale zum Durchführen eines Tests in Abhängigkeit von einer Bedingung hinzu.
  • Der maskierbare Vergleichslogikabschnitt 200 umfaßt das Exklusiv-ODER-Gatter 202 und ein NICHT-UND-Gatter 204. Das Exklusiv-ODER-Gatter 202 besitzt zwei Eingänge: Einen ersten Eingang, der mit den Eingängen DIN und ODI der Testzelle 12 verbunden ist, und einen zweiten Eingang, der mit einem Erwartete-Daten-Signal (EXPD) verbunden ist. Das NICHT-UND-Gatter 204 besitzt ebenfalls zwei Eingänge: Einen Eingang, der mit dem Ausgang des Exklusiv-ODER-Gatters 202 verbunden ist, sowie einen zweiten Eingang, der mit einem Vergleichsmaskensignal (CMPMSK) verbunden ist. Der Ausgang des NICHT-UND-Gatters 204 stellt ein Vergleichsausgangssignal (CMPOUT) dar.
  • Die maskierbare Vergleichslogik 200 schafft eine Einrichtung zum Vergleichen des am Eingang DIN der Testzelle 12 erscheinenden Logikpegels mit einem am Eingang EXPD erscheinenden vorgegebenen Logikpegel. Wenn die Logikpegel am Eingang DIN und am Eingang EXPD übereinstimmen, wird der Ausgang des Exklusiv-ODER-Gatters auf Niedrigpegel gesteuert. Wenn die Logikpegel am Eingang DIN und am Eingang EXPD nicht übereinstimmen, wird der Ausgang des Exklusiv-ODER-Gatters auf Hochpegel gesteuert. Ein Niedrigpegelausgang (Übereinstimmungsbedingung) des Exklusiv-ODER-Gatters veranlaßt das NICHT-UND- Gatter, über den Ausgang CMPOUT einen Hochpegel auszugeben. Ein Hochpegelausgang (keine Übereinstimmung) des Exklusiv- ODER-Gatters 202 veranlaßt das NICHT-UND-Gatter 204, über den Ausgang CMPOUT einen Niedrigpegel auszugeben, wenn nicht der Eingang CMPMSK des NICHT-UND-Gatters 204 auf Niedrigpegel liegt.
  • Ein logischer Hochpegel am Ausgang CMPOUT des Vergleichslogikabschnitts 200 zeigt an, daß das Eingangs- oder Ausgangsrandsignal, das durch diese spezielle Testzelle läuft, gleich einem erwarteten Zustand ist. Durch Vorsehen ähnlicher Testzellen an jedem Eingangs- und Ausgangssignal einer integrierten Schaltung gemeinsam mit der Logik zum Erfassen des Zustands, in dem alle CMPOUT-Signale von den verschiedenen Testzellen auf Hochpegel liegen, ist es möglich, das Auftreten eines erwarteten Randzustands über den gesamten Bereich der Eingänge und Ausgänge einer integrierten Schaltung zu detektieren.
  • In einigen Randvergleichsanwendungen können die Zustände eines oder mehrerer Eingänge und/oder Ausgänge der integrierten Schaltung irrelevant sein. Unter diesen Umständen kann die Vergleichslogik 200 gezwungen werden, die Vergleichsoperation auszublenden und unabhängig vom Ergebnis der Vergleichsoperation einen Hochpegel am Ausgang CMPOUT auszugeben. Diese Fähigkeit ermöglicht, um den Rand eines integrierten Schaltungsentwurfs "Bedeutungslos"- Vergleichsbedingungen zu setzen. Die Bedeutungslos-Bedingung wird erreicht, indem CMPMSK einer bestimmten Testzelle auf einen logischen Niedrigpegel gesetzt wird. Alle Testzellen, an deren Eingang CMPMSK ein Niedrigpegel angelegt ist, geben an ihrem Ausgang CMPOUT einen Hochpegel aus. Durch das Zwingen des Ausgangs CMPOUT auf Hochpegel beeinflussen die Testzellen mit den Bedeutungslos- Zuständen das Gesamtergebnis eines Vergleichs, der in anderen Zellen am Rand einer integrierten Schaltung stattfindet, nicht.
  • In einigen Anwendungen können die Testzellen erforderlich sein, um Pseudozufalls-Mustererzeugungs-(PRPG) und/oder Parallelsignaturanalyse-(PSA)-Fähigkeiten am Rand einer integrierten Schaltung zu schaffen, um das Testen zu erleichtern. Im PRPG-Modus kann eine Serie von seriell verbundenen Testzellen veranlaßt werden, an den Ausgängen DOUT eine Pseudozufalls- Ausgangsmustersequenz zu erzeugen. Im PSA-Modus kann eine Serie von seriell verbundenen Testzellen veranlaßt werden, die am Eingang DIN erscheinenden Daten zu Testzwecken zu einer "Signatur" zu komprimieren.
  • Eine bevorzugte Implementierung einer Bibliothekszelle, die eine PSA-Testlogik implementieren kann, ist in Fig. 7 gezeigt. Die Eingänge und Ausgänge der Basistestzelle 12 umfassen die in Verbindung mit Fig. 2 beschriebenen Signale. Außerdem empfängt der PSA-Logikabschnitt 206 zwei Eingangssignale, nämlich Datenmaske (DATMSK) und PSA-Freigabe (PSAENA). Die Eingänge DATMSK und PSAENA sind Erweiterungen des Steuerbusses.
  • Der PSA-Logikabschnitt 206 umfaßt ein Exklusiv-ODER-Gatter 208 und zwei NICHT-UND-Gatter 210 und 212. Das NICHT-UND-Gatter 210 ist mit dem Signal DATMSK und dem Eingangssignal DIN verbunden. Das NICHT-UND-Gatter 212 ist mit dem Signal PSAENA und dem Signal SDI verbunden. Die Ausgänge der NICHT-UND- Gatter 210 und 212 sind mit den Eingängen des Exklusiv-ODER- Gatters 208 verbunden. Der Ausgang des Exklusiv-ODER-Gatters ist mit dem Eingang ODI der Basistestzelle 12 verbunden.
  • Wenn der PSA-Logikabschnitt 206 mit der Basiszelle 12 verbunden wird, wird die normale Verbindung des Eingangs ODI mit dem Eingang DIN derart modifiziert, daß keine direkte Verbindung mehr besteht. Die Basisfunktion des Aufnehmens der Testdaten während einer Ladeoperation über den Eingang ODI ist immer noch gültig, jedoch sind zusätzliche Regeln, die im folgenden dargelegt werden, sowie eine Signalwegsuche erforderlich, um die Ladeoperation über die PSA-Testlogik zu bewerkstelligen. Alle anderen Funktionen (Leerlauf, Schieben und Kippen) und deren benötigte Zwischenzellenverbindungen bleiben dieselben.
  • Um die Grundladeoperation zu bewerkstelligen, werden die Eingänge DATMSK und PSAENA des Logikabschnitts 206 auf einen logischen Hochpegel bzw. Niedrigpegel gesetzt. In diesem Zustand schafft der PSA-Logikabschnitt einen Leitweg vom Eingang DIN über das NICHT-UND-Gatter 210 und das Exklusiv- ODER-Gatter 208 zum Eingang ODI der Basistestzelle 12. Wenn die Ladeoperation eingeleitet worden ist, nimmt die Testzelle 12 den Logikpegel am Eingang DIN über den Leitwegkanal durch den PSA-Logikabschnitt 206 auf.
  • Wenn eine PSA-Operation von der Testzelle durchgeführt werden soll, werden die beiden Eingänge MSKDAT und PSAENA auf einen logischen Hochpegel gesetzt, während an die Basistestzelle 12 eine Steueranweisung ausgegeben wird, um eine Ladeoperation durchzuführen. Durch die auf diese Weise gesetzten Eingänge MSKDAT und PSAENA führt der PSA-Logikabschnitt 206 eine Exklusiv-ODER-Operation mit den an den Eingängen DIN und SDI anliegenden Logikpegeln durch und gibt das Ergebnis an den Eingang ODI der Testzelle 12 aus. Während der Ladeoperation tastet die Testzelle 12 den Eingang ODI ab und speichert das Ergebnis der Exklusiv-ODER-Operation. Die in jeder Testzelle 12 durchgeführte lokale Exklusiv-ODER- und Ladeoperation bildet in Kombination mit der benötigten Zwischenzellenverbindung zum seriellen Verschieben (d. h., das Signal SDI der einen Zelle ist mit dem Signal SDO der anderen Zelle verbunden) und der Polynomrückführung die Grundlage, auf der eine Boundary-Scan- Signaturanalysestruktur implementiert werden kann.
  • Während einer PSA-Operation schafft der PSA-Logikabschnitt 206 eine Einrichtung zum Ausblenden der Wirkung des Eingangs DIN auf die Exklusiv-ODER-Operation. Das Maskieren wird erreicht durch Setzen des Eingangs MSKDAT auf Niedrigpegel, während der Eingang PSAENA auf Hochpegel belassen wird. Wenn der Eingang MSKDAT auf Niedrigpegel gesetzt wird, verbindet der PSA-Logikabschnitt 206 den Eingang SDI mit dem Eingang ODI der Testzelle 12, wobei nur der Wert eines Ausgangs SDO einer vorangehenden Zelle abgetastet und in der Testzelle 12 gespeichert wird. Diese Fähigkeit erlaubt das Ausblenden des Signals, das mit dem Eingang DIN einer oder mehrerer Testzellen verbunden ist, während einer PSA-Operation am Rand einer integrierten Schaltung.
  • Wenn eine PRPG-Operation von der Testzelle durchgeführt werden soll, wird eine Steueranweisung ausgegeben, um die Testzelle 12 zu veranlassen, eine Schiebeoperation vom Eingang SDI zum Ausgang SDO durchzuführen.
  • Während der PRPG-Operation werden die Daten durch eine Serie von Testzellen 12 geschoben, um ein Pseudozufalls-Ausgangsmuster zu erzeugen. Das resultierende Pseudozufallsmustererzeugungs-Ausgangssignal wird bestimmt durch die Länge des Abtastweges und durch die Polynomrückführungsverbindungen der Testzellen 12 im Abtastweg. Ferner werden die Eingänge HOLD und DMX der Testzellen auf Hochpegel gesetzt, wodurch ermöglicht wird, daß das erzeugte Testsignal an den Ausgängen DOUT der Testzellen ausgegeben wird.
  • In Anwendungen, die Testzellen mit PRPG- und/oder PSA-Testmerkmalen verwenden, ist es zweckmäßig, eine programmierbare Polynomanzapfung zu schaffen, um das Einstellen der Polynomrückführungsverbindung zwischen den Testzellen 12 auf eine geeignete Gruppe oder einen geeigneten Bereich von Testzellen am Rand einer integrierten Schaltung zu ermöglichen. Die Vorteile des Vorsehens dieses Merkmals sind: (1) Vereinfachung der Implementierung der Testzellen in einem integrierten Schaltungsentwurf, (2) Eliminieren der Notwendigkeit des Hinzufügens einer externen Polynomanzapffähigkeit, und (3) Verbesserung der Plazierung und der Signalwegfindung der Testzellen in einem integrierten Schaltungslayout, da die gesamte erforderliche Logik innerhalb jeder Testzelle 12 vorhanden ist.
  • In Fig. 8 ist die bevorzugte Implementierung einer Testschaltung gezeigt, die eine Basistestzelle 12, einen PSA-Logikabschnitt 206 sowie eine programmierbare Polynomanzapfung 214 besitzt. Die Eingänge und Ausgänge der Testzelle 12 und des PSA-Logikabschnitts sind dieselben wie in Fig. 7 gezeigt. Der programmierbare Polynomanzapf-Logikabschnitt 214 benötigt zwei zusätzliche Eingangssignale, nämlich Polynomanzapffreigabe (PTENA) und Rückführungseingang (FBI), sowie ein zusätzliches Ausgangssignal, nämlich Rückführungsausgang (FBO). Das Signal PTENA ist eine Erweiterung des Steuerbusses. Die Signale FBI und FBO schaffen die Verbindung zwischen den Testschaltungen zum Implementieren des Polynomrückführungsnetzes, das für die PRPG- und/oder PSA-Testoperationen erforderlich ist. Der programmierbare Polynomanzapflogikabschnitt umfaßt ein Exklusiv-NICHT-ODER-Gatter 216 und ein NICHT-UND-Gatter 218. Das NICHT-UND-Gatter empfängt den Ausgang SDO der zugehörigen Testzelle 12 und das Signal PTENA als Eingang. Das Exklusiv- NICHT-ODER-Gatter 216 empfängt den Ausgang des NICHT-UND- Gatters 218 und das Signal FBI. Der Ausgang des Exklusiv-oder- Gatters 216 ist das Signal FBO.
  • Eine Schlüsselfähigkeit, die erforderlich ist, um PRPG oder PSA auszuführen, ist die Schaffung eines Rückführungsnetzes, das auf der Exklusiv-ODER-Funktion des Logikzustands in allen Testschaltungen im Abtastweg oder in einer ausgewählten Gruppe derselben beruht. Das Ergebnis dieses Rückführungsnetzes wird in die erste Testschaltung im Abtastweg eingegeben, um die Rückführungsschleife zu schließen. In Fig. 8 bildet die Kombination aus NICHT-UND-Gatter 218 und Exklusiv-NICHT-ODER-Gatter 216 die Fähigkeit, den Logikzustand einer bestimmten Testzelle im Rückführungsnetz einzuschließen oder auszuschließen.
  • Testschaltungen mit ähnlichen programmierbaren Polynomanzapflogikabschnitten können wie in Fig. 9a gezeigt miteinander verbunden werden. Vier Testschaltungen 220a-d mit PRPG/PSA-Logikabschnitten und programmierbaren Polynomanzapflogikabschnitten sind im Abtastweg vom primären seriellen Dateneingang (PSDO) zum primären seriellen Datenausgang (PSDO) verbunden. Die programmierbare Polynomanzapflogik jeder Testzelle 220a-d ist so verbunden, daß das Ausgangssignal FBO einer folgenden Testschaltung das Eingangssignal FBI für eine vorangehende Testschaltung liefert. Zum Beispiel ist FBO der Testschaltung 220c mit FBI der Testschaltung 220b verbunden. Der Eingang PTENA für jede Testschaltung 220a-d wird über den PTENA-Bus angelegt. Ein Rückführungsauswahleingang (FBSEL) (eine Erweiterung des Steuerbusses 17) steuert einen Multiplexer 222 am Eingang der ersten Testschaltung 220a, der den Eingang SDI der Testschaltung 220a versorgt. Der Eingang FBI der letzten Testschaltung 220d ist mit einem logischen Niedrigpegel verdrahtet, so daß er keine Wirkung auf die programmierbare Polynomanzapflogik der letzten Testzelle 220d hat.
  • Während normaler Schiebeoperationen treten die Daten an PSDI ein, fließen durch die Testzellen und treten an PSDO aus. Wenn der Multiplexer 222 am Eingang der ersten Testschaltung 220a in den PRPG- oder PSA-Modus versetzt ist, wählt er das Rückführungsergebnissignal (FBR) aus und verbindet es mit dem Eingang SDI der ersten Testschaltung 220a. Die programmierbare Polynomanzapflogik in den Testschaltungen 220a-d bildet in Kombination mit den FBI- und FBO-Verdrahtungsverbindungen das für die PRPG- und PSA-Operationen erforderliche Exklusiv-ODER- Rückführungsnetz. Wenn der Eingang PTENA einer Testschaltung auf Hochpegel liegt, ist der Logikzustand der Testzelle 12 dieser Testschaltung 220 in das Rückführungsnetz eingeschlossen. Wenn der Eingang PTENA einer Testschaltung auf Niedrigpegel liegt, ist der Logikzustand der Testzelle 12 dieser Testschaltung nicht in das Rückführungsnetz eingeschlossen.
  • In einigen Anwendungen kann es erforderlich sein, einen primären Abtastweg, der aus einer Serie von Testzellen 12 besteht, die jeweils PRPG/PSA- und programmierbare Polynomlogik besitzen, in Abschnitte zu unterteilen. Jeder Abschnitt des primären Abtastweges kann wie in Fig. 9b gezeigt so konfiguriert werden, daß innerhalb des primären Abtastweges mehrere lokale PRPG/PSA-Testfunktionen geschaffen werden. Jeder Abschnitt des Abtastweges besitzt eine Rückführungsverbindung, wie in Fig. 9a gezeigt, um die Auswahl der geeigneten Testzellen 12 im Abtastwegabschnitt, die in das lokale Rückführungsnetz eingeschlossen werden sollen, zu ermöglichen. Das Rückführungsergebnis (FBR) des jeweiligen lokalen Rückführungsnetzes wird über einen Multiplexer in die erste Testzelle 12 im Abtastwegabschnitt eingekoppelt.
  • Die PSA-Testlogik kann ferner in der bidirektionalen Testzelle der Fig. 4 enthalten sein. Das Einschließen der PSA-Testlogik bietet für bidirektionale Testzellen dieselben Vorteile, wie im unidirektionalen Fall beschrieben worden ist.
  • Eine bevorzugte Implementierung einer Testschaltung, die eine Basistestzelle 12, eine bidirektionale Multiplexerlogik und einen PSA-Logikabschnitt 206 enthält, ist in Fig. 10 gezeigt. Die Eingangs- und Ausgangssignale, die für diese Testschaltung erforderlich sind, sind dieselben wie diejenigen, die in Verbindung mit den Fig. 4 und 7 verwendet werden. Die einzige erforderliche Veränderung zum Erzeugen der bidirektionalen Testschaltung mit PSA-Logik ist, die PSA-Logik einzusetzen und folgende Verdrahtungsverbindungen herzustellen: (1) Verbinden des Ausgangs SELODI des zweiten Multiplexers 34 mit dem Eingang des PRPG/PSA-NICHT-UND-Gatters 210, der in Fig. 7 mit DIN verbunden gezeigt ist, (2) Verbinden des Eingangs SDI( der mit der Testzelle verbunden ist, mit dem Eingang des PRPG/PSA- NICHT-UND-Gatters 212, das in Fig. 7 gezeigt ist, und (3) Verbinden des Ausgangs des PRPG/PSA-Exklusiv-ODER-Gatters 208 mit dem Eingang ODI der Testzelle 12.
  • Fig. 11 zeigt eine bidirektionale Testschaltung, die sowohl einen PRPG/PSA-Logikabschnitt 206 als auch einen Polynomanzapflogikabschnitt 214 besitzt. Die Schaltung der Fig. 11 ist identisch mit der Schaltung der Fig. 10, wobei der zusätzliche Polynomanzapflogikabschnitt 214 mit der Testzelle 12 verbunden ist, wie in Verbindung mit Fig. 8 dargestellt ist. In ähnlicher Weise sind andere Kombinationen von Bibliothekszellen für die bidirektionale Testschaltung verfügbar, wie z. B. eine bidirektionale Testschaltung, die eine maskierbare Vergleichslogik enthält oder eine bidirektionale Testschaltung, die eine maskierbare Vergleichslogik, eine PRPG/PSA- Logik und eine Polynomanzapflogik enthält.
  • Obwohl die Zellenbibliothek der vorliegenden Erfindung in Verbindung mit der Basistestzelle 12 der Fig. 2 beschrieben worden ist, kann das Konzept mit einer Basistestzelle mit einer anderen Architektur verwendet werden. Die Bibliothekszellen bieten dem Entwickler von integrierten Schaltungen einen Bereich von bitweise testbaren Zellen, die verwendet werden können, um eine Vielfalt unterschiedlicher Teststrukturen für integrierte Schaltungen zu konstruieren. Die Vorteile des Vorsehens von Testlösungen in Form von Bibliothekszellen sind: (1) Vereinfachung der Implementierung der Testarchitekturen in integrierten Schaltungen, (2) Vorsehen von strukturierten Testverfahren, die automatisiert werden können, (3) Eliminieren des Bedarfs der Konstruktion von Ad-hoc-Testlösungsansätzen für jeden neuen integrierten Schaltungsentwurf, (4) Verbessern der Anordnung und der Signalwegwahl der Testarchitekturen, da die gesamte benötigte Testlogik innerhalb der Testschaltungen dauerhaft vorhanden ist, und (5) Versorgen des Kunden mit einer Basis, aus der die gewünschten Testmerkmale gewählt werden können.
  • Um das Testen an der IC durch das Systemniveau zu erleichtern, können die Standard-Off-Shelf-Komponenten, wie z. B. Register, Zwischenspeicher, Puffer oder Senderempfänger, so beschaffen sein, daß sie eine Testschnittstelle und einen Boundary-Scan- Weg bestehend aus Testzellen 12 enthalten. Das Implementieren von Testschaltungen in Standardkomponenten zum Zweck des Vereinfachens des Tests auf höheren Ebenen der Bauemheit schafft ein Verfahren zum Reduzieren der Kosten zum Testen und Warten von Hardeware-Systemen.
  • Das Testen von Schaltungsplatinen und Systemen erfordert heutzutage die Verwendung teuerer Testausrüstung und mechanischer Prüftechniken. Um eine Platine zu testen, die in einem System angeordnet ist, muß diese entfernt werden, so daß ein Testzugriff auf die Testausrüstung verfügbar ist.
  • Standardkomponenten mit integrierten Testschaltungen, die über eine serielle Testschnittstelle zugänglich sind, vereinfachen das Testen. Ein Platinenentwurf, der solche Bauteile verwendet, kann über den seriellen Testbus getestet werden, während er im System verbleibt. Ferner erlauben solche Vorrichtungen, daß das Testen mit einer einfacheren, kostengünstigeren Testausrüstung durchgeführt wird. Außerdem kann es bei Platinenentwürfen des Standes der Technik aufgrund der Bauteildichte physikalisch unmöglich sein, eine Schaltung zu prüfen. In diesem Fall kann ein Testen nur über die in den Bauteilen integrierten Testschaltungen durchgeführt werden.
  • Fig. 12 zeigt eine Situation, in der die Kombinationslogik 224 durch die Testpartitionierungsvorrichtungen 226 und 228 beobachtet und gesteuert wird. Die Testpartitionierungsvorrichtungen 226 und 228 können auf einer Anzahl wohlbekannter Vorrichtungen wie z. B. Puffern, Zwischenspeichern, Registern oder Sendeempfängern beruhen. Zu Darstellungszwecken wird angenommen, daß die Partitionierungsvorrichtungen 226 und 228 8-Bit- Register sind. Die Kombinationslogik kann eine beliebige Anzahl von Schaltungen ohne schaltungseigene Testfähigkeit besitzen.
  • Das Eingangstestregister 226 kann die Daten beobachten, die ansonsten zur Kombinationslogik gesendet werden, und kann Daten ausgeben, um die Kombinationslogik 224 zu steuern. Das Ausgangstestregister 228 kann die Daten beobachten, die von der Kombinationslogik 224 ausgegeben werden, und kann den Ausgang zu den Vorrichtungen steuern, die ansonsten mit dem Ausgang der Kombinationslogik 224 verbunden sind. Serielle Daten werden vom Eingangstestregister 226 empfangen, das die seriellen Daten an das Ausgangstestregister 228 ausgibt. Durch Beobachten der Eingänge und durch Steuern der Ausgänge können die Testregister 226 und 228 die Kombinationslogik 224 in derselben Weise testen., wie oben in Verbindung mit Fig. 1 beschrieben worden ist.
  • Fig. 13 zeigt eine Ausführungsform einer Testvorrichtung 226. Die Dateneingangssignale D0-7 werden über den Eingangspuffer 230 in die Testvorrichtung 226 eingegeben. Der Ausgang des Eingangspuffers 230 ist mit dem Eingangstestschaltungsregister(Eingang TCR) 232 verbunden. Der Ausgang des Testschaltungsregisters 232 ist mit einem Register 234 verbunden. Der Ausgang des Registers 234 ist mit einem Ausgangstestschaltungsregister (Ausgang TCR) 236 verbunden. Der Ausgang des Ausgangs TCR 236 ist mit einem Ausgangspuffer 238 verbunden, der die Ausgangsdatensignale Q0-7 erzeugt. Die Testzellen 240 und 242 empfangen Steuersignale von außerhalb der Vorrichtung. In diesem Fall empfängt die Testzelle 242 einen Takteingang (CLK), während die Testzelle 240 einen Steuereingang (OC) empfängt. Der Ausgang der Testzelle 240 ist mit dem Ausgangspuffer 238 für eine Dreizustands-Operation verbunden. Der Ausgang der Testzelle 242 ist mit dem Takteingang des Registers 234 verbunden. Das Signal SDI von außerhalb der Testvorrichtung 236 wird von der Testzelle 240, einem Abtastungsumgehungsregister 244 und einem Befehlsregister 246 empfangen. Ein Abtastdatenweg besteht aber die Testzelle 240, die Testzelle 242, den Eingang TCR 232 und den Ausgang TCR 236. Der serielle Datenausgang des Ausgangs TCR 236 ist gemeinsam mit dem Ausgang der Abtastumgehung 244 mit einem Multiplexer 248 verbunden. Der Multiplexer 243 empfängt ein Abtastwegauswahlsignal vom Befehlsregisters 24b. Der Ausgang des Multiplexers 248 ist gemeinsam mit einem Ausgang vom Befehlsregister 246 mit einem Multiplexer 250 verbunden. Der Multiplexer 250 empfängt ferner ein Auswahlsignal von elnem Testanschluß 252. Der Testanschluß empfängt das Signal MODE und das Taktsignal (CLK) von außerhalb der Testvorrichtung 226 und gibt Abtast- und Teststeuersignale aus. Das Befehlsregister 246 gibt ferner Teststeuersignale an die Testzellen 240 und 242 und die TCRs 232 und 236 aus.
  • Es ist zu beachten, daß die Steuersignale (CLK und OC), die in das Testregister eingegeben werden, beispielhaft sind, und für eine bestimmte Anwendung andere Signale verwendet werden können. Zum Beispiel karn ein Löschsignal oder ein Freigabesignal über eine Testzelle mit einem geeignet ausgelegten Register verbunden sein. Ferner kann das Register durch eine geeignete Schaltung ersetzt werden, um einen Zwischenspeicher, ein Puffer, einen Senderempfänger oder eine andere Vorrichtung zu implementieren. Ferner kann sich die Anzahl der Steuer- und Daten-I/O-Signale in Abhängigkeit von der Implementierung der Vorrichtung ändern.
  • Die Abtaststruktur der Testvorrichtung 226 umfaßt einen Boundary-Scan-Weg (über die Testzellen 240 und 242 und die TCRs 232 und 236), einen Abtastumgehungsweg sowie einen Befehlsabtastweg. Ein über die Eingänge MODE und SCK ausgegebenes Abtastzugriffsprotokoll ermöglicht, daß die seriellen Daten entweder in den Rand- oder Umgehungsabtastweg oder in das Befehlsregister eingelesen werden. Die Auswahl zwischen dem Rand- oder Umgehungsabtastweg wird über den Abtastwegauswahlausgang zum Multiplexer 248 durch den aktuellen Befehl bestimmt, der sich im Befehlsregister befindet.
  • Die TCRs 232 und 236 umfassen mehrere Testschaltungen auf der Grundlage der Testzelle 12, wie oben beschrieben worden ist. Typischerweise sind die TCRs 232 und 236 aus mehreren Testschaltungen mit PRPG/PSA- und/oder programmierbaren Polynomanzapflogikabschnitten gebildet. Die Testzellen 240 und 242 sind typische Basistestzellen 12 ohne zusätzliche Schaltungen. Die Steuerschaltung für die Testzellen 240 und 242 sowie die TCRs 232 und 236 sind nicht gezeigt; jedoch ist mit jeder Zelle ein Steuerbus verbunden, um serielle Daten zu verschieben und die Testschaltung zu steuern.
  • Testbefehle können in das Befehlsregister 246 eingelesen werden, um die Boundary-Scan-Logik zu veranlassen, eine Test- Operation durchzuführen. Wenn ein Test nicht durchgeführt wird, wird ein Normaloperationsbefehl in das Befehlsregister 246 eingelesen. Während eines Normaloperationsbefehles erlaubt die Boundary-Scan-Logik normalen I/O- und Steuersignalen, frei durch die Boundary-Scan-Logik zu fließen.
  • Im Befehlsregister kann ein "Boundary-Scan-Befehl" enthalten sein, um dem Boundary-Scan-Weg (über die TCRs 232 und 236 und die Testzellen 240 und 242) zu ermöglichen, die Steuerung der internen I/O-Signale zu übernehmen. Diese Steuerung wird bewerkstelligt durch Setzen des Eingangs DMX der Boundary- Scan-Zellen auf einen logischen Hochpegel. In diesem Modus kann von den Eingängen MODE und SCK eine externe Steueranweisung ausgegeben werden, um den Boundary-Scan-Weg zu veranlassen, den Logikpegel an den Eingängen DIN der Testzellen 240 und 242 und der TCRs 232 und 236 aufzunehmen. Während der Aufnahmeoperation nehmen die Testzellen 240 und 242 und der Eingang TCR 232 den Zustand der externen Datenausgänge (DO-7) und Steuereingänge auf. Ferner nimmt wihrend der Aufnahmeoperation der Ausgang TCR 236 den Zustand der internen Logik 234 auf Nachdem die Daten aufgenommen worden sind, wird über die Eingänge MODE und SCK eine zusätzliche externe Steueranweisung eingegeben, die den Boundary-Scan-Weg veranlaßt, die aufgenommenen Daten zur Untersuchung über den SDO-Anschlußstift herauszuschieben. Während die aufgenommenen Daten herausgeschoben werden, wird über den Eingang SDI ein Teststeuermuster in den Boundary-Scan-weg hineingeschoben. Wihrend der Aufnahme- und Schiebeoperationen verharren die Ausgänge DOUTs in ihren aktuellen Zuständen, da deren Eingang HOLD auf Niedrigpegel gesetzt ist. Wenn diese nicht konstant gehalten werden, kann der Brummeffekt am Ausgang die externe Logik beeinflussen, die an den Ausgängen der Vorrichtung angeschlossen ist.
  • Wenn das Hineinschieben und Herausschieben in bzw. aus dem Boundary-Scan-Weg abgeschlossen ist, wird über die Eingänge MODE und SCK ein zusätzliches externes Steuersignal eingegeben, um zu veranlassen, daß das vorher eingegebene Steuermuster von den Zwischenspeichern 26 der verschiedenen Testzellen und TCRs 240, 242, 232 und 236 angelegü wird. Der Prozeß des Aufnehmens der Boundary-Scan-Wegeingänge, gefolgt vom Herausschieben der aufgenommenen Daten für die Untersuchung, wobei das nächste Teststeuermuster, das von den Boundary-Scan- Wegausgängen angelegt werden soll, hineingeschoben wird, wird wiederholt, bis die gewünschte Testebene abgeschlossen ist. Auf diese Weise können die interne Logik und die externen Verdrahtungsverbindungen und/oder die benachbarten ICs gleichzeitig getestet werden.
  • Ein "Randdatenabtastbefehl" kann im Befehlsregister 242 enthalten sein. Der Randdatenabtastbefehl ermöglicht, daß Daten und Steuersignale frei durch den Boundary-Scan-Weg laufen können, während die Eingänge SCK und MODE den Boundary-Scan- Weg veranlassen, die an ihren Eingängen anliegenden Logikzustände aufzunehmen. Wenn die Randdaten aufgenommen worden sind, wird über die Eingänge SCK und MODE ein zusätzliches externes Steuersignal eingegeben, um den Boundary-Scan-Weg zu veranlassen, die aufgenommenen Daten zur Untersuchung über den SDO-Anschlußstift herauszuschieben.
  • Ein Befehl "Steuere die Ausgänge in den Zustand mit hoher Impedanz" ermöglicht, daß die Ausgangspuffer (Q0-7) in einen Zustand mit hoher Impedanz versetzt werden. Obwohl die Ausgänge sich in einem Zustand mit hoher Impedanz befinden, bleiben die Eingänge funktionsfähig, wobei Daten und Steuersignaleingänge weiterhin die interne Logik 234 beeinflussen. Während dieses Befehls ist das Abtastumgehungsregister (ein einzelnes Flip-Flop) mit den Anschlußstiften SDI und SDO verbunden, um einen Einzelbit-Abtastweg durch die Testvorrichtung während der Datenregisterabtastoperationen zu bilden.
  • Der Vorteil dieser Erfindung ist, daß die Ausgänge in einen inaktiven Zustand versetzt werden, was ermöglicht, daß ein externes Testsignal angelegt wird, um die Ausgänge auf eine logische 1 oder 0 zu setzen. Ferner ermöglicht der abgekürzte Datenabtastweg über das Abtastumgehungs-Flip-Flop die Reduzierung der internen Abtastweglänge auf ein einzelnes Bit.
  • Ein Befehl "steuern der Randausgänge auf eine logische 1 oder 0" ermöglicht, daß der Boundary-Scan-Weg die I/O-Signale steuert, um ein vorher abgetastetes Teststeuermuster von den Ausgängen der Testzellen 240 und 242 und der TCRs 232 und 236 anzulegen. Vor der Durchführung dieses Testbefehls ist der Boundary-Scan-Weg abgetastet worden, um das Teststeuerausgangsmuster zu installieren, das vom Befehl verwendet werden soll. Während dieses Befehls ist das Abtastumgehungsregister mit den Anschlußstiften SDI und SDO verbunden, um während der Datenregisterabtastoperationen einen Einzelbitabtastweg durch die Testvorrichtung zu bilden.
  • Der Vorteil dieses Befehls ist, daß der Testvorrichtung ermöglicht wird, ein bestimmtes Muster auszugeben, während ein Testen anderer Vorrichtungen durchgeführt wird, die mit dem Testvorrichtungsausgang verbunden sind, wie z. B. die Kombinationslogik 224. Ferner erlaubt der abgekürzte Datenabtastweg durch das Abtastumgehungs-Flip-Flop während des Befehls, daß die interne Abtastweglänge auf ein einzelnes Bit reduziert wird.
  • Die Eingänge und Ausgänge TCRS 232 und 236 können angewiesen werden, synchron mit dem extern angelegten Eingang SCK zu operieren, um zusätzliche Testmöglichkeiten zu schaffen. Der Vorteil dieser Testoperationen ist, daß während der Testoperation keine Abtastung erforderlich ist, was die Testzeit beträchtlich reduziert.
  • Die PSA-Operation wird in Verbindung mit Fig. 7 genauer beschrieben. Der Eingang TCR 232 kann die PSA-Operation entweder selbst oder in Verbindung mit dem Ausgang TCR 236 durchführen. In Fig. 14 ist eine Schaltung gezeigt, die die Ein- und Ausgänge TCRs 232 und 236 in Verbindung verwendet zeigt, um eine 16 Bit breite Signatur zu schaffen (unter der Annahme von 8- Bit-TCRS). Die Daten, die am Dateneingang erscheinen, werden mit dem aktuellen Zustand des Eingangs TCR 232 addiert und mit dem PSA/PRPG-Testtaktsignal, das vom UND-Gatter 252 ausgegeben wird, in den Eingang TCR 232 geschoben. Während der PSA-Operation ist der Eingang TCR 232 in den Lademodus versetzt, während der Ausgang TCR 236 in einen Schiebemodus versetzt ist und als 8-Bit-Schieberegistererweiterung für den Eingang TCR 232 dient. Durch Kombinieren des Eingangs TCR 232 mit dem Ausgang TCR 236 steht eine 16 Bit breite Signatur des 8-Bit- Dateneingangsbusses zur Verfügung. Unter Verwendung einer 16- Bit-PSA-Schaltung kann die Anzahl der Eingangsdatenmuster, die in den Eingang TCR 232 komprimiert werden können, von 255 auf 65535 erhöht werden. Während der PSA-Operationen ist der Datenausgang (Q0-7) vom Ausgang TCR 236 auf ein vorgegebenes Muster fixiert, so daß die wechselnden Daten während PSA nicht aus der Kombinationslogik 224 austreten.
  • Die Taktsteuerung für die PSA kommt von einer in Fig. 14 gezeigten Torschaltung. Wenn der PSA-Befehl installiert ist und die externen Steuersignale am Testanschluß 252 in einen Leerlaufzustand versetzt worden sind, werden die Torsignale eingestellt, um dem UND-Gatter 253 zu ermöglichen, den Eingang SCK an die TCRs 232 und 236 weiterzuleiten. Das Befehlsregister 246 gibt ein Testtaktfreigabesignal aus, wenn der Befehl installiert ist. Der Testanschluß 252 gibt ein Synchronisierungssignal aus, wenn er einen nicht abtastenden Leerlaufzustand annimmt. Wenn beide Freigabesignale auf Hochpegel gesetzt sind, wird das externe Signal SCK durch das UND-Gatter 252 ein- und ausgeschaltet, um den PSA/PRPG- Testtakt zu erzeugen.
  • Am Ende des PSA-Befehls veranlaßt die externe Steuerung (SCK und MODE) den Testanschluß 252, den PSA/PRPG-Testtakt zu unterbinden, woraufhin ein neuer Befehl in das Befehlsregister 246 eingelesen wird. Nachdem der Abtastweg in seine Normalkonfiguration zurückversetzt worden ist, kann die in den TCRs 232 und 236 gespeicherte Signatur zur Untersuchung durch einen Boundary-Scan-Lesebefehl ausgelesen werden, wie im folgenden erläutert wird.
  • In ähnlicher Weise kann ein PRPG-Befehl im Befehlsregister 246 installiert sein, um ein Ausgangsmuster zu erzeugen. Die TCRs 232 und 236 können wiederum kombiniert werden, um eine 16 Bit breite Mustererzeugung zu erreichen, die fähig ist, die Anzahl der 8-Bit-Ausgangsmuster zu erhöhen. Die 16-Bit-Konfiguration ist derjenigen ähnlich, die in Fig. 14 gezeigt ist. Während einer PRPG-Operation sind beide TCRs in einen Schiebemodus versetzt. Das erzeugte Muster wird aus dem Ausgang TCR 236 ausgegeben. Die Taktsteuerung für PRPG ist derjenigen ähnlich, die beim PSA-Befehl beschrieben worden ist. In ähnlicher Weise wird ein neuer Befehl in das Befehlsregister am Ende der PRPG- Operation eingelesen, um das Testtaktfreigabebit zurückzusetzen und den Boundary-Scan-Weg auf seinen normalen Leitweg zu rekonfigurieren.
  • Wie in Verbindung mit Fig. 15 gezeigt, können PSA und PRPG gleichzeitig laufen. In dieser Konfiguration sind die Eingänge und Ausgänge TCRs 232 und 236 nicht kombiniert, sondern auf sich selbst zurückgeführt. Lokale Multiplexer 254 und 256 schaffen die erforderlichen Rückführungsverbindungen zu den TCRs 232 bzw. 236. Da die TCRs in dieser Konfiguration nicht miteinander verbunden werden können, sind die PSA und PRPG- Operationen auf 8 Bits beschränkt. Die Taktsteuerung für die PSA- und PRPG-Operationen ist identisch mit derjenigen, die in Verbindung mit dem PSA-Befehl beschrieben worden ist.
  • Ferner kann ein Befehl zur gleichzeitigen Durchführung einer PSA und eines binären Hochzählens des Musterausgangs durchgeführt werden, der eine ähnliche Konfiguration wie der Befehl zum gleichzeitigen Ausführen einer PSA und PRPG besitzt, wie in Fig. 15 gezeigt ist. Während dieses Befehls führt der Eingang TCR 232 eine PSA durch, während der Ausgang TCR 236 ein Binärhochzählungsmuster ausgibt. Die Taktsteuerung für die PSA- und Binärhochzählungsmusteroperationen ist identisch mit derjenigen, die in Verbindung mit dem PSA-Befehl beschrieben worden ist. Das binäre Hochzählmuster ist nützlich, um während des Speichertestens binäre Adreßmuster zu erzeugen. Während dieses Befehls kann eine Speichervorrichtungsadresse vom Hochzählmuster vom TCR 236 eines Testregisters stimuliert werden, während dessen Datenausgang vom TCR 232 eines weiteren Testregisters komprimiert wird. Eine ähnliche Testanwendung wird von einem PSA- und PRPG-Befehl durchgeführt.
  • In Fig. 16 sind die Testzellen 12 des TCR 236 gezeigt, die mit einem Zählerfreigabelogikabschnitt 258 verbunden sind, um die Ausgabe eines binären Hochzählmusters aus der TCR 236 zu ermöglichen. Die Zählerfreigabelogik 258 enthält mehrere UND- Gatter 260. Jedes UND-Gatter 260 empfängt den Ausgang des vorangehenden UND-Gatters als einen Eingang und das Signal DOUT von einer zugeordneten Testzelle 12 als den anderen Eingang. Das erste UND-Gatter 260 empfängt das Signal DOUT von den ersten zwei Testzellen 12. Der Ausgang jedes UND-Gatters 260 ist mit einem Auswahlanschluß A der nächsten Testzelle 12 über Invertierer 261 verbunden. Ein Auswahlabschnitt des TC2 empfängt das Signal DOUT von TC1 über den Invertierer 261. In dieser Anordnung ist die niedrigstwertige Testzelle 12 im TCR 236 auf den Kippmodus (AB = 01) eingestellt, während die vorangehenden Testzellen 12 so eingestellt sind, daß sie in Abhängigkeit vom Logikpegel, der von der Zählerfreigabelogik an die Eingänge A der jeweiligen Testzellen 12 ausgegeben wird, entweder im Kippmodus oder im Leerlaufmodus (AB = 11) operieren. Eine Testzelle 12 kippt dann, wenn ein PSA/PRPG- Testtakt anliegt, falls alle nachfolgenden Testzellen auf einen logischen Hochpegel gesetzt sind. Eine Testzelle 12 verharrt in ihrem aktuellen Zustand (Leerlauf), wenn ein PSA/PRPG-Testtakt anliegt, falls eine beliebige nachfolgende Testzelle auf einen logischen Niedrigpegel gesetzt ist.
  • Andere Funktionen, die oben in Verbindung mit der Testzelle 12 beschrieben worden sind, können von der Testvorrichtung durchgeführt werden. Die Testvorrichtung kann so beschaffen sein, daß sie eine Kippoperation ausführt, bei der die Daten, die während einer vorangegangenen Abtastoperation am Ausgang TCR 236 installiert wurden, veranlaßt werden können, während jedes PSA/PRPG-Testtaktzyklus zwischen dem wahren Ausgangsmuster und dessen Komplement-Ausgangsmuster zu kippen. Die Kippfähigkeit ist nützlich beim Testen der Ausgangspuffer der Vorrichtungen und dient auf Platinenebene als einfacher Testmustergenerator. Die Taktsteuerung für die Kippoperation ist identisch mit derjenigen, die für den PSA-Befehl beschrieben worden ist.
  • Der Boundary-Scan-Weg kann ferner ausgelesen werden, um dessen Inhalte zu ermitteln. Die Testvorrichtung verharrt während dieser Operation in einem Normalbetriebsmodus. Dieser Befehl unterscheidet sich von den Boundary-Scan- und Randdatenabtastbefehlen dadurch, daß keine Aufnahmeoperation durchgeführt wird. Der Randlesebefehl kann verwendet werden, um die Ergebnisse einer PSA-Operation zu extrahieren.
  • In den Fig. 17 und 18 sind das Signalwegverzögerungs-Testverfahren und die Vorrichtung der vorliegenden Erfindung gezeigt. Fig. 17 zeigt ein Blockschaltbild einer repräsentativen Schaltung, die zwei integrierte Schaltungen umfaßt, zwischen denen die Signalwegverzögerung bestimmt werden soll. Die Schaltung 262 umfaßt eine integrierte Treiberschaltung 264 und eine integrierte Empfangsschaltung 266 (es ist zu beachten, daß bei einigen Anwendungen eine einzige Vorrichtung sowohl Treiberals auch Empfangsvorrichtung sein kann). Die integrierte Treiberschaltung 264 umfaßt eine Testschnittstelle 268, die zwischen dem Steuerbus 17 und einer Testzelle 12 angeschlossen ist. Die Testzelle 12 ist mit einem Ausgangspuffer 20 verbunden, von dem das Signal OUT ausgegeben wird. Das Signal OUT ist über eine Verzögerungsquelle 270 mit der integrierten Empfangsschaltung 266 verbunden. Die Verzögerungsquelle 270 ist ferner mit dem Eingang IN der integrierten Empfangsschaltung 266 verbunden. Der Eingang IN ist über einen Eingangspuffer 18 mit einer Testzelle 12 der integrierten Empfangsschaltung 266 verbunden. Die Testzelle 12 der integrierten Empfangsschaltung 266 ist ferner mit einer Testschnittstelle 268 verbunden. Die Testschnittstelle 268 der integrierten Empfangsschaltung ist ferner mit dem Steuerbus 17 verbunden. Wie bereits erwähnt, enthält der Steuerbus 17 ein Taktsignal CLK.
  • Es ist von Bedeutung, daß die Testzelle 12 der integrierten Treiberschaltung 264 die Fähigkeit besitzt, als Antwort auf das Signal CLK zwischen entgegengesetzten Logikzuständen, d. h. zwischen Hochpegeln und Niedrigpegeln, zu kippen. Ferner hat die Testzelle 12 der integrierten Empfangsschaltung 266 die Fähigkeit, als Antwort auf das Signal CLK die Daten an ihrem Eingang abzutasten. Ein einzelner Kipp/Abtast-Befehl, der in die Testschnittstellen 268 aller integrierten Schaltungen 264 und 266 eingegeben wird, kann verwendet werden, um den Ausgang der integrierten Treiberschaltung 264 mit einer ersten Taktflanke zu kippen und den Eingang der integrierten Empfangsschaltung mit der nächsten Taktflanke abzutasten. Zu Darstellungszwecken ist die vorliegende Erfindung hier so beschrieben, daß sie eine steigende Taktflanke verwendet, um die Kippoperation einzuleiten, und eine fallende Taktflanke verwendet, um die Abtastoperation einzuleiten; es können jedoch ebenso ein Kippen bei fallender Taktflanke und ein Abtasten bei steigender Taktflanke verwendet werden.
  • In Fig. 18 sind Zeitablaufsignale gezeigt, die die Ermittlung der Gesamtlaufzeitverzögerung zwischen der integrierten Treiberschaltung 264 und der integrierten Empfangsschaltung 266 zeigen. Bei einer steigenden Flanke 272 des Signals CLK wird die Testzelle 12 der integrierten Treiberschaltung 264 angewiesen, zwischen den Logikzuständen zu kippen, d. h. von einem niedrigen Logikzustand in einen hohen Logikzustand oder von einem hohen Logikzustand in einen niedrigen Logikzustand. Der Anfangszustand des Signals OUT kann auf einen hohen oder niedrigen Logikwert gesetzt werden, indem in der Testzelle 12 ein geeigneter Datenwert gespeichert wird.
  • Der Übergang zwischen den Logikzuständen am Signal OUT tritt bei 274 auf, kurz nach der steigenden Flanke 272 des Signals CLK. Nach der Ausbreitung durch die Verzögerungsquelle 270 führt der Übergang bei 274 zu einem Übergang am Signal IN der integrierten Empfangsschaltung 266 bei 276. Mit der fallenden Flanke 278 des Signals CLK wird der am Eingang IN anliegende Logikzustand von der integrierten Empfangsschaltung 266 abgetastet und in deren Testzelle 12 gespeichert.
  • Somit kann die Gesamtlauf zeitverzögerung mit einer vorgegebenen Zeitverzögerung verglichen werden, indem die Frequenz des Signals CLK so eingestellt wird, daß die Zeitspanne zwischen der steigenden Flanke 272 und der fallenden Flanke 278 gleich der Benchmark-Laufzeitverzögerung ist. Zum Beispiel kann für eine Benchmark-Laufzeitverzögerung von 25 ns eine Frequenz von 20 MHz verwendet werden (bei einem angenommenen Tastverhältnis von 50 %).
  • Nach dem Abtasten des Signals IN mit der fallenden Flanke 278 können die Inhalte der Testzelle 12 der integrierten Empfangsschaltung 266 abgetastet werden, um zu ermitteln, ob der Übergang am Signal IN bei 276 vor oder nach der fallenden Flanke aufgetreten ist. Wenn der Übergang bei 276 vor der fallenden Flanke 278 aufgetreten ist, liegt die Gesamtlaufzeitverzögerung zwischen der integrierten Eingangsschaltung 264 und der integrierten Ausgangsschaltung 266 unterhalb der Benchmark-Laufzeitverzögerung. Wenn der Übergang bei 276 nach der fallenden Flanke 278 aufgetreten ist, liegt die Gesamtlaufzeitverzögerung über der Benchmark-Laufzeitverzögerung, wobei im Betrieb ein Verzögerungsfehler auftreten kann.
  • Durch Ausführen mehrerer Tests und Variieren der Frequenz des Signals CLK kann die Gesamtlaufzeitverzögerung sehr genau ermittelt werden. Zum Beispiel kann das Signal CLK der Fig. 18 so erhöht werden, daß die fallende Flanke bei 280 auftritt, wenn der Übergang 276 nach der fallenden Flanke 278 aufgetreten ist. Wenn dann der Übergang 276 vor der fallenden Flanke 278 auftritt, kann festgestellt werden, daß die aktuelle Gesamtlaufzeitverzögerung zwischen den fallenden Flanken 278 und 280 auftritt. Eine genauere Bestimmung der Gesamtlaufzeitverzögerung kann erreicht werden, indem die Schaltung mit Taktfrequenzen getestet wird, bei denen die fallende Flanke zwischen 278 und 280 auftritt.
  • Die vorliegende Erfindung kann mit einem beliebigen Typ von Signalwegverzögerung verwendet werden. Zum Beispiel kann die Verzögerungsquelle 270 eine Kombinationslogikverzögerung zwischen den zwei integrierten Schaltungen 264 und 266, eine den Ausgangspuffern des Typs mit offenem Kollektor zugeordnete Verzögerung sowie die den Ausgangspuffern mit hohen Ausgangslastfaktoren zugeordneten Verzögerungen umfassen. Obwohl die vorliegende Erfindung in Verbindung mit zwei oder mehr integrierten Schaltungen gezeigt ist, kann sie in ähnlicher Weise verwendet werden, um Verzögerungen zwischen den Randbereichen irgendwelcher wohldefinierter Logikblöcke zu testen, wie z. B. von Platine zu Platine, von Box zu Box oder von System zu System.
  • Fig. 19 zeigt die vorliegende Erfindung, die in Verbindung mit offenen Kollektorausgängen verwendet wird. Bei offenen Kollektorausgängen ist der Übergang von Hochpegel zu Niedrigpegel aufgrund des aktiven Herunterziehens des Signals sehr schnell, während der Übergang vom Niedrigpegel zum Hochpegel aufgrund des passiven Pull-up-Widerstands relativ langsam ist. In Fig. 19 sind Zeitablaufsignale gezeigt, die eine Verzögerungsmessung mit einem Ausgang mit offenem Kollektor zeigen. Das Signal CLK besitzt bei 282 eine fallende Flanke, die bei 284 ein Kippen vom Hochpegel zum Niedrigpegel am Signal OUT auslöst. Kurz danach (wenn keine zusätzliche Verzögerung angenommen wird) kippt das Eingangssignal bei 286 vom hohen Logikpegel auf einen niedrigen Logikpegel. Bei der folgenden steigenden Flanke des Signals CLK bei 287 wird der Zustand des Signals IN in die Testzelle 12 der integrierten Empfangsschaltung 266 eingelesen.
  • Mit der folgenden fallenden Flanke des Signals CLK bei 288 wird das Signal OUT bei 290 gekippt. Folglich wird das Signal IN bei 292 gekippt, so daß es allmählich auf einen hohen Logikpegel ansteigt. Mit der steigenden Flanke 294 des Signals CLK wird der Wert des Signals IN von der integrierten Empfangsschaltung 266 abgetastet. Durch Abtasten des Abtastwerts kann bestimmt werden, ob der übergang vom niedrigen Logikpegel zum hohen Logikpegel innerhalb einer spezifizierten Zeitspanne aufgetreten ist oder ob nicht. Wie in Fig. 18 gezeigt, kann es in diesem Fall wünschenswert sein, zusätzliche Taktimpulse mit unterschiedlichen Perioden vorzusehen. Beim Testen des Hoch- Niedrig-Übergangs kann eine Periode von 100 ns annehmbar sein, während beim Testen des Niedrig-Hoch-Übergangs eine Taktperiode von 1000 ns erforderlich sein kann.
  • Obwohl in den vorangegangenen Beispielen eine einzelne Signalverzögerungsmessung beschrieben worden ist, kunnen die hier beschriebenen Techniken auf eine beliebige Anzahl von Eingangs- und Ausgangssignalen angewendet werden, die in einer Schaltung zwischen einer oder mehreren ICs verbunden sind. In Fig. 20 sind zwei ICs 290 und 291 gezeigt, die über eine Verzögerungsquelle 270 verbunden sind. Dieses Beispiel ist demjenigen der Fig. 17 ähnlich, mit der Ausnahme, daß von der IC 290 mehrere Ausgangssignale (OUT1, OUT2, OUT3, OUTn) gesteuert werden, die über eine Verzögerungsquelle 270 von mehreren Eingängen (INI, IN2, IN3, INn) der IC 291 empfangen werden. Ferner ist mit den gepunkteten Signalwegen die Möglichkeit gezeigt, daß andere ICS in der Schaltung Eingangssignale der Verzögerungsquelle ansteuern und die Ausgangssignale der Verzögerungsquelle empfangen. Die Verzögerungstestprozedur für die Schaltung der Fig. 20 ist derjenigen ähnlich, die für Fig. 17 beschrieben worden ist, mit der Ausnahme, daß mehrere Signalverzögerungswege gleichzeitig getestet werden.
  • Fig. 21 zeigt die Verzögerungsmeßtechnik in Verbindung mit der internen Verzögerung von Signalwegen, die zwischen den Eingangs- und Ausgangs-Anschlußstiften durch die Kernlogik eines IC-Entwurfs laufen. Die Testzellen 12 an den IC-Eingängen sind so konf iguriert, daß sie mit einer Flanke des Eingangssignals CLK, das am Steuerbus 17 anliegt, kippen, während die Testzellen 12 an den IC-Ausgängen so konfiguriert sind, daß sie mit der nächsten entgegengesetzten Flanke des Einganssignals CLK abtasten. Die Verzögerungstestprozedur für den internen IC- Verzögerungstest ist derjenigen ähnlich, die Fig. 17 beschrieben worden ist. Dieser gleiche Lösungsansatz kann auf niedrigeren Ebenen innerhalb der IC-Kernlogik verwendet werden, um Verzögerungen durch Teilschaltungen innerhalb der Haupt-IC- Kernlogik zu messen.
  • Wenn die Verzögerungsmeßtechnik mit Verzögerungsquellen verwendet wird, die Boolsche Logikgatter enthalten, muß eine spezielle Betrachtung durchgeführt werden, um die passenden Kipp-Ausgangsmuster herzuleiten, die am Ausgang der Logikgatter eine Veränderung hervorrufen. In Fig. 22 sind zwei ICs 292 und 293 über eine Verzögerungsquelle bestehend aus einem UND- Gatter 294 verbunden. Bei diesem Beispiel gibt es zwei Verzögerungswege über das UND-Gatter, die getestet werden müssen. Der erste Verzögerungsweg führt vom Ausgang OUT1 der IC 292 zum Eingang IN der IC 293. Der zweite Verzögerungsweg führt vom Ausgang OUT2 der IC 292 zum Eingang IN der IC 293. Beide Wege über das UND-Gatter (OUT1 nach IN, OUT2 nach IN) sollten unter Verwendung beider Übergänge, d. h. von Niedrigpegel nach Hochpegel und von Hochpegel nach Niedrigpegel, getestet werden.
  • Da das UND-Gatter zwei Eingangssignale (OUT1 und OUT2) empfängt, die den UND-Gatterausgang beeinflussen können, kann während der Verzögerungsmessung nur einer der Eingänge auf einmal gekippt werden. Der andere Ausgang muß in einem Logikzustand gehalten werden, der den Ausgang des Boolschen Logikgatters nicht beeinflußt. Da in diesem Beispiel die Logik eine UND-Funktion aufweist, muß der nicht ausgewählte Eingang der IC 292 auf einen hohen Logikpegel gesetzt und dort gehalten werden, so daß der ausgewählte Eingang der IC 292 über das UND-Gatter die Logikzustände am Eingang der IC 293 kippen kann, so daß diese abgetastet werden können. Nachdem einer der Verzögerungswege über das UND-Gatter getestet worden ist, wird der bisher nicht ausgewählte Eingang der IC 292 ausgewählt und der bisher ausgewählte Eingang nicht ausgewählt, so daß ein Verzögerungstest über den anderen UND-Gatter-Signalweg durchgeführt werden kann.
  • Wenn der Verzögerungstest auf dem Signalweg vom Ausgang OUT1 der IC 292 zum Eingang IN der IC 293 durchgeführt wird, wird die den Ausgang OUT2 ansteuernde Testzelle 12 so geladen, daß sie einen hohen Logikpegel ausgibt. Ferner empfängt die den Ausgang OUT2 ansteuernde Testzelle 12 eine Steueranweisung, um im Leerlaufzustand zu verharren, so daß sie dann, wenn das Eingangssignal CLK vom Steuerbus 17 angelegt wird, weiterhin einen logischen Hochzustand ausgibt. Die Testzelle 12, die den Ausgang OUT1 ansteuert, wird auf einen vorgegebenen Logikzustand gesetzt und empfängt eine Steueranweisung, um mit einer Flanke des Eingangssignals CLK zu. kippen, während die Testzelle 12 der IC 293, die den Eingang IN abtastet, mit der nächsten entgegengesetzten CLK-Flanke den gekippten Logikzustand abtastet.
  • Nachdem der Verzögerungsmessungstest auf einem der UND-Gatter- Signalwege abgeschlossen ist, wird der andere Weg in derselben Weise ausgewählt und getestet, wie dies für den ersten Wegverzögerungstest beschrieben worden ist. Die Verzögerungstestprozedur für die Schaltung der Fig. 22 ist derjenigen ähnlich, die für Fig. 17 beschrieben worden ist.
  • Obwohl die vorliegende Erfindung genau beschrieben worden ist, ist klar, daß daran verschiedene Änderungen, Ersetzungen und Abwandlungen vorgenommen werden können, ohne vom Umfang der Erfindung abzuweichen, wie er durch die beigefügten Ansprüche definiert ist.

Claims (10)

1. Vorrichtung zum Testen der Laufzeitverzögerung zwischen einer Treibervorrichtung (12a-12d, 18; 264) und einer Empfangsvorrichtung (12e-12h, 20; 266) mit: einem Taktgeber (CLK) zum Erzeugen mehrerer Taktimpulse mit ersten und zweiten Flanken (272, 278, 282. 287, 288, 294); wobei die Treibervorrichtung (12a-12d, 18; 264) dazu dient, abhängig von einer ersten Taktflanke (272) ein einem bekannten Wert entsprechendes Signal (DOUT; OUT) abzugeben; wobei die Empfangsvorrichtung (12e-12h, 20; 266) abhängig von der zweiten Taktflanke (278) das Signal (DIN; IN) an einem Eingang der Empfangsvorrichtung abtastet; und einer Schaltung zum Vergleichen des abgetasteten Eingangssignals mit erwarteten Daten, um zu bestimmen, ob das Signal innerhalb der Zeitperiode zwischen der ersten und der zweiten Flanke (272, 278) zu der Empfangsvorrichtung (12e-12h, 20; 266) gelangt ist; dadurch gekennzeichnet, daß die Treibervorrichtung eine Testzellenschaltung (12; 22-28) enthält, die wahlweise entweder in einem ersten Modus zur Durchführung eines Boundary- Scan-Tests oder einem zweiten Modus zum Ausgeben des Signals entsprechend dem bekannten Wert abhängig von einer ersten Taktflanke (272) arbeitet, daß die Empfangsvorrichtung eine Testzellenschaltung (12, 22-28) enthält, die wahlweise in einem ersten Modus zur Durchführung eines Boundary-Scan- Tests oder einem zweiten Modus zum Abtasten des Signals an einem Eingang der Empfangsvorrichtung abhängig von der zweiten Taktflanke (278) arbeitet; und daß die Vergleichsschaltung Schaltungseinheiten zum Vergleichen des abgetasteten Eingangssignals mit dem bekannten Wert im zweiten Modus aufweist, um wie oben gesagt zu bestimmen, ob das Signal innerhalb der Zeitperiode zwischen der ersten und der zweiten Flanke zu der Empfangsvorrichtung gelangt ist.
2. Vorrichtung nach Anspruch 1, bei welcher die erste Taktflanke (272) eine ansteigende Taktflanke und die zweite Taktflanke (278) eine fallende Taktflanke ist.
3. Vorrichtung nach Anspruch 1, bei welcher die erste Taktflanke eine fallende Taktflanke und die zweite Taktflanke eine ansteigende Taktflanke ist.
4. Vorrichtung nach einem der Ansprüche 1 bis 3, bei welcher der bekannte Wert ein Logikwert entsprechend einer Eins oder einer Null ist.
5. Vorrichtung nach einem der Ansprüche 1 bis 4, bei welcher die Ausgangsschaltung eine Ausgangsschaltungseinheit (26) enthält, die zwischen Logikwerten umschalten kann.
6. Vorrichtung nach einem der Ansprüche 1 bis 5, mit einer Schaltung zum Einstellen der Frequenz des Taktes abhängig davon, ob das Signal zur Empfangsvorrichtung gelangt ist.
7. Vorrichtung nach einem der Ansprüche 1 bis 6, bei welcher die Treiber- und Empfangsvorrichtung (12) integrierte Schaltungen sind.
8. Vorrichtung nach einem der Ansprüche 1 bis 7, bei welcher die Treiber- und Empfangsvorrichtung Leiterplatten mit integrierten Schaltungen sind.
9. Vorrichtung nach einem der Ansprüche 1 bis 8, bei welcher die Laufzeitverzögerung durch ein oder mehrere Logikgatter verursacht wird, mit einer Schaltung zum Erzeugen entsprechender Signale für die Loqikgatter in der Weise, daß das Ausgangssignal zu einem Übergang an dem Eingang führt.
10. Vorrichtung nach einem der Ansprüche 1 bis 9, bei welcher der Taktgeber so ausgebildet ist, daß er mehrere Taktimpulse mit ersten und zweiten Flanken erzeugt; daß die Treibervorrichtung (12a-12d) so ausgebildet ist, daß sie mehrere, jeweils bekannten Werten entsprechende Signale abhängig von einer ersten Taktflanke abgibt; daß die Empfangsvorrichtung (10e-10h) so ausgebildet ist, daß sie die Signale an den jeweiligen Eingängen abhängig von der zweiten Taktflanke abtastet; und daß die Vergleichsschaltung so ausgebildet ist, daß sie die abgetasteten Eingangssignale mit den bekannten Werten vergleicht, um zu bestimmen, ob die Signale innerhalb der Zeitperiode zwischen den ersten und zweiten Flanken zu der Empfangsvorrichtung gelangt sind.
DE69031362T 1989-06-09 1990-06-07 Verzögerungsfehler-Testvorrichtung Expired - Fee Related DE69031362T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/364,915 US5056094A (en) 1989-06-09 1989-06-09 Delay fault testing method and apparatus

Publications (2)

Publication Number Publication Date
DE69031362D1 DE69031362D1 (de) 1997-10-09
DE69031362T2 true DE69031362T2 (de) 1998-01-08

Family

ID=23436657

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69031362T Expired - Fee Related DE69031362T2 (de) 1989-06-09 1990-06-07 Verzögerungsfehler-Testvorrichtung

Country Status (4)

Country Link
US (1) US5056094A (de)
EP (1) EP0402134B1 (de)
JP (1) JP3340736B2 (de)
DE (1) DE69031362T2 (de)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7137048B2 (en) * 2001-02-02 2006-11-14 Rambus Inc. Method and apparatus for evaluating and optimizing a signaling system
EP0358365B1 (de) * 1988-09-07 1998-10-21 Texas Instruments Incorporated Prüf-Puffer/Register
US5483518A (en) 1992-06-17 1996-01-09 Texas Instruments Incorporated Addressable shadow port and protocol for serial bus networks
US6675333B1 (en) 1990-03-30 2004-01-06 Texas Instruments Incorporated Integrated circuit with serial I/O controller
JPH04140677A (ja) * 1990-10-01 1992-05-14 Toshiba Corp 半導体集積回路
US5210759A (en) * 1990-11-19 1993-05-11 Motorola, Inc. Data processing system having scan testing using set latches for selectively observing test data
CA2057249A1 (en) * 1990-12-21 1992-06-22 Douglas A. Goss Signal conditioning logic
JP3073534B2 (ja) * 1991-01-08 2000-08-07 株式会社東芝 セルスイッチ結合網およびその試験方法
US5271019A (en) * 1991-03-15 1993-12-14 Amdahl Corporation Scannable system with addressable scan reset groups
GB9111179D0 (en) * 1991-05-23 1991-07-17 Motorola Gmbh An implementation of the ieee 1149.1 boundary-scan architecture
US5533032A (en) * 1991-10-28 1996-07-02 Sequoia Semiconductor, Inc. Built-in self-test global clock drive architecture
CA2099415A1 (en) * 1992-08-27 1994-02-28 Duane Rodney Aadsen Method and apparatus for self-testing of delay faults
US5477545A (en) * 1993-02-09 1995-12-19 Lsi Logic Corporation Method and apparatus for testing of core-cell based integrated circuits
US5422891A (en) * 1993-07-23 1995-06-06 Rutgers University Robust delay fault built-in self-testing method and apparatus
US5583787A (en) * 1994-03-08 1996-12-10 Motorola Inc. Method and data processing system for determining electrical circuit path delays
US5544175A (en) * 1994-03-15 1996-08-06 Hewlett-Packard Company Method and apparatus for the capturing and characterization of high-speed digital information
US5600787A (en) * 1994-05-31 1997-02-04 Motorola, Inc. Method and data processing system for verifying circuit test vectors
GB9417602D0 (en) * 1994-09-01 1994-10-19 Inmos Ltd A controller for implementing scan testing
JPH08249359A (ja) * 1995-03-09 1996-09-27 Matsushita Electric Ind Co Ltd 信号波形計算方法及び信号伝播時間計算方法
US6055659A (en) * 1999-02-26 2000-04-25 Texas Instruments Incorporated Boundary scan with latching output buffer and weak input buffer
US5596585A (en) * 1995-06-07 1997-01-21 Advanced Micro Devices, Inc. Performance driven BIST technique
EP0768538B2 (de) * 1995-10-13 2014-10-01 JTAG Technologies B.V. Verfahren und Tester zur Beaufschlagung eines elektronischen Bausteins mit einem Triggerimpuls
DE69606129T3 (de) * 1995-10-13 2015-03-05 Jtag Technologies B.V. Verfahren und Tester zur Beaufschlagung eines elektronischen Bausteins mit einem Triggerimpuls
US5969538A (en) 1996-10-31 1999-10-19 Texas Instruments Incorporated Semiconductor wafer with interconnect between dies for testing and a process of testing
WO1997021107A1 (en) * 1995-12-05 1997-06-12 Atg Technology, Inc. Partial scan logic
US5648973A (en) * 1996-02-06 1997-07-15 Ast Research, Inc. I/O toggle test method using JTAG
US6260165B1 (en) 1996-10-18 2001-07-10 Texas Instruments Incorporated Accelerating scan test by re-using response data as stimulus data
US5886901A (en) * 1997-01-07 1999-03-23 Lsi Logic Corporation Flip-flop for scan test chain
KR100482397B1 (ko) * 1997-01-27 2005-08-31 코닌클리케 필립스 일렉트로닉스 엔.브이. 액정표시모듈제조방법
US5787092A (en) * 1997-05-27 1998-07-28 Hewlett-Packard Co. Test chip circuit for on-chip timing characterization
US6081913A (en) * 1997-06-03 2000-06-27 Sun Microsystems, Inc. Method for ensuring mutual exclusivity of selected signals during application of test patterns
US6314470B1 (en) * 1997-07-25 2001-11-06 Hewlett Packard Company System and method for asynchronously accessing a graphics system for graphics application evaluation and control
US6408413B1 (en) 1998-02-18 2002-06-18 Texas Instruments Incorporated Hierarchical access of test access ports in embedded core integrated circuits
US6405335B1 (en) 1998-02-25 2002-06-11 Texas Instruments Incorporated Position independent testing of circuits
US6185710B1 (en) 1998-03-30 2001-02-06 International Business Machines Corporation High-performance IEEE1149.1-compliant boundary scan cell
GB9810512D0 (en) * 1998-05-15 1998-07-15 Sgs Thomson Microelectronics Detecting communication errors across a chip boundary
US6560734B1 (en) 1998-06-19 2003-05-06 Texas Instruments Incorporated IC with addressable test port
US6519729B1 (en) 1998-06-27 2003-02-11 Texas Instruments Incorporated Reduced power testing with equally divided scan paths
JP2000258506A (ja) * 1999-03-12 2000-09-22 Mitsubishi Electric Corp 半導体集積回路およびそのテストパターン生成方法
DE19938060B4 (de) * 1999-08-12 2008-06-19 Nokia Siemens Networks Gmbh & Co.Kg Integrierte Schaltung mit einer Testeinrichtung und Verfahren zum Testen der Güte elektrischer Verbindungen der ingegrierten Schaltung
JP4789297B2 (ja) * 1999-11-29 2011-10-12 パナソニック株式会社 半導体集積回路のテストパターン生成方法
US6728915B2 (en) 2000-01-10 2004-04-27 Texas Instruments Incorporated IC with shared scan cells selectively connected in scan path
US6769080B2 (en) 2000-03-09 2004-07-27 Texas Instruments Incorporated Scan circuit low power adapter with counter
US6567943B1 (en) * 2000-04-07 2003-05-20 International Business Machines Corporation D flip-flop structure with flush path for high-speed boundary scan applications
DE10033349A1 (de) * 2000-07-08 2002-01-17 Bosch Gmbh Robert Verfahren und Anordnung zum Testen digitaler Schaltungen
US7490275B2 (en) 2001-02-02 2009-02-10 Rambus Inc. Method and apparatus for evaluating and optimizing a signaling system
US6701476B2 (en) * 2001-05-29 2004-03-02 Motorola, Inc. Test access mechanism for supporting a configurable built-in self-test circuit and method thereof
US20020194565A1 (en) * 2001-06-18 2002-12-19 Karim Arabi Simultaneous built-in self-testing of multiple identical blocks of integrated circuitry
EP1296152A1 (de) * 2001-09-21 2003-03-26 Siemens Aktiengesellschaft Elektronischer Baustein und Verfahren zu dessen Qualifizierungsmessung
DE10201431C1 (de) * 2002-01-16 2003-08-21 Infineon Technologies Ag Integrierte Schaltung und Verfahren zum Betrieb einer Testanordnung mit einer integrierten Schaltung
JP2003233639A (ja) * 2002-02-06 2003-08-22 Mitsubishi Electric Corp 故障検証装置、故障検証方法および故障解析手法
US7028238B2 (en) * 2002-04-18 2006-04-11 Lsi Logic Corporation Input/output characterization chain for an integrated circuit
US7213216B2 (en) * 2002-08-09 2007-05-01 Synplicity, Inc. Method and system for debugging using replicated logic and trigger logic
US6904576B2 (en) * 2002-08-09 2005-06-07 Synplicity, Inc. Method and system for debugging using replicated logic
US7398445B2 (en) * 2002-08-09 2008-07-08 Synplicity, Inc. Method and system for debug and test using replicated logic
US20040199838A1 (en) * 2003-03-19 2004-10-07 Rutkowski Paul William Enhanced boundary-scan method and apparatus providing tester channel reduction
DE10335809B4 (de) * 2003-08-05 2010-07-01 Infineon Technologies Ag Integrierte Schaltung mit einem zu testenden elektronischen Schaltkreis und Testsystem-Anordnung zum Testen der integrierten Schaltung
US7162673B2 (en) * 2003-11-14 2007-01-09 Integrated Device Technology, Inc. Scan chain registers that utilize feedback paths within latch units to support toggling of latch unit outputs during enhanced delay fault testing
US7685488B2 (en) * 2004-07-28 2010-03-23 Nxp B.V. Circuit interconnect testing arrangement and approach therefor
US7475309B2 (en) * 2005-06-30 2009-01-06 Intel Corporation Parallel test mode for multi-core processors
JP2007011957A (ja) * 2005-07-04 2007-01-18 Nec Electronics Corp 回路設計装置およびプログラム
US7348797B2 (en) * 2005-08-30 2008-03-25 Texas Instruments Incorporated Functional cells for automated I/O timing characterization of an integrated circuit
JP4299856B2 (ja) * 2006-12-14 2009-07-22 エルピーダメモリ株式会社 半導体装置
JP2012026950A (ja) * 2010-07-27 2012-02-09 Sony Corp 集積半導体装置
US9454468B2 (en) * 2014-06-27 2016-09-27 Wipro Limited Method and system for testing software
KR102546302B1 (ko) * 2016-07-08 2023-06-21 삼성전자주식회사 클락 지터 측정 회로 및 이를 포함하는 반도체 장치
US11749368B2 (en) * 2019-12-27 2023-09-05 Intel Corporation Quick configurable universal register for a configurable integrated circuit die

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3873818A (en) * 1973-10-29 1975-03-25 Ibm Electronic tester for testing devices having a high circuit density
US3976940A (en) * 1975-02-25 1976-08-24 Fairchild Camera And Instrument Corporation Testing circuit
US4066882A (en) * 1976-08-16 1978-01-03 Grumman Aerospace Corporation Digital stimulus generating and response measuring means
USRE31056E (en) * 1977-03-23 1982-10-12 Fairchild Camera & Instrument Corp. Computer controlled high-speed circuit for testing electronic devices
US4146835A (en) * 1978-03-08 1979-03-27 Western Electric Co., Inc. Testing the differential response times of a plurality of circuits
JPH0743733B2 (ja) * 1985-12-11 1995-05-15 株式会社日立製作所 論理シミュレーション方法
US4672307A (en) * 1985-12-20 1987-06-09 University Of Southern California Simplified delay testing for LSI circuit faults
JPH0760400B2 (ja) * 1986-01-07 1995-06-28 株式会社日立製作所 論理回路の診断方法
US4777616A (en) * 1986-05-12 1988-10-11 Outlook Technology, Inc. Increased resolution logic analyzer using asynchronous sampling
US4937826A (en) * 1988-09-09 1990-06-26 Crosscheck Technology, Inc. Method and apparatus for sensing defects in integrated circuit elements

Also Published As

Publication number Publication date
EP0402134A3 (de) 1991-09-04
US5056094A (en) 1991-10-08
EP0402134B1 (de) 1997-09-03
JP3340736B2 (ja) 2002-11-05
EP0402134A2 (de) 1990-12-12
JPH03103781A (ja) 1991-04-30
DE69031362D1 (de) 1997-10-09

Similar Documents

Publication Publication Date Title
DE69031362T2 (de) Verzögerungsfehler-Testvorrichtung
DE68928613T2 (de) Bidirektionale-Boundary-Scan-Testzelle
DE68928837T2 (de) Prüf-Puffer/Register
DE60211659T2 (de) Verfahren und vorrichtung zur diagnose von ausfällen in einer integrierten schaltung unter verwendung von techniken des typs design-for-debug (dfd)
DE69107463T2 (de) Integrierte Schaltung, System und Verfahren zur Fehlererzeugung.
DE2729053C2 (de) Prüfverfahren für eine monolithisch integrierte stufenempfindliche, einseitig verzögerungsabhängige logische Einheit
DE69030528T2 (de) Verfahren und Anordnung zum Testen von Schaltungsplatten
DE69533275T2 (de) Ein Steuergerät zur Durchführung der Abtastprüfung
DE3832113C2 (de)
DE68921086T2 (de) Integrierte Halbleiterschaltkreisanordnung mit verbesserter Eingangs-/ Ausgangsschnittstellenschaltung.
DE3788586T2 (de) Schaltung zur Prüfung des Eingangsspannungssignals für eine halbleiterintegrierte Schaltung.
DE112006001986T5 (de) Timing-Generator Halbleitertestgerät
DE3855410T2 (de) Diagnosegerät für ein Datenverarbeitungssystem
DE69217524T2 (de) Testschaltung, vorgesehen in digitalen logischen Schaltungen
DE69031291T2 (de) Testmethode, Testschaltung und integrierter Halbleiterschaltkreis mit Testschaltung
DE102016116717A1 (de) Scan-Ketten-Schaltung, die eine Injektion eines logischen Selbsttestmusters während der Laufzeit unterstützt
DE10355116B4 (de) Ein- und Ausgangsschaltung eines integrierten Schaltkreises, Verfahren zum Testen eines integrierten Schaltkreises sowie integrierter Schaltkreis mit einer solchen Ein- und Ausgangsschaltung
DE102021128331B3 (de) Integrierte schaltung, testanordnung und verfahren zum testen einer integrierten schaltung
DE69724742T2 (de) Speicherfeldprüfschaltung mit Fehlermeldung
DE68927984T2 (de) Logikschaltung mit einer Prüffunktion
EP0628832B1 (de) Integrierte Schaltung mit Registerstufen
DE69720157T2 (de) System und Verfahren zur Prüfung elektronischer Geräte
DE69533018T2 (de) Struktur und Leistungsabtastprüfung
DE60007196T2 (de) Vorrichtung zur Beseitigung von "Durchgleiten" von Daten während einer Schiebeoperation mit Master-Slave Kippschaltungen
EP1430320B1 (de) Elektronischer baustein und verfahren zu dessen qualifizierungsmessung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee