DE4305442C2 - Verfahren und Vorrichtung zum Erzeugen eines Testvektors - Google Patents
Verfahren und Vorrichtung zum Erzeugen eines TestvektorsInfo
- Publication number
- DE4305442C2 DE4305442C2 DE4305442A DE4305442A DE4305442C2 DE 4305442 C2 DE4305442 C2 DE 4305442C2 DE 4305442 A DE4305442 A DE 4305442A DE 4305442 A DE4305442 A DE 4305442A DE 4305442 C2 DE4305442 C2 DE 4305442C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- sequence
- counter
- address
- test
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31919—Storing and outputting test patterns
- G01R31/31921—Storing and outputting test patterns using compression techniques, e.g. patterns sequencer
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/31813—Test pattern generators
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31926—Routing signals to or from the device under test [DUT], e.g. switch matrix, pin multiplexing
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
Description
Die vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zum
Erzeugen eines Testvektors. Allgemein ausgedrückt bezieht sich die Erfindung auf ein
strukturelles Konzept, welches bei einem Testgerät oder Tester für integrierte Schaltungen
(IC-Tester), bei einem Platinengerät oder bei einer ähnlichen Testgeräteschaltung
verwendet wird. Im Falle von Testgeräten für integrierte Schaltungen befaßt sich die
Erfindung insbesondere mit solchen Testgeräten, die zum Testen von Speichern oder von
integrierten Komponenten mit logischen Funktionen und Speicherfunktionen, wie
beispielsweise ASICs, entworfen sind.
Obwohl sich die vorliegende Erfindung mit sämtlichen Arten von Testgeräten für
elektronische Schaltungen befaßt, werden die in diesem Zusammenhang stehenden
Probleme, die den Ausgangspunkt der vorliegenden Erfindung bilden, zunächst für den Fall
von Testgeräten für integrierte Schaltungen diskutiert.
Testgeräte für integrierte Schaltungen dienen allgemein zum Testen der Funktionsfähigkeit
von integrierten Schaltungen vor ihrem Einsatz oder ihrer Installation in einer Anordnung,
wie beispielsweise ihrer Lötbefestigung auf einer Schaltungsplatine. Falls eine Fehlfunktion
eines ICs nur auf der Platinenebene (beispielsweise mittels eines Platinentestgerätes)
erfaßbar wäre, bestünde die Notwendigkeit, die bestückte Platine wegzuwerfen, oder es
würde zumindest das Erfordernis von kostenträchtigen Maßnahmen, wie beispielsweise der
Entfernung eines defekten ICs auftreten. Daher gewährleisten Testgeräte für integrierte
Schaltungen, daß defekte ICs in einer frühen Stufe des Zusammenbaus erfaßt
werden. Dieser Aspekt wird mit zunehmender Integration, d. h. bei ansteigender
Packungsdichte von Halbleiterchips immer bedeutender.
In der Vergangenheit wurden verschiedene Konzepte zum Testen von integrierten
Schaltungen mit Logikschaltungen und integrierten Schaltungen mit Speichern verwendet.
Die erste Gerätegruppe wurde oftmals als "LSI-Testgeräte" bzw. "LSI-Tester" bezeichnet,
während die zweite Gerätegruppe als Speichertestgeräte bzw. Speichertester bezeichnet
worden ist.
Ein anderer Ansatz der Klassifizierung von Testgeräten für integrierte Schaltungen geht von
deren interner Struktur aus. Zwei allgemeine Konzepte sind im Stand der Technik bekannt,
nämlich der Ansatz der "geteilten Quelle" und der Ansatz der "verteilten Quelle" bzw. der
"Quelle pro Pin".
Es sei angemerkt, daß Testgeräte für integrierte Schaltungen eine logische Schaltung
umfassen, die einem speziellen Anschluß (Pin) des zu testenden Gerätes (dem
sogenannten "Prüfling") zugeordnet ist. Mit anderen Worten existiert die gleiche Art der
logischen Schaltung mehrfach innerhalb eines Testgerätes für integrierte Schaltungen, und
zwar jeweils einmal für jeden Pin des Prüflings. Wenn das Testgerät für integrierte
Schaltungen zum Testen von Prüflingen mit einer Maximalzahl von n Pins eingerichtet ist,
bedeutet dies, daß die Pinschaltung n-fach vorgesehen sein muß. n kann in Hinblick auf
aktuelle Halbleiterchips und die hiermit in Beziehung stehende Packungstechnologie den
Wert von einigen Hundert bedeuten oder sogar einige Tausend überschreiten.
Die Pinschaltung (der Pin-Kanal oder der Anschlußkanal) umfaßt allgemein
Treiberschaltungen für den zugeordneten Pin sowie in der Regel gleichfalls
Formatierungsschaltungen und Komparatorschaltungen. Die letztgenannten Schaltungen
sind solche, welche Dateninformation und Informationen über das Zeitverhalten
kombinieren (Formatierungsschaltung) oder solche, weiche ein von, dem zugeordneten
Anschluß empfangenes Signal bezüglich seines Zeitverhaltens und seines korrekten
logischen Zustandes überprüfen (Komparatorschaltung). Es, wird diesbezüglich auf
folgende Schriften hingewiesen: EP 329 798 B1, die eine Formatierungsschaltung der in der
vorliegenden Anmeldung diskutierten Art beschreibt, sowie, DE 33 46 942 C1, EP 325
670 B1, soweit Komparatorschaltungen betroffen sind.
Es gibt jedoch auch Schaltungen, die nicht notwendigerweise einem jeden Pin
eines Prüflings zugeordnet werden müssen, wie beispielsweise verschiedene
Steuerschaltungen. "Geteilte Quelle" bedeutet in diesem Zusammenhang, daß die
Steuerschaltung oder ein Teil der Steuerschaltung zwischen mehreren Pins
geteilt wird. Beispielsweise kann die Steuerschaltung lediglich einmal vorgesehen
sein und mit den Pinkanälen (Anschlußkanälen) über einen gemeinsamen Bus
kommunizieren. Hierdurch wird das Erfordernis der Vervielfachung der
Steuerschaltung für jeden Pin des Prüflings eliminiert. Jedoch geht dies mit
etlichen Entwurfsbeschränkungen und insbesondere mit Geschwindigkeitsbe
schränkungen einher.
Im Gegensatz hierzu stellt der Lösungsansatz der "Quelle pro Schaltung" eine
Steuerschaltung oder zumindest einen bezüglich der Geschwindigkeit kritischen
Teil der Steuerschaltung für jeden Pinkanal bereit. Dieser Ansatz mag dazu
geeignet sein, die oben beschriebenen Geschwindigkeitseinschränkungen zu
überwinden. Jedoch kann dieser Ansatz mit ausgesprochen hohen Kosten
einhergehen, da die Steuerschaltung n-fach geschaffen werden muß.
Gelegentlich werden noch nicht einmal die Anforderungen eines speziellen
Anwendungsfalles durch die Geschwindigkeit der "Quelle pro Schaltung" erfüllt.
Im Fall eines klassischen Speichertestgerätes wird ein zentraler algorithmischer
Mustergenerator (als geteilte Quelle für sämtliche Pinkanäle) vorgesehen. Der
algorithmische Mustergenerator ist ein äußerst komplexes und kostenträchtiges
Gerät, welches aus mehreren Platinen oder zumindest speziell entworfenen ICs
(ASICs) besteht. Typischerweise bildet er einen ersten Generator für die
x-Adressen des Prüflings, einen zweiten Generator für die y-Adressen sowie
einen (dritten) Datengenerator und eine Steuerung. Die Betriebsweise dieser
Vorrichtungen kann durch die Erzeugung eines Null-Musters in dem Prüfling
verdeutlicht werden. In diesem Fall erzeugt der Datengenerator eine permanente
"0". Der x-Adressgenerator läuft in diesem Fall von "0" bis zu einer vorgegebenen
Endadresse, während der y-Adressgenerator seinen Wert beibehält. Sobald der
x-Adressgenerator seine Endadresse erreicht, wird er auf "0" rückgesetzt. Der
y-Adressgenerator wird um Eins inkrementiert, woraufhin der x-Adressgenerator
erneut von "0" bis zu seiner Endadresse läuft. Der gesamte Prozeß läuft weiter,
bis sämtlich Zellen des Prüflings eine "0" enthalten.
Die Steuerung eines derartigen bekannten algorithmischen Mustergenerators
umfaßt einen programmierbaren Speicher, welcher die zu erzeugenden
Sequenzen enthält, oder ein Programm, welches derartige Sequenzen generiert.
Ein Testgerät, welches insbesondere gemäß dem Lösungsansatz der "geteilten
Quelle" entworfen ist, ist beispielsweise in der US 4,450,560 offenbart.
Es versteht sich, daß aufgrund des Zusammenhanges zwischen den Steuer
signalen und den durch diese verursachten Ausbreitungsverzögerungszeiten ein
algorithmischer Mustergenerator von bekannter Bauweise nur mit einer
begrenzten Geschwindigkeit arbeiten kann. Dies gilt sogar dann, wenn sehr
schnelle und teuere algorithmische Mustergeneratoren verwendet werden, wie
dies allgemein im Stand der Technik praktiziert worden ist.
Daher werden durch bekannte Speichertestgeräte unter Verwendung des
Konzeptes der "geteilten Quelle" nicht die Bedürfnisse bezüglich des Testens von
Speichern mit hinreichender Geschwindigkeit erfüllt. Dies gilt insbesondere bei
ansteigender Speicherkapazität. sowie im Falle der Erhöhung der Testrate.
Ein weiteres Problem tritt auf, weil eine zunehmende Anzahl von integrierten
Schaltungen logische Schaltungen sowie Speicher auf dem gleichen Chip
enthalten. Dies trifft insbesondere auf speziell nach Kundenwunsch entworfene
integrierte Schaltungen, wie beispielsweise ASICs zu. Es wäre so gut wie
unmöglich, derartige Schaltungen mit bekannten IC-Testgeräten zu testen, welche
speziell für einen Speichertest oder einen Logiktest innerhalb eines gegebenen
Zeitrahmens entworfen sind. Sogar ein kombiniertes Testgerät, welches sowohl
eine Speichertestschaltung wie auch eine Logiktestschaltung beinhaltet, würde
nicht derartige Anforderungen erfüllen. Ein derartiges Testgerät müßte
unterschiedliche Schaltungen für als Logikpins bezeichnete Pins im Gegensatz
zu als Speicherpins bezeichneten Pins enthalten. Da jedoch die Bezeichnung
bzw. Bestimmung eines ASIC-Pins nicht vorgegeben ist, und da unterschiedliche
ASICs unterschiedliche Pinbestimmungen haben, bestünde ein andauerndes
Bedürfnis, die Pinkanäle und ihre Verbindung mit einer zentralen Quelle
auszutauschen oder erneut anzuordnen. Schlimmer noch, es gibt integrierte
Schaltungen, deren Pindefinition sich während des Betriebes ändert. Derartige
Geräte könnten mit kombinierten Speicher-/IC-Testgeräten überhaupt nicht
getestet werden.
Das oben beschriebene US-Patent 4,450,560 offenbart einen Ansatz eines
kombinierten Logik-/Speicher-Testgerätes, bei dem ein Schalter zum Umschalten
zwischen den beiden Betriebsarten vorgesehen ist. Jedoch ist dieser Schalter
komplex und teuer und vermindert die Betriebsgeschwindigkeit.
Die Geschwindigkeit wird ferner vermindert, da dieses bekannte Testgerät das Konzept der
"geteilten Quelle" verwendet. Ferner ist dieses bekannte Testgerät nicht dazu in der Lage,
mit den sich ändernden Pindefinitionen innerhalb hinnehmbarer Zeitgrenzen fertig zu
werden.
In diesem Zusammenhang ist es wichtig, anzumerken, daß sämtliche bekannten logischen
Testgeräte (LSI-Testgeräte) auf einem im Vergleich mit Speichertestgeräten
unterschiedlichen Konzept beruhen. Ein sogenannter Sequenzer (welcher im wesentlichen
ein Zähler mit einigen zusätzlichen Steuerschaltungen in der Weise ist, daß er Sprünge,
Unterroutinen usw. ausführen kann) erzeugt Adressen, die einem Speicher zugeführt
werden. Der Speicher, der nachfolgend als "Vektorspeicher" bezeichnet wird, dekodiert die
Adressen und führt die an den entsprechenden Adressen gespeicherten Daten einer Pin-
spezifischen Schaltung zu, welche üblicherweise als "Formatierer-/Komparator-Schaltung"
bezeichnet wird. Der Formatierer verarbeitet die von dem Vektorspeicher empfangenen
Daten und verbindet diese mit Informationen über das Zeitverhalten, welche üblicherweise
durch Flankengeneratoren erzeugt werden. In ähnlicher Weise überprüft der Komparator
die von dem Prüfling erzeugten Daten bezüglich der Genauigkeit ihres Zeitverhaltens sowie
bezüglich ihres korrekten logischen Zustandes. Sowohl der Formatierer also auch der
Komparator sind mit einem einzigen Pin des Prüflings verbunden.
Bekannte Logiktestgeräte verwendeten auch den Ansatz der geteilten Quelle, d. h. es wurde
ein Sequenzer als zentrale Quelle vorgesehen, während die Vektorspeicher, die
Formatierer und die Komparatoren pro Pin vorgesehen worden sind. Dieses Konzept ist
den gleichen Beschränkungen bezüglich des
Zeitverhaltens unterworfen, wie dies bei Speichertestgeräten unter Verwendung
des Konzeptes der geteilten Quelle der Fall war. Daher wurden Logiktestgeräte
auf der Grundlage des Ansatzes "pro Pin" entwickelt. Dies bedeutet, daß ein
spezifischer Sequenzer für jeden Pinkanal vorgesehen worden ist. Die
verschiedenen "Pin"-Sequenzer waren sämtlich identisch, d. h. sie führten das
gleiche Programm aus. Die Anpassung an den spezifischen Pin wurde durch
unterschiedliche Daten, die in den jeweiligen Vektorspeichern gespeichert worden
sind, erreicht. Dieses Konzept war kommerziell erfolgreich, da ein Sequenzer
eine relativ einfache und billige Einheit ist, so daß sogar eine Vielzahl von
Sequenzern nicht in einem nennenswerten Maß den Gesamtpreis des
Logiktestgerätes erhöht.
Jedoch waren sämtliche dieser bekannten Lösungen nicht für ein kombiniertes
IC-Testgerät geeignet, welches definitionsgemäß dazu in der Lage sein sollte,
eine gemischte Logik-/Speicher-Schaltung, wie beispielsweise die oben
beschriebenen ASICs, zuverlässig und schnell sogar dann zu testen, wenn sich
die Pindefinitionen über der Zeit oder von IC zu IC ändern. Daher besteht ein
Bedarf an derartigen Testgeräten.
Gleichfalls besteht ein anhaltender Bedarf an Speichertestgeräten, welche mit
einer höheren Betriebsgeschwindigkeit als bekannte Speichertestgeräte arbeiten
und dennoch einen vernünftigen Preis haben. Die Erfindung stellt auf Lösungen
dieser beiden zugrundeliegenden Probleme ab.
Es wäre gleichfalls wünschenswert, ein Logiktestgerät zur Verfügung zu haben,
welches schneller als bekannte Logiktestgeräte arbeitet und weniger Hardware
als diese erfordert.
Es sei angemerkt, daß ähnliche Probleme innerhalb des Gebietes der
Platinentestgeräte sowie anderer Testvorrichtungen für elektronische Geräte
existieren. Beispielsweise werden Platinentestgeräte entweder für den Test
"blanker" Platinen, d. h. unbestückter Platinen, bei denen lediglich die elektrischen
Verbindungen von Interesse sind, oder für bestückte Platinen vorgesehen.
Während der erste Fall trivial ist, erfordert der zweite Fall eine umfangreiche
Testschaltung, da die auf der Platine vorgesehenen Komponenten eine Vielzahl
von Funktionen erfüllen können. Es sei angemerkt, daß Platinentestgeräte in
diesem Sinne noch komplexer als Testgeräte für integrierte Schaltungen sein
können, da eine Platine mit Komponenten von unterschiedlicher Technologie,
d. h. mit digitalen Logikschaltungen, Speichern, analogen Schaltungen und
dergleichen bestückt sein kann. Daher besteht gleichfalls ein Bedarf an einem
Platinentestgerät, welches hinreichend schnell ist und sämtliche Funktionen auf der Platine
bei einem vernünftigen Preis testen kann.
Die US 4639919 offenbart eine Schaltung zum Testen von Halbleiterschaltungen mittels
Testvektoren, die an Eingangsanschlüsse der zu testenden Schaltungen angelegt werden,
welche eine zentrale programmierbare Steuerschaltung umfaßt, welcher pro Pin-Kanal je
ein Mustergenerator nachgeschaltet ist.
Die US 5,001,418 zeigt ein Verfahren zum Komprimieren von Datenvektoren für eine
Testschaltung für Platinen aufgrund eines zweischrittigen Kompressionsverfahrens, das
eine anfängliche Kompression und eine nachfolgende K-T-Transformation der
Datenvektoren umfaßt. Hierdurch soll die erforderliche Speichergröße vermindert werden,
die ohne Datenkompression erforderlich wäre, um das Ergebnis eines Testlaufs bei der
Überprüfung der Schaltungsplatine anhand der Eingangsvektoren und der zugeordneten
Ausgangsvektoren abzuspeichern.
Die EP 0474275A2 zeigt eine Testschaltung, die nach dem "Pro-Pin-Ansatz" organisiert ist und
für jeden Pin der zu testenden Schaltung eine Schaltungsstruktur aufweist, die Speicher,
Register und Logikschaltungen umfaßt, wobei Testdaten von einer zentralen Schaltung in
jede der Pin-orientierten Schaltungen gelagert werden.
Der Offenbarungsgehalt der oben gewürdigten Entgegenhaltungen kann also dahingehend
zusammengefaßt werden, daß es zum Testen von elektronischen Schaltungen bekannt ist,
die Testvorrichtung mit einer Pin-Weise gegliederten Architektur aufzubauen, so daß sie
eine pro Anschlußkanal sich wiederholende Struktur hat.
Die EP 474274A2 offenbart ein Testsystem mit einem globalen Sequenzer und einer Mehrzahl
von lokalen Sequenzern. Jeder der lokalen Sequenzer ist mit einem getrennten Pin oder
einer getrennten Anschlußleitung der integrierten Schaltung gekoppelt. Die lokalen
Sequenzer sprechen auf Signale an, die von dem globalen Sequenzer erzeugt werden.
Jeder der fokalen Sequenzer umfaßt einen Ereignissequenz-Speicher zum Erzeugen von
spezifierten Ereignissen
auf der Basis der von dem globalen Sequenzer empfangenen Signalen. Somit wird ein
Entwurf eines Vektorgenerators offenbart, welcher auf dem Lösungsansatz von einer
Testeinheit pro Pin, d. h. dem "Pro-Pin"-Ansatz basiert. Das Testsystem wird verwendet um
VLSI-Bauelemente oder Logikschaltungen zu testen.
Ausgehend von diesem Stand der Technik besteht die Aufgabe der vorliegenden Erfindung
darin, ein Verfahren und eine Vorrichtung zum Erzeugen von Testvektoren zum Testen
einer Speicherschaltung oder einer gemischten Logik/Speicherschaltung zu schaffen,
welche eine einheitliche Auslegung der Anschlußkanäle für Adreßanschlüsse und
Datenanschlüsse erlaubt. Die Aufgabe wird gelöst durch die Merkmale der unabhängigen
Ansprüche 1 und 3. Bevorzugte Ausführungsformen finden sich in den abhängigen Ansprüchen.
Um das Konzept der Erfindung zu erläutern und um die die Erfindung ausmachenden
Merkmale zu verdeutlichen, ist es sinnvoll, die Ausführungsform zu betrachten welche
tatsächlich realisiert wurde.
Es bestand ein Bedürfnis an einem kombinierten Logik-/Speicher-Testgerät, welches
weder komplizierte noch teure Hardware erfordert, um zwischen LSI-Testdaten und
Speichertestdaten umzuschalten. Ähnliche Erfordernisse bestehen hinsichtlich eines
Speichertestgeräts als solchem.
Ein Ansatz, der durch die Erfinder in Betracht gezogen worden ist besteht darin, den "pro-
Pin"-Ansatz gleichfalls bei einem Speichertestgerät zu verwenden. Dies
würde bedeuten, daß ein algorithmischer Mustergenerator gleichfalls pro Pinkanal
vorgesehen sein müßte (dies ist ähnlich verglichen mit dem "pro Pin"-Ansatz bei
einem Logiktestgerät, bei dem ein Sequenzer für jeden Pin vorgesehen ist).
Jedoch sei angemerkt, daß es zwei grundlegende Beschränkungen gibt, die die
Anwendbarkeit dieses Konzeptes begrenzen:
Einerseits ist ein Sequenzer eine relativ billige Komponente, die ohne weiteres
mehrfach vorgesehen sein kann. Im Gegensatz hierzu ist ein algorithmischer
Mustergenerator, der für das Speichertesten erforderlich ist, ausgesprochen
komplex und teuer, so daß ein Testgerät mit einigen Hundert von bekannten
algorithmischen Mustergeneratoren kaum verkäuflich wäre. Dieses Ergebnis
resultiert teilweise aus der Tatsache, daß ein Sequenzer lediglich einzelne
Adressen erzeugt, die für die "pro Pin"-Vektorspeicher in einem logischen
Testgerät verwendbar sind, während ein algorithmischer Mustergenerator x- und
y-Adressen für sämtliche Speicherzellen erzeugt, obwohl in einer
"pro-Pin"-Architektur lediglich ein einziges Bit benötigt wird. Mit anderen Worten
führt eine Struktur mit einem algorithmischen Mustergenerator pro Pin zu einem
beträchtlichen Wasserkopf.
Zweitens sei angemerkt, daß sogar das Vorsehen eines algorithmischen
Mustergenerators pro Pin des Prüflings nicht das Problem des Testens von
Prüflingen mit kombinierter Logik-/Speicher-Funktionalität lösen würde. Der Test
von Logik-/Speicher-Vorrichtungen zeigt einen weiteren Nachteil der Philosophie
"ein algorithmischer Mustergenerator pro Pin". Dieser Nachteil besteht darin, daß
je ein algorithmischer Mustergenerator für jeden Pin vorgesehen sein muß,
obwohl die meisten der Pins von kombinierten Geräten oder Prüflingen
üblicherweise Logikpins sind. Obwohl sich die Pindefinition sowohl von ASIC zu
ASIC als auch während des Betriebes ändern kann, bestünde immer noch ein
Erfordernis, einen algorithmischen Mustergenerator für jeden Pin einfach
aufgrund der Möglichkeit vorzusehen, daß der betreffende Pin in bestimmten
Situationen als Speicherpin arbeiten könnte. Die letztgenannten Betrachtungen
verdeutlichen weiter den Wasserkopf, der durch das Konzept "ein algorithmischer
Mustergenerator pro Pin" erzeugt wird. Daher ist es kaum zu erwarten, daß
Speichertestgeräte oder Logik-/Speicher-Testgeräte auf der Grundlage des
Konzeptes "ein algorithmischer Mustergenerator pro Pin" vermarktet werden
könnten, da hunderte oder tausende von algorithmischen Mustergeneratoren
benötigt würden.
Eine Lösung zur Überwindung des Problems des Testens von kombinierten
Logik-/Speicher-Vorrichtungen, welche tatsächlich betrachtet wurde, bevor die
vorliegende Erfindung gemacht wurde, liegt in der Schaffung von getrennten
Logik- und Speicher-Testgeräten und in der Verwendung einer Schaltmatrix,
welche die erzeugten und durch den Logiktester und den Speichertester
empfangenen Signale verbindet. Jedoch muß eine derartige Schaltmatrix
aufgrund der benötigten Pinzahl (tausende von Pins) extrem groß sein. Ein
weiteres Erfordernis der Schaltmatrix besteht in der hohen Geschwindigkeit. Es
ist zweifelhaft, ob eine Schaltmatrix, die diese Bedürfnisse erfüllt, mit heutigen
Technologien hergestellt werden kann. Selbst wenn dies möglich wäre, könnte
sie in Anbetracht ihrer extremen Kosten kaum vermarktet werden.
Die vorliegende Erfindung beruht auf neuen und unkonventionellen
Betrachtungen zur Lösung der der Erfindung zugrunde liegenden Probleme.
Erfindungsgemäß wird eine Sequenzsteuerung zum Erzeugen einer ersten
Sequenz von Vektoren geschaffen. Diese Sequenzsteuerung kann eine an sich
bekannte Konstruktionsweise haben, d. h. eine relativ geradlinige und billige
Komponente sein.
Der Sequenzsteuerung ist eine Dekompressionssteuereinheit zugeordnet, die
durch die Sequenzsteuerung gesteuert wird, dekomprimierte Signale erzeugt und
diese der Sequenzsteuerung zuführt. Dieses ist ein erstes hauptsächliches
Merkmal, welches die Erfindung vom Stand der Technik unterscheidet. Allgemein
empfängt die Dekompressionssteuereinheit Steuersignale oder Steuermuster von
der Sequenzsteuerung. Diese Steuersignale werden durch die Dekompressions
steuereinheit vorzugsweise im wesentlichen unabhängig von der Sequenz
steuerung verarbeitet. Ein Beispiel einer derartigen unabhängigen Betriebsweise
besteht darin, daß die Dekompressionssteuereinheit mit ihrem eigenen Takt
arbeitet, so daß die Sequenzsteuerung nach dem Laden der Dekompressions
steuereinheit mit den Startparametern keine Überwachungsaufgaben bezüglich
der Dekompressionssteuereinheit ausführen muß. Die Dekompressionssteuer
einheit erzeugt daher Signale (deren Bedeutung nachfolgend erläutert werden
wird) und befreit die Sequenzsteuerung von diesbezüglichen Aufgaben.
Die Sequenzsteuerung umfaßt ferner eine bedingte Vektorverarbeitungs
einrichtung. Die erste Sequenz von durch die Sequenzsteuerung erzeugten
Vektoren wird der bedingten Vektorverarbeitungseinrichtung ebenso wie die
dekomprimierten Signale, die von der Dekompressionssteuereinheit empfangen
werden, zugeführt. Die bedingte Vektorverarbeitungseinrichtung erzeugt nun eine
zweite Sequenz von Vektoren in Abhängigkeit von den ihr zugeführten Signalen,
nämlich der ersten Sequenz von Vektoren sowie den dekomprimierten Signalen.
Ein typisches Beispiel dieser Betriebsweise besteht darin, daß die erste Sequenz
von Vektoren zwei oder mehr unterschiedliche Untersequenzen umfaßt, welche
gleichzeitig erzeugt werden. Das dekomprimierte Signal bestimmt, welche dieser
Untersequenzen dem Ausgang der Sequenzsteuerung zugeführt wird. Dieses
entspricht einem Befehl wie beispielsweise "bewege A oder B zu dem Ausgang
in Abhängigkeit von C", wobei A und B Untersequenzen sind und C das
dekomprimierte Signal ist. Selbstverständlich kann die bedingte Vektor
verarbeitungseinrichtung jegliche Art von logischen Kombinationen zwischen der
ersten Sequenz von Vektoren und dem dekomprimierten Signal und dergleichen
ausführen.
Ein grundsätzlicher Vorteil dieser Struktur ist eine erhebliche Geschwin
digkeitserhöhung ohne nennenswerte zusätzliche Kosten mit Ausnahme von
denjenigen, welche die Dekompressionssteuereinheit betreffen (welche eine
ziemlich einfache Konstruktion haben kann). Insbesondere kann eine Sequenz
steuerung mit im wesentlichen der gleichen oder einer ähnlichen Struktur
verglichen mit bekannten Sequenzern verwendet werden. Die Dekompressions
steuereinheit befreit die Sequenzsteuerung von zeitaufwendigen Aufgaben, wie
der Adresserzeugung (vergleiche nachfolgende Diskussion). Tatsächlich muß die
Sequenzsteuerung lediglich die erforderlichen Startbedingungen bereitstellen und
kann ferner von Zeit zu Zeit zusätzliche Steuerinformationen der Dekompres
sionssteuereinheit zuführen, um deren Betriebsweise zu beeinflußen. Jedoch
beansprucht der Betrieb der Dekompressionssteuereinheit im wesentlichen weder
Rechenleistung noch logische Leistung des Sequenzers. Mit anderen Worten
führt die Dekompressionssteuereinheit im wesentlichen einen selbständigen
Betrieb aus und benötigt lediglich einige Steuerinformationen, welche die
Grenzbedingungen festlegen. Es sei angemerkt, daß die Dekompressions
steuereinheit, obwohl sie eine separate Komponente sein kann, gleichfalls mit
der Sequenzsteuerung integriert sein kann, bespielsweise auf demselben Chip.
Gemäß einem wichtigen und bevorzugten Ausführungsbeispiel erweitert die
Dekompressionssteuereinheit die von der Sequenzsteuerung empfangenen
Signale zu dekomprimierten Signalen. Ferner kann die bedingte Vektorverarbei
tungseinrichtung Befehle mit einem bedingten Operanden ausführen, wobei die
Bedingung des bedingten Operanden durch die dekomprimitierten Signale
eingestellt wird, welche von der Dekompressionssteuereinheit empfangen
werden.
Wie bereits diskutiert worden ist, eignet sich die Erfindung insbesondere für eine
Anwendung bei einem Tester für integrierte Schaltungen. Gemäß einem
besonders bevorzugten Ausführungsbeispiel der Erfindung umfaßt die integrierte
Schaltung wenigstens einen Speicherabschnitt und hat eine Vielzahl von
Anschlüssen oder Pins, wobei wenigstens ein erster Teilsatz der Pins zumindest
zeitweilig als Adresspins und wenigstens ein zweiter Teilsatz der Pins zumindest
zeitweilig als Datenpins betreibbar ist. Unter diesen Begriff fallen integrierte
Schaltungen, welche gemischte Logik-/Speicher-Schaltungen sind, sowie reine
Speicher oder reine Logikschaltungen.
Bei diesem Ausführungsbeispiel kann ein Anschlußkanal der bereits
beschriebenen Art für im wesentlichen sämtliche Pins des zweiten Teilsatzes von
Pins, d. h. für die Adresspins, vorgesehen sein. Mit anderen Worten ist eine
Sequenzsteuerung einschließlich der zugeordneten Dekompressionssteuereinheit
für sämtliche Adresspins vorgesehen. Es sei jedoch angemerkt, daß
Anschlußkanäle der bereits beschriebenen Art für andere Pins, wie beispielsweise
Datenpins, Steuerpins, Logikpins, Analogpins und dergleichen vorgesehen sein
können.
Die Betriebsweise eines derartigen Testgerätes für integrierte Schaltungen mit
einer Sequenzsteuerung und einer Dekompressionssteuereinheit pro Adresspin
(oder für sämtliche Pins) wird nachfolgend erläutert.
Die Betriebsweise der Dekompressionssteuereinheit richtet sich hauptsächlich auf
die schnelle Erzeugung von Adressen, Daten, Steuerbytes und dergleichen,
wobei dies eine beträchtliche Rechenzeit erfordern würde, falls dies von der
Sequenzsteuerung ausgeführt würde. Grundsätzlich verwendet die Dekompres
sionssteuereinheit die von dem Sequenzer festgelegten Start- und Grenzbe
dingungen, um einen Zug von vollständigen (d. h. expandierten) Signalen, wie
beispielsweise Adressen, zu erzeugen.
Beispiele der Dekompressionssteuereinheiten sind Adressgeneratoren,
Datengeneratoren, Steuerbytegeneratoren, Statusbytegeneratoren und
dergleichen. Einige dieser Generatoren und insbesondere der Adressgenerator
werden nachfolgend detaillierter erläutert.
Die Dekompressionssteuereinheit führt die dekomprimierten Signale zu dem
Sequenzer zurück, wodurch der Sequenzer von der im wesentlichen einfachen,
jedoch sehr zeitaufwendigen Aufgabe der Erzeugung der Vektoren befreit wird,
welche benötigt werden, um auf den zugeordneten Pin des Prüflings
einzuwirken. Daher ist der Sequenzer dazu in der Lage, den zugeordneten Pin
in Echtzeit auch bei sehr hohen Testgeschwindigkeiten zu steuern. Es ist genau
dieses Konzept, durch das sich die erfindungsgemäße "Mehrfach-Sequenzer
Struktur" für das Speichertesten eignet.
Es sei jedoch angemerkt, daß weitere Unterschiede zu dem "Mehrfach-Sequen
zer-Ansatz" bestehen, der bei bekannten Logiktestgeräten eingesetzt wurde.
Wie bereits oben erläutert wurde, führen sämtliche Sequenzer bei dem
bekannten "pro Pin"-Logiktestgerätekonzept im wesentlichen das gleiche
Programm (oder Mikroprogramm) aus. Dies steht im Gegensatz zu der
vorliegenden Erfindung, bei der die Sequenzer zumindest im Speichertestmodus
verschiedene Programme ausführen, nämlich Programme, die insbesondere für
den zugeordneten Pin des Prüflings geeignet sind.
Man könnte daher gleichfalls sagen, daß die besondere Sequenzer-/Dekompres
sionssteuereinheit-Kombination gemäß der Erfindung tatsächlich einen teilweisen
algorithmischen Mustergenerator bildet, nämlich einen algorithmischen Muster
generator, der für einen spezifischen Pin des Prüflings geeignet ist. Tatsächlich
erzeugt die Dekompressionssteuereinheit gemäß der Erfindung vorzugsweise
1-Bit-Informationen und insbesondere eine 1-Bit-Adresse, die zu dem Sequenzer
rückgeführt wird (obwohl die Erfindung nicht auf diesen Aspekt beschränkt ist).
Der Sequenzer arbeitet also vorzugsweise in der 1-Bit-Betriebsart und hat
lediglich einen einzigen Pin zu steuern. Hierdurch wird der Betrieb sehr schnell,
insbesondere da die Signaldekompression (d. h. Adressgeneration) durch eine
schnelle Hardware ausgeführt wird und daher keine zusätzliche Rechenzeit, die
durch den Sequenzer aufgebracht werden müßte, erfordert.
Es hat sich herausgestellt, daß das oben offenbarte Testgerätekonzept
ausgesprochen gut die Erfordernisse des Speichertestens erfüllt. Daher schafft
die Erfindung eine neue Gattung von Speichertestgeräten. Tatsächlich eignet sie
sich zum Testen von integrierten Schaltungsvorrichtungen, die nur Speicher
umfassen, bei sehr hoher Geschwindigkeit. Das Testgerät benötigt keine Vielzahl
von teuren Hardwarekomponenten, wie beispielsweise die oben beschriebene
Schaltmatrix oder einen algorithmischen Mustergenerator pro Pin, so daß das
erfindungsgemäße Gerät mit einer attraktiven Preisgestaltung verkauft werden
kann.
Ferner hat sich herausgestellt, daß sich das der Erfindung zugrunde liegende
Konzept nicht nur in idealer Weise zum Durchführen des Speichertestens eignet,
sondern gleichfalls zum Durchführen des Logiktestens wie auch zum
Durchführen beider Testarten in Kombination miteinander. (Der letztgenannte
Aspekt ist von besonderer Wichtigkeit bei integrierten Schaltungen, die beide
Schaltungsarten enthalten, wie dies bei den oben beschriebenen ASICs der Fall
ist). Der Grund hierfür liegt darin, daß der Sequenzer in der Lage ist, die
Funktion eines Logiktestgerätesequenzers auszuführen, d. h. Testmuster zu
Logikpins zuzuführen, ebenso wie dies Sequenzer in Logiktestgeräten taten.
Diese zweifache Funkäon ermöglicht die Verbindung einer Pinschaltung gemäß
der Erfindung mit jedem willkürlichen Pin des Prüflings selbst ohne vorherige
Kenntnis der Funktionalität (Adresspin, Datenpin, Logikpin, usw.) des speziellen
Pins. Der Pin kann sogar seine Definition während des Betriebes ändern und
kann immer noch getestet werden.
Daher besteht insbesondere kein Bedürfnis - wie dies bei bekannten Geräten der
Fall war - die Verbindung der Pinschaltung (und die Verbindung zu einer
zentralen Quells) zu ändern, wenn ein Pin seine Definition ändert. Ebenso kann
ein teurer und langsamer Schalter (wie er in einem Testgerät gemäß
US 4,450,560 zum Schalten zwischen der Speichertestart und der Logiktestart
benötigt wird) vermieden werden.
Es wurde erläutert, daß in der Speichertestbetriebsart verschiedene Sequenzer
sämtlich unterschiedliche Programme in Abhängigkeit von ihrem zugeordneten.
Pin ausführen. Jedoch können diese in der Logiktestbetriebsart alle das gleiche
Programm (wie bei Logiktestgeräten nach dem Stand der Technik) ausführen,
obwohl dies keine nötige Bedingung für die Ausführung der vorliegenden
Erfindung darstellt. Jedoch wird bei einem bevorzugten Ausführungsbeispiel der
Erfindung ein Vektorspeicher (Decoderspeicher) verwendet, wobei in diesem Fall
sämtliche Sequenzer das gleiche Programm ausführen können, vorausgesetzt,
daß die jeweiligen Vektorspeicher mit Daten geladen sind, welche für den
zugeordneten Pin spezifisch sind. Dieses Ausführungsbeispiel hat den Vorteil,
daß die Vektorspeicher auf einfache Weise erneut geladen werden können, falls
ein Pin seine Definition ändert, wobei dies entweder während des Betriebes
eines ICs oder zwischen verschiedenen ICs der Fall sein kann. Gemäß einem
anderen Ausführungsbeispiel macht die Erfindung von einem zweiten Speicher
(dem Kurvenformspeicher) Gebrauch.
In wiederum anderen vorteilhaften Ausführungsbeispielen sind die Formatierer-/
Komparator-Schaltungen der oben beschriebenen Art zwischen der Sequenzsteuerung und
dem zugeordneten Pin des Prüflings geschaltet, oder es ist ein Puffer (vorzugsweise FIFO-
Speicher) zwischen Sequenzsteuerung und dem Decoderspeicher vorgesehen.
Es gibt noch einen anderen Aspekt, der die universelle Anwendbarkeit der vorliegenden
Erfindung verdeutlicht. Dieser besteht darin, daß Pin-Kanäle (Pinschaltungen) gemäß der
Erfindung nicht nur verwendet werden können, um Adresspins (in der Speichertest-
Betriebsart oder bei entsprechender Einrichtung zum reinen Speichertesten) oder um die
Logikpins (in der Logiktest-Betriebsart) des Prüflings zu treiben. Im Gegensatz hierzu
können sie verwendet werden, um Datenpins (in der Speichertest-Betriebsart), Steuerpins
(in jeder Betriebsart) und grundsätzlich jede andere Art des Pins des Prüflings gleichfalls zu
treiben.
Daher kann das Testgerät für integrierte Schaltungen derart eingerichtet, bzw. aufgebaut
werden, daß es im wesentlichen sämtliche Pins des Prüflings unabhängig von deren
Funktionalität mit der gleichen Schaltung, nämlich mit den Pintreiberschaltungen gemäß der
Erfindung, treibt. Es sei angemerkt, daß hierdurch die Hardwarekonfigurationen, die
Lagerhaltung usw. besonders einfach (und billig) wird, da lediglich eine Art von Pintreibern
geschaffen werden muß. Es sei jedoch angemerkt, daß die vorliegende Erfindung auch
Fälle umfaßt, bei denen nur ein spezieller Teilsatz von Pins, z. B. die Datenpins eines
Prüflings, mittels der erfindungsgemäßen Pinschaltung getrieben werden.
Bei einem bevorzugten Ausführungsbeispiel der Erfindung ist eine zentrale Steuerung
vorgesehen, die mit im wesentlichen sämtlichen Sequenzsteuerungen verbunden ist, wobei
die zentrale Steuerung die Inhalte eines Befehlsspeichers steuert, der Teil eines jeden
Sequenzers ist. Die Steuerung kann eingerichtet sein, um die verschiedenen Pin-Kanäle zu
synchronisieren, um Steuerinformationen zu den "pro-Pin"-Sequenzern zu liefern, um
Testergebnisse aufzunehmen, usw. jedoch wird die Steuerung nicht tatsächlich in
zeitkritischen Testsequenzen eingebunden, welche örtlich begrenzt ausgeführt werden.
Ferner kann bei einem anderen vorteilhaften Ausführungsbeispiel der Erfindung
die zentrale Steuerung dazu geeignet sein, jede Sequenz des Befehlsspeichers
der Steuerung mit Befehlen zu laden, die speziell für den zugeordneten Pin
bestimmt sind. Dies stellt ein bedeutsames Merkmal dar, um die Variabilität des
Testgerätes zu erhöhen. Insbesondere kann die zentrale Steuerung auf einfache
Weise Befehlssätze in die Speicher der verschiedenen Sequenzer für den Fall
herabladen, daß sich eine Pindefinition ändert.
Im Falle des Speichertestens kann eine zentrale Steuerung programmiert sein,
um unterschiedliche Befehle von einer Gesamttestprozedur für jeden zugeord
neten Pin zu erzeugen. Das bedeutet, daß das "Gesamt"-Testmuster lediglich der
zentralen Steuerung bekannt ist, die dieses in eine Vielzahl von einfachere, auf
den Pin bezogene Testprogramme, umformt, welche daraufhin in die Sequenzer
herabgeladen und durch diese ausgeführt werden.
Daher ist bei dem bevorzugten Ausführungsbeispiel der Erfindung eine Sequenz
steuerung im wesentlichen jedem Pin des Prüflings zugeordnet, zumindest jenen
Pins, die ständig oder zeitweilig als Adresspins betrieben werden. Die Sequenz
steuerungen können grundsätzlich die gleiche oder eine ähnliche Bauweise oder
Struktur wie bekannte Sequenzer haben. Dies stellt einen neuen Ansatz für ein
Speichertestgerät oder ein Logik-/Speicher-Testgerät dar, obwohl dieser Ansatz
für reine Logiktestgeräte bereits bekannt ist. Es ist gleichfalls überraschend, daß
kein Fachmann bislang erwartete, daß ein Sequenzer auch für das Speicher
testen nützlich sein könnte, obwohl ein Sequenzer dafür konstruiert ist, Adressen
für das Logiktesten zu erzeugen.
Tatsächlich würde allein die Verwendung eines Sequenzers nicht die Anforde
rungen erfüllen, da ein Sequenzer nicht in der Lage wäre, Speicheradressen mit
der benötigten Geschwindigkeit zu erzeugen und zu steuern. Dies richtet die Auf
merksamkeit auf die Dekompressionssteuereinheit, die beispielsweise Adressen
(und/oder andere digitale Signale, wie beispielsweise Daten) im wesentlichen
ohne externe Steuerung erzeugen kann.
Es sei angemerkt, daß das obige Konzept der verteilten Anschlußkanäle und
einer zentralen Steuerung auch auf andere Testgeräte als Testgeräte für
integrierte Schaltungen ausgeweitet werden kann.
Die Dekompressionssteuereinheit gemäß der Erfindung kann ein Adressgenerator
sein (insbesondere ein 1-Bit-Adressgenerator) oder einen solchen mit umfassen.
Derartige Adressgeneratoren können beispielsweise einen Frequenzteiler (d. h.
Flip-Flops mit einer Rückkopplungsschleife), Schieberegister und dergleichen
umfassen. Jedoch ist bei der am meisten bevorzugten Lösung wenigstens ein
Zähler (oder eine Kette von Zählern) vorgesehen.
Nachfolgend wird auf die üblichsten Testmuster für Speicher (oder für ICs mit
einer gemischten Speicher-/Logik-Struktur) Bezug genommen.
Eines der einfachsten Testmuster, welches bei dem Speichertesten verwendet
wird, ist ein sogenanntes "N-Muster". Ein Beispiel ist ein Muster, welches in den
Speicher eingeschrieben wird (N Adresserzeugungszyklen, wobei N die Gesamt
zahl der Speicherzellen ist), und welches daraufhin ausgelesen und bezüglich
seiner Genauigkeit bzw. Richtigkeit geprüft wird (weitere N Adreßerzeugungs
zyklen). Das bedeutet, daß man in diesem Fall eine Gesamtzahl von 2 N Adreß
erzeugungszyklen hat.
Dies ist eine Aufgabe, die idealerweise durch einen Zähler bewerkstelligt werden
kann. Wenn dieser einmal voreingestellt und durch den Sequenzer gestartet
worden ist, liefert er sämtliche benötigten Adressen während des N-Mustertestes
auf einer automatischen Grundlage.
Eine höherstehende Art des Speichertestens ist das sogenannte "N2-Muster".
Dieser Test verwendet ein Konzept von "diesseitigen Zellen" (home cells) und
"jenseitigen Zellen" (away cells). Beispielsweise wird der Inhalt einer Zelle in dem
Speicher (der diesseitigen Zelle) konstant gehalten, während alle anderen Zellen
in dem Speicher (die jenseitigen Zellen) bezüglich ihres Inhaltes verändert
werden, um zu überprüfen, ob die Speicherinhalte der diesseitigen Zelle durch
irgendeinen Übergang in einer jenseitigen Zelle beeinflußt werden. Dieser Prozeß
wird fortgesetzt, bis sämtliche Zellen in dem Speicher einmal als "diesseitige
Zelle" betrieben worden sind. Man kann auch dieses Konzept umkehren, d. h.
sämt-liche Zellen mit Ausnahme einer einzigen innerhalb des Speichers auf
einem konstanten Wert halten (die diesseitigen Zellen) und den Inhalt der
verbleibenden Zelle (der jenseitigen Zelle) verändern, um zu überprüfen, ob
diese Veränderung einen Übergang in einer der diesseitigen Zellen bewirkt hat.
Eine Dekompressionssteuereinheit, die sich insbesondere für diese Art des
Speichertestens eignet, umfaßt folgende Merkmale:
- - einen ersten Zähler, der eingerichtet ist, um wenigstens das Adressbit des zugeordneten Anschlusses der Adresse wenigstens einer ersten Speicherzelle zu erzeugen, deren Inhalt während eines Testzyklus konstant gehalten wird; und
- - einen zweiten Zähler, der eingerichtet ist, um wenigstens das Adressbit des zugeordneten Anschlusses der Adresse von wenigstens einer zweiten Spei cherzelle zu erzeugen, deren Inhalt während eines Testzyklus verändert wird.
Das bedeutet, daß der erste Zähler die Adressen der diesseitigen Zelle (Zellen)
erzeugt, während der zweite Zähler die Adressen der jenseitigen Zelle (Zellen)
erzeugt. Wenn man von dem erstgenannte Ausführungsbeispiel mit einer ein
zigen diesseitigen Zelle ausgeht, wird daher der erste Zähler (der auf die
diesseitige Zelle zeigt) eine lange Periode haben, während der zweite Zähler (der
auf die jenseitigen Zellen zeigt) eine kurze Periode haben wird. Der erste Zähler
wird auf einem konstanten Wert gehalten, während der zweite Zähler durch
sämt-liche Zellen des Speichers zählt. Sobald der zweite Zähler die letzte Zelle
in dem Speicher erreicht, wird er rückgesetzt, wobei der erste Zähler um 1
inkrementiert wird, um auf diese Weise die nächste diesseitige Zelle zu
definieren, usw.
Der gesamte Prozeß läuft unter der Steuerung des Sequenzers ab, der die
beiden Zähler starten, anhalten und steuern kann, beispielsweise indem er die
"HOLD/RUN"-Eingänge der Zähler, ihre Voreinstelleingänge und ihre Takt
eingänge steuert. In Abweichung hiervon können die Zähler (zumindest teilweise)
einander steuern. In dem beschriebenen Ausführungsbeispiel kann der zweite
Zähler beispielsweise ein Übertragsbit erzeugen, das den ersten Zähler
inkrementiert.
Dieses Ausführungsbeispiel mit zwei Zählern ist besonders wirksam beim Testen
von Speichern, da die beiden Zähler den Hauptteil der zeitaufwendigen
"Standard"-Arbeit (die mehrfache Adreßerzeugung) dem Sequenzer abnehmen
und dadurch dessen Betriebsgeschwindigkeit erheblich erhöhen.
Es kann gleichfalls nützlich sein, einen dritten Zähler zu verwenden, welcher
dafür eingerichtet ist, die Koinzidenzen zwischen dem ersten und dem zweiten
Zähler zu zählen. Das obige Ausführungsbeispiel zeigt, daß der zweite Zähler
(der die jenseitigen Zellen zählt) nicht die diesseitige Zelle adressieren sollte,
nicht deren Speicherinhalte zu zerstören. Daher ist es erforderlich, eine Adresse
in dem Zyklus zu überspringen. Der dritte Zähler mit einer Periode von (N + 1)
kann die erforderlichen Informationen hierfür schaffen; d. h., sobald er seinem
Endzustand erreicht hat, wird der Sequenzer eine durch den zweiten Zähler
erzeugte Adresse außer acht lassen (vorzugsweise, indem der entsprechende
Vektor einfach nicht an einen Puffer weitergeleitet wird). Es sei angemerkt, daß
dies eine Funktionalität ist, die gleichfalls durch den Sequenzer geleistet werden
könnte. Jedoch ist die Verwendung eines dritten Zählers effektiver und verdeut
licht einmal mehr die herausragenden Vorteile des Erfindungsgegenstandes.
Das bereits diskutierte N2-Muster ist ziemlich effektiv für das Testen. Jedoch
kann es zu erheblichen Testzeiten führen (welche gelegentlich eine Stunde pro
Speicher überschreiten). Daher sollten andere Muster - welche weniger Zeit für
die Verarbeitung erfordern - gleichfalls betrachtet werden. Eine wichtige Gruppe
dieser Muster ist das sogenannte "N3/2-Muster". Dieses basiert auf der Erkennt
nis, daß es (ohne bemerkenswerten Verlust hinsichtlich der Leistungsfähigkeit)
ausreichend sein kann, bei dem Ansatz der "diesseitigen Zellen" zu bleiben,
jedoch lediglich Zellen in der gleichen Reihe oder Spalte als jenseitige Zellen zu
verwenden. Ein spezielles Ausführungsbeispiel dieser Gruppe ist das sogenannte
Schmetterlingsmuster, das nachfolgend detaillierter erläutert werden wird.
Ausgehend von der diesseitigen Zelle sind die ersten getesteten jenseitigen
Zellen - definitionsgemäß - diejenigen Speicherzellen, die am engsten zu der
diesseitigen Zelle benachbart sind und in der gleichen Reihe oder Spalte wie die
diesseitige Zelle liegen. Dies sind vier Zellen. Bei dem zweiten Schritt wird die
Entfernung zu der diesseitigen Zelle um 1 erhöht, was zu vier weiteren
jenseitigen Zellen führt, usw.. Dieses Muster wird üblicherweise in der Uhrzeiger
richtung oder in der Gegenuhrzeigerrichtung abgearbeitet und erfordert das
Testen von 2×(√N-1) jenseitigen Zellen (unter der Annahme eines "quadra
tischen" Speichers). Wenn der Prozeß N-fach (für N diesseitige Zellen) wiederholt
wird, so ergibt sich eine Gesamtheit von 2×(√N-1)×N = 2×N×√N-2×N=
2×N3/2-2×N Testzyklen.
Eine Zählerstruktur der Dekompressionssteuereinheit ist gleichfalls geeignet, die
Adressen eines derartigen Schmetterlingsmusters (und jegliche andere Art eines
N3/2-Musters) zu erzeugen. Insbesondere kann ein Zähler als Reihenzähler und
der andere als Spaltenzähler verwendet werden, falls diese auf unterschiedliche
Perioden eingestellt sind (da jede Reihe/Spalte eine andere zugeordnete
Gewichtung hat).
Um eine Geschwindigkeitserhöhung zu erreichen, kann in vorteilhafter Weise eine
geringfügig modifizierte Zählerstruktur verwendet werden. Bei diesem Konzept wird ein
Zähler als "diesseitiger Zähle" eingerichtet, welcher auf die diesseitige Zelle zeigt. Zwei
jenseitige Zähler arbeiten in eine hochzählenden oder inkrementierenden bzw.
niederzählenden oder dekrementierenden Betriebsweise für die zugeordnete Reihe, d. h. sie
stellen einen Versatz bezüglich der diesseitigen Zelle dar. Ihre Inhalte können zu dem
Sequenzer zugeführt werden, um die tatsächliche Adresse der jenseitigen Zellen in der
gleichen Reihe wie die diesseitige Zelle zu berechnen. Jedoch kann die Geschwindigkeit
durch weitere Zähler erhöht werden, welche die Inhalte des diesseitigen Zählers und der
jenseitigen Zähler jeweils aufaddieren. Die gleiche Struktur (zwei jenseitige Zähler,
Addierer) kann für die Spalte, die der diesseitigen Zelle zugeordnet ist, wiederholt werden.
Zum Dekodieren von Sequenzadressen kann auch auf einen zusätzlichen Speicher
zurückgegriffen werden, welcher als "Kurvenformspeicher" bezeichnet wird, um die
Ausgangssignale des Vektorspeichers in verschiedenen Aktionen zu dekodieren, so daß
eine Vielzahl von Operationen an dem Prüfling ermöglicht werden, wobei die Definition
derartiger Aktionen in einfacher Weise geändert werden kann, indem die Inhalte des
Kurvenformspeichers ersetzt werden. Auf diese Weise kann der Vektorspeicher-/
Kurvenformspeicher-Ansatz verwendet werden.
Es ist offenkundig, daß die vorliegende Erfindung gleichfalls auf verwandte Testgeräte für
elektronische Vorrichtungen abzielt, wie beispielsweise auf Platinentestgeräte, ASIC-
Testgeräte usw.
Die Erfindung wird nachfolgend mittels eines nicht beschränkenden Ausführungsbeispieles
unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
Fig. 1 ein strukturelles Diagramm eines bekannten Speichertestgerätes
Fig. 2 die Struktur eines bekannten Logiktestgerätes unter Verwendung des
Ansatzes der "geteilten Quelle",
Fig. 3 ein weiteres bekanntes Logiktestgerät, welches auf der "pro-Pin"-Architektur
beruht;
Fig. 4 eine Gesamtdarstellung eines Ausführungsbeispiels eines
erfindungsgemäßen Testgerätes;
Fig. 5 eine erfindungsgemäße Pinschaltung in größerer Detailliertheit;
Fig. 6 + 7 Diagramme zur Verdeutlichung der Betriebsweise, wenn ein
Speicher mit einem N2-Muster getestet wird;
Fig. 8 ein N3/2-Muster, und zwar das Schmetterlingsmuster; und
Fig. 9 eine Pinschaltung, die sich insbesondere zur Erzeugung eines
N3/2-Musters eignet.
Das in Fig. 1 gezeigte bekannte Speichertestgerät umfaßt einen algorithmischen
Mustergenerator 1, der als gemeinsame Quelle für eine Vielzahl von Pinschal
ungen dient. Bei dem in Fig. 1 gezeigten Ausführungsbeispiel besteht der
algorithmische Mustergenerator 1 im wesentlichen aus vier funktionalen Einheiten.
Eine ist ein x-Adressgenerator 2, die zweite ein y-Adressgenerator 3, während
ein Block 4 einen Datengenerator und ein Block 5 eine Steuerung darstellt. Die
Adressgeneratoren 2 und 3 dienen zum Adressieren einer bestimmten Zelle des
zu testenden Speichers, während der Datengenerator 4 die in die adressierte
Speicherzelle abzuspeichernden Daten erzeugt. Der funktionale Block 5 steuert
den Betrieb der Adressgeneratoren und des Datengenerators. Die Ausgangs
ignale des algorithmischen Mustergenerators 1 werden einem gemeinsamen Bus
6 zugeführt. Der Bus ist mit einer Mehrzahl von Pinkanälen oder Pinschaltungen
verbunden, welche in Fig. 1 durch die Pinplatinen 7a, 7b und 7c dargestellt sind.
Es sei angemerkt, daß drei Pinplatinen lediglich aus Gründen der Anschaulichkeit
dargestellt sind, obgleich ein tatsächliches Speichertestgerät einige Hundert oder
sogar einige Tausend Pinplatinen aufweisen würde.
Jede Pinplatine 7a, 7b, 7c usw. kommuniziert mit einem einzigen Pin des
Prüflings 8, welcher bei dem in Fig. 1 gezeigten Ausführungsbeispiel ein
Speicher ist. Drei dieser Pinverbindungen sind in Fig. 1 mit den Bezugszeichen
9a, 9b und 9c bezeichnet.
Der Hauptzweck der Pinplatinen 7a bis 7c besteht in der Verbindung der über
den gemeinsamen Bus 6 empfangenen Informationen mit Zeitsignalen, die
typischerweise von Flankengeneratoren empfangen werden, wie dies durch Pfeile
10a, 10b und 10c verdeutlicht ist. Die Pinplatinen umfassen eine Schaltung zum
Verbinden der von dem algorithmischen Mustergenerator 1 empfangenen
Informationen mit Zeitinformationen (Formatierungsschaltungen), sowie eine
Schaltung, die zum Überprüfen des richtigen Zeitverhaltens und des richtigen
logischen Zustandes der von dem Prüfling 8 empfangenen Signale konstruiert
ist (Komparatorschaltungen).
Der algorithmische Mustergenerator 1 ist eine sehr komplexe und teuere Einheit.
Dies ist der Grund, warum lediglich ein einziger algorithmischer Mustergenerator
1 für sämtliche Pinplatinen verwendet wird (Ansatz der geteilten Quelle). Dies
beschränkt die Testgeschwindigkeit erheblich. Ferner sei angemerkt, daß die
Pinplatinen 7a bis 7c voneinander unterschiedlich sein können, abhängig von
der Funktionalität des zugeordneten Pins des Prüflings 8 (d. h. abhängig davon,
ob dieser Pin ein Adresspin, ein Datenpin oder ein Steuerpin ist). Daher ist eine
komplexe und zeitaufwendige Neuanordnung der Pinplatinen und ihrer Verbin
ungen erforderlich, sobald sich die Pindefinition des Prüflings 8 ändert. Dies ist
der Grund, warum sich die in Fig. 1 gezeigte Struktur hauptsächlich zum Testen
von Speichern der jeweils gleichen Art eignet.
Fig. 2 zeigt einen weiteren Ansatz bei einem bekannten Testgerät für integrierte
Schaltungen, nämlich einem Logiktestgerät. Dieses Logiktestgerät basiert
gleichfalls auf dem "Ansatz der geteilten Quelle".
Ein Sequenzer 11 erzeugt Vektoradressen, die über einen gemeinsamen Bus 12
verschiedenen Pinkanälen oder Pinplatinen zugeführt werden. Der Sequenzer 11
ist in funktionalen Begriffen ein Zähler. Jedoch umfaßt der Sequenzer 11 eine
zusätzliche Schaltung dahingehend, daß er in der Lage ist, Sprünge auszu
ühren, Unterroutinen abzuarbeiten usw. Tatsächlich kann der Sequenzer 11
gleichfalls einen Speicher enthalten, der bestimmte Programmarten, die durch
den Sequenzer auszuführen sind, festlegt.
Es sei angemerkt, daß der Sequenzer 11 eine erheblich einfachere Struktur als
der algorithmische Mustergenerator hat, welcher bei dem Speichertesten
verwendet wird.
Die Ausgangssignale des Sequenzers 11 werden über einen Bus 12 an Vektor
peicher 13a, 13b und 13c übertragen, welche den Pinkanälen zugeordnet sind
(es sei nochmals angemerkt, daß das tatsächliche Logiktestgerät einige Hundert
oder sogar einige Tausend derartiger Pinkanäle hat). Der Vektorspeicher
dekodiert im wesentlichen die von dem Sequenzer 11 empfangene Adresse in eine
Statusinformation oder in Aktionen, die durch den zugeordneten Pin des Prüflings 16 (im
vorliegenden Fall eine logische Schaltung) durchzuführen sind.
Die Ausgangssignale der Vektorspeicher 13a bis 13c werden der Formatierer-/
Komparator-Schaltung 14a bis 14c zugeführt. Diese empfangen die Zeitsignale (Pfeile 15a
bis 15c).
Ein höher entwickelter Ansatz besteht darin, zusätzlich einen Kurvenformspeicher zwischen
jedem Vektorspeicher und der zugeordneten Formatierer-/Komparator-Schaltung
vorzusehen. Ein derartiger Kurvenformspeicher ermöglicht die Dekodierung einer Vielzahl
von möglichen Aktionen und damit die Erweiterung des Testspektrums.
Es sei angemerkt, daß das in Fig. 2 gezeigte logische Testgerät weniger kompliziert als das
Speichertestgerät ist, welches unter Bezugnahme auf die vorhergehende Figur diskutiert
worden ist. Dies trifft nicht nur auf den Sequenzer zu, welcher nicht derart komplex wie der
algorithmische Programmgenerator eines Speichertestgerätes ist. Es sei angemerkt, daß
ein Prüfling 16 in Form einer Logikschaltung keine Adresspins und Datenpins aufweist, so
daß die komplexe Änderung der Anordnung der Pinplatinen nicht erforderlich ist. Der
Vektorspeicher 13a ist üblicherweise auf der gleichen Pinplatine wie die Formatier-/
Komparator-Schaltung 14a vorgesehen, wie dies bei sämtlichen anderen Vektorspeicher-
Formatierer-/Komparator-Kombinationen der Fall ist.
Grundsätzlich ist das in Fig. 2 gezeigte Design den gleichen oder ähnlichen
Beschränkungen bezüglich des Zeitverhaltens unterworfen, wie des bei dem in Fig. 1
gezeigten Speichertestgerät der Fall ist. Jedoch ist es aufgrund der Tatsache, daß der für
das Logiktesten benötigte Sequenzer ein weniger kompliziertes Design hat, bei
vernünftigen Kosten möglich, einen einzigen Sequenzer für jeden Pin des Prüflings
vorzusehen.
Dieser Ansatz, der auch als "pro-Pin-Ansatz" bezeichnet wird, ist in Fig. 3 gezeigt. Das
Logiktestgerät, das in dieser Figur gezeigt ist, umfaßt eine Vielzahl von Sequenzern 11a, 11b
und 11c, die sämtlich einem spezifischem Pin-Kanal zugeordnet sind. Die übrigen
Komponenten des in Fig. 3 gezeigten Testgerätes sind grundsätzlich identisch zu
denjenigen des in Fig. 2 gezeigten Testgerätes und sind daher mit den gleichen
Bezugszeichen bezeichnet.
Die gesamte Schaltungsarchitektur eines Speichertestgerätes oder eines
kombinierten Logik-/Speicher-Testgerätes gemäß der Erfindung werden
nachfolgend unter Bezugnahme auf Fig. 4 näher erläutert.
Die Erfindung bedient sich eines "pro-Pin-Ansatzes", bei dem jeder Pinkanal
einen Sequenzer 17a, 17b, 17c, eine Dekompressionssteuereinheit 18a, 18b, 18c,
einen Vektorspeicher 19a, 19b, 19c und eine Formatierer-/Komparator-Schaltung
20a, 20b, 20c umfaßt. Der Prüfling 21 kann ein Speicher sein oder eine
integrierte Schaltung mit Logik- und Speicherfunktionen, wie beispielsweise ein
ASIC. Der Prüfling 21 kann grundsätzlich eine willkürliche Pinkonfiguration haben.
Insbesondere besteht kein Erfordernis der Anpassung eines Pinkanales an einen
Adresspin, Datenpin oder Steuerpin. Mit anderen Worten ist keine Hardware-Re
konfiguration erforderlich, falls sich die Pindefinition zwischen verschiedenen
Prüflingen ändert oder falls sich die Pinkanaldefinition während des Betriebes
ändert.
Jeder Sequenzer bzw. jede Sequenzsteuerung 17a, 17b und 17c umfaßt einen
Befehlsspeicher 17a', 17b' und 17c' sowie einen Puffer (FIFO-Speicher 17a",
17b" und 17c").
Eine zentrale Steuerung 22 ist mit verschiedenen Pinkanälen entweder direkt
oder über einen gemeinsamen Bus 23 verbunden.
Es sei angemerkt, daß die pro-Pin-Schaltung - wie beispielsweise die
Sequenzsteuerung 17a, die Dekompressionssteuereinheit 18a, der Vektorspeicher
19a und die Formatierer-/Komparator-Schaltung 20a - typischerweise auf einer
einzigen Schaltungsplatine vorgesehen sind, die auch als "Pinplatine" bezeichnet
wird. In ähnlicher Weise kann ein Kurvenformspeicher (wie er oben diskutiert
wurde) zwischen den Puffern 17a" bis 17c" und den Formatierer-/Kompara
tor-Schaltungen 20a bis 20c geschaltet sein. Die Zeitsignale, die von den
Formatierer-/Komparator-Schaltungen 20a bis 20c geliefert werden, sind mit den
Bezugszeichen 24a, 24b und 24c in Fig. 4 bezeichnet.
Während des Betriebes führen die Sequenzer 17a bis 17c Befehle den Dekom
pressionssteuereinheiten 18a bis 18c über Leitungen 25a bis 25c zu. Die
expandierten oder dekomprimierten Signale (welche von den Dekompressions
steuereinheiten 18a bis 18c erzeugt worden sind) werden zu den Sequenzern
über Leitungen 26a bis 26c rückgeführt.
Nunmehr sei ein spezifischer Fall einer Pindefinition betrachtet, um die
Gesamtbetriebsweise des erfindungsgemäßen Testgerätes für integrierte
Schaltungen zu erläutern. Aus Gründen der Darstellung sei die Annahme
getroffen, daß die Pins 27a und 27b des Prüflings 21 als Adresspins definiert
sind, während der Pin 27c als Logikpin definiert ist. Mit anderen Worten umfaßt
der Prüfling 21 sowohl einen Speicher als auch eine zusätzliche Logikschaltung.
(Es ist offenkundig, daß der Prüfling 21 gleichfalls Datenpins umfaßt, und daß
auch weitere Pins, wie beispielsweise analoge Pins, vorgesehen sein können.
Diese Pins können durch eine ähnliche Pinschaltung gesteuert werden, wie sie
in Fig. 4 gezeigt ist; jedoch sind aus Gründen der graphischen Darstellung
lediglich zwei Adresspins und ein Logikpin bei dem Ausführungsbeispiel gemäß
Fig. 4 gezeigt.)
Die zentrale Steuerung 22 verwendet nun das übergeordnete Testprogramm für
den Speicherabschnitt des Prüflings 21, um für den Pin bestimmte Unter
programme zu erzeugen, die jeweils über einen gemeinsamen Bus 23 den
Befehlsspeichern 17a' und 17b' der Sequenzsteuerungen 17a und 17b zugeführt
werden. Dies bedeutet, daß sich die dem Befehlsspeicher 17a' zugeführten
Befehle von denjenigen Befehlen unterscheiden, die dem Befehlsspeicher 17b'
zugeführt werden, in Abhängigkeit von der Gewichtung des zugeordneten
Adresspins. Die Sequenzsteuerungen 17a und 17b schaffen geeignete Steuer
informationen für die Dekompressionssteuereinheiten 18a und 18b (über
Leitungen 25a und 25b). Die Steuerinformationen veranlassen die Dekompres
sionssteuereinheiten 18a und 18b, Pin-spezifische dekomprimierte Signale, d. h.
Adressen sequentiell zu erzeugen und diese über Leitungen 26a und 26b den
Sequenzsteuerungen 17a und 17b zuzuführen.
Die Sequenzsteuerungen erzeugen anfänglich eine erste Sequenz von Vektoren.
Das gezeigte Ausführungsbeispiel zeigt Sequenzsteuerungen, welche zwei
Teilsequenzen erzeugen, die zusammen die erste Sequenz bilden. Unter
beispielhafter Bezugnahme auf die Sequenzsteuerung 17a zeigen die beiden
Kästchen 28a und 28a' die Erzeugung von zwei Teilsequenzen der ersten
Sequenz von Vektoren. Das von der Dekompressionssteuereinheit 18a auf die
Leitung 26a rückgekoppelte Signal führt eine der Teilsequenzen einem internen
Puffer 29a zu, indem ein (Hardware- oder Software-) Multiplexer 30a betätigt
wird.
Diese Struktur wurde lediglich aus Gründen der Darstellung gewählt und zeigt
die Wirkung eines "bedingten Operanden". Dies bedeutet, daß eine der beiden
Teilsequenzen, die in den Kästchen 28a und 28a' erzeugt werden, zu dem
Kästchen 29a in Abhängigkeit von dem Zustand bewegt werden, der durch die
Dekompressionssteuereinheit 18a vorgegeben wird.
Ähnliche Teilsequenzen von Vektoren werden in den Kästchen 28b, 28b', 28c
und 28c' erzeugt. Deren Ausgangssignale werden über Multiplexer 30b und 30c
den Ausgangskästchen 29b und 29c zugeführt.
Es sei angemerkt, daß andere logische Verbindungen zwischen der ersten
Sequenz der Vektoren und der zweiten Sequenz der Vektoren 29a und 29c
möglich sind; das heißt, daß die bedingte Vektorverarbeitungseinrichtung nicht
notwendigerweise die Form eines Multiplexers haben muß, wie dies durch die
Multiplexer 30a und 30c gezeigt ist. Im Gegensatz hierzu kann die bedingte
Vektorverarbeitungseinrichtung im wesentlichen aus jeglicher logischen Schaltung
bestehen, die die erste Sequenz von Vektoren mit den Ausgangssignalen der
Dekompressionssteuereinheit verknüpft, um eine zweite Sequenz von Vektoren
zu erzeugen. Gleichfalls kann ein Multiplexer oder eine äquivalente Einrichtung
mit einer Mehrzahl von Eingängen anstelle der beiden Eingänge pro Multiplexer
gemäß der Darstellung von Fig. 4 vorgesehen sein.
Allgemein erzeugen die Sequenzsteuerungen 17a und 17b einen Signalzug, der
den Vektorspeichern 19a und 19b zugeführt wird. Die Vektorspeicher können
auch von einer zentralen Steuerung mit pinspezifischen Daten geladen werden,
wie dies durch die Leitungen 31a, 31b und 31c verdeutlicht ist. Die
Adressmuster werden zu der Sequenzsteuerung rückgeführt und von den
Puffern 17a" und 17b" über Formatierer-/Komparatorschaltungen 20a und 20b
zu den Pins 27a und 27b des Prüflings 21 geführt.
Zum gleichen Zeitpunkt erzeugt die Sequenzsteuerung 17c logische Signale. Die
Dekompressionssteuereinheit 18c läuft in einem Leerlaufzustand oder kann zur
Erzeugung spezieller Vektorzüge verwendet werden, die für das logische Testen
benötigt werden. Beispielsweise kann die Dekompressionssteuereinheit 18c einen
Zug von Adressignalen erzeugen, der in dem Verlauf der Adressierung des
Vektorspeichers 19c benötigt wird.
Es sei angemerkt, daß sich die durch die Sequenzsteuerungen ausgeführten
Programme, welche den Adresspins zugeordnet sind, voneinander
unterscheiden, während die von den Sequenzsteuerungen ausgeführten
Programme, die den Logikpins zugeordnet sind, dieselben sind. Im
letztgenannten Fall sind lediglich die Inhalte der jeweiligen Vektorspeicher
voneinander verschieden.
Es sei ferner angemerkt, daß weitere Pinkanäle den Datenpins zugeordnet sein
können, d. h. diese liefern Daten für die Speicherzellen, die durch die beiden
oberen Kanäle in Fig. 4 adressiert werden. In ähnlicher Weise ist es möglich,
einen reinen Speicher zu testen, wobei in diesem Fall einige Pinkanäle
Adressignale erzeugen, während andere Datensignale erzeugen, wobei jedoch
keine logischen Kanäle vorgesehen sind. Es ist ein besonderer Vorteil der
Erfindung, daß die gleichen Pinkanäle (Pinplatinen) für sämtliche Arten von
Pindefinitionen vorgesehen sein können, da jeder Pinkanal während des
Betriebes rekonfiguriert werden kann. Es sei beispielsweise angenommen, daß
der Prüfling 21 seine Pindefinition während des Tests derart ändert, daß der Pin
27a von einem Adresspin in einen Datenpin umdefiniert wird. In einem derartigen
Fall schaltet die zentrale Steuerung 22 einfach zwischen Programmodulen um,
die vorab in den Befehlsspeicher 17a' der Sequenzsteuerung 17a geladen
wurden, so daß dieser als Datenpinsteuerung dienen kann, und der Betrieb
unmittelbar fortgesetzt werden kann. Dies ist eine Rekonfiguration der
Pindefinition "on the fly", d. h. ohne daß eine Notwendigkeit bestünde, neue
Befehle herabzuladen. Der gleichen Vorgehensweise wird gefolgt, wenn ein
anderer Prüfling mit einer anderen Pindefinition eingesetzt wird.
(Selbstverständlich kann man auch neue Befehle in den Befehlsspeicher 17a'
herabladen, um das gleiche Ergebnis zu erzielen, jedoch erfordert dies
zusätzliche Zeit und ist daher ein weniger bevorzugter Ansatz).
Die zentrale Steuerung 22 kann nicht nur Befehlscodes an die Speicher 17a' bis
17c' oder an die Vektorspeicher 19a bis 19c liefern. Sie kann stattdessen auch
das gesamte zeitliche Verhaften des Testgerätes steuern, d. h. gewährleisten, daß
die den Adresspins zugeordneten Sequenzsteuerungen ihren Betrieb zu dem
gleichen Zeitpunkt aufnehmen, wenn die Datenpinkanäle aktiviert werden.
Fig. 5 zeigt einen Teil einer Pinschaltung in größerer Detailliertheit. Insbesondere
zeigt diese Figur ein bevorzugtes Ausführungsbeispiel einer Dekompressions
steuereinheit.
Der Sequenzer 32 und dessen Befehlsspeicher 32' sowie dessen Puffer 32"
entsprechen im wesentlichen den in Fig. 4 gezeigten Sequenzsteuerungen. Die
Informationen von der zentralen Steuereinheit werden über die Leitung 33
empfangen. Das Vektorausgangssignal ist mit dem Bezugszeichen 34
bezeichnet. Die der Sequenzsteuerung 32 in einem Pinkanal nachfolgenden
Komponenten sind in Fig. 5 nicht gezeichnet.
Die Dekompressionssteuereinheit besteht im Falle des Ausführungsbeispieles
gemäß Fig. 5 im wesentlichen aus drei Zählern 35, 36 und 37. Deren
Betriebsweise wird durch die Sequenzsteuerung 32 gesteuert. Beispielsweise
steuert die Sequenzsteuerung 32 den "HOLD-/RUN"-Eingang (Leitung 38) und
den "PRESET"-Eingang (Leitung 37) des Zählers 35. Die anderen Zähler werden
dementsprechend gesteuert.
Obwohl es einige äußere Steuerungen bezüglich der Zähler 35 bis 37 gibt
(insbesondere die Steuerung des Startens und der Grenzbedingungen), sind
die Zähler selbst freilaufend. Dies bedeutet, daß diese nach Empfang der
erforderlichen Start-Steuercodes ihren Betrieb selbsttätig fortsetzen.
Typischerweise werden sie ein getrenntes Taktsignal hierfür empfangen
(vergleiche Taktgenerator 39 in Fig. 5). In einigen Fällen kann es auch ratsam
sein, daß einige Taktzyklen direkt von dem Sequenzer 32 gesteuert werden. fn
diesem Fall werden das Taktausgangssignal des Sequenzers ebenso wie das
Taktausgangssignal des Taktgenerators 39 den Eingängen eines Multiplexers
zugeführt, dessen Ausgangssignal einem entsprechenden Takteingang eines der
Zähler zugeführt wird.
Die durch die Zähler 35 bis 37 erzeugten Adressen werden über Leitungen 40,
41 und 42 der Ablaufsteuerung 32 zugeführt. Die Ablaufsteuerung kann diese
Adressen (welche üblicherweise 1-Bit-Adressen sein werden) mit anderen
Steuerinformationen verknüpfen, wie dies bereits erläutert wurde, oder diese
direkt der Leitung 34 zuführen.
Die in Fig. 5 gezeigte Zählerstruktur eignet sich insbesondere zur Erzeugung der
Adressen für die Speichertestmuster, die in den Fig. 6 und 7 gezeigt sind. Fig.
6 zeigt schematisch einen Speicher 43, welcher in dem gezeigten Fall - aus
Gründen der Einfachheit - aus 7 × 7 Speicherzellen besteht. Der Test wird
dahingehend durchgeführt, daß der Inhalt von einer Speicherzelle 44 konstant
gehalten wird, während der Inhalt der anderen Zellen veränderlich ist, wie dies
durch den Buchstaben "v" verdeutlicht ist. Der Test zeigt, ob irgendein Übergang
in einer der Zellen des Speichers mit Ausnahme der Zelle 44 die Speicherinhalte
dieser letztgenannten Zelle beeinflußt. Im Sinne der vorliegenden Terminologie
wird die Zelle 44 als diesseitige Zelle bezeichnet, während die anderen Zellen als
jenseitige Zellen bezeichnet werden. Ein kompletter Testzyklus besteht darin, daß
jede Zelle des Speichers als diesseitige Zelle definiert wird und daß sämtliche
jenseitigen Zellen für jede spezifische diesseitige Zelle verändert werden. Daher
ist die Anzahl der erforderlichen Testzyklen proportional zu N2, so daß dieser
Test auch als "N2-Test" bekannt ist.
Die in Fig. 5 gezeigte Dekompressionssteuereinheit eignet sich in perfekter Weise
zum Erzeugen der für einen derartigen N2-Test benötigten Adressen. Beispiels
weise kann der Zähler 35 auf die diesseitige Zelle zeigen und der Zähler 36 auf
eine spezielle jenseitige Zelle. Der Zähler 35 hält seinen Wert für eine spezifische
diesseitige Zelle, während der Zähler 36 durch sämtliche Zellen des Speichers
läuft. Wenn der Zähler 36 seinen Endzustand erreicht hat, wird er rückgesetzt
und der Zähler 35 wird um 1 erhöht, so daß er auf die nächste diesseitige Zelle
zeigt. Diese Erhöhung kann durch eine Steuerlogik ausgeführt werden, die in der
Sequenzsteuerung 32 enthalten ist, oder auch direkt durch Zuführen eines
Übertragsbit des Zählers 36 zu dem Zähler 35 erfolgen, wie dies durch die
gestrichelte Linie 45 dargestellt ist. Der jenseitige Zähler 36 läuft dann erneut von
0 bis zu seinem Endzustand (oder umgekehrt). Der gesamte Prozeß wird fortge
setzt, bis sämtliche Zellen innerhalb des Speichers einmal als diesseitige Zellen
gearbeitet haben.
Zusätzliche Adressinformationen werden durch den Zähler 37 geliefert. Man wird
feststellen, daß der jenseitige Zähler 36 während eines Zyklus auf sämtliche
Zellen des Speichers 43 mit Ausnahme der diesseitigen Zelle 44 selbst zeigen
soll (da er anderenfalls die Speicherinhalte der diesseitigen Zelle zerstören
würde). Daher besteht ein Erfordernis darin, eine Adresse innerhalb des
Speichers zu überspringen oder auszulassen. Obwohl diese Aufgabe durch eine
interne Steuerlogik innerhalb der Sequenzsteuerung 32 ausgeführt werden
könnte, ist es einfacher, einen zusätzlichen Zähler (nämlich den Zähler 37) zu
verwenden, welcher die Sequenzsteuerung 32 dazu veranlaßt, einen Adreßvektor
zu entfernen, sobald der jenseitige Zähler auf die diesseitige Zelle zeigt. Wenn
dies stattfindet, so liefert die Sequenzsteuerung 32 einfach den betreffenden
Adressvektor nicht an den Pufferspeicher 32" weiter. Es sei angemerkt, daß der
Zähler 37 mit einer Periode von (N+1) arbeitet, wobei N die Gesamtzahl der
Speicherzellen ist. Bei dem Ausführungsbeispiel gemäß Fig. 6 ist die Periode 50.
Fig. 7 zeigt ein anderes N2-Muster, welches in einem gewissen Sinne die
Umkehrung des Musters gemäß Fig. 6 darstellt. Bei diesem Konzept werden
sämtliche Zellen innerhalb des Speichers 61 mit der Ausnahme einer Zelle 46
konstant gehalten, deren Inhalte variiert werden (Buchstabe "v"). Mit anderen
Worten umfaßt das Muster gemäß Fig. 7 (N-1) diesseitige Zellen und eine
einzige jenseitige Zelle. Es ist offenkundig, daß sich die Dreifachzählerstruktur
gemäß Fig. 5 gleichfalls dazu eignet, die Anforderungen des in Fig. 7 gezeigten
Testes zu erfüllen.
Wiederum ein anderes Testmuster - welches sich zum Testen von Speichern mit
einer höheren Geschwindigkeit als derjenigen des N2-Musters eignet - ist in Fig.
8 gezeigt. Dieses ist das sogenannte "Schmetterlingsmuster". Erneut wird eine
Zelle 47 innerhalb des Speichers 48 als diesseitige Zelle definiert. Jedoch sind
die veränderten jenseitigen Zellen nur solche Zehen, die sich entweder in der
gleichen Reihe oder in der gleichen Spalte wie die diesseitige Zelle 47 befinden.
Der Test beginnt üblicherweise mit vier Zellen, die der diesseitigen Zelle
benachbart sind und in der gleichen Reihe oder Spalte wie die diesseitige Zelle
liegen. Bei dem zweiten Schritt wird die Entfernung von der diesseitigen Zelle um
1 erhöht, usw. Üblicherweise wird dieser Test im Uhrzeigersinn oder im
Gegenuhrzeigersinn durchgeführt. Fig. 8 zeigt ein Beispiel eines Tests im
Uhrzeigersinn. Das bedeutet, daß die erste Zelle des Feldes die Zelle direkt
oberhalb der diesseitigen Zelle ist, welche mit dem Buchstaben "A" bezeichnet
ist. Die Zellen B, C und D sind die als nächstes zu verändernden Zellen. Die
Entfernung zu der diesseitigen Zelle wird um 1 erhöht, wie dies durch die Zelle
E verdeutlicht ist, usw.
Man wird feststellen, daß das sich ergebende Muster in gewisser Weise wie ein
Schmetterling aussieht. Das Schmetterlingsmuster ist ein spezifisches Ausfüh
rungsbeispiel des sogenannten "N3/2-Tests", da die Anzahl der erforderlichen
Testzyklen proportional zu N3/2 ist.
Fig. 9 zeigt eine in gewisser Hinsicht modifizierte Zählerstruktur der
Dekompressionssteuereinheit, welche dazu geeignet ist, die N3/2-Testmuster zu
unterstützen. Die Ablaufsteuerung 32, deren Befehlsspeicher 32' und Puffer 32"
stimmen mit den entsprechenden Komponenten des Ausführungsbeispiels
gemäß Fig. 5 überein.
Der Zähler 49 zeigt auf die diesseitige Zelle (vergleiche Bezugszeichen 47 in Fig.
8). Der Zähler 50 zählt ein Versatzinkrement bezüglich der Reihe, in der die
diesseitige Zelle angeordnet ist. In ähnlicher Weise zählt der Zähler 51 in der
Reihe der diesseitigen Zelle nach unten (d. h. er dekrementiert).
Das Ausgangssignal des Zählers 49 für die diesseitige Zelle wird zusammen mit
dem Ausgangssignal des Reiheninkrementzählers 50 einem Addierer 52
zugeführt. Das Ausgangssignal dieses Addierers wird seinerseits zu der
Sequenzsteuerung rückgekoppelt. Der auf diese Weise von der Ablaufsteuerung
empfangene Vektor zeigt der Reihe nach auf sämtliche Zellen rechts von der
diesseitigen Zelle (z. B. die Zelle B in Fig. 8).
In ähnlicher Weise addiert der Addierer 53 die Inhalte des Zählers 49 für die
diesseitige Zelle sowie die Inhalte des Reihendekrementzählers 51 in der Weise,
daß sämtliche jenseitigen Zellen links von der diesseitigen Zelle (wie
beispielsweise die Zelle D in Fig. 8) addressiert werden.
Diese Struktur wird für die Spaltenzellen wiederholt. Insbesondere ist der Zähler
54 ein Spalteninkrementzähler, so daß der Addierer 55 eine Adresse erzeugt, die
auf sämtliche jenseitigen Zellen oberhalb der diesseitigen Zelle zeigt (Zelten A,
E in Fig. 8). Das Ausgangssignal des Spaltendekrementzählers 56 wird dem
Addierer 57 zugeführt, welcher einen Vektor erzeugt, der auf alle Speicherzellen
unterhalb der diesseitigen Zelle (Zelle C in Fig. 8) zeigt.
Es sei angemerkt, daß es für die Ausführung der vorliegenden Erfindung nicht
erforderlich ist, die Addierer 52, 53, 55 und 57 vorzusehen. Die Addiererfunktion
könnte gleichfalls durch die Sequenzsteuerung 32 zur Vertilgung gestellt werden.
Jedoch wird die Verarbeitungsgeschwindigkeit dadurch, daß Addierer vorge
sehen werden, weiter erhöht.
Die in Fig. 9 gezeigte Schaltungsarchitektur kann verwendet werden, um
gleichfalls den oben beschriebenen N2-Test zu unterstützen. Beispielsweise
können die Zähler 49, 50 und 54 verwendet werden, um drei hierfür erforderliche
Adressen zu liefern. Daher haben diese gleichfalls direkte Rückkopplungen zu
der Sequenzsteuerung 32, wie dies durch die Leitungen 58, 59 und 60
verdeutlicht ist.
Alternativ hierfür ist es gleichfalls möglich, die Zähler 54 und 56 ebenso wie die
Addierer 55 und 57 zu entfernen und die übrigen Zähler 49, 50 und 51 als
Reihen- und Spalten Inkrement-/Dekrement-Zähler arbeiten zu lassen. Dies kann
ohne weiteres durch deren erneute Programmierung erfolgen, wodurch
Hardwarekomponenten eingespart werden. Aus diesem Grunde ist dies
tatsächlich der momentan bevorzugte Lösungsansatz. In der verbleibenden
Struktur haben die Zähler 49, 50 und 51 eine direkte Rückkopplung, d. h. eine
Duplexverbindung mit der Sequenzsteuerung 32, um gleichfalls den N2-Test zu
unterstützen (dies stellt eine Abweichung von Fig. 9 dar, in der keine direkte
Rückkopplung von dem Zähler 51 zu der Sequenzsteuerung 32 gezeigt ist).
Diese alternative Struktur ist daher weitgehend dem Ausführungsbeispiel der Fig.
5 ähnlich, wobei jedoch zusätzlich Zähler 52 und 54 vorgesehen sind.
Claims (26)
1. Verfahren zum Erzeugen eines Testvektors zum Testen einer
Speicherschaltung oder einer gemischten Logik/Speicherschaltung, wobei
Anschlüsse (27a bis 27c) der Speicherschaltung oder der gemischten
Logik/Speicherschaltung einen ersten Teilsatz von Anschlüssen (27a, 27b),
die zumindest zeitweise als Adressanschlüsse dienen, und einen zweiten
Teilsatz von Anschlüssen (27c), die zumindest zeitweise als Datenanschlüsse
dienen, aufweisen, mit folgenden Schritten:
Erzeugen von Steuersignalen und, falls der betreffende Anschluß ein Datenanschluß ist, ferner Erzeugen einer ersten Sequenz von Vektoren;
Erzeugen einer Mehrzahl von Adressensignalen aufgrund der Steuersignale einer Sequenzsteuerung;
falls der betreffende Anschluß ein Datenanschluß ist, Erzeugen einer zweiten Sequenz von Vektoren, wobei die zweite Sequenz von Vektoren in Abhängigkeit von der ersten Sequenz von Vektoren sowie in Abhängigkeit von der Mehrzahl von Adressensignalen erzeugt wird; und
falls der betreffende Anschluß ein Adressanschluß ist, Erzeugen der zweiten Sequenz von Vektoren lediglich in Abhängigkeit von den Adressensignalen.
Erzeugen von Steuersignalen und, falls der betreffende Anschluß ein Datenanschluß ist, ferner Erzeugen einer ersten Sequenz von Vektoren;
Erzeugen einer Mehrzahl von Adressensignalen aufgrund der Steuersignale einer Sequenzsteuerung;
falls der betreffende Anschluß ein Datenanschluß ist, Erzeugen einer zweiten Sequenz von Vektoren, wobei die zweite Sequenz von Vektoren in Abhängigkeit von der ersten Sequenz von Vektoren sowie in Abhängigkeit von der Mehrzahl von Adressensignalen erzeugt wird; und
falls der betreffende Anschluß ein Adressanschluß ist, Erzeugen der zweiten Sequenz von Vektoren lediglich in Abhängigkeit von den Adressensignalen.
2. Verfahren nach Anspruch 1, das ferner folgende Schritte aufweist:
Erzeugen von Befehlen, welche für jeden Anschluß (27a bis 27c) spezifisch sind, aufgrund einer Gesamttestprozedur; und
Speichern der Befehle für jeden Anschluß (27a bis 27c).
Erzeugen von Befehlen, welche für jeden Anschluß (27a bis 27c) spezifisch sind, aufgrund einer Gesamttestprozedur; und
Speichern der Befehle für jeden Anschluß (27a bis 27c).
3. Vorrichtung zum Erzeugen eines Testvektors zum Testen einer
Speicherschaltung oder einer gemischten Logik/ Speicherschaltung, wobei die
Anschlüsse (27a bis 27c) einer Speicherschaltung oder einer gemischten Logik/
Speicherschaltung zumindest einen ersten Teilsatz von
Anschlüssen (27a, 27b), die zumindest zeitweise als Adressanschlüsse dienen,
und einen zweiten Teilsatz von Anschlüssen (27c), die zumindest zeitweise als
Datenanschlüsse dienen, aufweisen,
wobei die Vorrichtung zumindest zwei Anschlußkanäle aufweist,
dadurch gekennzeichnet, daß jeder Anschlußkanal folgende Merkmale aufweist:
eine Sequenzsteuerung (17a bis 17c) zum Erzeugen von Steuersignalen und von einer ersten Sequenz von Vektoren,
eine Generatorschaltung (18a bis 18c), die durch die Steuersignale gesteuert wird, die eine Mehrzahl von Adressensignalen erzeugt, und die diese Adressen signale der Sequenzsteuerung (17a bis 17c) zuführt,
wobei die Sequenzsteuerung (17a bis 17c) ferner eine Vektorverarbeitungseinrichtung (30a bis 30c) zum Erzeugen einer zweiten Sequenz von Vektoren in Abhängigkeit von der ersten Sequenz von Vektoren und in Abhängigkeit von den Adressensignalen, die von der Generatorschaltung (18a bis 18c) empfangen werden, aufweist.
wobei die Vorrichtung zumindest zwei Anschlußkanäle aufweist,
dadurch gekennzeichnet, daß jeder Anschlußkanal folgende Merkmale aufweist:
eine Sequenzsteuerung (17a bis 17c) zum Erzeugen von Steuersignalen und von einer ersten Sequenz von Vektoren,
eine Generatorschaltung (18a bis 18c), die durch die Steuersignale gesteuert wird, die eine Mehrzahl von Adressensignalen erzeugt, und die diese Adressen signale der Sequenzsteuerung (17a bis 17c) zuführt,
wobei die Sequenzsteuerung (17a bis 17c) ferner eine Vektorverarbeitungseinrichtung (30a bis 30c) zum Erzeugen einer zweiten Sequenz von Vektoren in Abhängigkeit von der ersten Sequenz von Vektoren und in Abhängigkeit von den Adressensignalen, die von der Generatorschaltung (18a bis 18c) empfangen werden, aufweist.
4. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet,
daß die Generatorschaltung (18a bis 18c) unabhängig von der
Sequenzsteuerung (17a bis 17c) arbeitet, nachdem sie einmal die Steuersignale
von derselben empfangen hat.
5. Vorrichtung nach Anspruch 3 oder 4, dadurch gekennzeichnet,
daß die Vektorverarbeitungseinrichtung (30a bis 30c) die Befehle mit einem bedingten Operanden ausführt, und
daß die Bedingung für den bedingten Operanden durch die Mehrzahl von Adressensignalen, die von der Generatorschaltung (18a bis 18c) erzeugt werden, festgelegt wird.
daß die Vektorverarbeitungseinrichtung (30a bis 30c) die Befehle mit einem bedingten Operanden ausführt, und
daß die Bedingung für den bedingten Operanden durch die Mehrzahl von Adressensignalen, die von der Generatorschaltung (18a bis 18c) erzeugt werden, festgelegt wird.
6. Vorrichtung nach einem der Ansprüche 3 bis 5, dadurch gekennzeichnet,
daß die Sequenzsteuerung (17a bis 17c) einen Befehlsspeicher (17a' bis 17c')
beinhaltet.
7. Vorrichtung nach Anspruch 6, dadurch gekennzeichnet,
daß die Vorrichtung eine zentrale Steuerung (22) umfaßt, die mit im
wesentlichen sämtlichen Sequenzsteuerungen (17a bis 17c) verbunden ist, und
die die Inhalte eines jeden Sequenzsteuerungs-Befehlsspeichers (17a' bis 17c')
aufgrund der den mindestens zwei Anschlußkanälen zugeordneten Anschlüssen
(27a bis 27c) steuert.
8. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet,
daß die zentrale Steuerung (22) dazu geeignet ist, einen jeden
Sequenzsteuerungs-Befehlsspeicher (17a' bis 17c') mit Befehlen zu laden, die
speziell für einen der Sequenzsteuerung (17a bis 17c) zugeordneten Anschluß
(27a bis 27c) bestimmt sind.
9. Vorrichtung nach Anspruch 8, dadurch gekennzeichnet,
daß die zentrale Steuerung (22) eingerichtet ist, um unterschiedliche Befehle
aufgrund einer gesamten Testprozedur für jeden zugeordneten Anschluß (27a
bis 27c) zu erzeugen.
10. Vorrichtung nach einem der Ansprüche 3 bis 9, dadurch gekennzeichnet,
daß ein Anschlußkanal für im wesentlichen sämtliche Adressanschlüsse (27a,
27b) des ersten Teilsatzes der Anschlüsse vorgesehen ist.
11. Vorrichtung nach einem der Ansprüche 3 bis 10, dadurch gekennzeichnet,
daß die Adressensignale, die von der Generatorschaltung (18a, 18b) erzeugt
werden, Adressen für die Speicherschaltung oder für die gemischte
Logik/Speicherschaltung sind.
12. Vorrichtung nach einem der Ansprüche 3 bis 11 dadurch gekennzeichnet,
daß die Speicherschaltung oder die gemischte Logik/Speicherschaltung auf einer Schaltungsplatine vorgesehen ist, und
daß die Vorrichtung ein Platinentestgerät ist.
daß die Speicherschaltung oder die gemischte Logik/Speicherschaltung auf einer Schaltungsplatine vorgesehen ist, und
daß die Vorrichtung ein Platinentestgerät ist.
13. Vorrichtung nach einem der Ansprüche 3 bis 12, dadurch gekennzeichnet,
daß die Sequenzsteuerung (17a bis 17c) mit wenigstens einem Adresseingang
wenigstens eines Vektorspeichers (19a bis 19c) verbunden ist.
14. Vorrichtung nach einem der Ansprüche 3 bis 13, gekennzeichnet durch
eine Puffereinrichtung (17a" bis 17c"), insbesondere in Form eines
FIFO-Speichers, am Ausgang der Sequenzsteuerung (17a bis 17c).
15. Vorrichtung nach einem der Ansprüche 3 bis 14, gekennzeichnet durch
eine Formatierer-/Komparator-Schaltung (20a bis 20c), die zwischen die
Sequenzsteuerung (17a bis 17c) und wenigstens einen Anschluß (27a bis 27c)
der Speicherschaltung oder der gemischten Logik/Speicherschaltung
geschaltet ist.
16. Vorrichtung nach einem der Ansprüche 3 bis 15, dadurch gekennzeichnet,
daß die Generatorschaltung (18a bis 18c) einen Adressgenerator, insbesondere
einen 1-Bit-Adressgenerator, aufweist.
17. Vorrichtung nach einem der Ansprüche 3 bis 16, dadurch gekennzeichnet,
daß die Generatorschaltung (18a bis 18c) folgende Merkmale aufweist:
einen ersten Zähler (35), der eingerichtet ist, um zumindest das Adressbit des zugeordneten Adressanschlusses der Adresse wenigstens einer ersten Speicherzelle zu erzeugen, deren Inhalt während eines Testzyklus konstant gehalten wird; und
einen zweiten Zähler (36), der eingerichtet ist, um wenigstens das Adressbit des zugeordneten Adressanschlusses der Adresse wenigstens einer zweiten Speicherzelle zu erzeugen, deren Inhalt während eines Testzyklus verändert wird.
einen ersten Zähler (35), der eingerichtet ist, um zumindest das Adressbit des zugeordneten Adressanschlusses der Adresse wenigstens einer ersten Speicherzelle zu erzeugen, deren Inhalt während eines Testzyklus konstant gehalten wird; und
einen zweiten Zähler (36), der eingerichtet ist, um wenigstens das Adressbit des zugeordneten Adressanschlusses der Adresse wenigstens einer zweiten Speicherzelle zu erzeugen, deren Inhalt während eines Testzyklus verändert wird.
18. Vorrichtung nach Anspruch 17, dadurch gekennzeichnet,
daß der erste Zähler (35) eingerichtet ist, um neue Adressen lediglich von Zyklus zu Zyklus zu erzeugen, und
daß der zweite Zähler (36) eingerichtet ist, um neue Adressen der Reihe nach zu erzeugen.
daß der erste Zähler (35) eingerichtet ist, um neue Adressen lediglich von Zyklus zu Zyklus zu erzeugen, und
daß der zweite Zähler (36) eingerichtet ist, um neue Adressen der Reihe nach zu erzeugen.
19. Vorrichtung nach Anspruch 17 oder 18, dadurch gekennzeichnet,
daß der zweite Zähler (36) eingerichtet ist, um neue Adressen lediglich von
Zyklus zu Zyklus zu erzeugen.
20. Vorrichtung nach einem der Ansprüche 17 bis 19, dadurch
gekennzeichnet,
daß die von der Sequenzsteuerung (32) erzeugten Steuersignale Halte-
und/oder Voreinstell-Eingänge von dem ersten oder dem zweiten Zähler (35, 36)
oder von beiden Zählern steuert.
21. Vorrichtung nach Anspruch 20, dadurch gekennzeichnet,
daß der zweite Zähler (36) einen Übertragsausgang aufweist,
daß der erste Zähler (35) einen Starteingang hat, und
daß das Übertragsausgangssignal (45) des zweiten Zählers (36) dem Starteingang des ersten Zählers (35) zugeführt wird.
daß der zweite Zähler (36) einen Übertragsausgang aufweist,
daß der erste Zähler (35) einen Starteingang hat, und
daß das Übertragsausgangssignal (45) des zweiten Zählers (36) dem Starteingang des ersten Zählers (35) zugeführt wird.
22. Vorrichtung nach einem der Ansprüche 17 bis 21, gekennzeichnet durch
einen dritten Zähler (37), der eingerichtet ist, um Koinzidenzen zwischen dem
ersten und dem zweiten Zähler (35, 36) zu zählen.
23. Vorrichtung nach einem der Ansprüche 27 bis 22, gekennzeichnet durch
einen vierten Zähler (50), der eingerichtet ist, um die Inkremente der Adressen einer Speicherzelle innerhalb einer Reihe bezüglich einer Grundzelle zu zählen, und
einen fünften Zähler (51), der eingerichtet ist, um Dekremente der Adressen der Speicherzelle innerhalb einer Reihe bezüglich der Grundzelle zu zählen.
einen vierten Zähler (50), der eingerichtet ist, um die Inkremente der Adressen einer Speicherzelle innerhalb einer Reihe bezüglich einer Grundzelle zu zählen, und
einen fünften Zähler (51), der eingerichtet ist, um Dekremente der Adressen der Speicherzelle innerhalb einer Reihe bezüglich der Grundzelle zu zählen.
24. Vorrichtung nach Anspruch 23, gekennzeichnet durch
eine Additionseinrichtung (52, 53), die mit den Ausgängen des vierten und
fünften Zählers (50, 51) verbunden ist.
25. Vorrichtung nach Anspruch 23, gekennzeichnet durch
einen zweiten vierten Zähler (54), der eingerichtet ist, um Inkremente der Adressen der Speicherzelle innerhalb einer Reihe bezüglich einer Grundzelle zu zählen, und
einen zweiten fünften Zähler (56), der eingerichtet ist, um Dekremente der Adressen der Speicherzelle innerhalb einer Spalte bezüglich der Grundzelle zu zählen.
einen zweiten vierten Zähler (54), der eingerichtet ist, um Inkremente der Adressen der Speicherzelle innerhalb einer Reihe bezüglich einer Grundzelle zu zählen, und
einen zweiten fünften Zähler (56), der eingerichtet ist, um Dekremente der Adressen der Speicherzelle innerhalb einer Spalte bezüglich der Grundzelle zu zählen.
26. Vorrichtung nach Anspruch 25, gekennzeichnet durch
eine zweite Additionseinrichtung (55, 57), die mit den Ausgängen des zweiten
vierten und des zweiten fünften Zählers (54, 56) verbunden ist.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4305442A DE4305442C2 (de) | 1993-02-23 | 1993-02-23 | Verfahren und Vorrichtung zum Erzeugen eines Testvektors |
US08/189,200 US5499248A (en) | 1993-02-23 | 1994-01-31 | Test vector generator comprising a decompression control unit and a conditional vector processing unit and method for generating a test vector |
JP02525794A JP3577332B2 (ja) | 1993-02-23 | 1994-02-23 | 電子デバイスの試験装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4305442A DE4305442C2 (de) | 1993-02-23 | 1993-02-23 | Verfahren und Vorrichtung zum Erzeugen eines Testvektors |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4305442A1 DE4305442A1 (de) | 1994-09-01 |
DE4305442C2 true DE4305442C2 (de) | 1999-08-05 |
Family
ID=6481067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4305442A Expired - Fee Related DE4305442C2 (de) | 1993-02-23 | 1993-02-23 | Verfahren und Vorrichtung zum Erzeugen eines Testvektors |
Country Status (3)
Country | Link |
---|---|
US (1) | US5499248A (de) |
JP (1) | JP3577332B2 (de) |
DE (1) | DE4305442C2 (de) |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5696772A (en) * | 1994-05-06 | 1997-12-09 | Credence Systems Corporation | Test vector compression/decompression system for parallel processing integrated circuit tester |
US5748642A (en) * | 1995-09-25 | 1998-05-05 | Credence Systems Corporation | Parallel processing integrated circuit tester |
DE69613560T2 (de) * | 1996-04-30 | 2002-03-14 | Agilent Technologies, Inc. | Ein Prüfgerät für elektronische Schaltkreise oder Platinen mit komprimierten Datenfolgen |
US5737512A (en) * | 1996-05-22 | 1998-04-07 | Teradyne, Inc. | Fast vector loading for automatic test equipment |
US5872797A (en) * | 1996-12-02 | 1999-02-16 | International Business Machines Corporation | Burn-in signal pattern generator |
US5978942A (en) * | 1996-12-19 | 1999-11-02 | Simd Solutions, Inc. | STAR-I: scalable tester architecture with I-cached SIMD technology |
US5996106A (en) * | 1997-02-04 | 1999-11-30 | Micron Technology, Inc. | Multi bank test mode for memory devices |
US5883905A (en) * | 1997-02-18 | 1999-03-16 | Schlumberger Technologies, Inc. | Pattern generator with extended register programming |
US6018814A (en) * | 1997-03-26 | 2000-01-25 | Simd Solutions, Inc. | Star-I: scalable tester architecture with I-cached SIMD technology |
US5805610A (en) * | 1997-04-28 | 1998-09-08 | Credence Systems Corporation | Virtual channel data distribution system for integrated circuit tester |
US5894484A (en) * | 1997-04-28 | 1999-04-13 | Credence Systems Corporation | Integrated circuit tester with distributed instruction processing |
US5913928A (en) | 1997-05-09 | 1999-06-22 | Micron Technology, Inc. | Data compression test mode independent of redundancy |
US5883906A (en) * | 1997-08-15 | 1999-03-16 | Advantest Corp. | Pattern data compression and decompression for semiconductor test system |
US5951705A (en) * | 1997-10-31 | 1999-09-14 | Credence Systems Corporation | Integrated circuit tester having pattern generator controlled data bus |
US5825787A (en) * | 1997-11-25 | 1998-10-20 | Xilinx, Inc. | System and method for accessing a test vector memory |
US6067651A (en) * | 1998-02-20 | 2000-05-23 | Hewlett-Packard Company | Test pattern generator having improved test sequence compaction |
US6131172A (en) * | 1998-02-20 | 2000-10-10 | Micron Electronics, Inc. | Method for classifying electronic devices |
US6107818A (en) * | 1998-04-15 | 2000-08-22 | Teradyne, Inc. | High speed, real-time, state interconnect for automatic test equipment |
US6057679A (en) * | 1998-06-12 | 2000-05-02 | Credence Systems Corporation | Integrated circuit tester having amorphous logic for real-time data analysis |
JP2000046916A (ja) * | 1998-07-30 | 2000-02-18 | Ando Electric Co Ltd | パタンデータ転送回路 |
US6181616B1 (en) | 1998-09-03 | 2001-01-30 | Micron Technology, Inc. | Circuits and systems for realigning data output by semiconductor testers to packet-based devices under test |
US6374376B1 (en) | 1998-09-03 | 2002-04-16 | Micron Technology, Inc. | Circuit, system and method for arranging data output by semiconductor testers to packet-based devices under test |
US6181151B1 (en) * | 1998-10-28 | 2001-01-30 | Credence Systems Corporation | Integrated circuit tester with disk-based data streaming |
US6092225A (en) * | 1999-01-29 | 2000-07-18 | Credence Systems Corporation | Algorithmic pattern generator for integrated circuit tester |
EP0999450B1 (de) | 1999-08-23 | 2002-04-10 | Agilent Technologies, Inc. (a Delaware corporation) | Modulare Schnittstelle zwischen Testeinrichtung und Anwendungseinrichtung |
US20030110427A1 (en) * | 2000-04-12 | 2003-06-12 | Advantest Corporation | Semiconductor test system storing pin calibration data in non-volatile memory |
JP4430801B2 (ja) * | 2000-08-03 | 2010-03-10 | 株式会社アドバンテスト | 半導体メモリ試験装置 |
US6560756B1 (en) * | 2001-07-02 | 2003-05-06 | Ltx Corporation | Method and apparatus for distributed test pattern decompression |
DE10159165B4 (de) | 2001-12-03 | 2007-02-08 | Agilent Technologies, Inc. (n.d.Ges.d.Staates Delaware), Palo Alto | Vorrichtung zum Messen und/oder Kalibrieren eines Testkopfes |
EP1255386B1 (de) | 2001-12-05 | 2007-10-24 | Agilent Technologies, Inc. | Leitungsentzerrer zur Kompensation von Droop-Effekten |
DE60300141T2 (de) * | 2003-02-25 | 2005-11-03 | Agilent Technologies, Inc., Palo Alto | Aufspüren eines Signalübergangs |
US7404109B2 (en) * | 2003-06-12 | 2008-07-22 | Verigy (Singapore) Pte. Ltd. | Systems and methods for adaptively compressing test data |
DE60308844T2 (de) * | 2003-06-17 | 2007-03-01 | Agilent Technologies, Inc., Palo Alto | Sigma-Delta-Modulator mit Pulsbreitenmodulations-Ausgang |
US7278123B2 (en) * | 2003-10-17 | 2007-10-02 | Nec Laboratories America, Inc. | System-level test architecture for delivery of compressed tests |
US7842948B2 (en) | 2004-02-27 | 2010-11-30 | Nvidia Corporation | Flip chip semiconductor die internal signal access system and method |
US7386777B2 (en) * | 2004-04-05 | 2008-06-10 | Verigy (Singapore) Pte. Ltd. | Systems and methods for processing automatically generated test patterns |
DE602004021469D1 (de) * | 2004-04-05 | 2009-07-23 | Verigy Pte Ltd Singapore | Vorrichtung zum lösbaren Verbinden eines Interfaces an einer Testeinrichtung |
EP1600784A1 (de) * | 2004-05-03 | 2005-11-30 | Agilent Technologies, Inc. | Serielle/parallele Schnittstelle für einen Tester für integrierte Schaltkreise |
EP1752779B1 (de) * | 2004-06-24 | 2008-08-06 | Verigy (Singapore) Pte. Ltd. | Taktsynthese pro Stift |
ATE441120T1 (de) * | 2004-07-07 | 2009-09-15 | Verigy Pte Ltd Singapore | Auswertung eines ausgangssignals eines gerade geprüften bausteins |
DE602004015276D1 (de) * | 2004-08-06 | 2008-09-04 | Verigy Pte Ltd Singapore | Verbesserte Analogsignalerzeugung mittels eines Delta-Sigma Modulators |
US7279887B1 (en) * | 2004-08-06 | 2007-10-09 | Nvidia Corporation | In-process system level test before surface mount |
WO2006092173A1 (en) | 2005-03-02 | 2006-09-08 | Agilent Technologies, Inc. | Analog signal test using a-priori information |
DE602005009133D1 (de) * | 2005-03-11 | 2008-10-02 | Verigy Pte Ltd Singapore | Fehlererkennung in komprimierten Daten |
WO2006117255A1 (en) * | 2005-04-29 | 2006-11-09 | Verigy (Singapore) Pte Ltd. | Communication circuit for a bi-directonal data transmission |
US20070022349A1 (en) * | 2005-07-07 | 2007-01-25 | Agilent Technologies, Inc. | Test apparatus with tester channel availability identification |
US8271252B2 (en) * | 2007-11-08 | 2012-09-18 | Nvidia Corporation | Automatic verification of device models |
US8510616B2 (en) * | 2008-02-14 | 2013-08-13 | Nvidia Corporation | Scalable scan-based test architecture with reduced test time and test power |
TWI384235B (zh) * | 2008-04-01 | 2013-02-01 | Universal Scient Ind Shanghai | 測試裝置 |
US8745200B2 (en) * | 2008-05-06 | 2014-06-03 | Nvidia Corporation | Testing operation of processors setup to operate in different modes |
TWI395276B (zh) * | 2008-10-27 | 2013-05-01 | King Yuan Electronics Co Ltd | Chip can be expanded to control the number of signal burner |
US8838406B2 (en) | 2008-11-11 | 2014-09-16 | Advantest (Singapore) Pte Ltd | Re-configurable test circuit, method for operating an automated test equipment, apparatus, method and computer program for setting up an automated test equipment |
US8943457B2 (en) * | 2008-11-24 | 2015-01-27 | Nvidia Corporation | Simulating scan tests with reduced resources |
US9152520B2 (en) * | 2013-09-26 | 2015-10-06 | Texas Instruments Incorporated | Programmable interface-based validation and debug |
US9488674B2 (en) | 2014-07-09 | 2016-11-08 | Infineon Technologies Ag | Testing device and a circuit arrangement |
CN109143045B (zh) * | 2018-10-24 | 2024-02-13 | 武汉精鸿电子技术有限公司 | 一种时序及波形生成装置及方法 |
CN112100954B (zh) * | 2020-08-31 | 2024-07-09 | 北京百度网讯科技有限公司 | 验证芯片的方法、装置和计算机存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4450560A (en) * | 1981-10-09 | 1984-05-22 | Teradyne, Inc. | Tester for LSI devices and memory devices |
DE3346942C1 (de) * | 1983-12-24 | 1985-01-24 | Hewlett-Packard GmbH, 7030 Böblingen | Vergleicherschaltung fuer binaere Signale |
US4639919A (en) * | 1983-12-19 | 1987-01-27 | International Business Machines Corporation | Distributed pattern generator |
EP0325670B1 (de) * | 1988-01-28 | 1990-09-26 | Hewlett-Packard GmbH | Erkennungsschaltung für Binärsignalzustandswechsel |
EP0329798B1 (de) * | 1988-01-28 | 1990-12-19 | Hewlett-Packard GmbH | Impulsformerschaltung |
US5001418A (en) * | 1989-12-06 | 1991-03-19 | Posse Kenneth E | Method for compressing data-vectors for a circuit board testing machine |
EP0474274A2 (de) * | 1990-09-05 | 1992-03-11 | Schlumberger Technologies, Inc. | Ablaufsteuerung für automatische Testeinrichtung |
EP0474275A2 (de) * | 1990-09-05 | 1992-03-11 | Schlumberger Technologies, Inc. | Automatisches Prüfausrüstungssystem, das eine Stiftscheibenarchitektur verwendet |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4517661A (en) * | 1981-07-16 | 1985-05-14 | International Business Machines Corporation | Programmable chip tester having plural pin unit buffers which each store sufficient test data for independent operations by each pin unit |
JPS58158566A (ja) * | 1982-03-17 | 1983-09-20 | Hitachi Ltd | 検査装置 |
US4931723A (en) * | 1985-12-18 | 1990-06-05 | Schlumberger Technologies, Inc. | Automatic test system having a "true tester-per-pin" architecture |
US4989209A (en) * | 1989-03-24 | 1991-01-29 | Motorola, Inc. | Method and apparatus for testing high pin count integrated circuits |
JP2584673B2 (ja) * | 1989-06-09 | 1997-02-26 | 株式会社日立製作所 | テストデータ変更回路を有する論理回路テスト装置 |
US5025205A (en) * | 1989-06-22 | 1991-06-18 | Texas Instruments Incorporated | Reconfigurable architecture for logic test system |
US5127011A (en) * | 1990-01-12 | 1992-06-30 | International Business Machines Corporation | Per-pin integrated circuit test system having n-bit interface |
-
1993
- 1993-02-23 DE DE4305442A patent/DE4305442C2/de not_active Expired - Fee Related
-
1994
- 1994-01-31 US US08/189,200 patent/US5499248A/en not_active Expired - Lifetime
- 1994-02-23 JP JP02525794A patent/JP3577332B2/ja not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4450560A (en) * | 1981-10-09 | 1984-05-22 | Teradyne, Inc. | Tester for LSI devices and memory devices |
US4639919A (en) * | 1983-12-19 | 1987-01-27 | International Business Machines Corporation | Distributed pattern generator |
DE3346942C1 (de) * | 1983-12-24 | 1985-01-24 | Hewlett-Packard GmbH, 7030 Böblingen | Vergleicherschaltung fuer binaere Signale |
EP0325670B1 (de) * | 1988-01-28 | 1990-09-26 | Hewlett-Packard GmbH | Erkennungsschaltung für Binärsignalzustandswechsel |
EP0329798B1 (de) * | 1988-01-28 | 1990-12-19 | Hewlett-Packard GmbH | Impulsformerschaltung |
US5001418A (en) * | 1989-12-06 | 1991-03-19 | Posse Kenneth E | Method for compressing data-vectors for a circuit board testing machine |
EP0474274A2 (de) * | 1990-09-05 | 1992-03-11 | Schlumberger Technologies, Inc. | Ablaufsteuerung für automatische Testeinrichtung |
EP0474275A2 (de) * | 1990-09-05 | 1992-03-11 | Schlumberger Technologies, Inc. | Automatisches Prüfausrüstungssystem, das eine Stiftscheibenarchitektur verwendet |
Also Published As
Publication number | Publication date |
---|---|
DE4305442A1 (de) | 1994-09-01 |
US5499248A (en) | 1996-03-12 |
JP3577332B2 (ja) | 2004-10-13 |
JPH06342036A (ja) | 1994-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4305442C2 (de) | Verfahren und Vorrichtung zum Erzeugen eines Testvektors | |
DE19833208C1 (de) | Integrierte Schaltung mit einer Selbsttesteinrichtung zur Durchführung eines Selbsttests der integrierten Schaltung | |
DE68914172T2 (de) | Datenverarbeitungssystem und Videoverarbeitungssystem mit einem derartigen Datenverarbeitungssystem. | |
DE69125438T2 (de) | Ablaufsteuerung für automatische Testeinrichtung | |
DE19882486B4 (de) | Synchroner, nicht-flüchtiger Seitenmodus-Speicher | |
DE69428634T2 (de) | Hardware-Anordnung und Verfahren zur Ausdehnung der Datenverarbeitungszeit in den Fliessbandstufen eines Mikrorechnersystems | |
DE3515802C2 (de) | ||
DE2219918A1 (de) | Programmierbares Steuergerät | |
DE69613560T2 (de) | Ein Prüfgerät für elektronische Schaltkreise oder Platinen mit komprimierten Datenfolgen | |
DE2524046A1 (de) | Elektronische datenverarbeitungsanlage | |
DE2750344C2 (de) | Logikschaltung zum Betätigen irgendeiner Teilmenge einer Mehrzahl von Vorrichtungen | |
DE3689414T2 (de) | Automatisches Prüfsystem mit "wahrem Prüfer-per-Anschluss" -Architektur. | |
DE2926322A1 (de) | Speicher-subsystem | |
DE19526008A1 (de) | Vertikal partitionierter, primärer Befehls-Cache-Speicher | |
DE69714532T2 (de) | Synchrone Halbleiterspeichervorrichtung mit Makrobefehlsspeichern und Ausführungsverfahren dafür | |
DE69524315T2 (de) | Speicherarchitektur für eine automatische Testeinrichtung mit Vektormodultabelle | |
DE2433436A1 (de) | Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer | |
DE4222275C2 (de) | Parallelprozessor und Betriebsverfahren für diesen | |
DE69122001T2 (de) | Integrierte Schaltung mit einer Standardzelle, einer Anwendungszelle und einer Prüfzelle | |
DE10110567B4 (de) | Datenverarbeitungssystem mit einstellbaren Takten für unterteilte synchrone Schnittstellen | |
DE2759120A1 (de) | Prozessor fuer datenverarbeitungssysteme | |
DE60005830T2 (de) | Verfahren und vorrichtung zum steuern eines sprungverzögerungsschlitzes in einem pipelineprozessor | |
DE2938929A1 (de) | Dv-system | |
DE3885935T2 (de) | Digitaler In-Circuit-Prüfer mit Kanalspeicherlöschschutz. | |
EP0459001B1 (de) | Integrierter Halbleiterspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: AGILENT TECHNOLOGIES DEUTSCHLAND GMBH, 71034 BOEBL |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: VERIGY (SINGAPORE) PTE. LTD., SINGAPORE, SG |
|
8339 | Ceased/non-payment of the annual fee |