DE19947603A1 - Vorrichtung und Verfahren zum Testen eines Mikroprozessors mit einem platinen-eigenen Testvektorgenerator - Google Patents
Vorrichtung und Verfahren zum Testen eines Mikroprozessors mit einem platinen-eigenen TestvektorgeneratorInfo
- Publication number
- DE19947603A1 DE19947603A1 DE19947603A DE19947603A DE19947603A1 DE 19947603 A1 DE19947603 A1 DE 19947603A1 DE 19947603 A DE19947603 A DE 19947603A DE 19947603 A DE19947603 A DE 19947603A DE 19947603 A1 DE19947603 A1 DE 19947603A1
- Authority
- DE
- Germany
- Prior art keywords
- microprocessor
- test
- testing
- memory
- data
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
- Microcomputers (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
Eine Vorrichtung zum Testen eines Mikroprozessors, der eine Kernausführungseinheit, einen internen Speicher und ein Datentor besitzt, kann ein Testgerät mit einem Datentor, das mit dem Mikroprozessordatentor verbunden ist, aufweisen. Ein Testvektorgeneratorprogramm wird von dem Testgerät zu dem internen Speicher des Mikroprozessors übertragen, um den Mikroprozessor zu testen, wenn das Testvektorgeneratorprogramm durch die Kernausführungseinheit ausgeführt wird. Das Testvektorgeneratorprogramm erzeugt Testvektoren, die ebenfalls in dem internen Speicher gespeichert werden, und die dann durch die Kernausführungseinheit ausgeführt werden können.
Description
Die vorliegende Erfindung bezieht sich allgemein auf das
Gebiet des Testens von Mikroprozessoren und spezieller auf
eine Vorrichtung und ein Verfahren zum Testen eines Mikro
prozessors durch einen Testvektorgenerator, der in einem
chipeigenen (on-chip) Speicher gespeichert ist.
Das Testen von Mikroprozessoren ist ein kritischer, jedoch
aufwendiger Schritt des Herstellungsverfahrens. Mikroprozes
soren werden aus Siliziumwafern gebildet, die sehr dünne,
runde Scheiben aus einem Zylinder aus Silizium sind. Ein mi
kroskopischer Schaltungsaufbau für mehrere Mikroprozessoren
wird dann auf dem Siliziumwafer gebildet. Die Herstellung
muß in einem Reinraum stattfinden, d. h. einer Kammer, in der
Staub und andere Unreinheiten auf extrem geringe Pegel redu
ziert sind. Alle ungewollten Unreinheiten in dem Siliziumwa
fer oder in dem Schaltungsaufbau eines Mikroprozessors kön
nen bewirken, daß derselbe oder Teile desselben ausfallen.
Da ein Mikroprozessor nur mehrere Millimeter oder Zentimeter
breit sein kann und Millionen von Transistoren aufweisen
kann, kann es sehr schwierig sein, denselben gründlich zu
testen. Überdies sind Mikroprozessoren sehr zerbrechlich und
können während des Herstellungsverfahrens ohne weiteres be
schädigt werden. Beispielsweise kann ein typischer stati
scher Ladungsaufbau, während eine Person umhergeht, norma
lerweise etwa 10.000 Volt betragen, wobei eine statische
Entladung auf einem Mikroprozessor mit nur etwa 5.000 Volt
denselben zerstören kann.
Nachdem der Mikroprozessorschaltungsaufbau zu dem Silizium
wafer hinzugefügt wurde, wird der Wafer in Abschnitte, oder
Chips, geschnitten, von denen jeder einen Mikroprozessor
enthält. Jeder Chip wird dann in einem Gehäuse plaziert, das
aus einem Material, wie z. B. Kunststoff oder Keramik, be
steht. Das Gehäuse besitzt ferner elektrische Kontakte, die
eine Verbindung des Mikroprozessors in dem Gehäuse mit einer
Schaltungsplatine oder einem anderen elektrischen System er
möglichen. Da die Herstellung von Mikroprozessoren ein der
art aufwendiges Verfahren ist, werden dieselben typischer
weise in verschiedenen Phasen getestet, beispielsweise vor
und nach dem Häusen derselben, um eine frühestmögliche Zu
rückweisung defekter Teile zu ermöglichen. Nach dem Test,
der nach dem Häusen durchgeführt wird, werden die Mikropro
zessoren bei extremen Umgebungsbedingungen betrieben, oder
"eingebrannt", und wiederum getestet, um diejenigen mit la
tenten Defekten, die nur auftreten, nachdem der Mikroprozes
sor betrieben wurde, zu beseitigen.
Mikroprozessoren werden im allgemeinen auf einem Parallel-
Anschlußstift-Testgerät getestet, einer extrem aufwendigen
Maschine mit Hunderten von elektrischen Kontakten und einer
sehr großen Menge eines schnellen Speichers. Mikroprozessor
befehle, die als Testvektoren bezeichnet werden, sind in dem
Speicher des Parallel-Anschlußstift-Testgeräts gespeichert.
Testfälle, die aus Sätzen von Testvektoren bestehen, werden
in einem zeitaufwendigen und mühseligen Verfahren typischer
weise von Schaltungsdesignern geschrieben, weshalb dieselben
von stark unterschiedlicher Qualität sind, abhängig von den
Bemühungen und den Fähigkeiten der Personen, die dieselben
geschrieben haben. Es ist eine äußerst schwierige Aufgabe,
Testvektoren zu erzeugen, die eine hochkomplexe Schaltung,
wie beispielsweise einen Mikroprozessor, gründlich testen.
Ein Mikroprozessor, entweder gehäust oder ungehäust, wird
mit dem Parallel-Anschlußstift-Testgerät verbunden, wobei
die Testfälle in dem Mikroprozessor ausgeführt werden, um
Ausfälle zu erfassen.
Parallel-Anschlußstift-Testgeräte besitzen mehrere Nachtei
le. Die Speichermenge in einem Parallel-Anschlußstift-Test
gerät begrenzt die Anzahl und die Größe von Testfällen, die
bezüglich eines Mikroprozessors durchgeführt werden können.
Überdies begrenzen die Geschwindigkeit des Parallel-An
schlußstift-Testgeräts und seines Speichers die Geschwin
digkeit, mit der der Mikroprozessor während des Tests arbei
ten kann. Allgemein muß die Taktgeschwindigkeit des Mikro
prozessors während des Testens auf einem Parallel-Anschluß
stift-Testgerät langsamer sein als die normale Betriebsge
schwindigkeit, was die Effizienz des Tests begrenzt.
Eine weitere Hauptherausforderung beim effektiven Testen von
Mikroprozessoren durch ein Parallel-Anschlußstift-Testgerät
ist die Schwierigkeit, eine oder mehrere Kernausführungsein
heiten in einem Mikroprozessor besetzt und beschäftigt zu
halten. Mikroprozessoren können mehrere Kernausführungsein
heiten besitzen, die getestet werden müssen, wobei jedoch
die externe Bandbreite sogar bei einem großen Parallel-An
schlußstift-Testgerät begrenzt ist. Folglich können Kernaus
führungseinheiten entweder untätig sein oder während eines
bestimmten Parallel-Anschlußstift-Testens nur minimal be
schäftigt sein.
Die Kosten von Parallel-Anschlußstift-Testgeräten begrenzen
die Anzahl, deren Kauf sich ein Hersteller leisten kann,
weshalb die Anzahl von Mikroprozessoren, die gleichzeitig
getestet werden können, begrenzt ist. Dieser Nachteil ist
durch den Bedarf danach, den gleichen Mikroprozessor während
verschiedener Phasen der Herstellung mehrmals zu testen,
weiter verstärkt.
Es besteht daher ein Bedarf nach einer Vorrichtung und einem
Verfahren zum Testen von Mikroprozessoren, die weniger auf
wendig sind, was das gleichzeitige Testen einer größeren An
zahl von Mikroprozessoren ermöglicht. Ein zusätzlicher Be
darf besteht nach einer Vorrichtung und einem Verfahren zum
Testen von Mikroprozessoren, die bei der normalen Betriebs
geschwindigkeit desselben in dem Mikroprozessor ausgeführt
werden können. Ein weiterer Bedarf besteht nach einer Vor
richtung und einem Verfahren zum Testen von Mikroprozesso
ren, die Kernausführungseinheiten eines Mikroprozessors
vollständiger besetzen und beschäftigen.
Die Aufgabe der vorliegenden Erfindung besteht darin, Vor
richtungen und Verfahren zum Testen von Mikroprozessoren
oder Mehr-Chip-Modulen zu schaffen, die ein effizientes, ko
stengünstiges und umfassendes Testen derselben ermöglichen.
Diese Aufgabe wird durch Vorrichtungen gemäß den Ansprüchen
1 und 6 sowie ein Verfahren gemäß Anspruch 7 gelöst.
Um die oben genannten Bedürfnisse zu erfüllen, haben die Er
finder Vorrichtungen und Verfahren entwickelt, um einen Mi
kroprozessor mit einem Testvektorgenerator zu testen, der in
dem mikroprozessorinternen Speicher gespeichert ist.
Eine Vorrichtung zum Testen eines Mikroprozessors, die die
Merkmale der vorliegenden Erfindung aufweist, besitzt einen
Mikroprozessor mit einer oder mehreren Kernausführungsein
heiten, einem internen Speicher und einem Datentor, sowie
ein relativ kostengünstiges Testgerät mit einem Datentor,
das mit dem Datentor des Mikroprozessors verbunden ist. Das
Testgerät besitzt eine kostengünstige Schnittstelle, bei
spielsweise ein serielles Tor. Das Testgerät kann einen
Speicher aufweisen, der relativ kleiner und langsamer, und
daher weniger aufwendig, als der Speicher, der bei einem Pa
rallel-Anschlußstift-Testgerät erforderlich ist, ist.
Ein Testvektorgeneratorprogramm wird von dem Testgerät zu
dem internen Speicher des Mikroprozessors übertragen, um den
Mikroprozessor zu testen, wenn dasselbe durch die Kernaus
führungseinheit ausgeführt wird. Das Testvektorgeneratorpro
gramm erzeugt Testvektoren, die ebenfalls in dem internen
Speicher gespeichert sind und die dann durch die Kernaus
führungseinheit ausgeführt werden können.
Das Mikroprozessordatentor ist allgemein eine kostengünstige
Schnittstelle, beispielsweise ein serielles Tor. Bei einem
bevorzugten Ausführungsbeispiel kann die serielle Schnitt
stelle eine JTAG-Testschnittstelle aufweisen. Das Testvek
torgeneratorprogramm und die erzeugten Testvektoren können
mit der vollen Taktgeschwindigkeit des Mikroprozessors durch
die Kernausführungseinheit ausgeführt werden.
Die vorliegende Erfindung kann ferner ein Verfahren zum Te
sten eines Mikroprozessors mit einer Kernausführungseinheit,
einem internen Speicher und einem Datentor umfassen, das das
Vorsehen eines Testgeräts mit einem Datentor und einem Spei
cher und das Vorsehen eines Testvektorgeneratorprogramms in
dem Speicher des Testgeräts umfaßt. Das Verfahren umfaßt
ferner das Verbinden des Mikroprozessordatentors mit dem
Testgerätdatentor, das Übertragen des Testvektorgenerator
programms von dem Testgerät durch das Testgerätdatentor zu
dem internen Speicher durch das Mikroprozessordatentor, und
das Ausführen des Testvektorgeneratorprogramms in der Kern
ausführungseinheit, um Testvektoren zu erzeugen.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung
werden nachfolgend bezugnehmend auf die beiliegenden Zeich
nungen näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm eines Systems zum Testen eines
Mikroprozessors;
Fig. 2 eine Draufsicht eines Siliziumwafers mit mehreren
Mikroprozessorchips;
Fig. 3 eine Draufsicht eines einzelnen Mikroprozessorchips
von Fig. 2;
Fig. 4 eine perspektivische Ansicht eines gehäusten Mikro
prozessors mit Oberflächenbefestigungskontakten;
Fig. 5 ein Flußdiagramm, das ein Verfahren zum Testen ei
nes Mikroprozessors zeigt;
Fig. 6 ein Blockdiagramm eines Systems zum Testen eines
Mikroprozessors, das einen externen Speicher ent
hält; und
Fig. 7 ein Blockdiagramm eines Systems zum Testen eines
Mehr-Chip-Moduls.
Fig. 1 zeigt ein bevorzugtes Ausführungsbeispiel eines Sy
stems zum Testen eines Mikroprozessors 2. Ein Testgerät 16
kann mit einem Mikroprozessor 2 verbunden sein, um Testvek
toren oder Testbefehle auf dem Mikroprozessor 2 durchzu
führen. Jedoch hält, anders als bei bekannten Parallel-An
schlußstift-Testgeräten, die alle die Testvektoren in
schnellen großen Speicherschaltungen halten, das Testgerät
16 des bevorzugten Ausführungsbeispiels ein Testvektorgene
ratorprogramm, das zu dem Mikroprozessor 2 übertragen wird,
um Testvektoren innerhalb des Mikroprozessors 2 zu erzeugen.
Folglich kann, statt des Verbindens eines Parallel-Anschluß
stift-Testgeräts mit einem Mikroprozessor 2 durch eine große
Anzahl von Verbindungen und des Ausführens von Testvektoren
mit einer Frequenz oder Geschwindigkeit, die geringer ist
als die volle Entwurfsfrequenz des Mikroprozessors 2, der
Mikroprozessor 2 seine eigenen Testvektoren erzeugen und
dieselben bei der vollen Geschwindigkeit ausführen. Dies
senkt die Kosten der Testausrüstung, erhöht die Anzahl von
Testvektoren, die ausgeführt werden können, und erhöht den
Wirkungsgrad des Tests, da eine größere Anzahl von Testvek
toren ausgeführt werden kann (ferner bei der vollen Ge
schwindigkeit).
Überdies bietet das interne Erzeugen der Testvektoren und
das Durchführen derselben bei der vollen Geschwindigkeit ei
ne verbesserte Testabdeckung von Mikroprozessoren mit einem
aufwendigen Parallelismus. Solche Mikroprozessoren, die meh
rere Aufgaben parallel durchführen können, können durch ex
terne Schnittstellen schwierig vollständig beschäftigt wer
den. Jedoch ist mit Testvektoren, die intern in dem Mikro
prozessor geliefert werden, die externe Bandbreite keine Be
grenzung.
Der Mikroprozessor 2 kann durch das Testgerät 16 zu jeder
gewünschten Zeit während der verschiedenen Herstellungs
phasen getestet werden, beispielsweise zu einem Zeitpunkt,
zu dem die mehreren Mikroprozessoren 2, oder Chips, noch auf
einem ungeschnittenen Siliziumwafer angeordnet sind. Der Mi
kroprozessorchip 2 kann auch getestet werden, nachdem der
selbe geschnitten wurde, nachdem derselbe gehäust wurde,
oder nach einer "Einbrenn"-Phase, während der derselbe bei
extremen Umweltbedingungen betrieben wird (d. h., um zu er
möglichen, daß latente Defekte auftreten).
Das Testvektorgeneratorprogramm kann jegliches Programm um
fassen, das Instruktionen, die der Mikroprozessor 2 ausfüh
ren soll, erzeugt. Bei einem bevorzugten Ausführungsbeispiel
ist der Testvektorgenerator ein Zufallscodegenerator (RCG;
RCG = random code generator), wie z. B. diejenigen, die in
den folgenden Patenten beschrieben sind, die hiermit bezüg
lich ihrer Gesamtheit durch Bezugnahme aufgenommen
sind: U.S.-Patent 5,729,554, U.S.-Patent 5,784,550 und U.S.-Patent
5,771,241. Ein RCG erzeugt pseudozufällige Testvektoren, ba
sierend auf einer Zufallszahl, oder einem "Samen", die als
ein Eingangssignal dem RCG zugeführt wird. Jeder Samenwert
bewirkt, daß der RCG die gleichen Testvektoren erzeugt, um
zu ermöglichen, daß ein Test reproduzierbar ist.
Nachdem der RCG einen Satz von Testvektoren erzeugt hat, die
auch als ein Fall bezeichnet werden, wird der Fall in einem
leeren Bereich des inneren Speichers gespeichert. Ein exem
plarischer Testfall einer moderaten Länge zu Fehlerbehe
bungszwecken könnte in dem Bereich von etwa 20 bis 30 Befeh
len liegen, da es während einer Fehlerbehebung erwünscht
ist, zu bewirken, daß ein Fehler bei so wenig wie möglich
Befehlen auftritt, um die Ursachen der Fehler zu isolieren
und die verstrichene Zeit zu reduzieren. Jedoch liegt bei
dem bevorzugten Ausführungsbeispiel der Zweck der Testfälle
eher darin, zu bestimmen, ob der Mikroprozessor defekt ist,
als zu bestimmen, wo Fehler lokalisiert wurden. Daher sind
die Testfälle bei dem bevorzugten Ausführungsbeispiel län
ger, wobei die Länge der Testfälle nur durch die verfügbare
interne Speichermenge und durch die Testanforderungen be
grenzt ist. Die Anzahl von Testfällen, die erzeugt und
durchgeführt werden kann, ist im wesentlichen unbegrenzt, da
jeder neue Testfall an dem gleichen Speicherort gespeichert
werden kann, nachdem der vorherige Testfall abgeschlossen
ist.
Sobald der Testfall in dem internen Speicher gespeichert
ist, bewirkt der RCG, daß der Mikroprozessor 2 die Testvek
toren in dem Fall ausführt. Die Testvektoren können zu ver
schiedenen Erzeugungsstufen ausgeführt werden. Beispielswei
se könnten die Testvektoren nacheinander ausgeführt werden,
während dieselben erzeugt werden, oder nicht ausgeführt wer
den, bis mehrere Fälle erzeugt wurden. Bei einem bevorzugten
Ausführungsbeispiel wird jeder Fall "schnell" ("at speed")
ausgeführt, nachdem derselbe vollständig erzeugt und gespei
chert wurde.
Um den RCG zu dem Mikroprozessor 2 zu übertragen und die
Ausführung einzuleiten, können mikroprozessorabhängige Stan
dardverfahren verwendet werden. Wenn das Datentor 10 bei
spielsweise eine JTAG-Schnittstelle aufweist, umfaßt das
JTAG-Protokoll Verfahren zum Initialisieren des Mikroprozes
sors, zum Laden von Daten in den Cache und zum Plazieren des
Mikroprozessors in einem gewünschten Zustand. Die JTAG-
Schnittstelle ist in dem U.S.-Patent Nr. 5,610,927 beschrie
ben, das hiermit in seiner Gesamtheit durch Bezugnahme auf
genommen ist. Wenn der Mikroprozessor andererseits eine
DAT-Hardware (DAT = Direct Access Test = Direktzugriffstest)
aufweist, umfaßt das DAT-Protokoll Verfahren zum Initiali
sieren des Mikroprozessors, zum Laden von Daten in den Cache
und zum Plazieren des Mikroprozessors in einem gewünschten
Zustand. Die DAT-Schnittstelle ist in dem U.S.-Patent Nr.
5,799,021, das hiermit in seiner Gesamtheit durch Bezugnahme
aufgenommen ist, beschrieben.
Ferner umfaßt bei einem bevorzugten Ausführungsbeispiel der
RCG eine Befehlsschnittstelle. Durch diese Schnittstelle wird
der RCG fokussiert, um Testvektoren mit dem Ziel des Testens
spezifischer Bereiche des Mikroprozessors 2 zu erzeugen,
oder wird fokussiert, um andere Tests durchzuführen, wie
z. B. ein Hin-und-Her-Schalt-Testen, das auch als ein "Hän
genbleiben"-Testen bezeichnet wird. Das Hin-und-Her-Schalt-
Testen umfaßt den Versuch, zu bewirken, daß jeder elektri
sche Knoten in dem Mikroprozessor seinen Zustand ändert, um
Kurzschlüsse zu finden. Anders ausgedrückt, werden mehrere
Schalter ein- oder ausgeschaltet, um sicherzustellen, daß
dieselben entwurfsgemäß arbeiten.
Sobald der Mikroprozessor einen Testfall ausgeführt hat, ve
rifiziert der RCG die Ergebnisse durch das Vergleichen des
Zustands des Mikroprozessors mit einem erwarteten Zustand.
Wenn der Testfall beispielsweise ein Register auf einen ge
gebenen Wert einstellen sollte, wird der Inhalt des Regi
sters mit dem erwarteten Inhalt verglichen. Der RCG berich
tet die Ergebnisse zu dem Testgerät 16, entweder nachdem al
le Testfälle durchgeführt wurden, oder sobald ein Fehler
existiert.
Nachdem nun allgemein ein System zum Testen eines Mikropro
zessors beschrieben wurde, ebenso wie bestimmte signifikan
tere Merkmale und Vorteile desselben, werden nun bestimmte,
verschiedene Ausführungsbeispiele eines solchen Systems de
taillierter beschrieben.
Wie in Fig. 1 gezeigt ist, weist ein Mikroprozessor 2 eine
Kernausführungseinheit 4 auf, wobei ein interner Speicher 6
mit einem Testgerät 16 verbunden ist. Der Mikroprozessor 2
kann jeglichen elektronischen Prozessor umfassen, beispiels
weise einen integrierten Prozessor, der auf einem Silizium
substrat hergestellt ist, mit einer Kernausführungseinheit 4
zum Ausführen von Befehlen oder zum Verarbeiten von Daten,
und einem internen Speicher 6. Der interne Speicher 6 kann
einen Cache-Speicher oder jeglichen anderen mikroprozessor
internen Speicher aufweisen, wobei derselbe ferner einen
oder eine Mehrzahl von unterschiedlichen Speichern aufweisen
kann.
Das Testgerät 16 besitzt eine kostengünstige Schnittstelle,
um Informationen mit dem Mikroprozessor, der getestet wird,
auszutauschen. Bei einem bevorzugten Ausführungsbeispiel be
sitzt die Schnittstelle ein serielles Tor 14 mit einer ge
ringen Anschlußstiftzahl, das über einen seriellen Bus 12
mit einem seriellen Tor 10 auf dem Mikroprozessor 2 verbun
den ist. Bei einem bevorzugten Ausführungsbeispiel umfassen
das serielle Testgerättor 14 und das serielle Mikroprozes
sortor 10 Abtast-Latches. Das serielle Mikroprozessortor 10
kann jeden anderen Typ einer seriellen Schnittstelle aufwei
sen, beispielsweise eine JTAG-Schnittstelle.
Das Testgerät 16 besitzt ferner einen kostengünstigen Spei
cher, der relativ klein sein kann, in dem ein Testvektorge
nerator, beispielsweise ein Zufallscodegenerator (RCG) ge
speichert ist. Nachdem ein Mikroprozessor 2 über eine se
rielle Verbindung 12 mit dem Testgerät 16 verbunden wurde,
wird der RCG von dem Testgerät 16 zu dem internen Speicher 6
des Mikroprozessors 2 übertragen.
Der RCG kann mit Samenwerten oder anderen Fokussierungsin
struktionen beladen werden, bevor derselbe zur Verwendung in
dem Testgerät 16 gespeichert wird. Alternativ können dem RCG
Samenwerte zugeführt werden, während sich derselbe in dem
Testgerät 16 befindet, oder nachdem derselbe zu dem Mikro
prozessor 2 übertragen wurde.
Die Kernausführungseinheit 4 des Mikroprozessors 2 führt
dann den RCG aus. Das Testgerät 16 kann ferner einen Zeitge
ber aufweisen, der gestartet wird, wenn der RCG ausgeführt
wird. Wenn der RCG innerhalb einer vorbestimmten Zeitdauer
keinen Testabschluß berichtet, beispielsweise, wenn der Mi
kroprozessor 2, der getestet wird, vollständig defekt ist
und den RCG nicht ausführen kann, wird der Zeitgeber in dem
Testgerät 16 den vorbestimmten Wert erreichen, wobei das
Testgerät 16 anzeigen kann, daß der Mikroprozessor 2 defekt
ist.
Bei einem weiteren Ausführungsbeispiel wird ein kurzer und
rudimentärer Testfall vor längeren Testfällen ausgeführt, um
Zeit bezüglich des Wartens auf einen Testabschluß oder eine
Zeitablaufbedingung bei defekten Mikroprozessoren 2 zu spa
ren. Dieses Ausführungsbeispiel informiert das Testgerät 16
schnell, wenn der Mikroprozessor 2 nicht in der Lage ist,
den RCG auszuführen, da der Zeitablaufwert des vorläufigen
rudimentären Testfalls relativ kurz ist.
Alternativ sendet bei einem anderen Ausführungsbeispiel der
RCG während der Ausführung des RCG und der Testfälle häufig
Statusberichte zu dem Testgerät 16, wobei die Zeitabläufe
des Testgeräts 16 auf einen Wert verkürzt sind, der gerade
größer ist, als die erwartete Zeitperiode zum Empfangen von
Statusberichten. Bei diesem Ausführungsbeispiel kann das
Testgerät den Test abbrechen und anzeigen, daß der Mikropro
zessor 2 defekt ist, sobald dasselbe eine Statusmitteilung
empfängt, die einen Fehler anzeigt, bevor die Testfälle alle
ausgeführt worden sind.
Wenn der RCG ausgeführt wird, erzeugt derselbe einen Test
fall, der einen Satz von Testvektoren aufweist, die dann in
dem internen Speicher 6 gespeichert werden. Nachfolgend wird
bewirkt, daß die Kernausführungseinheit 4 den Testfall durch
den RCG ausführt. Bei einem Ausführungsbeispiel kann der RCG
auch einen Zeitgeber auf einen vorbestimmten Wert einstel
len. Wenn die Kernausführungseinheit 4 den Testfall nicht
innerhalb der vorbestimmten Zeit abschließt und die Steue
rung zu der RCG zurückgibt, wird der Zeitgeber den vorbe
stimmten Wert erreichen und die Steuerung zu dem RCG zurück
geben. Der RCG kann dann über die serielle Verbindung 12 ei
nen Fehler zu dem Testgerät 16 berichten.
Nachdem die Kernausführungseinheit 4 den Testfall abge
schlossen hat, wird der letzte Befehl des Testfalls die
Steuerung zu dem RCG-Programm zurückgeben, das dann die Er
gebnisse des Tests überprüfen wird. Der RCG bereitet erwar
tete Ergebnisse, die einen erwarteten Zustand des Mikropro
zessors 2 aufweisen, zusammen mit den Testvektoren vor, oder
wird mit denselben geladen. Der RCG kann Elemente betrach
ten, wie z. B. die Register des Mikroprozessors 2, den Ca
che-Zustand oder die Übersetzungs-Seitengriff-Puffer-Einträ
ge (ein Cache, der Seitenübersetzungen für einen virtuellen
Speicher hält). Wenn irgendein externer Speicher mit dem Mi
kroprozessor verbunden ist, kann der RCG ferner die Spei
cherorte überprüfen, die während der Ausführung des Test
falls hätten modifiziert werden sollen, wie nachfolgend be
zugnehmend auf Fig. 6 beschrieben wird.
Wenn das RCG-Programm nach dem Ausführen eines Testfalls
herausfindet, daß der Zustand des Mikroprozessors 2 nicht
dem erwarteten entspricht, kann der RCG einen Fehlercode
über die Signalverbindung 12 übertragen, der anzeigt, daß
ein Fehler aufgetreten ist. Der Fehlercode kann auch Infor
mationen bezüglich dessen enthalten, welcher Bereich des
Mikroprozessors 2 wahrscheinlich defekt ist, abhängig davon,
welcher Test einen Fehler zeigte. Der Inhalt und das Format
des Fehlercodes hängen von dem Entwurf des Mikroprozessors 2
ab. Die Fehlercodes, die durch den RCG zurückgegeben werden,
können an die Entwurfsanforderungen des spezifischen Mikro
prozessors 2 und sein Herstellungsverfahren angepaßt sein.
Beispielsweise können Fehlercodes entworfen sein, um die
Lokalisierung von Herstellungsverfahren, die einer Verbesse
rung bedürfen, zu unterstützen. Fehlercodes können am Ende
der Testprozedur, nachdem alle Testfälle ausgeführt wurden,
oder vorzugsweise auf den ersten Ausfall hin, übertragen
werden. Der RCG kann dann fortfahren, um weitere Testfälle
auszuführen, oder kann einfach stoppen, nachdem der erste
Ausfall dem Testgerät 16 angezeigt wurde.
Wenn alle Testfälle erfolgreich erzeugt und ausgeführt wur
den, überträgt der RCG eine Meldung über die serielle Ver
bindung 12 zu dem Testgerät 16, die anzeigt, daß der Mikro
prozessor 2 den Test bestanden hat.
Das bevorzugte Ausführungsbeispiel besitzt mehrere, wichtige
Vorteile. Das Testgerät 16 erfordert nicht den umfangrei
chen, aufwendigen und schnellen Speicher, der für Parallel-
Anschlußstift-Testgeräte erforderlich ist. Die Ausführung
des RCG von dem internen Speicher 6 ist wirksam, um den
Mikroprozessor 2 zusätzlich zu den Testvektoren zu testen.
Der Mikroprozessor 2 wird überdies vollständiger getestet,
indem der RCG und die Testvektoren mit voller Geschwindig
keit ausgeführt werden, und nicht mit einer reduzierten Ge
schwindigkeit, die durch ein Parallel-Anschlußstift-Testge
rät begrenzt ist. Die parallelen Pipelines eines komplexen
Mikroprozessors werden vollständiger getestet, da die exter
ne Bandbreite während der Ausführung der Testfälle kein be
grenzender Faktor ist. Daher ist der Aufwand des Versuchens,
Parallel-Anschlußstift-Testgeräte mit Speicher und Schnitt
stellen zu versehen, die schnell und breit genug sind, um
mit hochentwickelten Mikroprozessoren standzuhalten, vermie
den.
Wie oben kurz angesprochen wurde, kann der Mikroprozessor 2
während verschiedener Herstellungsphasen getestet werden.
Wie in Fig. 2 gezeigt ist, werden Mikroprozessoren (bei
spielsweise 2) auf einem Siliziumwafer 20, einer dünnen
Scheibe aus Silizium, hergestellt. Mehrere Mikroprozessoren
(beispielsweise 2, 22 und 24) werden auf einem einzelnen
Siliziumwafer 20 hergestellt. Die Mikroprozessoren (bei
spielsweise 2, 22 und 24) oder Chips werden dann in ein
zelne Chips vereinzelt, wie in Fig. 3 gezeigt ist.
Fig. 3 zeigt einen Mikroprozessor 2 oder Chip, der aus dem
Siliziumwafer 20 vereinzelt wurde, jedoch noch nicht in ei
nem Gehäuse plaziert wurde. Zusammen mit den Elementen des
Mikroprozessors 2, beispielsweise der Kernausführungseinheit
4 und dem internen Speicher 6, sind viele winzige Verbinder
oder Anschlußflächen (beispielsweise 30, 32 und 34) auf dem
Mikroprozessor 2 vorgesehen.
Der nächste Hauptschritt der Herstellung ist das Plazieren
des Mikroprozessors 2 in einem Gehäuse 40, wie in Fig. 4 ge
zeigt ist. Die sehr kleinen Anschlußflächen (beispielsweise
30, 32 und 34) werden mit externen Verbindern (beispielswei
se 42, 44 und 46) drahtgebondet, oder verbunden. Der Mikro
prozessor 2 kann dann eingebrannt oder für eine kurze Zeit
periode betrieben werden, um latente Defekte zu identifizie
ren, d. h. Defekte, die nicht auftreten, solange der Mikro
prozessor 2 nicht betrieben wurde. Beispielsweise ist es
möglich, daß partielle Kurzschlüsse keine negative Auswir
kung auf den Betrieb eines Mikroprozessors 2 haben. Jedoch
kann der normale Betrieb des Mikroprozessors 2 bewirken, daß
sich der partielle Kurzschluß erwärmt und zu einem vollstän
digen Kurzschluß wird.
Das Testgerät 16 kann in jeder der oben beschriebenen Her
stellungsphasen mit dem Mikroprozessor 2 verbunden werden,
beispielsweise auf dem Wafer, nach dem Vereinzeln der
Chips 7, nach dem Häusen derselben, oder nach dem Einbrennen
derselben, abhängig von den Anforderungen an den Hersteller.
Beispielsweise kann es vorteilhaft sein, mehrere Tests eines
Mikroprozessors 2 in den verschiedenen, oben beschriebenen
Phasen durchzuführen, um defekte Teile so früh wie möglich
zurückzuweisen, wodurch die Kosten der abschließenden Arbeit
auf diesen defekten Teilen eingespart werden. Bei anderen
Herstellungsumgebungen kann es kostengünstiger sein, alle
Teile fertigzustellen und Tests nur nach dem Abschluß durch
zuführen.
Es ist ferner erwünscht, das vorliegende Testsystem vor der
Herstellung zu simulieren. Während des Entwurfs eines Mikro
prozessors 2 und vor der Herstellung wird der Mikroprozes
sor 2 bei einer sehr geringen Frequenz (beispielsweise 1 Hz)
auf einem Computer simuliert. Während dieser Simulation kann
der RCG auf der simulierten Kernausführungseinheit 4 ausge
führt werden. Bei dieser simulierten Umgebung kann der Zu
stand des Mikroprozessors 2 mit den erwarteten Ergebnissen
nach jedem Befehl verglichen werden, und nicht nach dem Ab
schluß des Testfalls.
Fig. 5 ist ein Flußdiagramm, das ein Verfahren zum Testen
eines Mikroprozessors gemäß dem bevorzugten Ausführungsbei
spiel zeigt. Zuerst wird ein Testgerät über einen seriellen
Bus mit einem Mikroprozessor verbunden 50. Das Testgerät
überträgt 52 dann ein RCG-Programm über den seriellen Bus zu
dem internen Speicher eines Mikroprozessors. Die Kernausfüh
rungseinheit des Mikroprozessors führt den RCG aus 54, was
Testvektoren erzeugt, die in dem internen Speicher des Mi
kroprozessors gespeichert werden. Nachdem die Testvektoren
erzeugt sind, führt die Kernausführungseinheit dieselben aus
56. Der letzte Befehl der Testvektoren bewirkt dann, daß der
Ausführungszeiger in der Kernausführungseinheit in das RCG-
Programm zurückspringt. Die Kernausführungseinheit fährt
fort, das RCG-Programm auszuführen, das die Ergebnisse des
vorhergehenden Tests auswertet 60, indem es den Zustand des
Mikroprozessors mit einem erwarteten Zustand vergleicht. Der
RCG, der durch die Kernausführungseinheit durchgeführt wird,
berichtet 62 dann die Ergebnisse des Tests zu dem Testgerät.
Wie oben beschrieben wurde, kann der Mikroprozessor während
jeder Herstellungsphase getestet werden.
Ferner kann, bezugnehmend nun auf Fig. 6, ein externer Spei
cher 76 mit einem gehäusten Mikroprozessor 40 verbunden
sein, wenn es erwünscht ist, um die Fähigkeit des Mikropro
zessors 40, auf einen externen Speicher zuzugreifen, zu te
sten. Diese Option muß nicht notwendig sein, wenn dieselbe
während anderer Herstellungsschritte erreicht werden kann,
beispielsweise der Einbrennphase. Wenn ein externer Speicher
76 getestet wird, wird ein Testgerät 16 über eine serielle
Verbindung 12 wie oben beschrieben unter Verwendung eines
seriellen Mikroprozessortors 10 und eines seriellen Testge
rättors 14 mit dem Mikroprozessor 40 verbunden. Das Testge
rät überträgt einen RCG zu dem internen Speicher 6 des Mi
kroprozessors 40, der dann den RCG in seiner Kernausfüh
rungseinheit 4 ausführt. Der externe Speicher 76 ist durch
einen Bus 72, der nach Bedarf einen parallelen Adreß- und
Datenbus aufweisen kann, mit dem Mikroprozessor 40 verbun
den. Der Bus 72 verbindet ein paralleles Tor 70 auf dem Mi
kroprozessor 40 mit einem parallelen Tor auf dem externen
Speicher 76.
Während der Auswertung der Ergebnisse eines Testfalls ver
gleicht bei diesem Ausführungsbeispiel der RCG den Zustand
des Mikroprozessors 40, einschließlich des Zustands des ex
ternen Speichers 76, mit erwarteten Werten. Statt des Ver
gleichens jedes Speicherorts in dem externen Speicher 76 mit
erwarteten Ergebnissen, kann der RCG nur Speicherorte unter
suchen, auf die die Kernausführungseinheit während der Aus
führung der Testvektoren zugegriffen haben sollte.
Bei einem weiteren Ausführungsbeispiel, das in Fig. 7 ge
zeigt ist, umfaßt das Element, das getestet wird, ein Mehr-
Chip-Modul (MCM) 80. Ein Mehr-Chip-Modul 80 ist eine Schal
tung oder ein Modul, das aus mehreren diskreten, aktiven,
elektronischen Komponenten besteht, die mit einer externen
Schnittstelle verbunden und versehen sind. Die diskreten
Komponenten können durch Löten, Schweißen, eine chemische
Abscheidung, eine Metallisierung, Thermokompressionsbonden
oder andere Verfahren zum elektrischen Verbinden der Kompo
nenten miteinander verbunden sein. Bei diesem Ausführungs
beispiel erscheint das MCM 80 dem kostengünstigen Testgerät
als eine integrierte Schaltung mit einer kostengünstigen
Schnittstelle, wie z. B. einem seriellen Tor.
Das MCM 80 besitzt eine oder mehrere Kernausführungsein
heiten 82, jede auf ihrem eigenen Chip und elektrisch mit
den anderen Chips oder Substraten in dem Modul verbunden.
Jede Kernausführungseinheit 82 kann einen internen Cache
besitzen oder nicht. Das MCM 80 weist ferner einen oder meh
rere Speicher 84, jeden auf seinem eigenen Chip und mit den
anderen Chips in dem Modul elektrisch verbunden, auf. Eine
serielle Schnittstelle 86 oder eine andere kostengünstige
Schnittstelle ermöglicht, daß ein kostengünstiges Testgerät
92 über eine Verbindung 90 mit einer geringen Anschlußstift
zahl mit dem MCM 80 verbunden wird.
Das kostengünstige Testgerät 92, das einen relativ langsa
men, wenig aufwendigen Speicher aufweisen kann, lädt einen
RCG in den einen oder die mehreren Speicher 84 auf dem MCM
80, woraufhin die Kernausführungseinheit 82 denselben bei
voller Geschwindigkeit in dem Modul 80 ausführt. Daher wird
kein Parallel-Anschlußstift-Testgerät mit einem schnellen
aufwendigen Speicher benötigt, da während des Tests keine
Testvektoren über die externe Schnittstelle übertragen wer
den.
Claims (10)
1. Eine Vorrichtung zum Testen eines Mikroprozessors (2),
wobei der Mikroprozessor (2) eine Kernausführungsein
heit (4), einen internen Speicher (6) und ein Datentor
(10) aufweist, mit folgenden Merkmalen:
einem Testgerät (16), das ein Datentor (14) aufweist, wobei das Testgerätdatentor (14) mit dem Mikroprozes sordatentor (10) verbunden ist; und
einem Testvektorgeneratorprogramm in dem internen Speicher (6) des Mikroprozessors (2) zum Testen des Mikroprozessors (2), wenn dasselbe durch die Kernaus führungseinheit (4) ausgeführt wird, wobei das Test vektorgeneratorprogramm durch das Testgerätdatentor (14) und das Mikroprozessordatentor (10) von dem Test gerät (16) zu dem internen Speicher (6) übertragen wird.
einem Testgerät (16), das ein Datentor (14) aufweist, wobei das Testgerätdatentor (14) mit dem Mikroprozes sordatentor (10) verbunden ist; und
einem Testvektorgeneratorprogramm in dem internen Speicher (6) des Mikroprozessors (2) zum Testen des Mikroprozessors (2), wenn dasselbe durch die Kernaus führungseinheit (4) ausgeführt wird, wobei das Test vektorgeneratorprogramm durch das Testgerätdatentor (14) und das Mikroprozessordatentor (10) von dem Test gerät (16) zu dem internen Speicher (6) übertragen wird.
2. Vorrichtung gemäß Anspruch 1, bei der das Mikroprozes
sordatentor (10) ein serielles Tor aufweist, und bei
dem das Testgerätdatentor (14) ein serielles Tor auf
weist.
3. Vorrichtung gemäß Anspruch 2, bei der die seriellen
Tore eine JTAG-Schnittstelle aufweisen.
4. Vorrichtung gemäß einem der Ansprüche 1 bis 3, die
ferner Testvektoren in dem internen Speicher (6) auf
weist.
5. Vorrichtung gemäß Anspruch 4, bei der die Kernausfüh
rungeinheit (4) die Testvektoren mit einer normalen
Betriebstaktgeschwindigkeit des Mikroprozessors (2)
ausführt.
6. Eine Vorrichtung zum Testen eines Mehr-Chip-Moduls
(80), wobei das Mehr-Chip-Modul (80) eine oder mehrere
Kernausführungseinheiten (82), einen Speicher (84) und
ein Datentor (86) aufweist, mit folgenden Merkmalen:
einem Testgerät (92), das ein Datentor aufweist, wobei das Testgerätdatentor mit dem Mehr-Chip-Modul-Datentor (86) verbunden ist; und
einem Testvektorgeneratorprogramm in dem Speicher (84) des Mehr-Chip-Moduls (80) zum Testen des Mehr-Chip- Moduls (80), wenn dasselbe durch die eine oder die mehreren Kernausführungseinheiten (82) ausgeführt wird, wobei das Testvektorgeneratorprogramm durch das Testgerätdatentor und das Mehr-Chip-Modul-Datentor (86) von dem Testgerät (92) zu dem Speicher (84) über tragen wird.
einem Testgerät (92), das ein Datentor aufweist, wobei das Testgerätdatentor mit dem Mehr-Chip-Modul-Datentor (86) verbunden ist; und
einem Testvektorgeneratorprogramm in dem Speicher (84) des Mehr-Chip-Moduls (80) zum Testen des Mehr-Chip- Moduls (80), wenn dasselbe durch die eine oder die mehreren Kernausführungseinheiten (82) ausgeführt wird, wobei das Testvektorgeneratorprogramm durch das Testgerätdatentor und das Mehr-Chip-Modul-Datentor (86) von dem Testgerät (92) zu dem Speicher (84) über tragen wird.
7. Verfahren zum Testen eines Mikroprozessors (2), wobei
der Mikroprozessor (2) eine Kernausführungseinheit
(4), einen internen Speicher (6) und ein Datentor (10)
aufweist, mit folgenden Schritten:
Vorsehen eines Testgeräts (16), das ein Datentor (14) und einen Speicher aufweist;
Vorsehen eines Testvektorgeneratorprogramms in dem Speicher des Testgeräts (16);
Verbinden (50) des Mikroprozessordatentors (10) mit dem Testgerätdatentor (14); Übertragen (52) des Testvektorgeneratorprogramms von dem Testgerät (16) durch das Testgerätdatentor (14) und das Mikroprozessordatentor (10) zu dem internen Speicher (6); und
Ausführen (54) des Testvektorgeneratorprogramms in der Kernausführungseinheit (4), um Testvektoren zu erzeu gen.
Vorsehen eines Testgeräts (16), das ein Datentor (14) und einen Speicher aufweist;
Vorsehen eines Testvektorgeneratorprogramms in dem Speicher des Testgeräts (16);
Verbinden (50) des Mikroprozessordatentors (10) mit dem Testgerätdatentor (14); Übertragen (52) des Testvektorgeneratorprogramms von dem Testgerät (16) durch das Testgerätdatentor (14) und das Mikroprozessordatentor (10) zu dem internen Speicher (6); und
Ausführen (54) des Testvektorgeneratorprogramms in der Kernausführungseinheit (4), um Testvektoren zu erzeu gen.
8. Verfahren gemäß Anspruch 7, das ferner folgende
Schritte aufweist:
Speichern der Testvektoren in dem internen Speicher (6); und
Ausführen (56) der Testvektoren in der Kernausfüh rungseinheit (4).
Speichern der Testvektoren in dem internen Speicher (6); und
Ausführen (56) der Testvektoren in der Kernausfüh rungseinheit (4).
9. Verfahren gemäß Anspruch 8, bei dem die Kernausfüh
rungseinheit (4) die Testvektoren bei einer normalen
Betriebstaktgeschwindigkeit des Mikroprozessors (2)
ausführt (56).
10. Verfahren gemäß Anspruch 8 oder 9, bei dem das Test
vektorgeneratorprogramm ferner erwartete Ergebnisse
für die Testvektoren erzeugt, wobei das Verfahren
ferner den Schritt des Vergleichens (60) eines Zu
stands des Mikroprozessors (2) mit den erwarteten
Ergebnissen durch das Testvektorgeneratorprogramm
aufweist, um zu bestimmen, ob der Mikroprozessor (2)
defekt ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/182,715 US6253344B1 (en) | 1998-10-29 | 1998-10-29 | System and method for testing a microprocessor with an onboard test vector generator |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19947603A1 true DE19947603A1 (de) | 2000-05-18 |
Family
ID=22669696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19947603A Withdrawn DE19947603A1 (de) | 1998-10-29 | 1999-10-04 | Vorrichtung und Verfahren zum Testen eines Mikroprozessors mit einem platinen-eigenen Testvektorgenerator |
Country Status (2)
Country | Link |
---|---|
US (2) | US6253344B1 (de) |
DE (1) | DE19947603A1 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002097627A1 (fr) * | 2001-05-29 | 2002-12-05 | Koninklijke Philips Electronics N.V. | Dispositif de validation d'un circuit integre |
US6885963B2 (en) * | 2000-08-24 | 2005-04-26 | Infineon Technologies Ag | Method for testing a program-controlled unit by an external test device |
EP3349117A4 (de) * | 2015-09-10 | 2019-04-17 | Panasonic Intellectual Property Management Co., Ltd. | Steuerungsverfahren und kommunikationsvorrichtung damit |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3848255B2 (ja) * | 2000-10-18 | 2006-11-22 | 株式会社アドバンテスト | 電子デバイス設計支援装置、電子デバイス設計支援方法、電子デバイス製造方法、及びプログラム |
US8166361B2 (en) * | 2001-09-28 | 2012-04-24 | Rambus Inc. | Integrated circuit testing module configured for set-up and hold time testing |
US7265570B2 (en) * | 2001-09-28 | 2007-09-04 | Inapac Technology, Inc. | Integrated circuit testing module |
US8286046B2 (en) | 2001-09-28 | 2012-10-09 | Rambus Inc. | Integrated circuit testing module including signal shaping interface |
US8001439B2 (en) | 2001-09-28 | 2011-08-16 | Rambus Inc. | Integrated circuit testing module including signal shaping interface |
US6865694B2 (en) * | 2002-04-30 | 2005-03-08 | Texas Instruments Incorporated | CPU-based system and method for testing embedded memory |
US6918098B2 (en) * | 2002-07-16 | 2005-07-12 | Hewlett-Packard Development Company, L.P. | Random code generation using genetic algorithms |
US7237166B2 (en) * | 2002-10-23 | 2007-06-26 | Hewlett-Packard Development Company, L.P. | System and method for evaluating a multiprocessor system using a random bus traffic generation technique |
US20040093536A1 (en) * | 2002-11-12 | 2004-05-13 | Weller Christopher Todd | System and method for providing coherency during the evaluation of a multiprocessor system |
US7970594B2 (en) * | 2005-06-30 | 2011-06-28 | The Mathworks, Inc. | System and method for using model analysis to generate directed test vectors |
CN100340988C (zh) * | 2005-07-08 | 2007-10-03 | 北京中星微电子有限公司 | 芯片验证系统和方法 |
CN100340987C (zh) * | 2005-07-08 | 2007-10-03 | 北京中星微电子有限公司 | 芯片验证系统和方法 |
US7779311B2 (en) * | 2005-10-24 | 2010-08-17 | Rambus Inc. | Testing and recovery in a multilayer device |
US20070162446A1 (en) * | 2006-01-12 | 2007-07-12 | Appenzeller David P | Method of testing a multi-processor unit microprocessor |
US7561027B2 (en) * | 2006-10-26 | 2009-07-14 | Hewlett-Packard Development Company, L.P. | Sensing device |
US9645882B2 (en) * | 2007-07-24 | 2017-05-09 | The Regents Of The University Of Michigan | Field repairable logic |
US8140902B2 (en) * | 2008-11-12 | 2012-03-20 | International Business Machines Corporation | Internally controlling and enhancing advanced test and characterization in a multiple core microprocessor |
US8122312B2 (en) * | 2009-04-14 | 2012-02-21 | International Business Machines Corporation | Internally controlling and enhancing logic built-in self test in a multiple core microprocessor |
US9626265B2 (en) * | 2015-06-29 | 2017-04-18 | International Business Machines Corporation | Efficiency of cycle-reproducible debug processes in a multi-core environment |
US11010285B2 (en) * | 2019-01-24 | 2021-05-18 | International Business Machines Corporation | Fault detection and localization to generate failing test cases using combinatorial test design techniques |
US11263116B2 (en) | 2019-01-24 | 2022-03-01 | International Business Machines Corporation | Champion test case generation |
US11099975B2 (en) | 2019-01-24 | 2021-08-24 | International Business Machines Corporation | Test space analysis across multiple combinatoric models |
US11106567B2 (en) | 2019-01-24 | 2021-08-31 | International Business Machines Corporation | Combinatoric set completion through unique test case generation |
US11232020B2 (en) | 2019-06-13 | 2022-01-25 | International Business Machines Corporation | Fault detection using breakpoint value-based fingerprints of failing regression test cases |
US11422924B2 (en) | 2019-06-13 | 2022-08-23 | International Business Machines Corporation | Customizable test set selection using code flow trees |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2288666B (en) | 1994-04-12 | 1997-06-25 | Advanced Risc Mach Ltd | Integrated circuit control |
US5592493A (en) * | 1994-09-13 | 1997-01-07 | Motorola Inc. | Serial scan chain architecture for a data processing system and method of operation |
US5799021A (en) | 1994-10-28 | 1998-08-25 | Duet Technologies, Inc. | Method for direct access test of embedded cells and customization logic |
US5572666A (en) * | 1995-03-28 | 1996-11-05 | Sun Microsystems, Inc. | System and method for generating pseudo-random instructions for design verification |
TW346443B (en) * | 1995-11-02 | 1998-12-01 | Toyo Koban Kk | Method and apparatus for production of laminated metal sheet |
US5862152A (en) * | 1995-11-13 | 1999-01-19 | Motorola, Inc. | Hierarchically managed boundary-scan testable module and method |
US5694399A (en) * | 1996-04-10 | 1997-12-02 | Xilinix, Inc. | Processing unit for generating signals for communication with a test access port |
US5646949A (en) * | 1996-06-04 | 1997-07-08 | Motorola, Inc. | Method and apparatus for generating instructions for use in testing a microprocessor |
US5768152A (en) * | 1996-08-28 | 1998-06-16 | International Business Machines Corp. | Performance monitoring through JTAG 1149.1 interface |
US5729554A (en) | 1996-10-01 | 1998-03-17 | Hewlett-Packard Co. | Speculative execution of test patterns in a random test generator |
US5784550A (en) | 1996-10-29 | 1998-07-21 | Hewlett-Packard Company | Method for enhanced functional testing of a processor using dynamic trap handlers |
US5771241A (en) | 1996-10-30 | 1998-06-23 | Hewlett-Packard Company | Method and apparatus for embedding operand synthesizing sequences in randomly generated tests |
JPH10171676A (ja) * | 1996-12-10 | 1998-06-26 | Toshiba Corp | マイクロプロセッサのテスト容易化回路 |
-
1998
- 1998-10-29 US US09/182,715 patent/US6253344B1/en not_active Expired - Lifetime
-
1999
- 1999-10-04 DE DE19947603A patent/DE19947603A1/de not_active Withdrawn
-
2000
- 2000-09-28 US US09/672,536 patent/US6378097B1/en not_active Expired - Lifetime
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6885963B2 (en) * | 2000-08-24 | 2005-04-26 | Infineon Technologies Ag | Method for testing a program-controlled unit by an external test device |
WO2002097627A1 (fr) * | 2001-05-29 | 2002-12-05 | Koninklijke Philips Electronics N.V. | Dispositif de validation d'un circuit integre |
FR2825490A1 (fr) * | 2001-05-29 | 2002-12-06 | Koninkl Philips Electronics Nv | Dispositif de validation d'un circuit integre |
US7353430B2 (en) | 2001-05-29 | 2008-04-01 | Nxp B.V. | Device for validating an integrated circuit |
EP3349117A4 (de) * | 2015-09-10 | 2019-04-17 | Panasonic Intellectual Property Management Co., Ltd. | Steuerungsverfahren und kommunikationsvorrichtung damit |
Also Published As
Publication number | Publication date |
---|---|
US6378097B1 (en) | 2002-04-23 |
US6253344B1 (en) | 2001-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19947603A1 (de) | Vorrichtung und Verfahren zum Testen eines Mikroprozessors mit einem platinen-eigenen Testvektorgenerator | |
DE60220511T2 (de) | Verfahren und system zur optimierung der testkosten und deaktivierungsdefekte für scan- und bist-speicher | |
DE69914864T2 (de) | Steuerung der konfiguration in einer programmierbaren logik-einheit mittels nichtflüchtiger bauelemente | |
DE60005156T2 (de) | Verteilte schnittstelle zur parallelen prüfung von mehreren vorrichtungen, wobei nur ein einzelner testkanal benutzt wird | |
DE60104854T2 (de) | System und Verfahren zum Testen integrierter Schaltungen | |
DE60023882T2 (de) | System auf einem Chip mit reprogrammierbarem Testgerät, Fehlerbeseitiger und Busüberwachung | |
DE69130693T2 (de) | Eingebaute Selbstprüfung für integrierte Schaltungen | |
DE69619632T2 (de) | Integrierte Halbleiterschaltung mit einer Speichereinrichtung und einer in einem Halbleiterchip eingebetteten Steuerung und Verfahren zur Prüfung der Einrichtung | |
DE69804114T2 (de) | System zum testen integrierter schaltungen mit einem einzigen speicher für parallel- und abtast-prüfungsmodus | |
DE602004007503T2 (de) | REKONFIGURIERBARE ARCHITEKTUR FÜR SOCs | |
DE69019402T2 (de) | Prüfverfahren und -gerät für integrierte Schaltungen. | |
DE19943941A1 (de) | Programmierbare JTAG-Netzwerkarchitektur zum Unterstützen eines proprietären Debug-Protokolls | |
DE102004023407B4 (de) | Testvorrichtung und Verfahren zum Testen eines eingebetteten Speicherkerns sowie zugehöriger Halbleiterchip | |
DE69430637T2 (de) | Vorrichtung und verfahren zum testen von integrierten schaltkreisen | |
DE4434927C2 (de) | Verfahren zum Testen einer Schaltungsplatine | |
DE602004003475T2 (de) | Testen von integrierten schaltungen | |
DE60102164T2 (de) | Systeminitialisierung eines mikrocode-basierten eingebauten speicher-selbsttests | |
DE3750236T2 (de) | Gerät zur In-line-Abfragesteuerung für Datenprozessorprüfung. | |
DE68923086T2 (de) | Verfahren zum Testen von hierarchisch organisierten integrierten Schaltungen und integrierte Schaltungen, geeignet für einen solchen Test. | |
DE2729053A1 (de) | Verfahren zur stufenempfindlichen pruefung einer einseitig verzoegerungsabhaengigen logischen einheit | |
DE102004053559A1 (de) | Drahtloses, berührungsloses Testen von integrierten Schaltungen | |
DE102004009693A1 (de) | Technik zum Kombinieren eines Abtasttests und eines eingebauten Speicherselbsttests | |
EP0126785B1 (de) | Prüf- und Diagnoseeinrichtung für Digitalrechner | |
DE19814415A1 (de) | Logikanalyse-Untersystem in einem Zeitscheibenemulator | |
DE10339940A1 (de) | System und Verfahren zum heterogenen Mehrstellentesten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE), |
|
8127 | New person/name/address of the applicant |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8130 | Withdrawal |