Beim Herstellen von integrierten Schaltungen besteht ganz allgemein der Wunsch, diese
auf ihre Funktion hin zu überprüfen. Derartige Tests können durch externe
Testanordnungen vorgenommen werden. Bedingt durch die sehr hohe Integrationsdichte
derartiger Schaltungen, die sehr hohen Taktraten, mit denen diese Schaltungen arbeiten,
und der sehr großen erforderlichen Anzahl von Testvektoren, treten bei dem externen Test
viele Probleme und Kosten auf. Die hohen internen Taktraten der integrierten
Schaltungen stehen in einem ungünstigen Verhältnis zu den vergleichsweise sehr
langsamen Input/Output-Bondpadstufen, die nach außen führen. Daher ist es
wünschenswert, eine Art Selbsttest des integrierten Schaltkreises durchführen zu können. Dabei ist
innerhalb des integrierten Schaltkreises eine Selbsttest-Schaltung vorgesehen, welche dazu
dient, die in dem integrierten Schaltkreis ebenfalls vorgesehene Applikationsschaltung zu
testen. Die Applikationsschaltung stellt diejenige Schaltung dar, die für den eigentlichen
Einsatzzweck des integrierten Schaltkreises vorgesehen ist.
Als weiteres Problem treten beim Testen derartiger Schaltungen Probleme mit solchen
Bauteilen innerhalb der Schaltung auf, die beim Testen ein sogenanntes "X" produzieren,
d. h. ein Signal, welches nicht eindeutig auswertbar ist. Solche Signale produzieren
insbesondere solche Bauteile, die ein analoges oder ein Speicherverhalten aufweisen.
Z. B. RAMs, die innerhalb der Applikationsschaltung vorgesehen sind, können beliebige
Ausgangssignale produzieren. Damit sind Signale, die ein derartiges RAM produziert und
die durch die Schaltung propagiert werden am Ausgang der Schaltung beim Testen nicht
mehr eindeutig auswertbar.
Zur Umgehung dieser Problematik ist es nach dem Stande der Technik bekannt, innerhalb
der Schaltung spezielle Bauelemente vorzusehen, die beim Testen ein Umgehen derartiger
Bauelemente oder ein Maskieren der Ausgänge dieser Bauelemente gestatten. Hierbei
besteht der Nachteil, dass zusätzliche Bauelemente innerhalb der Schaltung vorgesehen
werden müssen, was einerseits einen erhöhten Aufwand und andererseits eine spezielle
Auslegung der Schaltung mit ggf. auftretenden Nachteilen zur Folge hat.
Aus der Veröffentlichung "Using BIST control for pattern generation" von Gundolf Kiefer
und Hans-Joachim Wunderlich (veröffentlicht in Procedings International Testconference
1997) ist ein integrierter Schaltkreis mit einer zu testenden Applikationsschaltung und
einer Selbsttest-Schaltung bekannt, welche deterministische Testmuster liefert. Dies wird
dadurch erreicht, dass zusätzlich zu einem Testmustergenerator, bei dem es sich um ein
rückgekoppeltes Schieberegister handelt und der Pseudo-Zufallsmuster liefert, eine Logik
vorgesehen ist, die das Ausgangssignal dieses Testmustergenerators so verändert, dass
bestimmte deterministische Testmuster entstehen. Damit kann erreicht werden, dass die
Schaltung mit vorgebbaren Testmustern geprüft werden kann und nicht nur mit solchen,
die quasi zufällig durch den Testmustergenerator vorgegeben werden.
Es ist Aufgabe der Erfindung, den eingangs genannten integrierten Schaltkreis
dahingehend weiterzuentwickeln, dass eine Prüfung der Applikationsschaltung mit
deterministischen Testmustern möglich ist, und dass gleichzeitig innerhalb der Schaltung auftretende
X-Signale beim Testen das Prüfergebnis nicht stören, wobei innerhalb der
Applikationsschaltung keine zusätzlichen Bauelemente vorgesehen sein sollen.
Diese Aufgabe wird erfindungsgemäß durch die Merkmale des Patentanspruchs 1 gelöst:
Integrierter Schaltkreis mit einer zu testenden Applikationsschaltung und einer Selbsttest-
Schaltung, welche zum Testen der Applikationsschaltung vorgesehen ist und welche
Pseudo-Zufallstestmuster erzeugt, die mittels erster Logik-Gatter und diesen von extern
zugeführter Signale in deterministische Testvektoren umformbar sind, die der
Applikationsschaltung für Testzwecke zugeführt werden, wobei die durch die
Applikationsschaltung in Abhängigkeit der Testmuster auftretenden Ausgangssignale
mittels eines Signaturregisters ausgewertet werden, wobei mittels zweiten Logik-Gattern
und diesen von extern zugeführten Signalen beim Testen diejenigen Bits der
Ausgangssignale der Applikationsschaltung gesperrt werden, die aufgrund des
Schaltungsaufbaus der Applikationsschaltung undefinierte Zustände aufweisen.
Die von der Selbsttest-Schaltung generierten Pseudo-Zufallstestmuster sind zunächst noch
nicht als Testvektoren geeignet. Vielmehr werden diese mittels erster Logik-Gatter in die
gewünschtendeterministischen Testvektoren umgewandelt. Dies ist möglich mittels den
ersten Gattern von extern zugeführten Signalen, welche so ausgelegt sind, daß sich durch
die Kombination der Pseudo-Zufallstestmuster und der von extern zugeführten Signale
mittels der ersten Logik-Gatter die gewünschten deterministischen Testvektoren ergeben.
Diese Testmuster werden der Applikationsschaltung zugeführt, die die Testvektoren
bedingt durch den Aufbau der Applikationsschaltung verändert. Die dadurch beim Testen
entstehenden Ausgangssignale der Applikationsschaltung werden über zweite logik-Gatter
auf das Signaturregister gekoppelt. Das Signaturregister verknüpft diese Ausgangssignale,
die aus mehrere Testzyklen kommen zu einem Gesamtendergebnis, welches eine Art
Signatur darstellt und welches angibt, ob die Schaltung störungsfrei arbeitet.
Bei dieser Vorgehensweise entstehen jedoch dann Probleme, wenn in der
Applikationsschaltung fast immer vorgesehene Bauelemente, die ein analoges oder ein
Speicherverhalten aufweisen, die Ausgangssignale der Applikationsschaltung beim Testen
beeinflussen. Es entstehen dann sogenannte X-Signale, die ein "Don't care-Ergebnis"
liefern. Mit anderen Worten, sind mit einem derartigen X markierte Signale zufällig und
daher nicht auswertbar. Damit entstehen für derartige Signale in dem Signaturregister
ebenfalls nicht auswertbare Werte. Dies ist zu vermeiden.
Erfindungsgemäß wird dies dadurch erreicht, dass mittels der zweiten Logik-Gatter und
diesen von extern zugeführten Signalen alle diejenigen Bits in den Ausgangssignalen der
Applikationsschaltung, die potentiell derartige X-Signale beinhalten, gesperrt werden. Es
werden also alle diejenigen Bits nicht an das Signaturregister weitergegeben, die durch ein
speicherndes bzw. analoges Verhalten von Bauelementen innerhalb der
Applikationsschaltung beeinflusst sind. Nur die übrigen von derartigen Bauelementen
nicht beeinflussten Bits werden mittels der zweiten Logik-Gatter an das Signaturregister
durchgeschaltet.
Damit ist sichergestellt, dass diejenigen Bits, die das Signaturregister beim Testen
erreichen, durchweg auswertbar sind. Dies wiederum bedeutet, dass das Signaturergebnis,
das in dem Signaturregister nach dem Durchlauf mehrerer Testzyklen steht, vollständig
auswertbar ist, und ein sicheres Testergebnis liefert.
Ein wesentlicher Vorteil des erfindungsgemäßen integrierten Schaltkreises mit Selbsttest-
Schaltung besteht darin, dass die Applikationsschaltung für die Testvorgänge nicht
modifiziert werden muss, d. h. sie kann so aufgebaut werden, wie es für die Anwendung
der Applikationsschaltung optimal ist. Die Selbsttest-Schaltung beeinflusst die normale
Arbeitsweise der Applikationsschaltung in ihrer Anwendung in keiner Weise.
Weiterhin gestattet es die erfindungsgemäße Selbsttest-Schaltung, einen Test der
Applikationsschaltung auf dem Chip vorzunehmen, so dass relativ langsame Ausgangs-
Bondpadverbindungen das Testen nicht stören und der Betrieb der Applikationsschaltung
mit maximalen Taktraten der Eingangs-Bondpaads vorgenommen werden kann.
Die auf dem integrierten Schaltkreis vorgesehene Selbsttest-Schaltung ist sehr einfach
aufgebaut und benötigt selbst wenig Fläche. Die deterministischen Testvektoren können
auch noch nach Fertigstellung des ICs noch verändert werden.
Gemäß einer Ausgestaltung der Erfindung nach Anspruch 2 dient ein in der
Selbsttestschaltung vorgesehenes lineares rückgekoppeltes Schieberegister der Erzeugung der Pseudo-
Zufalls-Testmuster, die somit bekannt sind und mittels der ersten Logik-Gatter in die
gewünschten deterministischen Testvektoren umwandelbar sind.
Nachfolgend wird anhand der einzigen Figur der Zeichnung ein Ausführungsbeispiel der
Erfindung näher erläutert.
Die Figur zeigt in einem schematischen Blockschaltbild einen integrierten Schaltkreis 14,
welcher eine Applikationsschaltung 1 aufweist. Bei dieser Applikationsschaltung 1 handelt
es sich um diejenige Schaltung, welche für den Einsatz des integrierten Schaltkreises 14
konzipiert ist.
Es besteht der Wunsch, die Applikationsschaltung 1 nach der Fertigung des integrierten
Schaltkreises 14 auf einwandfreie Funktion hin zu testen. Dazu ist auf dem integrierten
Schaltkreis 14 eine Selbsttest-Schaltung vorgesehen, welche aus den Schaltungselementen 5
bis 13 gemäß der Figur besteht.
In dem erfindungsgemäßen integrierten Schaltkreis 14 ist diese Selbsttest-Schaltung so
ausgelegt, dass sie vollständig außerhalb der Applikationsschaltung 1 aufgebaut ist, und
damit deren Verhalten in dem normalen Betrieb nicht beeinflusst.
In dem Ausführungsbeispiel gemäß der Figur wird davon ausgegangen, dass die
Applikationsschaltung 1 drei Schaltungsketten 2, 3 und 4 aufweist, bei denen es sich um
Schieberegister handelt. Es können auch weitere Schieberegister vorgesehen sein. Ferner
können weitere Schaltungselemente vorgesehen sein.
Innerhalb der Selbsttest-Schaltung ist ein lineares rückgekoppeltes Schieberegister 5
vorgesehen, welches eine Pseudo-Zufallsfolge von Testmustern liefert. Da das
Schieberegister 5 rückgekoppelt ist und nur endliche Länge hat, ist diese Testmusterfolge nicht
wirklich zufällig, sie weist ein nach bestimmten Abständen sich wiederholendes Muster
auf. Jedoch hat diese Testmusterfolge den Nachteil, dass sie nicht vollständig alle
Testmuster gezielt enthält, die für das Testen der Applikationsschaltung 1 optimal sind.
Daher sind erste Logik-gatter 6, 7 und 8 vorgesehen, welche die Ausgangssignale des
linearen rückgekoppelten Schieberegisters 5 so verändern, dass an den Ausgängen der
ersten Logik-Gatter 6, 7 und 8 und damit an den Eingängen der Applikationsschaltung 1
bzw. deren Schaltungsketten 2, 3 bzw. 4 Testmuster entstehen, die eine vorgebbare und
deterministische Struktur haben. Dies wird dadurch erreicht, dass den ersten Logik-
Gattern 6, 7 und 8 von einer außerhalb des inetgrierten Schaltkreises vorgeshenen
Testanordnung 15 Signale zugeführt werden mittels derer die ersten Logik-Gatter 6, 7 und
8 einzelne Bits der von dem linearen rückgekoppelten Schieberegister 5 gelieferten
Testmuster so modifizieren, dass gewünschte, deterministische Testmuster entstehen. Die
extern vorgesehene Testanordnung wird nur beim Testen des integrierten Schaltkreises
benötigt; im normalen Betreib des integrierten Schaltkreises ist diese nicht vorhanden.
Die Testvektoren werden in dem Ausführungsbeispiel gemäß der Figur den
Schaltungsketten 2, 3 und 4 innerhalb der Applikationsschaltung 1 zugeführt.
Aufgrund dieser Testmuster liefern die Schaltungsketten 2, 3 und 4 innerhalb der
Applikationsschaltung 1 Ausgangssignale, welche über zweite Logik-Gatter 10, 11 und 12
auf ein Signaturregister 13 gelangen.
Das Signaturregister 13 ist so ausgelegt, dass es über mehrere Testzyklen, die jeweils ein
Testmuster enthalten, hinweg eine Verknüpfung der Testergebnisse vornimmt und nach
dem Testdurchlauf eine sogenannte Signatur liefert, welche bei störungsfreier Arbeitsweise
der Applikationsschaltung 1 einen bestimmten vorgegebenen Wert aufweisen muss.
Hierbei besteht jedoch das Problem, dass in der Applikationsschaltung 1 bzw. innerhalb
deren Schaltungsketten 2, 3 und/oder 4 Schaltungselemente vorgesehen sein können (und
meist auch tatsächlich sind), welche ein analoges oder ein Speicherverhalten aufweisen.
Derartige Schaltungselemente liefern kein eindeutiges Ausgangssignal, d. h. sie liefern in
Abhängigkeit des ihnen zugeführten Eingangssignals kein deterministisches
Ausgangssignal. Vielmehr ist ihr Ausgangssignal zufällig. Es ist klar, dass derartige Signale
das Testergebnis nicht nur stören, sondern bestimmte Bits innerhalb des Testergebnisses
unbrauchbar machen.
Um dennoch mittels eines möglichst einfachen Aufbaus einen Test der
Applikationsschaltung 1 auch mit derartigen Bauelementen vornehmen zu können, sind in der
erfindungsgemäßen Schaltung zweite Logik-Gatter 10, 11 und 12 vorgesehen, welche in
Abhängigkeit von der externen Testanordnung 15 erzeugter Signale in der Lage sind,
einzelne Bits der von den Schaltungsketten 2, 3 und 4 beim Testen gelieferter Signale zu
sperren, dass nur diejenigen Bits beim Testen an das Signaturregister 13 gelangen, die
nicht von Bauelementen mit speicherndem oder analogem Verhalten beeinflusst sind.
Im Ergebnis gelangen damit nur solche Bits an das Signaturregister 13, die eindeutig
auswertbar sind und ein eindeutiges Ergebnis liefern. Somit kann auch dann, wenn die
Applikationsschaltung 1 Bauelemente mit speicherndem oder analogem Verhalten
aufweist, am Ende des Testens in dem Signaturregister 13 eine eindeutige Signatur generiert
werden, welche fehlerfrei ein Testergebnis angibt.
Bei der externen Testanordnung 15 kann es sich um eine konventionelle Testanordnung
handeln, die hier jedoch nicht selbst die Testvektoren liefert und die auch keine
Auswertung vornimmt, sondern die solche Signale liefert, daß innerhalb der auf dem
integrierten Schaltkreis vorgesehenen Selbsttestschaltung die gewünschten Testvektoren
aus der Pseudozufalls-Zahlenfolge generierte werden und daß aus den Ausgangssignalen
der zu testenden Schaltung 1 diejenigen Bits ausgeblendet werden, die nicht auswertbar
sind.
Insgesamt wird durch die erfindungsgemäße Selbsttest-Schaltung ein Testen der
Applikationsschaltung 1 auf dem Chip möglich, ohne dass hierbei irgendwelche
Einschränkungen bestehen. Es ist keine Modifikation der Applikationsschaltung 1
erforderlich, so dass diese für ihren eigentlichen Betrieb optimal ausgelegt werden kann. Alle
Testvorgänge sind auch für solche Applikationsschaltungen uneingeschränkt möglich, die
Bauelemente mit speicherndem oder analogem Verhalten aufweisen. Die gewünschten,
deterministischen Testvektoren können auch nach Fertigung des integrierten Schaltkreises
noch verändert werden.