DE4306463A1 - Digital data generation system with programmable dominance-latch device - contains pattern generator producing pulses with definable leading and trailing edge durations - Google Patents
Digital data generation system with programmable dominance-latch device - contains pattern generator producing pulses with definable leading and trailing edge durationsInfo
- Publication number
- DE4306463A1 DE4306463A1 DE4306463A DE4306463A DE4306463A1 DE 4306463 A1 DE4306463 A1 DE 4306463A1 DE 4306463 A DE4306463 A DE 4306463A DE 4306463 A DE4306463 A DE 4306463A DE 4306463 A1 DE4306463 A1 DE 4306463A1
- Authority
- DE
- Germany
- Prior art keywords
- input
- pulse
- output
- data
- reset
- 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
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31922—Timing generation or clock distribution
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31919—Storing and outputting test patterns
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31928—Formatter
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31903—Tester hardware, i.e. output processing circuits tester configuration
- G01R31/31908—Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
- G01R31/3191—Calibration
Description
Diese Erfindung betrifft digitale Datenerzeugungsprüfsysteme,
insbesondere Systeme, um in Prüfung befindliche Geräte hin
sichtlich des Einsatzes zum Ansprechen auf Datensignale verän
derlichen Inhaltes anstelle nur auf periodische Impulse zu
kennzeichnen.
Bei herkömmlichen Datenerzeugungsprüfsystemen sind in separa
ten Stufen eine Datenquelle, ein Impulsgenerator und eine
Schaltmatrix kombiniert. Die Datenquelle erzeugt eine Folge
von vom Benutzer auswählbaren Daten. Der Impulsgenerator
erzeugt als Reaktion auf den Datengenerator einen Impuls mit
wählbaren Charakteristika. Der Impulsgenerator besteht typi
scherweise aus zwei in Reihe geschalteten monostabilen Multi
vibratoren: der erste dient zur Erzeugung der Verzögerung,
welche die Vorderflanke eines jeden Datenimpulses im Daten
signal kennzeichnet, der zweite soll die Breite eines jeden
Datenimpulses erzeugen. Ein Beispiel eines solchen Impuls
generators ist der Hewlett-Packard HP-8131A, welcher im
Hewlett-Packard-Journal von August 1990 beschrieben ist. Die
Schaltmatrix richtet den von dem Impulsgenerator erzeugten
Datenimpuls auf einen bestimmten Anschlußstift des in Prüfung
befindlichen Gerätes.
Die Architektur herkömmlicher Datenerzeugungsprüfsysteme
unterliegt erheblichen Beschränkungen. Erstens greift die
herkömmliche Architektur zum Teil auf analoge Schaltungen,
z. B. monostabile Multivibratoren zurück, wodurch der Benutzer
gezwungen ist, den Ausgang des Datenerzeugungsprüfsystems
anzupassen, zu assemblieren, zu programmieren, von Fehlern zu
bereinigen, festzulegen und einen Bitversatz zu eliminieren,
bevor ein Gerät getestet werden kann. Zweitens unterliegen
herkömmliche Datenerzeugungsprüfsysteme Beschränkungen der
Wiedertriggerung. Ist das Datensignal erst einmal von einem
Signalpegel "1" auf einen Signalpegel "0" übergegangen, brau
chen monostabile Multivibratoren, die in derartigen herkömm
lichen Systemen verwendet werden, eine minimale Erholungszeit
bis sie einen Übergang auf einen Signalpegel "1" wiedertrig
gern können. In der Praxis beschränkt dies das mögliche Tast
verhältnis auf im wesentlichen weniger als 100%. Drittens be
stimmen herkömmliche Datenerzeugungsprüfsysteme die zeitliche
Lage der Hinterflanke eines jeden Datenimpulses auf abgelei
tete Art und Weise von der Verzögerung der Vorderflanke und
der Breite des Datenimpulses, was die Flexibilität bei Zeit
festlegung der Hinterflanke des Datenimpulses begrenzt. Vier
tens ermöglichen Datenerzeugungsprüfsysteme mit monostabilen
Multivibratoren allgemein einem Benutzer nicht, eine steuer
bare einmalige Verzögerung bei Beginn des Datensignals ein
zufügen. Fünftens bieten derartige Datenerzeugungsprüfsysteme
nur begrenzte Optionen zum Formatieren des Datensignals.
Sechstens haben herkömmliche Datenerzeugungsprüfsysteme
allgemein nur begrenzte Modi zum Erzeugen von Datensignalen.
Siebtens müssen solche Datenerzeugungsprüfsysteme allgemein
manuell kalibriert werden. Der Benutzer nimmt Kalibrierungs
einstellungen auf der Grundlage externer Messungen, insbe
sondere der Impulsgeneratorstufe, vor, um die Genauigkeit der
Datensignaltaktung aufrechtzuerhalten.
Außerdem kann selbst bei Verwendung digitaler logischer Geräte
zur Erzeugung des Datenimpulses nicht die gesamte Impulsperio
de verwendet werden. Bei der Erstellung eines Datenimpulses
von beliebiger Breite unter Verwendung digitaler logischer
Geräte besteht der herkömmliche Ansatz darin, ein Flipflop mit
RS-Tastung (ein "RS-Flipflop") einzusetzen, so daß ein erster
Eingangsimpuls, der am Set-Eingang des Flipflop anliegt, den
Ausgangsimpuls startet, und ein zweiter Eingangsimpuls, der am
Reset-Eingang des Flipflop anliegt, den Ausgangsimpuls been
det. Die Zeit zwischen dem ersten Eingangsimpuls und dem zwei
ten Eingangsimpuls bestimmt die Breite des Ausgangsimpulses.
Die minimale Impulsbreite jedoch, die sich durch eine solche
Schaltung erzeugen läßt, ist eine, deren Breite gleich der
Breite des Taktimpulses ist, da der Ausgang eines Flipflop mit
RS-Tastung nicht definiert ist, wenn sowohl der Set- als auch
der Reset-Ausgang gesetzt sind. Die maximale Impulsbreite ist
aus dem gleichen Grund gleich der Differenz zwischen der Takt
impulsperiode und der Taktimpulsbreite. Für Fälle, in denen es
erwünscht ist, einen Impuls mit einer Impulsdauer von irgendwo
zwischen 0 bis 100% der Taktperiode zu erzeugen, ist der her
kömmliche Ansatz unzulänglich; es wird daher ein neuer Ansatz
benötigt.
Dementsprechend besteht die Aufgabe, ein verbessertes Daten
erzeugungsprüfsystem verfügbar zu machen, mit dem in Prüfung
befindliche Geräte nach ihrer Fähigkeit zum Ansprechen auf
Datensignale, die von einem oder mehreren Datenerzeugungs
systemen ausgegeben werden, klassifiziert werden können.
Die vorliegende Erfindung erfüllt diese Aufgabe mit einem
Datenerzeugungssystem, welches eine vollständig integrierte
digitale Architektur aufweist, welches ideal, d. h. sofort
wiedertriggerbar ist, welches dem Benutzer für Tastverhält
nisse von 0 bis über 100% eine unabhängige Steuerung sowohl
der Vorder- als auch der Hinterflanken ermöglicht, welches dem
Benutzer ermöglicht, bei Beginn des Datensignals ohne unerwün
schte Konsequenzen für die Taktung der Vorder- und Hinterflan
ken von Datenimpulsen im Datensignal Verzögerungen einzufügen,
welches dem Benutzer eine Vielzahl von Datenformaten und
Signalerzeugungsmodi ermöglicht, welches eine vom Benutzer
programmierbare Steuerung des Formates des Datensignals bietet
und welches sich automatisch selbst kalibriert. Außerdem
stellt die Erfindung eine neuartige programmierbare Dominanz-
Flipflopschaltung mit RS-Tastung bereit, welche die Erzeugung
eines Datenimpulses mit einem Tastverhältnis von 0 bis über
100% ermöglicht.
Gemäß der Erfindung speichert eine Speichervorrichtung vom
Benutzer auswählbare Daten, die Signalpegel von "1"en und
"0"en umfassen, welche den Datenimpulsen des von dem Daten
erzeugungssystem zu erzeugenden Datensignals zur Anwendung
auf das in Prüfung befindliche Gerät ("device under test",
"DUT") entsprechen. Ein Formatierblock liest diese Daten
parallel und setzt sie in zwei serielle Folgen grob getakteter
Flankenplazierungsdaten um - wobei eine Folge der Vorderflanke
der Datenimpulse entspricht und die andere Folge der Hinter
flanke solcher Impulse entspricht. Diese Umsetzung wird gemäß
einer Kombination (i) der vom Benutzer programmierten Tak
tungsanweisungen, (ii) der Vorgeschichte der Flankenplazie
rungsdaten und (iii) des Formates des vom Benutzer program
mierten Datensignals durchgeführt.
Der Formatierblock erstellt die vom Benutzer programmierte
Ausgangsperiode des Datensignals mit Bezug auf einen verän
derlichen Haupttakt, der an dem Datenerzeugungsprüfsystem
anliegt. Wenn die vom Benutzer programmierte Periode des
Datensignals einer Frequenz innerhalb des Bereichs des Haupt
taktes entspricht, dann steuert der Formatierblock den Haupt
takt so, daß er mit einer Frequenz gleich dem Kehrwert der vom
Benutzer programmierten Periode arbeitet. In diesem Fall hat
das Datensignal eine Periode gleich der Periode des Haupt
taktes. Wenn die vom Benutzer programmierte Periode einer
Frequenz unterhalb des Bereiches des Haupttaktes entspricht,
dann steuert der Formatierblock den Haupttakt so, daß er mit
einer Frequenz gleich dem Quotienten der vom Benutzer program
mierten Periode, geteilt durch einen von dem Formatierblock
errechneten Skalierungswert, arbeitet. Das von dem Datenerzeu
gungssystem ausgegebene Datensignal hat eine Periode, welche
als Verkettung von Haupttaktperioden angelegt ist, wobei die
Anzahl dieser verketteten Perioden gleich dem errechneten
Skalierungswert ist.
Die beiden vom Formatierblock erzeugten seriellen Folgen
werden zu einem Präzisionstaktungsblock geführt, innerhalb
dessen vom Benutzer programmierte Taktanweisungen an jede
Folge von Flankenplazierungsdaten angelegt werden, um die
Vorderflanke und die Hinterflanke eines jeden Datenimpulses in
bis zu drei Pegeln inkrementell feiner Verzögerung unabhängig
voneinander zu verzögern. Der Präzisionstaktungsblock erstellt
unter Benutzung dieser beiden Folgen jeden Datenimpuls des
Datensignals.
Bei der Erstellung eines jeden Datenimpulses des Datenstromes
überwindet der Präzisionstaktungsblock Begrenzungen, die bei
herkömmlichen Impulsschaltungen bezüglich eines Impulses mit
beliebiger Breite in digitaler Schaltung unvermeidlich sind.
Dies bedeutet die Unmöglichkeit, mit einer herkömmlichen
Impulsschaltung einen Impuls mit einem vollen Tastverhält
nisbereich von 0 bis 100% zu erzeugen, und wird gemäß der
Erfindung durch Bereitstellung der vorher erwähnten program
mierbaren Flipflopschaltung mit RS-Tastung überwunden, welche
sich auch wie ein Latch des D-Typs verhalten kann. Das heißt,
als Flipflop mit RS-Tastung kann die Schaltung so gesteuert
werden, daß entweder der Set-Eingang oder der Reset-Eingang
den Ausgang bestimmt, wenn beide sich auf einem Signalpegel
"1" befinden. Dies wird durch Verwendung eines Latchspeichers
des D-Typs erreicht, bei dem ein Multiplexer mit seinem D-Ein
gang und ein erstes "ODER"-Gatter mit seinem Freigabeeingang
verbunden ist. Der Multiplexer wählt zwischen einem Set-Ein
gang und einem Reset-Eingang zum Anlegen an den D-Eingang des
Latch-Speichers, wobei Signale, die an diese Eingänge angelegt
werden, gleichzeitig auch an Eingänge des "ODER"-Gatters ange
legt werden, um den Latch-Speicher freizugeben. Wenn es er
wünscht ist, einen Impuls mit geringem Tastverhältnis zu er
zeugen, dann wird der Reset dominant gemacht. Wenn es er
wünscht ist, einen Impuls mit hohem Tastverhältnis zu erzeu
gen, dann wird der Set dominant gemacht. Als Ergebnis werden
unbestimmte Zustände eliminiert.
Die Impulserzeugungsschaltung ist so ausgelegt, daß sie sich
wie ein Flipflop mit RS-Tastung in "Rückkehr auf Null"- ("RZ")
und "Rückkehr auf 1" ("R1")-Modi verhält. Sie weist jedoch
einen Mechanismus auf, der selektiv bewirkt, daß sich die
Schaltung wie ein transparenter Latch in einem "Nichtrückkehr
auf Null"- ("NRZ") Modus verhält. Dies wird erreicht, indem
ein "UND"-Gatter am Set-Eingang des "ODER"-Gatters gesetzt
wird, wobei ein Eingang des "UND"-Gatters der Set-Eingang ist
und ein weiterer, invertierender Eingang des "UND"-Gatters
einen "Nichtrückkehr auf Null"- ("NRZ") Eingang erstellt. Wenn
sich der NRZ-Eingang auf dem Signalpegel "1" befindet, dann
bleibt der Freigabeeingang an den Latch des D-Typs auf dem
Signalpegel "1", so daß der Signalpegel am D-Eingang durch den
Ausgang des Latch geleitet wird. Es wird auch ein zweites
"ODER"-Gatter an dem anderen Eingang des ersten "ODER"-Gatters
plaziert, welches mit dem Freigabeeingang verbunden ist. Ein
Eingang des zweiten "ODER"-Gatters empfängt das Reset-Signal,
während der andere ein direktes Reset-Signal empfängt.
Die von dem Präzisionstaktungsblock erzeugten Datenimpulse
werden an einen Ausgangsblock geführt, in welchem Spannungs
pegel gemäß vom Benutzer programmierten Anweisungen zum
Anlegen des Datensignals an das "DUT" gesetzt werden.
Der Ausgangsblock ist auch mit einem Analog/Digital-Wandler
verbunden, welcher nicht nur zum Kalibrieren von Ausgangs
spannungspegeln, sondern auch zum Kalibrieren der verschie
denen Verzögerungsmechanismen durch Überwachen geringer Ver
änderungen im Tastverhältnis des Datensignals verwendet wird.
Das digitale Datenerzeugungsprüfsystem bietet dem Benutzer
eine Kontrolle über die Einfügung von Verzögerungen zu Beginn
des Datensignals, über das Format und über den Modus der
Datensignalerzeugung.
Dementsprechend wird mit der vorliegenden Erfindung ein
neuartiges und verbessertes Datenerzeugungsprüfsystem zur
Kennzeichnung von in Prüfung befindlichen Geräten durch ihre
Fähigkeit zum Ansprechen auf Datensignale bereitgestellt.
Es wird vorteilhafterweise ein Datenerzeugungsprüfsystem ver
fügbar gemacht, welches eine vollständig digitale Architektur
aufweist, die es dem Benutzer ermöglicht, Datengeschwindig
keiten, Datenspannungspegel und andere Charakterisierungs
parameter zu programmieren.
Das neue Datenerzeugungsprüfsystem hat den Vorteil, ideal
wiedertriggerbar zu sein.
Ein weiterer Vorteil der vorliegenden Erfindung besteht darin,
ein Datenerzeugungsprüfsystem anzugeben, welches dem Benutzer
ermöglicht, die Taktung von Datenimpulsen durch unabhängige
Kontrolle von Vorder- und Hinterflanken zu steuern, wodurch
Tastverhältnisse von 0 bis über 100% erstellt werden.
Weiterhin ist es gemäß der vorliegenden Erfindung dem Benutzer
möglich, mit dem Datenerzeugungsprüfsystem steuerbare Ver
zögerungen am Beginn des Datensignals einzufügen.
Ein noch weiterer Vorteil der vorliegenden Erfindung ist es,
ein Datenerzeugungsprüfsystem bereitzustellen, welches dem
Benutzer ermöglicht, das Format des Datensignals zu steuern
und aus einer Vielzahl von Modi zum Erzeugen von Datensignals
auszuwählen.
Ein weiterer Vorzug der vorliegenden Erfindung liegt für das
Datenerzeugungsprüfsystem darin, daß es sich selbst
automatisch kalibriert.
Die erfindungsgemäße Flipflopschaltung mit RS-Tastung kann so
programmiert werden, daß entweder ein Set-Eingang oder ein
Reset-Eingang dominiert, wenn sowohl der Set- als auch der
Reset-Eingang vorliegen bzw. gesetzt sind.
Es ist schließlich ein Vorteil der vorliegenden Erfindung,
eine Ausgangsimpulserzeugungsschaltung anzugeben, bei welcher
bewirkt werden kann, daß sie sich entweder wie ein Flipflop
mit RS-Tastung in RZ- oder R1-Modi oder wie ein Latch des D-
Typs in einem NRZ-Modus verhält.
Weitere Einzelheiten, Merkmale und Vorteile der Erfindung
ergeben sich aus der folgenden detaillierten Beschreibung der
Erfindung, in Verbindung mit der beigefügten Zeichnung.
Es zeigt
Fig. 1 ein Blockschaltbild des Systempegels eines
erfindungsgemäßen Datenerzeugungsprüfsystems mit
einer Datenerzeugungsprüfeinheit, einem externen
Mikroprozessor und einem Zeitbasisgenerator, die
alle miteinander verbunden sind;
Fig. 2 ein allgemeines Blockschaltbild einer Ausführungs
form einer erfindungsgemäßen Datenerzeugungsprüf
einheit;
Fig. 3 a+b ein Blockschaltbild des Signalpegels einer
allgemeinen Ausführungsform der vorliegenden
Erfindung;
Fig. 4 ein Blockschaltbild eines Mustererzeugungsblocks aus
Fig. 3;
Fig. 5 a+b ein Blockschaltbild eines Signalpegels eines RAM-
Adreßzählerblocks, welcher in dem in Fig. 5 gezeig
ten Mustererzeugungschip eingegliedert ist;
Fig. 6 ein Blockschaltbild eines Signalpegels eines RAM-
Adreßzählerblocks, welcher in dem in Fig. 5 gezeig
ten Mustererzeugungschip eingegliedert ist;
Fig. 7 ein Blockschaltbild eines Signalpegels eines TRAIL
MASK PIPE-Blocks, welcher in dem in Fig. 5 gezeigten
Mustererzeugungschip eingegliedert ist;
Fig. 8 ein Zeitablaufdiagramm, welches allgemein die
Erzeugung eines Datenimpulses veranschaulicht;
Fig. 9 ein Zeitablaufdiagramm, welches die Anwendung
verschiedener Verzögerungen bei der Erstellung der
Taktung von Datenimpulsen veranschaulicht;
Fig. 10 ein Logikschaltbild für eine erfindungsgemäße pro
grammierbare Dominanz-Flipflopschaltung mit RS-
Tastung, welche sich wie ein D-Latch verhalten kann
und in dem Präzisionstaktungsblock aus Fig. 2
eingegliedert ist;
Fig. 11 ein Logikschaltbild für eine Impulsverkürzungs
schaltung, welche in der programmierbaren Dominanz-
Flipflopschaltung mit RS-Tastung aus Fig. 10
verwendet wird;
Fig. 12 ein Logikschaltbild für eine RS/Latch-Zelle, welche
in der erfindungsgemäßen Schaltung aus Fig. 10
verwendet wird; und
Fig. 13 ein Blockschaltbild einer allgemeinen Ausführungs
form eines Datenerzeugungsprüfsystems mit vier
Kanälen aus dem Stand der Technik.
Gemäß Fig. 13 besteht ein herkömmliches Datenerzeugungsprüf
system nach dem Stand der Technik aus einem Datengenerator 10,
einem oder mehreren Impulsgeneratoren 12 und einer Schaltma
trix 14, welche mit einem in Prüfung befindlichen Gerät
("device under test", "DUT") 16 parallelgeschaltet ist. Der
Datengenerator 10 erzeugt digitale Datenwörter in parallelen
Kanälen, wobei die Taktung für jeden Kanal durch einen der
diskreten Impulsgeneratoren 12 erstellt wird. Die Schaltmatrix
14 richtet das Datensignal auf einen bestimmten Anschlußstift
des DUT 16. Im typischen Fall erstellt der Impulsgenerator 12
die Taktung eines jeden Datenimpulses im Datensignal durch Kon
figurierung zweier in Reihe geschalteter, monostabiler Multi
vibratoren - wobei der erste zur Steuerung der Verzögerung
vorgesehen ist, welche die Vorderflanke eines jeden Datenim
pulses bestimmt, und der zweite zur Einstellung der Breite
eines jeden Datenimpulses vorgesehen ist. Da die Breite eines
jeden Datenimpulses veränderbar ist, kann die Breite so einge
stellt werden, daß die Hinterflanke des Datenimpulses auf die
Vorderflanke zusammengeschoben wird. Eine Kontrolle über die
Breite des Datenimpulses ergibt jedoch nur eine begrenzte, ab
geleitete Kontrolle über die Taktung der Hinterflanke eines
jeden Datenimpulses. Außerdem unterliegen Impulsgeneratoren
12, die monostabile Multivibratoren verwenden, Beschränkungen
hinsichtlich der Wiedertriggerung, welche eine Architektur
beschränkung des Tastverhältnisses des Datensignals bewirken:
ist das Datensignal erst einmal von einem Signalpegel "1" auf
einen Signalpegel "0" übergegangen, dann brauchen die mono
stabilen Multivibratoren eine minimale Erholungszeit, ehe sie
wieder einen Übergang auf einen Signalpegel "1" triggern kön
nen.
Demgegenüber zeigt die Fig. 2 ein Blockschaltbild des System
pegels des Datenerzeugungsprüfsystems, welches die oben be
schriebenen Beschränkungen herkömmlicher Datenerzeugungsschal
tungen überwindet. Eine Datenerzeugungsprüfeinheit 18 ist auf
einer Karte enthalten, welche über Schnittstellen mit einem
externen Mikroprozessor ("MPU") 20 und einer externen
Zeitbasiskarte 22 verbunden ist. Der externe Mikroprozessor 20
kommuniziert mit einem oder mehreren Datenerzeugungsprüfein
heiten 18 und mit der Zeitbasiskarte 22 über einen MPU-Bus 24.
Ein Hochgeschwindigkeitsbus 26 ermöglicht eine schnelle Kom
munikation zwischen den Datenerzeugungsprüfeinheiten 18 und
der Zeitbasiskarte 22. Abgeschirmte verdrillte Doppelleitungen
28 führen einen von der Zeitbasiskarte 22 erzeugten Hochge
schwindigkeitstakt zu den Datenerzeugungsprüfeinheiten 18.
Jede Karte, die ein Datenerzeugungsprüfsystem enthält, ist
vorzugsweise so aufgebaut, daß sie eine Vielzahl von separaten
Datenerzeugungsprüfeinheiten 18 enthält, um mehrere Daten
signalkanäle zum Anlegen an das DUT 16 bereitzustellen. Jeder
Kanal verwendet den Hochgeschwindigkeitstakt der Zeitbasis
karte 22 als Haupttakt, wie nachstehend weiter erläutert ist.
Die Zeitbasiskarte 22 erstellt in Verbindung mit jeder Daten
erzeugungsprüfeinheit 18 eine Vielzahl von Betriebsmodi, ein
schließlich einem Burst-Modus bzw. -Betrieb, einem Auto-Burst-
Modus, einem getriggerten Auto-Modus und einem Auto-Modus. Im
Burst-Modus ist die Zeitbasiskarte 22 im Ruhezustand bzw.
nicht in Betrieb, bis sie ein externes Triggerereignis auf
greift, woraufhin die Zeitbasiskarte 22 dann eine Anzahl von
Haupttaktzyklen erstellt, die ausreichen, um die Datenerzeu
gungsprüfeinheit 18 zur Ausgabe eines Datensignals anzuregen,
welches aus einer vom Benutzer programmierten Anzahl von
Datenbits zusammengesetzt ist. Die feste Anlaufverzögerung von
ca. 100 Nanosekunden ist in der Datenerzeugungsprüfeinheit 18
programmiert. Wie nachstehend weiter ausgeführt ist, kann in
der bevorzugten Ausführungsform der Erfindung der Benutzer bis
zu 64 Kilobit Daten auswählen und speichern, die alle im
Burst-Modus ausgegeben werden können. Es versteht sich, daß
die Erfindung so aufgebaut werden kann, daß eine Wahl und
Speicherung einer beliebigen Anzahl von Datenbits möglich ist,
ohne daß hierbei von den Erfindungsprinzipien abgegangen wird.
Im Auto-Burst-Modus erzeugt die Datenerzeugungsprüfeinheit 18
einen Ausgang, der ähnlich dem des Burst-Modus ist, mit der
Ausnahme, daß die Zeitbasiskarte 22 intern Triggerereignisse
erzeugt, die eine festgelegte Verzögerung zwischen jedem Burst
erstellen. Vorzugsweise beträgt die festgelegte Verzögerung
ca. 15 Mikrosekunden.
Im Auto-Modus erzeugt die Zeitbasiskarte 22 einen kontinuier
lichen Fluß von Haupttaktzyklen, ohne ein Triggerereignis ab
zuwarten. Angetrieben von solchen Taktzyklen erzeugt die Da
tenerzeugungsprüfeinheit 18 bin kontinuierliches Datensignal,
welches beim ersten Verlauf durch die Daten des Benutzers aus
Datenimpulsen zusammengesetzt ist, welche den Datenbits ent
sprechen, die von einem Startbit bis zu einem Endbit im
Musterspeicher 30 (vgl. Fig. 2) gespeichert sind, da diese
Bits von dem Benutzer markiert sind. Bei nachfolgenden Durch
läufen durch die Daten des Benutzers ist das Datensignal aus
Datenimpulsen zusammengesetzt, welche den Datenbits entspre
chen, die vom Benutzer in einer Bitschleife bis zu einem End
bit markiert sind, und zwar entsprechend der Markierung des
Benutzers. Die Zeitbasiskarte 22 und das Datenerzeugungsprüf
system 18 arbeiten kontinuierlich auf diese Weise, bis sie von
dem Benutzer unterbrochen werden, entweder manuell oder durch
einen programmierten Befehl.
Im getriggerten Auto-Modus erzeugt die Datenerzeugungsprüf
einheit 18 einen Ausgang, der ähnlich dem des Auto-Modus ist,
mit der Ausnahme, daß die Zeitbasiskarte 22 ein externes Trig
gerereignis wie den Burst-Modus abwartet, ehe sie die Haupt
takte erzeugt.
Die Zeitbasiskarte 22 und die Datenerzeugungskarte 18 werden
von dem Mikroprozessor 20 über den MPU-Bus 24 gemäß einer
Benutzerprogrammierung konfiguriert, wobei diese Konfiguration
vor der Datensignalerzeugung erfolgt. Sind die Zeitbasiskarte
22 und die Datenerzeugungskarte 18 erst einmal konfiguriert,
dann arbeiten sie als Zustandsmaschinen unabhängig von dem
Mikroprozessor 20, um Datensignale zu erzeugen, und kommuni
zieren nach Bedarf über den Hochgeschwindigkeitsbus 26
miteinander, um das Benutzerprogramm durchzuführen.
Die Fig. 2 zeigt ein Schaltbild der Datenerzeugungsprüfein
heit 18 aus Fig. 1. Gemäß Fig. 2 speichert der schon
erwähnte Musterspeicher 30 vom Benutzer wählbare Daten, welche
die Signalpegel von "1"en und "0"en umfassen, welche den
Datenimpulsen des Datensignalausgangs von der Datenerzeugungs
einheit 18 zur Anlegung an das in Prüfung befindliche Gerät 16
entsprechen. Ein Formatierblock 32 lädt diese Daten über einen
Zweiweg-Datenbus 31 in den Musterspeicher 30; die Daten werden
zusammen mit Adressierinformation durch den Mikroprozessor 20
über den MPU-Bus 24 dem Formatierblock 32 zugeführt, wie es in
Fig. 1 gezeigt ist.
Im Betrieb liest der Formatierblock 32 parallel über den Zwei
weg-Datenbus 31 Daten aus dem Musterspeicher 30 und adressiert
diese Daten über eine Adreßleitung 33. Der Formatierblock 32
übersetzt jedes derartig ausgelesene Datenbit in zwei serielle
Folgen von grob getakteten Flankenplazierungsdaten 34, 36, wo
bei eine Folge 34 aus Flankenplazierungsdaten besteht, die der
Vorderflanke von Datenimpulsen entsprechen, und eine andere
Folge 36 aus Flankenplazierungsdaten besteht, die der Hinter
flanke von Datenimpulsen entsprechen. Der Formatierblock 32
vollzieht diese Umsetzung gemäß einer Kombination aus (i) den
von dem Benutzer programmierten Taktanweisungen, (ii) der Vor
geschichte der Flankenplazierungsdaten und (iii) dem Format
des von dem Benutzer programmierten Datensignals.
Die beiden vom Formatierblock 32 erzeugten Folgen von Flanken
plazierungsdaten 34, 36 werden einem Präzisionstaktungsblock
38 zugeführt. Der Präzisionstaktungsblock 38 legt vom Benutzer
programmierte Taktanweisungen unabhängig an jede Folge 34, 36
an, um feine Taktverzögerungen in der Vorderflanke und der
Hinterflanke eines jeden Datenimpulses in bis zu drei Pegeln
inkrementeller Feinverzögerung zu bewirken. Zusätzlich zur
Einführung solcher Verzögerungen baut der Präzisionstaktungs
block 38 unter Verwendung der zwei Folgen 34, 36 jeden Daten
impuls des Datensignals auf und erzeugt eine Formatierung. Der
Ausgangsdatenimpuls wird aufgebaut, indem ein feingetakteter
Vorderflankenplazierungsdatenimpuls an den Set-Eingang eines
programmierbaren Dominanz-Flipflops mit RS-Tastung angelegt
wird, um den Ausgangsimpuls auszulösen, und ein feingetakteter
Hinterflankenplazierungsdatenimpuls an den Reset-Eingang des
Flipflops angelegt wird, um den Ausgangsimpuls zu beenden. Die
Struktur und der Betrieb des Flipflops werden nachstehend noch
im einzelnen dargelegt werden.
Die so von dem Präzisionstaktungsblock 38 aufgebauten Daten
impulse werden einem Ausgangsblock 40 zugeführt, in welchem
Spannungspegel gemäß vom Benutzer programmierten Anweisungen
eingestellt werden und von wo aus das Datensignal an das DUT
16 angelegt wird. Der Ausgangsblock 40 umfaßt auch einen
Schaltungsaufbau, der zur Kalibrierung von Ausgangspegeln und
zur Kalibrierung der verschiedenen Verzögerungsmechanismen des
Präzisionstaktungsblockes 38 verwendet wird, indem geringe
Veränderungen im Tastverhältnis des Datensignals überwacht
werden.
Zusätzlich zur Umsetzung der Daten des Musterspeichers 30 in
Flankenplazierungsdaten erstellt der Formatierblock 32 die vom
Benutzer programmierte Periode in Abhängigkeit vom Haupttakt
der Zeitbasiskarte 22. Der Haupttakt, welcher auf jede bequeme,
im Stand der Technik allgemein bekannte Art und Weise aufge
baut werden kann, hat vorzugsweise einen Betriebsbereich, wel
cher in der Frequenz mindestens der höchsten Frequenz gleich
kommt, in die das in Prüfung befindliche Gerät 16 reicht. In
der bevorzugten Ausführungsform hat der Haupttakt einen Be
reich von 325 MHz bis 650 MHz, die sich in diskreten Schritten
einstellen lassen. Wenn die vom Benutzer programmierte Periode
des Datensignals einer Frequenz im Bereich des Haupttaktes
entspricht, dann steuert der Formatierblock 32 den Haupttakt
so, daß er auf einer Frequenz gleich dem Kehrwert der vom
Benutzer programmierten Periode arbeitet. In diesem Fall hat
das von dem Datenerzeugungsprüfsystem 18 ausgegebene
Datensignal eine Periode gleich der Periode des Haupttaktes.
Wenn die vom Benutzer programmierte Periode einer Frequenz
unterhalb des Bereiches des Haupttaktes entspricht, dann
steuert der Formatierblock 32 den Haupttakt so, daß dieser auf
einer Frequenz gleich dem Produkt aus der Frequenz, der die
vom Benutzer programmierte Periode entspricht, und einem von
dem Formatierblock 32 errechneten Skalierungsfaktor arbeitet.
Mit anderen Worten, die Frequenz des Haupttaktes ist so
eingestellt, daß sie auf einem Wert innerhalb des Bereiches
des Haupttaktes arbeitet, welcher bei Division durch den
Skalierungsfaktor mit einer annehmbaren Genauigkeit den
Kehrwert der vom Benutzer programmierten Periode ergibt. In
diesem Fall errechnet der Formatierblock 32 eine einzigartige
Kombination von Haupttaktfrequenz und Skalierungsfaktor, um
die vom Benutzer programmierte Periode als Verkettung mehrerer
Haupttaktperioden zu erstellen.
Der Formatierblock 32 konfiguriert das Datenerzeugungsprüf
system 18 so, daß es die vom Benutzer programmierte Periode
gemäß der allgemeinen Formel:
T(u) = T(m)*2n
erzeugt, wobei T(u) die vom Benutzer programmierte Periode
ist, T(m) die Haupttaktperiode darstellt, 2n der Skalierungs
faktor ist und T(m) und n voneinander abhängig sind. Der
Mikroprozessor 20 errechnet n mit Fließkomma und rechnet das
Ergebnis auf die nächste ganze Zahl um, wobei diese ganze Zahl
dazu verwendet wird, den diskreten Schritt innerhalb des
Frequenzbereiches des Haupttaktes auszuwählen, welcher T(u)
mit der vorgeschriebenen Genauigkeit ergibt. Der Skalierungs
faktor 2n wird dann vom Mikroprozessor 20 in den Formatier
block 32 einprogrammiert. Zusammengefaßt ausgedrückt werden
vom Benutzer programmierte Perioden erzielt, indem T(m) auf
einen diskreten Schritt innerhalb seines Bereiches gesetzt
wird und 2n solcher Haupttaktperioden verkettet werden.
Als Folge des Aufbaus von vom Benutzer programmierter Perioden
aus verketteten Vielfachen der Haupttaktperiode trägt der
Formatierblock 32 auch zur Taktung der Datenimpulse im Daten
signal bei. Wie nachstehend weiter ausgeführt ist, erzielt der
Formatierblock 32 einen groben Taktungspegel, indem er Daten
folgen 34, 36 zur Vorder- und Hinterflankenplazierung erzeugt,
als Ergebnis welcher ein jeder Datenimpuls mit einer Genauig
keit, die innerhalb einer Haupttaktperiode liegt, sich in der
vom Benutzer programmierten Periode befindet.
Das Datenausgangssignal von dem Ausgangsblock 40 entspricht
den vom Benutzer ausgewählten Daten, die in den Musterspei
cherblock 30 geladen werden, wobei die Taktung, die Forma
tierung und die Spannungspegel gemäß einer Benutzerprogram
mierung festgelegt sind. In der bevorzugten Ausführungsform
schließen die Formatierungsoptionen Impuls-, Nichtrückkehr auf
Null- ("NRZ"), Rückkehr auf Null- ("RZ"), Rückkehr auf Eins-
("R1") und Gleichstrom-Pegel ein. Die Datenimpulstaktung
bezüglich der Verzögerung und Breite beruht auf unabhängiger
Steuerung von Verzögerungen der Vorder- und Hinterflanke. Die
Spannungspegel werden durch eine Benutzerprogrammierung
unabhängig gesteuert. Da das Datenerzeugungsprüfsystem 18 eine
vollständig digitale Architektur hat, entfallen überdies die
Beschränkungen bezüglich Wiedertriggerung und Verzögerung von
Systemen, die auf monostabilen Multivibratoren basieren, und
die Kalibrierung erfolgt automatisch.
Die Fig. 3a und 3b zeigen ein logisches Schaltbild einer
bevorzugten Ausführungsform der vorliegenden Erfindung. Der
Musterspeicherblock 30 besteht aus einem Speicherchip mit
wahlfreiem Zugriff (Random Access Memory-Chip, "RAM"-Chip) 42.
Vorzugsweise ist der RAM-Chip 42 ein 8K×8 CMOS statischer RAM,
mit höchstens 10 Nanosekunden Zugriffszeit von einer gesicher
ten Adresse und mit einer minimalen Haltezeit von 3 Nanosekun
den ab Adreßänderung. Jedes der im RAM-Chip 42 gespeicherten 64
Kilobits entspricht einer vom Benutzer programmierbaren
Periode im Datensignal.
Der Formatierblock 32 umfaßt einen Mustererzeugungsblock 44,
einen Parallel-/Seriell-Wandlerchip 46, ein logisches "ODER"-
Gatter 48, ein logisches "UND"-Gatter 50 und ein logisches
"UND"-Gatter 52. Der Mustererzeugungsblock 44 lädt Daten in
den RAM-Chip 42, wobei die Daten zusammen mit der
Adressierinformation über den MPU-Bus 24 an den
Mustererzeugungsblock 44 gelegt werden. Der
Mustererzeugungsblock 44 liest auch Daten byteweise aus dem
RAM-Chip 42 aus, setzt sie in Halbbytes grob getakteter
Flankenplazierungsdaten 54, 56 um, d. h. Flanken
plazierungsdatenhalbbytes 54 für die Vorderflanke von Daten
impulsen und Flankenplazierungsdatenhalbbytes 56 für die
Hinterflanke von Datenimpulsen.
Der Parallel-/Seriell-Wandlerchip 46 kann ein im Handel
erhältlicher Chip sein. Vorzugsweise ist der Parallel-
/Seriell-Wandlerchip 46 ein Sony CXB1130QY-Dual-4-Bit-
Multiplexer: ein Ultrahochgeschwindigkeits-ECL-Multiplexer,
welcher als dualer 4-Bit-Parallel-/Seriell-Wandler fungiert.
Der Wandlerchip 46 wird von dem über die abgeschirmte ver
drillte Doppelleitung 28 geführten Haupttakt 45 getaktet. Aus
dem Haupttakt mit 50% Tastverhältnis erzeugt der Wandlerchip
46 einen Untertakt ("Slave") 47 mit einem 25%igen Tastver
hältnis und einer Frequenz von 25% des Haupttaktes 45.
Der Untertakt 47 wird dem Mustererzeugungsblock 44 zugeführt,
um dem Mustererzeugungsblock 44 zu signalisieren, daß in dem
Wandlerchip 46 Halbbytes 54, 56 der Flankenplazierungsdaten
geladen sind. Der Wandlerchip 46 lädt bei jedem vierten Zyklus
des Haupttaktes 45 parallel jedes der Halbbytes 54 der Vorder
flankenplazierungsdaten und jedes Halbbyte 56 der Hinterflan
kenplazierungsdaten aus dem Mustererzeugungsblock 44. Der
Wandlerchip 46 signalisiert dem Mustererzeugungsblock 44 jeden
solchen Ladevorgang, indem er für einen Haupttakt 45 den
Untertakt 47 setzt und dann den Untertakt 47 nach Vollendung
des Ladevorganges löscht. Der Wandlerchip 46 gibt bei jedem
Zyklus des Haupttaktes 45 seriell jeweils ein Bit eines jeden
derartigen Halbbytes 54, 56 in eine nichtgattergesteuerte
Datenfolge 58 von Vorderflankenplazierungsdaten und in eine
nichtgattergesteuerte Folge 60 von Hinterflankenplazie
rungsdaten aus.
Der Wandlerchip 46 gibt den Haupttakt 45 auch als
Gattersteuertakt 62 aus, welcher um einen Betrag gleich der
Fortpflanzungsverzögerung zwischen dem Haupttakt 45, wie er
dem Wandlerchip 46 eingegeben wird, und dem Ausgang der
nichtgattergesteuerten Flankenplazierungsdatenfolgen 58, 60
verzögert ist. Im typischen Fall wird der Gattersteuertakt 62
durch das Layout des Formatierblockes 32 auf der Karte um
zusätzliche 200 Pikosekunden verzögert.
Vom Wandlerchip 46 wird der Gattersteuertakt 62 beiden
logischen "UND"-Gattern 50, 52 zugeführt, wo er jeweils die
nichtgattergesteuerte Vorderflankendatenfolge 58 und die
nichtgattergesteuerte Hinterflankendatenfolge 60
gattersteuert, um die Flankenplazierungsdatenfolgen 34, 36 zu
erzeugen, welche an den Präzisionstaktungsblock 38 angelegt
werden. Eine derartige Gattersteuerung verkürzt die Dauer
eines beliebigen Impulses in den Flankenplazierungsdatenfolgen
34, 36, um von dem Präzisionstaktungsblock 38 auferlegten
Taktungsbeschränkungen Rechnung zu tragen. Jedes Systemzittern
(Jitter) wird verringert, indem die Datenfolgen 34, 36 zu dem
Haupttakt 45 in den UND-Gattern 50, 52 ausgerichtet werden.
Im Fall eines Betriebs im NRZ-Format wird ein NRZ-Steuersignal
an ein logisches "ODER"-Gatter 48 geführt, wo es den Gatter
steuertakt 62 gattersteuert, wodurch ein logisches UND-Gatter
50 gesetzt wird. Als Folge wird die nichtgattergesteuerte
Vorderflankenplazierungsdatenfolge 58 von dem Gattersteuertakt
62 nicht gattergesteuert, was bewirkt, daß jeder beliebige
Impuls in der Vorderflankenplazierungsdatenfolge 34 eine
unverkürzte Haltezeit hat. Dieses Ergebnis ist erforderlich,
um von dem Präzisionstaktungsblock 38 auferlegten
Taktungsanforderungen gerecht zu werden, da im NRZ-Modus das
programmierbare Dominanz-Flipflop mit RS-Tastung als
Latchspeicher des D-Typs betrieben wird.
Gemäß Fig. 4 besteht der Mustererzeugungsblock 44 aus zwei
Gatter-Anordnungen: dem Mustererzeugungschip 64 und dem Anord
nungssteuerchip 66. Der Anordnungssteuerchip 66 ist eine im
Handel erhältliche feldprogrammierbare Gatteranordnung, welche
logische Konfigurationen auf der Grundlage einer Programmie
rung erstellt, welche vom Anmelder bei der Herstellung des
Datenerzeugungsprüfsystems 18 durchgeführt wurde. Vorzugsweise
ist der Anordnungssteuerchip 66 eine feldprogrammierbare
Gatteranordnung der Xilinx XC3000-Familie.
Der Anordnungssteuerchip 66 empfängt Anweisungen vom Mikro
prozessor 20, welche der Datensignalprogrammierung des
Benutzers entsprechen. Der Anordnungssteuerchip 66 fungiert,
allgemein ausgedrückt, als kanalresidente Steuerungsschaltung,
welche den MPU-Datenbus 24 und den Mustererzeugungschip 64
verbindet und beispielsweise den Mustererzeugungschip 64
steuert, um die Wiederinitialisierung zwischen Datenbursts zu
beschleunigen.
Der Mustererzeugungschip 64 ist eine ECL-Gatteranordnung, die,
allgemein gesagt, als Steuerung des RAM-Chips 42 fungiert
(Auslesen und Einschreiben von Daten in den RAM-Chip 42 gemäß
Anweisungen des Mikroprozessors 20) und als Wandler von Daten
vom RAM-Chip 42 zu Flankenplazierungsdaten.
Der Mustererzeugungschip 64 erzeugt intern sogenannte Kandida
tenimpulse entsprechend der Vorderflanke möglicher Daten
impulse und Kandidatenimpulse entsprechend den Hinterflanken
möglicher Datenimpulse. Als Kandidaten werden diese Impulse
von dem Mustererzeugungschip 64 gemäß Datenbits vom RAM-Chip
42 ausgegeben, die vom Benutzer programmierten Perioden, der
vom Benutzer programmierten Taktung und Formatierung und der
Vorgeschichte der Flankenplazierungsdaten entsprechen. Allge
mein ausgedrückt: wenn das Datenbit für eine vom Benutzer pro
grammierte Periode ein Signalpegel "1" ist, dann verwendet der
Mustererzeugungschip 64 die Kandidatenimpulse zur Ausgabe (i)
eines Vorderflankenplazierungsdatenimpulses, welcher grob
innerhalb von der vom Benutzer programmierten Periode getaktet
ist, gemäß einer vom Benutzer programmierten Vorderflankenver
zögerung, und (ii) eines Hinterflankenplazierungsdaten
impulses, vorausgesetzt, daß die vom Benutzer programmierte
Hinerflankenverzögerung des Datenimpulses zusammen mit der
Vorderflankenverzögerung zeitlich weniger beträgt als die vom
Benutzer programmierte Periode.
Für jede der Vorder- und Hinterflankenplazierungsdatenfolgen
34, 36 gibt der Mustererzeugungschip 64 höchstens einen Impuls
in jeder vom Benutzer programmierten Periode aus. Jeder solche
Impuls liegt mit seiner ansteigenden Flanke auf der Grenze
zwischen zwei Perioden des Haupttaktes 45 und bleibt für die
Dauer dieser Periode des Haupttaktes 45 hoch. Da eine vom Be
nutzer programmierte Periode allgemein aus einem verketteten
Vielfachen von Perioden des Haupttaktes 45 besteht und nur
eine Periode des Haupttaktes 45 von dem Impuls eingenommen
wird, fügt der Mustererzeugungschip 64 für alle anderen Haupt
taktperioden der vom Benutzer programmierten Periode ver
schachtelt Signalpegel-"0"en in die Flankenplazierungsdaten
folge ein. Als Ergebnis dieser Flankenplazierungsfunktion er
zielt der Mustererzeugungschip 64 eine grobe Taktung mit einer
Genauigkeit von innerhalb einer Periode des Haupttaktes 45.
Im Betrieb mit dem RAM-Chip 42 und dem Wandlerchip 46 erzeugt
der Mustererzeugungsblock 44 bei jeder abfallenden Flanke des
Untertaktes 47 ein Byte Flankenplazierungsdaten. Von jedem
derartigen Byte besteht ein Halbbyte aus Vorderflankenplazie
rungsdaten und das andere Halbbyte aus Hinterflankenplazie
rungsdaten. Jedes solche Halbbyte umfaßt die nächsten vier
Datenbits, die in den Wandlerchip 46 zu laden sind, damit sie
auf vier aufeinanderfolgenden Haupttaktzyklen von diesem Chip
ausgegeben werden. Jedes Bit in jedem solchen Halbbyte ist
eines von 2n solchen Bits, die vom Wandlerchip 46 für jedes
Datenbit im RAM-Chip 42 ausgegeben werden - wobei jede vom
Benutzer programmierte Periode einem solchen Datenbit ent
spricht und aus der Verkettung von 2n Zyklen des Haupttaktes
45 aufgebaut werden, wie es obenstehend erläutert ist.
Nach allen 2, 4, 8 . . . 256 Unterzyklen erzeugt der Mustererzeu
gungsblock 44 eine neue Adresse in den, und liest Daten aus
dem, RAM-Chip 42 aus, und zwar in Abhängigkeit von der Anzahl
von Zyklen des Haupttaktes 45, welche verkettet sind, um die
vom Benutzer programmierbare Periode aufzubauen. Im schnell
sten Betrieb beträgt zum Beispiel die vom Benutzer program
mierbare Periode eine Periode des Haupttaktes 45 (d. h. n ist
gleich Null für den Skalierungsfaktor 211) und daher wird ein
Datenbit im RAM-Chip 42 pro Zyklus des Haupttaktes 45 ausge
geben. In diesem Fall liest der Mustererzeugungsblock 44 Daten
in Bytes aus dem RAM-Chip 42 aus, gibt jedoch Flankenplazie
rungsdaten in Halbbytes aus; dementsprechend liest der Muster
erzeugungsblock 44 Daten nur einmal alle zwei Zyklen des Un
tertaktes 47 aus, oder äquivalent einmal alle acht Zyklen des
Haupttaktes 45. Bei anderen Betriebsfrequenzen ist die vom Be
nutzer programmierbare Periode ein quadratisches Vielfaches
von Zyklen des Haupttaktes 45, wodurch der Mustererzeugungs
block 44 Daten auf einer schnell feststellbaren Grundlage von
quadratischen Vielfachen von Zyklen des Untertaktes 47
auslesen muß.
Die Flankenplazierungsdatenfolgen 34, 36, wie sie vom Forma
tierblock erzeugt sind, werden von den logischen "UND"-Gattern
50, 52 an den Präzisionstaktungsblock 38 geführt. Die Flanken
plazierung auf eine gewünschte Genauigkeit wird in diesem Prä
zisionstaktungsblock 38 bewirkt. Der Präzisionstaktungsblock
umfaßt einen Block 68 zur Verzögerung der Vorderflanke, einen
Block 70 zur Verzögerung der Hinterflanke, einen vorderen
Digital-/Analog-Wandler 72, einen hinteren Digital-/Analog-
Wandler 74, einen Analog-/Digital-Wandler 76, ein 8-Bit-TTL-
Register 78 und einen programmierbaren Dominanz-Flipflop-Latch
80 mit RS-Tastung.
Jeder Verzögerungsblock 68, 70 umfaßt eine einzelne Verzöge
rungsleitung und einen programmierbaren Verzögerungschip. Vor
zugsweise ist der programmierbare Verzögerungschip ein pro
grammierbarer Verzögerungschip 100E196 von Motorola, der bei
zwei Auflösungspegeln eine hochgradig genaue Flankenplazierung
erstellt. Die Verzögerungsleitung erzeugt die größte Auf
lösung unter den Präzisionsverzögerungen, und ihre Verzögerung
wird hierin als "Shim" ("grobe Einheit") bezeichnet. Der
Motorola-Chip erzeugt Verzögerungen mit mittlerer Auflösung,
wobei solche Verzögerungen hierin als "Slivers" ("Splitter")
bezeichnet sind. Er erzeugt auch Verzögerungen der feinsten
Auflösungen, die hierin als "Verniers" ("Feinsteinheiten")
bezeichnet sind.
Wie voranstehend erläutert, erzeugt der Formatierblock 32 im
Betrieb eine Flankenplazierung innerhalb einer Genauigkeit von
einem Zyklus des Haupttaktes 45. Die Verzögerungsblöcke 68, 70
sind so aufgebaut, daß sie zusätzliche Verzögerungen erstel
len, unter Verwendung von drei Quellen inkrementeller Auflö
sung, welche - in verschiedenen Kombinationen der drei - Ver
zögerungen im Bereich von Null bis einem Haupttaktzyklus
erstellen.
In der bevorzugten Ausführungsform liegt der Zyklus des Haupt
taktes 45 in seiner Periode im Bereich von 1,54 Nanosekunden
bei einer Frequenz von 650 MHz bis 3,08 Nanosekunden bei einer
Frequenz von 325 MHz. Bei einer Fertigungstoleranz von 200
Pikosekunden beträgt die gröbste Flankenplazierungsgenauigkeit
ca. 3,30 Nanosekunden. Um einen Verzögerungsbereich von 0 bis
3,30 Nanosekunden in dem Verzögerungsblock 68, 70 mit feinster
Auflösung von wenigstens ca. 5 Pikosekunden zu erzielen, er
stellt jede Verzögerungsleitung ein "Shim" von 1,8 Nanosekun
den, erstellt jeder Motorola-Chip "Slivers" von 20 Pikosekun
den und erstellt auch "Verniers" von 0,1 Pikosekunden. Der
Groberzeugungsteil des Motorola-Chips arbeitet mit der Nomi
nalverzögerung des Chips, wie sie von Motorola festgelegt
wurde. Die Feinsteinheiten des Motorola-Chips sind so abge
stimmt, daß er die "Vernier"-Verzögerung erstellt, gemäß der
Spezifikationen des Chips, durch Anlegen einer Analogspannung,
die vom entsprechenden Digital-/Analog-Wandler 72, 74 erzeugt
wird. Die Wandler 72, 74 empfangen die in die Analogspannungen
umgewandelten digitalen Daten über einen internen Datenbus 73,
welcher die Wandler 72, 74 mit dem Mustererzeugungsblock 44
und dem MPU-Bus 24 verbindet.
Um eine Genauigkeit bei der Flankenplazierung zu erhalten, muß
das Datenerzeugungsprüfsystem kalibriert sein. In der bevor
zugten Ausführungsform muß die mit jeder Anzapfposition der
programmierbaren Verzögerungschips von 100E196 Motorola ver
bundene genaue Verzögerungszeit gemessen werden. Die analogen
Verzögerungsleitungen müssen ebenfalls ausgewertet werden, um
festzustellen, wieviel Verzögerung sie erzeugen. Außerdem muß
die absolute Verzögerung durch jeden Kanal im Datenerzeugungs
prüfsystem bestimmt und gespeichert werden.
Um die mit einer Verzögerungsleitung verbundenen "Shim"-Ver
zögerungen und die mit jedem programmierbaren Verzögerungschip
100E196 von Motorola verbundenen "Sliver"- und "Vernier"-Ver
zögerungen zu messen, instruiert der Mikroprozessor 20 zu
nächst den Mustererzeugungsblock 44 dahingehend, eine Serie
von Datenimpulsen mit inkrementellen Tastverhältnissen zu
erzeugen. In Fig. 3 wird der auf der Platine befindliche
Analog-/Digital-Wandler 76 mit niedriger Geschwindigkeit dazu
verwendet, die durchschnittliche Ausgangsspannung solcher
Datenimpulse zu messen, welche sehr nahe dem zeitgemittelten
Durchschnitt der hohen Pegel und der niedrigen Pegel in sol
chen Datenimpulsen sein wird. Diese Messungen, mit der Genau
igkeit des Haupttaktes 45, ermöglichen die Bestimmung eines
Verhältnisses zwischen einer Impulsbreitenveränderung und
der durchschnittlichen Ausgangsspannung.
Als nächstes wird der Mustererzeugungsblock 44 von dem Mikro
prozessor 20 dahingehend instruiert, einen Datenimpuls mit
einem Tastverhältnis von 50% zu erzeugen. Indem grobe Verzö
gerungen (gleich einem Haupttaktzyklus), "Shim" -Verzögerungen,
"Sliver" -Verzögerungen oder "Vernier" -Verzögerungen eingefügt
werden und dann die durchschnittliche Spannung nach jeder sol
chen Einfügung gemessen wird und unter Verwendung des oben
abgeleiteten Breiten-Spannungs-Verhältnisses kann ein präziser
Wert einer jeden solchen Verzögerung ermittelt werden. Die
Prozedur kann dazu verwendet werden, die Verzögerung einer je
den Anzapfeinstellung in den Motorola-Chips zu messen. Wenn
der Mikroprozessor 20 diese Messungen durchführt, dann spei
chert er alle Ergebnisse in einer Tabelle, so daß geeignete
Werte ausgewählt werden können, um zukünftige Befehle der
Bedienungsperson auszuführen.
Die präzise Kalibrierung von Impulsbreite, oder Bitversatz von
Vorder- zu Hinterflanke, kann erzielt werden, indem ein Impuls
erstellt wird, der ein (gefordertes) Tastverhältnis von 50%
hat, der durchschnittliche Spannungsausgang gemessen wird, der
Impulse unter Verwendung des programmierbaren Dominanz-Flip
flops 80 mit RS-Tastung invertiert wird, wie voranstehend
erläutert, und der durchschnittliche Spannungsausgang wiederum
gemessen wird. Stimmen die Ergebnisse beider Messungen
überein, dann beträgt das Tastverhältnis genau 50%. Stimmen
die Ergebnisse nicht überein, dann kann der Bitversatz von
Vorder- zu Hinterflanke berechnet und sein Wert als Kalibrie
rungskonstante für diesen Kanal gespeichert werden.
Um die absoluten Verzögerungen der verschiedenen Kanäle in dem
Datenerzeugungsprüfsystem auszurichten, wird ein anderes Ver
fahren verwendet. Der Kalibrierungseingang auf der Zeitbasis
karte 22 hat eine Vorrichtung zur Bestimmung, ob die Eingänge,
die sie überwacht, zu einem sehr genau gesteuerten Zeitpunkt
hoch oder niedrig sind. Obgleich diese Zeit nicht einstellbar
ist und die Eingänge nur einmal pro Prüfung gemessen werden,
ist es bei dieser Bestimmung und der Einstellbarkeit eines
jeden Kanals möglich, alle Ausgänge zeitlich genau miteinander
auszurichten. Die Verzögerung eines jeden auszurichtenden
Kanals ist auf einen niedrigen Wert eingestellt, so daß eine
Bezugsflanke eindeutig vor der Abtastzeit des Kalibrierungs
eingangs liegt. Die Verzögerung wird erhöht, bis der nie
drigste Verzögerungswert gefunden wird, der später als der
Abtastpunkt auftritt. Diese Verzögerung wird als Kalibrie
rungskonstante für diesen Kanal aufgezeichnet.
Das programmierbare Dominanz-Flipflop 80 mit RS-Tastung
empfängt die Vorderflanken- bzw. Hinterflankenplazierungs
datenimpulse jeweils von den Verzögerungsblöcken 68 bzw. 70
und erzeugt einen Ausgangsimpuls, der an den Ausgangsblock 40
angelegt wird. Der Ausgangsblock 40 umfaßt einen Pin-Treiber 82
und zwei Digital-/Analog-Wandler 84, 86. Der Pin-Treiber 82
gibt das digitale Signal an das DUT 16 aus. Die Digital-/Ana
log-Wandler 84, 86, die von den Daten auf dem internen Daten
bus 73 getrieben werden, konfigurieren den Spannungspegel und
die Stromtreibfähigkeiten des Pin-Treibers.
Gemäß Fig. 5a und b besteht der in Fig. 4 gezeigte Muster
erzeugungschip 64 vorzugsweise aus einer integrierten Schal
tung, insbesondere einer Gatteranordnungsschaltung, welche mit
der Geschwindigkeit des Haupttaktes 45 arbeitet und ein Bit
Vorderflankenplazierungsdaten und ein Bit Hinterflankenpla
zierungsdaten pro Zyklus des Haupttaktes 45 erzeugt. In der
bevorzugten Ausführungsform umfaßt der Mustererzeugungschip 64
einen Zykluszählerblock 87, einen Hinterflankenvergleichsblock
88, einen logischen Block "DONE" 89, einen RAM-Adreßzähler
block 91, einen RAM-Datenlatch- und Verschiebeblock 92, einen
"TRAIL MASK PIPE"-Block 93, einen "TOP LEVEL"-Block 94 und
einen Vorderflankenunterdrückungsblock 95.
Der Mustererzeugungschip 64 umfaßt weiterhin einen Ausgangs
schaltungsaufbau und einige Anweisungseingaberegister. Der
Ausgangsschaltungsaufbau umfaßt einen Ausgangsflipflop 96 und
einen Ausgangsmultiplexer 97. Die Eingangsregister umfassen:
ein TRAILCMP-Register 250, ein WIDTHLP-Register 252, ein
DATALP-Register 254, ein MASKCON-Register 256, ein Register
258 zum erneuten Laden der Adresse und ein Register 262 für
späte Hinterflanken. In jedes derartige Register wird eine
Anweisung von dem Mikroprozessor 20 gemäß einer Benutzerpro
grammierung geladen.
Der Zykluszählerblock 87 empfängt einen Vorladewert von dem
Mikroprozessor 20, welcher die Zeit ermittelt, die auf den
Anfang einer vom Benutzer programmierten Periode folgt, bei
der ein Vorderflankenkandidatimpuls erzeugt wird. Der im
WIDTHLP-Register 252 zusammen mit der Frequenz des Haupttaktes 45
abgelegte Wert informiert den Mustererzeugungschip darüber,
was die vom Benutzer programmierte Periode ist, in Form einer
Anzahl von Haupttaktzyklen. Der in das TRAILCMP-Register 250
abgelegte Wert teilt dem Mustererzeugungschip die Auftritts
zeit mit, die auf einen Vorderflankenkandidatenimpuls folgt,
und daß der Hinterflankenkandidatenimpuls erzeugt werden soll.
Eine "1" oder eine "0" wird in das Register 262 der späten
Hinterflanke gesetzt, um festzustellen, ob der Hinterflanken
kandidatenimpuls um einen Haupttaktzyklus verzögert werden
soll oder nicht, wie es von dem Ausgangsflipflop 96 und dem
Ausgangsmultiplexer 97 gesteuert wird, um Verzögerungsbe
schränkungen im Präzisionstaktungsblock 38, wie nachstehend
ausgeführt, Rechnung zu tragen.
Das DATALP-Register 254 empfängt einen Wert, der in Situatio
nen verwendet wird, in denen ein Tastverhältnis von mehr als
100% erzeugt werden soll. Dieser Wert informiert den Muster
erzeugungschip darüber, wieviele Haupttaktzyklen sich in einem
Impuls mit erweiterter Breite befinden, d. h. was das Tastver
hältnis ist. Der Wert in dem MASKCON-Register 256 teilt dem
Mustererzeugungschip mit, daß er einen ungültigen Hinterflan
kenkandidatenimpuls unterdrücken soll, um einen Datenimpuls
mit erweiterter Breite zu ermöglichen. Die Daten von dem RAM
42 werden in den Mustererzeugungschip geladen, beginnend mit
der in dem Register 258 zum erneuten Laden der Adresse
abgelegten Adresse.
Der Zykluszählerblock 87 umfaßt einen Zählermultiplexer 260,
einen Zykluszähler 262 und einen Vorderflankenkomparator 264.
Der Zählermultiplexer 260 hat einen Steuereingang von der Aus
wahllogik 266, Dateneingänge vom DATALP-Register 254, dem
WIDTHLP-Register 252 und dem Mikroprozessor 20, und einen Aus
gang, welcher dem Zykluszähler 262 zugeführt wird. Der Zyklus
zähler 262 wird von dem Haupttakt 45 getaktet. Die Zählung des
Zykluszählers 262 wird als erster Eingang dem Vorderflanken
komparator 264 zugeführt. Der Vorderflankenkomparator 264 hat
einen zweiten Eingang vom WIDTHLP-Register 252 und einen Aus
gang. Der Ausgang vom Vorderflankenkomparator 264 wird als
erster Eingang an den TOP LEVEL Block 94 angelegt.
Die Zählung des Zykluszählers 262 wird ebenfalls als erster
Eingang an den Hinterflankenvergleichsblock 88 gelegt. Der
Hinterflankenvergleichsblock 88 hat einen zweiten Eingang vom
TRAILCMP-Register 250 und einen Ausgang. Der Ausgang des
Hinterflankenvergleichsblocks 88 wird als zweiter Eingang dem
TOP LEVEL Block 94 zugeführt.
Im Betrieb erzeugen der Zykluszählerblock 87 und der Hinter
flankenvergleichsblock 88 Vorderflanken- und Hinterflanken
kandidatenimpulse, erstellen die vom Benutzer programmierte
Periode als Vielfaches der Periode des Haupttaktes 45 und
unterbrechen die Erzeugung von Hinterflankenkandidaten
impulsen, wann immer die Benutzerprogrammierung Datenimpulse
mit erweiterter Breite vorsieht (d. h. Datenimpulse mit Tast
verhältnissen von mehr als 100%).
Bei der Erzeugung von Vorderflankenkandidatenimpulsen, welche
keine Datenimpulse mit erweiterter Breite vorsehen, wählt die
Auswahllogik 266 als Ausgang von dem Multiplexer 260 den vom
WIDTHLP-Register 252 zugeführten Eingang aus. Das WIDTHLP-
Register 252 enthält einen vom Mikroprozessor 20 errechneten
Wert, welcher bei Subtraktion von der Endzählung des Zyklus
zählers 262, plus 1, gleich der Anzahl von Zyklen des Haupt
taktes 45 ist, die zum Aufbau der vom Benutzer programmierten
Periode verkettet sind. Wird dieser Wert vom Multiplexer 260
ausgegeben und in den Zykluszähler 262 geladen, dann wird er
von dem Zykluszähler 262 als erster Eingang an den Vorderflan
kenkomparator 264 ausgegeben; gleichzeitig wird dieser Wert
von dem WIDTHLP-Register 252 als zweiter Eingang dem Vorder
flankenkomparator 264 zugeführt. Dadurch vergleicht der
Vorderflankenkomparator 264 den Inhalt des WIDTHLP-Registers
252 mit dem Ausgang des Zykluszählers 262 und gibt infolge
dessen einen Signalpegel "1" aus, wenn die Zählung mit dem
Modus des WIDTHLP-Registers gleich Null ist. Dieser
Signalpegel "1" umfaßt einen Vorderflankenkandidatenimpuls.
Somit zählt der Zykluszähler 262 mit jedem Zyklus des Haupt
taktes 45 hoch, bis er seine Endzählung erreicht, woraufhin
der Zykluszähler 262 den Inhalt des WIDTHLP-Registers 252
erneut lädt und der Vorderflankenkomparator 264 einen weiteren
Vorderflankenkandidatenimpuls ausgibt, und sich der Vorgang
wiederholt. Außer bei erneutem Laden des Zykluszählers 262
oder bei Wahl einer erweiterten Breite ist der Ausgang des
Vorderflankenkomparators 264 Signalpegel "0".
Der Zykluszählerblock 87 und der Hinterflankenvergleichsblock
88 erzeugen zusammen Hinterflankenkandidatenimpulse. Wenn er
keine Datenimpulse mit erweiterter Breite vorsieht, dann ver
gleicht der Hinterflankenvergleichsblock 88 seine zwei Ein
gänge: den Zählausgang des Zykluszählers 262 und den Inhalt
des TRAILCMP-Registers 250. Der Ausgang des Hinterflankenver
gleichsblockes 88 ist ein Signalpegel "0", es sei denn, die
Zählung und der Inhalt stimmen überein, woraufhin der Ausgang
ein Signalpegel "1" ist, der einen Hinterflankenkandidaten
impuls umfaßt. Obwohl Vorderflankenkandidatenimpulse stets bei
erneutem Laden des Zykluszählers 262 auftreten, können Hinter
flankenkandidatenimpulse bei jeder Zählung des Zykluszählers
262 auftreten, wie sie durch den Inhalt des TRAILCMP-Registers
250 bestimmt wurde.
Der Zykluszählerblock 87 erstellt die vom Benutzer program
mierte Periode, indem er vor der Erzeugung des ersten Vorder
flankenkandidatenimpulses eine Bitversatzverzögerung erzeugt.
Bei Erzeugung der Bitversatzverzögerung wählt die Auswahllogik 266
zur Ausgabe von dem Zählermultiplexer 260 den vom Mikro
prozessor 20 zugeführten Eingang. Dieser Eingang ist eine
Datenanweisung, welche den Zykluszähler 262 mit einem Wert
vorlädt, welcher bei Subtraktion von der Endzählung des Zyk
luszählers 262, gleich der Anzahl von Zyklen des Haupttaktes
45 ist, die die Zeit zwischen dem Beginn der vom Benutzer
programmierten Periode und einem jeden Datenimpuls umfassen,
auf eine Genauigkeit von innerhalb eines Zyklus des Haupt
taktes 45. Die Erzeugung dieser Bitversatzverzögerung erstellt
die vom Benutzer programmierte Periode für die Kandidaten
impulse, da jeder Vorderflankenkandidatenimpuls bei erneutem
Laden des Zykluszählers 262 erzeugt wird und da der Zyklus
zähler 262 so wiedergeladen wird, daß die Anzahl von Zyklen
des Haupttaktes 45 zwischen den erneuten Ladevorgängen gleich
der Anzahl von Zyklen des Haupttaktes 45 ist, die zum Aufbau
der vom Benutzer programmierbaren Periode verkettet sind.
Der Zykluszählerblock 87 unterbricht auch die Erzeugung von
Hinterflankenkandidatenimpulsen, wann immer eine Benutzer
programmierung Datenimpulse mit erweiterter Breite (d. h.
Datenimpulse mit Tastverhältnissen, welche 100% überschreiten)
im RZ-Modus vorsieht und ändert hierbei die Erzeugung von Vor
derflankenkandidatenimpulsen. Um eine erweiterte Breite zu er
stellen, werden sowohl das WIDTHLP-Register 252 als auch das
DATALP-Register 254 beim erneuten Laden des Zykluszählers 262
verwendet. Wie bei der Erzeugung von Datenimpulsen von nicht
erweiterter Breite enthält das WIDTHLP-Register 252 einen
Wert, der bei Subtraktion von der Endzählung des Zykluszählers
262, plus 1, gleich der Anzahl von Zyklen des Haupttaktes 45
ist, die zum Aufbau der vom Benutzer programmierten Periode
verkettet sind. Das DATALP-Register 254 enthält einen Wert,
der bei Subtraktion von der Endzählung des Zykluszählers 262,
plus 1, gleich der ganzzahligen Anzahl von Zyklen des Haupt
taktes 45 ist, welche beim Aufbau der Vielzahl von vom Be
nutzer programmierbaren Perioden des Datenimpulses mit erwei
terter Breite verkettet sind. Die Auswahllogik 266 wählt beim
erneuten Laden des Zykluszählers 262 zwischen den beiden Re
gistern 252, 254 aus: (i) der Eingang vom DATALP-Register 254
wird ausgewählt, wenn das Datenbit von dem RAM-Chip 42, das
einem erneuten Laden entspricht, ein Signalpegel "1" ist, oder
(ii) der Eingang vom WIDTHLP-Register 252 wird ausgewählt,
wenn beide Datenbits, die einem erneuten Laden entsprechen,
ein Signalpegel "0" sind und das erneute Laden von dem Zyk
luszähler 262 bei Erreichen seiner Endzählung getriggert wird.
Es wird als Beispiel angenommen, daß der Benutzer Datenimpuls
breiten gleich zweieinhalb Mal der vom Benutzer programmierten
Periode programmiert und daß die ersten sechs Datenbits
"101000" sind. In diesem Fall enthält das WIDTHLP-Register 252
einen Wert, der der Anzahl von Zyklen des Haupttaktes 45 in
der vom Benutzer programmierbaren Periode entspricht, und das
DATALP-Register 254 enthält einen Wert, der der Anzahl von
Zyklen des Haupttaktes 45 in drei vom Benutzer programmier
baren Perioden entspricht (d. h. die Breite des erweiterten
Impulses in vom Benutzer programmierbaren Perioden wird auf
die nächste ganze Zahl aufgerundet). Nachdem eine geeignete
Bitversatzverzögerung erzeugt wurde, und da das erste Datenbit
ein Signalpegel "1" ist, wählt die Auswahllogik 266 zur Aus
gabe von dem Zählermultiplexer 260 den vom DATALP-Register 254
zugeführten Eingang aus, wodurch der Inhalt des DATALP-Regis
ters 254 in den Zykluszähler 262 geladen wird. Der so geladene
Inhalt wird von dem Vorderflankenkomparator 264 mit dem Inhalt
des WIDTHLP-Registers 252 verglichen. Obwohl der Inhalt der
Register 252, 254 bei den höchstwertigen Bits nicht überein
stimmt, ist der Vorderflankenkomparator so aufgebaut, daß er
die höchstwertigen Bits ignoriert und der Vorderflankenkompa
rator 264 daher einen Vorderflankenkandidatenimpuls ausgibt.
Der Zykluszähler 262 zählt danach bei jedem Zyklus des Haupt
taktes 45 und diese Zählung ergibt einen Ausgang vom Vorder
flankenkomparator 264 des Signalpegels "0", bis die Anzahl von
verstrichenen Zyklen des Haupttaktes 45 gleich der Anzahl von
Zyklen des Haupttaktes 45 in der vom Benutzer programmierbaren
Periode ist. Bei diesem Ereignis gibt der Vorderflankenkompa
rator 264 einen zweiten Vorderflankenkandidatenimpuls aus, da
die niedrigstwertigen Bits aufeinander abgestimmt sind. Der
Zykluszähler 262 wird nicht wieder geladen, da das ent
sprechende Datenbit ein Signalpegel "0" ist.
Der Zykluszähler 262 zählt daraufhin weiter bei jedem Zyklus
des Haupttaktes 45 hoch und die Zählung ergibt einen Ausgang
des Signalpegels "0" vom Vorderflankenkomparator 264, bis die
Anzahl verstrichener Zyklen des Haupttaktes 45 wiederum gleich
der Anzahl von Zyklen des Haupttaktes 45 in der vom Benutzer
programmierbaren Periode ist. In diesem Fall gibt der Vorder
flankenkomparator 264 einen dritten Vorderflankenkandidaten
impuls aus und, da das Datenbit, welches der Erzeugung des
Kandidatenimpulses entspricht, ein Signalpegel "1" ist, lädt
sich der Zykluszähler 262 wieder. Für ein derartiges erneutes
Laden ist die Auswahllogik 266, wie bereits oben erläutert, so
aufgebaut, daß sie das DATALP-Register 254 als Ausgang von dem
Zählermultiplexer 260 auswählt.
Danach zählt der Zykluszähler 262 eine Anzahl von Zyklen des
Haupttaktes 45 hoch, die zwei vom Benutzer programmierbaren
Perioden entspricht, und der Vorderflankenkomparator erzeugt
zwei zusätzliche Vorderflankenkandidatenimpulse entsprechend
den nächsten zwei Datenbits des Signalpegels "0". Da der
Zykluszähler 262 für Datenbits des Signalpegels "0" nicht
wieder geladen wird, kommt die Zählung somit innerhalb einer
vom Benutzer programmierbaren Periode der Endzählung an, wobei
der Hinterflankenkandidatenimpuls innerhalb dieses Bereiches
von dem Hinterflankenvergleichsblock 88 auf die oben erläu
terte Art und Weise erzeugt wird. Da die Erzeugung des Hin
terflankenkandidatenimpulses kein erneutes Laden bewirkt,
zählt der Zykluszähler 262 weiter bis zu seiner Endzählung
hoch, woraufhin der Vorderflankenkomparator 264 den Vorder
flankenkandidatenimpuls entsprechend dem letzten Datenbit in
der Beispielssequenz erzeugt. Da dieses letzte Bit ein Signal
pegel "0" ist und die Endzählung erreicht ist, wählt die Aus
wahllogik 266 beim erneuten Laden des Zykluszählers 262 den
Eingang von WIDTHLP aus. Obgleich das Ende der Daten erreicht
ist, zählt der Zykluszähler 262 weiter, wodurch sowohl Vorder-
als auch Hinterflankenkandidatenimpulse erzeugt werden, welche
von dem Mustererzeugungschip 64 unterdrückt werden, wie nach
stehend ausgeführt ist. Diese Erzeugung ungültiger Kandidaten
impulse tritt auf, ganz gleich, ob der Zykluszählerblock 87
Datenimpulse mit erweiterter oder mit nicht-erweiterter Breite
vorsieht.
Daher unterbricht der Zykluszählerblock 87 die Erzeugung von
Hinterflankenkandidatenimpulsen, indem er beim Neuladen des
Zykluszählers 262 zwischen dem WIDTHLP-Register 252 und dem
DATALP-Register auswählt, um das Hineinzählen in den Bereich
ganz oben im Zykluszähler 262 zu verschieben, welcher einer
vom Benutzer programmierbaren Periode entspricht. Die Erzeu
gung von Vorder- und Hinterflankenplazierungsdatenimpulsen für
Datenimpulse mit erweiterter Breite ist nachstehend in der
Erläuterung des "TRAIL MASK PIPE"-Blocks 93 weiter ausgeführt.
Die vom Vorderflankenkomparator 264 ausgegebenen Vorderflan
kenkandidatenimpulse werden als erster Eingang des TOP LEVEL-
Blocks 94 an ein erstes Flipflop 270 geleitet. Die vom Hinter
flankenvergleichsblock 88 ausgegebenen Hinterflankenkandida
tenimpulse werden als zweiter Eingang des TOP LEVEL-Blocks 94
an ein zweites Flipflop 268 geleitet. Die Flipflops 268, 270
werden vom Haupttakt 45 getaktet. Der Ausgang des zweiten
Flipflops 268 wird dem TRAIL MASK PIPE-Block 93 zugeführt. Der
Ausgang des ersten Flipflops 270 wird dem RAM-Adreßzählerblock
91, dem RAM-Datenlatch- und -verschiebeblock 92 und dem
Vorderflankenunterdrückungsblock 95 zugeführt. Die Flipflops 268, 270
resynchronisieren jeden Kandidatenimpuls auf den
nächsten Zyklus des Haupttaktes 45, wodurch Ausbreitungs
verzögerungen, die bei der Erzeugung von Kandidatenimpulsen
inhärent sind, überwunden wenden.
Der RAM-Adreßzählerblock 91 umfaßt einen ersten Eingang eines
ersten Flipflops 270 des TOP LEVEL-Blockes 94, einen zweiten
Eingang vom Register 258 zum erneuten Laden der Adresse, einen
Takteingang vom Haupttakt 45, einen ersten Ausgang an den RAM-
Chip 42 und einen zweiten Ausgang an den logischen Block DONE
89. Gemäß Fig. 6, welche zusätzliches strukturelles Detail
zeigt, umfaßt der RAM-Adreßzählerblock 91 weiterhin einen
Adreßzähler 272, einen Komparator 274 und ein Speicherende
register 276. Der Adreßzähler 272 wird von dem Auftreten eines
Vorderflankenkandidatenimpulses freigegeben, welcher vom TOP
LEVEL Block 94 zugeführt wurde und daher zählt der Zähler 272
nur einmal pro vom Benutzer programmierter Periode. Bei derar
tiger Freigabe zählt der Adreßzähler 274 bei jedem Zyklus des
Haupttaktes 45 von dem vom Adressen-Neulade-Register 258
geladenen Wert hoch. Eine jede derartige Zählung entspricht
einer Adresse im RAM-Chip 42 und wird dementsprechend vom
Adreßzähler 274 zur Adressierung von Datenbits ausgegeben,
welche vom RAM-Chip 42 gespeichert sind. Eine jede derartige
Zählung wird auch vom Adreßzähler 272 an den Komparator 274
ausgegeben, wo eine solche Zählung mit dem Wert verglichen
wird, welcher dem Komparator 274 vom Speicherenderegister 276
eingegeben wird. Stimmt die Zählung mit dem Wert vom Spei
cherenderegister 276 überein, dann gibt der Komparator 274
einen Signalpegel "1" aus, welcher (i) dem Adreßzähler 272
zugeführt wird, um ein Neuladen vom Adressenneuladeregister
258 zu triggern, und (ii) als Ausgang des RAM-Adreßzähler
blockes 91 dem logischen Block DONE 89 zugeführt wird.
Die vom Adreßneuladeregister 258 gespeicherten Werte werden
vom Mikroprozessor 20 bereitgestellt und entsprechend der vom
Benutzer programmierten Folge durch die im RAM-Chip 42 gespei
cherten Datenbits. In der bevorzugten Ausführungsform sind
wenigstens zwei Werte im Adressenneuladeregister 258 gespei
chert: der erste Wert identifiziert die Adresse des ersten
Datenbits und der zweite Wert identifiziert die Adresse, auf
der der RAM-Adreßzählerblock 91 stehen wird, nachdem er alle
Daten vom ersten Datenbit bis zum Ende des Speicherdatenbits
zum Zwecke der Schleifenbildung adressiert hat. Das Speicher
enderegister 276 ist vorzugsweise auf die oberste Adresse des
RAM-Chips 42 eingestellt.
Allgemein verläuft der RAM-Adreßzählerblock 91 sequentiell
durch die Adressen der im RAM-Chip 42 gespeicherten Datenbits
gemäß der vom Benutzer programmierten Folge und setzt ein
Flagbit, um den logischen Block DONE 89 zur Ausgabe zu
veranlassen.
In Fig. 5 wiederum umfaßt der RAM-Datenlatch- und -verschiebe
block 92 einen ersten Eingang vom ersten Flipflop 270 des TOP
LEVEL-Blocks 94, einen zweiten Eingang vom RAM-Chip 42, einen
Takteingang vom Haupttakt 45, einen ersten Ausgang an den
Vorderflankenunterdrückungsblock 95 und einen zweiten Ausgang
an den TRAIL MASK PIPE-Block 93. Der RAM-Datenlatch- und
-verschiebeblock wird durch das Auftreten eines Vorder
flankenkandidatenimpulses freigegeben, welcher vom ersten
Flipflop 270 des TOP LEVEL-Blocks 94 zugeführt wurde und daher
ruft der Block 92 nur einmal pro vom Benutzer programmierter
Periode bei Auftreten eines Zyklus des Haupttaktes 45 ein
Datenbit ab. Das abgerufene Datenbit wird als Ausgang des
Blockes 92 sowohl an den Vorderflankenunterdrückungsblock 95
als auch an den TRAIL MASK PIPE-Block 93 mit der Bestimmung
angelegt, wie nachstehend weiter ausgeführt ist, wodurch Kan
didatenimpulse durch diese Blöcke 95, 93 unterdrückt werden
sollen.
Der logische Block DONE 89 hat einen Eingang vom RAM-Adreß
zählerblock 91, einen ersten Ausgang an den Vorderflanken
unterdrückungsblock 95 und einen zweiten Ausgang an den TRAIL
MASK PIPE-Block 93. Der logische Block DONE 89 synchronisiert
(i) das vom Komparator 274 des RAM-Adreßzählerblockes 91 bei
Erreichen der Adresse, die dem oberen Teil des Speichers
entspricht, erzeugte Flagbit, mit (ii) dem vom RAM-Datenlatch-
und -verschiebeblock 92 bei der ganz oben im Speicher
befindlichen Adresse abgerufenen Datenbit. Der logische Block
DONE 89 resynchronisiert das Flagbit, indem er die angehäuften
Ausbreitungsverzögerungen überwindet, die zwischen der Adressierung
von Daten und der Verfügbarkeit der abgerufenen Daten
entstehen. Der logische Block DONE 89 wird nur dann verwendet,
wenn die Datenerzeugungsprüfeinheit 18 sich im Burst-Modus
befindet, da der oberste Teil des Speichers nur in diesem
Modus die letzten gültigen Daten angibt. In anderen Betriebs
modi gibt der logische Block DONE 89 das resynchronisierte
Flagbit an sowohl den Vorderflankenunterdrückungsblock 95 als
auch an den TRAIL MASK PIPE-Block 93 aus, aber die nach dem
obersten Teil des Speichers abgerufenen Daten bleiben in
diesen Modi gültig und sollen nicht unterdrückt werden.
Der Vorderflankenunterdrückungsblock 95 umfaßt einen ersten
Eingang vom ersten Flipflop 270 des TOP LEVEL-Blocks 94, einen
zweiten Eingang vom logischen Block DONE 89, einen dritten
Eingang vom RAM-Datenlatch- und -verschiebeblock 92 und einen
Ausgang, der die nichtgattergesteuerten Vorderflankenplazie
rungsdaten 54 umfaßt. Der Vorderflankenunterdrückungsblock 95
unterdrückt Vorderflankenkandidatenimpulse, wie sie in der
Wahrheitstabelle, Tabelle 1, hierin gezeigt sind.
Wie in der Tabelle 1 gezeigt, sind die Ausgangsdaten zur
Vorderflankenplazierung nur dann ein Signalpegel "1", wenn
gleichzeitig das Datenbit ein Signalpegel "1" ist, ein
Vorderflankenkandidatenimpuls erzeugt wird und das DONE Bit
nicht gesetzt ist.
Der TRAIL MASK PIPE-Block 93 umfaßt einen ersten Eingang von
dem zweiten Flipflop 268 des TOP LEVEL-Blocks 94, einen zwei
ten Eingang vom logischen Block DONE 89, einen dritten Eingang
vom RAM-Datenlatch- und -verschiebeblock 92, einen vierten
Eingang vom MASKCON-Register 256, einen fünften Eingang vom
Mikroprozessor 20 und einen Ausgang, welcher dem Ausgangs
flipflop 96 und dem Ausgangsmultiplexer 97 zugeführt wird. Das
MASKCON-Register 256 erstellt zwei Steuerbits an den TRAIL
MASK PIPE-Block 93 und diese Bits werden vom Mikroprozessor 20
berechnet, um den TRAIL MASK PIPE-Block 93 zu informieren, daß
er einen ungültigen Hinterflankenkandidatenimpuls unterdrücken
soll, der als Ergebnis eines unbestimmten Zustandes zwischen
dem Zykluszählerblock 87 und dem Hinterflankenvergleichsblock
88 bei der Erzeugung von Datenimpulsen mit erweiterter Breite
erzeugt wurde. Der unbestimmte Zustand tritt auf, wenn der vom
TRAILCMP-Register 250 in den Hinterflankenvergleichsblock 88
geladene Wert der gleiche ist wie der Wert, welcher vom
WIDTHLP-Register 252 in den Zykluszähler 262 geladen wurde.
Gemäß Fig. 7, welche zusätzliches strukturelles Detail zeigt,
umfaßt der TRAIL MASK PIPE-Block 93 weiterhin ein erstes UND-
Gatter 278, ein Flipflop 280, ein zweites UND-Gatter 282, ein
ODER-Gatter 284 und einen Kombinationsblock 286. Zunächst
gattersteuert das UND-Gatter 278 den Datenbiteingang vom RAM-
Datenlatch- und verschiebeblock 92 mit einem Eingang eines
Bits vom MASKCON-Register 256 und gibt diese logische
Kombination als einen Eingang an das ODER-Gatter 284. Das
Flipflop 280 umfaßt einen Takteingang vom Eingang des
Haupttaktes 45, einen Freigabeeingang vom TOP LEVEL Block 94
(d. h. Hinterflankenkandidatenimpulse geben das Flipflop 280
frei), einen Eingang vom RAM-Datenverschiebe- und -latchblock
92 und einen Ausgang, welcher dem zweiten UND-Gatter 282
zugeführt wird. Das zweite UND-Gatter 282 gattersteuert den
Eingang vom Flipflop 280 mit einem Eingang eines Bits vom
MASKCON-Register 256 und gibt diese logische Kombination als
zweiten Eingang an das ODER-Gatter 284 aus. Das ODER-Gatter
erstellt eine logische ODER-Verknüpfung seiner zwei
obengenannten Eingänge und gibt diese logische Kombination als
ersten Eingang an den Kombinationsblock 286 aus. Der
Kombinationsblock 286 umfaßt einen zweiten Eingang vom
logischen Block DONE 89, einen dritten Eingang vom TOP LEVEL-
Block 94, welcher Hinterflankenkandidatenimpulse umfaßt, einen
vierten Eingang vom Mikroprozessor 20, welcher das NRZ-
Steuerbit umfaßt, und den Ausgang vom TRAIL MASK PIPE- Block
93.
Im Betrieb unterdrückt der TRAIL MASK PIPE-Block 93 die Erzeu
gung von Hinterflankenkandidatenimpulsen, um zum Beispiel die
Breite der Datenimpulse auf ein Tastverhältnis von mehr als
100% zu erweitern oder um die Ausgabe von Hinterflankenkandi
datenimpulsen nach Erschöpfung der Daten des RAM-Chips 42 zu
verhindern. Der TRAIL MASK PIPE-Block 93 unterdrückt Hinter
flankenkandidatenimpulse, wie sie in der Wahrheitstabelle,
Tabelle 2, nachstehend gezeigt sind.
Wie in Tabelle 2 gezeigt, unterdrückt der Eingang vom logi
schen Block DONE 89 nur dann Hinterflankenkandidatenimpulse,
wenn er sich im NRZ-Modus befindet; dieser Eingang kann keine
Hinterflankenkandidatenimpulse unterdrücken, wenn gerade Da
tenimpulse mit erweiterter Breite erzeugt werden, da die Hin
terflanke eines Impulses mit erweiterter Breite erst nach der
Adressierung des letzten Datenbits vom RAM-Chip 42 erzeugt
werden muß.
Wieder zurück zu Fig. 5: die Hinterflankenkandidatenimpulse,
die von dem TRAIL MASK PIPE 93 ausgegeben werden, werden so
wohl indirekt durch das vom Haupttakt 45 getaktete Ausgangs
flipflop 96 dem Ausgangsmultiplexer 97 zugeführt als auch dem
Ausgangsmultiplexer 97 direkt zugeführt. Die dem Ausgangsflip
flop 96 zugeführten Kandidatenimpulse werden um einen
zusätzlichen Zyklus des Haupttaktes 45 verzögert; die Kandida
tenimpulse, die direkt zugeführt werden, erhalten keine solche
zusätzliche Verzögerung. Der Wahleingang des Aus
gangsmultiplexers 97 wird vom Register 262 der späten Hinter
flanke zugeführt, einem Ein-Bit-Register, welches vom Mikro
prozessor 20 geladen wird. Somit bewirkt der Ausgangsmulti
plexer 97 in Verbindung mit dem Ausgangsflipflop 96 und dem
Register 262 der späten Hinterflanke die Ausgabe des Hinter
flankenkandidaten entweder mit oder ohne die Verzögerung um
eine zusätzliche Periode des Haupttaktes 45. Wie nachstehend
unter Bezugnahme auf die Fig. 9 näher erläutert wird, über
windet eine Ausgabe von Hinterflankenkandidatenimpulsen mit
solcher Verzögerung die Beschränkung des Präzisionstaktungs
blockes, den Hinterflankenplazierungsdaten höchstens eine
Haupttaktverzögerung aufzuerlegen.
Die bevorzugte Ausführungsform des Mustererzeugungschips 64
erzeugt, wie voranstehend erläutert, ein Bit Vorderflanken
plazierungsdaten und ein Bit Hinterflankenplazierungsdaten pro
Zyklus des Haupttaktes 45. Praktische Bedingungen, wie maxi
male Taktgeschwindigkeiten von Gatteranordnungen, können
jedoch die Implementierung des Mustererzeugungschips 64 in
beispielsweise einer 4-Bit pro Takt Architektur erforderlich
machen, welche von einem Untertakt 47 getaktet wird, welcher
mit einem Viertel der Geschwindigkeit des Haupttaktes 45
arbeitet. In einer solchen Architektur müssen Modifikationen
des oben beschriebenen Schaltungsaufbaus vorgenommen werden
und ein zusätzlicher Schaltungsaufbau eingeführt werden. Gemäß
Fig. 5 erfordert eine 4-Bit-Architektur die Hinzufügung eines
Musterauswahlblockes 90 mit Eingängen von einem PATS-Register
260 und vom Zykluszähler 262 und Ausgängen an den RAM-
Datenlatch- und -verschiebeblock 92, und den TRAIL MASK PIPE-
Block 93. Der Musterauswahlblock 90 bestimmt das Muster der
Vorder- und Hinterflankenplazierungsdaten für die ausgegebenen
Halbbytes, die in jedem Zyklus des Untertaktes auf der Grund
lage dessen erzeugt werden, ob die ersten gültigen Halbbytes
gerade verwendet werden. Das PATS-Register 260 erstellt den
Musterauswahlblock 90 mit einer Leitung von Halbbytedaten, so
daß für jedes innerhalb eines Halbbytes befindliches Bit ein
Signalpegel "1" dieses Bit freigibt und ein Signalpegel "0"
dieses Bit sperrt. Das PATS-Register 260 erstellt 16 Bit, die
wie folgt zugeordnet sind:
D0-D3: erstes Vorderflankenplazierungsdatenhalbbyte;
D4-D7: nächstes Vorderflankenplazierungsdatenhalbbyte;
D8-D11: erstes Hinterflankenplazierungsdatenhalbbyte;
D12-D15: nächstes Hinterflankenplazierungsdatenhalbbyte.
D4-D7: nächstes Vorderflankenplazierungsdatenhalbbyte;
D8-D11: erstes Hinterflankenplazierungsdatenhalbbyte;
D12-D15: nächstes Hinterflankenplazierungsdatenhalbbyte.
Zusätzlich zu dem Musterauswahlblock 90 und dem PATS-Register
260 macht die 4-Bit-Architektur weitere Veränderungen im 1-
Bit-Mustererzeugungschip 64 erforderlich. Zum Beispiel hält
das WIDTHLP-Register 252 Werte, die nicht auf die Periode des
Haupttaktes 45, sondern vielmehr auf die Periode des Unter
taktes 47 abgestellt sind, und der Zykluszählerblock 87 er
zeugt gleichzeitig einen Vorderflankenkandidatenimpuls für
jedes der vier Bits. Der RAM-Datenlatch- und -verschiebeblock
92 ruft weiterhin Daten in 8-Bit-Mustern ab, gibt aber diese
Daten in zwei Halbbytes von jeweils 4 Bits bei jedem Zyklus
des Untertaktes 47 ab. Der TRAIL MASK PIPE 93 und der Vorder
flankenunterdrückungsblock 95 unterdrücken gleichzeitig
Kandidatenimpulse für jedes ihrer vier Bits. Für den TRAIL
MASK PIPE 93 muß der Eingang vom MASKCON-Register 256 von 2
Bits auf 8 Bits ansteigen, um der Verschiebung von einer 1-
Bit- auf eine 4-Bit-Architektur Rechnung zu tragen. Die 8 Bit
können jede beliebige der in der folgenden Tabelle, Tabelle
3, aufgeführten Konfiguration annehmen:
Steuerbyte | |
Breite (in Haupttaktzyklen) | |
00000000 | |
0 | |
00000001 | 1 |
00000011 | 2 |
00000111 | 3 |
00001111 | 4 |
00011111 | 5 |
00111111 | 6 |
01111111 | 7 |
Nimm Reihe Nr. 4+Width mod 4 | 8+ |
Allgemein ist die Taktung der Datenimpulse durch das Daten
signal hindurch unverändert: alle Datenimpulse werden, wenn
überhaupt, aus Vorderflankenplazierungsdatenimpulsen und Hin
terflankenplazierungsdatenimpulsen erzeugt, welche gemäß vom
Benutzer programmierten Taktungs- und Formatierungsanweisungen
erzeugt werden, die durch das ganze Datensignal hindurch an
wendbar sind. Die ansteigenden Flanken der Flankenplazierungs
impulse steuern für jede der Vorder- und Hinterflanken die
Flankenplazierungsbezüge im Datensignal.
In Fig. 8 ist die Erzeugung eines Datenimpulses allgemein
durch ein Taktdiagramm veranschaulicht. Drei vom Benutzer
programmierte Perioden eines Datensignals sind gezeigt, die
einen Datenstrom mit Signalpegeln "011" umfassen. Bei der
Erweiterung des Bereichs der vom Benutzer programmierten
Periode entsprechend dem ersten erweiterten Datenimpuls, ist
gezeigt, daß die programmierte Periode aus acht verketteten
Zyklen des Haupttaktes aufgebaut ist. Der erste Datenimpuls
wird wie folgt erzeugt: der Parallel-/Seriell-Wandler 46 des
Formatierblockes 32 erzeugt die nichtgattergesteuerten Vorder-
und Hinterflankenplazierungsdatenimpulse, von denen jeder grob
innerhalb der vom Benutzer programmierten Periode auf inner
halb einem Haupttaktzyklus getaktet ist; der vom Wandler 46
aus dem Haupttakt 45 erzeugte Gattersteuertakt 6 21114 00070 552 001000280000000200012000285912100300040 0002004306463 00004 209952
gattersteuert die nichtgattergesteuerten Vorder- und
Hinterflankenplazierungsdatenimpulse an die logischen UND-
Gatter 50 bzw. 52 des Formatierblockes 32, wodurch die Vorder-
und Hinterflankenplazierungsdatenimpulse durch Verkürzung der
Dauer der nichtgattergesteuerten Impulse erzeugt werden; die
Vorder- und Hinterflankenplazierungsdatenimpulse werden dann
durch den Vorderflankenverzögerungsblock 68 bzw. den
Hinterflankenverzögerungsblock 70 auf eine präzise Genauigkeit
verzögert, um die verzögerten Vorder- und
Hinterflankenplazierungsdatenimpulse zu erzeugen; diese
verzögerten Vorder- und Hinterflankenplazierungsdaten werden
dann dem programmierbaren Dominanz-Flipflop 80 mit RS-Tastung
des Präzisionstaktungsblockes 38 zum Aufbau des Datenimpulses
für die Ausgabe eingespeist.
Gemäß der Darstellung in Fig. 9 ist die Erzeugung eines Daten
impulses durch ein Taktdiagramm bezogen auf die verspätete
Hinterflankenoperation des Mustererzeugungschips 64 veran
schaulicht. Die verspätete Hinterflankenoperation, wie sie vom
Ausgangsmultiplexer 97 in Verbindung mit dem Ausgangsflipflop
96 und dem Register 262 für späte Hinterflanken durchgeführt
wird, sperrt den Ausgang von Hinterflankenplazierungsdaten
impulsen des Mustererzeugungschips 64 für einen Zyklus des
Haupttaktes 45, immer wenn die Summe aus (i) der vom Präzi
sionstaktungsblock 38 auf dem Vorderflankenplazierungsimpuls
anzulegenden Verzögerung und (ii) der von diesem Block 38 auf
den Hinterflankenplazierungsimpuls anzulegenden Verzögerung
eine Haupttaktperiode übersteigen würde. Wie dargestellt würde
der Formatierblock 32, wenn angenommen wird, daß die verspä
tete Hinterflankenoperation gesperrt ist, einen Vorderflanken
plazierungsdatenimpuls und einen Hinterflankenplazierungs
datenimpuls erzeugen, wobei die beiden durch eine Breite W(c1)
getrennt sind, welche grob von Haupttaktzyklen plaziert wird.
Mit solchen Impulsen würde der Präzisionstaktungsblock 38 den
Vorderflankenplazierungsdatenimpuls um eine Verzögerung D(1e)
verzögern. Der Präzisionstaktungsblock 38 würde versuchen, den
Hinterflankenplazierungsdatenimpuls um eine Verzögerung gleich
der Summe aus D(te1) und D(1e) zu verzögern, wobei D(1e) hin
zugefügt wird, um die Breite W(c1) des Datenimpulses beizu
behalten. Da jedoch angenommen wurde, daß die Summe aus D(te1)
und D(1e) einen Haupttaktzyklus übersteigt, wäre der Präzi
sionstaktungsblock 38 nicht in der Lage, den Hinterflankenpla
zierungsdatenimpuls vollständig zu verzögern, da der Verzöge
rungsbereich dieses Blockes auf einen Haupttaktzyklus be
schränkt ist. Um diese Beschränkung zu überwinden, ist das Bit
des Registers 262 für späte Hinterflanken so gesetzt, daß es
den Kandidatenimpuls für die Hinterflanken, der durch den Aus
gang des Flipflops 96 verzögert ist, auswählt, wodurch die
überschüssige Verzögerung durch Erweiterung der groben Breite
um einen Haupttaktzyklus von W(c1) auf W(c2) und durch
Reduzierung der durch den Präzisionstaktungsblock 38 an die
Hinterflankenplazierungsdatenimpulse anzulegende Verzögerung
auf D(te2) korrigiert wird.
Gemäß Fig. 10 wird das programmierbare Dominanz-Flipflop 80
mit RS-Tastung/der transparente Latch aus Fig. 3 vorzugsweise
in eine integrierte Schaltung eingefügt, wie es mehr in
Einzelheiten in dem Logikschaltbild 100 dargestellt ist. In
der Mitte dieser integrierten Schaltung befindet sich eine RS-
/Latchzelle 102, welche einen Set-Eingang (Einstell-Eingang)
104, einen Reset-Eingang (Rückstell-Eingang) 106, einen R-
Dominanz-Freigabe-Eingang 108 (mit "ENRDM" bezeichnet), einen
Ausgang 110 (mit "Q" bezeichnet), einen direkten Reset-
(Rückstell-)Eingang 112 (mit "RD" bezeichnet) und einen NRZ
("nonreturn to zero") -Freigabeeingang 114 ("ENRZ") aufweist.
Der Voreinstellungsmodus der RS/Latchzelle ist RZ ("return to
zero"). In diesem Modus verhält sich die Zelle wie ein
Flipflop mit RS-Tastung, mit der Ausnahme, daß sie für eine
Einstell- oder Rückstell-Dominanz programmiert werden kann, so
daß beim Vorliegen eines logischen Pegels "1" sowohl am
Einstell-Eingang 104 als auch am Rückstell-Eingang 106
entweder der Einstell-Eingang oder der Rückstell-Eingang
vorherrscht; unter diesen Umständen gibt es keinen
indeterminanten Zustand. Die Rückstelldominanz wird durch
Anlegen eines logischen Pegels "1" an den R-Dominanz-
Freigabeeingang 108 gewählt; sonst dominiert die Einstell-
Dominanz. Das spezielle Ansprechen der RS/Latch wird in der
folgenden Wahrheitstabelle, "Tabelle 4", dargestellt.
Die RS/Latch kann ebenfalls im NRZ-Modus betrieben werden.
Dieser wird durch Anlegen eines logischen Pegels "1" an einen
NRZ-Freigabeeingang 114 gewählt. Im NRZ-Modus verhält sich die
RS/Latch wie eine D-Typ-Latch, wobei der S-Eingang 104 als D-
Eingang dient und R der transparente Freigabeeingang ist. In
diesem Fall folgt der Ausgang 110 einfach dem logischen Pegel,
wie er an den S-Eingang 104 angelegt ist, wenn R sich im
logischen Pegel "1" befindet, und behält seinen vorherigen
Zustand, wenn R sich beim logischen Pegel "0" befindet.
Die RS/Latch kann direkt durch Anlegung eines logischen Pegels
"1" an den direkten Rückstell-Eingang 112 zurückgestellt
werden. Dies wird gemeinhin zur Initialisierung der Schaltung
beim Systemeinschalten verwendet. Die RS/Latch wird
nachfolgend mit Bezug auf Fig. 12 mit ihren Einzelheiten
erläutert.
Zusätzlich zu der (bereits beschriebenen) RS/Latch weist die
durch das Logikschaltbild 100 dargestellte integrierte Schal
tung einige dem Einstell-Eingang 104 und dem Rückstell-Eingang
106 voraufgehende Eingangsschaltungsanordnungen sowie einige
Ausgangsschaltungsanordnungen auf, die auf den Ausgang 110
folgen. Die Eingangsschaltungsanordnung umfaßt einen ersten
Multiplexer 116 mit einem ersten logischen Differenzeingang
118 (mit "LEADA" und "LEADAb" bezeichnet), einem zweiten
logischen Differenzeingang 120 (mit "LEADB" und "LEADBb"
bezeichnet), einem Wähleingang 122 (mit "SELLEADB" bezeichnet)
und einem Ausgang 124 (mit "Y" bezeichnet) auf. Die Eingänge
118 und 120 stimmen mit dem Eingang 121 aus Fig. 3 überein.
Weiterhin ist ein zweiter Multiplexer 126 mit einem dritten
logischen Differenzeingang 128 (mit "TRAILA" und "TRAILAb"
bezeichnet), ein vierter logischer Differenzeingang 130 (mit
"TRAILB" und "TRAILBb" bezeichnet), ein Wähleingang 132
(bezeichnet mit "SELTRAILB") und einem Ausgang 134 (bezeichnet
mit "Y") vorhanden. Die Eingänge 128 und 130 stimmen mit dem
Rückstell-Eingang 133 aus Fig. 3 überein. Üblicherweise
empfängt der Multiplexer 116 seine Eingabe vom logischen
Eingang 118; wenn jedoch dem Wähleingang 122 ein logischer
Pegel "1" angelegt wird, empfängt der Multiplexer 116 seine
Eingabe vom logischen Eingang 120. Desgleichen empfängt der
Multiplexer 126 üblicherweise seine Eingabe vom logischen
Eingang 128, schaltet jedoch auf den logischen Eingang 130,
wenn dem Wähleingang 132 ein logischer Pegel "1" angelegt ist.
Gemeinhin kann ein Fachmann auf dem vorliegenden Gebiet den
Aufbau eines solchen Multiplexers und die Eingangswähl
schaltungsanordnung ohne weiteres nachvollziehen.
Der Ausgang 124 des Multiplexers 116 wird an eine
Impulsverkürzerschaltung 136 mit einem entsprechenden, an den
S-Eingang 104 der RS/Latchzelle 102 angelegten Ausgang. Der
Ausgang 134 des Multiplexers 126 wird an eine Impulsver
kürzerschaltung 138 mit einem an den R-Eingang 106 der
RS/Latchzelle 102 angelegten entsprechenden Ausgang geleitet.
Der Impulsverkürzer 136 hat einen Freigabeeingang 140 und der
Impulsverkürzer 138 einen Freigabeeingang 142. Zwischen die
Freigabeeingänge 140 und 142 ist eine Umkehrstufe 144
geschaltet. Daher ist der eine oder andere Impulsverkürzer
freigegeben, wobei das Anlegen eines logischen Pegels "0" an
den Freigabeeingang 142 den Impulsverkürzer 136 freigibt,
während der Impulsverkürzer 140 gesperrt ist, und das Anlegen
eines logischen Pegels "1" an den Freigabeeingang den
Impulsverkürzer 138 freigibt, während der Impulsverkürzer 136
gesperrt ist. Wie ihre Bezeichnungen vermuten lassen,
verkürzen die Impulsverkürzerschaltungen aus einem später
darzulegenden Grund die Breite der an ihre Eingänge angelegten
Impulse um einen vorbestimmten Betrag, vorzugsweise um etwa
200 Pikosekunden im System der vorliegenden Erfindung.
In Fig. 11 wird ein geeigneter Aufbau für die Impulsver
kürzerschaltung 136 und die Impulsverkürzerschaltung 138
dargestellt. Sie umfaßt ein UND-Gatter 146 mit zwei Eingängen
148 und 150 und einen Ausgang 152; ein Verzögerungsgatter 154
hat einen an den Eingang 148 des UND-Gatters angeschlossenen
Eingang 148 und einen Eingang 156; ein Nullverzögerungs-ODER-
Gatter 158 (wobei in der Praxis die Funktionen des UND-Gatters
146 und des ODER-Gatters 158 von derselben Schaltung
durchgeführt werden können) hat einen an den Eingang 150 des
UND-Gatters angeschlossenen Ausgang und einen ersten mit dem
Eingang 156 des Verstärkers 154 verbundenen ersten Eingang 160
und einen zweiten Eingang 162. Die Eingänge 156 und 160 werden
vom Ausgang eines Puffers 164 gespeist, welcher seinerseits
einen Multiplexerausgang an seinem Eingang 166 empfängt. Der
Eingang 162 am ODER-Gatter 158 empfängt den Ausgang von einem
Puffer 168, welcher seinerseits das Freigabesignal an einem
Eingang 170 empfängt.
Im Betrieb wird ein Impuls am Eingang 166 angelegt, der sich
durch den Verstärker 164 und den Verstärker 154 verstärkt, bis
er an den Eingang 148 des UND-Gatters 146 gelangt. Sobald ein
Freigabesignal an den Eingang 170 angelegt ist, dann gelangt
dieses Signal durch den Verstärker 168 und das ODER-Gatter 158
hindurch und ist schließlich an den Eingang 150 des UND-
Gatters 146 angelegt, so daß ein Impuls, der am Eingang 148
angelegt ist, ungekürzt am Ausgang 152 erscheint. Wenn
andererseits der Impulsverkürzer nicht freigegeben ist, wird
der zu verkürzende Impuls, welcher gleichzeitig an den Eingang
150 durch das Nullverzögerungs-ODER-Gatter 158 angelegt ist,
durch das UND-Gatter 146 für eine kürzere Zeitperiode hindurch
gebracht, weil seine abfallende Flanke während der Begrenzung
der Impulsverarbeitung durch das ODER-Gatter 158 angeschnitten
ist.
Der Ausgangskreis der integrierten Schaltung weist eine
dritten Multiplexer 172 auf (Fig. 10), der einen fünften
Differentiallogikeingang 174 (mit "TRANS" und "TRANSB"
bezeichnet) aufweist, ferner einen Differentialeingang 176,
der mit dem Ausgang 110 der RS/Latchzelle 102 verbunden ist,
einen Übertrager-Freigabeeingang 178 (mit "TRANSENAB"
bezeichnet) und einen Ausgang 180 (mit "Y" bezeichnet). Dies
ermöglicht der integrierten Schaltung auszuwählen, ob ihr
Ausgang entweder der Ausgang von der RS/Latchzelle 102 ist
oder ein Differentiallogiksignaleingang 174 folgt, welcher
gerade durch die integrierte Schaltung hindurch geführt ist.
Der Eingang 174 wird angewählt, wenn ein logischer Pegel "1"
an den Übertrager-Freigabeeingang 178 angelegt ist.
Der Ausgang 180 des Multiplexers 172 liegt an einem EXKLUSIV-
ODER- ("XOR")-Gatter 182 an, und zwar zusammen mit dem
Ausgang von einem Puffer 184, der einen
Differentiallogikeingang 186 (bezeichnet mit "INVERT" und
"INVERTB") aufweist. Ein Differentialausgang 188 von dem XOR-
Gatter 182 stellt den Ausgang von der integrierten Schaltung
dar. Liegt ein logischer Pegel "0" an dem Invert-Punkt von
Eingang 186 an, dann reflektiert der Ausgang 188 direkt den
logischen Pegel an den Ausgang 180 des Multiplexers 172. Wenn
ein logischer Pegel "1" an den Invert-Punkt des Eingangs 186
angelegt ist, reflektiert der Ausgang 188 die Umkehr des
logischen Pegels, wie er am Ausgang 180 des Multiplexers 172
erzeugt wird. Deshalb kann der Eingang 186 zur Umkehr eines
NRZ-Signals in seinen Komplementärwert benutzt werden, und um
ein RZ-Signal in ein R1-Signal zu wandeln. Die Verwandlung vom
RZ zum R1 erfordert außerdem, daß die RAM-Chip 42 Daten von
dem Mikroprozessor 20 invertiert werden.
Wird nunmehr die Fig. 12 in Betracht gezogen, läßt sich die
RS/Latchzelle 102 in ihren dargestellten größeren Details
beschreiben. Der Hauptteil der RS/Latchzelle 102 ist ein D-
Typ-Latch 190 mit einem D-Eingang 192, einem Latch-
Freigabeeingang 194 (mit "LE" bezeichnet) und einem Ausgang
196 (mit "Q" bezeichnet); ein Multiplexer 198 hat einen
Ausgang, der am Eingang 192 des D-Typ Latch 190 anliegt, einen
ersten Eingang 200, einen zweiten Eingang 210 und einen
Dominanzeingang 212 ("RDOM" bezeichnet). Der S-Eingang 104
wird über ein Paar von Verzögerungsgattern 214 und 216 an den
Eingang 200 des Multiplexers 198 und der R-Eingang 106 wird
durch ein Paar von Verzögerungsgattern 218 und 220 zum Eingang
210 des Multiplexers gezogen. Wenn eine logische "Null" am
Dominanzeingang 212 anliegt, selektiert der Multiplexer das
Signal am S-Eingang 104 für eine Weiterleitung an den D-
Eingang 192 des D-Typ-Latch 190. Wenn eine logische "Eins" an
dem Eingang 212 anliegt, dann wird die R-Dominanz selektiert
und das Signal am R-Eingang 106 gelangt durch den Multiplexer
hindurch an den D-Eingang 192 des D-Typ-Latch 190.
Um die Schaltung wie ein RS/Flipflop wirken zu lassen, gelangt
der Setz-Eingang 104 und der Rücksetz-Eingang 106 ebenfalls
durch ein ODER-Gatter 222 hindurch bis an den Latch-
Freigabeeingang 194 des D-Typ-Latch 190. Der Setz-Eingang wird
an das ODER-Gatter 222 durch ein UND-Gatter 224 angelegt, an
dem als Eingänge der Setz-Eingang 104 und der NRZ-
Freigabeeingang 114 der RS/Latchzelle 102 anliegen. Der
Rücksetz-Eingang 106 wird durch ein anderes ODER-Gatter 226
zum Eingang des ODER-Gatters 222 geleitet. Der direkte
Rücksetz-Eingang 112 wird ebenso durch das ODER-Gatter 226 an
das ODER-Gatter 222 anlegt. Die Verzögerungsgatter 214, 216,
220 und 218 sind dafür vorgesehen, um die Durchgangs
verzögerung zu kompensieren, die durch das UND-Gatter 224, das
ODER-Gatter 226 und das ODER-Gatter 222 verursacht werden.
Deshalb wird in einem RZ-Modus und in gesetzter Dominanz ein
logischer Pegel "1" am Setzeingang 104 beim Vorliegen eines
logischen Pegels "0" am Rückstelleingang 106 am D-Eingang 192
und am Latch-Freigabeeingang 194 des D-Typ-Latch 190 ankommen,
wodurch ein logischer Pegel "1" am Ausgang 196 erzeugt wird.
Eine "0" am Setz-Eingang und eine "1" am Rücksetz-Eingang
erzeugt eine "0" am Ausgang. Eine "1" am Setz-Eingang und eine
"1" am Rücksetz-Eingang erzeugt eine "1" am Ausgang. Deshalb
gibt es keinen Zwischenzustand, wenn eine "1" an sowohl dem
Setz-Eingang als auch dem Rücksetz-Eingang anliegt.
Wenn ein logischer Pegel "1" am Dominanzeingang 212 des
Multiplexers 198 anliegt, entsteht ein gleiches Resultat, mit
der Ausnahme, daß der Ausgang dem Rücksetz-Eingang nachläuft.
Wenn ein logischer Pegel "1" an den NRZ-Freigabeeingang 102
anliegt, arbeitet die Schaltung einfach wie ein D-Typ-Latch,
wobei der Setz-Eingang 104 mit dem D-Eingang zusammenwirkt.
Ein logischer Pegel "1" kann direkt an den Rücksetz-Eingang
112 angelegt werden, um den Ausgang auf "0" zu setzen.
Das programmierbare Flipflop mit RS-Tastung/transparenter
Latch wird nun im Zusammenhang mit dem Gesamtsystem der
vorliegenden Erfindung erläutert. Der Vorderflankenverzöge
rungsblock 68 und der Hinterflankenverzögerungsblock 70 machen
beide einen direkten Ausgangsweg und einen Ausgangsweg verfüg
bar, in dem die Impulse um etwa 1,8 Nanosekunden verzögert
sind. Die in der integrierten Schaltung befindlichen
Multiplexer 116 und 126, zusammengefaßt durch die logische
Schaltung 100, werden benutzt, um zwischen diesen beiden
Ausgangswegen für die entsprechende Präzisionsverzögerungs
steuerung auszuwählen. Die Funktion der Impulsverkürzer ist es
zu ermöglichen, daß Eingänge mit einem Tastverhältnis von 50 %
von den Präzisionsverzögerungssteuerungen zuverlässig Ausgänge
mit einem Tastverhältnis von 50% produzieren. Ideal ist es
für ein Tastverhältnis von 50 %, daß sowohl die führende als
auch die nacheilende Impulskette beide 50% der Periode
einnehmen, jedoch hinkt der nacheilende Impuls dem führenden
Impuls um 180 Grad hinterher. Das Abfallen der Flanke des
nacheilenden Impulses tritt gleichzeitig mit dem Aufsteigen
der Flanke des führenden Impulses auf, was kein Problem ist.
In Wirklichkeit kann es sein, daß die führende und die
nacheilende Impulskette nicht ein Tastverhältnis von exakt
50% aufweisen. Wenn beispielsweise angenommen wird, daß die
Impulse 100 Pikosekunden länger sind als das 50 %
Tastverhältnis, dann wird die aufsteigende Flanke des
Nacheilers 100 Pikosekunden vor der abfallenden Flanke des
Führers erscheinen. Bei Rückstell-Dominanz wird die
ansteigende Flanke des Ausgangsimpulses nicht erscheinen,
bevor der Nacheiler nach unten geht. Daher ist es nötig, den
Einstell-Impuls zu verkürzen, wenn die Einstell-Dominanz
gewählt wird. Wenn die Rückstell-Dominanz gewählt worden ist,
muß der Rückstell-Impuls verkürzt werden. Da durch die
RS/Latchzelle 102 kein unbestimmter Zustand eintritt, wenn
sowohl die Einstellung als auch die Rückstellung sich auf dem
logischen Pegel "1" befinden, kann in dem Ausgangsimpuls ein
Tastverhältnis von 0 bis mehr als 100 Prozent erzeugt werden.
Der Übertragereingang 174 kann eher als der Ausgang 110 der
RS/Latchzelle für die Durchgabe eines Signals von außen durch
die integrierte Schaltung gewählt werden. R1 oder komple
mentäre NRZ können für das Ausgangssignal durch Anlegen eines
logischen Pegels "1" an den Invert-Eingang 186 gewählt werden
und geeignete Daten von RAM-Chip 42 zur Verfügung stellen.
Die in der vorangegangenen Beschreibung verwendeten
Bezeichnungen und Ausdrücke sind als beschreibende und nicht
als begrenzende Bezeichnungen zu verstehen und es besteht
keine Absicht, durch den Gebrauch dieser Bezeichnungen und
Ausdrücke die dargestellten und beschriebenen Merkmale
hinsichtlich deren Äquivalente auszuschließen, wobei anerkannt
wird, daß der Rahmen der Erfindung lediglich durch die
nachfolgenden Ansprüche vorgegeben und begrenzt ist.
Claims (20)
1. Daten-Zeit-Erzeugungssystem, gekennzeichnet durch
- (a) eine Einrichtung (32) zum Erzeugen eines Musters in Abhängigkeit von einem Datenimpuls-Eingangssignal und von Mustervorgaben, um einen groben Vorderimpuls zu erzeugen, welcher die Dauer der Vorderflanke eines Ausgangsimpulses darstellt, und um einen groben Abfallimpuls zu erzeugen, welcher die Dauer der abfallenden Flanke des Ausgangsimpulses darstellt, wobei der grobe Abfallimpuls unabhängig vom groben Vorderimpuls einstellbar ist; und
- (b) eine Abgabeerzeugungseinrichtung (38), die auf den groben Vorderimpuls und den groben Abfallimpuls anspricht, und zwar zum Erzeugen eines Abgabeim pulses mit einer Vorderflanke, deren Dauer durch den groben Vorderimpuls bestimmt ist, und einer Rück flanke, deren Dauer durch den groben Abfallimpuls bestimmt ist.
2. System gemäß Anspruch 1, dadurch gekennzeichnet, daß die
Mustererzeugungseinrichtung ein Register (44) aufweist, um
Musterinstruktionen aufzunehmen und abzuspeichern.
3. System gemäß Anspruch 1, wobei die Muster
erzeugungseinrichtung folgendes aufweist:
- (i) eine Zykluszählvorrichtung (87) zum Einrichten einer Abgabeimpulsperiode;
- (ii) führende logische Einrichtungen (264) zum Erzeugen eines groben Führungsimpulskandidaten auf einen Dateneingabeimpuls hin innerhalb der ersten vorbestimmten Zeitperiode, die auf den Beginn der Impulsausgangsperiode folgt; und
- (iii) eine logische Folgeeinrichtung (88) zum Erzeugen eines groben Folgeimpulskandidaten auf einen Dateneingangsimpuls innerhalb einer zweiten vorbestimmten Zeitperiode, die auf den Beginn der Impulsausgangsperiode folgt.
4. System gemäß Anspruch 3, dadurch gekennzeichnet, daß die
Zykluszählvorrichtung eine laufende Zählung erzeugt, die
führende logische Einrichtung eine Führungsvergleichs
einrichtung zum Vergleich der Zählung von laufenden
Folgen mit einem Führungsimpulswert und zum Erzeugen
eines groben Führungsimpulskandidaten, wann immer sie
gleichwertig sind, und eine Nachfolgevergleichsein
richtung zum Vergleich der Zählungen von Folgen mit einem
Nachfolgeimpulswert und zum Erzeugen eines groben Nach
folgeimpulskandidaten, wenn sie gleichwertig sind,
aufweist.
5. System gemäß Anspruch 1, dadurch gekennzeichnet, daß eine
Führungsunterdrückungsvorrichtung (95) zur Unterdrückung
des groben Führungsimpulses und eine Nachfolgeunter
drückungsvorrichtung (260) zur Unterdrückung des groben
Nachfolgeimpulses vorhanden sind, wobei beide in Ab
hängigkeit von Musterangaben wirken.
6. System gemäß Anspruch 5, gekennzeichnet durch folgende
Kombination:
- (i) eine führende Präzisionsverzögerungssteuereinrich tung (68), die auf den groben Führungsimpuls und die Musterangaben zum Einstellen des Zeittaktes des groben Führungsimpulses anspricht, zur Erzeugung eines Feinführungsimpulses, der die Dauer der Vorder- bzw. Führungsflanke des Ausgangsimpulses darstellt; und
- (ii) eine Nachfolgepräzisionsverzögerungssteuervorrichtung (70), die auf den groben Nachfolgeimpuls und die Musterangaben zum Einstellen des Zeittaktes des feinen Nachfolgeimpulses anspricht, zur Erzeugung eines feinen Nachfolgeimpulses, der die Dauer der nachfolgenden bzw. Hinterflanke des Ausgangsimpulses darstellt.
7. System gemäß Anspruch 6, dadurch gekennzeichnet, daß die
Abgabeerzeugungsvorrichtung eine programmierbare
Dominanz-RS-Flipflopeinrichtung (80) aufweist, die auf
den feinen Führungsimpuls und auf den feinen Nachfolge
impuls zum Initiieren des Ausgangsimpulses auf den feinen
Führungsimpuls hin anspricht und zum Beenden des
Ausgangsimpulses auf den feinen Nachfolgeimpuls hin,
wobei das Flipflop so programmiert ist, daß das zual
lerletzt erfolgte Auftreten eines feinen Führungsimpulses
und des feinen Nachfolgeimpulses bestimmt, ob der
Ausgangsimpuls eingeleitet oder beendet wird.
8. System gemäß Anspruch 1, dadurch gekennzeichnet, daß eine
Direktzugriffsspeichereinrichtung (30) vorhanden ist, die
mit der Mustererzeugungseinrichtung zum Erzeugen des
Datenimpulseingangssignals verbunden ist, wobei das
Datenimpulseingangssignal eine Vielzahl von sequentiell
geordneten Datenwerten enthält.
9. System gemäß Anspruch 1, dadurch gekennzeichnet, daß die
Ausgangserzeugungseinrichtung folgende Kombination
aufweist:
- (i) eine führende Präzisionsverzögerungssteuerschaltung (68), die auf den groben Führungsimpuls und die Musterangaben anspricht, zum Einstellen der Zeitdaten des groben Führungsimpulses zur Erzeugung eines feinen Führungsimpulses, der die Dauer der Vorder- oder Führungsflanke des Ausgangsimpulses darstellt; und
- (ii) eine nacheilende Präzisionsverzögerungssteuer einrichtung (70), die auf den groben Nachfolgeimpuls und die Musterangaben anspricht, zum Einstellen der Zeitdaten des feinen Nachfolgeimpulses zur Erzeugung eines feinen Nachfolgeimpulses, der die Dauer der nacheilenden oder Hinterflanke des Ausgangsimpulses darstellt.
10. System gemäß Anspruch 9, dadurch gekennzeichnet, daß die
Ausgangserzeugungsvorrichtung eine programmierbare
Dominanz-RS-Flipflopeinrichtung (80) aufweist, die auf
den feinen Führungsimpuls und den feinen Nachfolgeimpuls
anspricht, zum Einleiten des Ausgangsimpulses nach dem
feinen Führungsimpuls und zum Abschließen des
Ausgangsimpulses auf den feinen Nachfolgeimpuls, wobei
die Flipflopeinrichtung so programmiert ist, daß der
feine Führungsimpuls und der feine Nachfolgeimpuls, die
zuletzt auftreten, bestimmen, ob der Ausgangsimpuls
eingeleitet oder beendet wird.
11. System gemäß Anspruch 10, dadurch gekennzeichnet, daß die
programmierbare Dominanz-RS-Flipflopvorrichtung eine
logische Vorrichtung (100) aufweist, die als Einstell-
Rückstell-Flipflop arbeiten kann und die entweder für das
Einstellen oder das Rückstellen der Dominanz programmiert
werden kann, wobei die logische Vorrichtung umfaßt:
- (iii) eine Latchvorrichtung vom D-Typ (190) mit einem D-Eingang, der wahlweise auf den feinen Füh rungsimpuls oder den feinen Nachfolgeimpuls anspricht, einen Freigabeeingang und einen Ausgang zum Erstellen eines logischen Pegels an dem Ausgang hat, der identisch mit dem logi schen Pegel ist, der am D-Eingang angelegt ist, wenn die Freigabeeingabe "1" ist und den lau fenden logischen Pegel an diesem Ausgang auf rechterhält, wenn der Freigabeeingang "0" ist; und
- (iv) eine Multiplexervorrichtung (198) mit einem Einstell-Eingang, der auf den feinen Führungsimpuls anspricht, einen Rückstell- Eingang, der auf den feinen Nachfolgeimpuls anspricht, einen Dominanzeingang und einen Ausgang, der mit dem D-Eingang der Latchvorrichtung vom D-Typ verbunden ist, um wahlweise zu diesem D-Eingang den logischen Pegel an dem Einstell-Eingang oder den logischen Pegel an dem Rückstell-Eingang in Abhängigkeit von dem am Dominanzeingang angelegten logischen Pegel durchzulassen.
12. Logische Vorrichtung gemäß Anspruch 11, dadurch
gekennzeichnet, daß sie außerdem eine Latch-
Freigabesteuervorrichtung (222) mit einem Einstell-
Eingang, einem Rückstell-Eingang und einem Ausgang
umfaßt, der mit dem Freigabeeingang der Latch vom D-Typ
verbunden ist, um den Freigabeeingang zum logischen Pegel
"1" werden zu lassen, immer wenn ein logischer Pegel Eins
entweder an dem Einstell-Eingang oder an dem Rückstell-
Eingang angelegt ist.
13. Logische Vorrichtung gemäß Anspruch 12, dadurch
gekennzeichnet, daß außerdem eine NRZ-Freigabesteuer
vorrichtung (224) mit einem Einstell-Eingang, einem NRZ-
Freigabeeingang und einem Ausgang vorhanden ist, verbun
den mit dem Einstell-Eingang der Latch-Freigabesteuer
vorrichtung, um die Latch-Freigabesteuervorrichtung auf
einem logischen Pegel "0" zu halten, falls nicht die
logischen Pegel, die sowohl an den NRZ-Freigabeeingang
als auch an den Einstell-Eingang der NRZ-Freigabe
steuervorrichtung angelegt sind, "1" sind.
14. Logische Vorrichtung gemäß Anspruch 12, dadurch
gekennzeichnet, daß weiterhin eine Direkt-Rückstell-
Steuervorrichtung (226) mit einem Direkt-Rückstell-
Eingang vorhanden ist, ferner ein Rückstell-Eingang und
ein Ausgang, um einen logischen Pegel "1" an dem
Rückstell-Eingang der Latch-Freigabesteuervorrichtung zu
erzeugen, immer dann, wenn an entweder dem Rückstell-
Eingang oder dem Direkt-Rückstelleingang der Direkt-
Rückstell-Steuervorrichtung ein logischer Pegel "1"
anliegt.
15. Logische Vorrichtung, die als Einstell-Rückstell-Flipflop
funktionieren kann und die entweder für Einstell- oder
Rückstell-Dominanz programmiert werden kann, mit:
- (a) einer D-Typ-Latchvorrichtung (190) mit einem D- Eingang, einem Freigabeeingang und einem Ausgang zum Erzeugen eines logischen Pegels an dem Ausgang, der identisch mit dem logischen Pegel ist, der an dem D- Eingang anliegt, wenn der Freigabeeingang "1" ist, und zum Aufrechterhalten des momentanen logischen Pegels an dem Ausgang, wenn der Freigabeeingang gleich "0" ist; und
- (b) einer Multiplexer-Vorrichtung (198) mit einem Einstell-Eingang, einem Rückstell-Eingang, einem Dominanz-Eingang und einem Ausgang, der mit dem D- Eingang der D-Typ-Latchvorrichtung verbunden ist, um wahlweise zu diesem D-Eingang entweder den logischen Pegel an dem Einstell-Eingang oder den logischen Pegel an dem Rückstell-Eingang in Abhängigkeit von dem logischen Pegel passieren zu lassen, der an dem Dominanzeingang angelegt ist.
16. Logische Vorrichtung gemäß Anspruch 15, dadurch
gekennzeichnet, daß eine Latch-Steuervorrichtung (222)
mit einem Einstell-Eingang, einem Rückstell-Eingang und
einem Ausgang, der mit dem Freigabeeingang der D-Typ-
Latch verbunden ist, vorhanden ist, um den Freigabeein
gang zu veranlassen, zu einem logischen Pegel "1" zu ge
langen, immer wenn ein logischer Pegel "1" an entweder
dem Einstell-Eingang oder dem Rückstell-Eingang angelegt
ist.
17. Logische Vorrichtung gemäß Anspruch 16, dadurch
gekennzeichnet, daß weiterhin eine NRZ-Freigabe-
Steuerungsvorrichtung (224) mit einem Einstell-Eingang,
einem NRZ-Freigabeeingang und einem Ausgang vorhanden
ist, der mit dem Einstell-Eingang der Latch-Freigabe-
Steuervorrichtung verbunden ist, um den Einstell-Eingang
der Latch-Freigabe-Steuervorrichtung zu veranlassen, auf
einem logischen Pegel "0" zu verharren, wenn nicht der an
dem NRZ-Freigabe-Eingang angelegte logische Pegel "0" ist
und der am Einstell-Eingang der NRZ-Freigabe-Steuer
vorrichtung angelegte logische Pegel "1" ist.
18. Logische Vorrichtung gemäß Anspruch 16, dadurch
gekennzeichnet, daß weiterhin eine Direkt-Rückstell-
Steuervorrichtung (226) mit einem Direkt-Rückstell-
Eingang vorhanden ist, mit einem Rückstell-Eingang und
einem Ausgang zur Erzeugung eines logischen Pegels "1" an
diesem Rückstell-Eingang der Latch-Freigabe-
Steuervorrichtung, immer wenn ein logischer Pegel "1" an
entweder dem Rückstell-Eingang oder dem Direkt-Rückstell-
Eingang der Direkt-Rückstell-Steuervorrichtung anliegt.
19. Logische Vorrichtung gemäß Anspruch 15, dadurch
gekennzeichnet, daß eine erste Verzögerungseinrichtung
(216) vorgesehen ist, mit einem Einstell-Eingang und
einem Ausgang, der mit dem Einstell-Eingang der
Multiplexer-Vorrichtung verbunden ist, um an dem
Einstell-Eingang der Multiplexer-Vorrichtung eine
Fortpflanzungsverzögerung einzuführen, und eine zweite
Verzögerungsvorrichtung (218) vorhanden ist, mit einem
Rückstell-Eingang und einem Ausgang, der mit dem
Rückstell-Eingang der Multiplexer-Vorrichtung verbunden
ist, um an dem Rückstell-Eingang der Multiplexer-
Vorrichtung eine Fortpflanzungsverzögerung einzuführen.
20. Logische Vorrichtung gemäß Anspruch 19, dadurch
gekennzeichnet, daß weiterhin eine dritte Verzögerungs
vorrichtung (214) vorhanden ist, mit einem Einstell-
Eingang und einem Ausgang, der mit dem Einstell-Eingang
der ersten Verzögerungsvorrichtung zum Einführen einer
Fortpflanzungsverzögerung verbunden ist, und daß eine
vierte Verzögerungsvorrichtung (220) vorhanden ist, mit
einem Rückstell-Eingang und einem Ausgang, der mit dem
Rückstell-Eingang der zweiten Verzögerungsvorrichtung zum
Einführen einer Fortpflanzungsverzögerung verbunden ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/844,362 US5333154A (en) | 1992-03-02 | 1992-03-02 | Digital data generation system including programmable dominance latch |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4306463A1 true DE4306463A1 (en) | 1993-09-23 |
DE4306463C2 DE4306463C2 (de) | 2001-05-17 |
Family
ID=25292516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4306463A Expired - Lifetime DE4306463C2 (de) | 1992-03-02 | 1993-03-02 | System zur Erzeugung von Datensignalen zur Anlegung an ein in Prüfung befindliches Gerät mit unabhängig voneinander einstellbaren steigenden und fallenden Flanken |
Country Status (3)
Country | Link |
---|---|
US (1) | US5333154A (de) |
JP (1) | JP3054630B2 (de) |
DE (1) | DE4306463C2 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4436494A1 (de) * | 1993-10-13 | 1995-04-20 | Advantest Corp | Prüfgerät für Halbleiter-ICs |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5333154A (en) | 1992-03-02 | 1994-07-26 | Tektronix, Inc. | Digital data generation system including programmable dominance latch |
US5479646A (en) * | 1993-02-19 | 1995-12-26 | Intergraph Corporation | Method and apparatus for obtaining data from a data circuit utilizing alternating clock pulses to gate the data to the output |
US6490714B1 (en) * | 1996-11-27 | 2002-12-03 | Altera Corporation | Apparatus and method for in-system programming of a field programmable logic device using device-specific characterization data |
US5920222A (en) * | 1997-04-22 | 1999-07-06 | International Business Machines Corporation | Tunable pulse generator based on a wave pipeline |
US6291979B1 (en) * | 1999-02-16 | 2001-09-18 | Advantest Corporation | Apparatus for and method of detecting a delay fault |
US6291981B1 (en) * | 2000-07-26 | 2001-09-18 | Teradyne, Inc. | Automatic test equipment with narrow output pulses |
US6647538B1 (en) * | 2001-11-08 | 2003-11-11 | Lsi Logic Corporation | Apparatus and method for signal skew characterization utilizing clock division |
US6795959B1 (en) * | 2002-03-21 | 2004-09-21 | Lattice Semiconductor Corporation | Integrated delay discriminator for use with a field-programmable gate array and a method of determining a time delay thereof |
US7146517B2 (en) * | 2002-05-02 | 2006-12-05 | Cray, Inc. | Clock pulse shaver with selective enable pulse width |
US20050257104A1 (en) * | 2004-05-14 | 2005-11-17 | Wood Reed Glenn Jr | Method and apparatus for bit error rate test |
US9100027B2 (en) * | 2013-03-12 | 2015-08-04 | Uniquify, Inc. | Data interface circuit for capturing received data bits including continuous calibration |
US11334509B2 (en) * | 2013-03-12 | 2022-05-17 | Uniquify, Inc. | Continuous adaptive data capture optimization for interface circuits |
US10228866B2 (en) * | 2015-01-19 | 2019-03-12 | Western Digital Technologies, Inc. | Performance tuning for storage devices |
US20160294371A1 (en) * | 2015-04-02 | 2016-10-06 | Dialog Semiconductor (Uk) Limited | Bit-Capture Latch with Transparency Option |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DD152999A1 (de) * | 1980-09-09 | 1981-12-16 | Stephan Bocher | Schaltungsanordnung zur erzeugung zeitlich und logisch verknuepfter testsignale |
US4755758A (en) * | 1984-12-03 | 1988-07-05 | Hitachi, Ltd. | Wave formatter for a logic circuit testing system |
US4775954A (en) * | 1985-10-02 | 1988-10-04 | Ando Electric Co., Ltd | Apparatus for generating timing signals used for testing ICs having two enable input terminals |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3883756A (en) * | 1973-12-27 | 1975-05-13 | Burroughs Corp | Pulse generator with automatic timing adjustment for constant duty cycle |
US4680479A (en) * | 1985-07-29 | 1987-07-14 | New England Digital Corporation | Method of and apparatus for providing pulse trains whose frequency is variable in small increments and whose period, at each frequency, is substantially constant from pulse to pulse |
JP2845915B2 (ja) * | 1989-01-06 | 1999-01-13 | 株式会社日立製作所 | 情報再生方法および情報再生装置 |
JPH02241220A (ja) * | 1989-03-15 | 1990-09-25 | Yokogawa Hewlett Packard Ltd | パルス列発生装置 |
US5208598A (en) * | 1990-10-31 | 1993-05-04 | Tektronix, Inc. | Digital pulse generator using leading and trailing edge placement |
US5333154A (en) | 1992-03-02 | 1994-07-26 | Tektronix, Inc. | Digital data generation system including programmable dominance latch |
-
1992
- 1992-03-02 US US07/844,362 patent/US5333154A/en not_active Expired - Lifetime
-
1993
- 1993-03-02 JP JP5066089A patent/JP3054630B2/ja not_active Expired - Lifetime
- 1993-03-02 DE DE4306463A patent/DE4306463C2/de not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DD152999A1 (de) * | 1980-09-09 | 1981-12-16 | Stephan Bocher | Schaltungsanordnung zur erzeugung zeitlich und logisch verknuepfter testsignale |
US4755758A (en) * | 1984-12-03 | 1988-07-05 | Hitachi, Ltd. | Wave formatter for a logic circuit testing system |
US4775954A (en) * | 1985-10-02 | 1988-10-04 | Ando Electric Co., Ltd | Apparatus for generating timing signals used for testing ICs having two enable input terminals |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4436494A1 (de) * | 1993-10-13 | 1995-04-20 | Advantest Corp | Prüfgerät für Halbleiter-ICs |
DE4436494C2 (de) * | 1993-10-13 | 2001-11-15 | Advantest Corp | Prüfgerät für Halbleiter-ICs |
Also Published As
Publication number | Publication date |
---|---|
DE4306463C2 (de) | 2001-05-17 |
JP3054630B2 (ja) | 2000-06-19 |
US5333154A (en) | 1994-07-26 |
JPH0697782A (ja) | 1994-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4306463A1 (en) | Digital data generation system with programmable dominance-latch device - contains pattern generator producing pulses with definable leading and trailing edge durations | |
DE2658238A1 (de) | Phasenstarre schaltung | |
DE2719531A1 (de) | Digitale logikschaltung zur synchronisierung einer datenuebertragung | |
DE3022746A1 (de) | Digitale phasenkomparatorschaltung | |
DE112006000788T5 (de) | Taktübertragungsvorrichtung und Prüfvorrichtung | |
DE10130123B4 (de) | Verzögerungsregelkreis zur Erzeugung komplementärer Taktsignale | |
DE69835190T2 (de) | Schaltung zur Taktrückgewinnung | |
DE4143350C2 (de) | Verfahren zur Steuerung der Taktung eines Impulsbursts | |
DE3801993C2 (de) | Zeitgebersystem | |
EP0903859A2 (de) | Frequenzteiler mit geringem Stromverbrauch | |
DE4433512C2 (de) | Wellenform-Formatierungseinrichtung | |
DE4428545A1 (de) | Schaltungsanordnung zur Umwandlung eines seriellen Datensignals in ein paralleles Datensignal | |
EP0042961B1 (de) | Verfahren und Anordnung zur Erzeugung von Impulsen vorgegebener Zeitrelation innerhalb vorgegebener Impulsintervalle mit hoher zeitlicher Auflösung | |
DE2433885A1 (de) | Verfahren und vorrichtung zum synchronisieren eines testinstruments auf ein digitales system | |
DE10152102B4 (de) | Vorrichtung zum Detektieren von Eingangssignalflanken zur Signalverarbeitungsausführung auf der Basis von Flankenzeitsteuerungen | |
DE112005002545T5 (de) | Taktgenerator und Prüfvorrichtung | |
DE2435057A1 (de) | Schaltungsanordnung zum synchronisieren und/oder erneuten ausloesen eines generators zum erzeugen einer folge von pseudozufaelligen binaersignalen | |
DE4139340A1 (de) | Schaltungsanordnung zum abtasten eines signals | |
DE3633024C2 (de) | Schaltungsanordnung für die Phasensynchronisierung zweier Taktimpulsfolgen | |
DE4234346C2 (de) | Horizontal-Oszillationsschaltung | |
DE4001065C2 (de) | ||
EP0392636B1 (de) | Integrierte Schaltungsanordnung | |
DE3835259C2 (de) | Schaltungsanordnung zum Empfang von seriell übertragenen digitalen Daten | |
DE4143349C2 (de) | Verfahren zur Kalibrierung von Zeiteinstellungen in einem digitalen Impulsgenerator | |
DE4123007A1 (de) | Verfahren und anordnung zur anpassung von datenraten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8380 | Miscellaneous part iii |
Free format text: DER VERTRETER IST ZU AENDERN IN: HOFSTETTER, SCHURACK & SKORA, 81541 MUENCHEN |
|
8364 | No opposition during term of opposition | ||
R071 | Expiry of right | ||
R071 | Expiry of right |