DE19955380C2 - Prüfmustergenerator, Prüfvorrichtung und Verfahren zum Erzeugen von Prüfmustern - Google Patents
Prüfmustergenerator, Prüfvorrichtung und Verfahren zum Erzeugen von PrüfmusternInfo
- Publication number
- DE19955380C2 DE19955380C2 DE19955380A DE19955380A DE19955380C2 DE 19955380 C2 DE19955380 C2 DE 19955380C2 DE 19955380 A DE19955380 A DE 19955380A DE 19955380 A DE19955380 A DE 19955380A DE 19955380 C2 DE19955380 C2 DE 19955380C2
- Authority
- DE
- Germany
- Prior art keywords
- pattern
- test pattern
- memory
- vector
- 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
- 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
Description
Die vorliegende Erfindung betrifft eine Prüfvorrich
tung, einen Prüfmustergenerator zum Erzeugen von Prüf
mustern und ein Verfahren zum Erzeugen von Prüfmus
tern zum Prüfen einer elektrischen Vorrichtung.
Ein herkömmlicher Prüfmustergenerator einer Prüfvor
richtung für eine elektrische Vorrichtung weist einen
SRAM (statischer Speicher) oder DRAM (dynamischer
Speicher) mit einer großen Kapazität zum Speichern
von Programmen für die Erzeugung von Prüfmustern auf.
Der DRAM wird verwendet, wenn die Kapazität des SRAM
nicht ausreicht, um die erforderlichen Programme für
die Erzeugung der Prüfmuster zu speichern. Wenn der
DRAM verwendet wird, wird ein Prüfmuster von dem DRAM
über einen Cachespeicher erzeugt, da der DRAM in ei
ner vorgegebenen Periode aufgefrischt werden muss und
es störend ist, wenn bei der Benutzung des DRAM zu
einer Adresse einer verschiedenen Reihe zugegriffen
wird.
Fig. 1 ist ein Blockschaltbild eines einen SRAM auf
weisenden herkömmlichen Prüfmustergenerators. Der
herkömmliche Prüfmustergenerator umfasst eine Folge
steuervorrichtung 62 und einen Prüfsignalgenerator
26. Die Folgesteuervorrichtung 62 umfasst einen Vek
torspeicher 12, Vektorspeicherbänke 16 und 18, einen
Vektorbefehls-Multiplexer 20 und einen Adressenexpan
der 22. Der Mustersignalgenerator 26 umfasst einen
Musterspeicher unter Verwendung des SRAM. Die Folge
steuervorrichtung 62 erzeugt ein Adressensignal 24 in
einer gewünschten Reihenfolge. Wenn das Adressensi
gnal 24 aufeinanderfolgend in den Mustersignalgenera
tor 26 eingegeben wird, wird jede der in dem Muster
signalgenerator 26 gespeicherten Speicheradressen mit
jedem der Prüfmuster verbunden, um eine gewünschte
Reihe von Prüfmustern zu erzeugen. So werden die
Prüfmuster erzeugt.
Die Lesesteuervorrichtung 14 der Folgesteuervorrich
tung 62 liest die in dem Vektorspeicher 12 gespei
cherten Vektorbefehle. Die Vektorbefehle werden vor
übergehend in den Vektorspeicherbänken 16 und 18 ge
speichert. Der Vektorbefehls-Multiplexer 20 wählt ei
nen Vektorbefehl aus den vorübergehend in den Vektor
speicherbänken 16 und 18 gespeicherten Vektorbefehlen
aus und gibt den ausgewählten Vektorbefehl zu dem
Adressenexpander 22 aus. Die Adresse des Adressensi
gnals 24 wird durch den Adressenexpander 22 erweitert
und zu dem Prüfsignalgenerator 26 übertragen. Jedes
der in dem Musterspeicher gespeicherten Mustersignale
wird mit jedem der Adressensignale 24 in dem Muster
signalgenerator 26 verbunden, um Prüfmustersignale 28
zum Prüfen einer elektrischen Vorrichtung zu erzeu
gen.
Fig. 2 zeigt ein Beispiel eines in dem Vektorspeicher
12 zu speichernden Musterprogramms. Der Befehl "GOSUB
A" bedeutet, daß die Routine zu der mit "A" bezeich
neten Subroutine gehen sollte. Der Befehl "RETURN"
bedeutet, daß die Subroutine beendet werden sollte
und die Routine zu dem nächsten Befehl (bei einer
Adresse, bei der eine Adresse zu der vorhergehenden
Adresse addiert ist) zu dem Befehl "GOSUB" zurückkeh
ren sollte. Der Befehl "REPEAT n" bedeutet, daß das
Prüfmuster der angezeigten Adresse n mal ausgegeben
werden sollte. Der Befehl "NEXT" bedeutet, daß die
Routine zu der nächsten Adresse (eine zu der vorher
gehenden Adresse addierte Adresse) übergehen sollte.
Der Befehl "STOP" bedeutet, daß die Prüfung beendet
werden sollte.
Die Prüfmuster für eine elektrische Vorrichtung wer
den erzeugt durch Anordnen jedes der durch diese Vek
torbefehle bestimmten individuellen Prüfmuster. Die
Befehle der Adressen #11 bis Adresse #15 werden mit
"A" bezeichnet und arbeiten als die Subroutinen.
Fig. 3 zeigt eine Beispiel eines komprimierten Mu
sterprogramms, das in dem Vektorspeicher zu speichern
ist. Das Musterprogramm der in Fig. 2 gezeigten Vek
torbefehle umfasst die Befehle "NEXT", welche bedeu
ten, daß die Routine zu der nächsten Adresse gehen
sollte. Daher werden die Befehle "NEXT" weggelassen
und das Musterprogramm wird verdichtet, wie in Fig. 3
gezeigt ist, um in den Vektorspeicher gespeichert zu
werden. Bei dieser Anwendung werden die Befehle
"NEXT" weggelassen und das Musterprogramm wird insge
samt verdichtet. Die Folge hiervon ist, daß eine Vek
torspeicher mit kleiner Kapazität als Prüfmustergene
rator dienen kann.
Der Befehl "GOSUB A #0 #11" bedeutet, daß der Befehl
der Adresse #0 "GOSUB A" ist und die Adresse, zu wel
cher die Routine gehen sollte, #11 ist. Der Befehl
"REPEAT 3 #3" bedeutet, daß der Befehl der Adresse #
3 "REPEAT 3" ist, so daß der Befehl der Adresse #3
dreimal wiederholt werden sollte. Dies bedeutet auch,
daß die Befehle der Adresse #1 und der Adresse #2
"NEXT" sind. Somit ist das Musterprogramm insgesamt
verdichtet.
Fig. 4 zeigt in dem Mustersignalgenerator 26 zu spei
chernde Befehle. Vorbestimmte Muster, die als PAT0,
PAT1, . . ., PATn gezeigt sind, werden vorher in einem
externen Speicher wie einer Platte gespeichert, wel
che in den Zeichnungen nicht gezeigt ist. Die vorbe
stimmten Muster werden dann von der Platte ausgele
sen, wenn die Vorrichtung eingeschaltet ist, und an
den jeweiligen Adressen #0, #1, . . ., #n des Mustersi
gnalgenerators 26 gespeichert.
Fig. 5 zeigt die Arbeitsweise eines herkömmlichen
Prüfmustergenerators. In Fig. 5 speichert jede der
Vektorspeicherbänke 16 und 18 drei Wörter. Der Mu
stergenerator 60 wird initialisiert, bevor die Prü
fung beginnt. Bei der Initialisierung werden die Vek
torbefehle aus dem Vektorspeicher 12, welche vorher
in der Vektorspeicherbank 16 gespeichert wurden, auf
der Grundlage der Befehle von der in Fig. 1 gezeigten
Lesesteuervorrichtung 14 ausgelesen.
Die in Fig. 1 gezeigte Lesesteuervorrichtung 14 gibt
die in dem Vektorspeicher 12 gespeicherten Befehle
unter Berücksichtigung der Reihenfolgen zu der Vek
torspeicherbank 16 aus. Beispielsweise bedeutet der
Befehl "GOSUB A", daß die Routine zu der mit "A" be
zeichneten Subroutine gehen sollte; daher wird der
Befehl "REPEAT 2 #13" nachfolgend dem Befehl "GOSUB A
#0 #11" geschrieben.
Wenn der Befehl "REPEAT" ausgegeben wird, geht die
Routine zu der nächsten Adresse weiter. Der Befehl
"RETURN #15 #1" wird als nächster nach dem Befehl
"REPEAT" geschrieben. Die Initialisierung ist been
det, wenn die ersten drei Wörter in die Vektorspei
cherbank 16 eingeschrieben sind. Die Prüfung wird be
gonnen, wenn die Initialisierung des Prüfmustergene
rators 60 beendet ist. Die Prüfung schreitet fort wie
nachfolgend erläutert. Der in Fig. 1 gezeigte Adres
senexpander 14 dehnt die komprimierten Befehle, wel
che in der Vektorspeicherbank 16 gespeichert waren,
während der Prüfmustergenerator 60 initialisiert
wird.
Das Adressensignal 24, das den Musterspeicher unter
Verwendung des SRAM umfasst, wird zu der Musterform
vorrichtung 26 geliefert. Die Musterformvorrichtung
26 gibt die darin gespeicherten Prüfmuster aus auf
der Grundlage des Adressensignals 24 und liefert die
ausgegebenen Prüfmustersignale zu der elektrischen
Vorrichtung 76. Nachdem die Prüfung begonnen hat,
gibt der Vektorbefehls-Multiplexer 20 selektiv die
komprimierten Befehle von den Vektorspeicherbänken,
in welchen die Vektorbefehle vorher gespeichert wa
ren, zu dem Adressenexpander 22 aus.
Ein das die drei in der Vektorspeicherbank 16 gespei
cherten drei Wörter aufweisendes Programm führt bei
der Initialisierung die nachfolgend gezeigten Befehle
aus. Zuerst geht die Routine durch den Befehl "GOSUB
a #0, #11" von der Adresse #0 zu der Adresse #11. Die
Routine geht dann in Reihenfolge von der Adresse #11
zu der Adresse #13 und die Adresse #13 wird durch den
Befehl "REPEAT 2 #13" zweimal wiederholt. Die Routine
geht dann zu der Adresse #14 weiter. Die Routine geht
von der Adresse #14 zu der Adresse #15 weiter und
geht durch den Befehl "RETURN #15 #1" zu der Adresse
#1.
Während die Prüfmuster von der Vektorspeicherbank 16
erzeugt werden, wird der als nächstes auszuführende
Vektorbefehl von dem Vektorspeicher 12 auf der Grund
lage der Befehle von der Lesesteuervorrichtung 14 zu
der Vektorspeicherbank 18 übertragen. Nachdem die
Prüfmuster von der Vektorspeicherbank 16 erzeugt
sind, wird eine andere Reihe von Prüfmustern auf der
Grundlage der in der Vektorspeicherbank 18 gespei
cherten Befehle erzeugt. Während die Prüfmuster von
der Vektorspeicherbank 18 erzeugt werden, wird der
als nächsten auszuführende Vektorbefehl auf der
Grundlage der Befehle von der Lesesteuervorrichtung
14 von dem Vektorspeicher 12 zu der Vektorspeicher
bank 16 übertragen. In gleicher Weise wird eine ande
re Reihe von Prüfmustern auf der Grundlage der in der
Vektorspeicherbank 16 gespeicherten Befehle erzeugt,
nachdem die Prüfmuster von der Vektorspeicherbank 18
erzeugt wurden.
Durch Wiederholung dieser Operationen werden die
Prüfmuster aufeinander folgend von einer der Vektor
speicherbänke 16 und 18 ausgegeben. Der herkömmliche
Prüfmustergenerator minimiert das Musterprogramm
durch Verwendung des Initialisierungsmusters enthal
tend gemeinsam die Subroutine wie den Befehl "GOSUB"
und die "Kennzeichnung A". Durch Minimierung des Mu
sterprogramms wird die erforderliche Kapazität des
Vektorspeichers 12 minimiert.
Fig. 6 zeigt ein Blockschaltbild der herkömmlichen
Musterformvorrichtung 26, welche einen DRAM aufweist.
Die Musterformvorrichtung 26 umfasst einen Muster
speicher 32, der durch den DRAM gebildet ist, eine
Übertragungssteuervorrichtung 34, Multiplexer 36 und
38 für den Musterspeicher, Cashe-Speicherbänke 40 und
42 für den Musterspeicher und einen Multiplexer 44
für die Musterchache-Speicher.
Die den DRAM aufweisende Musterformvorrichtung 26 er
zeugt die Prüfmustersignale aus dem Musterspeicher 32
über die Cache-Speicher 40 und 42. Die Arbeitsweise
der Musterformvorrichtung 26 wird nachfolgen erläu
tert. Das Adressensignal 24 wird zu den Multiplexern
36 und 38 sowie zu der Übertragungssteuervorrichtung
34 übertragen. Wenn das Adressensignal 24 in den Mul
tiplexer 44 eingegeben wird, wählt der Multiplexer 44
eine der Cache-Speicherbänke 40 oder 42 aus auf der
Grundlage der Differenz des früheren Bits und liest
die Mustersignale aus der ausgewählten Cache-
Speicherbank aus.
Das Adressensignal 24 wird auch in die Multiplexer 36
und 38 sowie die Übertragungssteuervorrichtung 34
eingegeben. Die Übertragungssteuervorrichtung 34
wählt eine der Musterspeicherbänke 40 und 42 aus, aus
welcher das Mustersignal dann vollständig ausgelesen
wird auf der Grundlage der die Adresse anzeigenden
Bits. Die Übertragungssteuervorrichtung überträgt
dann die nächsten Mustersignale von dem Musterspei
cher 32 über den mit der ausgewählten Musterspeicher
bank 40 oder 42 verbundenen Multiplexer 44 zu der
ausgewählten Musterspeicherbank 40 oder 42. Wenn das
Adressensignal in die Übertragungssteuervorrichtung
34 eingegeben ist, werden die Prüfmuster selektiv zu
einer der Musterspeicherbänke 40 oder 42 übertragen.
Die gewünschten Prüfmuster werden auf der Grundlage
der Adresseninformation von dem Multiplexer 44 er
zeugt.
Wenn der SRAM als der Musterspeicher des Mustersig
nalgenerators 26 verwendet wird, wird die erforderli
che Kapazität des Musterspeichers unter Verwendung
einer Subroutine minimiert. Jedoch nimmt mit elektri
schen Vorrichtungen von großem Ausmaß und multifunk
tionellen elektrischen Vorrichtungen die Anzahl der
zum Prüfen einer einzelnen elektrischen Vorrichtung
erforderlichen Testmuster zu. Die Kapazität des SRAM
ist nicht groß genug, um diese Anzahl von erforderli
chen Mustern zu speichern. Somit ist es erforderlich,
für den Prüfmustergenerator einen DRAM zu verwenden.
Fig. 7 zeigt ein Musterprogramm enthaltend das Initi
alisierungsmuster am Beginn von jeder Prüfliste. Nur
aufeinander folgende Adressen können von dem DRAM zu
dem Cache-Speicher übertragen werden. In dem Fall, in
welchem nur die aufeinander folgenden Adressen zu dem
Cache-Speicher übertragen werden, ist es unmöglich,
eine Subroutine einzuschließen. Daher wird in diesem
Fall das Initialisierungsmuster von jeder der Prüf
listen beim Beginn jeder Prüfliste ohne Einschluss
der Subroutine geschrieben. Die Folge ist, dass ein
DRAM mit einer extrem großen Kapazität benötigt wird,
da der DRAM das Initialisierungsmuster für jede der
Prüflisten speichern muss.
Die JP 10-153646 A offenbart einen Prüfmustergenera
tor mit einem Signalspeicher, aus dem ein Befehlscode
ausgelesen wird. Von einer Steuereinheit wird ge
prüft, ob der Befehlscode eines Sprunganweisung ent
hält. Ist dies nicht der Fall, wird mittels eines Ad
resszeigers, der jeweils durch den Mustertakt inkre
mentiert wird, auf einen Hauptmusterspeicher zuge
griffen. Ist andererseits ein Sprung vorgesehen, wer
den eine Start- und eine Stoppadresse an eine Sub-
Sequenzer-Einheit gegeben, durch die dann auf einen
Submusterspeicher zugegriffen wird.
Die US 5 142 223 A beschreibt eine Prüfvorrichtung
für eine Halbleiterschaltung mit einem Hauptbefehls
speicher, einer Hauptmuster-Steuervorrichtung und je
weils einer Pinprüfungseinheit für jeden Pin der zu
prüfenden Halbleiterschaltung. Die einzelnen Pinprü
fungseinheiten enthalten jeweils einen Pinbefehls
speicher, einen Musterspeicher, eine Pinmuster-
Steuervorrichtung, einen Ausgangswellenform-
Erzeugungskreis und einen Komparator. Über einen ex
ternen Anschuss ist die jeweilige Pinprüfungseinheit
mit dem zugehörigen Pin der Halbleiterschaltung ver
bunden.
Messner, H.-P.: PC-Hardwarebuch, 3. erweiterte Aufla
ge, Addison-Wesley Publishing Company, 1995, Seiten
253-262, erläutert das Cache-Prinzip, bei dem die
jeweiligen Vorteile von schnellen SRAMs und kosten
günstigen DRAMs kombiniert werden, um ein möglichst
effektives Speichersystem zu erhalten.
Es ist die Aufgabe der vorliegenden Erfindung, einen
einfacheren Prüfmustergenerator, eine entsprechende
Speicherprüfvorrichtung und ein Verfahren zum Erzeu
gen von Prüfmustern anzugeben, durch die die genann
ten Probleme des Standes der Technik nach den Fig.
1 bis 2 überwunden werden. Diese Aufgabe wird gelöst
durch einen Prüfmustergenerator mit den Merkmalen des
Anspruchs 1, eine Prüfvorrichtung mit den Merkmalen
des Anspruchs 21 und ein Verfahren mit den Merkmalen
des Anspruchs 23. Vorteilhafte Weiterbildungen dieses
Prüfmustergenerators dieser Prüfvorrichtung und die
ses Verfahrens ergeben sich aus den jeweiligen Unter
ansprüchen.
Gemäß einem ersten Aspekt der Erfindung ist ein Prüf
mustergenerator zum Erzeugen von Prüfmustern für die
Prüfung von elektrischen Eigenschaften einer elektri
schen Vorrichtung vorgesehen, welcher aufweist:
einen Musterspeicher zum Speichern von Prüfmustern,
einen Muster-Cachespeicher zum vorübergehenden Spei chern von aus dem Musterspeicher ausgelesenen Prüf mustern, welcher Muster-Cachespeicher aus einem Hauptprüfmuster-Cachespeicher und einem Subprüfmus ter-Cachespeicher besteht,
einen Vektorspeicher zum Speichern von Vektorbefeh len, die eine Reihenfolge der zu erzeugenden Prüfmus ter anzeigen,
eine Lese-Steuervorrichtung, die aus dem Vektorspei cher einen Vektorbefehl ausliest und ein Übertra gungsbefehlssignal ausgibt, wenn der aus dem Vektor speicher ausgegebene Vektorbefehl einen Adressen sprung für die aus dem Musterspeicher auszulesenden Prüfmuster anzeigt, und
eine Übertragungssteuervorrichtung, die das Prüfmus ter entsprechend einem aus dem Vektorbefehl abgelei teten Adressensignal aus dem Musterspeicher ausliest und das Prüfmuster als ein Hauptprüfmuster an den Hauptprüfmuster-Cachespeicher überträgt, wenn der Vektorbefehl keinen Adressensprung anzeigt bzw. das Prüfmuster entsprechend dem Adressensignal aus dem Musterspeicher ausliest und das Prüfmuster als ein Subprüfmuster an den Subprüfmuster-Cachespeicher ü berträgt, wenn der Vektorbefehl einen Adressensprung anzeigt.
einen Musterspeicher zum Speichern von Prüfmustern,
einen Muster-Cachespeicher zum vorübergehenden Spei chern von aus dem Musterspeicher ausgelesenen Prüf mustern, welcher Muster-Cachespeicher aus einem Hauptprüfmuster-Cachespeicher und einem Subprüfmus ter-Cachespeicher besteht,
einen Vektorspeicher zum Speichern von Vektorbefeh len, die eine Reihenfolge der zu erzeugenden Prüfmus ter anzeigen,
eine Lese-Steuervorrichtung, die aus dem Vektorspei cher einen Vektorbefehl ausliest und ein Übertra gungsbefehlssignal ausgibt, wenn der aus dem Vektor speicher ausgegebene Vektorbefehl einen Adressen sprung für die aus dem Musterspeicher auszulesenden Prüfmuster anzeigt, und
eine Übertragungssteuervorrichtung, die das Prüfmus ter entsprechend einem aus dem Vektorbefehl abgelei teten Adressensignal aus dem Musterspeicher ausliest und das Prüfmuster als ein Hauptprüfmuster an den Hauptprüfmuster-Cachespeicher überträgt, wenn der Vektorbefehl keinen Adressensprung anzeigt bzw. das Prüfmuster entsprechend dem Adressensignal aus dem Musterspeicher ausliest und das Prüfmuster als ein Subprüfmuster an den Subprüfmuster-Cachespeicher ü berträgt, wenn der Vektorbefehl einen Adressensprung anzeigt.
Das Subprüfmuster kann wiederholt in dem Prüfmuster
enthalten sein.
Bevorzugt weist der Hauptprüfmuster-Cachespeicher
zwei Musterspeicherbänke auf, und der Prüfmustergene
rator weist weiterhin einen Hauptprüfmuster-
Multiplexer auf zum Auslesen des vorher in einer der
Musterspeicherbänke gespeicherten Hauptprüfmusters,
um das ausgelesene Hauptprüfmuster zu der elektri
schen Vorrichtung zu liefern, während das aus dem
Musterspeicher ausgelesene Hauptprüfmuster zu der an
deren der Musterspeicherbänke übertragen wird.
Darüber hinaus kann der Subprüfmuster-Cachespeicher
zwei Musterspeicherbänke aufweisen, und der Prüfmus
tergenerator kann weiterhin einen Subprüfmuster-
Multiplexer aufweisen zum Auslesen des vorher in ei
ner der Musterspeicherbänke gespeicherten Subprüfmus
ters, um das ausgelesene Subprüfmuster zu der elekt
rischen Vorrichtung zu liefern, während das aus dem
Musterspeicher ausgelesene Subprüfmuster zu der ande
ren der Musterspeicherbänke übertragen wird.
Vorteilhaft ist ein Vektor-Cachespeicher zum Spei
chern des aus dem Vektorspeicher ausgelesenen
Vektorbefehls vorgesehen, wobei die Lese-
Steuervorrichtung feststellt, dass das Subprüfmuster
zu einer Zeit erzeugt werden soll, zu der der aus dem
Vektorspeicher ausgelesene Vektorbefehl zu dem
Vektor-Cachespeicher übertragen wird. Hierbei kann
ein Adressenexpander zum Erzeugen einer Adresse des
aus dem Musterspeicher auszulesenden Prüfmusters auf
der Grundlage des aus dem Vektor-Cachespeicher
ausgelesenen Vektorbefehls dienen. Weiterhin kann der
Vektor-Cachespeicher drei Vektorspeicherbänke
aufweisen, und der Mustergenerator kann einen
Vektorbefehls-Multiplexer aufweisen, um den aus einer
der drei Vektorspeicherbänke ausgelesenen
Vektorbefehl zu dem Adressenexpander zu lie
fern, während der Vektorbefehl in eine andere der
Vektorspeicherbänke eingeschrieben wird.
Zweckmäßig weist die Lese-Steuervorrichtung eine Vor
richtung zum Erfassen einer Endadresse des Subprüf
musters auf, und die Übertragungssteuervorrichtung
überträgt ein neues auszulesendes Subprüfmuster, wel
ches von der Lese-Steuervorrichtung erfasst wurde,
nachdem das Subprüfmuster mit der von der Lese-
Steuervorrichtung erfassten Endadresse übertragen
ist, zu dem Subprüfmuster-Cachespeicher.
Der Subprüfmuster-Cachespeicher kann aufweisen:
einen Ringpuffer, welcher in Lage ist, das Subprüf muster auszugeben mit aufeinander folgender Aktuali sierung des Subprüfmusters darin, und
einen festen Puffer, welcher in Lage ist, das Sub prüfmuster auszugeben mit einer Speicherung des Sub prüfmusters darin. Hierbei weist der Vektorbefehl zweckmäßig eine Hauptroutine zum Auslesen des Haupt prüfmusters aus dem Musterspeicher und eine Subrouti ne zum Auslesen des Subprüfmusters aus dem Muster speicher auf, speichert die Übertragungssteuervor richtung einen ersten Teil des aufeinander folgend aus dem Musterspeicher durch die Subroutine ausgele senen Subprüfmusters, und wird das Subprüfmuster, welches durch die Subroutine aus dem Musterspeicher ausgelesen ist und welches nicht in dem festen Puffer gespeichert ist, aufeinander folgend in dem Ringpuf fer gespeichert und aus dem Ringpuffer ausgegeben, wenn die Subroutine ausgeführt wird. Auch kann die Lese-Steuervorrichtung einen Informationsdetektor zum Erfassen einer Information der in dem Vektorspeicher gespeicherten Subroutine aufweisen, und die Übertra gungssteuervorrichtung kann das Subprüfmuster in dem festen Puffer und/oder dem Ringpuffer auf der Grund lage der Information der Subroutine speichern. Der Informationsdetektor kann eine Startadresse der Sub routine erfassen und das durch einen ersten Teil der Subroutine aus dem Musterspeicher ausgelesene Sub prüfmuster basierend auf der Startadresse speichern. Weiterhin kann der Informationsdetektor einen Subrou tinenzahl-Detektor aufweisen zum Erfassen der Anzahl der in dem Vektorspeicher gespeicherten Subroutinen, und die Übertragungssteuervorrichtung kann bewirken, dass der feste Puffer das durch jede der mehreren Subroutinen ausgelesene Subprüfmuster speichert, wenn mehrere Subroutinen enthalten sind. Der Subroutinen zahl-Detektor kann einen Rückkehrbefehls-Detektor zum Erfassen der Anzahl der in dem Vektorbefehl enthalte nen Rückkehrbefehle, und einen Subroutinenzahl- Speicher der die Anzahl von Rückkehrbefehlen zählt, oder einen Sprungbefehlsdetektor zum Erfassen eines in dem Vektorbefehl enthaltenen Sprungbefehls, eine Beurteilungseinheit zur Feststellung, ob eine durch den Sprungbefehl bestimmte Adresse vorher durch den Sprungbefehl als eine Sprungadresse bestimmt wurde, und einen Subroutinenzahl-Speicher zum Zählen der An zahl von Malen, die die Beurteilungseinheit festge stellt hat, dass die durch den Sprungbefehl bestimmte Adresse nicht vorher als die Sprungadresse bestimmt war, aufweisen. Die Beurteilungseinheit enthält vor teilhaft ein Register zum Speichern der Adresse, für die festgestellt ist, dass sie nicht vorher als die Sprungadresse bestimmt war, und einen Anpassungsde tektor zum Feststellen, ob die in dem Register ge speicherte Adresse und eine durch den Sprungbefehl bestimmte Adresse die gleichen sind oder nicht, wenn der Sprungbefehlsdetektor den Sprungbefehl erfasst.
einen Ringpuffer, welcher in Lage ist, das Subprüf muster auszugeben mit aufeinander folgender Aktuali sierung des Subprüfmusters darin, und
einen festen Puffer, welcher in Lage ist, das Sub prüfmuster auszugeben mit einer Speicherung des Sub prüfmusters darin. Hierbei weist der Vektorbefehl zweckmäßig eine Hauptroutine zum Auslesen des Haupt prüfmusters aus dem Musterspeicher und eine Subrouti ne zum Auslesen des Subprüfmusters aus dem Muster speicher auf, speichert die Übertragungssteuervor richtung einen ersten Teil des aufeinander folgend aus dem Musterspeicher durch die Subroutine ausgele senen Subprüfmusters, und wird das Subprüfmuster, welches durch die Subroutine aus dem Musterspeicher ausgelesen ist und welches nicht in dem festen Puffer gespeichert ist, aufeinander folgend in dem Ringpuf fer gespeichert und aus dem Ringpuffer ausgegeben, wenn die Subroutine ausgeführt wird. Auch kann die Lese-Steuervorrichtung einen Informationsdetektor zum Erfassen einer Information der in dem Vektorspeicher gespeicherten Subroutine aufweisen, und die Übertra gungssteuervorrichtung kann das Subprüfmuster in dem festen Puffer und/oder dem Ringpuffer auf der Grund lage der Information der Subroutine speichern. Der Informationsdetektor kann eine Startadresse der Sub routine erfassen und das durch einen ersten Teil der Subroutine aus dem Musterspeicher ausgelesene Sub prüfmuster basierend auf der Startadresse speichern. Weiterhin kann der Informationsdetektor einen Subrou tinenzahl-Detektor aufweisen zum Erfassen der Anzahl der in dem Vektorspeicher gespeicherten Subroutinen, und die Übertragungssteuervorrichtung kann bewirken, dass der feste Puffer das durch jede der mehreren Subroutinen ausgelesene Subprüfmuster speichert, wenn mehrere Subroutinen enthalten sind. Der Subroutinen zahl-Detektor kann einen Rückkehrbefehls-Detektor zum Erfassen der Anzahl der in dem Vektorbefehl enthalte nen Rückkehrbefehle, und einen Subroutinenzahl- Speicher der die Anzahl von Rückkehrbefehlen zählt, oder einen Sprungbefehlsdetektor zum Erfassen eines in dem Vektorbefehl enthaltenen Sprungbefehls, eine Beurteilungseinheit zur Feststellung, ob eine durch den Sprungbefehl bestimmte Adresse vorher durch den Sprungbefehl als eine Sprungadresse bestimmt wurde, und einen Subroutinenzahl-Speicher zum Zählen der An zahl von Malen, die die Beurteilungseinheit festge stellt hat, dass die durch den Sprungbefehl bestimmte Adresse nicht vorher als die Sprungadresse bestimmt war, aufweisen. Die Beurteilungseinheit enthält vor teilhaft ein Register zum Speichern der Adresse, für die festgestellt ist, dass sie nicht vorher als die Sprungadresse bestimmt war, und einen Anpassungsde tektor zum Feststellen, ob die in dem Register ge speicherte Adresse und eine durch den Sprungbefehl bestimmte Adresse die gleichen sind oder nicht, wenn der Sprungbefehlsdetektor den Sprungbefehl erfasst.
Der Informationsdetektor enthält bevorzugt einen Ka
pazitätsdetektor zum Erfassen der Kapazität des Sub
prüfmusters, und der Prüfmustergenerator speichert
das Subprüfmuster in dem Ringpuffer durch Annahme des
Ringpuffers als einen zweiten festen Puffer, wenn die
Kapazität des Subprüfmusters kleiner ist als die Ka
pazität des Subprüfmuster-Cachespeichers. Der Kapazi
tätsdetektor kann einen Startadressen-Detektor zum
Erfassen einer Startadresse des zuerst durch die Sub
routine ausgelesenen Subprüfmusters, und einen Endad
ressendetektor zum Erfassen einer Endadresse des zu
letzt durch die Subroutine ausgelesenen Subprüfmus
ters aufweisen, wobei die Kapazität des Prüfmusters
erfasst wird durch Subtraktion der Startadresse des
zuerst ausgelesenen Prüfmusters von der Endadresse
des zuletzt ausgelesenen Prüfmusters.
Der Informationsdetektor kann eine Information der
Subroutine zu einer Zeit erfassen, zu der der Vektor
befehl in dem Vektorspeicher gespeichert wird, wobei
der feste Puffer das Subprüfmuster in einer solchen
Weise speichert, dass eine Zeit, die zum Speichern
des in dem Musterspeicher gespeicherten Subprüfmus
ters in den Ringpuffer benötigt wird, länger ist als
eine Zeit, die zur Ausgabe des in dem festen Puffer
gespeicherten Subprüfmusters benötigt wird.
Gemäß einem zweiten Aspekt der vorliegenden Erfindung
ist eine Prüfvorrichtung zum Prüfen elektrischer Ei
genschaften von elektrischen Vorrichtungen durch Ver
wendung von Prüfmustern vorgesehen, welche aufweist:
einen Musterspeicher zum Speichern von Prüfmustern, jeweils enthaltend ein Eingabeprüfmuster, das für die Prüfung an eine elektrische Vorrichtung angelegt wird, und ein Muster aus erwarteten Werten, das von einer normalen elektrischen Vorrichtung ausgegeben wird, wenn das Eingabeprüfmuster an die normale e lektrische Vorrichtung angelegt wird,
einen Muster-Cachespeicher zum vorübergehenden Spei chern von aus dem Musterspeicher ausgelesenen Prüf mustern, welcher Muster-Cachespeicher aus einem Hauptprüfmuster-Cachespeicher und einem Subprüfmus ter-Cachespeicher besteht,
einen Vektorspeicher zum Speichern von Vektorbefeh len, die eine Reihenfolge der zu erzeugenden Prüfmus ter anzeigen,
eine Lese-Steuervorrichtung, die aus dem Vektorspei cher einen Vektorbefehl ausliest und ein Übertra gungsbefehlssignal ausgibt, wenn der aus dem Vektor speicher ausgegebene Vektorbefehl einen Adressen sprung für die aus dem Musterspeicher auszulesenden Prüfmuster anzeigt,
eine Übertragungssteuervorrichtung, die das Prüfmus ter entsprechend einem aus dem Vektorbefehl abgelei teten Adressensignal aus dem Musterspeicher ausliest und das Prüfmuster als ein Hauptprüfmuster an den Hauptprüfmuster-Cachespeicher überträgt, wenn der Vektorbefehl keinen Adressensprung anzeigt bzw. das Prüfmuster entsprechend dem Adressensignal aus dem Musterspeicher ausliest und das Prüfmuster als ein Subprüfmuster an den Subprüfmuster-Cachespeicher ü berträgt, wenn der Vektorbefehl einen Adressensprung anzeigt,
einen Stiftdatenselektor für die körperliche Zuord nung von wenigstens einem Signal, das das aus dem Mus ter-Cachespeicher ausgelesene Prüfmuster bildet, in Übereinstimmung mit der Anordnung von elektrischen Anschlüssen der elektrischen Vorrichtung,
eine Wellenform-Formungsvorrichtung zum Formen einer Wellenform des in dem von dem Stiftdatenselektor aus gegebenen Prüfmuster enthaltenen Eingabeprüfmusters, eine Vorrichtungs-Einsteckeinheit zur Aufnahme der elektrischen Vorrichtung und zum Anlegen des Eingabe prüfmusters, das von der Wellenform-Formungsvorrich tung geformt wurde, an die elektrischen Vorrichtung, und
einen Komparator zum Vergleichen eines von der elekt rischen Vorrichtung durch Anlegen des Eingabeprüfmus ters ausgegebenen Ausgangssignals mit dem Muster aus erwarteten Werten.
einen Musterspeicher zum Speichern von Prüfmustern, jeweils enthaltend ein Eingabeprüfmuster, das für die Prüfung an eine elektrische Vorrichtung angelegt wird, und ein Muster aus erwarteten Werten, das von einer normalen elektrischen Vorrichtung ausgegeben wird, wenn das Eingabeprüfmuster an die normale e lektrische Vorrichtung angelegt wird,
einen Muster-Cachespeicher zum vorübergehenden Spei chern von aus dem Musterspeicher ausgelesenen Prüf mustern, welcher Muster-Cachespeicher aus einem Hauptprüfmuster-Cachespeicher und einem Subprüfmus ter-Cachespeicher besteht,
einen Vektorspeicher zum Speichern von Vektorbefeh len, die eine Reihenfolge der zu erzeugenden Prüfmus ter anzeigen,
eine Lese-Steuervorrichtung, die aus dem Vektorspei cher einen Vektorbefehl ausliest und ein Übertra gungsbefehlssignal ausgibt, wenn der aus dem Vektor speicher ausgegebene Vektorbefehl einen Adressen sprung für die aus dem Musterspeicher auszulesenden Prüfmuster anzeigt,
eine Übertragungssteuervorrichtung, die das Prüfmus ter entsprechend einem aus dem Vektorbefehl abgelei teten Adressensignal aus dem Musterspeicher ausliest und das Prüfmuster als ein Hauptprüfmuster an den Hauptprüfmuster-Cachespeicher überträgt, wenn der Vektorbefehl keinen Adressensprung anzeigt bzw. das Prüfmuster entsprechend dem Adressensignal aus dem Musterspeicher ausliest und das Prüfmuster als ein Subprüfmuster an den Subprüfmuster-Cachespeicher ü berträgt, wenn der Vektorbefehl einen Adressensprung anzeigt,
einen Stiftdatenselektor für die körperliche Zuord nung von wenigstens einem Signal, das das aus dem Mus ter-Cachespeicher ausgelesene Prüfmuster bildet, in Übereinstimmung mit der Anordnung von elektrischen Anschlüssen der elektrischen Vorrichtung,
eine Wellenform-Formungsvorrichtung zum Formen einer Wellenform des in dem von dem Stiftdatenselektor aus gegebenen Prüfmuster enthaltenen Eingabeprüfmusters, eine Vorrichtungs-Einsteckeinheit zur Aufnahme der elektrischen Vorrichtung und zum Anlegen des Eingabe prüfmusters, das von der Wellenform-Formungsvorrich tung geformt wurde, an die elektrischen Vorrichtung, und
einen Komparator zum Vergleichen eines von der elekt rischen Vorrichtung durch Anlegen des Eingabeprüfmus ters ausgegebenen Ausgangssignals mit dem Muster aus erwarteten Werten.
Hierbei ist zweckmäßig ein Multiplexer zur Auswahl
des aus dem Hauptprüfmuster-Cachespeicher ausgelese
nen Hauptprüfmusters oder des aus dem Subprüfmuster-
Cachespeicher ausgelesenen Subprüfmusters vorgesehen.
Gemäß einem dritten Aspekt der vorliegenden Erfindung
weist ein Verfahren zum Erzeugen von Prüfmustern für
die Prüfung von elektrischen Eigenschaften einer e
lektrischen Vorrichtung die Schritte auf:
einen Leseschritt zum Auslesen eines Vektorbefehls, der eine Reihenfolge eines zu erzeugenden Prüfmusters anzeigt, aus einem Vektorbefehle speichernden Vektor speicher,
einen Beurteilungsschritt zur Feststellung, ob der ausgelesene Vektorbefehl einen Adressensprung für das aus einem Musterspeicher auszulesende Prüfmuster an zeigt oder nicht, und
einen Übertragungsschritt zum Auslesen des Prüfmus ters entsprechend einem aus dem Vektorbefehl abgelei teten Adressensignal aus dem Musterspeicher und Über tragen des Prüfmusters als ein Hauptprüfmuster an ei nen Hauptprüfmuster-Cachespeicher eines Muster- Cachespeichers zum vorübergehenden Speichern von aus dem Musterspeicher ausgelesenen Prüfmustern, wenn der Vektorbefehl keinen Adressensprung anzeigt bzw. zum Auslesen des Prüfmusters entsprechend dem Adressen signal aus dem Musterspeicher und Übertragen des Prüfmusters als ein Subprüfmuster an einen Subprüf muster-Cachespeicher des Muster-Cachespeichers, wenn der Vektorbefehl einen Adressensprung anzeigt.
einen Leseschritt zum Auslesen eines Vektorbefehls, der eine Reihenfolge eines zu erzeugenden Prüfmusters anzeigt, aus einem Vektorbefehle speichernden Vektor speicher,
einen Beurteilungsschritt zur Feststellung, ob der ausgelesene Vektorbefehl einen Adressensprung für das aus einem Musterspeicher auszulesende Prüfmuster an zeigt oder nicht, und
einen Übertragungsschritt zum Auslesen des Prüfmus ters entsprechend einem aus dem Vektorbefehl abgelei teten Adressensignal aus dem Musterspeicher und Über tragen des Prüfmusters als ein Hauptprüfmuster an ei nen Hauptprüfmuster-Cachespeicher eines Muster- Cachespeichers zum vorübergehenden Speichern von aus dem Musterspeicher ausgelesenen Prüfmustern, wenn der Vektorbefehl keinen Adressensprung anzeigt bzw. zum Auslesen des Prüfmusters entsprechend dem Adressen signal aus dem Musterspeicher und Übertragen des Prüfmusters als ein Subprüfmuster an einen Subprüf muster-Cachespeicher des Muster-Cachespeichers, wenn der Vektorbefehl einen Adressensprung anzeigt.
Hierbei kann das Subprüfmuster in dem Prüfmuster ent
halten sein.
Zweckmäßig verwendet der Hauptprüfmuster-
Cachespeicher zwei Musterspeicherbänke, wobei ein
Schritt des Auslesens des Hauptprüfmusters, das vor
her in einer der Musterspeicherbänke gespeichert war,
vorgesehen ist, um das ausgelesene Hauptprüfmuster zu
der elektrischen Vorrichtung zu liefern, während das
aus dem Musterspeicher ausgelesene Hauptprüfmuster zu
der anderen der Musterspeicherbänke übertragen wird.
Zweckmäßig verwendet auch der Subprüfmuster-
Cachespeicher zwei Musterspeicherbänke, wobei ein
Schritt des Auslesens des vorher in einer der Muster
speicherbänke gespeicherten Subprüfmusters vorgesehen
ist, um das ausgelesene Subprüfmuster zu der elektri
schen Vorrichtung zu liefern, während das aus dem
Musterspeicher ausgelesene Subprüfmuster zu der ande
ren der Musterspeicherbänke übertragen wird.
Vorteilhaft ist ein Schritt des Speicherns der in dem
Ausleseschritt aus dem Vektorspeicher ausgelesenen
Vektorbefehle in einem Vektor-Cachespeicher vorgese
hen, wobei eine Adresse des aus dem Musterspeicher
auszulesenden Prüfmusters auf der Grundlage des aus
dem Vektor-Cachespeicher ausgelesenen Vektorbefehls
erzeugt werden kann, und weiterhin ein Vektor-
Cachespeicher mit drei Vektorspeicherbänken verwendet
werden kann, wobei die Adresse durch den aus einer
der Vektorspeicherbänke ausgelesenen Vektorbefehl er
zeugt wird, während der Vektorbefehl in eine andere
der Vektorspeicherbänke während des Adressenerzeu
gungsschrittes geschrieben wird.
Auch kann eine Endadresse des Subprüfmusters erfasst
werden, wobei in dem Übertragungsschritt ein neues
Subprüfmuster aus dem Musterspeicher in den Subprüf
muster-Cachespeicher übertragen wird, wenn für das
neue Subprüfmuster in dem Erfassungsschritt festge
stellt wurde, dass es auszulesen ist, nachdem das
Subprüfmuster mit der Endadresse übertragen wurde.
Schließlich kann der Subprüfmuster-Cachespeicher ei
nen Ringpuffer, welcher in der Lage ist, das Subprüf
muster mit aufeinander folgender Aktualisierung des
Subprüfmusters darin auszugeben, und einen festen
Puffer, welcher in der Lage ist, das Subprüfmuster
mit Speicherung des Subprüfmusters darin auszugeben,
aufweisen, wobei die Vektorbefehle eine Hauptroutine
zum Auslesen des Hauptprüfmusters aus dem Musterspei
cher und eine Subroutine zum Auslesen des Subprüfmus
ters aus dem Musterspeicher aufweisen, und der
Schritt zum Speichern in den Subprüfmuster-
Cachespeicher kann einen Schritt zum Speichern eines
ersten Teils des Subprüfmusters, das aufeinander fol
gend durch die Subroutine aus dem Musterspeicher aus
gelesen wurde, in dem festen Puffer, und einen
Schritt des aufeinander folgenden Speicherns des Sub
prüfmusters, welches durch die Subroutine aus dem
Musterspeicher ausgelesene wurde und welches nicht in
dem festen Puffer gespeichert ist, in dem Ringpuffer
aufweisen.
Diese Erfindung wird im Folgenden anhand von in den
Figuren dargestellten Ausführungsbeispielen näher er
läutert. Es zeigen:
Fig. 1 ein Blockschaltbild eines bekannten Prüfmus
tergenerators mit einem SRAM,
Fig. 2 ein Beispiel eines in dem Vektorspeicher zu
speichernden Musterprogramms,
Fig. 3 ein Beispiel eines komprimierten, in dem
Vektorspeicher zu speichernden Musterpro
gramms,
Fig. 4 einen in dem Mustersignalgenerator zu spei
chernden Befehl,
Fig. 5 die Arbeitsweise eines bekannten Prüfmuster
generators,
Fig. 6 ein Blockschaltbild einer bekannten Muster-
Formungsvorrichtung mit einem DRAM,
Fig. 7 ein Musterprogramm enthaltend ein Initiali
sierungsmuster am Beginn jeder Prüfliste,
ohne Verwendung von Subroutinen,
Fig. 8 ein Blockschaltbild der gesamten Prüfvor
richtung gemäß der vorliegenden Erfindung,
Fig. 9 ein Blockschaltbild einer Folgensteuervor
richtung des Prüfmustergenerators gemäß der
vorliegenden Erfindung,
Fig. 10 ein Blockschaltbild einer Musterformungsvor
richtung des Prüfmustergenerators gemäß der
vorliegenden Erfindung,
Fig. 11 eine Arbeitsweise des Prüfmustergenerators
gemäß der vorliegenden Erfindung,
Fig. 12 eine andere Arbeitsweise des Prüfmustergene
rators gemäß der vorliegenden Erfindung,
Fig. 13 ein Blockschaltbild eines Ausführungsbei
spiels des Prüfmustergenerators,
Fig. 14 ein Blockschaltbild eines Subprüfmuster-
Cachespeichers,
Fig. 15(a) eine in dem Subprüfmuster-Cachespeicher
gespeicherte Subroutine, wobei eine Sub
routine vorhanden ist,
Fig. 15(b) eine in dem Subprüfmuster-Cachespeicher
gespeicherte Subroutine, wobei mehrere
Subroutinen vorhanden sind,
Fig. 15(c) eine in dem Subprüfmuster-Cachespeicher
gespeicherte Subroutine, wenn mehrere Sub
routinen vorhanden sind,
Fig. 16 ein Blockschaltbild eines Ausführungsbei
spiels der Lesesteuervorrichtung,
Fig. 17(a) ein Beispiel eines von einem externen
Speicher gelieferten Vektorbefehls,
Fig. 17(b) ein Beispiel der drei Subroutinen enthal
tenden Befehle,
Fig. 18 ein Blockschaltbild eines Ausführungsbei
spiels eines Subroutinenzahl-Speichers 186,
Fig. 19 ein Blockschaltbild eines Ausführungsbei
spiels des Startadressendetektors,
Fig. 20 ein Blockschaltbild eines Ausführungsbei
spiels eines Endadressendetektors,
Fig. 21 ein Beispiel der von einem externen Speicher
gelieferten Vektorbefehle,
Fig. 22 ein Blockschaltbild eines Ausführungsbei
spiels des Subroutinenzahl-Detektors, und
Fig. 23 ein Blockschaltbild eines Ausführungsbei
spiels des Subroutinenzahl-Detektors.
Fig. 8 ist ein Blockschaltbild einer Prüfvorrichtung
gemäß der vorliegenden Erfindung. Die Prüfvorrichtung
gemäß der vorliegenden Erfindung umfasst einen Mu
stergenerator 60, einen Stiftdatenselektor 66, eine
Wellenform-Formungsvorrichtung 72, eine Vorrichtungs-
Einsteckeinheit 80 mit einem Vorrichtungsschlitz 78
und einen Komparator 84. Der Prüfmustergenerator 60
enthält eine Folgensteuervorrichtung 62 und eine Mu
sterformungsvorrichtung 26. Der Mustergenerator 60
überträgt Prüfmuster zu dem Stiftdatenselektor 66.
Die Prüfmuster enthalten Eingabeprüfmuster, die an
eine elektrische Vorrichtung 76 angelegt werden, um
die elektrischen Eigenschaften der elektrischen Vor
richtung 76 zu prüfen. Die Prüfmuster enthalten auch
Muster für erwartete Werte, welche dieselben sind wie
die Prüfmuster, die von einer normalen elektrischen
Vorrichtung ausgegeben werden, wenn die Eingabeprüf
muster an die normale elektrische Vorrichtung ange
legt werden.
"Elektrische Vorrichtung" bedeutet in dieser Anmel
dung jedes elektrische Teil, das mit Elektrizität
oder Spannung betrieben wird. Die elektrische Vor
richtung enthält ein passives Element und verschiede
ne Sensoren, zusätzlich zu halbleitenden Teilen, die
aus einem aktiven Element wie einem integrierten
Schaltkreis oder einer integrierten Großschaltung zu
sammengesetzt sind. Weiterhin enthält die elektrische
Vorrichtung eine Baugruppe, bei der die passiven Ele
mente und die halbleitenden Teile angeordnet sind und
ein Schaltungsbrett, auf welches die passiven Elemen
te und die halbleitenden Teile geladen sind, um eine
vorbestimmte Funktion zu zeigen. "Prüfmuster" bedeu
tet eine zeitliche und räumliche Zuordnung von in die
elektrische Vorrichtung einzugebenden digitalen Si
gnalen und digitalen Ausgangssignalen, deren Ausgabe
erwartet wird, um die elektrische Vorrichtung zu prü
fen. Weiterhin bedeutet "Muster für erwartete Werte"
eine zeitliche und räumliche Zuordnung von ausgegebe
nen digitalen Signalen, deren Ausgabe von der elek
trischen Vorrichtung erwartet wird, wenn ein vorbe
stimmtes Signal in die elektrische Vorrichtung einge
geben wird.
Der Stiftdatenselektor 66 ordnet wieder eine körper
liche Zuordnung wenigstens eines Signals zu, wobei er
die von dem Mustergenerator 60 übertragenen Prüfmu
ster zusammensetzt, gemäß der Anordnung der elektri
schen Anschlüsse der elektrischen Vorrichtung 76. Der
Stiftdatenselektor 66 überträgt auch ein Muster von
erwarteten Werte zu dem Komparator und das Prüfmuster
zu der Wellenform-Formungsvorrichtung 72. Die Wellen
form-Formungsvorrichtung 72 formt eine Wellenform des
Eingabeprüfmusters, das in dem von dem Stiftdatense
lektor 66 ausgegebenen Prüfmuster enthalten ist, und
überträgt die Wellenform zu der Vorrichtungs-
Einsteckeinheit 80. Die elektrische Vorrichtung 76
wird in den Vorrichtungsschlitz 78 der Vorrichtungs-
Einsteckeinheit 80 eingesetzt. Die Vorrichtungs-
Einsteckeinheit 80 liefert das von der Wellenform-
Formungsvorrichtung 72 übertragene Prüfmuster über
den Vorrichtungsschlitz 78 zu den Eingangsanschlüssen
der elektrischen Vorrichtung 76. Die elektrische Vor
richtung 76 gibt auf der Grundlage ihrer Funktion ein
Ausgangsmuster von den Ausgangsanschlüssen zu dem
Komparator 84 aus.
Der Komparator 84 vergleicht das von der elektrischen
Vorrichtung 76 ausgegebene Ausgangsmuster und das Mu
ster aus erwarteten Werten, das von dem Stiftdatense
lektor 66 übertragen wurde. Der Komparator 84 stellt
fest, daß die elektrische Vorrichtung 76 eine normale
Funktion hat, wenn das Ausgangsmuster und das Muster
aus den erwarteten Werten dieselben sind. Der Kompa
rator 84 stellt fest, daß die elektrische Vorrichtung
76 keine normale Funktion hat, wenn das Ausgangsmu
ster und das Muster aus erwarteten Werten nicht die
selben sind. Alle Prüfmuster und Muster aus erwarte
ten Werten sollten vorher in den Prüfmustergenerator
60 gespeichert sein. Wenn jedoch die Kapazität des
Musterspeichers 32 nicht ausreichend ist, können die
Daten des Musterspeichers 32 wieder geschrieben wer
den.
Fig. 9 ist ein Blockschaltbild der Folgensteuervor
richtung des Mustergenerators gemäß der vorliegenden
Erfindung. Diese Folgensteuervorrichtung 62 umfasst
einen Vektorspeicher 12, eine Lese-Steuervorrichtung
14, einen Vektor-Cachespeicher 56 mit drei Vektor
speicherbänken 16, 18 und 19 sowie einem Vektorbe
fehls-Multiplexer 20, und einen Adressenexpander 22.
Die Lese-Steuervorrichtung 14 liest den in dem Vek
torspeicher 12 gespeicherten Vektorbefehl. Der ausge
lesene Vektorbefehl wird vorübergehend in den Vektor
speicherbänken 16, 18 und 19 gespeichert.
Die Lese-Steuervorrichtung 14 überträgt den Übertra
gungsbefehl "GOSUB" und das Startadressensignal 25 zu
dem Mustergenerator 26, wenn der ausgelesene Vektor
befehl "GOSUB" ist. Der Vektorbefehls-Multiplexer 20
wählt einen Vektorbefehl aus den vorübergehend in den
Vektorspeicherbänken 16, 18 und 19 gespeicherten Vek
torbefehlen aus und überträgt den ausgewählten Vek
torbefehl zu dem Adressenexpander 22. Der Adressenex
pander 22 überträgt ein BKSL-Signal 30, welches die
Auswahl der Cachespeicherbank in der Musterformungs
vorrichtung 26 bestimmt, und ein gedehntes Adressen
signal 24 zu der Musterformungsvorrichtung 26.
Fig. 10 ist ein Blockschaltbild der Musterformungs
vorrichtung des Prüfmustergenerators gemäß der vor
liegenden Erfindung. Die Musterformungsvorrichtung 26
des Prüfmustergenerators umfasst einen Musterspeicher
32, eine Übertragungssteuervorrichtung 34, Muster
speicher-Multiplexer 36, 37 und 38, einen Muster-
Cachespeicher 54 und Multiplexer 44, 45 und 46. Der
Muster-Cachespeicher 54 umfasst einen Hauptprüfmu
ster-Cachespeicher 50 und einen Subprüfmuster-
Cachespeicher 52.
Der Hauptprüfmuster-Cachespeicher 50 weist zwei Mu
sterspeicherbänke 40 und 41 auf. Der Subprüfmuster-
Cachespeicher 52 weist zwei Musterspeicherbänke 42
und 43 auf. Wenn das Adressensignal 24 in die Über
tragungssteuervorrichtung 34 eingegeben wird, wird
das Prüfmuster aus dem Musterspeicher 32 in Überein
stimmung mit dem eingegebenen Adressensignal ausgele
sen und zu einer der Musterspeicherbänke 40 bis 43
übertragen. Die Multiplexer 36 bis 39 und die Multi
plexer 44 und 45 wählen die eingegebenen Daten gemäß
dem Adressensignal 24 aus.
Fig. 11 zeigt ein Beispiel der Arbeitsweise eine
Prüfmustergenerators zum Prüfen einer elektrischen
Vorrichtung gemäß der vorliegenden Erfindung. Die Ar
beitsweise des Prüfmustergenerators 60 gemäß der vor
liegenden Erfindung wird nachfolgend erläutert auf
der Grundlage von Fig. 11 mit Bezug auf die in Fig. 9
gezeigte Folgensteuervorrichtung 62 und die in Fig.
10 gezeigte Musterformungsvorrichtung 26. Das Muster
erzeugende Programm dieses Beispiels ist dasselbe wie
das in Fig. 5 gezeigte. Die Anzahl von Wörtern des
Speichers ist dieselbe wie die in Fig. 5 gezeigt. Die
komprimierten Befehle sind auch dieselben wie die in
Fig. 3 gezeigten.
Der Vektor-Cachespeicher 56 der Folgensteuervorrich
tung umfasst drei Vektorspeicherbänke. Der Adres
senexpander 22 erweitert den Vektorbefehl, welcher
ein in der Vektorspeicherbank 16 gespeicherter kom
primierter Befehl ist. Der Adressenexpander 22 setzt
auch das BKSL-Signal 30 auf "1" auf der Grundlage des
Befehls "GOSUB" und setzt das BKSL-Signal 30 auf "0"
auf der Grundlage des Befehls "RETURN". Der Adres
senexpander 22 überträgt dann das BKSL-Signal 30 zu
dem Multiplexer 46. Der Multiplexer 46 wählt den Mul
tiplexer 44 aus, wenn der Wert des BKSL-Signals 30
gleich "1" ist, und er wählt den Multiplexer 45 aus,
wenn der Wert des BKSL-Signals 30 gleich "0" ist. Die
Initialisierung des Prüfmustergenerators 60 wird
nachfolgend erläutert. Die Lese-Steuervorrichtung 14
initialisiert den Prüfmustergenerator 60 durch Über
tragen der ersten drei Wörter zu der Vektorspeicher
bank 16 und der nächsten drei Wörter zu der Vektor
speicherbank 18.
Der erste Vektorbefehl ist "GOSUB A #0 #11", wie in
den Fig. 2, 3 und 11 gezeigt ist. Die Operation zum
Initialisieren des Prüfmustergenerators 60 wird nach
folgend erklärt. Die Übertragungssteuervorrichtung 34
überträgt die Adresse #0 zu dem Musterspeicher 32,
wenn die Übertragungssteuervorrichtung 34 die Adresse
#0 empfängt. Die Adresse #0 wählt einen der Multiple
xer 36 bis 39 aus und wirkt so, daß der Hauptprüfmu
ster-Cachespeicher 50 ausgewählt wird. Die von dem
Musterspeicher 32 übertragenen Adressendaten #0 wäh
len andererseits den Multiplexer 36 aus, damit die
Daten in den Bankspeicher 40, der in dem Hauptprüfmu
ster-Cachespeicher 50 enthalten ist, geschrieben wer
den.
In der Musterformungsvorrichtung 26 werden bei der
Initialisierung des Prüfmustergenerators 60 vier auf
einander folgende Daten von dem Prüfmuster "PAT 0"
bis "PAT 3" von dem Musterspeicher 32 zu dem Muster-
Cachespeicher 54 übertragen und in die Musterspei
cherbank 40 des Hauptprüfmuster-Cachespeichers 50
eingeschrieben. Hier entspricht das Prüfmuster "PAT
0" der Adresse #0.
Wenn die Lese-Steuervorrichtung 14 den Befehl "GOSUB"
erfasst, überträgt sie den GOSUB-Übertragungsbefehl
und das Übertragungsstart-Adressensignal 25 zu der
Übertragungssteuervorrichtung 34. Daher weiß die
Übertragungssteuervorrichtung 34, daß der Befehl "GO
SUB" von der Lese-Steuervorrichtung 14 empfangen wur
de, und die Adresse, zu der durch den Befehl "GOSUB"
gesprungen wurde, ist die Adresse #11. Nachdem die
Daten von "PAT 0" bis "PAT 3" zu der Musterspeicher
bank 40 übertragen wurden, steuert die Übertragungs
steuervorrichtung 34 den Musterspeicher 32, um vier
aufeinander folgende Daten "PAT 11" bis "PAT 14" ent
sprechend der Adresse #11 der Subroutine zu dem Mu
ster-Cachespeicher 50 zu übertragen.
Die Daten "PAT 11" bis "PAT 14" werden dann in die
Musterspeicherbank 42 des Subprüfmuster-
Cachespeichers 52 durch die Übertragungssteuervor
richtung 34 auf der Grundlage des Befehls einge
schrieben. Die nächsten Daten "PAT 15" der Subroutine
werden in die Musterspeicherbank 43 geschrieben. In
diesem Fall wird eine der Musterspeicherbänke 42 und
43 ausgewählt durch Schalten eines der Multiplexer 38
und 39 bei einer Adresse vor der Endadresse der in
jede der Musterspeicherbänke einzugebenden Adressen.
Die Arbeitsweise nach der Initialisierung wird als
Nächstes erläutert. Die Prüfung beginnt nach der In
itialisierung. Der Adressenexpander 22 erweitert in
bekannter Weise die in der Vektorspeicherbank 16 ge
speicherten Befehl in ein Adressensignal 24. Die er
sten drei Wörter der Befehle werden erweitert als #0,
#11, #12, #13, #13, #14 und #15, wie in Fig. 2, Fig.
3 und Fig. 11 gezeigt ist. Das erweiterte Adressensi
gnal 24 wird zu der Musterformungsvorrichtung 26
übertragen.
Das BKSL-Signal entscheidet, welche der Musterspei
cherbänke 40 und 41 und der Musterspeicherbänke 42
und 43 zu verwenden sind. Die ernannte Adresse ist #0
und das BKSL-Signal ist anfänglich "0". Wenn daher
die Prüfung beginnt, werden die in der Musterspei
cherbank 40 des Hauptprüfmuster-Cachespeichers 50 ge
speicherten Daten "PAT 0" bis "PAT 3" aus der Muster
speicherbank 40 ausgelesen, um das Muster zu erzeu
gen. Die Vorgänge werden wiederholt, bis der Befehl
"GOSUB" zum Gehen zu der Subroutine gemacht wird.
Anfänglich jedoch ist der Vektorbefehl der Befehl
"GOSUB" zum Springen zu der Adresse #11, wie in Fig.
11 gezeigt. Der Adressenexpander 22 setzt das BKSL-
Signal auf "1" und überträgt es zu der Musterfor
mungsvorrichtung 26. Der Multiplexer 46 überträgt den
Muster-Cachespeicher 54 zu dem Subprüfmuster-
Cachespeicher 52 enthaltend die Speicherbänke 42 und
43. Die Prüfmuster der Sprungadresse werden, wenn der
Befehl "GOSUB" ausgeführt wird, in der Speicherbank
42 und der Speicherbank 43 gespeichert. Der Multiple
xer 45 wählt die Speicherbank 42 in Übereinstimmung
mit der nächsten Adresse #11 aus. Der Multiplexer 45
wählt die Speicherbank 43 aus, wenn die in der Spei
cherbank 42 gespeicherten Prüfmuster vollständig aus
gegeben sind.
Wie vorbeschrieben ist, wird die Subroutine bis zum
letzten Vektorbefehl, der in der Vektorspeicherbank
16 gespeichert und der Befehl "RETURN" ist, ausge
führt. Durch Ausführung des in der Vektorspeicherbank
16 gespeicherten Befehls "RETURN" wird das BKSL-
Signal auf "0" gesetzt und der Hauptprüfmuster-
Cachespeicher 50 wird als Nächstes ausgewählt. Unter
dessen werden die nächsten vier Daten nach "PAT 3",
welche die Daten "PAT 4" bis "PAT 7" sind, zu der Mu
sterspeicherbank 41 der Musterformungsvorrichtung 26
übertragen und in dieser gespeichert. Die nächsten
drei Wörter der Vektorbefehle, die als "RETURN #15,
#6", "REPEAT2 #8" und "REPEAT3 #9" in Fig. 11 gezeigt
sind, werden zu der Vektorspeicherbank 19 übertragen
und darin gespeichert.
Durch Wiederholung derselben Operationen kann das
Subroutinen aufweisende Musterprogramm, wie in Fig.
11 gezeigt ist, ausgeführt werden. Fig. 11 zeigt ein
Beispiel, bei welchem der Befehl "GOSUB" erzeugt
wird, während der Prüfmustergenerator initialisiert
wird. Jedoch kann der Fall auftreten, bei welchem der
Befehl "GOSUB" nicht erzeugt wird, während der Prüf
mustergenerator initialisiert wird. Statt dessen wird
der Übertragungsbefehl "GOSUB" erzeugt, während die
Prüfmuster nach der Initialisierung erzeugt werden.
In einem solchen Fall sollten die Daten zu dem Sub
prüfmuster-Cachespeicher 52 übertragen werden, nach
dem die Daten zu dem Hauptprüfmuster-Cachespeicher 50
übertragen wurden, wie in dem Fall, in welchem der
Befehl "GOSUB" erzeugt wird, während der Prüfmuster
generator initialisiert wird. Während eine Bank der
Daten ausgelesen wird, kann das Subroutinenmuster zu
dem Subprüfmuster-Cachespeicher 52 übertragen werden.
In diesem Fall haben die von DRAM zusammengesetzten
Prüfmuster, die von dem Musterspeicher 32 zu einer
der Musterspeicherbänke 40 bis 43 übertragen wurden,
immer aufeinander folgende Adressen. Daher können die
Daten mit einer hohen Geschwindigkeit durch Multi
plexverarbeitung der Daten übertragen werden.
Fig. 12 zeigt ein Beispiel der Arbeitsweise des Prüf
mustergenerators zum Prüfen einer elektrischen Vor
richtung gemäß der vorliegenden Erfindung. In Fig. 12
sind mehr Muster für die Subroutine vorhanden als in
dem Fall, in welchem der Subprüfmuster-Cachespeicher
52 zwei Musterspeicherbänke aufweist, wobei jede vier
aufeinander folgende Muster speichert. Die Muster für
die Subroutine von "PAT 11" bis "PAT 20" sind ge
zeigt. In diesem Fall wird ein Teil der Subroutine in
den Musterspeicherbänken 42 und 43 gespeichert, wäh
rend der Prüfmustergenerator 60 initialisiert wird.
Nachdem die Muster von der Musterspeicherbank 42 er
zeugt sind, werden die nächsten Muster in der Muster
speicherbank 42 gespeichert.
Wenn der in der Vektorspeicherbank gespeicherte Be
fehl "RETURN" erweitert und ausgeführt wird, werden
die Prüfmuster vom Beginn der Subroutine zu dem Sub
prüfmuster-Cachespeicher 52 übertragen. Der zweite
"SCHREIB"-Befehl in der Musterspeicherbank 42, PAT11
bis PAT14, der in Fig. 11 gezeigt ist, ist für den
Fall vorgesehen, in welchem der Befehl "GOSUB" aus
dem Vektorspeicher 12 gelesen wird, um in der Vektor
speicherbank gelesen zu werden. Das Ergebnis ist, daß
das Initialisierungsmuster durch Subroutinen ausge
führt werden kann.
Fig. 13 ist ein Blockschaltbild eines anderen Ausfüh
rungsbeispiels des Prüfmustergenerators 60. Der Prüf
mustergenerator 60 umfasst eine Lese-
Steuervorrichtung 170, einen Vektorspeicher 12, eine
Datenübertragungseinheit 176 und einen Musterspeicher
32. Die Lese-Steuervorrichtung 170 umfasst einen In
formationsdetektor 172 und einen Adressenexpander
174. Der Vektorspeicher umfasst eine Hauptroutine 12a
und eine Subroutine 12b. Die Subroutine 12b enthält
eine Subroutine SR1, Subroutine SR2, . . ., Subroutine
SRn. Die Subroutine 12b braucht bei einem anderen
Ausführungsbeispiel nicht mehrere Subroutinen zu ent
halten. Die Datenübertragungseinheit 176 umfasst eine
Übertragungssteuervorrichtung 178, einen Hauptprüfmu
ster-Cachespeicher 180, einen Subprüfmuster-
Cachespeicher 182 und eine Ausgabeeinheit 184. Der
Musterspeicher 32 weist ein Prüfmuster 32a und ein
Muster 32b aus erwarteten Werten auf.
Der Musterspeicher 32 speichert das Prüfmuster 32a
und das Muster 32b aus erwarteten Werten, das von dem
externen Speicher 10 geliefert wurde. Der Vektorspei
cher 12 speichert die von dem externen Speicher 10
gelieferten Vektorbefehle. Die Vektorbefehle enthal
ten die Hauptroutine 12a und die Subroutine 12b, wel
che ausgelesen wird, während die Hauptroutine 12a
ausgeführt wird.
Der Informationsdetektor 172 der Lese-
Steuervorrichtung 170 erfasst die Information der in
den von dem externen Speicher 10 gelieferten Vektor
befehlen enthaltenen Subroutine 12b. Der Informati
onsdetektor 172 erfasst die Zahl der Subroutine 12b
und gibt die Subroutinenzahl zu der Übertragungssteu
ervorrichtung 178 aus. Der Informationsdetektor 172
kann auch die Kapazität des Prüfmusters und des von
der Subroutine 12b ausgelesenen Musters aus erwarte
ten Werten erfassen und die erfasste Kapazität zu der
Übertragungssteuervorrichtung 178 ausgeben. Der In
formationsdetektor 172 erfasst vorzugsweise die In
formation der Subroutine 30b, wenn der von dem exter
nen Speicher 10 zu dem Vektorspeicher 12 gelieferte
Befehl gespeichert wird. Bei anderen Ausführungsbei
spielen kann der Informationsdetektor 172 die Infor
mation der Subroutine 30b erfassen, indem der in dem
Vektorspeicher 12 gespeicherte Befehl gelesen wird.
Der Adressenexpander 174 gibt die Adresse aus, welche
das Prüfmuster und das Muster aus erwarteten Werten,
das im Musterspeicher gespeichert ist, benennt, ba
sierend auf den in dem Vektorspeicher 12 gespeicher
ten Vektorbefehlen. Die Übertragungssteuervorrichtung
178 liest das Prüfmuster und das Muster aus erwarte
ten Werten aus dem Musterspeicher aus, basierend auf
der von dem Adressenexpander 174 gelieferten Adresse,
zum Einschreiben in den Hauptprüfmuster-Cachespeicher
180 oder den Subprüfmuster-Cachespeicher 182. Bei
spielsweise liest, wenn der Adressenexpander 174 die
Adressen A1, A2 und A3 zu der Übertragungssteuervor
richtung 178 auf der Grundlage der Subroutine 12b
liefert, die Übertragungssteuervorrichtung 178 die
Prüfmuster D1, D2 und D3, die jeweils durch die
Adressen A1, A2 und A3 benannt sind, aus dem Muster
speicher 32 aus und schreibt sie in den Subprüfmu
ster-Cachespeicher 182.
Die Ausgabeeinheit 184 gibt die Prüfmuster und die
Muster aus erwarteten Werten, welche in dem Haupt
prüfmuster-Cachespeicher 180 und dem Subprüfmuster-
Cachespeicher 182 gespeichert sind, zu dem Stiftda
tenselektor 66 aus. Die Ausgabeeinheit 184 kann bei
spielsweise ein Multiplexer zur Auswahl des Haupt
prüfmuster-Cachespeichers oder des Subprüfmuster-
Cachespeichers sein.
Fig. 14 ist ein Blockschaltbild, das den Subprüfmu
ster-Cachespeicher 182 zeigt. Der Subprüfmuster-
Cachespeicher 182 weist einen festen Puffer 182a mit
einer vorbestimmten Kapazität und einen Ringpuffer
182b auf. Die Übertragungssteuervorrichtung 178 spei
chert das Prüfmuster und das Muster aus erwarteten
Werten in dem festen Puffer 182a und dem Ringpuffer
182b auf der Grundlage der von dem Informationsdetek
tor 172 gelieferten Information der Subroutine.
Fig. 15(a) zeigt die in dem Subprüfmuster-
Cachespeicher 182 gespeicherte Subroutine, wenn eine
Subroutine 12b vorhanden ist. Das Prüfmuster und das
Muster aus erwarteten Werte, das von der Subroutine
SUB1 ausgelesen ist, werden als ein Subroutinenmuster
SUB1 bezeichnet. Wenn das Subroutinenmuster SUB1 in
A1, A2, A3. . . unterteilt ist, welche jeweils eine
vorbestimmte Kapazität haben, wird der erste Teil des
Subroutinenmusters SUB1, A1, A2 und A3 in dem festen
Puffer 182a gespeichert und der nächste Teil der Sub
routine A4, A5, A6 und A7 wird in dem Ringpuffer 182b
gespeichert. Der Rest der Subroutine, von A8 an, wird
in seiner Reihenfolge gespeichert, wobei das Aus
gangssignal der Prüfmuster und der Muster mit erwar
teten Werten in dem Ringpuffer 182b gespeichert sind.
Somit ist die Kapazität des Prüfmusters und des Mu
sters aus erwarteten Werten, das entsprechend der
Subroutine 12b ausgelesen ist, nicht begrenzt. Wenn
die Subroutine SUB1 von der Hauptroutine gerufen
wird, werden das Prüfmuster und das Muster aus erwar
teten Werten, welche vorher in dem festen Speicher
182a gespeichert wurden, ausgegeben. Während die
Prüfmuster und die Muster aus erwarteten Werten, die
in dem festen Speicher gespeichert sind, ausgegeben
werden, speichert die Übertragungssteuervorrichtung
178 den Rest der Subroutine SUB1, von A4 an, in jedem
der Blöcke des Ringpuffers 182.
Der erste Teil des Subroutinenmusters SUB1 ist immer
in dem festen Puffer 182a gespeichert. Selbst wenn
die Subroutine SUB1 gerufen wird, werden das Prüfmu
ster und das Muster aus erwarteten Werten unverzüg
lich ausgegeben. Daher speichert der feste Puffer
182a vorzugsweise das Prüfmuster 32a und das Muster
32b aus erwarteten Werten in einer solchen Weise, daß
die zum Auslesen des Prüfmusters und des Musters aus
erwarteten Werten, die in dem festen Puffer 182a ge
speichert sind, erforderliche Zeit länger ist als die
Zeit, die erforderlich ist zum Speichern des Prüfmu
sters und des Musters aus erwarteten Werten in dem
Ringpuffer 182b.
Fig. 15(b) zeigt die in dem Subprüfmuster-
Cachespeicher 182 gespeicherte Subroutine 12b, wenn
mehrere Subroutinen vorhanden sind. Das Testmuster
und das Muster aus erwarteten Werten, die durch die
Subroutine SUB1, SUB2 und SUB3 ausgelesen sind, wer
den jeweils als Subroutinenmuster SUB1, SUB2 und SUB3
bezeichnet. Jedes der Subroutinenmuster SUB1, SUB2
und SUB3 ist in A, B1, B2, B3 . . . unterteilt, wobei
jedes eine vorbestimmte Kapazität hat. Der erste Teil
jedes der Subroutinenmuster SUB1, SUB2 und SUB3 "A"
in diesem Fall, ist in dem festen Puffer 182a gespei
chert.
Der Ringpuffer 182b speichert jede der geteilten Sub
routinen in Reihenfolge; jedes Mal, wenn die Subrou
tine von der Hauptroutine gerufen wird. Wenn bei
spielsweise die Subroutine SUB2 von der Hauptroutine
gerufen wird, werden das Prüfmuster und das Muster
aus erwarteten Werten des Teils "A" des Subroutinen
musters SUB2, die vorher in dem festen Puffer 182 ge
speichert wurden, ausgegeben. Während das Prüfmuster
und das Muster aus erwarteten Werten, die in dem fe
sten Puffer gespeichert sind, ausgegeben werden,
speichert die Übertragungssteuervorrichtung 178 B1,
B2, B3 und B4 des Subroutinenmusters SUB2 in jedem
der Blöcke des Ringpuffers 182b. Der Rest der geteil
ten Subroutinen von B5 an wird in Reihenfolge gespei
chert, wobei das Prüfmuster und das Muster aus erwar
teten Werten, die in dem Ringpuffer gespeichert sind,
ausgegeben werden. Daher sind die Kapazitäten des
Prüfmusters und des Musters aus erwarteten Werten,
die basierend auf der Subroutine 12b ausgelesen wer
den, nicht begrenzt.
Weiterhin können, wenn die Subroutine 12b mehrere
Subroutinen aufweist und die Subroutine SUB2 gerufen
wird, unmittelbar nachdem die Subroutine SUB1 gerufen
wurde, das Prüfmuster und das Muster aus erwarteten
Werten ohne Verzögerung ausgegeben werden. Dies be
ruht darauf, daß das Prüfmuster und das Muster aus
erwarteten Werten, die in dem ersten Teil von jeder
der Subroutinen ausgelesen werden, in dem festen Puf
fer 182a gespeichert sind. Der Teil A von jedem der
Subroutinenmuster, der in dem festen Puffer 182a ge
speichert ist, speichert vorzugsweise das Prüfmuster
und das Muster aus erwarteten Werten in einer solchen
Weise, daß die Zeit, die zum Auslesen des Prüfmusters
und des Musters aus erwarteten Werten benötigt wird,
länger ist als die Zeit, die zum Speichern des Prüf
musters und des Musters aus erwarteten Werten in dem
Ringpuffer 182b erforderlich ist.
Fig. 15(c) zeigt die in dem Subprüfmuster-
Cachespeicher 182 gespeicherte Subroutine 12b, wenn
mehrere Subroutinen vorhanden sind, wenn die Kapazi
tät des Prüfmusters und des Musters aus erwarteten
Werten, die durch die mehreren Subroutinen ausgelesen
werden, kleiner ist als die Kapazität des festen Puf
fers 182a und des Ringpuffers 182b, kann der Ringpuf
fer 182b als der feste Puffer 182b verwendet werden.
Der feste Puffer 182a speichert die Subroutine SUB1
und einen Teil der Subroutine SUB2. Der Ringpuffer
182b speichert einen Teil der Subroutine SUB2 und die
Subroutine SUB3.
Wie mit Bezug auf Fig. 15(a) und (b) beschrieben ist,
werden das Prüfmuster und das Muster aus erwarteten
Werten vorübergehend gespeichert ohne die Länge und
die Zahl der Subroutine zu beschränken, da der Sub
prüfmuster-Cachespeicher 182 den festen Puffer 182a
und den Ringpuffer 182b aufweist.
Fig. 16 ist ein Blockschaltbild eines Ausführungsbei
spiels der Lese-Steuervorrichtung 170. Die Lese-
Steuervorrichtung 170 umfasst eine Befehlsspeicher
adressen-Benennungsvorrichtung 192 und einen Informa
tionsdetektor 172. Der Informationsdetektor 172 um
fasst einen Analysator 171, einen Subroutinenzahl-
Detektor 185, einen Subroutinenzahl-Speicher 186, ei
nen Kapazitätsdetektor 188 und einen Kapazitätsspei
cher 190. Die Befehlsspeicheradressen-
Benennungsvorrichtung 192 speichert den von dem ex
ternen Speicher 10 gelieferten Vektorbefehl an der
durch den Vektorspeicher 12 benannten Adresse. Der
Analysator 171 gibt jeweils einen Operationscode und
einen Operanden, die in dem Vektorbefehl enthalten
sind, zu dem Subroutinenzahl-Detektor 185 und dem Ka
pazitätsdetektor 188 aus. Der Subroutinenzahl-
Detektor 185 erfasst die Zahl der Subroutinen, die in
dem von dem externen Speicher 10 gelieferten Vektor
befehl enthalten sind, auf der Grundlage des von dem
Analysator 171 gelieferten Operationscodes. Der Sub
routinenzahl-Detektor 185 gibt dann das erfasste Er
gebnis zu dem Subroutinenzahl-Speicher 186 aus. Der
Subroutinenzahl-Speicher 186 gibt die Zahl der Sub
routinen zu der Übertragungssteuervorrichtung 178
aus.
Der Kapazitätsdetektor 188 erfasst die Kapazität des
Prüfmusters und des Musters aus erwarteten Werten,
die durch die in dem von dem externen Speicher 10 ge
lieferten Vektorbefehl enthaltene Subroutine ausgele
sen sind, auf der Grundlage des Operationscodes und
des Operanden, die von dem Analysator 171 geliefert
sind. Der Kapazitätsdetektor 188 gibt dann das er
fasste Ergebnis zu dem Kapazitätsspeicher 190 aus.
Der Kapazitätsspeicher 190 gibt die Kapazität zu der
Übertragungssteuervorrichtung 178 aus. Beispielsweise
kann der Kapazitätsdetektor 188 die Kapazität des
Prüfmusters und des Musters aus erwarteten Werten,
die von der Subroutine ausgelesen wurden, erfassen
durch Subtrahieren der Startadresse von der Endadres
se des Prüfmusters und des Musters aus erwarteten
Werten, welche in dem Musterspeicher 32 gespeichert
sind.
Fig. 17(a) zeigt ein Beispiel der von dem externen
Speicher 10 gelieferten Vektorbefehle. Von Zeile Nr.
10 bis zur Zeile Nr. 20 sind die Hauptroutine und in
der Hauptroutine 12a gespeichert. Von Zeile Nr. 21
bis zur Zeile Nr. 26 sind die Subroutine und in der
Subroutine 12b gespeichert. Bei diesem Ausführungs
beispiel enthält ein Befehl einen Operationscode und
mehrere Operanden.
In der Zeile Nr. 10 ist das Wort "STRT:" ein Etikett
und der Operationscode "IDXI" ist ein Befehl zum Aus
geben derselben Adresse für die durch die Operanden
angezeigte Anzahl von Malen. Der Operand "2" ist auf
den Operationscode "IDXI" bezogen und zeigt an, daß
dieselbe Adresse für zwei Zyklen ausgegeben wird. Die
Zeile Nr. 11 ist ein Befehl derart, daß dieselbe
Adresse für zwei Zyklen auszugeben ist.
In der Zeile Nr. 12 ist der Operationscode "JSR" ein
Befehl, um zu der durch den Operanden "SUB1" ange
zeigten Subroutine zu springen. Es ist nur ein Opera
tionscode in Fig. 17(a) gezeigt, welcher die Adresse
ist, an welcher die Subroutine SUB1 des Vektorspei
chers 12 und die Adresse des Prüfmusters und des Mu
sters aus erwarteten Werten, welche durch die Subrou
tine SUB1 ausgelesen werden, in dem Musterspeicher 32
eingeschrieben sind. Die Zeile Nr. 13 ist ein Befehl
zum Springen zu der Subroutine SUB1.
In der Zeile Nr. 14 ist der Operationscode "STI" ein
die Anzahl der Schleifen bestimmender Befehl. Die An
zahl der Schleifen wird auf "3" gesetzt, die durch
den Operanden bestimmt ist. In der Zeile Nr. 15 ist
"LOOP1:" ein Etikett, und der Operationscode "IDXI 4"
ist ein Befehl zur Ausgabe derselben Adresse für vier
Zyklen. Die Zeile Nr. 16 ist ein Befehl zum Springen
zu der Subroutine SUB1. Die Zeile Nr. 17 ist ein Be
fehl zur Ausgabe derselben Adresse für vier Zyklen.
In Zeile Nummer 18 ist der Operationscode "JNI" ein
Befehl zur Wiederholung des Befehls des Etiketts
"LOOP1" zu Zeile Nummer 17. Die Wiederholungszahl ist
gesetzt als die in Zeile Nummer 14 bestimmte Zahl.
Daher werden die Zeile Nummer 15 bis Zeile Nummer 18
dreimal wiederholt. Die Zeile Nummer 19 ist ein Be
fehl derart, daß dieselbe Adresse achtmal ausgegeben
wird. Die Zeile Nummer 20 ist ein Befehl, die Ausgabe
des Prüfmusters und des Musters aus erwarteten Werten
zu beenden.
In Zeile Nummer 21 ist "SUB1" ein Etikett und diese
Adresse ist eine Startadresse der Subroutine. Die
Zeile Nummer 22 bis Zeile Nummer 24 sind Befehle zur
zweifachen Wiederholung von Zeile Nummer 23 und Zeile
Nummer 24. Die Zeile Nummer 25 ist ein Befehl zur
Ausgabe derselben Adresse für vier Zyklen. In Zeile
Nummer 26 zeigt der Operationscode "RTN" das Ende der
Subroutine an und ist ein Befehl zur Rückkehr zu der
Zeilennummer, welche der Zeilennummer, bei welcher
die Subroutine gerufen wird, am nächsten ist. Wenn
beispielsweise die Subroutine SUB1 durch den Operati
onscode "JSR" von Zeile Nummer 13 gerufen wird, kehrt
der Befehl durch den Operationscode "RTN" in Zeile
Nummer 26 zu der Zeile Nummer 14 zurück.
Fig. 17(b) zeigt ein Beispiel für die drei Subrouti
nen enthaltenden Befehle. Die Zeile Nummer 10 bis
Zeile Nummer 21 ist die Hauptroutine. Die Zeile Num
mer 22 bis Zeile Nummer 27 ist die Subroutine SUB1.
Die Zeile Nummer 28 bis Zeile Nummer 30 ist die Sub
routine SUB2. Die Zeile Nummer 31 ist die Subroutine
SUB3. Die Erläuterung der Befehle für jede der Zeilen
ist weggelassen.
Fig. 18 ist ein Blockschaltbild eines Ausführungsbei
spiels des Subroutinenzahl-Detektors 185. Der Subrou
tinenzahl-Detektor 185 umfasst einen Rückkehrbefehls-
Detektor 117, einen Addierer 118 und einen Zählspei
cher 119. Der Rückkehrbefehls-Detektor 117 bewirkt,
daß der Zählspeicher 119 den von dem Addierer 118 ge
lieferten Wert speichert, wenn der von dem Analysator
181 gelieferte Operationscode der Rückkehrbefehl
"RTN" ist. Der Addierer 118 addiert immer 1 zu dem in
dem Zählspeicher 119 gespeicherten Wert. Dies bedeu
tet, daß die in dem Zählspeicher 119 gespeicherte
Zahl von Subroutinen jedes Mal erhöht wird, wenn der
Rückkehrbefehls-Detektor 117 den Rückkehrbefehl "RTN"
erfasst.
Die Arbeitsweise des Subroutinenzahl-Detektors 185
wird mit Bezug auf Fig. 17(b) erläutert. Der anfäng
liche Wert des Zählspeichers 119 wird auf "0" ge
setzt. Wenn der Rückkehrbefehls-Detektor 117 den Ope
rationscode "RTN" der Zeile Nummer 27 erfasst, be
wirkt der Rückkehrbefehls-Detektor 117, daß der Zähl
speicher 119 den von dem Addierer 118 gelieferten
Wert speichert. Der Addierer 118 gibt zu dieser Zeit
den Wert "1" zu dem Zählspeicher 119 für die Speiche
rung darin aus. Wenn der Wert "1" in dem Zählspeicher
119 gespeichert ist, gibt der Addierer 118 dann den
Wert "2" zu dem Zählspeicher 119 aus. Wenn der Zähl
speicher 119 den Operationscode "RTN" von Zeile Num
mer 30 erfasst, speichert der Zähler 119 den Wert
"2". Wenn der Zählspeicher 119 den Operationscode
"RTN" von Zeile Nummer 31 erfasst, speichert der
Zählspeicher 119 den Wert "3". Somit kann der Subrou
tinenzahl-Detektor 185 die Anzahl von Subroutinen er
fassen.
Fig. 19 ist ein Blockschaltbild eines Ausführungsbei
spiels des Startadressen-Detektors 188a. Der Start
adressen-Detektor 188a erfasst die kleinste Adresse
des Prüfmusters und des Musters für erwartete Werte,
die durch die Subroutine 12b ausgelesen wurden. Der
Startadressen-Detektor 188a umfasst einen Rufbefehls-
Detektor 111, einen Komparator 112 und einen Start
adressenspeicher 113. Der Komparator 112 vergleicht
den von dem Analysator 171 gelieferten Operanden
(Adresse) und die von dem Startadressenspeicher 13
gelieferte Adresse und gibt die kleinere Adresse zu
dem Startadressenspeicher 113 aus. Der Rufbefehls-
Detektor 111 bewirkt, daß der Startadressenspeicher
113 die von dem Komparator 112 gelieferte Adresse
speichert, wenn der Rufbefehls-Detektor 111 den Ope
rationscode "JSR" erfasst. Dies bedeutet, daß die
Subroutine zu rufen ist, geliefert von dem Analysator
171. Daher kann der Startadressenspeicher 113 die
Startadresse des Prüfmusters und des Musters für er
wartete Werte speichern, die durch die Subroutine
ausgelesen wurden.
Die Operation des Startadressen-Detektors 188a wird
mit Bezug auf Fig. 17(b) erläutert. Der Musterspei
cher 32 speichert vorzugsweise das Prüfmuster und das
Muster für erwartete Werte in der folgenden Reihen
folge: das Prüfmuster und das Muster für erwartete
Werte, die durch die Subroutine SUB1 ausgelesen wur
den; das Prüfmuster und das Muster für erwartete Wer
te, die durch die Subroutine SUB2 ausgelesen wurden;
und das Prüfmuster und das Muster für erwartete Wer
te, die durch Subroutine SUB3 ausgelesen wurden.
Der anfängliche Wert des Startadressenspeichers 113
wird an der maximalen Adresse eingestellt, welche für
den Musterspeicher 32 möglich ist. Beispielsweise
werden alle Bits auf 1 gesetzt. In Zeile Nummer 12
(**) vergleicht der Komparator 112 die maximale
Adresse, die in dem Startadressenspeicher 113 gespei
chert ist, und die Adresse der von dem Analysator 171
gelieferten Subroutine SUB3. Der Komparator 112 gibt
die kleinere Adresse, welche in diesem Fall die
Adresse der Subroutine SUB3 ist, zu dem Startadres
senspeicher 113 aus. Der Rufbefehls-Detektor 111 be
wirkt, daß der Startadressenspeicher 113 die von dem
Komparator 112 gelieferte Adresse der Subroutine SUB3
speichert.
In Zeile Nummer 13 vergleicht der Komparator 112 die
in dem Startadressenspeicher 113 gespeicherte Adresse
der Subroutine SUB3 und die Adresse der von dem Ana
lysator 171 gelieferten Subroutine SUB1. Der Kompara
tor 112 gibt dann die kleinere Adresse, welche in
diesem Fall die Adresse der Subroutine SUB1 ist, zu
dem Startadressenspeicher 113 aus. Der Rufbefehls-
Detektor 111 bewirkt, daß der Startadressenspeicher
113 die von dem Komparator 112 gelieferte Adresse der
Subroutine SUB1 speichert.
In der Zeile Nummer 16 vergleicht der Komparator 112
die in dem Startadressenspeicher 113 gespeicherte
Adresse der Subroutine SUB1 und die Adresse der von
dem Analysator 171 gelieferten Subroutine SUB2. Der
Komparator 112 gibt dann die kleinere Adresse, welche
in diesem Fall die Adresse der Subroutine SUB1 ist,
zu dem Startadressenspeicher 113 aus. Der Rufbefehls-
Detektor 111 bewirkt, daß der Startadressenspeicher
113 die von dem Komparator 112 gelieferte Adresse der
Subroutine SUB1 speichert.
In Zeile Nummer 19 vergleicht der Komparator 112 die
Adresse der in dem Startadressenspeicher 113 gespei
cherten Subroutine SUB1 und die Adresse der von dem
Analysator 171 gelieferten Subroutine SUB3. Der Kom
parator 112 gibt dann die kleinere Adresse, welche in
diesem Fall die Adresse der Subroutine SUB1 ist, zu
dem Startadressenspeicher 113 aus. Der Rufbefehls-
Detektor 111 bewirkt, daß der Startadressenspeicher
113 die von dem Komparator 112 gelieferte Adresse der
Subroutine SUB1 speichert. Der Operationscode "JSR",
welcher das Rufen der Subroutine bedeutet, ist nicht
in den Befehlen nach Zeile Nummer 20 enthalten. Die
Adresse der Subroutine SUB1 wird in dem Startadres
senspeicher 113 aufrecht erhalten.
Fig. 20 ist ein Blockschaltbild eines Ausführungsbei
spiels des Endadressendetektors 188b. Der Endadres
sendetektor 188b erfasst die größte Adresse des Prüf
musters und des Musters aus erwarteten Werten, die
durch die Subroutine 12b ausgelesen wurden. Der Enda
dressendetektor 188b umfasst einen Rückkehrbefehlsde
tektor 114, einen Komparator 115 und einen Endadres
senspeicher 116. Der Komparator 115 vergleicht den
von dem Analysator 171 gelieferten Operanden (Adres
se) und die von dem Startadressenspeicher 113 gelie
ferte Adresse. Der Komparator 115 gibt dann die grö
ßere Adresse zu dem Startadressenspeicher 113 aus.
Der Rückkehrbefehlsdetektor 114 bewirkt, daß der
Endadressenspeicher 116 die von dem Komparator 115
gelieferte Adresse speichert, wenn der Rückkehrbe
fehlsdetektor 114 den Operationscode "RTN" erfasst.
Dies ist der Rückkehrbefehl der Subroutine, der von
dem Rückkehrbefehlsanalysator 171 geliefert wurde.
Daher kann der Endadressenspeicher 116 die Endadresse
des Prüfmusters und des Musters aus erwarteten Wer
ten, die durch die Subroutine ausgelesen wurden,
speichern.
Die Arbeitsweise des Endadressendetektors 188b wird
mit Bezug auf Fig. 17(b) erläutert. Der Musterspei
cher 32 speichert vorzugsweise das Prüfmuster und das
Muster aus erwarteten Werten in der folgenden Reihen
folge: Das Prüfmuster und das Muster aus erwarteten
Werten, die durch die Subroutine SUB1 ausgelesen wur
den; das Prüfmuster und das Muster aus erwarteten
Werten, die durch die Subroutine SUB2 ausgelesen wur
den; und das Prüfmuster und das Muster aus erwarteten
Werten, die durch die Subroutine SUB3 ausgelesen wur
den.
Der anfängliche Wert des Endadressenspeichers 116
wird auf die kleinste Adresse eingestellt, die für
den Musterspeicher 32 möglich ist. Beispielsweise
werden alle Bits auf "0" gesetzt. In Zeile Nummer 27
vergleicht der Komparator 115 die in dem Endadressen
speicher 116 gespeicherte minimale Adresse und die
von dem Analysator 171 gelieferte Adresse der Zeile
Nummer 27. Der Komparator 115 gibt die größere Adres
se, welche in diesem Fall die Adresse der Zeile Num
mer 27 ist, zu dem Startadressenspeicher 113 aus. Der
Rückkehrbefehlsdetektor 1 11664 00070 552 001000280000000200012000285911155300040 0002019955380 00004 1154514 bewirkt, daß der Enda
dressenspeicher 116 die Adresse der Zeile Nummer 27
speichert, welche die vom Komparator 115 gelieferte
Endadresse der Subroutine SUB1 ist.
In Zeile Nummer 30 vergleicht der Komparator 115 die
in den Endadressenspeicher 116 gespeicherte Endadres
se der Subroutine SUB1, die Adresse der Zeile Nummer
27 und die von dem Analysator 171 gelieferte Adresse
der Zeile Nummer 30. Der Komparator 115 gibt die grö
ßere Adresse, welche die Adresse der Zeile Nummer 30
ist, zu dem Endadressenspeicher 116 aus. Der Rückbe
fehlsdetektor 114 bewirkt, daß der Endadressenspei
cher 116 die Adresse der Zeile Nummer 30 speichert,
welche die von dem Komparator 115 gelieferte Enda
dresse der Subroutine SUB2 ist.
In Zeile Nummer 31 vergleicht der Komparator 115 die
in dem Endadressenspeicher 116 gespeicherte Endadres
se der Subroutine SUB2, die Adresse von Zeile Nummer
30 und die von dem Analysator 171 gelieferte Adresse
der Zeile Nummer 31. Der Komparator 115 gibt die grö
ßere Adresse, welche die Adresse der Zeile Nummer 31
ist, zu dem Endadressenspeicher 116 aus. Der Rück
kehrbefehlsdetektor 114 bewirkt, daß der Endadressen
speicher 116 die Adresse von Zeile Nummer 31 spei
chert, welche die von dem Komparator 115 gelieferte
Endadresse der Subroutine SUB3 ist. Daher wird die
Endadresse der Subroutine SUB3 in dem Endadressen
speicher 116 gespeichert.
Der Kapazitätsdetektor 188 erfasst die Kapazität des
Prüfmusters und des Musters aus erwarteten Werten,
die durch die Subroutine 12b ausgelesen wurden, durch
Subtrahieren der in dem Startadressenspeicher 113 ge
speicherten Adresse von der in dem Endadressenspei
cher 116 gespeicherten Adresse.
Die Übertragungssteuervorrichtung 178 speichert das
Prüfmuster und das Muster aus erwarteten Werten in
dem festen Puffer 182a und dem Ringpuffer 182b, ba
sierend auf den Zahlen der Subroutinen und der durch
den Informationsdetektor 172 erfassten Kapazität der
Subroutinen.
Obgleich die vorliegende Erfindung durch beispielhaf
te Ausführungen beschrieben wurde, ist darauf hinzu
weisen, daß die Idee und der Umfang der vorliegenden
Erfindung nicht auf die vorstehend beschriebenen Aus
führungsbeispiele begrenzt sind. Es ist aus den ange
fügten Ansprüchen offensichtlich, daß viele Änderun
gen und Verbesserungen bei den vorbeschriebenen Aus
führungsbeispielen durchgeführt werden können. Einige
Änderungen sind nachfolgend erläutert.
Bei der ersten Änderung kann der Subprüfmuster-
Cachespeicher 182 als eine Cachevorrichtung zum vor
übergehenden Speichern und Ausgeben von gewünschten
Daten verwendet werden. Beispielsweise kann der Sub
prüfmuster-Cachespeicher 182 als eine Cachevorrich
tung zur Eingabe und Ausgabe von Daten mit einer ho
hen Geschwindigkeit bei der Verarbeitung von Grafiken
für ein Computerspiel verwendet werden.
Bei der zweiten Änderung kann der Prüfmustergenerator
mehrere Subprüfmuster-Cachespeicher 182 aufweisen,
und jeder der Subprüfmuster-Cachespeicher 182 kann
jeweils jedes der Subprüfmuster speichern, wenn die
Subroutine 30b die mehreren Subroutinen enthält.
Fig. 21 zeigt ein Beispiel des von dem externen Spei
cher 10 gelieferten Vektorbefehls. Der Vektorbefehl
weist zwei Subroutinen SUB1 und SUB2 auf. Jedoch ent
hält der Vektorbefehl nur einen Rückkehrbefehl. Daher
kann der Subroutinenzahl-Detektor 185, der mit Bezug
auf Fig. 18 erläutert wurde, nicht die beiden Subrou
tinen erfassen.
Bei der dritten Änderung kann der in Fig. 18 gezeigte
Subroutinenzahl-Detektor 185 die Zahl von Subroutinen
auf der Grundlage des Sprungbefehls erfassen. Fig. 22
zeigt einen Subroutinenzahl-Detektor 200, welcher die
Änderung der Subroutinenzahl-Detektoren 185 und 186
ist. Der Subroutinenzahl-Detektor 200 umfasst eine
Beurteilungseinheit 250, einen Subroutinenzahl-
Speicher 214 und einen Sprungbefehlsdetektor 216. Die
Beurteilungseinheit 250 umfasst Anpassungsdetektoren
202, 210 und 206, UND-Glieder 204 und 212 sowie ein
Register 208.
Der Subroutinenzahl-Speicher 214 speichert die Anzahl
von Subroutinen. Beispielsweise kann der Subroutinen
zahl-Speicher 214 ein Zähler sein, welcher gemäß dem
gelieferten logischen Wert 1 zählt. Der Anpassungsde
tektor 202 gibt den logischen Wert 1 zu dem UND-Glied
212 aus, wenn der in dem Subroutinenzahl-Speicher 214
gespeicherte Wert gleich 0 ist. Der Anpassungsdetek
tor 210 gibt den logischen Wert 1 zu dem UND-Glied
204 aus, wenn der in dem Subroutinenzahl-Speicher 214
gespeicherte Wert gleich 1 ist. Das Register 208
speichert den von dem Analysator 171 gelieferten Ope
randen, wenn der Schreibbefehl, der logische Wert 1,
von dem UND-Glied 212 geliefert wird. Der Anpassungs
detektor 206 vergleicht den in dem Register 208 ge
speicherten Operanden und den von dem Analysator 171
gelieferten Operanden, und stellt fest, ob diese ein
ander gleich sind oder nicht.
Der Sprungbefehlsdetektor 216 erfasst, ob der von dem
Analysator 171 gelieferte Operationscode der Sprung
befehl "JSR" ist oder nicht, und gibt das Ergebnis zu
den UND-Gliedern 212 und 204 aus. Beispielsweise gibt
der Sprungbefehlsdetektor 216 den logischen Wert 1
aus, wenn er den Sprungbefehl erfasst. Das UND-Glied
204 gibt den umgekehrten Ausgangswert des Anpassungs
detektors 206 und das logische Produkt der Ausgangs
werte des Anpassungsdetektors 210 und des Sprungbe
fehlsdetektors 216 zu dem Subroutinenzahl-Speicher
214 aus.
Der Subroutinenzahl-Speicher 214 initialisiert den
Zählwert als 0 vor der Erfassung der Information der
Subroutine 30b. Daher gibt der Anpassungsdetektor 202
den logischen Wert 1 zu dem UND-Glied 212 aus. Wenn
der Sprungbefehlsdetektor 216 den Sprungbefehl "JSR"
erfasst, wird die Startadresse der Subroutine in dem
Register 208 gespeichert. Der Subroutinenzahl-
Speicher 214 erhöht den Zählwert. Daher kann der Sub
routinenzahl-Speicher 214 1 als die Zahl der Subrou
tinen speichern. Wenn der Sprungbefehlsdetektor 216
wieder den Sprungbefehl erfasst, stellt der Anpas
sungsdetektor 206 fest, daß der in dem Register 208
gespeicherte Operand und der von dem Analysator 171
gelieferte Operand einander unterschiedlich sind, und
er gibt den logischen Wert 0 zu dem UND-Glied 204
aus. Der Anpassungsdetektor 210 und der Sprungbe
fehlsdetektor 216 liefern den logischen Wert 1 zu dem
UND-Glied 204. Das UND-Glied 204 gibt dann den logi
schen Wert 1 zu dem Subroutinenzahl-Speicher 214 aus.
Der Subroutinenzahl-Speicher 214 erhöht den Zählwert.
Somit kann der Subroutinenzahl-Speicher 214 2 als die
Zahl der Subroutinen speichern. Der Subroutinenzahl-
Detektor 200 kann die Zahl der Subroutinen erfassen,
selbst wenn die Zahl der Subroutinen und die Zahl der
Rückkehrbefehle unterschiedlich ist, wie in Fig. 21
gezeigt ist.
Bei der vierten Änderung kann der Subroutinenzahl-
Detektor 200 mehrere Register aufweisen. Fig. 23
zeigt einen Subroutinenzahl-Detektor 300, der mehrere
Register aufweist. Der Subroutinenzahl-Detektor 300
umfasst eine Beurteilungseinheit 250, einen Sprungbe
fehlsdetektor 216 und einen Subroutinenzahl-Speicher
214. Die Beurteilungseinheit 250 umfasst Register
208a bis 208n und einen Anpassungsdetektor 220.
Der Sprungbefehlsdetektor 216 gibt ein identisches
Signal aus, wenn er den Sprungbefehl erfasst, wobei
er dem Anpassungsdetektor 220 anzeigt, daß die Werte
einander gleich sind. Der Anpassungsdetektor 220 ver
gleicht den in jedem der Register 208a bis 208n ge
speicherten Operanden und den von dem Analysator 171
gelieferten Operanden. Der Anpassungsdetektor 220
speichert den von dem Analysator 171 zu den Registern
208a bis 208n gelieferten Operanden, in welchen der
Operand noch nicht gespeichert wird, wenn der in den
Registern 208a bis 208n gespeicherte Operand und der
von dem Analysator 171 gelieferte Operand nicht ein
ander gleich sind. Der Subroutinenzahl-Speicher 214
erhöht den Zählwert, wenn der in den Registern 208a
bis 208n gespeicherte Operand und der von dem Analy
sator 171 gelieferte Operand nicht einander gleich
sind.
Die Register 208a bis 208n und der Subroutinenzahl-
Speicher 214 werden vor der Erfassung der Zahl der
Subroutinen auf 0 initialisiert. Wenn der Sprungbe
fehlsdetektor 216 den Sprungbefehl erfasst, speichert
der Anpassungsdetektor 220 den von dem Analysator 171
zu dem Register 208a gelieferten Operanden. Zur sel
ben Zeit bewirkt der Anpassungsdetektor, daß der Sub
routinenzahl-Speicher 214 den Zählwert erhöht. Wenn
der Sprungbefehlsdetektor 216 den Sprungbefehl wieder
erfasst, vergleicht der Anpassungsdetektor 220 den in
dem Register 208a gespeicherten Operanden und den von
dem Analysator 171 gelieferten Operanden. Wenn die
verglichenen Operanden einander unterschiedlich sind,
speichert der Anpassungsdetektor 220 den von dem Ana
lysator 171 zu dem Register 208b gelieferten Operan
den und bewirkt, daß der Subroutinenzahl-Speicher 214
den Zählwert erhöht. Die Erläuterung der restlichen
Operation wird weggelassen. Durch Vorsehen mehrerer
Register kann jede Anzahl von Subroutinen, die größer
als 2 ist, erfasst werden.
Wie vorstehend beschrieben ist, kann eine Subroutine
wiederholt ausgeführt werden, selbst wenn ein DRAM
als ein Musterspeicher verwendet wird. Daher wird das
Programm vereinfacht. Das Ergebnis ist, daß ein ande
res Programm von einer Platte zu dem Programm mit ei
ner hohen Geschwindigkeit übertragen wird, und eine
elektrische Vorrichtung mit einer hohen Geschwindig
keit geprüft wird. Weiterhin sind drei Vektorspei
cherbänke vorgesehen. Somit kann der in einer der
Vektorspeicherbänke gespeicherte Vektorbefehl erwei
tert werden, während der Befehl zur Ausführung der
Subroutine erzeugt und die Subroutine gestartet wer
den. Zur selben Zeit kann das Prüfmuster zu dem Prüf
muster-Cachespeicher übertragen werden.
Claims (31)
1. Prüfmustergenerator zum Erzeugen von Prüfmustern
für die Prüfung von elektrischen Eigenschaften
einer elektrischen Vorrichtung, welcher auf
weist:
einen Musterspeicher (32) zum Speichern von Prüfmustern,
einen Muster-Cachespeicher (54, 180, 182) zum vorübergehenden Speichern von aus dem Muster speicher (32) ausgelesenen Prüfmustern, welcher Muster-Cachespeicher (54, 180, 182) aus einem Hauptprüfmuster-Cachespeicher (50, 180) und ei nem Subprüfmuster-Cachespeicher (52, 182) be steht,
einen Vektorspeicher (12) zum Speichern von Vek torbefehlen, die eine Reihenfolge der zu erzeu genden Prüfmuster anzeigen,
eine Lese-Steuervorrichtung (14, 170), die aus dem Vektorspeicher (12) einen Vektorbefehl aus liest und ein Übertragungsbefehlssignal (25) ausgibt, wenn der aus dem Vektorspeicher (12) ausgegebene Vektorbefehl einen Adressensprung für die aus dem Musterspeicher (32) auszulesen den Prüfmuster anzeigt, und
eine Übertragungssteuervorrichtung (34, 178), die das Prüfmuster entsprechend einem aus dem Vektorbefehl abgeleiteten Adressensignal (24) aus dem Musterspeicher (32) ausliest und das Prüfmuster als ein Hauptprüfmuster an den Haupt prüfmuster-Cachespeicher (50, 180) überträgt, wenn der Vektorbefehl keinen Adressensprung an zeigt bzw. das Prüfmuster entsprechend dem Ad ressensignal (24) aus dem Musterspeicher (32) ausliest und das Prüfmuster als ein Subprüfmus ter an den Subprüfmuster-Cachespeicher (52, 182) überträgt, wenn der Vektorbefehl einen Adressen sprung anzeigt.
einen Musterspeicher (32) zum Speichern von Prüfmustern,
einen Muster-Cachespeicher (54, 180, 182) zum vorübergehenden Speichern von aus dem Muster speicher (32) ausgelesenen Prüfmustern, welcher Muster-Cachespeicher (54, 180, 182) aus einem Hauptprüfmuster-Cachespeicher (50, 180) und ei nem Subprüfmuster-Cachespeicher (52, 182) be steht,
einen Vektorspeicher (12) zum Speichern von Vek torbefehlen, die eine Reihenfolge der zu erzeu genden Prüfmuster anzeigen,
eine Lese-Steuervorrichtung (14, 170), die aus dem Vektorspeicher (12) einen Vektorbefehl aus liest und ein Übertragungsbefehlssignal (25) ausgibt, wenn der aus dem Vektorspeicher (12) ausgegebene Vektorbefehl einen Adressensprung für die aus dem Musterspeicher (32) auszulesen den Prüfmuster anzeigt, und
eine Übertragungssteuervorrichtung (34, 178), die das Prüfmuster entsprechend einem aus dem Vektorbefehl abgeleiteten Adressensignal (24) aus dem Musterspeicher (32) ausliest und das Prüfmuster als ein Hauptprüfmuster an den Haupt prüfmuster-Cachespeicher (50, 180) überträgt, wenn der Vektorbefehl keinen Adressensprung an zeigt bzw. das Prüfmuster entsprechend dem Ad ressensignal (24) aus dem Musterspeicher (32) ausliest und das Prüfmuster als ein Subprüfmus ter an den Subprüfmuster-Cachespeicher (52, 182) überträgt, wenn der Vektorbefehl einen Adressen sprung anzeigt.
2. Prüfmustergenerator nach Anspruch 1, dadurch ge
kennzeichnet, dass das Subprüfmuster wiederholt
in dem Prüfmuster enthalten ist.
3. Prüfmustergenerator nach Anspruch 1 oder 2, da
durch gekennzeichnet, dass der Hauptprüfmuster-
Cachespeicher (50) zwei Musterspeicherbänke (40,
41) aufweist, und der Prüfmustergenerator wei
terhin einen Hauptprüfmuster-Multiplexer (44)
aufweist zum Auslesen des vorher in einer der
Musterspeicherbänke (40, 41) gespeicherten
Hauptprüfmusters, um das ausgelesene Hauptprüf
muster zu der elektrischen Vorrichtung zu lie
fern, während das aus dem Musterspeicher (32)
ausgelesene Hauptprüfmuster zu der anderen der
Musterspeicherbänke (40, 41) übertragen wird.
4. Prüfmustergenerator nach einem der Ansprüche 1
bis 3, dadurch gekennzeichnet, dass der Subprüf
muster-Cachespeicher (52) zwei Musterspeicher
bänke (42, 43) aufweist, und dass der Prüfmus
tergenerator weiterhin einen Subprüfmuster-
Multiplexer (45) aufweist zum Auslesen des vor
her in einer der Musterspeicherbänke (42, 43)
gespeicherten Subprüfmusters, um das ausgelesene
Subprüfmuster zu der elektrischen Vorrichtung zu
liefern, während das aus dem Musterspeicher (32)
ausgelesene Subprüfmuster zu der anderen der Mu
sterspeicherbänke (42, 43) übertragen wird.
5. Prüfmustergenerator nach einem der Ansprüche 1
bis 4, dadurch gekennzeichnet, dass ein Vektor-
Cachespeicher (56) zum Speichern des aus dem
Vektorspeicher (12) ausgelesenen Vektorbefehls
vorgesehen ist, und dass die Lese-
Steuervorrichtung feststellt, dass das Subprüf
muster zu einer Zeit erzeugt werden soll, zu der
der aus dem Vektorspeicher (12) ausgelesene Vek
torbefehl zu dem Vektor-Cachespeicher (56) über
tragen wird.
6. Prüfmustergenerator nach Anspruch 5, gekenn
zeichnet durch einen Adressenexpander (22) zum
Erzeugen einer Adresse des aus dem Musterspei
cher (32) auszulesenden Prüfmusters auf der
Grundlage des aus dem Vektor-Cachespeicher (56)
ausgelesenen Vektorbefehls.
7. Prüfmustergenerator nach Anspruch 6, dadurch ge
kennzeichnet, dass der Vektor-Cachespeicher (56)
drei Vektorspeicherbänke (16, 18, 19) aufweist,
und dass der Mustergenerator weiterhin einen
Vektorbefehls-Multiplexer (20) aufweist, um den
aus einer der drei Vektorspeicherbänke (16, 18,
19) ausgelesenen Vektorbefehl zu dem Adressenex
pander (22) zu liefern, während der Vektorbefehl
in eine andere der Vektorspeicherbänke (16, 18,
19) eingeschrieben wird.
8. Prüfmustergenerator nach einem der Ansprüche 1
bis 7, dadurch gekennzeichnet, dass die Lese-
Steuervorrichtung (14) eine Vorrichtung zum Er
fassen einer Endadresse des Subprüfmusters auf
weist, und dass die Übertragungssteuervorrich
tung (34) ein neues auszulesendes Subprüfmuster,
welches von der Lese-Steuervorrichtung (14) er
fasst wurde, nachdem das Subprüfmuster mit der
von der Lese-Steuervorrichtung (14) erfassten
Endadresse übertragen ist, zu dem Subprüfmuster-
Cachespeicher (52) überträgt.
9. Prüfmustergenerator nach Anspruch 1, dadurch ge
kennzeichnet, dass der Subprüfmuster-
Cachespeicher (182) aufweist:
einen Ringpuffer (182b), welcher in Lage ist, das Subprüfmuster auszugeben mit aufeinander folgender Aktualisierung des Subprüfmusters dar in, und
einen festen Puffer (182a), welcher in Lage ist, das Subprüfmuster auszugeben mit einer Speiche rung des Subprüfmusters darin.
einen Ringpuffer (182b), welcher in Lage ist, das Subprüfmuster auszugeben mit aufeinander folgender Aktualisierung des Subprüfmusters dar in, und
einen festen Puffer (182a), welcher in Lage ist, das Subprüfmuster auszugeben mit einer Speiche rung des Subprüfmusters darin.
10. Prüfmustergenerator nach Anspruch 9, dadurch ge
kennzeichnet, dass
der Vektorbefehl eine Hauptroutine zum Auslesen des Hauptprüfmusters aus dem Musterspeicher (32) und eine Subroutine zum Auslesen des Subprüfmus ters aus dem Musterspeicher (32) aufweist,
die Übertragungssteuervorrichtung (178) einen ersten Teil des aufeinander folgend aus dem Mus terspeicher (32) durch die Subroutine ausgelese nen Subprüfmusters speichert, und
das Subprüfmuster, welches durch die Subroutine aus dem Musterspeicher (32) ausgelesen ist und welches nicht in dem festen Puffer (182b) ge speichert ist, aufeinander folgend in dem Ring puffer (182a) gespeichert und aus dem Ringpuffer (182a) ausgegeben wird, wenn die Subroutine aus geführt wird.
der Vektorbefehl eine Hauptroutine zum Auslesen des Hauptprüfmusters aus dem Musterspeicher (32) und eine Subroutine zum Auslesen des Subprüfmus ters aus dem Musterspeicher (32) aufweist,
die Übertragungssteuervorrichtung (178) einen ersten Teil des aufeinander folgend aus dem Mus terspeicher (32) durch die Subroutine ausgelese nen Subprüfmusters speichert, und
das Subprüfmuster, welches durch die Subroutine aus dem Musterspeicher (32) ausgelesen ist und welches nicht in dem festen Puffer (182b) ge speichert ist, aufeinander folgend in dem Ring puffer (182a) gespeichert und aus dem Ringpuffer (182a) ausgegeben wird, wenn die Subroutine aus geführt wird.
11. Prüfmustergenerator nach Anspruch 10, dadurch
gekennzeichnet, dass die Lese-Steuervorrichtung
(170) einen Informationsdetektor (172) zum Er
fassen einer Information der in dem Vektorspei
cher (12) gespeicherten Subroutine aufweist, und
dass die Übertragungssteuervorrichtung (178) das
Subprüfmuster in dem festen Puffer (182a)
und/oder dem Ringpuffer (182b) auf der Grundlage
der Information der Subroutine speichert.
12. Prüfmustergenerator nach Anspruch 11, dadurch
gekennzeichnet, dass der Informationsdetektor
(172) eine Startadresse der Subroutine erfasst
und das durch einen ersten Teil der Subroutine
aus dem Musterspeicher (132) ausgelesene Sub
prüfmuster basierend auf der Startadresse spei
chert.
13. Prüfmustergenerator nach Anspruch 12, dadurch
gekennzeichnet, dass der Informationsdetektor
(172) einen Subroutinenzahl-Detektor (185, 200,
300) aufweist zum Erfassen der Anzahl der in dem
Vektorspeicher (12) gespeicherten Subroutinen,
und dass die Übertragungssteuervorrichtung (178)
bewirkt, dass der feste Puffer (182a) das durch
jede der mehreren Subroutinen ausgelesene Sub
prüfmuster speichert, wenn mehrere Subroutinen
enthalten sind.
14. Prüfmustergenerator nach Anspruch 13, dadurch
gekennzeichnet, dass der Subroutinenzahl-
Detektor (185) aufweist:
einen Rückkehrbefehls-Detektor (117) zum Erfas sen der Anzahl der in dem Vektorbefehl enthalte nen Rückkehrbefehle, und
einen Subroutinenzahl-Speicher (186) der die An zahl von Rückkehrbefehlen zählt.
einen Rückkehrbefehls-Detektor (117) zum Erfas sen der Anzahl der in dem Vektorbefehl enthalte nen Rückkehrbefehle, und
einen Subroutinenzahl-Speicher (186) der die An zahl von Rückkehrbefehlen zählt.
15. Prüfmustergenerator nach Anspruch 13, dadurch
gekennzeichnet, dass der Subroutinenzahl-
Detektor (200, 300) aufweist:
einen Sprungbefehlsdetektor (216) zum Erfassen eines in dem Vektorbefehl enthaltenen Sprungbe fehls,
eine Beurteilungseinheit (250) zur Feststellung, ob eine durch den Sprungbefehl bestimmte Adresse vorher durch den Sprungbefehl als eine Sprungad resse bestimmt wurde, und
einen Subroutinenzahl-Speicher (214) zum Zählen der Anzahl von Malen, die die Beurteilungsein heit (250) festgestellt hat, dass die durch den Sprungbefehl bestimmte Adresse nicht vorher als die Sprungadresse bestimmt war.
einen Sprungbefehlsdetektor (216) zum Erfassen eines in dem Vektorbefehl enthaltenen Sprungbe fehls,
eine Beurteilungseinheit (250) zur Feststellung, ob eine durch den Sprungbefehl bestimmte Adresse vorher durch den Sprungbefehl als eine Sprungad resse bestimmt wurde, und
einen Subroutinenzahl-Speicher (214) zum Zählen der Anzahl von Malen, die die Beurteilungsein heit (250) festgestellt hat, dass die durch den Sprungbefehl bestimmte Adresse nicht vorher als die Sprungadresse bestimmt war.
16. Prüfmustergenerator nach Anspruch 15, dadurch
gekennzeichnet, dass die Beurteilungseinheit
(250 aufweist:
ein Register (208) zum Speichern der Adresse, für die festgestellt ist, dass sie nicht vorher als die Sprungadresse bestimmt war, und
einen Anpassungsdetektor (206) zum Feststellen, ob die in dem Register (208) gespeicherte Adres se und eine durch den Sprungbefehl bestimmte Ad resse die gleichen sind oder nicht, wenn der Sprungbefehlsdetektor (216) den Sprungbefehl er fasst.
ein Register (208) zum Speichern der Adresse, für die festgestellt ist, dass sie nicht vorher als die Sprungadresse bestimmt war, und
einen Anpassungsdetektor (206) zum Feststellen, ob die in dem Register (208) gespeicherte Adres se und eine durch den Sprungbefehl bestimmte Ad resse die gleichen sind oder nicht, wenn der Sprungbefehlsdetektor (216) den Sprungbefehl er fasst.
17. Prüfmustergenerator nach Anspruch 13, dadurch
gekennzeichnet, dass der Informationsdetektor
(172) einen Kapazitätsdetektor (188) zum Erfas
sen der Kapazität des Subprüfmusters aufweist,
und dass der Prüfmustergenerator das Subprüfmus
ter in dem Ringpuffer (182b) speichert durch An
nahme des Ringpuffers (182b) als einen zweiten
festen Puffer, wenn die Kapazität des Subprüf
musters kleiner ist als die Kapazität des
Subprüfmuster-Cachespeichers (182).
18. Prüfmustergenerator nach Anspruch 17, dadurch
gekennzeichnet, dass der Kapazitätsdetektor
(188) aufweist:
einen Startadressen-Detektor (188a) zum Erfassen einer Startadresse des zuerst durch die Subrou tine ausgelesenen Subprüfmusters, und
einen Endadressendetektor (188b) zum Erfassen einer Endadresse des zuletzt durch die Subrouti ne ausgelesenen Subprüfmusters,
wobei die Kapazität des Prüfmusters erfasst wird durch Subtraktion der Startadresse des zuerst ausgelesenen Prüfmusters von der Endadresse des zuletzt ausgelesenen Prüfmusters.
einen Startadressen-Detektor (188a) zum Erfassen einer Startadresse des zuerst durch die Subrou tine ausgelesenen Subprüfmusters, und
einen Endadressendetektor (188b) zum Erfassen einer Endadresse des zuletzt durch die Subrouti ne ausgelesenen Subprüfmusters,
wobei die Kapazität des Prüfmusters erfasst wird durch Subtraktion der Startadresse des zuerst ausgelesenen Prüfmusters von der Endadresse des zuletzt ausgelesenen Prüfmusters.
19. Prüfmustergenerator nach einem der Ansprüche 11
bis 18, dadurch gekennzeichnet, dass der Infor
mationsdetektor (172) eine Information der
Subroutine zu einer Zeit erfasst, zu der der
Vektorbefehl in dem Vektorspeicher (12)
gespeichert wird.
20. Prüfmustergenerator nach Anspruch 19, dadurch
gekennzeichnet, dass der feste Puffer (182a) das
Subprüfmuster in einer solchen Weise speichert,
dass eine Zeit, die zum Speichern des in dem
Musterspeicher (32) gespeicherten Subprüfmusters
in den Ringpuffer (182b) benötigt wird, länger
ist als eine Zeit, die zur Ausgabe des in dem
festen Puffer (182a) gespeicherten Subprüfmus
ters benötigt wird.
21. Prüfvorrichtung zum Prüfen elektrischer Eigen
schaften von elektrischen Vorrichtungen durch
Verwendung von Prüfmustern, welche aufweist:
einen Musterspeicher (32) zum Speichern von Prüfmustern, jeweils enthaltend ein Eingabeprüf muster, das für die Prüfung an eine elektrische Vorrichtung angelegt wird, und ein Muster aus erwarteten Werten, das von einer normalen elekt rischen Vorrichtung ausgegeben wird, wenn das Eingabeprüfmuster an die normale elektrische Vorrichtung angelegt wird,
einen Muster-Cachespeicher (54, 180, 182) zum vorübergehenden Speichern von aus dem Muster speicher (32) ausgelesenen Prüfmustern, welcher Muster-Cachespeicher (54, 180, 182) aus einem Hauptprüfmuster-Cachespeicher (80, 180) und ei nem Subprüfmuster-Cachespeicher (52, 182) be steht,
einen Vektorspeicher (12) zum Speichern von Vek torbefehlen, die eine Reihenfolge der zu erzeu genden Prüfmuster anzeigen,
eine Lese-Steuervorrichtung (14, 170), die aus dem Vektorspeicher (12) einen Vektorbefehl aus liest und ein Übertragungsbefehlssignal (25) ausgibt, wenn der aus dem Vektorspeicher (12) ausgegebene Vektorbefehl einen Adressensprung für die aus dem Musterspeicher (32) auszulesen den Prüfmuster anzeigt,
eine Übertragungssteuervorrichtung (34, 178), die das Prüfmuster entsprechend einem aus dem Vektorbefehl abgeleiteten Adressensignal (24) aus dem Musterspeicher (32) ausliest und das Prüfmuster als ein Hauptprüfmuster an den Haupt prüfmuster-Cachespeicher (50, 180) überträgt, wenn der Vektorbefehl keinen Adressensprung an zeigt bzw. das Prüfmuster entsprechend dem Ad ressensignal (24) aus dem Musterspeicher (32) ausliest und das Prüfmuster als ein Subprüfmus ter an den Subprüfmuster-Cachespeicher (52, 182) überträgt, wenn der Vektorbefehl einen Adressen sprung anzeigt,
einen Stiftdatenselektor (66) für die körperli che Zuordnung von wenigstens einem Signal, das das aus dem Muster-Cachespeicher (54, 180, 182) ausgelesene Prüfmuster bildet, in Übereinstim mung mit der Anordnung von elektrischen An schlüssen der elektrischen Vorrichtung,
eine Wellenform-Formungsvorrichtung (72) zum Formen einer Wellenform des in dem von dem Stiftdatenselektor (66) ausgegebenen Prüfmuster enthaltenen Eingabeprüfmusters,
eine Vorrichtungs-Einsteckeinheit (80) zur Auf nahme der elektrischen Vorrichtung und zum Anle gen des Eingabeprüfmusters, das von der Wellen form-Formungsvorrichtung (72) geformt wurde, an die elektrischen Vorrichtung, und
einen Komparator (84) zum Vergleichen eines von der elektrischen Vorrichtung durch Anlegen des Eingabeprüfmusters ausgegebenen Ausgangssignals mit dem Muster aus erwarteten Werten.
einen Musterspeicher (32) zum Speichern von Prüfmustern, jeweils enthaltend ein Eingabeprüf muster, das für die Prüfung an eine elektrische Vorrichtung angelegt wird, und ein Muster aus erwarteten Werten, das von einer normalen elekt rischen Vorrichtung ausgegeben wird, wenn das Eingabeprüfmuster an die normale elektrische Vorrichtung angelegt wird,
einen Muster-Cachespeicher (54, 180, 182) zum vorübergehenden Speichern von aus dem Muster speicher (32) ausgelesenen Prüfmustern, welcher Muster-Cachespeicher (54, 180, 182) aus einem Hauptprüfmuster-Cachespeicher (80, 180) und ei nem Subprüfmuster-Cachespeicher (52, 182) be steht,
einen Vektorspeicher (12) zum Speichern von Vek torbefehlen, die eine Reihenfolge der zu erzeu genden Prüfmuster anzeigen,
eine Lese-Steuervorrichtung (14, 170), die aus dem Vektorspeicher (12) einen Vektorbefehl aus liest und ein Übertragungsbefehlssignal (25) ausgibt, wenn der aus dem Vektorspeicher (12) ausgegebene Vektorbefehl einen Adressensprung für die aus dem Musterspeicher (32) auszulesen den Prüfmuster anzeigt,
eine Übertragungssteuervorrichtung (34, 178), die das Prüfmuster entsprechend einem aus dem Vektorbefehl abgeleiteten Adressensignal (24) aus dem Musterspeicher (32) ausliest und das Prüfmuster als ein Hauptprüfmuster an den Haupt prüfmuster-Cachespeicher (50, 180) überträgt, wenn der Vektorbefehl keinen Adressensprung an zeigt bzw. das Prüfmuster entsprechend dem Ad ressensignal (24) aus dem Musterspeicher (32) ausliest und das Prüfmuster als ein Subprüfmus ter an den Subprüfmuster-Cachespeicher (52, 182) überträgt, wenn der Vektorbefehl einen Adressen sprung anzeigt,
einen Stiftdatenselektor (66) für die körperli che Zuordnung von wenigstens einem Signal, das das aus dem Muster-Cachespeicher (54, 180, 182) ausgelesene Prüfmuster bildet, in Übereinstim mung mit der Anordnung von elektrischen An schlüssen der elektrischen Vorrichtung,
eine Wellenform-Formungsvorrichtung (72) zum Formen einer Wellenform des in dem von dem Stiftdatenselektor (66) ausgegebenen Prüfmuster enthaltenen Eingabeprüfmusters,
eine Vorrichtungs-Einsteckeinheit (80) zur Auf nahme der elektrischen Vorrichtung und zum Anle gen des Eingabeprüfmusters, das von der Wellen form-Formungsvorrichtung (72) geformt wurde, an die elektrischen Vorrichtung, und
einen Komparator (84) zum Vergleichen eines von der elektrischen Vorrichtung durch Anlegen des Eingabeprüfmusters ausgegebenen Ausgangssignals mit dem Muster aus erwarteten Werten.
22. Prüfvorrichtung nach Anspruch 21, gekennzeichnet
durch
einen Multiplexer (44, 45) zur Auswahl des aus
dem Hauptprüfmuster-Cachespeicher (50, 180) aus
gelesenen Hauptprüfmusters oder des aus dem Sub
prüfmuster-Cachespeicher (52, 182) ausgelesenen
Subprüfmusters.
23. Verfahren zum Erzeugen von Prüfmustern für die
Prüfung von elektrischen Eigenschaften einer e
lektrischen Vorrichtung, welches die Schritte
aufweist:
einen Leseschritt zum Auslesen eines Vektorbe fehls, der eine Reihenfolge eines zu erzeugenden Prüfmusters anzeigt, aus einem Vektorbefehle speichernden Vektorspeicher (12),
einen Beurteilungsschritt zur Feststellung, ob der ausgelesene Vektorbefehl einen Adressen sprung für das aus einem Musterspeicher (32) auszulesende Prüfmuster anzeigt oder nicht, und einen Übertragungsschritt zum Auslesen des Prüf musters entsprechend einem aus dem Vektorbefehl abgeleiteten Adressensignal (24) aus dem Muster speicher (32) und Übertragen des Prüfmusters als ein Hauptprüfmuster an einen Hauptprüfmuster- Cachespeicher (50, 180) eines Muster- Cachespeichers (54, 180, 1829 zum vorübergehen den Speichern von aus dem Musterspeicher (32) ausgelesenen Prüfmustern, wenn der Vektorbefehl keinen Adressensprung anzeigt bzw. zum Auslesen des Prüfmusters entsprechend dem Adressensignal (24) aus dem Musterspeicher (32) und Übertragen des Prüfmusters als ein Subprüfmuster an einen Subprüfmuster-Cachespeicher (52, 182) des Mus ter-Cachespeichers (50, 180, 182), wenn der Vek torbefehl einen Adressensprung anzeigt.
einen Leseschritt zum Auslesen eines Vektorbe fehls, der eine Reihenfolge eines zu erzeugenden Prüfmusters anzeigt, aus einem Vektorbefehle speichernden Vektorspeicher (12),
einen Beurteilungsschritt zur Feststellung, ob der ausgelesene Vektorbefehl einen Adressen sprung für das aus einem Musterspeicher (32) auszulesende Prüfmuster anzeigt oder nicht, und einen Übertragungsschritt zum Auslesen des Prüf musters entsprechend einem aus dem Vektorbefehl abgeleiteten Adressensignal (24) aus dem Muster speicher (32) und Übertragen des Prüfmusters als ein Hauptprüfmuster an einen Hauptprüfmuster- Cachespeicher (50, 180) eines Muster- Cachespeichers (54, 180, 1829 zum vorübergehen den Speichern von aus dem Musterspeicher (32) ausgelesenen Prüfmustern, wenn der Vektorbefehl keinen Adressensprung anzeigt bzw. zum Auslesen des Prüfmusters entsprechend dem Adressensignal (24) aus dem Musterspeicher (32) und Übertragen des Prüfmusters als ein Subprüfmuster an einen Subprüfmuster-Cachespeicher (52, 182) des Mus ter-Cachespeichers (50, 180, 182), wenn der Vek torbefehl einen Adressensprung anzeigt.
24. Verfahren zum Erzeugen von Prüfmustern nach An
spruch 23, dadurch gekennzeichnet, dass das Sub
prüfmuster in dem Prüfmuster enthalten ist.
25. Verfahren zum Erzeugen von Prüfmustern nach ei
nem der Ansprüche 23 oder 24, dadurch gekenn
zeichnet, dass der Hauptprüfmuster-Cachespeicher
(50, 180) zwei Musterspeicherbänke (40, 41) ver
wendet und dass ein Schritt des Auslesens des
Hauptprüfmusters, das vorher in einer der Mus
terspeicherbänke (40, 41) gespeichert war, vor
gesehen ist, um das ausgelesene Hauptprüfmuster
zu der elektrischen Vorrichtung zu liefern, wäh
rend das aus dem Musterspeicher (32) ausgelesene
Hauptprüfmuster zu der anderen der Musterspei
cherbänke (40, 41) übertragen wird.
26. Verfahren zum Erzeugen von Prüfmustern nach ei
nem der Ansprüche 23 oder 24, dadurch gekenn
zeichnet, dass der Subprüfmuster-Cachespeicher
(52) zwei Musterspeicherbänke (42, 43) verwen
det, und dass ein Schritt des Auslesens des vor
her in einer der Musterspeicherbänke (42, 43)
gespeicherten Subprüfmusters vorgesehen ist, um
das ausgelesene Subprüfmuster zu der elektri
schen Vorrichtung zu liefern, während das aus
dem Musterspeicher (32) ausgelesene Subprüfmus
ter zu der anderen der Musterspeicherbänke (42,
43) übertragen wird.
27. Verfahren zum Erzeugen eines Prüfmusters nach
einem der Ansprüche 23 oder 26, gekennzeichnet
durch einen Schritt des Speicherns der in dem
Ausleseschritt aus dem Vektorspeicher (12) aus
gelesenen Vektorbefehle in einem Vektor-
Cachespeicher (56).
28. Verfahren zum Erzeugen eines Prüfmusters nach
Anspruch 27, gekennzeichnet durch einen Adres
senerzeugungsschritt zum Erzeugen einer Adresse
des aus dem Musterspeicher (32) auszulesenden
Prüfmusters auf der Grundlage des aus dem Vek
tor-Cachespeicher (56) ausgelesenen Vektorbe
fehls.
29. Verfahren zum Erzeugen eines Prüfmusters nach
Anspruch 28, dadurch gekennzeichnet, dass ein
Vektor-Cachespeicher (56) mit drei Vektorspei
cherbänken (16, 18, 19) verwendet wird, und dass
die Adresse durch den aus einer der Vektorspei
cherbänke (16, 18, 19) ausgelesenen Vektorbefehl
erzeugt wird, während der Vektorbefehl in eine
andere der Vektorspeicherbänke (16, 18, 19) wäh
rend des Adressenerzeugungsschrittes geschrieben
wird.
30. Verfahren zum Erzeugen eines Prüfmusters nach
einem der Ansprüche 23 bis 29, gekennzeichnet
durch einen Erfassungsschritt zum Erfassen einer
Endadresse des Subprüfmusters, wobei in dem Ü
bertragungsschritt ein neues Subprüfmuster aus
dem Musterspeicher (32) in den Subprüfmuster-
Cachespeicher (52) übertragen wird, wenn für das
neue Subprüfmuster in dem Erfassungsschritt
festgestellt wurde, dass es auszulesen ist,
nachdem das Subprüfmuster mit der Endadresse ü
bertragen wurde.
31. Verfahren zum Erzeugen eines Prüfmusters nach
Anspruch 23, dadurch gekennzeichnet, dass der
Subprüfmuster-Cachespeicher (182) aufweist:
einen Ringpuffer (182b), welcher in der Lage ist, das Subprüfmuster mit aufeinander folgender Aktualisierung des Subprüfmusters darin aus zugeben, und
einen festen Puffer (182a), welcher in der Lage ist, das Subprüfmuster mit Speicherung des Sub prüfmusters darin auszugeben,
wobei die Vektorbefehle eine Hauptroutine zum Auslesen des Hauptprüfmusters aus dem Muster speicher (32) und eine Subroutine zum Auslesen des Subprüfmusters aus dem Musterspeicher (32) aufweisen, und wobei der Schritt zum Speichern in den Subprüfmuster-Cachespeicher (182) auf weist:
einen Schritt zum Speichern eines ersten Teils des Subprüfmusters, das aufeinander folgend durch die Subroutine aus dem Musterspeicher (32) ausgelesen wurde, in dem festen Puffer (182a), und
einen Schritt des aufeinander folgenden Spei cherns des Subprüfmusters, welches durch die Subroutine aus dem Musterspeicher (132) ausgele sene wurde und welches nicht in dem festen Puf fer (182b) gespeichert ist, in dem Ringpuffer (182a).
einen Ringpuffer (182b), welcher in der Lage ist, das Subprüfmuster mit aufeinander folgender Aktualisierung des Subprüfmusters darin aus zugeben, und
einen festen Puffer (182a), welcher in der Lage ist, das Subprüfmuster mit Speicherung des Sub prüfmusters darin auszugeben,
wobei die Vektorbefehle eine Hauptroutine zum Auslesen des Hauptprüfmusters aus dem Muster speicher (32) und eine Subroutine zum Auslesen des Subprüfmusters aus dem Musterspeicher (32) aufweisen, und wobei der Schritt zum Speichern in den Subprüfmuster-Cachespeicher (182) auf weist:
einen Schritt zum Speichern eines ersten Teils des Subprüfmusters, das aufeinander folgend durch die Subroutine aus dem Musterspeicher (32) ausgelesen wurde, in dem festen Puffer (182a), und
einen Schritt des aufeinander folgenden Spei cherns des Subprüfmusters, welches durch die Subroutine aus dem Musterspeicher (132) ausgele sene wurde und welches nicht in dem festen Puf fer (182b) gespeichert ist, in dem Ringpuffer (182a).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31963798 | 1998-11-10 | ||
JP31074899 | 1999-11-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19955380A1 DE19955380A1 (de) | 2000-05-18 |
DE19955380C2 true DE19955380C2 (de) | 2003-10-30 |
Family
ID=26566443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19955380A Expired - Fee Related DE19955380C2 (de) | 1998-11-10 | 1999-11-10 | Prüfmustergenerator, Prüfvorrichtung und Verfahren zum Erzeugen von Prüfmustern |
Country Status (2)
Country | Link |
---|---|
US (1) | US6769083B1 (de) |
DE (1) | DE19955380C2 (de) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10031632B4 (de) * | 2000-06-29 | 2006-05-24 | Rohde & Schwarz Gmbh & Co. Kg | Generator zum Erzeugen einer digitalen Signalsequenz |
DE10110050A1 (de) * | 2001-03-02 | 2002-09-05 | Bosch Gmbh Robert | Verfahren zur Absicherung sicherheitskritischer Programmteile vor versehentlicher Ausführung und eine Speichereinrichtung zur Durchführung dieses Verfahrens |
DE50210752D1 (de) * | 2002-06-06 | 2007-10-04 | Tektronix Int Sales Gmbh | Verfahren zur dynamischen Steuerung der Kanalauslastung eines Übertragungskanals und Lastgenerator zum Senden einer Testsequenz |
JP4378346B2 (ja) * | 2003-06-09 | 2009-12-02 | 株式会社アドバンテスト | パターン発生器、及び試験装置 |
US7100098B2 (en) * | 2003-06-12 | 2006-08-29 | Agilent Technologies, Inc. | Systems and methods for testing performance of an electronic device |
US7725782B2 (en) * | 2007-01-04 | 2010-05-25 | Gm Global Technology Operations, Inc. | Linked random access memory (RAM) interleaved pattern persistence strategy |
US7603604B2 (en) * | 2007-04-09 | 2009-10-13 | Advantest Corporation | Test apparatus and electronic device |
US7584394B2 (en) * | 2007-07-18 | 2009-09-01 | International Business Machines Corporation | System and method for pseudo-random test pattern memory allocation for processor design verification and validation |
US7689886B2 (en) * | 2007-07-18 | 2010-03-30 | International Business Machines Corporation | System and method for predicting lwarx and stwcx instructions in test pattern generation and simulation for processor design verification and validation |
US7647539B2 (en) * | 2007-07-18 | 2010-01-12 | International Business Machines Corporation | System and method of testing using test pattern re-execution in varying timing scenarios for processor design verification and validation |
US7739570B2 (en) * | 2007-07-18 | 2010-06-15 | International Business Machines Corporation | System and method for increasing error checking performance by calculating CRC calculations after multiple test patterns for processor design verification and validation |
US7661023B2 (en) * | 2007-07-18 | 2010-02-09 | International Business Machines Corporation | System and method for verification of cache snoop logic and coherency between instruction & data caches for processor design verification and validation |
US7747908B2 (en) * | 2007-07-18 | 2010-06-29 | International Business Machines Corporation | System and method for creating different start cache and bus states using multiple test patterns for processor design verification and validation |
US8127192B2 (en) | 2007-07-18 | 2012-02-28 | International Business Machines Corporation | Predicting lwarx and stwcx instructions in test pattern generation and simulation for processor design verification/validation in interrupt mode |
WO2009147786A1 (ja) * | 2008-06-02 | 2009-12-10 | 株式会社アドバンテスト | 試験装置および試験方法 |
US8185694B2 (en) * | 2008-07-25 | 2012-05-22 | International Business Machines Corporation | Testing real page number bits in a cache directory |
US9281080B2 (en) * | 2014-03-11 | 2016-03-08 | Advantest Corporation | Staged buffer caching in a system for testing a device under test |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5142223A (en) * | 1990-03-20 | 1992-08-25 | Mitsubishi Denki Kabushiki Kaisha | Device for testing semiconductor device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10153646A (ja) | 1996-09-30 | 1998-06-09 | Advantest Corp | 試験パターン発生器 |
-
1999
- 1999-11-10 DE DE19955380A patent/DE19955380C2/de not_active Expired - Fee Related
- 1999-11-10 US US09/437,249 patent/US6769083B1/en not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5142223A (en) * | 1990-03-20 | 1992-08-25 | Mitsubishi Denki Kabushiki Kaisha | Device for testing semiconductor device |
Non-Patent Citations (3)
Title |
---|
H.P.: PC-Hardware, 3. erweiterte Auflage,Bonn [u.a.]: Addison-Wesley, 1995, Seiten 253-262 * |
JP 10-153646(Abstract), Volldokument und engl. Ü- bersetzung) * |
MESSMER * |
Also Published As
Publication number | Publication date |
---|---|
DE19955380A1 (de) | 2000-05-18 |
US6769083B1 (en) | 2004-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19955380C2 (de) | Prüfmustergenerator, Prüfvorrichtung und Verfahren zum Erzeugen von Prüfmustern | |
DE3412676C2 (de) | ||
DE10010440B9 (de) | Synchrones dynamisches Speicherbauelement mit wahlfreiem Zugriff und Verfahren zur CAS-Latenzsteuerung | |
DE69729771T2 (de) | Integrierte Schaltung mit einer eingebauten Selbsttestanordnung | |
DE60012132T2 (de) | Mikroprozessor mit Prüfinstruktionsspeicher | |
DE69920816T2 (de) | Hochbandbreitige Lese- und Schreibearchitektur für nicht-flüchtige Speicher | |
DE602004008456T2 (de) | Integrierte ladungsleseschaltung für resistive speicher | |
DE10392667T5 (de) | Ereignisbasiertes IC-Testsystem | |
DE2555439A1 (de) | Monolithische hochintegrierte halbleiterschaltung | |
DE4328605A1 (de) | Halbleiterspeichereinrichtung | |
DE3900248C2 (de) | Verfahren zur schnellen Ablaufsteuerung digitaler Testmuster und Vorrichtung zur Durchführung des Verfahrens | |
DE19722414B4 (de) | Verfahren und Vorrichtung zum Testen eines Halbleiterspeichers | |
DE19639972B4 (de) | Hochgeschwindigkeitstestschaltkreis für eine Halbleiterspeichervorrichtung | |
DE112008000737T5 (de) | Prüfgerät und elektronische Vorrichtung | |
DE19627820A1 (de) | Speichertestvorrichtung | |
DE19951534A1 (de) | Integrierte Halbleiterschaltung | |
DE19951205A1 (de) | Testmustergenerator; Speichertestvorrichtung und Verfahren zur Erzeugung einer Mehrzahl von Testmustern | |
DE10022698A1 (de) | Halbleiterspeichereinrichtung | |
DE60202443T2 (de) | Methode zum Testen eines elektronischen Bauteils | |
DE60104015T2 (de) | Entschlüsselungsverfahren zur datenabbildung in speicherschaltungen | |
DE19746302A1 (de) | Testvorrichtung für Halbleiterspeicher | |
DE10296828T5 (de) | Halbleiterspeichertestgerät und Adressgenerator zur Defektanalyse | |
DE602004007906T2 (de) | Testeinrichtung und einstellverfahren | |
DE19721516A1 (de) | Mikroprozessor | |
DE19963611A1 (de) | Speicherprüfvorrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8304 | Grant after examination procedure | ||
8364 | No opposition during term of opposition | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20110601 Effective date: 20110531 |