Die Erfindung betrifft eine integrierte Schaltung mit einer
Selbsttesteinrichtung.
In der US 5,173,906-A ist eine integrierte Schaltung mit ei
ner Selbsttesteinrichtung (built-in self-test) beschrieben.
Die Selbsttesteinrichtung führt in einer Testbetriebsart eine
Überprüfung bestimmter Schaltungskomponenten der integrierten
Schaltung durch. Gleichzeitig führt sie einen Soll-Ist-
Vergleich von der zu überprüfenden Schaltungseinheit er
zeugten Signalen durch. Während der Überprüfung werden Fehler
von der Selbsttesteinrichtung registriert. Nach Abschluß der
Überprüfung werden ein oder mehrere Ergebnissignale von der
Selbsttesteinrichtung nach außerhalb der integrierten Schal
tung gegeben, die angeben, inwieweit Fehler während der
Durchführung der Selbstüberprüfung aufgetreten sind.
Eine Selbsttesteinrichtung kann entweder mittels verdrahteter
Logik realisiert sein oder mittels einer programmierbaren Lo
gik beziehungsweise mittels eines Controllers, die bezie
hungsweise der in einen Programmspeicher der integrierten
Schaltung ladbare Testprogramme ausführt. Im letztgenannten
Fall arbeitet die Selbsttesteinrichtung ein im Programmspei
cher befindliches Testprogramm Befehl für Befehl ab, ohne daß
Einfluß auf den Programmablauf genommen werden kann.
Der Erfindung liegt die Aufgabe zugrunde, eine integrierte
Schaltung mit einer Selbsttesteinrichtung und einem Programm
speicher zum Speichern eines von extern ladbaren Testprogram
mes für die Selbsttesteinrichtung anzugeben, bei dem eine
Einflußnahme auf den Ablauf des Testprogrammes möglich ist.
Diese Aufgabe wird mit einer integrierten Schaltung gemäß Pa
tentanspruch 1 gelöst. Vorteilhafte Aus- und Weiterbildungen
der Erfindung sind Gegenstand abhängiger Ansprüche.
Die erfindungsgemäße integrierte Schaltung zeichnet sich da
durch aus, daß ihre Selbsttesteinrichtung einen Eingang für
ein Interrupt-Signal aufweist, aufgrund dessen sie die Aus
führung eines gerade auszuführenden Testprogrammes unter
bricht, indem sie nicht den jeweils adressenmäßig folgenden
Programmbefehl des Testprogrammes ausführt, sondern einen
durch das Interrupt-Signal ausgelösten Programmsprung inner
halb des Testprogrammes ausführt.
Das Vorsehen einer Interrupt-Möglichkeit während der Ausfüh
rung eines Testprogrammes durch die Selbsttesteinrichtung er
möglicht vorteilhaft eine Beeinflussung des Testverlaufs. Das
Interrupt-Signal kann entweder der integrierten Schaltung ex
tern zugeführt werden, so daß beispielsweise ein Betreiber
der integrierten Schaltung oder eine externe Testeinrichtung
auf den Programmablauf Einfluß nehmen kann, oder on-chip ge
neriert werden. Im letztgenannten Fall kann der Interrupt in
Abhängigkeit bestimmter Betriebszustände bzw. bestimmter auf
der integrierten Schaltung generierter Signale ausgelöst wer
den. Die Erfindung eignet sich zur Anwendung bei beliebigen
Arten von integrierten Schaltungen, beispielsweise bei Logik
schaltungen oder Speicherschaltungen.
Nach einer Weiterbildung der Erfindung ist die integrierte
Schaltung eine dynamische Speicherschaltung mit Speicherzel
len, bei der das Interrupt-Signal einen Programmsprung zu
Programmbefehlen auslöst, bei deren Ausführung die Selbstte
steinrichtung einen Refresh der Speicherzelleninhalte durch
führt. Diese Weiterbildung bietet den Vorteil, daß ein Spei
cherzellen-Refresh durch die Selbsttesteinrichtung durchge
führt wird und somit hierfür keine zusätzlichen Einrichtungen
vorgesehen werden müssen. Speicherzellen von dynamischen
Speicherschaltungen (DRAMs) werden üblicherweise als 1-
Transistor-Speicherzellen realisiert. Aufgrund des Leckstro
mes ihres Speicherkondensators ist es notwendig, die gespei
cherte Information regelmäßig wieder aufzufrischen. Dies wird
als Refresh bezeichnet. Indem die Selbsttesteinrichtung den
Refresh durchführt, erfolgt eine zeitlich optimerierte Ab
stimmung von jeweils auszuführendem Testprogramm und dem Re
fresh. Dies ist insbesondere günstig, wenn die Speicherzellen
im Rahmen des Testprogrammes durch die Selbsttesteinrichtung
überprüft werden. Prüfen und Refreshen der Speicherzellen er
folgt dann durch die Selbsttesteinrichtung.
Nach einer Weiterbildung weist die integrierte Schaltung eine
Zeitmeßeinrichtung zur Generierung des Interrupt-Signals auf.
Diese kann dann vorteilhafterweise so dimensioniert werden,
daß das Interrupt-Signal in gewünschten, regelmäßigen zeitli
chen Abständen generiert wird. Daher eignet sich diese Wei
terbildung insbesondere für die Generierung des Interrupt-
Signals zur Auslösung eines durch die Selbsttesteinrichtung
durchgeführten Refreshs. Bekanntlich wird ein Refresh zy
klisch wiederholt.
Das Interrupt-Signal kann unter anderem auch dazu dienen, daß
gerade von der Selbsttesteinrichtung bearbeitete Testprogramm
bei Bedarf vorzeitig zu beenden. Außerdem kann es dazu die
nen, das gerade ausgeführte Testprogramm zu unterbrechen, die
Selbsttesteinrichtung zu initialisieren und anschließend er
neut mit der Bearbeitung des Programms am Programmanfang zu
beginnen.
Die Erfindung wird im folgenden anhand der Figuren näher er
läutert.
Fig. 1 zeigt ein Ausführungsbeispiel der Erfindung,
Fig. 2 zeigt ein Ablaufdiagramm zum Ausführungsbeispiel
aus Fig. 1, und
Fig. 3 zeigt einen detaillierteren Ausschnitt aus Fig. 1.
In Fig. 1 ist eine integrierte Schaltung IC mit einer
Selbsttesteinrichtung 1 und einem Programmspeicher 2 sowie
einer Zeitmeßeinrichtung 5 und einer durch die Selbsttestein
richtung 1 zu testenden Schaltungseinheit 6 dargestellt. Der
Programmspeicher 2 dient zum Speichern von Testprogrammen T,
die über Anschlüsse 3 der integrierten Schaltung IC von au
ßerhalb dieser zuführbar sind. Die Selbsttesteinrichtung 1
ist mit dem Programmspeicher 2 in der Weise verbunden, daß
über die Selbsttesteinrichtung mittels Adressen ADR angespro
chene Programmbefehle C des jeweils im Programmspeicher 2 ge
speicherten Testprogrammes T von diesem an die Selbsttestein
richtung 1 übermittelt werden, die diese dann ausführt. Ent
sprechend dem jeweils zu bearbeitenden Programmbefehl C führt
die Selbsttesteinrichtung 1 der zu testenden Schaltungsein
heit 6 Testsignale S1 zu und empfängt als Reaktion darauf von
dieser Ausgangssignale S2. Weiterhin führt die Selbsttestein
richtung 1 einen Soll-/Ist-Vergleich der von der zu testenden
Schaltungseinheit 6 übermittelten Ausgangssignale S2 mit er
warteten Werten durch und übermittelt entsprechende Ergeb
nissignale R nach außerhalb der integrierten Schaltung IC.
Bei diesem Ausführungsbeispiel übermittelt die Selbsttestein
richtung 1 erst nach Abschluß eines jeweils zu bearbeitenden
Testprogrammes T ein Ergebnissignal R nach außerhalb der in
tegrierten Schaltung, welches angibt, ob während der Ausfüh
rung des Tests ein Fehler aufgetreten ist oder nicht (Fail/No
Fail-Signal). Bei anderen Ausführungsbeispielen ist es auch
möglich, daß auch während der Ausführung des Testprogrammes
ständig Ergebnissignale von der Selbsttesteinrichtung 1 aus
gegeben werden. Außerdem ist es möglich, daß die Ergeb
nissignale detailliertere Informationen beinhalten als ledig
lich diejenige, ob ein Test beständen wurde oder nicht. Diese
zusätzliche Informationen betreffen z. B. Anzahl, Art und/oder
Ort der aufgetretenen Fehler.
Die Selbsttesteinrichtung 1 in Fig. 1 weist weiterhin einen
Eingang 4 für ein Interrupt-Signal I auf. Wird das Interrupt-
Signal I aktiviert, führt dies dazu, daß die Selbsttestein
richtung 1 die Abarbeitung des im Programmspeicher 2 gespei
cherten Testprogrammes T unterbricht und einen Programmsprung
durchführt.
Fig. 2 ist zu entnehmen, daß die Selbsttesteinrichtung 1
nach dem Programmstart die Programmbefehle (Command) C nach
einander abarbeitet, sofern kein Interrupt durch das Inter
rupt-Signal I eingeleitet wird. Wird ein Interrupt eingelei
tet, wird statt des nächstfolgenden Programmbefehles ein In
terrupt-Programmbefehl ausgeführt, der durch einen Programm
sprung innerhalb des abzuarbeitenden Testprogrammes T er
reicht wird. Anschließend werden nachfolgende Interrupt-
Programmbefehle ausgeführt, bis das Unterprogramm beendet
wurde. Anschließend erfolgt ein Rücksprung zum jeweils
nächstfolgenden regulären Programmbefehl.
Fig. 3 sind noch einmal die Selbsttesteinrichtung 1 und der
Programmspeicher 2 aus Fig. 1 zu entnehmen. Die Selbstte
steinrichtung 1 weist einen Befehlszähler 8 auf, der die
Adressen ADR zur Adressierung der einzelnen Programmbefehle C
generiert. Die Abarbeitung des im Programmspeicher 2 gespei
cherten Testprogramms beginnt mit dem an der niedrigsten
Adresse befindlichen Programmbefehl, das heißt am Beginn des
Testprogramms. Daraufhin werden die einzelnen Programmbefeh
le, die über den Befehlszähler 8 adressiert werden, in die
Selbsttesteinrichtung 1 geladen und von dieser ausgeführt.
Sofern das Interrupt-Signal I nicht aktiviert wird, wird das
Testprogramm ohne Unterbrechung bis zum Ende durchlaufen.
Tritt dagegen ein Interrupt auf, erfolgt durch den Befehls
zähler 8 eine Umadressierung, so daß der Programmsprung zu
den Interrupt-Programmbefehlen erfolgt. Nach deren Abarbei
tung erfolgt durch einen Return-Befehl der Rücksprung in das
Hauptprogramm.
Während bei anderen Ausführungsbeispielen der Erfindung das
Interrupt-Signal I über einen externen Anschluß 7 der inte
grierten Schaltung IC zugeführt wird, so daß von extern auf
die Ausführung des Testprogramms durch die Selbsttesteinrich
tung 1 Einfluß genommen werden kann, weist im vorliegenden
Fall die integrierte Schaltung IC die Zeitmeßeinrichtung 5
auf, die in regelmäßigen zeitlichen Abständen das Interrupt-
Signal I liefert beziehungsweise aktiviert. Bei diesem Aus
führungsbeispiel wird jedesmal bei Auftreten des Interrupt-
Signales ein Refresh von dynamischen Speicherzellen der inte
grierten Schaltung IC durchgeführt. Das bedeutet, daß die In
terrupt-Programmbefehle einen durch die Selbsttesteinrichtung
1 ausgelösten Refresh der Speicherzellen ermöglichen. Die
Selbsttesteinrichtung 1 liefert entsprechende Steuersignal
10, die für einen derartigen Refresh benötigt werden, an ein
Speicherzellenfeld 9 der integrierten Schaltung IC. Bei ande
ren Ausführungsbeispielen der Erfindung kann das Speicherzel
lenfeld 9 auch Teil der zu testenden Schaltungseinheit 6 sein
oder mit dieser übereinstimmen. Die Selbsttesteinrichtung 1
dient in solchen Fällen sowohl zum Testen der Speicherzellen
als auch zur Durchführung des Speicherzellen-Refreshs.
Der Interrupt des Testprogrammes ermöglicht beliebige regulä
re Programmbefehle innerhalb des Testprogrammes in beliebiger
Reihenfolge vorzusehen, wobei der Refresh der Speicherzellen
immer sichergestellt ist, sofern das entsprechende Interrupt-
Unterprogramm Bestandteil desselben ist. Hierdurch wird eine
große Flexibilität der Gestaltung des Testprogrammes er
reicht.