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 Testvektorgenerator

Info

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
Application number
DE19947603A
Other languages
English (en)
Inventor
Brian P Fin
Daniel J Dixon
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of DE19947603A1 publication Critical patent/DE19947603A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection 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/2236Detection 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.
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.
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.
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).
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.
DE19947603A 1998-10-29 1999-10-04 Vorrichtung und Verfahren zum Testen eines Mikroprozessors mit einem platinen-eigenen Testvektorgenerator Withdrawn DE19947603A1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 マイクロプロセッサのテスト容易化回路

Cited By (5)

* Cited by examiner, † Cited by third party
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