-
GEBIET DER ERFINDUNG
-
Die Erfindung bezieht sich auf den
Test und auf die Bewertung des Betriebs integrierter Schaltungen
(ICs) und insbesondere auf die Echtzeitbeobachtung ausgewählter Knoten
einer integrierten Schaltung.
-
HINTERGRUND
DER ERFINDUNG
-
1 zeigt
etwas, das üblicherweise Voll-Scan-Entwurf
genannt wird. In diesem herkömmlichen
Scan-Entwurfsstil sind alle Funktionsspeicher (Flipflops/Zwischenspeicher)
einer IC von der Schaltungslogik getrennt und durch die Aufnahme
eines Multiplexers (1) vor jedem Speicher (M1) scan-fähig gemacht.
Da die Funktionsspeicher für den
Test gemeinsam genutzt werden, besitzt dieser Scan-Entwurfsstil
einen sehr niedrigen Testschaltungs-Organisationsaufwand. Während des
Funktionsbetriebs verbindet der Multiplexer den M1 mit
der Schaltungslogik, um den Stromkreis zu schließen. Während des Testbetriebs ermöglicht der
Multiplexer, daß der M1 Daten
von der Schaltungslogik erfaßt, Daten
zwischen den M1s verschiebt und Daten an die Schaltungslogik
ausgibt. Da der Multiplexer die normale Verbindung zwischen dem M1 und
der Schaltungslogik während
Verschiebungsoperationen (Scan-Operationen) unterbricht, ist die
Schaltung während
des Tests nicht funktionsfähig.
Der Test der Schaltungslogik wird durch diese Erfassungs-, Verschiebungs-
und Ausgabeschritte ausgeführt.
Das Steuereingangssignal (CTL) zum Betrieb des M1 und des
Multiplexers 1 in der Testbetriebsart kommt typischerweise
von einer seriellen Testbusschnittstelle an der IC wie etwa von
dem IEEE-1149.1-Testzugriffsport (IEEE-1149.1-TAP).
-
Der Voll-Scan-Entwurf aus 1 kann in Mikroprozessoren,
Mikrocontrollern und digitalen Signalprozessoren beispielsweise
für Emulationsoperationen
verwendet werden. In solchen Emulationsoperationen werden typischerweise
die Schritte des (1) Scannens des Scan-Pfads zum Laden
von Zustandsdaten, (2) Frei gebens des Prozessors zum Ausführen während einer
vorgegebenen Zeitdauer, (3) Anhaltens des Prozessors und
(4) Scannens des Scan-Pfads zum Untersuchen der internen
Zustände des
Prozessors wiederholt. Solche Emulationsoperationen sind besonders
nützlich
bei der Entwicklung von Programmcode, der durch den Prozessor auszuführen ist.
-
2 zeigt
einen anderen herkömmlichen Scan-Zugang,
bei dem die Scan-Zellen
grundsätzlich in
den Funktionssignalpfaden einer Schaltung angeordnet oder in diese
eingefügt
sind. Die Logik, die diesen Scan-Zellen zugeordnet ist, ist für den Test vorgesehen
und wird nicht für
Funktionszwecke gemeinsam genutzt. Während des Normalbetriebs stellen
die Scan-Zellen über
den durch den Multiplexer 2 gezeigten DI-DO-Pfad funktionsfähige Schaltungsverbindungen
her. Während
die Scan-Zelle in der Funktionsbetriebsart Daten erfassen und hinausschieben
kann, ohne den Normalbetrieb der Schaltung zu stören, da ihre M1s nicht
funktionsfähig
verwendet werden, ist der Funktionspfad zwischen DI und DO unterbrochen,
wenn sie auf die Testbetriebsart eingestellt ist, wobei das Ausgangssignal
des M1 über
den Multiplexer 2 in die Schaltung eingegeben wird. Der
Test erfolgt ähnlich,
wie es in 1 beschrieben
wurde. Für
den Betrieb des Multiplexers 2 ist ein zusätzliches
Steuersignal erforderlich.
-
Die 3 und 4 zeigen herkömmliche Boundary-Scan-Zugänge. Der
Boundary-Scan wird auf Scan-Zellen zwischen den IC-E/A-Anschlußflächen und
der Kernschaltungsanordnung angewendet. Während der Funktionsbetriebsart
ermöglichen die
Boundary-Scan-Zellen die normale E/A-Operation. Während die
IC in der Normalbetriebsart ist, können die Boundary-Scan-Zellen,
da sie eine hierfür vorgesehene
Testlogik sind, in der Weise gesteuert werden, daß sie Daten
erfassen und hinausschieben. Während
der Testbetriebsart ist die Normalbetriebsart der IC gesperrt, während die
Boundary-Scan-Zellen dazu verwendet werden, Daten von den Eingangsanschlußflächen zu
erfassen und hinauszuschieben sowie Daten in die Ausgangsanschlußflächen hineinzuschieben
und an sie auszugeben. Die Eingangs-Boundary-Scan-Zellen aus 3 ermöglichen lediglich die Erfassungsund
Hinausschiebeoperationen an den Eingangsanschlußflächen, d. h. keine Aus gabefähigkeit.
Die Eingangs-Boundary-Scan-Zellen aus 4 ermöglichen
außerdem das
Hineinschieben von Daten in die Kernlogik und Ausgeben an sie. Boundary-Scan-Zellen,
welche Daten ausgeben, erfordern, daß die Daten während der Verschiebeoperation
gehalten werden. Diese Boundary-Scan-Zellen benötigen einen zweiten Speicher
(M2), der dazu verwendet wird, Daten zu dem Kern/zu der
Anschlußfläche zu halten,
bis der M1 neue Daten in M2 eingibt.
-
Zusammengefaßt ist der Scan-Pfad-Entwurf eine übliche Testtechnik
für integrierte
Schaltungen. Die Scan-Pfade sind dadurch hergestellt, daß eine Anzahl
von Scan-Zellen in Serie geschaltet werden. Die Scan-Zellen werden
für den
Test von Funktionsschaltungen in ICs oder zum Ausführen eines Boundary-Scan-Tests
der E/A der ICs verwendet. Für den
Test müssen
die Scan-Zellen mit internen Schaltungsknoten oder mit E/A-Anschlußflächen der
ICs gekoppelt werden. Für
den Zugriff auf die Scan-Zellen sind ein serieller Scan-Pfad und
ein Steuerpfad zu jeder Scan-Zelle geleitet.
-
Aus
EP-A-0530835 ist
eine Testschaltung bekannt, die die wahlweise Ausgabe eines Wertes, der
in einem Register in der Schaltung gehalten wird, in Echtzeit ermöglicht.
Die Schaltung umfaßt
mehrere in Serie geschaltete Scan-Pfad-Register, die Ausgangssignale der zu
testenden Schaltung halten. Jedes der Scan-Pfad-Register umfaßt einen Scan-Eingang, einen
Scan-Ausgang, einen Dateneingang, der mit den zu testenden Schaltungen
verbunden ist, ein erstes Haltemittel, das eines der Ausgangssignale der
zu testenden Schaltung hält,
ein zweites Haltemittel, das ein Signal an dem Scan-Eingang hält, ein erstes
Auswahlmittel, das in Abhängigkeit
von dem Ausgangssignal von dem zweiten Haltemittel eines der Signale
an dem Scan-Eingang oder das Signal von dem ersten Haltemittel auswählt, und
ein zweites Auswahlmittel, das in Abhängigkeit von einem Steuersignal
eines der Signale an dem zweiten Haltemittel oder das Ausgangssignal
des ersten Haltemittels auswählt.
-
In Übereinstimmung mit der vorliegenden
Erfindung wird eine Scan-Zelle geschaffen, die die Merkmale des
beigefügten
Anspruchs aufweist.
-
KURZBESCHREIBUNG
DER ZEICHNUNG
-
Die vorliegende Erfindung wird nun
beispielhaft mit Bezug auf die beigefügte Zeichnung weiter beschrieben,
in der:
-
1-4 herkömmliche
Scan-Zellen-Anordnungen zeigen;
-
5 und 6 beispielhafte interne Scan-Entwürfe gemäß der vorliegenden
Erfindung zeigen;
-
6A einen
Multiplexer der 5-6 zeigt;
-
7 und 8 beispielhafte Boundary-Scan-Entwürfe gemäß der vorliegenden
Erfindung zeigen;
-
9A-9F die
Beobachtungsfähigkeit
zeigen, die durch die internen Scan-Entwürfe
der 5-6 geschaffen wird;
-
10A-10E die
Beobachtungsfähigkeit zeigen,
die durch die Boundary-Scan-Entwürfe der 7-8 geschaffen
wird,
-
11 ein
Beispiel der Beobachtungsfähigkeit
der vorliegenden Erfindung auf der Platinenebene ist;
-
12 eine
Anordnung des Standes der Technik von Scan-Pfaden einer integrierten
Schaltung zeigt;
-
13-14 ein Bustest-Ausgabemerkmal gemäß der vorliegenden
Erfindung zeigt;
-
15 eine
beispielhafte Alternative zu dem internen Scan-Entwurf aus 5 zeigt;
-
15A einen
Multiplexer aus 15 zeigt;
-
15B ein
Speicherelement aus 15 zeigt; und
-
16 und 17 weitere beispielhafte Boundary-Scan-Entwürfe gemäß der Erfindung
zeigen.
-
AUSFÜHRLICHE
BESCHREIBUNG
-
Die beispielhafte 5 zeigt, wie die Scan-Zellen aus 1 mit einer kleinen Schaltungsanordnung
ausgebaut werden können,
um die Erfindung zu realisieren. Die schattiert gezeigte hinzugefügte Schaltungsanordnung
enthält
einen zweiten Speicher (M2) und einen Multiplexer 2.
Der M2 wird nach einer Scan-Operation von dem M1 geladen.
Die Daten in M2 und die Steuerung von CTL bestimmen, welches
Eingangssignal in den Multiplexer 2 vom Multiplexer 2 ausgegeben
wird. Während
der Scan-Operationen erzwingt CTL immer, daß der Multiplexer 2 die
Daten DO vom M1 an den SI-Eingang (Scan-Eingang) der nächsten Scan-Zelle
ausgibt. Während
der Scan nicht ausgeführt
wird, ist das CTL getrennt (inaktiv), um zu ermöglichen, daß der Multiplexer 2 durch
die Daten vom M2 in der Weise programmiert wird, daß er entweder
SI oder DI zur Ausgabe vom Multiplexer 2 auswählt. Falls
er zur Ausgabe von DI programmiert wird, wird vom Multiplexer 2 der
Aus-Knoten für
die Schaltungslogik ausgegeben, während ansonsten SI ausgegeben
wird. Während Aus
ausgewählt
ist, ist die Scan-Zelle in der Beobachtungsbetriebsart, wobei sie
eine Signalaktivität
an dem Aus-Knoten an den SI-Eingang
der nächsten Scan-Zelle übergibt.
Falls SI ausgewählt
ist, ist die Scan-Zelle
in der Umgehungsbetriebsart, wobei sie das SI-Eingangssignal an
den SI-Eingang der
nächsten
Scan-Zelle übergibt.
-
In dem Scan-Pfad aus 5 ist zu sehen, daß das Aus-Signal, das der ersten
Scan-Zelle zugeordnet ist, über
den Scan-Pfad an den SO-Ausgang des Scan-Pfads übergeben wird, falls die erste
(linke) Scan-Zelle so programmiert ist, daß sie in der Beobachtungsbetriebsart
ist, während
die folgenden Scan-Zellen so programmiert sind, daß sie in
der Umgehungsbetriebsart sind. Ferner ist zu sehen, daß das Aus-Signal,
das der zweiten Scan-Zelle zugeordnet ist, an SO übergeben
wird, wenn die zweite Scan-Zelle in der Beobachtungsbetriebsart
ist, während
die folgenden Scan-Zellen in der Umgehungsbetriebsart sind. Dieser
Prozeß des
Einstellens einer ausgewählten
Scan-Zelle auf die Beobachtungsbetriebsart, während die anderen Scan-Zellen
auf die Umgehungsbetriebsart eingestellt werden, ermöglicht die
Echtzeitbeobachtung irgendeines Signalknotens, der einer Scan-Zelle
in einer IC zugeordnet ist, an SO.
-
Da die Beobachtung über eine
existierende Scan-Pfad-Verdrahtungsleitung stattfindet und die zu jeder
Scan-Zelle hinzugefügte
Schaltungsfläche
klein ist (M2 und Multiplexer 2) ist der Organisationsaufwand
dieses Lösungswegs
im Verhältnis
zu 1 niedrig. Da M1 funktionsfähig verwendet
wird und somit nicht als Programmiereingang in den Multiplexer 2 verwendet
werden kann, ist in dem Voll-Scan-Entwurf aus 5 der M2 erforderlich. Durch
diesen kleinen Organisationsaufwand wird die Fähigkeit realisiert, den Echtzeitbetrieb
jedes Knotens, der einer Scan-Zelle in einer IC zugeordnet ist,
auszuwählen und
zu untersuchen.
-
Die vorliegende Erfindung ermöglicht,
daß IC-Hersteller
den Scan-Pfad für
den herkömmlichen Scan-Test
verwenden und den Scan-Pfad daraufhin als eingebettete Echtzeit-Beobachtungsstruktur
wiederverwenden, um die innere Aktivität an jedem Schaltungsknoten
zu betrachten, der einer Scan-Zelle zugeordnet ist. Die Fähigkeit,
die Erfindung zur Auswahl und Beobachtung interner Knoten eines
IC zu verwenden, während
die IC in einem Tester funktionsfähig getestet wird, schafft
einen neuen Testtyp, der die Fähigkeit
eines IC-Herstellers zum äußerst schnellen
Erfassen und Diagnostizieren von Funktionsfehlern verbessert. Nachdem
die ICs auf den Platinen montiert worden sind, können diese Tests wiederholt
werden.
-
Ein weiterer Nutzen der Erfindung
bezieht sich auf die Emulation. Bei der wie obenbeschriebenen herkömmlichen
Emulation ist eine Zustandsdatenbeobachtung lediglich am Ende der
Ausführung über die
Scan-Ausgabeoperation verfügbar.
Die vorliegende Erfindung ermöglicht
jedoch auch eine Zustandsdatensichtbarkeit während der Ausführung. Die
Fähigkeit
zur Betrachtung eines ausgewählten Knotens
in einer IC während
der Ausführung
fügt zum
Stand der Technik der Emulation eine neue Dimension hinzu.
-
Die Verwendung der Erfindung in dem Voll-Scan-Entwurf
aus 5 zur äußerst schnellen Sichtbarkeit
interner Knoten während
des Funktionstests oder während
der Emulation erfordert, daß eine Spezial-Scan-Operation
definiert wird. Diese Scan-Operation, die als Beobachtungs/Umgehungs-Daten-Scan
bezeichnet wird, unterscheidet sich von anderen Scans dadurch, daß sie bewirkt, daß in die M1s gescannte
Daten in die M2s aktualisiert werden. Andere Scan-Operationen
aktualisieren keine Daten von M1 in M2.
-
In 5 ist
zu sehen, daß die
M1s drei Zwecken dienen. Zunächst
dienen sie als Funktionsspeicher für die IC. Zweitens dienen sie
als Scan-Speicher für
herkömmliche
Test- und Emulationsoperationen. Drittens dienen sie als Eingangsspeicher,
aus denen Beobachtungs/Umgehungs-Daten in die M2s geladen
werden sollen. Der Beobachtungs/Umgehungs-Daten-Scan ermöglicht,
die M2s mit einem Muster zu laden (zu aktualisieren), das
zur Auswahl des zu beobachtenden Knotens verwendet wird. Nachdem
das Beobachtungs/Umgehungs-Muster in die M2s geladen worden
ist, muß eine
weitere Scan-Operation den Startdatenzustand, von dem aus die IC
die Ausführung
beginnt, in die M1s laden. Da das Startzustandsmuster das
letzte Muster ist, das in die M1s gescannt wird, bevor
die Test- oder Emulationsoperation beginnt, wird dieses Muster nicht
von M1 in M2 aktualisiert, da dies das zuvor hergestellte
Beobachtungs/Umgehungs-Muster in den M2s überschreiben
würde.
-
6 zeigt
beispielhaft die Hinzufügung
eines Multiplexers 3 zu der Scan-Zelle aus 2,
um eine weitere Ausführungsform
der Erfindung zu realisieren. Der Grund dafür, daß lediglich der Multiplexer 3 erforderlich
ist, besteht darin, daß der M1 verwendet
werden kann, während
die IC in der Normalfunktionsbetriebsart ist, um den Multiplexer 3 zu
programmieren. Abgesehen davon, daß M2 durch M1 ersetzt ist,
sind die Struktur und der Betrieb der hinzugefügten Schaltungsanordnung die
gleichen, wie sie in 5 beschrieben
sind. Außerdem
treffen die gleichen Nutzen, wie sie in 5 beschrieben wurden, auf die Scan-Zellen-Anordnung aus 6 zu. Es ist wichtig anzumerken,
daß die
Funktion der Schaltung während
Scans, die Test- oder Beobachtungsfunktionen einstellen, nicht ge sperrt
wird, da die Scan-Zellen-Schaltungsanordnung aus 6 für
den Test vorgesehen ist.
-
6A zeigt
einen Multiplexer, der als Multiplexer 2 aus 5 oder als Multiplexer 3 aus 6 dienen könnte. Während der
Scan-Operationen erzwingt das CTL-Eingangssignal, daß das Ausgangssignal
von M1 das Multiplexerausgangssignal ist. Während Nicht-Scan-Zeiten
ist CTL freigegeben, um zu ermöglichen,
daß die
Daten in M1 (6)
oder in M2 (5)
den Multiplexer zur Ausgabe entweder von SI oder von DI programmieren.
-
Die beispielhaften 7 und 8 zeigen die Erfindung in Anwendung auf
Boundary-Scan-Entwurfsstile. In beiden Figuren stellt ein Multiplexer 2 oder 3 die
Beobachtungsbetriebsart und die Umgehungsbetriebsart für die Boundary-Scan-Zellen bereit.
Die Eingangs-Boundary-Scan-Zellen aus 7 wiederverwenden
den Testspeicher M1, um den zusätzlichen Multiplexer 2 wie
in 6 beschrieben zu
programmieren. Die Ausgangs-Boundary-Scan-Zellen aus 7 wiederverwenden den Testspeicher M2, um
den zusätzlichen
Multiplexer 3 zu programmieren. Die Eingangs- und Ausgangs-Boundary-Scan-Zellen
aus 8 wiederverwenden beide den Testspeicher M2,
um den zusätzlichen
Multiplexer 3 zu programmieren. Die Struktur und der Betrieb der
Beobachtungsschaltungsanordnung sind die gleichen, wie sie zuvor
beschrieben wurden. Wie die Scan-Zellen aus 6 sind die Boundary-Scan-Zellen der 7-8 für den Test
vorgesehen, wobei das Scannen ausgeführt werden kann, um die Echtzeit-Anschlußflächenbeobachtung
einzurichten, ohne die IC zu sperren.
-
Konstrukteure/Hersteller können den Boundary-Scan-Pfad
der 7-8 für den herkömmlichen
IC-IC-Verdrahtungstest verwenden, wobei sie den Boundary-Scan-Pfad daraufhin
als eingebettete Echtzeit-E/A-Beobachtungsstruktur wiederverwenden
können,
um die Signalaktivität
an jeder IC-Anschlußfläche zu betrachten.
Diese Fähigkeit
fügt zu der
IC des Herstellers einen Wert hinzu, da sie für die Systemkonstrukteure eine
Möglichkeit
schafft, die E/A-Aktivität
der IC in Echtzeit zu betrachten. Sie ist fast gleichwertig damit,
daß mit
jedem IC-Anschlußstift ein
Logikanalysator gekoppelt ist. Die Erfindung ist nützlich in
Au ßendienstsystemen,
wo ihr Online-Überwachungsverfahren
verwendet werden kann, um frühe
Anzeichen von Systemproblemen zu erfassen. Außerdem kann die Erfindung als
Hilfe zur Reparatur und Wartung von Systemen verwendet werden. Ferner
kann die Erfindung verwendet werden, um eine Online-E/A-Sichtbarkeit
während
der System-Software-Austestung, der Systememulation und der Hardware/Software-Integration
zu schaffen.
-
Die 9A bis 9F zeigen die durch die internen Scan-Pfad-Entwürfe der 5 und 6 geschaffene Beobachtungsfähigkeit. 9A zeigt den Datenpfadfluß zwischen
dem seriellen Eingang (SI) und dem seriellen Ausgang (SO) des IC-Scan-Pfads, wenn
alle Scan-Zellen (SC) in ihrer Umgehungsbetriebsart sind. 9B zeigt die erste Scan-Zelle, eingestellt
auf ihre Beobachtungsbetriebsart, während die anderen Scan-Zellen
in der Umgehungsbetriebsart sind. Die 9C-9F zeigen,
daß alle
Knoten, die allen Scan-Zellen zugeordnet sind, an dem seriellen Ausgang
beobachtbar gemacht werden können.
-
Die 10A bis 10E zeigen die Beobachtungsfähigkeit,
die durch die Boundary-Scan-Entwurfsstile der 7 und 8 geschaffen wird. 10A zeigt
den Datenpfadfluß zwischen
dem seriellen Eingang (SI) und dem seriellen Ausgang (SO) des IC-Boundary-Scan-Pfads,
wenn alle Scan-Zellen (SC) in ihrer Umgehungsbetriebsart sind. 10B zeigt die erste Scan-Zelle, eingestellt
auf ihre Eingangsanschlußflächen-Beobachtungsbetriebsart, während die
anderen Scan-Zellen in der Umgehungsbetriebsart sind. Die Fig. 10C-10E
zeigen, daß alle
Eingangsund Ausgangsanschlußflächen, die
den Boundary-Scan-Zellen zugeordnet sind, an dem seriellen Ausgang
beobachtbar gemacht werden können.
-
11 zeigt
konzeptionell die Schritte, mit denen ein Scan-Controller unter
Verwendung des Beobachtungsmerkmals der Erfindung auf eine Reihe
von ICs (1-4) auf einer Platine zugreift. Im ersten Schritt entleert
der Scan-Controller Daten über
den Scan-Pfad der ICs, die in der Umgehungsbetriebsart der Erfindung
sind. Der zweite Schritt zeigt den Scan-Controller, der die IC1
für die
Beobachtung ihrer E/A-Anschlußflächen und/oder
internen Knoten eingestellt hat, während die anderen ICs in der
Umgehungsbetriebsart sind. In dieser Anordnung kann irgendein Knoten
oder irgendeine E/A-Anschlußfläche der
IC1 zur Beobachtung und Ausgabe über
die ICs 2, 3 und 4 an den Scan-Controller ausgewählt werden. Die weiteren Schritte
geben einfach an, wie auf jede verbleibende IC in dem Scan-Pfad
zur Echtzeitbeobachtung zugegriffen wird.
-
12 zeigt
eine herkömmliche
parallele Anordnung der Scan-Pfade in einer IC. Die Boundary-Scan-Norm
IEEE-1149.1 lehrt die Verwendung solcher Anordnungen paralleler
Scan-Pfade. MX bezeichnet in 12 einen
Multiplexer. Eine gerade verdrahtete Verbindung zwischen SI und
SO ist durch eine Strichlinie bezeichnet. Falls die gerade verdrahtete
Verbindung zwischen SI und SO verfügbar ist, kann das von einer
führenden
IC in SI eingegebene Beobachtungssignal in der Umgehungsbetriebsart anstatt über eine
Scan-Zelle (oder über
Scan-Zellen) einfach über
den Draht zu SO gehen. Die Verwendung der Erfindung in Architekturen
gemäß IEEE 1149.1
erfordert, daß der
serielle Ausgangspuffer 120 während Zeiten, in denen die
Beobachtungs- und die Umgehungsbetriebsart verwendet werden, kein
3-Zustands-Puffer ist, da dies den Signalfluß über die ICs in dem Scan-Pfad
sperren würde.
-
13 zeigt
eine alternative Möglichkeit zum Übertragen
von Daten von der IC während
der Beobachtungs- und der Umgehungsbetriebsart. Zu der IC ist ein
zusätzlicher
Test-Ausgangsanschlußstift
(oder Test-Ausgangsanschluß)
TO hinzugefügt, um
während
der Beobachtungs- und der Umgehungsbetriebsart eines ausgewählten Scan-Pfads Daten
auszugeben. Der TO-Anschlußstift
ist ein 3-Zustands-Anschlußstift,
so daß mehrere
ICs auf der Platinenebene eine Bus-TO-Verbindung haben können. Der TO-Anschlußstift schafft
eine Verbesserung gegenüber
der Verwendung der SO dadurch, daß der TO-Anschlußstift direkt
mit einem Scan-Controller verdrahtet sein kann, d. h. dadurch, daß die Daten
während
der Beobachtung nicht wie in 11 gezeigt über andere
ICs in dem Scan-Pfad übergeben
zu werden brauchen. Die Übergabe
der Beobachtungsdaten über
viele ICs kann die Ankunft der Daten an dem Scan-Controller verzögern. Unter
Verwendung des TO können
die Daten von der IC direkt an den Scan-Controller ausgegeben werden.
-
14 zeigt
konzeptionell die Schritte, mit denen ein Scan-Controller unter
Verwendung des Beobachtungsmerkmals der Erfindung und des TO-Anschlußstifts
auf eine Reihe von ICs (1-4) auf einer Platine zugreift. Im ersten
Schritt sind die TOs aller ICs gesperrt. Der zweite Schritt zeigt,
daß der Scan-Controller
die IC1 unter Verwendung des TO für die Beobachtung ihrer E/A-Anschlußflächen und/oder
ihrer inneren Knoten eingestellt hat, während die TOs der anderen ICs
gesperrt sind. In dieser Anordnung können die Daten von einem internen Knoten
oder von einer E/A-Anschlußfläche der
IC1 zur Beobachtung und direkten Ausgabe am TO an den Scan-Controller
ausgewählt
werden, während die
Daten in 11 über jede IC entlang des Scan-Pfads übergeben
werden müßten. Die
anderen Schritte bezeichnen einfach die Freigabe der TO-Echtzeitbeobachtung
jeder verbleibenden IC in dem Scan-Pfad.
-
15 zeigt
beispielhaft eine Alternative zu dem Scan-Entwurf aus 5. Dieser Austauschentwurf
schafft Vorteile hinsichtlich der Menge der erforderlichen Schaltungsanordnung.
Die Scan-Zellen aus 15 enthalten wie
die aus 5 einen zweiten
Speicher (M2) und einen Multiplexer 2. Außerdem wird
der M2 während
einer Beobachtungs/Umgehungs-Scan-Operation von dem M1 geladen,
während
das Ausgangssignal vom M2 steuert, welches Eingangssignal
in den Multiplexer 2 vom Multiplexer 2 ausgegeben
wird. Während
der Scan-Operationen erzwingt das CTL immer, daß der Multiplexer 2 Daten vom M1 an
den SI-Eingang der
nächsten
Scan-Zelle ausgibt. Während
der Scan nicht ausgeführt
wird, wird das CTL freigegeben, um zu ermöglichen, daß der Multiplexer 2 durch
Daten vom M2 programmiert wird, um entweder Daten von SI
oder vom M1 zur Ausgabe vom Multiplexer 2 auszuwählen (siehe
das UND-Gatter in 15A). Falls er zur
Ausgabe von M1-Daten programmiert wird, wird vom Multiplexer 2 der
Ein-Knoten an die Schaltungslogik ausgegeben, während ansonsten SI ausgegeben
wird. Falls Ein ausgewählt
ist, ist die Scan-Zelle in der Beobachtungsbetriebsart, wobei sie
die Signalaktivität
an dem Ein-Knoten an den SI-Eingang der nächsten Scan-Zelle übergibt.
Falls SI ausgewählt
ist, ist die Scan-Zelle in der Umgehungsbetriebsart, wobei sie das
SI-Eingangssignal an den SI-Eingang der nächsten Scan-Zelle übergibt.
-
Im Vergleich zu dem 3-Eingangs-Multiplexer aus 5 braucht der Multiplexer 2 aus 15 lediglich ein Zwei-Eingangs-Multiplexer
zu sein. Dies verringert die Multiplexerschaltungsanordnung um etwa
33%. Der Grund dafür,
daß in 15 ein Zwei-Eingangs-Multiplexer verwendet
werden kann, besteht darin, daß anstelle
des Aus-Knotens von der Schaltungslogik in 5 der Ein-Knoten zu der Schaltungslogik
als der Beobachtungspunkt ausgewählt
wird. Da der M1-Ausgang
bereits ein Eingang in den Multiplexer ist und da der M1-Ausgang
der Ein-Knoten zu der Schaltungslogik ist, beseitigt die Beobachtung
des Ein-Knotens anstelle des Aus-Knotens einen Multiplexereingang.
Ansonsten ist der Betrieb des Beobachtungsverfahrens der gleiche,
wie er zuvor beschrieben wurde. Diese Einsparungen in der Multiplexerschaltungsanordnung
sind wichtig in Voll-Scan-Entwürfen wie 1, da den jeweiligen M1s potentiell
Tausende oder Zehntausende von Knoten zugeordnet sind. Falls anstelle
des Zwei-Eingangs-Multiplexers ein Drei-Eingangs-Multiplexer verwendet
wird, steigt die zusätzliche
Schaltungsanordnung, die zum Erreichen der Beobachtungsfähigkeit
der Erfindung erforderlich ist, an jedem Knoten um etwa 33%. Diese
33%-ige-Zunahme wird mit der Anzahl der Knoten in der Schaltungsanordnung
multipliziert, die, wie erwähnt,
Tausende betragen kann.
-
Außerdem ist in 15B ein
Beispiel eines Speichers gezeigt, der als M2 dienen kann.
Da die M2s eine minimale Ausgangslast haben und da die Leistung
beim Entwurf kein wichtiger Faktor ist, können ein Schalter (S) und ein
Bushalter (BH) als M2 dienen. Der Schalter ist während der
Beobachtungs/Umgehungs-Scan-Operation
vorübergehend geschlossen,
um das Steuersignal in den Multiplexer 2 einzugeben. Nachdem
der Schalter geöffnet
worden ist, hält
der Bushalter das Steuersignal zum Multiplexer 2 aufrecht.
Wieder ist das Minimieren der Schaltungsanordnung von M2 wichtig,
da in Voll-Scan-Entwürfen
zu jedem Ein-Knoten
der Schaltungsanordnung ein M2 hinzugefügt werden muß. Die Schaltungsanordnung
von M2 und Multiplexer 2 kann weiter verringert
werden, indem sie zu einer optimierten Schaltung integriert werden.
-
Obgleich der Zugang der Erfindung
so gezeigt wurde, wie er auf das Zugreifen auf Daten für den Test
angewendet wird, ist klar, daß dieser
Zugang auch auf das Zugreifen auf Daten für andere Zwecke verwendet werden
kann.
-
Die beispielhafte 16 zeigt
Boundary-Scan-Zellen, die an einer bidirektionalen (E/A-) Anschlußfläche einer
IC angeordnet sind. Die IC-Kernschaltungsanordnung besitzt einen
Freigabeausgang (ENA), der den mit der E/A-Anschlußfläche verbundenen
3-Zustands-Ausgangspuffer 161 steuert, einen Datenausgang
(aus), der die E/A-Anschlußfläche ansteuert,
wenn der 3-Zustands-Ausgangspuffer freigegeben ist, und einen Eingang
(ein), der über
den Eingangspuffer 163 Daten von der E/A-Anschlußfläche empfängt. Die
Boundary-Scan-Zellen in dem ENA-, Aus- und Ein-Pfad enthalten jeweils
die Echtzeit-Datenbeobachtungs- und -Umgehungs-Merkmale, wie sie
in den Boundary-Scan-Zellen der 7 und 8 beschrieben worden sind. Die Eingangs-
und Ausgangspuffer sind in 16 in der
Weise gezeigt, daß die
E/A-Operation angegeben ist. Der Einfachheit halber waren die Eingangs-
und Ausgangspuffer in den Figuren des vorhergehenden Beispiels nicht
gezeigt, wobei sie aber selbstverständlich existieren.
-
In 16 kann
die Erfindung dazu verwendet werden, über die Eingangs-Boundary-Scan-Zelle (untere
Zelle) die Daten von der E/A-Anschlußfläche zu beobachten. Außerdem können über die
Ausgangs-Boundary-Scan-Zelle (mittlere Zelle) die IC-Kern-Ausgangsdaten
beobachtet werden. Ferner kann über
die Freigabe-Boundary-Scan-Zelle (obere Zelle) der Freigabeausgang
von dem IC-Kern beobachtet werden. Da die Eingangs-Boundary-Scan-Zelle
die E/A-Anschlußflächen-Daten
beobachtet, liefert sie tatsächlich
eine Beobachtung sowohl des Eingangs- als auch des Ausgangsdatenflusses über die E/A-Anschlußfläche. Anhand
der Erkenntnis, daß die IC-Ausgangsdaten,
die über
die Ausgangs-Boundary-Scan-Zelle
beobachtbar sind, eine Teilmenge der E/A-Daten sind, die von der
Eingangs-Boundary-Scan-Zelle beobachtbar sind, können die Boundary-Scan-Zelle und die Beobachtungsschaltungsanordnung
wie in 17 gezeigt optimiert werden.
-
In 17 ist
die Eingangs-Boundary-Scan-Zelle von der E/A-Anschlußfläche entfernt worden.
Außerdem
besitzt der Multiplexer 1 der Ausgangs-Boundary-Scan-Zelle einen
zusätzlichen
Eingang zum Empfang der Daten von der E/A-Anschlußfläche und einen zusätzlichen
Steuereingang von dem Boundary-Scan-Zellen-Freigabeausgang. Der zusätzliche
Steuereingang bestimmt, ob während des
herkömmlichen
Boundary-Scan-Tests über
den Multiplexer 1 die Ausgangsdaten von dem IC-Kern oder
die Daten von der E/A-Anschlußfläche in M1 erfaßt werden.
Außerdem
sind mit dem Multiplexer 3 der Ausgangs-Boundary-Scan-Zelle anstelle der Ausgangsdaten
von dem IC-Kern, wie es in 16 gezeigt
ist, die Daten von der E/A-Anschlußfläche als die Beobachtungsdaten
verbunden.
-
In der optimierten Boundary-Scan-Zellenanordnung
aus 17 ist zu sehen, daß lediglich
das IC-Freigabeausgangssignal oder die Daten, die an der E/A-Anschlußfläche erscheinen,
unter Verwendung der Erfindung in Echtzeit beobachtbar sind. Da die
Daten, die an der E/A-Anschlußfläche erscheinen,
sowohl Eingangsdaten in die IC als auch Ausgangsdaten von der IC
sind, ergibt sich aber aus der in 17 gezeigten
Schaltungsoptimierung im Vergleich zu der in 16 gezeigten
nicht optimierten Schaltung kein Verlust an Datenbeobachtung.
-
Obgleich oben beispielhafte Ausführungsformen
der vorliegenden Erfindung beschrieben worden sind, beschränkt diese
Beschreibung nicht den Umfang der Erfindung, die in einer Vielzahl
von Ausführungsformen
verwirklicht werden kann.