-
GEBIET DER ERFINDUNG
-
Die
vorliegende Erfindung betrifft allgemein eine integrierte Selbsttestfunktion
in und für
Computer-Chips.
-
HINTERGRUND DER ERFINDUNG
-
Es
ist üblich,
integrierte Selbsttestfunktionen (built-in self-test, BIST) in Speicher-
und Mikroprozessorchips vorzusehen. Manche BISTs werden nur einmal
während
der Wafer- oder
Modulprüfung durchgeführt, um
unbrauchbare Chips auszusortieren. Andere Arten von BISTs werden
während
der gesamten Lebensdauer des Chips zur Selbstprüfung und zum Reparieren nach
jedem Einschalten durchgeführt.
Für die
modernen Hochleistungschips mit hoher Packungsdichte sind BISTs
zu einem besonders wichtigen Schaltungsbestandteil geworden, der die
Entwicklungskosten und -dauer von Produkten bestimmt.
-
Eine
typische BIST-Schaltung in einem dynamischen Arbeitsspeicher (Dynamic
Random Access Memory, DRAM) mit hoher Packungsdichte beinhaltet
eine Steuereinheit, einen Cachespeicher, einen Mustergenerator und
einen Datenkomparator. (Siehe beispielsweise Jeffery Dreibelbis
et al., „Processor-Based
Built-In Self Test for Embedded DRAM", IEEE Journal of Solid State Circuits,
Bd. 33, Nr. 11, Nov. 1988, S. 1731 bis 1739.) Die Steuereinheit
verwendet zum Austausch von Daten mit einem externen Tester Signalbits.
Durch Programmierung der Signalbits können verschiedene Testmodi,
zum Beispiel START, STOP, CONTINUE, REFRESH, READ und WRITE, ausgeführt werden. Üblicherweise
kann der Cachespeicher in mehreren Programmen 256 20-Bit-Anweisungswörter speichern.
Nach dem Einschalten des Chips wird in den Cachespeicher ein Satz
Testprogramme geladen, welche festlegen, wie der DRAM getestet wird.
Der Mustergenerator ist in der Lage, übliche Testmuster zu erzeugen, zum
Beispiel eine ausgefüllte „1", eine ausgefüllte „0", ein Schachbrett-,
Querstreifen-, Längsstreifen- und
Verlaufsmuster. Der Datenkomparator vergleich die aus dem DRAM gelesenen
Daten mit den in den DRAM geschriebenen erwarteten Daten und stellt fest,
ob der Schaltkreis den Test besteht oder nicht.
-
Eine
genauere Analyse kann während
des Einbrennens (Burn-in-Test)
des Wafers oder des Moduls durchgeführt werden. Nach dem Abtasten
jeder Zeile und Spalte der DRAM-Matrix speichert eine integrierte
Adressstapelregisteranordnung die Adressen mit den meisten Fehlern.
Diese Adressen werden zum Reparieren verwendet, indem redundante Bereiche
mittels programmierbarer Durchbrennverfahren aktiviert werden.
-
Durch
Unterbringen vieler verschiedener Makros auf einem Chip werden die
Vorteile der Integrationstechnologie zum Erzielen multifunktioneller Betriebsarten
durch eine SOC (system-onchip)-Konstruktion voll genutzt. Zum Beispiel
kann ein Chip für die
drahtlose Datenübertragung
ein integriertes DRAM-Speichermakro,
ein Flashspeichermakro, einen Mikroprozessorkern, ein Mischsignalmakro
und einige analoge Makros umfassen. Bei der Entwicklung eines komplizierten Systemchips
besteht eine der Herausforderungen darin, seine Struktur zu überprüfen. Da
jedoch die meisten Eingangs- und Ausgangskontakte jedes Makros nach
dem Integrationsschritt nicht mehr zur Verfügung stehen, lässt sich eine
zuverlässige
Prüfung
eines Systemchips mit hoher Geschwindigkeit und geringem Aufwand
nur schwer durchführen.
-
Da
die meisten integrierten Selbsttestschaltungen derzeit auf die einzelnen
Makros zugeschnitten sind, kann das BIST-Design für einzelne
Speicher- oder Prozessorchips nicht auf einen Systemchip angewendet
werden, der sowohl Speicher- als auch Prozessormakros beinhaltet.
Die BIST-Funktion zum Testen von Speichern kann nicht direkt zum
Testen von Prozessoren eingesetzt werden und umgekehrt. In der US-Patentschrift
5 995 731 wird beispielsweise die Verwendung von mehreren BIST-Steuereinheiten
zum Testen von Speicheranordnungen beschrieben. Außerdem ist
keine BIST-Funktion für
Analog-, Funk- (HF) und Mischsignalmakros bekannt. Die fehlende
Kommunikation und Koordination zwischen den Tests verschiedener Makros
verschärft
die Komplexität
des Problems noch weiter.
-
Folglich
besteht ein Bedarf an einer wirksamen Verfahrensweise für einen
integrierten Selbsttest zum Testen eines kompletten Systems auf
einem Chip, um die Zuverlässigkeit
der Schaltung und die Leistungsfähigkeit
des Systems auf einem Chip sicherzustellen.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Die
vorliegende Erfindung stellt daher gemäß einem ersten Aspekt eine
Vorrichtung nach Anspruch 1 bereit.
-
Vorzugsweise
umfasst die zentrale BIST-Steuereinheit eine Ablaufsteuerung, durch
welche für
jedes Makro Testsequenzen aufgeführt
werden.
-
Vorzugsweise
umfasst die zentrale BIST-Steuereinheit einen Prozessor, der externe Testprogramme
verarbeitet.
-
Vorzugsweise
umfasst die zentrale BIST-Steuereinheit einen zeitweiligen Speicherplatz, auf
dem die von jedem Makro gesammelten Daten zur späteren externen Analyse gesammelt
werden.
-
Vorzugsweise
umfasst die zentrale BIST-Steuereinheit einen dynamischen Arbeitsspeicher.
-
Vorzugsweise
umfasst die zentrale BIST-Steuereinheit eine Logik, die einen hierarchischen
Testalgorithmus ausführt.
-
Vorzugsweise
ist die Logik zum Durchführen von
Test auf mehr als einer Testebene eingerichtet.
-
Vorzugsweise
ist die Logik so eingerichtet, dass vor dem Durchführen eines
Tests auf einer unteren Ebene mindestens ein Test auf einer höheren Ebene
durchgeführt
wird.
-
Vorzugsweise
umfasst das Makro eine Vielzahl von Makros; und vorzugsweise ist
die Logik zum Ermitteln eines Fehlermechanismus innerhalb jedes Makros
und zwischen mehreren Makros eingerichtet.
-
Vorzugsweise
ist die Logik so eingerichtet, dass sie eine Testprozedur abbricht,
wenn ein schwerer oder irreparabler Fehler erkannt wird.
-
Vorzugsweise
ist die Logik so eingerichtet, dass sie mindestens eine lokale BIST-Schaltung
auffordert, einen reparierbaren Fehler in mindestens einem Makro
zu beheben.
-
Vorzugsweise
ist die Logik so eingerichtet, dass sie das Testen auf einer anderen
hierarchischen Ebene auslöst,
nachdem das Testen auf einer bestimmten Ebene abgeschlossen ist.
-
Vorzugsweise
umfasst die zentrale BIST-Steuereinheit einen zeitweiligen Speicherplatz, auf
dem die von jedem Makro gesammelten Daten zur späteren externen Analyse gesammelt
werden; und vorzugsweise ist die Logik so eingerichtet, dass sie
Daten zur zentralen BIST-Steuereinheit überträgt und auf dem zeitweiligen
Speicherplatz speichert, nachdem die mindestens eine lokale BIST-Schaltung eine
letzte Testebene abgeschlossen hat.
-
Vorzugsweise
ist die Logik so eingerichtet, dass sie den Abschluss des Tests
anzeigt, nachdem die mindestens eine lokale BIST-Schaltung das Testen
jedes Makros auf der letzten Ebene abgeschlossen hat.
-
Vorzugsweise
umfasst das mindestens eine Datenübertragungsmedium Folgendes:
Befehls- und Datenbits; und Adressbits, welche die Befehls- und Datenbits
zu dem mindestens einen speziellen Makro leiten.
-
Die
Vorrichtung gemäß dem ersten
Aspekt umfasst ferner vorzugsweise mindestens ein vorgegebenes Testprogramm,
das zum Programmieren von Testbefehlen zur zentralen BIST-Steuereinheit übertragen
werden kann.
-
Vorzugsweise
umfasst die zentrale BIST-Steuereinheit einen digitalen Signalprozessor (DSP – Digital
Signal Processor).
-
Die
Vorrichtung gemäß dem ersten
Aspekt umfasst ferner mindestens eine redundante lokale Schaltung,
die zu Reparaturzwecken vorgesehen ist.
-
Gemäß einem
zweiten Aspekt stellt die vorliegende Erfindung ein Verfahren zum
Durchführen eines
integrierten hierarchischen Selbsttests für ein System auf einem Chip
nach Anspruch 8 bereit.
-
Das
Verfahren gemäß dem zweiten
Aspekt umfasst vorzugsweise ferner den Schritt des Bereitstellens
mindestens eines Makros, das der mindestens einen lokalen BIST-Schaltung
zugeordnet ist.
-
Vorzugsweise
umfasst der Schritt des Bereitstellens einer zentralen BIST-Steuereinheit
das Speichern von fest codierten Testbefehlen für jedes Makro.
-
Vorzugsweise
umfasst der Schritt des Bereitstellens einer zentralen BIST-Steuereinheit
das Bereitstellen mindestens eines programmierbaren Mediums, welches
Testbefehle für
jedes Makro programmiert.
-
Vorzugsweise
umfasst der Schritt des Bereitstellens einer zentralen BIST-Steuereinheit
das Bereitstellen einer Ablaufsteuerung, durch welche Testsequenzen
für jedes
Makro ausgeführt
werden.
-
Vorzugsweise
umfasst der Schritt des Bereitstellens einer zentralen BIST-Steuereinheit
das Bereitstellen eines Prozessors, welcher externe Testprogramme
verarbeitet.
-
Vorzugsweise
umfasst der Schritt des Bereitstellens einer zentralen BIST-Steuereinheit
das Bereitstellen eines zeitweiligen Speicherplatzes, auf welchem
die von jedem Makro gesammelten Daten zur späteren externen Analyse gespeichert
werden.
-
Vorzugsweise
umfasst der Schritt des Bereitstellens eines zeitweiligen Speicherplatzes
das Bereitstellen eines dynamischen Arbeitsspeichers.
-
Das
Verfahren gemäß dem zweiten
Aspekt umfasst vorzugsweise ferner den Schritt des Ausführens eines
hierarchischen Testalgorithmus.
-
Vorzugsweise
umfasst der Schritt des Ausführens
eines hierarchischen Testalgorithmus das Durchführen von Tests auf mehr als
einer Testebene.
-
Vorzugsweise
umfasst der Schritt des Ausführens
eines hierarchischen Testalgorithmus das Durchführen mindestens eines Test
auf einer höheren
Ebene, bevor mindestens ein Test auf einer niedrigeren Ebene durchgeführt wird.
-
Vorzugsweise
umfasst das Makro eine Vielzahl von Makros; und der Schritt des
Ausführens
eines hierarchischen Testalgorithmus umfasst das Ermitteln eines
Fehlermechanismus innerhalb jedes Makros und zwischen mehreren Makros.
-
Vorzugsweise
umfasst der Schritt des Ausführens
eines hierarchischen Testalgorithmus das Abbrechen einer Testprozedur;
wenn ein schwerer oder irreparabler Fehler erkannt wird.
-
Vorzugsweise
umfasst der Schritt des Ausführens
eines hierarchischen Testalgorithmus das Auffordern mindestens einer
lokalen BIST-Schaltung zum Reparieren eines reparierbaren Fehlers
in mindestens einem Makro.
-
Vorzugsweise
umfasst der Schritt des Ausführens
eines hierarchischen Testalgorithmus das Auslösen des Tests auf einer anderen
hierarchischen Ebene, nachdem der Test auf einer bestimmten Ebene
abgeschlossen ist.
-
Vorzugsweise
umfasst der Schritt des Bereitstellens einer zentralen BIST-Steuereinheit
das Bereitstellen eines zeitweiligen Speicherplatzes, auf welchem
die von jedem Makro gesammelten Daten zur späteren externen Analyse gespeichert
werden; und der Schritt des Ausführens
eines hierarchischen Testalgorithmus umfasst das Übertragen
von Daten zur zentralen BIST-Steuereinheit und das Speichern von
Daten auf dem zeitweiligen Speicherplatz, nachdem die mindestens
eine lokale BIST-Schaltung das Testen auf einer letzten Ebene abgeschlossen
hat.
-
Vorzugsweise
umfasst der Schritt des Ausführens
eines hierarchischen Testalgorithmus das Anzeigen eines abgeschlossenen
Tests, nachdem die mindestens eine lokale BIST-Schaltung den Test jedes
Makros auf der letzten Ebene abgeschlossen hat.
-
Vorzugsweise
umfasst der Schritt der Datenübertragung
Folgendes: Bereitstellen von Befehls- und Datenbits; und Bereitstellen
von Adressbits zum Leiten der Befehls- und Datenbits zu mindestens
einem bestimmten Makro.
-
Das
Verfahren gemäß dem zweiten
Aspekt umfasst vorzugsweise ferner den Schritt des Bereitstellens
mindestens eines vorgegebenen Testprogramms, das zum Programmieren
von Testbefehlen zur zentralen BIST-Steuereinheit übertragen
werden kann.
-
Vorzugsweise
umfasst der Schritt des Bereitstellens einer zentralen BIST-Steuereinheit
das Bereitstellen eines DSP.
-
Das
Verfahren gemäß dem zweiten
Aspekt umfasst vorzugsweise ferner den Schritt des Bereitstellens
mindestens einer redundanten lokalen Schaltung, die zu Reparaturzwecken
vorgesehen ist.
-
Bei
einer bevorzugten Ausführungsart
kann die vorliegende Erfindung eine maschinenlesbare Programmspeichereinrichtung
bereitstellen, die real ein Anweisungsprogramm verkörpert, das
zum Ausführen
der Verfahrensschritte nach Anspruch 8 durch die Maschine ausgeführt werden
kann.
-
Gemäß mindestens
einer derzeit bevorzugten Ausführungsart
der vorliegenden Erfindung wird ein Entwurfsverfahren für einen
integrierten hierarchischen Selbsttest (BIST) bereitgestellt, um
einen integrierten Systemchip mit verschiedenen Funktionsblöcken und
Makros zu testen.
-
Die
vorliegende Erfindung sieht gemäß mindestens
einer Ausführungsart
allgemein auch das Bereitstellen einer zentralen BIST-Steuereinheit,
einer oder mehrerer lokaler BIST-Schaltungen für jedes Makro und Daten-/Steuerpfade
vor, um die Testschritte für
das System auf einem Chip (SOC) auszuführen.
-
Ferner
ist im vorliegenden Zusammenhang vorgesehen, eine bevorzugte hierarchische
Testmethodik bereitzustellen, mit deren Hilfe verschiedene Makros
auf mehreren Ebenen (oder mehr als einer Ebene) getestet werden
können.
Zum Beispiel erkennt die oberste Testebene die Fehler jedes Makros,
die nicht repariert werden können.
Die nächste Testebene
erkennt die Fehler der Makroschnittstelle, die nicht repariert werden
können.
Als folgende Ebenen können
die Selbstreparatur, die Selbstoptimierung und die Parameterabstimmung
für jedes
Makro in Betracht kommen, um seine Leistungsfähigkeit und Funktionalität sicherzustellen.
Die letzte Testebene führt
die Fehlersuche für
die Schnittstelle und die Ergebnisanalyse durch und sendet Berichte
an den externen Tester.
-
Gemäß mindestens
einer gegenwärtig
bevorzugten Ausführungsart
der vorliegenden Erfindung umfasst eine zentrale BIST-Steuereinheit Folgendes:
programmierbare Einheiten zum Speichern der Testmuster und zum Programmieren
der Testbefehle für
jedes Makro; eine Ablaufsteuerung zum ordnungsgemäßen Ausführen der
Testsequenz für
jedes Makro; einen dynamischen Arbeitsspeicher (DRAM) zum Sammeln
der von den lokalen BIST-Schaltungen
zurückgelieferten
Daten; und einen integrierten Prozessor zum Durchführen des
Testens innerhalb und zwischen den Makros mittels Programmen von einem
externen Tester.
-
Außerdem ist
hierbei vorgesehen, einen bevorzugten Testalgorithmus bereitzustellen,
welcher den Selbsttest durchführt
und auf hierarchische und parallele Weise Abbruchkriterien festlegt,
um die gesamte Testzeit zu verringern.
-
Zusammenfassend
stellt eine bevorzugten Ausführungsart
gemäß einem
Aspekt der Erfindung eine Vorrichtung zum Bereitstellen eines integrierten hierarchischen
Selbsttests für
ein System auf einem Chip bereit, wobei die Vorrichtung Folgendes
umfasst: eine zentrale BIST-Steuereinheit; mindestens eine lokale
BIST-Schaltung; und mindestens ein zwischen der zentralen BIST-Steuereinheit
und der mindestens einen lokalen BIST-Schaltung bereitgestelltes
Datenübertragungsmedium.
-
Gemäß einem
anderen Aspekt der bevorzugten Ausführungsart der Erfindung wird
ein Verfahren zum Bereitstellen eines integrierten hierarchischen
Selbsttests für
ein System auf einem Chip bereitgestellt, wobei das Verfahren die
folgenden Schritte umfasst: Bereitstellen einer zentralen BIST-Steuereinheit; Bereitstellen
mindestens einer lokalen BIST-Schaltung;
und Austausch von Daten zwischen der zentralen BIST-Steuereinheit
und der mindestens einen lokalen BIST-Schaltung.
-
Ferner
wird gemäß einem
weiteren Aspekt einer bevorzugten Ausführungsart der Erfindung eine maschinenlesbare
Programmspeichereinheit bereitgestellt, welche ein durch die Maschine
ausführbares Programm
von Anweisungen vergegenständlicht,
um die Schritte des Verfahrens zum Bereitstellen des integrierten
hierarchischen Selbsttests für
ein System auf einem Chip auszuführen,
wobei das Verfahren die folgenden Schritte umfasst: Bereitstellen
einer zentralen BIST-Steuereinheit; Bereitstellen mindestens einer
lokalen BIST-Schaltung; und Austausch von Daten zwischen der zentralen
BIST-Steuereinheit und der mindestens einen lokalen BIST-Schaltung.
-
KURZEBESCHREIBUNG DER
ZEICHNUNGEN
-
Im
Folgenden wird als Beispiel eine bevorzugte Ausführungsart der vorliegenden
Erfindung unter Bezug auf die beiliegenden Zeichnungen beschrieben,
wobei:
-
1 den
Aufbau des Systems auf einem Chip (SOC) mit speziellen integrierten
Selbsttesteinheiten (BIST) veranschaulicht.
-
2 ein
allgemeines integriertes hierarchisches Selbsttestschema für einen
Systemchip und seine Teilsysteme veranschaulicht.
-
3 eine
Folge von Testprogrammen veranschaulicht, die durch globale und
lokale BIST-Einheiten ausgeführt
werden können.
-
BESCHREIBUNG DER BEVORZUGTEN
AUSFÜHRUNGSARTEN
-
1 veranschaulicht
den Aufbau eines Systems auf einem Chip (SOC) mit speziellen integrierten
Selbsttesteinheiten (BIST). Im Einzelnen sendet die zentrale BIST-Steuereinheit 10 aus Adressbits
und Befehlsbits bestehende Daten an die lokalen BIST-Einheiten 30a, 50a, 70a, 90a und 100a einzelner
Makros 30, 50, 70, 90 bzw. 100 und
führt die
folgenden Tests vorzugsweise auf hierarchische Weise durch:
- – Einheitentests
des Hochfrequenz- (HF-) Makros 30, des Flashspeichermakros 50,
des Mischsignalmakros 70, des Makros 90 des dynamischen Arbeitsspeichers
und des Prozessormakros 100;
- – einen
Schnittstellentest zwischen dem Prozessormakro 100 und
dem DRAM-Makro 80, zum Beispiel Lesen von Daten vom DRAM
zum Prozessor, Schreiben von Daten vom Prozessor zum DRAM und Ausführen von
Prozessortestprogrammen vom DRAM-Makro;
- – einen
Schnittstellentest zwischen dem HF-Makro 30 und einer Außenantenne;
- – einen
Schnittstellentest zwischen dem HF-Makro 30 und dem Basisbandbereich
des Mischsignalmakros 70;
- – einen
Datenübertragungstest
zwischen dem Flashspeichermakro 50 und den digitalen Signalverarbeitungs-
(DSP-) Einheiten des Mischsignalmakros 70, um zum Beispiel
Daten vom DSP im Flashspeicher zu speichern, Blöcke zu löschen; und
- – einen
Datenübertragungsleistungstest
zwischen dem DRAM-Makro 90 und
dem Flashspeichermakro 50, um zum Beispiel Daten zwischen
diesen beiden Einheiten auszutauschen.
-
Wenn
die zentrale BIST-Steuereinheit 10 irreparable Fehler erkennt,
wird die Testsequenz vorzugsweise sofort abgebrochen, um Testzeit
einzusparen. Alle anderen reparierbaren Fehler werden (falls sie
repariert werden können)
vorzugsweise durch die lokalen BIST-Schaltungen (30a, 50a, 70a, 90a, 100a)
beseitigt und zur weiteren Auswertung an die zentrale BIST-Steuereinheit 10 gemeldet. 2 veranschaulicht
ein allgemeines integriertes hierarchisches Selbsttestschema (BIST)
für einen
System auf einem Chip und dessen Teilsysteme. (Ein Laptopsystem
kann zum Beispiel Teilsysteme wie Multimedia, Video, Audio, Modem,
Schnittstelle usw. aufweisen.) 2 zeigt
im Einzelnen eine allgemeine Hierarchie, die gemäß mindestens einer gegenwärtig bevorzugten
Ausführungsart
der vorliegenden Erfindung verwendet werden kann. Zu sehen ist,
dass auf einer globalen oder Systemebene 200 ein Austausch von
Daten außerhalb
des Chips, eine globale BIST-Steuerung und ein globales BIST-Programm vorliegen
kann können.
Auf einer Teilsystemebene 205 jedoch, die in der Hierarchie
eine „Stufe" tiefer steht, können die
Funktionen des Datenaustauschs auf dem Chip, der BIST-Steuerung
auf der zweiten Ebene (oder Zwischenebene) und der BIST-Programmierung
auf der zweiten Ebene (oder Zwischenebene) für die verschiedenen Untersysteme 207a, 207b, 207c usw.
untergebracht sein. Danach können die
lokale BIST-Steuerung und die lokale BIST-Programmierung auf einer „lokalen" Ebene 210 der
Hierarchie vorzugsweise den verschiedenen Kernen oder Makros 212a, 212b, 212c, 212d usw.
zugeordnet sein. Allgemein ist klar, dass der globalen Systemebene 200 zum
einen mindestens ein (üblicherweise
jedoch mehr als ein) zur Teilsystem„ebene" gehörendes
Teilsystem zugeordnet ist, während
jedem Teilsystem wiederum mindestens ein (üblicherweise jedoch mehr als
ein) Kern oder Makro der lokalen „Ebene" 210 untergeordnet ist.
-
Bei
einer bevorzugten Ausführungsart
der vorliegenden Erfindung weist jedes Teilsystem vorzugsweise eine
lokale BIST-Einheit auf einer „untersten" oder „ersten" Ebene der Hierarchie
auf, um Standardtestfunktionen wie READ (Lesen), WRITE (Schreiben),
EXECUTE (Ausführen)
und RETURN (Zurück)
auszuführen.
Eine solche lokale BIST-Einheit führt vorzugsweise auch Testfunktionen
aus, die speziell für
das Teilsystem vorgesehen sind, in welchem sie sich befinden. Zum
Beispiel kann die lokale BIST-Einheit in einem DRAM-Makro einen
Mustergenerator zum Erzeugen vordefinierter Testmuster für die Speicheranordnung
aufweisen. Die lokale BIST-Einheit in einem Prozessormakro weist
vorzugsweise einen Programmgenerator auf, um vordefinierte Programme
für den
Kern der Zentraleinheit (CPU) zu liefern. (Man beachte, dass der
CPU-Kern auch eine DSP-Einheit sein kann.) Alle lokalen BIST-Schaltungen sind
mit einer gemeinsamen Schnittstelle ausgestattet, um den Datenaustausch zwischen
der globalen BIST-Einheit und lokalen BIST-Einheiten zu ermöglichen.
Dieser Datenübertragungskanal
kann ein serieller Bus, ein paralleler Bus oder ein beliebiger verfügbarer Standardbus sein.
Wenn die lokalen BIST-Schaltungen über keine gemeinsame Schnittstelle
verfügen,
sollte vorzugsweise für
jede lokale BIST-Schaltung eine gesonderte Schnittstelle in der
globalen BIST-Einheit vorgesehen werden, um einen Datenübertragungskanal
herzustellen.
-
Die
Datenübertragungsfunktion
auf dem Chip ermöglicht
der globalen BIST-Einheit das Ausführen diverser Steuerungs- und
Datenübertragungsoperationen
mit den lokalen BIST-Einheiten. Mittels der Steuerungsoperationen
kann eine globale BIST-Einheit
einen lokalen BIST starten, abbrechen oder den Status eines lokalen
BIST abfragen. Mittels der Datenübertragungsoperationen
kann die globale BIST-Einheit das Testprogramm in einer lokalen BIST-Einheit
speichern oder die Testergebnisse von einem lokalen BIST lesen.
Durch die Datenübertragungsfunktion
auf dem Chip kann die globale BIST-Einheit außerdem Steuerungs- und Datenübertragungsoperationen
zwischen zwei oder mehr lokalen BIST-Einheiten ausführen. Die
Steuerungsoperationen können
zum Beispiel mehr als einen lokalen BIST starten, abbrechen oder
den Status von mehr als einem lokalen BIST abfragen. Die Datenübertragungsoperationen
können
das Testprogramm in mehr als einer lokalen BIST-Einheit speichern,
die Testergebnisse von mehr als einem lokalen BIST lesen oder über die
dazu bestimmten lokalen BIST-Einheiten einen Makro-zu-Makro-Test
durchführen.
-
Ein
weiteres Hauptmerkmal eines globalen BIST ist dessen Fähigkeit
zu ermitteln, ob das lokale Makro gemäß den Festlegungen bei der
Entwicklung ordnungsgemäß funktioniert.
Wenn dies nicht der Fall ist, ersetzt der globale BIST dieses vorzugsweise durch
eine redundante lokale Einheit.
-
3 veranschaulicht
eine Folge von Testprogrammen, welche durch die globale und die
lokalen BIST-Einheiten ausgeführt
werden können.
-
Gezeigt
ist, dass vorzugsweise zuerst hierarchische BIST-Programme geladen werden (302). Dann
wird vorzugsweise ein lokales BIST-Programm ausgeführt (304).
Wenn der entsprechende lokale BIST-Bericht (306) einen
Fehler anzeigt, wird der Prozess beendet (308). Ansonsten
wird ermittelt (310), ob n gleich N ist, wobei N die Gesamtzahl
der verfügbaren
lokalen BIST-Programme darstellt. Wenn n ungleich N ist (NEIN),
wird n um 1 erhöht (312),
und der Prozess geht zurück
zu Schritt 304. Wenn n gleich N ist (JA), wird ein BIST
auf einer zweiten oder Zwischenebene durchgeführt (314). Auch hier
fragt der System-BIST
der Reihe nach oder in einer anderen definierten Reihenfolge jeden
BIST der Teilsysteme ab. Abschließend wird vorzugsweise der globale
BIST auf der obersten Ebene durchgeführt (316). Wenn der
BIST-Bericht der globalen Ebene einen Fehler (FEHLER) anzeigt (318),
wird der Prozess beendet (320). Wenn der Bericht keinen
Fehler (FEHLERFREI) anzeigt, wird der hierarchische BIST als abgeschlossen
angesehen (322). Während
der Schritt 322 einer erfolgreichen Beendigung des Prozesses
entspricht, können
die Schritte 308 und/oder 320 entweder wegen eines
irreparablen Fehlers eine vorzeitige Beendigung auslösen, worüber ein
automatischer externer Tester oder ein Bediener in Kenntnis gesetzt
wird, oder beim Vorliegen eines reparierbaren Fehlers weitere Testprogramme
oder sogar Selbstreparaturprogramme aktivieren.
-
Gemäß mindestens
einer gegenwärtig
bevorzugten Ausführungsart
der vorliegenden Erfindung können
die Testprogramme durch die globale BIST-Einheit vordefiniert oder
von außen über den Datenübertragungskanal
außerhalb
des Chips geladen werden. Zur Verringerung der Testzeit können die
Testprogramme für
die Teilsysteme durch die lokalen BIST-Einheiten parallel ausgeführt werden. Wenn
eine lokale BIST-Einheit einen irreparablen Fehler erkennt, wird
dies über
den Datenübertragungskanal
zwischen den BISTs auf dem Chip der globalen BIST-Einheit mitgeteilt.
Anschließend
beendet die globale BIST-Einheit den Test und teilt dem externen
Tester über
den Datenübertragungskanal außerhalb
des Chips den Fehler mit, wenn es auf der globalen Ebene keine Austauscheinheit
gibt. Wenn jedoch lokal reparierbare Fehler erkannt werden, können in
jedem Teilsystem verschiedene Testprogramme ausgeführt werden,
zum Beispiel Redundanzaktivierung und Leistungsanpassung. Zur Verbesserung
der Test wird zuerst das Testprogramm ausgeführt, welches die meisten Fehler
erfasst. Nachdem alle lokalen BIST-Einheiten erfolgreich ihre entsprechenden
Teilsysteme getestet haben, führt die
globale BIST-Einheit den abschließenden Systemtest durch.
-
Es
ist klar, dass die vorliegende Erfindung gemäß mindestens einer gegenwärtig bevorzugten Ausführungsart
allgemein eine BIST-Hierarchie betrifft, die aus zwei, drei, vier
oder einer beliebigen vorstellbaren Anzahl von mehr als vier Ebenen
besteht. Vorzugsweise gelten für
die Beziehungen zwischen einem BIST einer Ebene und einem oder mehreren BISTs
einer unmittelbar darunter befindlichen Hierarchieebene ähnliche
Prinzipien.
-
Es
ist klar, dass die vorliegende Erfindung gemäß mindestens einer gegenwärtig bevorzugten Ausführungsart
eine zentrale BIST-Steuereinheit, mindestens eine lokale BIST-Schaltung
und mindestens ein Medium zum Datenaustausch zwischen der zentralen
BIST-Steuerung und der mindestens einen lokalen BIST-Schaltung beinhaltet.
Die zentrale BIST-Steuereinheit, die mindestens eine BIST-Schaltung
und das mindestens eine Medium zum Datenaustausch können gemeinsam
auf einem Universalcomputer realisiert werden, auf dem geeignete
Softwareprogramme laufen. Diese können ebenfalls auf mindestens
einer Integrierten Schaltung oder als Teil mindestens einer integrierten
Schaltung ausgeführt werden.
Somit ist klar, dass die Erfindung in Form von Hardware, Software
oder einer Kombination beider ausgeführt werden kann.
-
Obwohl
oben unter Bezug auf die beiliegenden Zeichnungen anschauliche Ausführungsarten der
vorliegenden Erfindung beschrieben wurden, ist klar, dass die Erfindung
nicht genau auf diese Ausführungsarten
beschränkt
ist und dass ein Fachmann verschiedene andere Änderungen und Abwandlungen
vornehmen kann, ohne vom Geltungsbereich der Erfindung abzuweichen.