DE4446988B4 - Schneller Testmustergenerator - Google Patents

Schneller Testmustergenerator Download PDF

Info

Publication number
DE4446988B4
DE4446988B4 DE4446988A DE4446988A DE4446988B4 DE 4446988 B4 DE4446988 B4 DE 4446988B4 DE 4446988 A DE4446988 A DE 4446988A DE 4446988 A DE4446988 A DE 4446988A DE 4446988 B4 DE4446988 B4 DE 4446988B4
Authority
DE
Germany
Prior art keywords
instruction
arithmetic
circuit
data
instruction data
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
Application number
DE4446988A
Other languages
English (en)
Other versions
DE4446988A1 (de
Inventor
Kazuo Takano
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.)
Advantest Corp
Original Assignee
Advantest Corp
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 Advantest Corp filed Critical Advantest Corp
Publication of DE4446988A1 publication Critical patent/DE4446988A1/de
Application granted granted Critical
Publication of DE4446988B4 publication Critical patent/DE4446988B4/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
    • 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
    • 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/31813Test pattern generators

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Advance Control (AREA)

Abstract

Testmustergenerator mit:
einer Parallelisierschaltung zum Umwandeln von Instruktionsdaten serieller Form in aufeinanderfolgende Blöcke von jeweils n parallelen Instruktionsdaten;
einer Instruktionsverarbeitungsschaltung, welche n-1 Instruktionsprozessoren zum Ausführen von Arithmetikoperationen auf der Basis von zwei Instruktionsdaten der n in paralleler Form vorgegebenen Instruktionsdaten und mehrere Registersätze aufweist, wovon jeder Satz von einem gemeinsamen Taktsignal mit niedrigerer Geschwindigkeit versorgt wird, wobei (n-2) der Instruktionsprozessoren die Ergebnisse der Arithmetikoperation dem Eingang eines anderen Instruktionsprozessors bereitstellen;
einer Arithmetikschaltung, welche die parallelen Instruktionsdaten aus der Instruktionsverarbeitungsschaltung aufnimmt und Arithmetikoperationen mittels n darin befindlicher Arithmetikeinheiten ausführt, wobei die Arithmetikschaltung ein Register enthält, welches die Instruktionsdaten in dem vorherigen Zyklus an die anderen Eingänge aller Arithmetikeinheiten liefert; und
einer Multiplexschaltung zum Umwandeln der parallelen Instruktionsdaten aus der Arithmetikschaltung in eine serielle Form mit n-mal schnellerer Datenrate als die parallelen Instruktionsdaten auf der Basis eines schnelleren Taktsignals mit einer n-mal schnelleren Geschwindigkeit als der Takt mit...

Description

  • Diese Erfindung betrifft einen Testmustergenerator, welcher in einem Halbleitertestsystem enthalten ist, und insbesondere einen Testmustergenerator, welcher einen sehr schnellen Betrieb zum Erzeugen eines Testmusters ohne das Erfordernis einer komplizierten Programmierung realisiert.
  • Hinsichtlich bekannter Testmustergeneratoren wird verwiesen auf JP 4-213212, US 4,389,723 , und US 4,905,183 .
  • Im allgemeinen ist ein in einem Halbleitertestsystem verwendetes Testmuster zum Testen eines Halbleiterbausteins sehr lang und umfangreich. Ferner zeigt beispielsweise in einem Halbleitertestsystem ein Testmuster die Tendenz, denselben Abschnitt des Testmusters viele Male zu wiederholen. Desweiteren ist wegen des Anstiegs der Geschwindigkeit in den zu testenden neuesten Halbleiterbausteinen die Erzeugung solcher Testmuster mit hoher Geschwindigkeit erforderlich.
  • Ein zur Zeit verwendeter Testmustergenerator besteht im wesentlichen aus einer Akkumulatorarithmetikeinheit, welche ein langes und umfangreiches Testmuster durch Programmierung arithmetischer Instruktionen und einer Anzahl von Wiederholungen in einem Programmspeicher des Testmustergenerators erzeugt.
  • 10 stellt ein Beispiel einer konventionellen Arithmetikschaltung für den Testmustergenerator dar. Die Arithmetikschaltung umfaßt eine Steuerschaltung 3, eine Arithmetikeinheit 1 und ein Register 2. Die Steuerschaltung 3 besitzt einen Programmspeicher 31 und einen Taktgenerator 32. Ein aus dem Programmspeicher ausgelesener Befehl wird an einen Eingangsanschluß A der Arithmetikeinheit 1 geliefert. Der Ausgang der Arithmetikeinheit 1 ist mit dem Register 2 verbunden, dessen Ausgang mit einem Eingang B der Arithmetikeinheit 1 verbunden ist. Es wird auch ein Arbeitstakt aus dem Taktgenerator 32 an einen Takteingangsanschluß des Registers 2 angelegt. Das sich ergebende Ausgangssignal X wird aus dem Ausgang der Arithmetikeinheit 1 erhalten.
  • 11 stellt ein Betriebsbeispiel dar, welches ein Programmbeispiel 1 unter Verwendung der Arithmetikschaltung von 10 implementiert.
  • Zuerst ist ein Anfangswert "x=0" in der ersten Zeile des Programmspeichers 31 gespeichert. In der nächsten Zeile ist die Instruktion "Wiederhole 11-mal X=X+1" gespeichert, welche bedeutet, eine Addition von Eins (1) elfmal zu wiederholen. In der dritten Zeile des Programmspeichers 31 ist "X=X" vorgeschrieben, damit der Ausgangswert X unverändert bleibt (als X beibehalten wird). Somit bestehen, wie vorstehend beschrieben, die Instruktionsdaten für die Arithmetikeinheit 1 aus einem Satz eines numerischen Wertes, eines Vorzeichens und eines Befehls.
  • Daher wird in einem ersten Betriebszyklus der Befehl X=0 aus dem Programmspeicher 31 an den Anschluß A der Arithmetikeinheit 1 ausgegeben. Die Arithmetikeinheit 1 führt eine Arithmetikoperation aus. Da der Befehl aus dem Speicher 31 gleich X=0 lautet, empfängt die Arithmetikeinheit 1 "0" als ihren Eingangswert, ohne den Eingangswert am anderen Eingangsanschluß B zu berücksichtigen. Somit wird der Wert "0" als ein Ausgangssignal X der Arithmetikeinheit 1 erhalten.
  • Als nächstes wird der Arbeitstakt an das Register 2 angelegt. Als Antwort auf den Takt speichert das Register 2 den Wert 0 und sein Ausgangssignalwert wird zu 0. Dieser numerische Wert wird an den anderen Eingangsanschluß B der Arithmetikeinheit 1 angelegt. Da an den Eingangsanschluß A in diesem Zyklus X=+1 eingegeben wird und in den Eingangsanschluß B der Wert 0 eingegeben wird, wird die arithmetische Operation "0+1" von der Arithmetikeinheit 1 ausgeführt. Die Arithmetikeinheit 1 erzielt ein Ausgangssignal X=1 als Ergebnis. In gleicher Weise werden nur ein numerischer Wert und ein Vorzeichen an den anderen Eingangsanschluß B der Arithmetikeinheit 1 angelegt.
  • Im dritten Betriebszyklus wird ein Befehl "+1" dauernd an den Anschluß A ausgegeben, und die Arithmetikoperation von plus Eins für den vorherigen Ausgangssignalwert X=1 (Anschluß B) ausgeführt. Daher wird ein Ausgangssignalwert X=2 als Ergebnis am Ausgang der Arithmetikeinheit 1 erhalten. Auf diese Weise wird die Arithmetikoperation der "+1"-Addition 11-mal (elfmal) ausgeführt.
  • In der vorstehenden Betriebsprozedur in dem konventionellen Testmustergenerator ändert der Ausgang des Registers 2 seinen Zustand mit dem Empfang des Arbeitstaktes und die Arithmetikeinheit 1 führt eine Arithmetikoperation auf der Basis des Ausgangssignalwertes des Registers 2 aus. Nach der für diese Operation benötigten Zeit wird die Lieferung des Arbeitstaktes für den nächsten Taktzyklus möglich. Dieser Arbeitstaktzyklus ergibt den kürzesten Ablauf der Mustererzeugungsprozedur. Demzufolge entspricht das Zeitintervall des Taktes der höchsten Berechnungsgeschwindigkeit in diesem konventionellen Testmustergenerator.
  • 12 stellt ein weiteres Beispiel einer Arithmetikschaltung in dem konventionellen Testmustergenerator dar. In diesem Beispiel besteht das Verfahren zur Erhöhung der Testmustererzeugungsgeschwindigkeit einfach darin, mehrere Arithmetikeinheiten in paralleler Form zu verwenden. Es müssen jedoch immer noch Instruktionen im voraus für jede Arithmetikeinheit vorbereitet werden, um diesen Parallelbetrieb zu ermöglichen.
  • In dem Beispiel von 12 sind vier Arithmetikeinheiten 11 bis 14, vier Register 21 bis 24 und vier Programmspeicher 41 bis 44 in paralleler Form bereitgestellt. Jeder aus der Arithmetikeinheit, dem Register und dem Programmspeicher bestehende Satz ist identisch zur Struktur von 10. Die Register 21 bis 24 empfangen ein gemeinsames Taktsignal von einem Taktgenerator 45. Die Ausgangssignale X0, X1, X2 und X3 der Arithmetikeinheiten 11 bis 14 werden an eine Multiplexschaltung 5 geliefert, welche ebenfalls mit einem Taktsignal von dem Taktgenerator 45 versorgt wird. Die Taktrate für die Multiplexschaltung in diesem Beispiel sollte viermal schneller als die des Beispiels von 10 sein, da die vier Arithmetikeinheiten 11 bis 14 parallel angeordnet sind.
  • Ein Konfigurationsbeispiel der Multiplexschaltung 5 ist in 6 dargestellt. Gemäß Darstellung in 6 umfaßt die Multiplexschaltung einen Multiplexer 502 und einen Zähler 501.
  • Der Zähler 501 empfängt den Takt aus dem Taktgenerator 45 und gibt ein 2-Bit-Signal für den Multiplexer 502 aus. Das 2-Bit-Signal arbeitet als Selektionssignal für den Multiplexer 502. Die Ausgangssignale X0, X1, X2 und X3 der Arithmetikeinheiten 11 bis 14 werden von dem Multiplexer 502 mit dem Zeittakt des Selektionssignals aus dem Zähler 501 gemultiplext, und das selektierte Ausgangssignal wird an dem Ausgangsanschluß der Multiplexschaltung 5 als ein sich ergebendes Ausgangssignal X mit einer vierfach schnelleren Geschwindigkeit als die Instruktionsdaten aus den Arithmetikeinheiten 11 bis 14 bereitgestellt.
  • 7 ist ein Zeitdiagramm, welches eine grundlegende Betriebsweise der Multiplexschaltung von 6 darstellt. Nach allgemeiner Kenntnis im Fachgebiet können n parallele Instruktionsdaten, die an einen Multiplexer angelegt sind, in ein serielles Datensignal mit einer n-fach schnelleren Geschwindigkeit als jedes der parallelen Instruktionsdaten umgewandelt werden. In 7 werden parallel an den Multiplexer 502 angelegte Eingangssignale X0, X1, X2 und X3 mit Daten a, b, c und d in ein Ausgangssignal X mit den Daten a, b, c und d in Serie umgewandelt, welches viermal schneller als jedes der Eingangssignale ist.
  • 13 ist eine schematische Ansicht, welche ein Beispiel der Betriebsweise der Arithmetikeinheit von 12 zur Implementierung einer Testmustererzeugung auf der Basis eines Programmbeispiels 1 darstellt. Gemäß Darstellung in einer Tabelle von 13A enthält das Programmbeispiel 1 einen in dem Programmspeicher 41 gespeicherten Anfangswert, welcher an die Schalteinrichtung 11 angelegt wird. Der Anfangswert für die Arithmetikeinheit 11 ist:
    X0=0.
  • Der in dem Programmspeicher 42 gespeicherte Anfangswert für die Arithmetikeinheit 12 ist:
    X1=1.
  • Der in dem Programmspeicher 43 gespeicherte Anfangswert für die Arithmetikeinheit 13 ist:
    X2=2.
  • Der in dem Programmspeicher 44 gespeicherte Anfangswert für die Arithmetikeinheit 14 ist:
    X3=3.
  • Diese Anfangswerte werden gemäß Darstellung in 13b an die entsprechenden Eingangsanschlüsse der Arithmetikeinheiten 11 bis 14 im ersten Zyklus angelegt. Demzufolge repräsentieren gemäß Darstellung in 13b die Ausgangsdatensignale der Arithmetikeinheiten 11 bis 14 im ersten Zyklus denselben Wert 0, 1, 2 und 3.
  • Der nächste auch im Programmspeicher 41 gespeicherte Wert für die Arithmetikeinheit 11 ist:
    Wiederhole 2-mal X0=X0+4.
  • Der nächste auch im Programmspeicher 42 gespeicherte Wert für die Arithmetikeinheit 12 ist:
    Wiederhole 2-mal X1=X1+4.
  • Der nächste auch im Programmspeicher 43 gespeicherte Wert für die Arithmetikeinheit 13 ist:
    Wiederhole 2-mal X2=X2+4.
  • Der nächste auch im Programmspeicher 44 gespeicherte Wert für die Arithmetikeinheit 14 ist:
    Wiederhole X3=X3+4.
  • Demzufolge addiert im zweiten Zyklus jede Arithmetikeinheit 11 bis 14 vier (4) zu dem Datensignal des ersten Zyklusses hinzu, da jedes Register 21 bis 24 gemäß Darstellung in 13c die vorherigen Instruktionsdaten an andere Eingangsanschlüsse der Arithmetikeinheiten zurückgibt. Folglich repräsentieren im zweiten Zyklus die Ausgangsdatensignale der Arithmetikeinheiten 11 bis 13 gemäß Darstellung in 13c die Werte 4, 5, 6 und 7.
  • Im dritten Zyklus wird, da die Instruktion für die Arithmetikeinheit 11 dieselbe wie im vorherigen Zyklus ist, d.h., "Wiederhole 2-mal X0=X0+4", was die Wiederholung der Addition von vier (4) erfordert, der Ausgangsdatensignalwert, der Arithmetikeinheit 11 gemäß Darstellung in 13d zu 8. In ähnlicher Weise wird im dritten Zyklus, da die Instruktionen für die Arithmetikeinheiten 12 und 13 ebenfalls dieselben wie die im vorherigen Zyklus sind, d.h., "Wiederhole 2-mal X1=X1+4" bzw. "Wiederhole 2-mal X2=X2+4", der Ausgabedatensignalwert der Arithmetikeinheiten 12 und 13 gemäß Darstellung in 13d zu 9 bzw. 10.
  • Der Ausgabedatensignalwert der Arithmetikeinheit 14 repräsentiert im dritten Zyklus 10, da die Instruktion im Programmspeicher 44 angibt
    X3=X3+3.
  • Gemäß vorstehender Beschreibung erhöht sich im Vergleich zu dem herkömmlichen Beispiel in 10 und 11 die Geschwindigkeit der Testmustererzeugung um die Anzahl der parallel bereitgestellten Arithmetikeinheiten (4-fach im Beispiel von 12). Da jedoch das in den Programmspeichern 41 bis 44 zu speichernde Programm gemäß dem obenstehenden Beispiel komplizierter wird, ist somit eine Programmentwicklungsprozedur für
  • Es ist daher eine Aufgabe der vorliegenden Erfindung, eine Lösung für die vorstehenden, in den konventionellen Testmustergeneratoren gefundenen Probleme bereitzustellen. Diese Aufgabe wird durch die Erfindung gelöst. Die vorliegende Erfindung stellt einen Testmustergenerator bereit, welcher ein, schnelles Testmuster ohne das Erfordernis eines komplizierten Programmierprozesses erzeugen kann.
  • Ein Testmustergenerator umfaßt eine Parallelisierschaltung zum Umwandeln eines Instruktionssignals in eine parallele Form und eine Instruktionsverarbeitungsschaltung, welche n-1 Instruktionsprozessoren aufweist, die Arithmetikoperationen ausführen, wovon jede Operation auf zwei Instruktionssignalen aus n parallelen Instruktionssignalen basiert. Für jeden Zyklus des Arbeitstaktes sind n Register in der Instruktionsverarbeitungsschaltung zum Verschieben der Instruktionsdaten zu der nächsten Stufe bereitgestellt. Der Testmustergenerator enthält ferner eine Arithmetikschaltung zum Aufnehmen der Instruktionsdaten aus der Instruktionsverarbeitungsschaltung und zum Ausführen von Akkumulatorfunktionen durch n Arithmetikeinheiten. Die Arithmetikschaltung enthält ein Register, welches in dem vorherigen Zyklus aufgetretene Instruktionsdaten gemeinsam an die Eingänge aller Arithmetikeinheiten liefert. Eine Multi plexschaltung ist dafür bereitgestellt, die Eingangsdatensignale aus der Arithmetikschaltung in ein serielles Datensignal mit n-mal schnellerer Geschwindigkeit als jedes der Eingangsdatensignale umzuwandeln.
  • Der vorliegenden Erfindung entsprechend kann die Arbeitsgeschwindigkeit des Instruktionssignals aus einem Programmspeicher n-fach höher als die Arbeitsgeschwindigkeit jedes Instruktionssignals in der Instruktionsverarbeitungsschaltung eingestellt werden. Auch die Geschwindigkeit der verarbeiteten Instruktionsdaten aus der Multiplexschaltung kann gegenüber der Arbeitsgeschwindigkeit der Register und des Instruktionsprozessors in den Instruktionsverarbeitungsschaltungen oder den Arithmetikeinheiten in den Arithmetikschaltungen n-fach multipliziert werden. Daher sind bei der vorliegenden Erfindung n-fach schnellere arithmetische Operationen als die konventionellen möglich. Da ferner der herkömmliche Instruktionsschritt bei einem Programmierprozeß der Testmustererzeugung verwendet werden kann, erfordert die vorliegende Erfindung keinerlei komplizierte Programmierprozeduren.
  • Von den beigefügten Zeichnungen stellen dar:
  • 1 ein Blockschaltbild, das eine Schaltungskonfiguration des Testmustergenerators der vorliegenden Erfindung zeigt;
  • 2 eine Struktur eines Beispiels erfindungsgemäßer Arithmetikschaltungen;
  • 3 arithmetische Funktionen einer Arithmetikeinheit der vorliegenden Erfindung und zugeordnete an die Arithmetikeinheit angelegte Befehle;
  • 4 ein Beispiel einer in der Parallelisierschaltung von 1 enthaltenen Schaltungskonfiguration;
  • 5 ein Zeitdiagramm, welches eine Betriebsweise der Parallelisierschaltung von 4 zeigt;
  • 6 ein Beispiel einer Schaltungsstruktur für eine Multiplexschaltung;
  • 7 ein Zeitdiagramm, welches eine Betriebsweise der Multiplexschaltung von 6 zeigt;
  • 8 ein Zeitdiagramm, welches ein Beispiel einer erfin dungsgemäßen Betriebsweise zeigt;
  • 9 eine graphische Ansicht, welche ein weiteres Beispiel einer erfindungsgemäßen Betriebsweise zeigt;
  • 10 ein Beispiel einer in dem konventionellen Testmustergenerator enthaltenen Arithmetikschaltung;
  • 11 eine graphische Ansicht, welche eine Betriebsweise der Arithmetikschaltung von 10 zeigt;
  • 12 ein weiteres Beispiel einer in dem konventionellen Testmustergenerator enthaltenen Arithmetikschaltung; und
  • 13 eine graphische Ansicht, welche eine Betriebsweise der Arithmetikschaltung von 12 zeigt.
  • 1 ist ein Blockschaltbild, das eine Ausführungsform des Testmustergenerators der vorliegenden Erfindung zeigt. In diesem Beispiel wird die Geschwindigkeit der Testmustererzeugung um das 4-fache gegenüber dem konventionellen Testmustergenerator erhöht, da vier parallele Schaltungen eingesetzt werden. Gemäß 1 enthält der Testmustergenerator einen Parallelisierschaltung 6, eine Steuerschaltung 7, eine Instruktionsverarbeitungsschaltung 100, eine Arithmetikschaltung 200 und eine Multiplexschaltung 5.
  • Die Steuerschaltung 7 weist einen Programmspeicher 71, welcher eine Serie von Instruktionsdaten speichert, und einen Taktgenerator 72 auf, welcher einen Arbeitstakt und einen 1/n-Arbeitstakt erzeugt. Der Arbeitstakt ist n-mal schneller als der 1/n-Arbeitstakt (im Beispiel von 1 gilt: n=4) Die Parallelisierschaltung 6 wandelt die Instruktionsdaten ix aus dem Programmspeicher 71 in vier parallele Instruktionsdaten i0, i1, i2 und i3 um und ordnet die Instruktionsdaten vier Eingängen der Instruktionsverarbeitungsschaltung 100 zu.
  • Die Instruktionsverarbeitungsschaltung 100 enthält Instruktionsprozessoren 101, 102 und 103 und Register 111 bis 122. Die Register 111 bis 122 werden mit dem 1/4-Arbeitstakt aus dem Taktgenerator 72 versorgt. Gemäß Darstellung in 1 werden die an den Eingangsanschlüssen der Instruktionsverarbeitungsschaltung 100 empfangenen vier Instruktionsdaten von den Instruktionsprozessoren und Registern in vier Signalpfaden verarbeitet und als Instruktionen i0c, i1c, i2c und i3c an vier Ausgangsanschlüssen ausgegeben. Die Arithmetikschaltung 200 enthält vier Arithmetikeinheiten 201 bis 204, deren jeweiliger Eingangsanschluß die Instruktionen i0c, i1c, i2c und i3c aufnimmt, und ein Register 205, welches mit dem Ausgang der Arithmetikeinheit 204 verbunden ist. Jeder von den anderen Eingangsanschlüssen der Arithmetikeinheiten 201 bis 204 wird von einem gemeinsamen Ausgangssignal des Registers 205 versorgt.
  • Die Multiplexschaltung 5 empfängt Instruktionsdaten X0, X1, X2 und X3 aus der Arithmetikschaltung 200. Ein Beispiel der Schaltungskonfiguration und der Betriebsweise der Multiplexschaltung 5 sind in den 6 und 7, wie vorstehend erläutert, dargestellt. Die Multiplexschaltung 5 wandelt die parallelen Eingangssignale um und gibt das Instruktionssignal X in der seriellen Form an seinem Ausgang aus.
  • 4 zeigt ein Beispiel einer in dem Parallelisierschaltung 6 enthaltenen Schaltungskonfiguration. Der Hauptzweck der Parallelisierschaltung 6 besteht in der Umwandlung eines seriellen Signals in ein paralleles Signal. Es wird nämlich das Instruktionssignal ix aus dem Programmspeicher 71, welches ein serielles Signal ist, durch die Parallelisierschaltung 6 in die vier parallelen Befehlssignale i0, i1, i2 und i3 umgewandelt. Die Parallelisierschaltung 6 enthält einen Zähler 401, einen Dekoder 402, einen Satz Register 411 bis 414 und einen weiteren Satz Register 421 bis 424.
  • Der Zähler 401 wird mit dem von dem Taktgenerator 72 erzeugten Arbeitstakt versorgt. Das Ausgangssignal des Zählers 401, welches beispielsweise ein 2-Bit-Signal ist, wird an den Dekoder 402 geliefert. Der Dekoder 402 erzeugt 4 dekodierte Signale auf der Basis dieses 2-Bit-Signals, und die 4 dekodierten Signale werden an die entsprechenden Taktanschlüsse der Register 411, 412, 413 und 414 geliefert. Daher speichert jedes der Register 411 bis 414 das Instruktionssignal ix während der Zeit, welche 4-mal länger als die Periode des Arbeitstaktes ist. Jedes Instruktionssignal, welches in den entsprechenden Registern 411 bis 414 gespeichert ist, wird synchronisiert mit dem dekodierten Signal (1/4-Arbeitstakt) zu den Registern 421, 422, 423 und 424 verschoben, und als die parallelen Instruktionssignale i0, i1, i2 und i3 ausgegeben.
  • 5 ist ein Zeitdiagramm, welches eine Betriebsweise der Parallelisierschaltung 6 darstellt. Das Instruktionssignal ix weist ein Datensignal (Daten) a, b, c und d in serieller Form auf, welches eine Signalrate gleich dem Arbeitstakt besitzt. Die Instruktionsdaten a, b, c und d werden in den entsprechenden Registern 411, 412, 413 und 414 getrennt und zeitlich im nächsten Zyklus des dekodierten Signals durch die Register 421, 422, 423 und 424 justiert. Daher werden die Instruktionsdaten a, b, c und d in dem Instruktionssignal ix zu den parallelen Instruktionsdaten i0, i1 i2 und i3, wovon jedes den entsprechenden Datensignalwert a, b, c und d aufweist. Die Signalrate der parallelen Instruktionsdaten i0, i1, i2 und i3 ist viermal niedriger als die des Instruktionssignals ix.
  • Die Instruktionsverarbeitungsschaltung 100 verarbeitet die Instruktionsdaten i0, i1, i2 und i3 aus der Parallelisierschaltung 6. Die Instruktionsdaten i0 und i1 werden an den zwei Eingangsanschlüsse aufweisenden Instruktionsprozessor 101 geliefert. Der Instruktionsprozessor 102 empfängt das Instruktionssignal i2 über das Register 117, während der Instruktionsprozessor 103 das Instruktionssignal i3 über die Register 120 und 121 empfängt. Ein Beispiel der detaillierteren Struktur der in der vorliegenden Erfindung zu verwendenden Instruktionsprozessoren 101 bis 103 ist in 2 dargestellt. Der Instruktionsprozessor 101 enthält Instruktionsdekoder 301 und 302, ein UND-Gatter 304, eine Arithmetikeinheit 303 und ein ODER-Gatter 305.
  • Das Instruktionssignal i0 wird sowohl an einen Eingangsanschluß des UND-Gatters 304 als auch an den Instruktionsdekoder 301 angelegt. Der Ausgang des UND-Gatters 304 ist mit einem Eingangsanschluß A der Arithmetikeinheit 303 verbunden. Das Instruktionssignal i0 enthält zusätzlich zu einem numerischen Wert ein Vorzeichen und auch einen Befehlssatz, welcher eine Substitution anzeigt. Der Instruktionsdekoder 301 detektiert den "Vorzeichen"-Befehl und den "Substitutions"-Befehl in dem Instruktionssignal i0. Das Vorzeichen (+/–), das von dem Instruktionsdekoder 201 detektiert wird, wird an die Arithmetikeinheit 303 weitergegeben. Ebenso wird der detektierte "Sub stitutions"-Befehl an das ODER-Gatter 305 weitergegeben.
  • Das Instruktionssignal i1 wird an den anderen Eingangsanschluß B der Arithmetikeinheit 303 angeschlossen. Der Instruktionsdekoder 302 detektiert ebenfalls den "Vorzeichen"-Befehl und den "Substitutions"-Befehl in dem Instruktionssignal i1. Der detektierte Vorzeichen (+/–)-Befehl wird an die Arithmetikeinheit 303 weitergegeben. Der detektierte "Substitutions"-Befehl wird an den anderen Eingangsanschluß des ODER-Gatters 305 weitergegeben. Desweiteren wird der detektierte "Substitutions"-Befehl in dem Instruktionssignal i1 invertiert und an das UND-Gatter 304 geliefert. Auf die Weise wird dann, wenn der "Substitutions"-Befehl in dem Instruktionssignal i1 enthalten ist, das Instruktionssignal i0 ignoriert. Die Arithmetikeinheit 303 arbeitet ausschließlich auf der Basis des Instruktionssignals i1 und gibt ein "Ergebnis i1" aus, welches den numerischen Wert und das Vorzeichen einschließt. Das ODER-Gatter 305 gibt den im nächsten Schritt zu verwendenden "Substitutions"-Befehl aus.
  • Die arithmetischen Funktionen der Arithmetikeinheiten 101 bis 103 sind in 3 dargestellt. Die arithmetischen Befehle für die Arithmetikeinheit werden in Addition, Subtraktion, Substitution und keine Berechnung klassifiziert. Wenn die Instruktion i0 und die Instruktion i1 gegeben sind, wird das "Ergebnis i1" der Arithmetikoperation gemäß Darstellung in der Tabelle von 3 erreicht.
  • Gemäß Darstellung in 1 ist der Ausgang der Arithmetikeinheit 101 mit dem Register 114 verbunden. Mit dem Takt des 1/4-Arbeitstaktes wird das Ausgangssignal des Registers 114 zu i1a. Gleichzeitig liefern die Register 111, 117 und 120 Instruktionsergebnisse i0a, i2a und i3, welche den Instruktionsdaten i0, i2 und i3 entsprechen, an die nächste Stufe. Die Arithmetikeinheit 102 wird mit den Instruktionsdaten i1a und i2a versorgt und führt die Arithmetikoperation in derselben Weise wie in der Arithmetikeinheit 101, wie vorstehend erläutert, aus.
  • Das Ergebnis der Arithmetikoperation in der Arithmetikeinheit 102 wird mit dem 1/4-Arbeitstakt von dem Register 118 übernommen. Somit wird das Ausgangssignal des Registers 118 zu einem Instruktionssignal i2b. Gleichzeitig verschieben die Register 112, 115 und 121 die Instruktionen aus den Registern 111, 114 und 120, welche nun Instruktionsdaten i0b, i1b und i3b gemäß Darstellung in 1 sind. In ähnlicher Weise führt die Arithmetikeinheit 103 auf der Basis der angelegten Instruktionsdaten i2b und i3b die Arithmetikoperation aus, welche ein Instruktionssignal i3c über das Register 122 ergibt. Die Register 113, 116 und 119 senden ebenfalls Instruktionsdaten i0c, i1c bzw. i2c aus. Wie vorstehend beschrieben, enthält die Instruktionsverarbeitungsschaltung 100 der vorliegenden Erfindung drei (n-1) Arithmetikeinheiten 101, 102 und 103 für vier (n) Instruktionsdaten.
  • Die Arithmetikschaltung 200 empfängt die Instruktionsdaten i0c, i1c, i2c und i3c an entsprechenden Eingängen der Arithmetikeinheiten 201, 202, 203 und 204 gemäß Darstellung in 1. Das Register 205 liefert das Datensignal XR aus der Arithmetikeinheit 204 im vorherigen Zyklus an die anderen Eingänge der Arithmetikeinheiten 201, 202, 203 und 204. Die Arithmetikschaltung 200 führt eine Arithmetikoperation unter dieser Konfiguration aus und erzeugt Ausgabedatensignale X0, X1, X2 und X3, welche von der Multiplexschaltung 5 empfangen werden.
  • Die Multiplexschaltung 5 wandelt die parallelen Instruktionsdaten X0, X1, X2 und X3 aus der Arithmetikschaltung 200 in ein serielles Datensignal X um. Das Datensignal X weist eine viermal schnellere Geschwindigkeit auf als jedes der parallelen Datensignale X0, X1, X2 und X3, da in der Multiplexschaltung 5 der Arbeitstakt verwendet wird. Gemäß vorstehender Beschreibung ist die Multiplexschaltung 5, wie in dem Beispiel von 6 dargestellt, konfiguriert. 7 ist ein Zeitdiagramm, das eine Betriebsweise der Multiplexschaltung 5 darstellt, so wie es auch vorstehend beschrieben wurde.
  • 8 stellt ein Zeitdiagramm dar, welches eine Gesamtbetriebsweise des Testmustergenerators von 1 auf der Basis eines oben rechts in 8 dargestellten Programmbeispiels zeigt. In diesem Beispiel sind die ersten Werte der parallelen Instruktionsdaten i0, i1, i2, i3 aus der Parallelisierschaltung 6 gleich 0, +1, +1, +1. Das Ergebnis der Arithmetikoperation (0+1) in der Arithmetikeinheit 101 ist "1", welches von dem Register 114 in dem zweiten Zyklus des 1/4 Arbeitstaktes gespeichert wird. Daher zeigen die Instruktionsdaten i0a, i1a, i2a und i3a im zweiten Zyklus 0, 1, 1 und 1.
  • Da beide Eingangssignale für die Arithmetikeinheit 102 "1" anzeigen, zeigt deren Ausgang "2", was von dem Register 118 im dritten Zyklus gespeichert wird. Daher zeigen die Instruktionsdaten i0b, i1b, i2b und i3b im zweiten Zyklus 0, 1, 2 und 1. Das Ergebnis der Arithmetikoperation in der Arithmetikeinheit 103 ist "3", da die Eingangssignale dazu "2" und "1" sind, was von dem Register 122 im vierten Zyklus gespeichert wird. Daher zeigen die Instruktionsdaten i0c, i1c, i2c und i3c im vierten Zyklus 0, 1, 2 und 3.
  • Die Instruktionsdaten i0c, i1c, i2c und i3c werden von der Arithmetikschaltung 200 aufgenommen, in welcher das Register 205 das Datensignal XR in dem Instruktionssignal i3c im vorherigen Zyklus gemeinsam an die Arithmetikeinheiten 201 bis 204 für die Akkumulationsoperation in den Arithmetikeinheiten 201 bis 204 liefert. Daher werden beispielsweise im dritten Zyklus von 8E, da der Wert "3" in dem zweiten Zyklus von dem Register 205 gespeichert und an die Arithmetikeinheiten 201 bis 204 geliefert wird, die Ausgabedatensignale X0, X1, X2 und X3 zu 4, 5, 6 und 7. Dieses kommt daher, da die anderen Eingänge der Arithmetikeinheiten 201 bis 204 mit den Instruktionsdaten i0c, i1c, i2c und i3c, die 1, 2, 3 und 4 anzeigen, versorgt werden. Die parallelen Ausgabedatensignale X0, X1, X2 und X3 werden in ein serielles Datensignal X umgewandelt, welches durch die Multiplexschaltung 5 eine Wiederholungsrate viermal schneller als die von jedem parallelen Datensignal aufweist. Demzufolge enthält das serielle Datensignal X in dem obigen Beispiel eine Instruktionsdatenfolge von "1, 2, 3, 4, 5, 6, 7, 8...".
  • 9 stellt ein weiteres Betriebsbeispiel der erfindungsgemäßen Testmustererzeugung dar. In 9 beginnt die Operation mit einem Anfangswert "0". Nach der Implementation eines viermaligen Additionsbefehls wird der nächste Anfangswert auf "8" gesetzt. Dann wird ein sechsmaliger Subtraktionsbefehl gesetzt. Auch in dieser Situation, bei der ein Substitutionsbefehl während der Operation vorgesehen ist, wird die Testmu stererzeugung ohne jede Hindernisse ausgeführt, d.h., ohne daß irgendwelche nachteiligen Effekte von Arithmetikoperationen in den vorherigen Zyklen empfangen werden.
  • Gemäß vorstehender Beschreibung kann bei der vorliegenden Erfindung die Arbeitsgeschwindigkeit des Instruktionsdatums ix viermal (n-mal) höher als die Arbeitsgeschwindigkeit jedes Instruktionsdatums i0, i1, i1 und i3 in der Instruktionsverarbeitungsschaltung 100 gesetzt werden. Auch die Geschwindigkeit der von der Multiplexschaltung 5 verarbeiteten Datensignale kann mit dem vierfachen (n-fachen) der Arbeitsgeschwindigkeit der Register und Arithmetikeinheiten in den vorherigen Schaltungen multipliziert werden. Mit anderen Worten, im Vergleich zur konventionellen Arbeitsgeschwindigkeit ist bei der vorliegenden Erfindung eine vierfach (n-fach) schnellere Arithmetikoperation verfügbar. Da desweiteren die konventionellen Instruktionsschritte bei der Programmierung der Testmustererzeugung angewendet werden können, erfordert die vorliegende Erfindung keinerlei komplizierte Programmierprozeduren.

Claims (3)

  1. Testmustergenerator mit: einer Parallelisierschaltung zum Umwandeln von Instruktionsdaten serieller Form in aufeinanderfolgende Blöcke von jeweils n parallelen Instruktionsdaten; einer Instruktionsverarbeitungsschaltung, welche n-1 Instruktionsprozessoren zum Ausführen von Arithmetikoperationen auf der Basis von zwei Instruktionsdaten der n in paralleler Form vorgegebenen Instruktionsdaten und mehrere Registersätze aufweist, wovon jeder Satz von einem gemeinsamen Taktsignal mit niedrigerer Geschwindigkeit versorgt wird, wobei (n-2) der Instruktionsprozessoren die Ergebnisse der Arithmetikoperation dem Eingang eines anderen Instruktionsprozessors bereitstellen; einer Arithmetikschaltung, welche die parallelen Instruktionsdaten aus der Instruktionsverarbeitungsschaltung aufnimmt und Arithmetikoperationen mittels n darin befindlicher Arithmetikeinheiten ausführt, wobei die Arithmetikschaltung ein Register enthält, welches die Instruktionsdaten in dem vorherigen Zyklus an die anderen Eingänge aller Arithmetikeinheiten liefert; und einer Multiplexschaltung zum Umwandeln der parallelen Instruktionsdaten aus der Arithmetikschaltung in eine serielle Form mit n-mal schnellerer Datenrate als die parallelen Instruktionsdaten auf der Basis eines schnelleren Taktsignals mit einer n-mal schnelleren Geschwindigkeit als der Takt mit der niedrigeren Geschwindigkeit.
  2. Testmustergenerator nach Anspruch 1, wobei jeder der Instruktionsprozessoren aufweist: einen ersten Eingangsanschluß und einen zweiten Eingangsanschluß; eine Arithmetikeinheit zum Ausführen einer Arithmetikoperation mit an den Eingangsanschlüssen angelegten Instruktionsdaten; ein mit dem ersten Eingangsanschluß verbundenes UND-Gatter; einen ersten Instruktionsdekoder zum Detektieren eines Vorzeichens und eines Substitutionsbefehls aus den an den ersten Eingangsanschluß angelegten Instruktionsdaten; ein mit dem detektierten Substitutionsbefehlsignal des ersten Instruktionsdekoders verbundenes ODER-Gatter; einen zweiten Instruktionsdekoder zum Detektieren eines Vorzeichens und eines Substitutionsbefehls aus den an den zweiten Eingangsanschluß angelegten Instruktionsdaten, wobei der detektierte Substitutionsbefehl an den anderen Eingang des ODER-Gatters und das invertierte Signal des detektierten Substitionsbefehls an den anderen Eingang des UND-Gatters angelegt wird.
  3. Testmustergenerator nach Anspruch 1 oder 2, wobei jeder der mehreren Registersätze in der Instruktionsverarbeitungsschaltung n Register in paralleler Form aufweist, wobei jeder Registersatz die Instruktionsdaten auf der Basis des Taktsignals an den nächsten Registersatz weiterschiebt, wobei eines der n Register in jedem der Registersätze Ausgabedaten von einem der Instruktionsprozessoren empfängt, um die Ausgabedaten synchron mit dem Taktsignal mit niedrigerer Geschwindigkeit weiterzugeben.
DE4446988A 1993-12-28 1994-12-28 Schneller Testmustergenerator Expired - Fee Related DE4446988B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP5-350145 1993-12-28
JP35014593A JP3323312B2 (ja) 1993-12-28 1993-12-28 高速化した試験パターン発生器

Publications (2)

Publication Number Publication Date
DE4446988A1 DE4446988A1 (de) 1995-07-27
DE4446988B4 true DE4446988B4 (de) 2005-06-09

Family

ID=18408531

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4446988A Expired - Fee Related DE4446988B4 (de) 1993-12-28 1994-12-28 Schneller Testmustergenerator

Country Status (4)

Country Link
US (1) US5629946A (de)
JP (1) JP3323312B2 (de)
KR (1) KR0134659B1 (de)
DE (1) DE4446988B4 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5696772A (en) * 1994-05-06 1997-12-09 Credence Systems Corporation Test vector compression/decompression system for parallel processing integrated circuit tester
WO1997005499A1 (fr) * 1995-07-26 1997-02-13 Advantest Corporation Procede et appareil de generation rapide de formes
DE19638165C1 (de) * 1996-09-18 1998-04-23 Siemens Nixdorf Inf Syst Verfahren zum Erzeugen von Eingabesignalfolgen und Vorrichtung zum Durchführen des Verfahrens
JP3552184B2 (ja) * 1996-10-18 2004-08-11 株式会社アドバンテスト 半導体メモリ試験装置
US5790560A (en) * 1996-12-13 1998-08-04 International Business Machines Corporation Apparatus and method for timing self-timed circuitry
DE10034897B4 (de) * 2000-07-18 2004-08-05 Infineon Technologies Ag Adresszähler zur Adressierung von synchronen hochfrequenten Digitalschaltungen, insbesondere Speicherbauelementen
DE10111440C2 (de) 2001-03-09 2003-02-20 Infineon Technologies Ag Adressengenerator zur Erzeugung von Adressen zum Testen einer Schaltung
US7240266B2 (en) * 2005-02-18 2007-07-03 International Business Machines Corporation Clock control circuit for test that facilitates an at speed structural test
TWI442497B (zh) * 2011-03-11 2014-06-21 Piecemakers Technology Inc 高速測試電路與方法
KR101988864B1 (ko) 2019-01-04 2019-06-13 조성국 포장용지의 사전 급지장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4389723A (en) * 1980-01-18 1983-06-21 Nippon Electric Co., Ltd. High-speed pattern generator
US4555663A (en) * 1982-11-19 1985-11-26 Takeda Riken Co., Ltd. Test pattern generating apparatus
US4905183A (en) * 1986-07-30 1990-02-27 Hitachi, Ltd. Pattern generator having plural pattern generating units executing instructions in parallel
JPH04213212A (ja) * 1990-12-10 1992-08-04 Ando Electric Co Ltd 高速パターン発生器

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4293950A (en) * 1978-04-03 1981-10-06 Nippon Telegraph And Telephone Public Corporation Test pattern generating apparatus
JPS63256877A (ja) * 1987-04-14 1988-10-24 Mitsubishi Electric Corp テスト回路
JP2602997B2 (ja) * 1991-01-18 1997-04-23 株式会社東芝 パターン発生器
JP2807170B2 (ja) * 1993-06-01 1998-10-08 松下電器産業株式会社 演算装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4389723A (en) * 1980-01-18 1983-06-21 Nippon Electric Co., Ltd. High-speed pattern generator
US4555663A (en) * 1982-11-19 1985-11-26 Takeda Riken Co., Ltd. Test pattern generating apparatus
US4905183A (en) * 1986-07-30 1990-02-27 Hitachi, Ltd. Pattern generator having plural pattern generating units executing instructions in parallel
JPH04213212A (ja) * 1990-12-10 1992-08-04 Ando Electric Co Ltd 高速パターン発生器

Also Published As

Publication number Publication date
JPH07198799A (ja) 1995-08-01
US5629946A (en) 1997-05-13
DE4446988A1 (de) 1995-07-27
KR950019757A (ko) 1995-07-24
KR0134659B1 (ko) 1998-04-25
JP3323312B2 (ja) 2002-09-09

Similar Documents

Publication Publication Date Title
DE60002426T2 (de) Takterzeugung und verteilung in einem emulationssystem
DE19983138B4 (de) Verfahren und Vorrichtung zum Verändern einer Taktfrequenz auf einer Phase-zu-Phase-Basis
DE4446988B4 (de) Schneller Testmustergenerator
DE19680782C2 (de) Hochgeschwindigkeits- Mustergenerierungsverfahren und unter Verwendung dieses Verfahrens arbeitender Hochgeschwindigkeits-Mustergenerator
DE60018110T2 (de) Kodierte takte zur verteilung von mehreren taktsignalen zu mehreren geräten eines rechnersystems
DE3725821C2 (de)
DE112008001707T5 (de) Finite-Feld-Operationen verwendender kryptographischer Zufallszahlengenerator
DE4437069C2 (de) Taktgenerator für Halbleiter-Prüfgerät
DE3926489A1 (de) Pseudozufallsrauschcodegenerator
DE3722907A1 (de) Maximallaengen-schieberegister-folgegenerator
DE2803650A1 (de) Vorrichtung zur erzeugung einer impulsbreitenmodulierten welle
DE19512131A1 (de) Halbleiter-Testgerät
DE4026169A1 (de) Programmierbarer rechteckgenerator
DE1947381A1 (de) Signalerzeugungsschaltungen
DE19525781C2 (de) Pseudo-Zufallsmuster-Generatorschaltung
EP0042961B1 (de) Verfahren und Anordnung zur Erzeugung von Impulsen vorgegebener Zeitrelation innerhalb vorgegebener Impulsintervalle mit hoher zeitlicher Auflösung
DE10204647A1 (de) Matrizenrechner des Zeitteilungstyps
DE3131897A1 (de) Steuersignal-multiplexschaltung
DE4433512A1 (de) Wellenform-Formatierungseinrichtung
DE3722906A1 (de) Steuervorrichtung fuer einen maximallaengen-linearwiederholungsfolgegenerator
DE1925917C3 (de) Binäre Impulsfrequenz-Multiplizierschaltung
DE3130380C2 (de)
DE4431791C2 (de) Signalauswahlvorrichtung
DE4102726C1 (en) Self-testing appts. for function block coupling input words - has tow linear feedback shift registers clocked by respective external and internal clocks
DE10214070B4 (de) System und Verfahren zum Reduzieren einer Übergangsrate eines Eingangssignals von zu testenden Geräten beim automatischen Testen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee