DE3900248A1 - Steuersystem fuer einen automatischen schaltungstester - Google Patents

Steuersystem fuer einen automatischen schaltungstester

Info

Publication number
DE3900248A1
DE3900248A1 DE3900248A DE3900248A DE3900248A1 DE 3900248 A1 DE3900248 A1 DE 3900248A1 DE 3900248 A DE3900248 A DE 3900248A DE 3900248 A DE3900248 A DE 3900248A DE 3900248 A1 DE3900248 A1 DE 3900248A1
Authority
DE
Germany
Prior art keywords
data
memory
sequential
circuit
vectors
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.)
Granted
Application number
DE3900248A
Other languages
English (en)
Other versions
DE3900248C2 (de
Inventor
John Louis Russo
Robert Humphrey Van Der Kloot
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Teradyne Inc
Original Assignee
Teradyne Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Teradyne Inc filed Critical Teradyne Inc
Publication of DE3900248A1 publication Critical patent/DE3900248A1/de
Application granted granted Critical
Publication of DE3900248C2 publication Critical patent/DE3900248C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31919Storing and outputting test patterns
    • G01R31/31921Storing and outputting test patterns using compression techniques, e.g. patterns sequencer
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31928Formatter

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Complex Calculations (AREA)

Description

Die Erfindung bezieht sich auf ein Steuergerät für das automatische Testen elektronischer Schaltungen.
Bei einem Gerät zum automatischen Testen elektronischer Schaltungen werden digitale Testmuster in einem Speicher abgespeichert und zur Lieferung von Eingangstestsignalen verwendet, welche Schaltungspunkten einer zu testenden Schaltung zugeführt werden, und die dabei auftretenden Ausgangssignale der Schaltung werden mit Soll-Ausgangs­ signalen verglichen. Die Testapparatur kann auch analoge Instrumente enthalten, wie etwa Generatoren für hoch- und niedrigfrequente Signale, um der zu testenden Schaltung analoge Prüfsignale zuzuführen, sowie Hoch- und Niedrig­ frequenz-Digitalisierer mit zugehörigen Ergebnisspeichern zur Digitalisierung und Speicherung der Testergebnisse.
Zur gleichzeitigen Lieferung von Steuersignalen für das Testgerät und einer großen Anzahl von Datenbits für die zu testende Schaltung gleichzeitig mit dem Takten dieser Schaltung bei einer hohen Rate, wird eine sehr schnelle Folgesteuerschaltung benutzt, um die Steuerbits (die nach­ folgend als Mikrocode bezeichnet werden) und die Datenbits parallel mit hoher Geschwindigkeit zur Verfügung zu stellen. (Der Mikrocode zuzüglich der Datenbits bei einer gegebenen Taktperiode werden als "Vektor" bezeichnet.) Die Steuerbits sind in einem RAM-Speicher der Folgesteuerschaltung ent­ halten, beispielsweise mit 16 K Speichertiefe für 16 K Be­ fehlsschritte, die willkürlich zugänglich sind nach Ein­ gabe der entsprechenden Adresse zum RAM-Speicher über eine Adressenleitung (die häufig als State-Bus bezeichnet wird) unter Steuerung durch einen Adressengenerator in der Folge­ steuerschaltung. Die Steuerbits für die verschiedenen Instrumente und Testmusterspeicher können gleichfalls in entsprechenden Mikrocode-RAM-Speichern untergebracht werden, die über getrennte Karten verteilt sind und über die Adres­ senleitung (State-Bus) zugänglich sind.
Bei der Durchführung von Tests mit einer großen Anzahl von Testdaten gibt es häufig große Blocks von Vektoren, bei wel­ chen aufeinanderfolgende Schritte von Testdaten der zu testenden Schaltung zugeführt werden müssen, und der Mikro­ code ändert sich über eine große Anzahl von Taktperioden nicht. Solche Vektoren werden nachfolgend als sequentielle Vektoren bezeichnet. Wenn im Testprogramm Bedingungsent­ scheidungen oder Sprünge auftreten, muß das System in der Lage sein, willkürlich auf eine Zustandsadresse zu springen, welche nicht auf die laufende Adresse folgt, und solche Vektoren werden nachfolgend als nicht sequentielle Vektoren bezeichnet.
Wegen der Kosten schneller statischer RAM-Speicher und der großen Anzahl von bei einigen Testmustern verwendeten Daten­ signalen werden die Testdaten manchmal in einem Block in einem Speicher hoher Kapazität von langsameren und weniger teuren dynamischen RAM's abgespeichert, welche benutzt wer­ den, um Testdatenblocks auf einmal zur Wiederaufladung schneller statischer RAM's zu übertragen. Beispielsweise ist in dem US-Patent 44 51 958 (Gillette) ein automati­ scher Schaltungstester beschrieben, bei welchem große Blocks von Testmustern von eingefügten dynamischen RAM's in einen ersten statischen RAM geladen werden, während ein zweiter statischer RAM Testdaten an die zu testende Schaltung lie­ fert und die Testmuster werden dann in den zweiten stati­ schen RAM geladen, während der erste die Testdaten liefert usw. Beim Schreiben eines Steuerprogramms für ein System, welches dynamische RAM's benutzt, um Testdaten abwechselnd an abwechselnde statische RAM's zu liefern, muß der Program­ mierer dafür sorgen, daß keine Bedingungsentscheidungen oder Sprünge bei Schritten auftreten, die nicht in derselben Gruppe enthalten sind, welche zur gleichen Zeit in einen statischen RAM geladen worden ist.
Es hat sich gezeigt, daß das Schreiben und die Ausführung von Testprogrammen sich erheblich vereinfachen lassen, wenn man einen Daten-RAM zur Speicherung von Daten nicht sequen­ tieller Vektoren (z. B. für Bedingungsentscheidungen), einen sequentiellen Datenspeicher zur Speicherung von Datenblöcken sequentieller Vektoren und mit einer höheren Kapazität als sie der Daten-RAM hat, und eine Testfolge-Steuerschaltung zur wahlweisen Übertragung von Daten vom Daten-RAM oder dem sequentiellen Datenspeicher zu einem Formatierer, welcher die Eingangssignale für eine zu testende Schaltung liefert, vorsieht. Das Programm wird geschrieben, als wenn eine tiefe Speicherkapazität sowohl für Mikrocode als für Daten in allen Vektoren im Programm verfügbar wäre und als wenn jeder Vektor willkürlich zugänglich wäre, z. B. wenn das Programm bei Bedingungsvektoren springt, ohne Rücksicht auf die Adres­ se, zu welcher das Programm springt. Ein Nachprozessor, wel­ cher das Programm überprüft, identifiziert sequentielle Vektoren und listet die in ihnen enthaltenen Daten auf zur Übertragung zum sequentiellen Speicher, und er identifiziert nicht sequentielle Vektoren und listet die in ihnen enthalte­ nen Daten auf zur Übertragung zum Daten-RAM. Während des Testens sind die im Daten-RAM enthaltenen Daten willkürlich zugänglich, bis ein Block sequentieller Vektoren auftritt, und dann werden die Daten sequentiell vom sequentiellen Datenspeicher zugänglich.
Bei bevorzugten Ausführungsformen enthält der Daten-RAM statische RAM's, und der sequentielle Daten-Speicher enthält eine Mehrzahl dynamischer RAM's, welche einzeln langsamer als die statischen RAM's sind, zusammen jedoch einen schnel­ len Datentransfer bewirken; die dynamischen RAM's des sequen­ tiellen Speichers sind jeweils so geschaltet, daß sie mehrere Bit parallel als Ausgangssignal an ein entsprechendes Schie­ beregister liefern, wobei dieses Mehrbit-Ausgangssignal einem einzigen Bit von einer Mehrzahl aufeinanderfolgender sequen­ tieller Vektoren entspricht und die seriellen Einzelbitaus­ gänge der Register parallel mit hoher Geschwindigkeit zur Bildung eines sequentiellen Vektors auftreten; das Gerät ent­ hält einen Folgeadressengenerator, der Adressen an den State- Bus liefert, und es sind erste und zweite Mikrocode-RAM's vorgesehen, welche mit einem Mikrocode für den Daten-RAM und den sequentiellen Speicher geladen sind; der erste Mikro­ code-RAM enthält Befehle hinsichtlich der Lieferung oder Nichtlieferung von Daten an den Daten-RAM und welche Daten geliefert werden sollen; der zweite Mikrocode-RAM enthält Befehle hinsichtlich der Lieferung oder Nichtlieferung von Daten und wo die Datenausgabe beginnen soll und hinsichtlich der Vorbereitung dafür; der zweite Mikrocode-RAM ist an einen Befehlsdecoder angeschlossen, welcher den sequentiel­ len Speicher steuert; und ein Zeiteinstellspeicher speichert Blocks von Zeitsteuerdaten für entsprechende sequentielle Vektoren.
Weitere Vorteile und Merkmale der Erfindung gehen aus der folgenden Beschreibung einer bevorzugten Ausführungsform und den Ansprüchen hervor.
Ein bevorzugtes Ausführungsbeispiel der Erfindung sei nun anhand der Zeichnungen erläutert. Es zeigt
Fig. 1 ein Blockschaltbild eines automatischen Schaltungs­ testers nach der Erfindung;
Fig. 2 ein Blockschaltbild eines zwischengeschalteten sequentiellen Datenspeichers des Testers nach Fig. 1;
Fig. 3 ein Flußdiagramm zur Veranschaulichung eines Verfah­ rens zur Erzeugung von Datenlisten nicht sequentieller und sequentieller Vektoren;
Fig. 4 ein Diagramm eines virtuellen Vektorformats für den Tester nach Fig. 1;
Fig. 5 ein Flußdiagramm zur Erläuterung eines Betriebsver­ fahrens eines Compilers für die Durchführung der Erfindung,
Fig. 6 ein Flußdiagramm zur Erläuterung eines Betriebsver­ fahrens eines Nachprozessors bei der Durchführung der Erfindung und
Fig. 7 eine Auflistung von State-Adressen und Bedingungen zur Veranschaulichung eines Verfahrens der Benutzung des Testers nach Fig. 1.
Fig. 1 zeigt einen automatischen Schaltungstester 10 für eine zu testende Schaltung 12, die elektrisch mit einem Testkopf 14 verbunden ist. Ein Testcomputer 16 besorgt die Gesamtsteuerung des Gerätes einschließlich der Folgesteuer­ schaltung 18, die der gleichzeitigen Lieferung einer großen Anzahl von Daten an die zu untersuchende Schaltung 12 dient unter Verwendung einer ersten Testmuster-Speicherschaltung 19, einer zweiten Testmuster-Speicherschaltung 20, einer Zeiteinstell-Speicherschaltung 130 und eines Formatier­ systems 22. Die Folgesteuerschaltung 18 dient auch zur Lie­ ferung von Steuersignalen für den Rest des Testers, z. B. den Haupttaktgeber 21, die Hochfrequenz-Analogquelle 23 und andere (nicht dargestellte) Instrumente gleichzeitig mit dem Takten der zu testenden Schaltung 12 mit deren hoher Rate von beispielsweise 25 MHz. Der Tester 10 enthält (nicht dargestellte) Detektoren zur Ermittlung der Ausgangssignale der zu testenden Schaltung 12. Die Folgesteuerschaltung 18 enthält einen Adressengenerator 24, der mit einem 14 Bit State-Adressen-Bus 26 und einem Folge-Mikrocode-RAM 28 (16 K auf 43 Bit) verbunden ist, der die Steuerbits für die Steuersignale für den Tester und für den Folgesteuer- Adressengenerator 24 enthält. Der State-Adressen-Bus 26 ist mit einem ersten Speicher-Mikrocode-RAM 30 (16 K × 8 Bit), einem zweiten Speicher-Mikrocode-RAM 32 (16 K × 8 Bit), einem Zeiteinstell-Mikrocode-RAM 33 (16 K × 8 Bit), einem HF-Analog- Mikrocode-RAM 34 (16 K × 9 Bit), einem Takt-Mikrocode-RAM 29 (16 K × 9 Bit) des Haupttaktgebers 21 und anderen Mikrocode- RAM's in anderen (nicht dargestellten) Geräteteilen verbun­ den.
Der State-Adressen-Bus 26 enthält ferner ein Bedingungsbit, mit Hilfe dessen es möglich ist, daß Vorgänge in der HF- Quelle 23 und dem Taktgeber 21 die von dem Folgesteuer- Adressengenerator 24 erzeugten Adressen zu beeinflussen. Vorgänge in der zu testenden Schaltung 12 können ebenfalls den Adressengenerator 24 über das Formatierungssystem 22, die Testmuster-Speicherschaltung 19 oder 20 und das Bedin­ gungsbit im State-Adressen-Bus 26 beeinflussen.
Die erste Testmuster-Speicherschaltung 19 ist auf zehn Schaltungskarten verteilt; die Komponenten für eine einzelne Schaltungskarte sind in Fig. 1 gezeigt. Der State-Bus 26 ist so geschaltet, daß die Daten der Bedingungsvektoren der im Daten-RAM 82 (ein statischer RAM mit 16 K auf 24 Bit) ge­ speicherten Daten der Bedingungsvektoren direkt adressier­ bar sind. Der erste Speicher-Mikrocode-RAM 30 ist so ge­ schaltet, daß er die Ausgangspuffer 84 steuert. Jede Schal­ tungskarte der Schaltung 19 enthält den RAM für acht Kanäle, wobei jeder Kanal 3 Bits erfordert, um die Art des Eingangs­ signals anzuzeigen, welches vom Formatiersystem 22 an einen einzelnen Eingang der zu testenden Schaltung 12 angelegt wird.
Die zweite Testmuster-Speicherschaltung 20 ist gleichermaßen auf zehn Schaltungskarten verteilt, und die Komponenten einer einzelnen Schaltungskarte sind ebenfalls in Fig. 1 gezeigt. Der zweite Speicher-Mikrocode-RAM 32 ist so ge­ schaltet, daß er Befehle an seinen zugehörigen Befehlsde­ coder 86 liefert, der seinerseits so geschaltet ist, daß er Steuersignale an die Speicheradressen-Steuerschaltung 88 und die Ausgangspuffer 90 liefert. Die Speicheradressen- Steuerschaltung 88 benutzt 25-Bit-Adressen zur Adressierung eines 24 Bit sequentiellen Speichers 94 von 1 MEG Speicher­ tiefe. Von den 25 Bits der Adresse werden 20 zur Bildung von einer Million Adressen benötigt; zusätzliche Adressenbits sind vorgesehen, um eine Vergrößerung der Speichertiefe auf 32 MEG zu erlauben, und die weiteren 5 Bits werden benutzt, um die Möglichkeit einer Seitenauswahl zu bieten. Die zweite Speicherschaltung 20 kann so ausgeführt sein, um einen Kanal (mit 3 Bits zur Bezeichnung des Typs) einer Tiefe von acht Millionen Vektoren auszugeben.
Die Zeiteinstell-Speicherschaltung 130 ist in gleicher Weise aufgebaut wie eine einzelne Schaltungskarte der zweiten Testmuster-Speicherschaltung 20. Die in der Speicherschal­ tung 130 gespeicherten Daten sind jedoch verschieden von den in der zweiten Testmuster-Speicherschaltung 20 gespei­ cherten Daten. Der sequentielle Speicher 94 der Zeiteinstell­ speicherschaltung 130 benutzt sieben von seinen 24 Bits; die restlichen Bits werden maskiert. Die Ausgangspuffer 90 der Zeiteinstell-Speicherschaltung 130 sind über den Zeitsteuer- Bus 132 mit dem Formatierungssystem 22 verbunden. Die 7 Bits werden benutzt für eine vektorweise Steuerung des durch das Formatiersystem 22 erfolgenden Timings der Eingangssignale für die zu untersuchende Schaltung 12 aufgrund von Daten vom sequentiellen Speicher 94 der zweiten Speicherschaltung 20; beispielsweise kann das Timing für jeden Vektor in einem Block sequentieller Vektoren verändert werden. Die Zeit­ steuer- oder Timing-Information für Daten im Daten-RAM 82 der ersten Testmuster-Speicherschaltung 19 ist im Zeitein­ stell-RAM 95 des Haupttaktgebers 21 gespeichert.
Fig. 2 zeigt die Speicheradressen-Steuerschaltung 88 und eine Unterschaltung 94 a eines sequentiellen Speichers, der die Speicherung eines einzigen Bits des 24-Bit-Ausgangs­ signals des sequentiellen Speichers 94 (Fig. 1) übernimmt. Es gibt 24 Unterschaltungen 94 a auf einer einzigen Schal­ tungskarte. Die Speicheradressen-Steuerschaltung 88 enthält einen 4-Bit-Zähler 98, dessen Ausgabeausgang als Eingabe­ eingang an die 16-Bit-Adressenzähler-Verriegelungsschaltung 100 und an die Steuerlogik 102 für den dynamischen RAM an­ geschlossen ist. Das Eingangssignal auf dem Bus 96 zur 16-Bit-Zähler-Verriegelungsschaltung 100 sorgt für eine Voreinstellung des Zählers auf eine Adresse, welche der Adresse für die Daten des ersten sequentiellen Vektors in einem Block sequentieller Vektoren entspricht, die vom sequentiellen Speicher 94 verfügbar sein sollen. Die sequen­ tielle Speicherunterschaltung 94 a enthält einen DRAM 104 mit 64 K auf 16 Bit (vier 64 K × 4 Bit-DRAM's, die parallel adres­ siert werden, deren vier 4-Bit-Ausgangssignale zu 16 Bits kombiniert werden), welcher durch die Adressenzähler-Ver­ riegelungsschaltung 100 adressiert werden. Der DRAM 104 kann daher 1 MEG Bits (64 K × 16 Bit) speichern. Die Datenein- und -ausgänge des DRAM 104 sind mit Schieberegistern 106 und 108 verbunden, die parallel geschaltet sind und von der DRAM- Steuerlogik 102 so gesteuert werden, daß sie während des Testens zwischen dem 16-Bit-Paralleleingangsmode und einem 16-Bit-Seriell-Datenausgangsmode abwechseln. Die seriellen Datenausgangssignale der Register 106 und 108 werden der Datenwahl-Verriegelungsschaltung 110 zugeführt, deren Aus­ gangssignale über die Leitung 112 als ein einziges Bit des 24-Bit-Bus 114 dem Ausgangsspeicher 104 (Fig. 1) zugeführt werden. Die I/O-Schreib- und I/O-Lese-Steuerleitungen 115 und 116 der DRAM-Steuerlogik 102 und die Speicherdaten- Eingangsleitungen 118, die mit den Schieberegistern 106 und 108 verbunden sind, sind auch mit einem 16-Bit-Testcomputer- Adressen-Bus 78 (Fig. 1) verbunden.
Gemäß Fig. 1 ist ein Hochfrequenz-Analog-Quellen-Mikrocode- RAM 34 so geschaltet, daß er Befehle an seinen zugehörigen Adressengenerator 72 liefert, der Adressen an den Signal-RAM 74 (84 K auf 20 Bits) liefert, welcher mit einer digitalen Darstellung eines Analogsignals geladen ist; der Signal-RAM 74 ist so geschaltet, daß er das digitalisierte Signal zum D/A-Wandler 76 ausliest, der ein analoges Signal an die zu testende Schaltung 12 liefert. Die Hochfrequenz-Analog- Quellenschaltung 23 ist somit ein Analog-Signalgenerator.
Der Tester 10 kann auch ein analoges HF-Absorptionsinstru­ ment, ein analoges Niederfrequenz-Absorptionsinstrument und ein analoges Niederfrequenz-Quelleninstrument (alle nicht dargestellt) enthalten, die sämtlich Mikrocode-RAM's haben, welche mit dem State-Adressen-Bus 26 verbunden sind. Der Adressengenerator 72 der analogen HF-Quelle 23 und der Daten- RAM 82 der ersten Testmuster-Speicherschaltung 19 sind auch mit einem 16-Bit-Testcomputer-Bus 78 zur Dateneingabe und Steuerung durch den Testcomputer 16 verbunden, wenn die Folgesteuerschaltung 18 keinen Test mit hoher Geschwindig­ keit durchführt. Nicht dargestellte Pipeline-Register sind längs des State-Adressen-Bus 26 und im gesamten Tester 10 längs der Wege von den Mikrocode-RAM's zu den Signalquellen verteilt, welche letztlich an der zu testenden Schaltung 12 anliegen; die Pipeline-Register führen nacheinander Adressen entlang dem Folgeadressen-Bus 26 und Adressen sowie andere digitale Signale längs anderer Wege.
Es sei nun anhand von Fig. 3 die Betriebsweise erläutert; vor dem Test einer Schaltung wird ein Steuerprogramm für das Gerät beschrieben, so als ob eine Speicherkapazität von 1 MEG Tiefe sowohl für Mikrocode als auch für Daten in allen Vektoren im Programm verfügbar wäre und als wenn jeglicher Vektor beliebig zugänglich wäre, beispielsweise wenn das Programm bei Bedingungsvektoren springt ohne Rücksicht auf die Sprungadresse. Der Benutzer schreibt sein Programm in der Benutzersprache und gibt an, welche Digitalmuster an welchen Anschlüssen der zu testenden Schaltung 12 zu welcher Zeit anliegen sollen und welche anderen Signale und Steuer­ vorgänge von der analogen HF-Quelle 23 und anderen Geräte­ teilen ausgehen sollen. Das Steuerprogramm wird dann in Mikrocodebits und die digitalen Testmusterbits mit einem Compiler umgewandelt, der so arbeitet, als wenn für jedes Muster 1 MEG Speicherplatz zur Verfügung stünde. Die Mikro­ codebits und die digitalen Testmusterbits werden als virtuel­ le Vektoren bezeichnet. Das virtuelle Vektorformat ist in Fig. 4 gezeigt. Der Compiler bildet auch eine Folgetabelle, wie sie im einzelnen noch erläutert wird. Der Ausgang des Compilers hat Bezeichnungen, welche die Bestimmungen der Übertragung angeben. Ein Postprozessor, welcher die vir­ tuellen Vektoren und die sequentiellen Tabellen überprüft, listet die Daten in den sequentiellen Vektoren auf für die Weiterführung (mit einigen Ausnahmen) zum sequentiellen Speicher 94, listet ferner die Daten in den nicht sequen­ tiellen Vektoren für die Weiterleitung zum Daten-RAM 82 auf und stellt einen zusätzlichen Mikrocode her.
Bei der Erzeugung der Folgetabelle tastet der Compiler das virtuelle Vektormuster vektorweise ab, um innerhalb des Test­ musters der Vektoren Diskontinuitäten festzustellen, welche ein Anzeichen für nicht sequentielle Vektoren sind. Diskon­ tinuitäten anzeigende Vektormerkmale sind: ein Musterbeginn, eine Verzweigung des Steuerflusses (also Sprünge, Subroutine- Befehle etc.), ein Transferziel (also eine Bestimmung), und irgendein Kanal eines Vektors, der eine alternative Quelle für seine Daten beinhaltet (beispielsweise die analoge HF- Quelle 23). Jedem virtuellen Vektor ist eine sequentielle Vektornummer zugeordnet, d. h. ein Muster von n Vektoren würde n virtuelle Vektornummern haben. Für jeden Block auf­ einanderfolgender sequentieller Vektoren wird der Beginn- Vektor im Block und die Anzahl der Vektoren im Block sequen­ tieller Vektoren gespeichert als gepaarte Einstiege in die Folgetabelle.
Bei der Erzeugung der Folgetabelle wird gemäß Fig. 5 eine Vektornummernvariable VNV auf -1 initialisiert, eine Start­ vektornummernvariable SVNV auf Null initialisiert und die Größe der Blockvariablen SIZE auf Null initialisiert. VNV wird dann erhöht, und der nächste Vektor kommt dran. Dieser nächste Vektor wird daraufhin überprüft, ob er ein sequen­ tieller Vektor nach den obengenannten Diskontinuitäts­ kriterien ist. Ist dies der Fall, dann werden SIZE und VNV erhöht, und der nächste Vektor kommt dran. Ist dies kein sequentieller Vektor, dann wird bestimmt, ob er der erste nicht sequentielle Vektor nach einem Block sequentieller Vektoren ist (SIZE nicht gleich Null) oder ob er innerhalb eines Blockes nicht sequentieller Vektoren liegt (SIZE gleich Null). Im ersten Fall werden die laufenden SVNV und SIZE in der Folgetabelle aufgelistet und SIZE wird auf Null zurück­ gestellt, so daß es benutzt werden kann zur Zählung des nächsten Blockes sequentieller Vektoren. Im letztgenannten Falle werden diese Schritte übergangen. SVNV wird dann gleich VNV gesetzt und VNV wird erhöht, und der nächste Vek­ tor kommt dran.
Wenn keine virtuellen Vektoren mehr vorhanden sind, wird die Folgetabelle nach aufsteigender Vektorordnung sortiert, alle Eingangswerte, die weniger als 23 Vektoren groß sind (sequen­ tielle Fragmente) werden entfernt, und jegliche angrenzenden Blocks werden eingefügt. Die Blocks sequentieller Vektoren, die mehr als 23 Vektoren lang sind, werden dann direkt in die resultierende Folgetabelle eingeschrieben, und die ver­ bleibenden Blocks nicht sequentieller Vektoren und sequentiel­ ler Fragmente können in die Tabellenzwischenräume eingefügt werden. Diese Tabelle dient als Basis zur Aufspaltung des virtuellen Musters in seine Komponenten.
Zusätzlich zur Erzeugung der virtuellen Vektoren und der Folgetabelle erzeugt der Compiler auch Symboltabellen, die verwendet werden zur Lösung von Transfers (etwa Sprüngen, Bedingungen) innerhalb des virtuellen Vektormusters. Die erzeugten Symboltabellen enthalten eine Bestimmungstabelle, welche Vektoren speichert, die Bestimmungen von Transfers sind, und eine Vektortransfertabelle, welche Vektoren spei­ chert, die Transfers enthalten.
Fig. 6 veranschaulicht das Musteraufspaltungsverfahren, wel­ ches der Nachprozessor benutzt, um Daten von Blöcken sequen­ tieller Vektoren aufzulisten zur Speicherung im sequentiellen Speicher 94, und um Blöcke nicht sequentieller Daten und sequentieller Fragmente im Daten-RAM 82 aufzulisten (die letztgenannten Blöcke werden als nicht sequentielle Blöcke bezeichnet). Zuerst werden ein VNV und eine State-Nummern­ variable (State-Nummer) auf Null initialisiert, und ein Zei­ ger wird auf den ersten Eingangswert der sequentiellen Tabelle gesetzt. Das virtuelle Muster wird blockweise ver­ arbeitet, wobei die nicht sequentiellen Blöcke unterschied­ lich wie die sequentiellen Blöcke verarbeitet werden. VNV wird zuerst mit der ersten Start-Nummer der virtuellen Vek­ toren verglichen, welche durch den Zeiger der sequentiellen Tabelle bezeichnet wird. Sind beide nicht gleich, dann ist der virtuelle Vektor Teil eines nicht sequentiellen Blockes; andernfalls ist der virtuelle Vektor der erste Vektor in einem sequentiellen Block.
Durch Adressierung der Behandlung nicht sequentieller Blocks zuerst wird die Nummer der Vektoren im momentanen nicht sequentiellen Block berechnet, indem VNV entweder von der nächsten Start-Vektornummer der sequentiellen Blöcke (die von der Folgetabelle entnommen wird) oder vom Ende des Musters (wenn der Vektor nach dem letzten sequentiellen Block auftritt) subtrahiert wird. Jedem Vektor innerhalb des nicht sequentiellen Blockes ist eine aufeinanderfolgende State-Nummer zugeordnet (die in Beziehung zu den State- Adressen steht, welche auf dem State-Adressen-Bus 26 erschei­ nen), und die Daten des Vektors werden dann in den Ausgangs­ strom gegeben, der im Daten-RAM 82 gespeichert werden soll, wobei die Symboltabellen so eingestellt werden, daß die Kom­ pression der Größe des virtuellen Vektormusters kompensiert wird. Außerdem wird der zweite Speicher-Mikrocode (zur Spei­ cherung im Mikrocode-RAM 32) als Nichtoperationsbefehl für jede State-Nummer dieses nicht sequentiellen Blocks ausge­ geben. VNV und die State-Nummer werden dann um die Größe des nicht sequentiellen Blockes vergrößert, und der nächste Vektor kommt dran.
Adressiert man die Bearbeitung sequentieller Blocks, dann werden die ersten 18 Vektoren des sequentiellen Blocks zur Placierung im Mikrocode-RAM 30 und Daten-RAM 32 aufgelistet, und ihnen werden die nächsten 18 State-Nummern zugeordnet. (So werden die Daten einiger sequentieller Vektoren im Daten-RAM 82 mit den Daten nicht sequentieller Vektoren ge­ speichert.) Eine Adresse eines sequentiellen Vektors (25 Bits, von denen die niedrigsten vier auf Null voreingestellt wer­ den und die zur Adressierung des sequentiellen Speichers 94 benutzt werden) wird aufgelistet zur Speicherung als SAM- Mikrocode im zweiten Speicher-Mikrocode-RAM 32 bei State- Adressen, die den ersten drei State-Nummern der Gruppe der soeben erwähnten 18 entsprechen. Die restlichen Vektoren des sequentiellen Blockes werden dann aufgelistet zur Spei­ cherung im sequentiellen Speicher 94, und ihnen werden ent­ sprechende aufeinanderfolgende Adressen für sequentielle Vektoren zugeordnet. Die Gesamtzahl der sequentiellen Vekto­ ren in dem Block, der von dem Speicher 94 sequentiellen Zu­ gangs zu erledigen ist, wird berechnet und benutzt zur Be­ stimmung der Variablen (X, y und rem) des SAM-Treiberteil- Mikrocodes (für den Mikrocode-RAM 29), der dazu dient, der Folgesteuerschaltung 18 eine Zeitmarkierung zu erlauben, während die sequentiellen Daten vom sequentiellen Speicher 94 ausgegeben werden. Der SAM-Treiberteil besteht aus dem folgenden Mikrocode, wobei "Setloop x" ein Teil der ersten 18 Vektoren ist:
Setloop x
L 1: Setloop y
L 2: Endloop L 2
Endloop L 1
Setloop rem
L 3: Endloop L 3
wobei die Anzahl der vom SAM verarbeiteten Vektoren durch die folgende Gleichung gegeben ist:
Nummer der SAM-Vektoren = x · (y + 1) + rem + 2.
Der SAM-Treiberteil benutzt vernetzte Schleifen, um die Größe der Zähler zu verringern, die zur Markierung der Zeit durch die Folgesteuerschaltung 18 benötigt werden.
Nach der Verarbeitung des Blockes sequentieller Vektoren wird VNV um die Größe eines sequentiellen Blocks vergrößert, der Zeiger der sequentiellen Tabelle auf den nächsten Ein­ gangswert der sequentiellen Tabelle weitergerückt, und der nächste Vektor kommt dran.
Dieses Verfahren wird fortgesetzt, bis keine Vektorblocks im virtuellen Vektormuster übrigbleiben. Der Nachprozessor stellt auch den Mikrocode her, der notwendig ist zur Durch­ führung der selektiven Weiterführung des Testmusters vom Datenspeicher 82 und sequentiellen Speicher 94, einschließ­ lich der 8 Bit des Mikrocodes für die erste Testmuster- Speicherschaltung 19 und der 8 Bit des Mikrocodes für die zweite Testmuster-Speicherschaltung 20. Der sich auf Trans­ fers beziehende Mikrocode wird aufgelistet zur Speicherung im Folge-Mikrocode-RAM 28. Das kompilierte und verarbeitete Programm ist fertig zum Einladen in eine geeignete Hardware 10.
Gemäß Fig. 1 werden die Mikrocode-RAM's 28, 29, 30, 32, 33, 34 mit ihren jeweiligen Mikrocode-Befehlen geladen, und der Daten-RAM 82 und die DRAM's 104 werden mit ihren digitalen Testmustern geladen, und all dies geschieht unter Steuerung durch den Testcomputer 26 über den Computer-Bus 78. Beim Laden in den Daten-RAM 82 und die verschiedenen Mikrocode- RAM's sind die State-Adressen verschieden von den durch den Nachprozessor zugeordneten State-Nummern, jedoch bleiben die relativen Positionen dieselben; auf diese Weise können meh­ rere Testprogramme geladen werden, die zu unterschiedlichen Zeiten nachbearbeitet worden sind. Die Testdaten in der ersten Testmuster-Speicherschaltung 19 werden einfach in den Daten-RAM 82 parallel eingespeichert (über nicht darge­ stellte Mittel), während ihm Adressen zugeführt werden. Ge­ mäß Fig. 2 werden die gerade in die DRAM's 104 geladenen Testdaten zuerst über Speicherdaten-Eingangsleitungen 108 in die Schieberegister 106 oder 108 übertragen und dann zu jeweils 16 Bit gleichzeitig in die DRAM's 104 an die ent­ sprechenden Adressen geladen. Ein Schieberegister 106 oder 108 erhält die Daten seriell, während das andere 16 Bits parallel an den DRAM 104 gibt, wobei die jeweiligen Adressen von der 16-Bit-Adressenzähler-Verriegelungsschaltung 100 ge­ liefert werden. Dann erhält das andere Register 106 oder 108 die Daten seriell, während das erste sie parallel ausgibt usw. Wie sich aus der Erläuterung der Betriebsweise des sequentiellen Speichers 94 ergibt, werden die 24 Datenbits eines einzelnen sequentiellen Vektors an jede der 24 sequen­ tiellen Speicherunterschaltungen 94 a verteilt.
Der im ersten Mikrocode-RAM 30 gespeicherte Mikrocode zeigt entweder an, daß Daten zu einer speziellen Adresse geliefert werden sollten, welche über den State-Bus 26 zum Daten-RAM 82 gegeben wird, oder er zeigt an, daß keine Daten vom Daten- RAM 82 ausgegeben werden sollen. Der im zweiten Mikrocode- RAM 32 und im Zeiteinstell-Mikrocode-RAM 33 gespeicherte Mikro-Code enthält Befehle bezüglich der Ausgabe oder Nicht­ ausgabe, bezüglich der Startstelle und der Vorbereitung der Ausgabe. Da in den Mikrocode-RAM's 32 und 33 nur acht Mikro­ codebits enthalten sind, werden drei aufeinanderfolgende Mikrocode-Adressen benutzt, um die Anfangsadresse im sequen­ tiellen Speicher 94 anzugeben. (21 der Adressenbits stammen von 7 Bits der drei aufeinanderfolgenden 8-Bit-Mikrocode- Befehle; die restlichen 4 Bits der 25-Bit-Adresse werden auf Null voreingestellt.)
Während des schnellen Testens unter Steuerung durch die Folgesteuerschaltung 18 sorgen Adressen, die vom Adressen- Generator 24 zum State-Bus 26 gelangen, dafür, daß zu den Geräten oder Instrumenten Befehle von ihren zugehörigen Mikrocode-RAM's gleichzeitig mit der Lieferung von Daten zu der zu testenden Schaltung 12 mit ihrer Taktrate ausge­ geben werden. Die an den State-Bus 26 gegebenen Adressen sorgen außerdem dafür, daß die im Daten-RAM 82 und im sequentiellen Speicher 94 gespeicherten ausgewählten digi­ talen Testmuster über den Vektorbus 85 zum Formatiersystem 22 gelangen. Der Haupttaktgeber 21 sorgt für eine program­ mierbare Taktung des Gerätes 10. Die analoge HF-Quelle 23 kann die Adressen beeinflussen, welche von dem Folgesteuer­ adressengenerator 24 erzeugt sind, und zwar über das Be­ dingungsbit im State-Adressen-Bus 26. Zustände in der zu testenden Schaltung 12 können ebenfalls die vom Folgeadres­ sengenerator 24 erzeugten Adressen beeinflussen, und zwar über das Formatiersystem 22.
Die in Fig. 7 veranschaulichte Auflistung veranschaulicht State-Adressen auf dem State-Adressen-Bus 26 und zugehörige Bedingungen während eines Betriebsbeispiels, bei welchem so­ wohl nicht sequentielle Vektoren wie auch sequentielle Vek­ toren vorkommen. Zu Anfang des Betriebes ist ein großer Block nicht sequentieller Vektoren zuzuführen, und somit wer­ den Daten vom Daten-RAM 82 ausgegeben, während der sequen­ tielle Speicher 94 inaktiv bleibt. Bei der ersten Taktperio­ de, welche der State-Adresse Null zugeordnet ist, gibt der Mikrocode im ersten Mikrocode-RAM 30 an, daß die erste Spei­ cherschaltung 19 Daten ausgeben sollte, und der Mikrocode im zweiten Mikrocode-RAM 32 gibt an, daß die zweite Spei­ cherschaltung 20 nicht in Betrieb sein soll. Dieselbe Be­ triebsweise gilt für die nächsten 101 Schritte entsprechend den State-Adressen 1 bis 101. Ein Hardware-Pipelining in der ersten Speicherschaltung 19 sorgt für sieben Taktperio­ den von dem Zeitpunkt, wo die die Ausgabe anzeigende State- Adresse auf dem State-Bus 36 erscheint, und dem Zeitpunkt, wo die entsprechenden Daten auf dem Vektorbus 85 erscheinen. Von dem 16 K tiefen Mikrocode-RAM 95 im Haupttaktgeber 21 werden ferner Zeiteinstellinformationen geliefert (die bei­ spielsweise angeben, zu welcher genauen Zeit in einer Takt­ periode Flanken der Eingangssignale zur zu testenden Schal­ tung 12 auftreten sollen).
Der Beginn eines Blockes sequentieller Vektoren im Benutzer­ programm entspricht der State-Adresse 102 für den zweiten Speicher 20 und der State-Adresse 120 für den ersten Spei­ cher 19, da der sequentielle Speicher 95 25 Taktperioden braucht, um mit der Datenlieferung zum Vektorbus 25 zu be­ ginnen, und nur sieben Taktperioden für den Daten-RAM 82, wie oben bereits gesagt wurde. Die State-Adressen 102 bis 104 bewirke, daß 21 der 25 Bits, welche die Anfangsadresse der Daten im sequentiellen Speicher 94 identifizieren, 7-bitweise in drei verschiedenen Taktperioden verfügbar sind; das Laden des dritten Befehls hat zur Folge, daß die niedrigeren vier Bits der obenerwähnten 25-Bit-Adresse auf Null voreingestellt werden. Während der achtzehn Taktperio­ den, die den State-Adressen 102 bis 119 entsprechen, fährt die erste Speicherschaltung 19 fort, Daten an den Vektorbus 85 anzugeben, während die zweite Speicherschaltung 20 die Datenausgabe vorbereitet. Bei der State-Adresse 120 lassen die Mikrocode-Befehle im Mikrocode-RAM 30 den Daten-RAM 82 mit der Datenausgabe aufhören; wegen der sieben Taktperioden- Pipeline erhält die erste Speicherschaltung 90 für sieben weitere Taktperioden Daten vom Vektorbus 85.
Beginnend mit der State-Adresse 127 werden Daten von der zweiten Speicherschaltung 10 an den Vektorbus 85 geliefert, die dynamischen RAM's 104 liefern Daten über die Schiebe­ register 106 und 108, die Datenwähl-Verriegelungsschaltung 110 und die Ausgangspuffer 90. Bei dieser Betriebsweise ist die Anfangsadresse in der Adressenzähler-Verriegelungsschal­ tung 100 durch Befehle über den Bus 96 vom Befehlsdecoder 86 eingestellt; dies ist die erste Adresse der in einem Block sequentieller Daten auszugebenden Daten. Der 4-Bit-Zähler 98 zählt wiederholtermaßen 16 Taktimpulse und liefert seine Ausgabeimpulse an die 16-Bit-Adressenzähler-Verriegelungs­ schaltung 100 und die DRAM-Steuerlogikschaltung 102 bei je­ dem Zählstand von 16. Die Adressenzähler-Verriegelungsschal­ tung 100 erhöht die auf ihren Ausgangsleitungen an den DRAM 104 ausgegebene Adresse nach Erhalt jedes Ausgabeimpulses vom Zähler 98. Bei jedem Ausgabeimpuls wird vom DRAM 104 ein 16-Bit-Wort in das Schieberegister 106 oder das Schiebe­ register 108 eingelesen; dieses 16-Bit-Wort stellt die Daten eines einzigen Bits von sechzehn aufeinanderfolgenden Vek­ toren bei sechzehn aufeinanderfolgenden Taktimpulsen dar. Das kein Eingangssignal erhaltende Schieberegister gibt sein 16-Bit-Wort seriell aus in die Datenwähl-Verriegelungs­ schaltung 110. Beim nächsten Ausgabeimpuls erhält dann das letztgenannte Register das 16-Bit-Wort in Parallelform, wäh­ rend das andere Register sein 16-Bit-Wort seriell an die Datenwähl-Verriegelungsschaltung 110 ausgibt. Das Ausgangs­ signal auf der Leitung 112 ist ein einziges Bit, und die Bits von den 23 anderen sequentiellen Speicherunterschal­ tungen 94 a werden an den Ausgangspuffer 90 geliefert, wo sie zu einem 24-Bit-Wort für den Vektorbus 85 kombiniert werden. Zur gleichen Zeit wird die Zeiteinstellinformation von der Zeiteinstell-Speicherschaltung 90 in gleicher Weise an den Zeiteinstellbus 132 gegeben. Während die dynamischen RAM's 104 mit einer langsameren Rate ausgelesen werden als die statischen RAM's 82, liefert jede der 24 Datenwahl- Verriegelungsschaltungen 110 ihr Ausgangssignal mit hoher Geschwindigkeit über ihre Leitung 112 des 24-Bit-Bus 114 an die Puffer 90. Auf diese Weise werden weniger teure dynami­ sche RAM's benutzt, um Datenblöcke sequentieller Vektoren mit hoher Geschwindigkeit zu liefern.
Während der Block sequentieller Vektoren an den Vektorbus 85 geliefert wird und die Zeitsteuerdaten an den Zeitsteuerbus 132 geliefert werden, erscheinen die State-Adressen 127 bis 131 auf dem State-Adressen-Bus 26 als Folge des vernetzten Schleifenbetriebes des SAM-Treiberteils des Blockes, welcher durch die Folgesteuerschaltung 18 zur Zeitmarkierung benutzt wurde. Sieben Taktperioden vor Ende des Blocks sequentieller Vektoren erscheint die neue State-Adresse 132 auf dem State- Adressen-Bus 26; der entsprechende Mikrocode-Befehl im Mikrocode-RAM 30 läßt die erste Speicherschaltung 19 mit der Datenausgabe beginnen, und der Mikrocode-Befehl im Mikrocode-RAM 32 läßt die Speicherschaltung 20 mit der Datenausgabe aufhören. Die Speicherschaltung 20 liefert für sieben weitere Taktperioden Daten an die Busse 85.

Claims (12)

1. Vorrichtung zur schnellen Steuerung digitaler Test­ muster in einer automatischen Testanlage, gekennzeichnet durch
eine erste Speicherschaltung, die einen Daten-RAM-Speicher mit einer ersten Speicherkapazität zur Speicherung von Daten nicht sequentieller Vektoren enthält,
eine zweite Speicherschaltung, die einen sequentiellen Daten­ speicher mit einer größeren Speicherkapazität als die erste Speicherkapazität zur Speicherung von Datenblocks sequen­ tieller Vektoren enthält,
eine Formatierschaltung, welcher die Daten vom Daten-RAM- Speicher oder dem sequentiellen Datenspeicher zugeführt wer­ den und welche aufgrund der Daten Eingangssignale für eine zu testende Schaltung erzeugt,
und eine Folgesteuerschaltung zur Steuerung der ersten und zweiten Speicherschaltung für die wahlweise Übertragung von Daten vom Daten-RAM-Speicher oder dem sequentiellen Daten­ speicher zur Formatierschaltung.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Daten-RAM-Speicher statische RAM-Speicher aufweist und daß der sequentielle Datenspeicher eine Mehrzahl dynami­ scher RAM-Speicher aufweist, die einzeln langsamer als die statischen RAM-Speicher sind und deren Ausgangssignale im Sinne eines schnellen Datentransfers kombinierbar sind.
3. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet,
daß der sequentielle Speicher Schieberegister enthält, die jeweils so geschaltet sind, daß ihnen ein Ausgangssignal mehrerer Parallelbits eines entsprechenden dynamischen RAM- Speichers zuführbar ist und sie ein serielles Schiebe­ register-Ausgangssignal liefern,
daß die dynamischen RAM-Speicher jeweils ein Wort aus mehre­ ren Bits liefern, welches einem einzigen Bit von Daten einer Mehrzahl aufeinanderfolgender sequentieller Vektoren ent­ spricht, und daß im Daten-RAM Daten einiger sequentieller Vektoren vor den Blocks gespeichert sind, derart, daß die dynamischen RAM's für die Lieferung von Daten mit hoher Ge­ schwindigkeit eingerichtet sind.
4. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet,
daß die Folgesteuerschaltung einen Folgeadressengenerator enthält,
daß die erste Speicherschaltung einen ersten Mikrocode- RAM-Speicher enthält, der mit einem Mikrocode für den ersten Speicher geladen ist und dem Adressen von dem State- Adressen-Bus zugeführt werden, daß der Mikrocode für den ersten Speicher Befehle hinsichtlich der Ausgabe oder Nicht­ ausgabe von Daten vom oder in den Datenspeicher enthält,
daß die zweite Speicherschaltung einen zweiten Mikrocode- RAM-Speicher enthält, der mit einem Mikrocode für den zwei­ ten Speicher geladen ist und dem Adressen von dem State- Adressen-Bus zugeführt werden, daß der Mikrocode für den zweiten Speicher Befehle hinsichtlich der Ausgabe oder Nicht­ ausgabe, der Ausgabe-Startstelle und der Ausgabevorbereitung enthält, daß ein Befehlsdecodierer Befehle von dem zweiten Mikrocode-RAM-Speicher, einer Speicheradressen-Steuerschal­ tung und einem Ausgangspuffer für den vom Decoder gesteuer­ ten sequentiellen Datenspeicher erhält und
daß ferner ein State-Adressen-Bus mit dem Folgeadressen­ generator verbunden ist.
5. Vorrichtung nach Anspruch 1, gekennzeichnet durch einen Zeiteinstellspeicher zur Speicherung von Blocks von Zeitdaten entsprechend den Datenblocks sequentieller Vek­ toren und zur Lieferung von Daten für die Formatierschaltung vorgesehen ist.
6. Verfahren zur schnellen Steuerung digitaler Test­ muster in einem automatischen Schaltungstester, gekenn­ zeichnet durch folgende Schritte:
Bereitung eines virtuellen Testmusters, welches nicht sequen­ tielle und sequentielle Vektoren enthält,
Bereitung von Befehlen zur Speicherung von Daten der nicht sequentiellen Vektoren in einem Daten-RAM-Speicher einer ersten Speicherschaltung und zur Speicherung von Blocks von Daten sequentieller Vektoren in einem sequentiellen Daten­ speicher einer zweiten Speicherschaltung,
Laden der Daten der nicht sequentiellen Vektoren in den Daten-RAM-Speicher der ersten Speicherschaltung,
Laden der Daten der nicht sequentiellen Vektoren in den Daten-RAM-Speicher der ersten Speicherschaltung,
Laden der Daten der sequentiellen Vektoren in den sequen­ tiellen Datenspeicher der zweiten Speicherschaltung und
wahlweise Übertragung der Daten von dem Daten-RAM oder dem sequentiellen Datenspeicher zu einer Formatierschaltung, welche Eingangssignale für eine zu testende Schaltung lie­ fert.
7. Verfahren nach Anspruch 6, gekennzeichnet durch die Schritte:
Bereitung eines ersten und zweiten Mikrocodes für die erste und zweite Speicherschaltung zum jeweiligen Datentransfer von dem Daten-RAM-Speicher oder dem sequentiellen Daten­ speicher in Abhängigkeit von Adressen auf einem State-Bus des automatischen Schaltungstesters und
Laden des ersten Mikrocodes in einen ersten Mikrocode-RAM- Speicher in der ersten Speicherschaltung und Laden des zwei­ ten Mikrocodes in einem zweiten Mikrocode-RAM-Speicher in der zweiten Speicherschaltung.
8. Verfahren nach Anspruch 6, dadurch gekennzeichnet,
daß der Daten-RAM-Speicher statische RAM-Speicher aufweist,
daß der sequentielle Datenspeicher eine Mehrzahl dynamischer RAM-Speicher, die einzeln langsamer als der statische RAM- Speicher sind, aufweist,
daß die Datenausgabe von dem sequentiellen Datenspeicher die Kombination der Ausgangssignale der dynamischen RAM- Speicher im Sinne eines schnellen Datentransfers bei der Eingabe von Mehrbitwörtern der dynamischen RAM-Speicher im Schieberegister und der bitweisen Ausgabe dieser Mehrbit­ wörter und die Kombination serieller Bitausgänge der Schiebe­ register zu einem Mehrbit-Ausgabewort mit hoher Geschwindig­ keit umfaßt,
daß jeder dynamische RAM-Speicher ein Paar der Schiebe­ register hat und ein Register jedes Paares Mehrbitwörter einspeichert, während das andere ausgibt und umgekehrt,
und daß weiterhin Daten einiger sequentieller Vektoren vor Blocks von im sequentiellen Speicher gespeicherten Daten ge­ laden werden, derart, daß die dynamischen RAM-Speicher zur Lieferung von Daten mit hoher Geschwindigkeit präpariert werden, wobei das Laden der Daten sequentieller Vektoren die Erzeugung einer Startadresse in den dynamischen RAM- Speichern für den Beginn des Datenblocks sequentieller Daten umfaßt und diese Erzeugung die Kombination von Teilen der in aufeinanderfolgenden Adressen eines durch den State- Adressen-Bus adressierten Mikrocode-RAM-Speichers gespeicher­ ten Startadressen einschließt.
9. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß die Befehlsbereitung die Erzeugung einer Folgetabelle einschließt, welche Blocks der sequentiellen Vektoren dar­ stellt, wobei jeder Eingangswert der Tabelle einem Block aufeinanderfolgender sequentieller Vektoren entspricht.
10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß bei der Erzeugung der Folgetabelle weiterhin
  • in jeden Eingangswert der Folgetabelle ein sequentieller Startvektor, welcher dem ersten Vektor des Blockes ent­ spricht, und eine Größennummer eingefügt wird, welche die Nummer der sequentiellen Vektoren in dem Block darstellt, die einen Vektor in dem virtuellen Vektormuster wieder­ findet, bestimmt wird, ob der Vektor ein nicht sequentiel­ ler Vektor oder ein sequentieller Vektor ist,
  • die Größennummer erhöht wird, wenn der Vektor der sequen­ tielle Vektor ist,
  • und die Größennummer bewahrt wird, falls der Vektor ein solcher nicht sequentieller Vektor ist und der erste solche nicht sequentielle Vektor nach einem solchen sequentiellen Vektor ist, und
daß das Verfahren weiterhin die Schritte umfaßt:
  • Speicherung von Blocks von Zeitsteuerdaten in einem Zeit­ einstellspeicher, wobei die Zeitsteuerdatenblocks den Datenblocks der sequentiellen Vektoren entsprechen, und
  • Lieferung der Zeitsteuerdaten an die Formatierschaltung bei der wahlweisen Datenübertragung vom sequentiellen Datenspeicher
und daß die Befehlsbereitung das Aufspalten des virtuellen Vektormusters in sequentielle Blöcke und nicht sequentielle Blöcke unter Verwendung der Folgetabelle sowie die Zuord­ nung von State-Nummern zu Vektoren in den nicht sequentiellen Blöcken einschließt und daß die State-Nummern State-Adres­ sen entsprechen, die auf einem State-Bus des automatischen Testers verfügbar sind.
DE3900248A 1988-01-06 1989-01-05 Verfahren zur schnellen Ablaufsteuerung digitaler Testmuster und Vorrichtung zur Durchführung des Verfahrens Expired - Fee Related DE3900248C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/141,202 US4875210A (en) 1988-01-06 1988-01-06 Automatic circuit tester control system

Publications (2)

Publication Number Publication Date
DE3900248A1 true DE3900248A1 (de) 1989-07-27
DE3900248C2 DE3900248C2 (de) 1994-08-18

Family

ID=22494634

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3900248A Expired - Fee Related DE3900248C2 (de) 1988-01-06 1989-01-05 Verfahren zur schnellen Ablaufsteuerung digitaler Testmuster und Vorrichtung zur Durchführung des Verfahrens

Country Status (6)

Country Link
US (1) US4875210A (de)
JP (1) JP2674709B2 (de)
CA (1) CA1288817C (de)
DE (1) DE3900248C2 (de)
FR (1) FR2625568B1 (de)
GB (1) GB2213942B (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4108594A1 (de) * 1990-03-16 1991-10-10 Teradyne Inc Einrichtung zur schnellen verarbeitung von fehlerinformation fuer ein schaltungspruefgeraet
DE19581540C2 (de) * 1994-12-28 2003-08-14 Advantest Corp Hochgeschwindigkeits- Testmusterübertragungsvorrichtung für eine Halbleitertestvorrichtung

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5127011A (en) * 1990-01-12 1992-06-30 International Business Machines Corporation Per-pin integrated circuit test system having n-bit interface
US5225772A (en) * 1990-09-05 1993-07-06 Schlumberger Technologies, Inc. Automatic test equipment system using pin slice architecture
US5321701A (en) * 1990-12-06 1994-06-14 Teradyne, Inc. Method and apparatus for a minimal memory in-circuit digital tester
US5414365A (en) * 1992-09-25 1995-05-09 Martin Marietta Corporation Diagnostic apparatus for testing an analog circuit
US6286120B1 (en) 1994-09-01 2001-09-04 Teradyne, Inc. Memory architecture for automatic test equipment using vector module table
US5737512A (en) * 1996-05-22 1998-04-07 Teradyne, Inc. Fast vector loading for automatic test equipment
US6119251A (en) * 1997-04-22 2000-09-12 Micron Technology, Inc. Self-test of a memory device
KR19990018125A (ko) * 1997-08-26 1999-03-15 윤종용 Ic칩 검사용 테스터데이타 압축방법과 그 압축장치 및 ic칩용 테스터장치와 그 테스터방법
US6763490B1 (en) * 2000-09-25 2004-07-13 Agilent Technologies, Inc. Method and apparatus for coordinating program execution in a site controller with pattern execution in a tester
WO2003093848A1 (en) 2002-05-03 2003-11-13 Mcgill University Method and device for use in dc parametric tests
DE602004013744D1 (de) * 2003-03-14 2008-06-26 Advantest Corp Testvorrichtung, programm für eine testvorrichtung und verfahren zur steuerung einer testvorrichtung
AU2005215043A1 (en) * 2004-02-19 2005-09-01 Georgia Tech Research Corporation Systems and methods for parallel communication
US7319936B2 (en) * 2004-11-22 2008-01-15 Teradyne, Inc. Instrument with interface for synchronization in automatic test equipment
US7454681B2 (en) * 2004-11-22 2008-11-18 Teradyne, Inc. Automatic test system with synchronized instruments
TWI294153B (en) * 2006-02-16 2008-03-01 C Chang Edward Improved automatic test equipment (ate) and method of implementing the same
US7725793B2 (en) * 2007-03-21 2010-05-25 Advantest Corporation Pattern generation for test apparatus and electronic device
JP5507054B2 (ja) 2008-03-28 2014-05-28 富士フイルム株式会社 重合性組成物、カラーフィルタ、カラーフィルタの製造方法、及び固体撮像素子
CN108121628B (zh) * 2017-12-19 2021-01-05 珠海市君天电子科技有限公司 一种读写速度的测试方法、装置及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3237365A1 (de) * 1982-10-08 1984-04-12 Siemens AG, 1000 Berlin und 8000 München Anordnung zur erzeugung von mustern von pruefsignalen bei einem pruefgeraet
US4451918A (en) * 1981-10-09 1984-05-29 Teradyne, Inc. Test signal reloader
EP0160789A2 (de) * 1984-02-15 1985-11-13 Advantest Corporation Test-Mustergenerator
DD239881A1 (de) * 1985-07-31 1986-10-08 Erfurt Mikroelektronik Schaltungsanordnung zur beschleunigten generierung gespeicherter daten
EP0211087A1 (de) * 1985-01-31 1987-02-25 Hitachi, Ltd. Generator für testmuster

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5552967A (en) * 1978-10-13 1980-04-17 Advantest Corp Pattern signal generator
JPS5990067A (ja) * 1982-11-15 1984-05-24 Advantest Corp 論理回路試験用パタ−ン発生装置
JPS6137582A (ja) * 1984-07-31 1986-02-22 Hitachi Constr Mach Co Ltd 装軌式車両
JPH0750156B2 (ja) * 1985-03-05 1995-05-31 株式会社日立製作所 メモリ読出制御装置
DE3613896A1 (de) * 1986-04-24 1987-10-29 Siemens Ag Einrichtung und verfahren fuer die ein- oder ausgabe binaerer daten, insbesondere testdaten digitaler prueflinge

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4451918A (en) * 1981-10-09 1984-05-29 Teradyne, Inc. Test signal reloader
DE3237365A1 (de) * 1982-10-08 1984-04-12 Siemens AG, 1000 Berlin und 8000 München Anordnung zur erzeugung von mustern von pruefsignalen bei einem pruefgeraet
EP0160789A2 (de) * 1984-02-15 1985-11-13 Advantest Corporation Test-Mustergenerator
EP0211087A1 (de) * 1985-01-31 1987-02-25 Hitachi, Ltd. Generator für testmuster
DD239881A1 (de) * 1985-07-31 1986-10-08 Erfurt Mikroelektronik Schaltungsanordnung zur beschleunigten generierung gespeicherter daten

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4108594A1 (de) * 1990-03-16 1991-10-10 Teradyne Inc Einrichtung zur schnellen verarbeitung von fehlerinformation fuer ein schaltungspruefgeraet
DE19581540C2 (de) * 1994-12-28 2003-08-14 Advantest Corp Hochgeschwindigkeits- Testmusterübertragungsvorrichtung für eine Halbleitertestvorrichtung

Also Published As

Publication number Publication date
GB2213942B (en) 1992-01-29
US4875210A (en) 1989-10-17
GB8900292D0 (en) 1989-03-08
DE3900248C2 (de) 1994-08-18
GB2213942A (en) 1989-08-23
JPH026765A (ja) 1990-01-10
FR2625568B1 (fr) 1993-07-16
FR2625568A1 (fr) 1989-07-07
JP2674709B2 (ja) 1997-11-12
CA1288817C (en) 1991-09-10

Similar Documents

Publication Publication Date Title
DE3900248C2 (de) Verfahren zur schnellen Ablaufsteuerung digitaler Testmuster und Vorrichtung zur Durchführung des Verfahrens
DE3237225C2 (de) Vorrichtung zum Prüfen elektrischer Schaltungsanordnungen
DE3687942T2 (de) Pruefmustergenerator.
DE69124170T2 (de) Automatisches Prüfausrüstungssystem, das eine Stiftscheibenarchitektur verwendet
DE4206286C2 (de) Speicherzugriffssystem und Verfahren zum Ausgeben eines digitalen Datenstromes
DE2723523A1 (de) Kompression und dekompression von gespeicherten digitaldaten
DE3752280T2 (de) Mustergenerator
DE2751097A1 (de) Triggerschaltungseinheit
DE10150321A1 (de) Verfahren und Vorrichtung zum Testen von integrierten Schaltungen
DE4305442A1 (de) Vorrichtung zum Testen eines elektronischen Gerätes
DE19983098B4 (de) Mehrfach-Bitanzeige zur Behandlung von Schreib-nach-Schreib-Fehlern und zur Eliminierung von Bypass-Komparatoren
DE3689414T2 (de) Automatisches Prüfsystem mit "wahrem Prüfer-per-Anschluss" -Architektur.
DE19722414A1 (de) Verfahren und Vorrichtung zum Testen eines Halbleiterspeichers
DE19627820A1 (de) Speichertestvorrichtung
DE3620982A1 (de) Ein-befehl, mehrfach-datenstrom (simd) computersystem
DE2854782A1 (de) Datenverarbeitungssystem
DE3148099A1 (de) Verfahren und anordnung zum erkennen einer digitalfolge
DE3587620T2 (de) Logikanalysator.
DE69109703T2 (de) Sequentielle Endlichautomatenschaltung sowie integrierte Schaltung mit einer derartigen Schaltung.
DE19951205A1 (de) Testmustergenerator; Speichertestvorrichtung und Verfahren zur Erzeugung einer Mehrzahl von Testmustern
DE3933253A1 (de) Einrichtung und verfahren zur durchfuehrung von booleschen rasteroperationen an quellen- und zieldaten
DE3304280C2 (de)
DE69031361T2 (de) Taktsignalgeneratorsystem
DE3650508T2 (de) Speicheranordnung zur Simulation eines Schieberegisters
DE3317593A1 (de) Pruefspeicherarchitektur

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee