-
Hintergrund
der Erfindung
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf eine Schaltung zum Erzeugen
eines Ausgangsignal-Impulses mit einer Vorderflanke und einer Rückflanke,
die bezüglich
eines Referenz-Taktsignals genau zeitabgestimmt sind.
-
Beschreibung
des Stands der Technik
-
Prüfgeräte für integrierte
Schaltungen (IC) führen
Anschlüssen
einer zu prüfenden
integrierten Schaltung (IC) Eingabe-Prüfsignal-Impulse
zu und tasten durch die integrierte Schaltung (IC) erzeugte Ausgabesignale
zu genau gesteuerten Zeitpunkten ab. IC-Prüfgeräte stimmen derartige Aktionen
als Reaktion auf Impulse von Eingabe-Zeitabstimmungssignalen ab,
die durch Zeitabstimmungssignal-Generatoren erzeugt werden. Ein
typischer Zeitabstimmungssignal-Generator des Stands der Technik
verwendet eine stabile hochfrequente Taktsignal-Quelle, wie z.B. einen Kristall-Oszillator,
um ein genaues Referenz-Taktsignal bereitzustellen. Der Generator
bestimmt, wann ein Ausgabe-Zeitabstimmungssignal-Impuls zu erzeugen
ist, indem er Impulse des Referenz-Taktsignals zählt. Die Auflösung, mit
der der Zeitabstimmungssignal-Generator die Zeitabstimmung seiner
Ausgabesignal-Impulse einstellen kann, ist auf die Periode des Referenz-Taktsignals
begrenzt, da die Zeitabstimmungssignal-Frequenz nur ein geradzahliges
Vielfaches des Referenzsignals sein kann. Da jedoch die Geschwin digkeit
integrierter Schaltungen zunimmt, muss auch die Auflösung der Zeitabstimmungssignale
erhöht
werden, die in Prüfgeräten für integrierte
Schaltungen verwendet werden.
-
Eine
Lösung
des Problems zum Erhöhen
der Auflösung
von Zeitabstimmungssignalen über
die Periode des Referenz-Taktsignals hinaus ist in dem US-Patent
4,231,104 offenbart, das am 28. Oktober 1980 an Richard P. St. Clair
erteilt wurde. St. Clairs Signalgenerator verwendet ebenfalls einen
Zähler zum
Zählen
von Impulsen eines Oszillators und Erzeugen eines Ausgangssignal-Impulses,
wenn der Zählwert
eine vorbestimmte Grenze erreicht. Die Zähler-Ausgabe läuft dann
jedoch durch eine Verzögerungsleitung
hindurch, um zu einem Ausgabe-Zeitabstimmungssignal-Impuls
des Generators zu werden. Die Verzögerung der Verzögerungsleitung
kann über
einen Bereich hinweg fein eingestellt werden, der kleiner als die
Periode des Oszillators ist. Somit kann der Zeitabstimmungssignal-Generator die Zeitabstimmung
von Impulsen des Ausgabe-Zeitabstimmungssignals
mit einer Auflösung
einstellen, die feiner als die Periode des Referenz-Taktsignals
ist. Die Frequenz der Zeitabstimmungssignal-Ausgabe kann ein ungerades
Vielfaches der Referenz-Taktsignal-Eingabe sein.
-
Der
Zeitabstimmungssignal-Generator von St. Clair hat zwei Nachteile.
Erstens erfordert der Generator eine relativ komplizierte und kostspielige "Umlauf-Restwert"-Logik, um die Verzögerung der Verzögerungsleitung
zu steuern. Zweitens muss die Verzögerungsleitung genau kalibriert
werden, und ihre Herstellung ist kostspielig und schwierig.
-
Der
Artikel "100-MHz-Treibermodul
für einen Pattern-Generator" von A. Schulz et
al., veröffentlicht am
4. Januar 1991 in Nachrichtentechnik Elektronik, beschreibt eine
Schaltung zum Erzeugen eines digitalen Ausgangssignals, bei dem
ein Haupt-Taktsignal die Flanken-Zeitabstimmung steuert. Das Haupt-Taktsignal
wird in eine Gruppe von k Zeitabstimmungssignalen umgewandelt, die
jeweils dieselbe Frequenz wie das Haupt-Taktsignal haben, jedoch in
der Phase gleichmäßig verteilt
sind. Ein Speicher liefert ein gesondertes Datenbit an jedes Register von
k Drei-Zustand-Registern bei jedem Impuls des Haupt-Taktsignals,
und jedes Zeitabstimmungssignal steuert den Drei-Zustand-Steuerungseingang
eines gesonderten Registers der k Register an. Die Ausgänge der
Register sind zusammengeschaltet, um das digitale Ausgangssignal
zu erzeugen. Da die Zeitabstimmungssignal-Ausgabe nur ein Register
zu einem Zeitpunkt freigibt, steuert der Dateninhalt jedes Registers
jeden k-ten Datenzyklus des digitalen Ausgangssignals. Die Vorrichtung
kann die Zeitabstimmung von Ausgangssignal-Flanken mit einer Auflösung steuern,
die ein 1/k-tel der Periode des Haupt-Taktsignals ist. Ein Nachteil
der Schaltung besteht darin, dass Differenzen der Reaktionszeit
der Register verursachen können,
dass bei zwei Registern für
eine kurze Zeitdauer der Ausgang freigegeben ist, wenn die Zeitabstimmungssignale
den Ausgang eines Registers ausschalten und den Ausgang des nächsten Registers
einschalten. Dies verursacht abzulehnende Rauschspitzen in der Stromversorgung
der Schaltung.
-
Die
am 28. Oktober 1995 veröffentlichte
WO 95/28768 offenbart eine Multiplexer-Signalspeicherschaltung (Latch)
mit N Latch-Schaltungen
und N-Rücksetz-Schaltungen,
deren Ausgänge
mit demselben Ausgangsknoten verbunden werden. Sie bezieht sich
jedoch lediglich auf die Verbesserung der Verzögerungszeit bei einer Multiplexer-Signalspeicherschaltung,
und es gibt keinen Hinweis dafür, dass
sie als Ausgangsregister verwendet werden kann.
-
Es
wird daher ein kostengünstiger
Zeitabstimmungssignal-Generator
benötigt,
der die Zeitabstimmung von Ausgabe-Zeitabstimmungssignal-Impulsen
mit einer hohen Auflösung
steuern kann, ohne dabei ein wesentliches Rauschen zu verursachen.
-
Zusammenfassung
der Erfindung
-
Gemäß einem
Ausführungsbeispiel
der Erfindung wird ein Gerät
gemäß Anspruch
1 bereitgestellt.
-
Gemäß der vorliegenden
Erfindung enthält ein
Zeitabstimmungssignal-Generator einen spannungsgesteuerten Oszillator
zum Erzeugen einer Gruppe von N Referenzsignalen, die mit einem
Referenz-Taktsignal frequenzverriegelt sind und in der Phase verteilt
sind, um die Periode des Referenz-Taktes in N Intervalle gleichmäßig aufzulösen. Der
Zeitabstimmungssignal-Generator
reagiert auf eine Sequenz von Steuerungswörtern, wobei Bits von jedem
Steuerungswort die Bestätigung
einer Gruppe aus N Setz-Signalen und einer Gruppe aus N Rücksetz-Signalen steuern,
bei denen N größer als
1 ist. Der Zeitabstimmungssignal-Generator enthält auch N Setz-Schaltungen
und N Rücksetz-Schaltungen.
Jede Setz-Schaltung empfängt
ein gesondertes Signal der Setz-Signale und ein gesondertes Signal der
N Referenz-Signale. Jede Setz-Schaltung koppelt einen Ausgangsknoten
an eine Quelle mit einem hohen Logikpegel nur dann, wenn ihre empfangenen Setz-
und Referenz-Signale gleichzeitig bestätigt werden. Jede Rücksetz-Schaltung
empfängt
ein gesondertes Signal der Rücksetz-Signale
und ein gesondertes Signal der N Referenz-Signale und koppelt den
Ausgangsknoten an eine Quelle mit tiefem Logikpegel nur dann, wenn
ihre empfangenen Rücksetz- und
Referenz-Signale gleichzeitig bestätigt werden. Eine bistabile
Schaltung erfasst den Logikpegel des Ausgangsknotens, wenn der Ausgangsknoten
mit einer der Quellen mit hohem Logikpegel oder tiefem Logikpegel
verbunden ist und hält
den Ausgangsknoten auf dem zuletzt erfassten Logikpegel, wenn der Ausgangsknoten
mit der einen oder der anderen der Quellen nicht mehr verbunden
ist.
-
Die
Zeitabstimmungssignal-Ausgabe wird an dem Ausgangsknoten erzeugt.
Die Setz- und Rücksetz-Signale
wählen
aus, welche Referenz-Signale die Zeitabstimmung der Vorder- und
Rückflanken
des Ausgabe-Zeitabstimmungssignals steuern. Durch Anlegen des neuen
Steuerungswortes an den Generator während jedes Zyklus des Taktsignals
kann ein Benutzer die Zeitabstimmung der Vorder- und Rückflanken
von Impulsen des Ausgabe-Zeitabstimmungssignals mit einer Auflösung steuern,
die ein 1/Ntel der Periode des Referenztaktes ist.
-
Gemäß einem
weiteren Gesichtspunkt der Erfindung enthält jede Setz-Schaltung ein
Logik-Gatter, das ein Setz-Signal und ein Referenz-Signal empfängt und
ein Ausgangssignal erzeugt, das anzeigt, wann die empfangenen Setz-
und Referenz-Signale gleichzeitig bestätigt werden. Der Ausgang des Logik-Gatters
steuert einen Transistor, der den Ausgangsknoten an die Quelle mit
hohem Logikpegel selektiv ankoppelt. Jede Rücksetz-Schaltung enthält ein Logik-Gatter, das ein
Rücksetz-Signal
und ein Referenz-Signal empfängt
und ein Ausgabesignal erzeugt, das anzeigt, wann die empfangen Rücksetz- und
Referenz-Signale gleichzeitig bestätigt werden. Die Ausgabe des
Logik-Gatters der Rücksetz-Schaltung
steuert einen Transistor, der den Ausgangsknoten an die Quelle mit
tiefem Logikpegel selektiv ankoppelt.
-
Es
ist wünschenswert,
ein Verfahren und ein Gerät
bereitzustellen, um ein Ausgabesignal zu erzeugen, dessen Impulse
ei ne Zeit-Referenz zu Impulsen eines periodischen Referenz-Taktsignals haben
und bei dem die Zeitabstimmung der Ausgangssignal-Impulse mit einer
Auflösung
eingestellt werden kann, die feiner als die Periode des Referenz-Taktsignals
ist.
-
Der
Schlussabschnitt dieser Beschreibung stellt den Gegenstand der vorliegenden
Erfindung klar heraus und beansprucht ihn gesondert. Diejenigen,
die sich zu den Fachleuten auf diesem Gebiet zählen, verstehen jedoch sowohl
die Organisation und das Verfahren zur Durchführung der Erfindung sowie weitere
Vorteile und Aufgaben der Erfindung am besten beim Lesen der restlichen
Abschnitte der Beschreibung in Anbetracht der begleitenden Zeichnung(en),
wobei gleichartige Bezugszeichen sich auf gleichartige Elemente
beziehen.
-
Kurzbeschreibung der Zeichnung(en)
-
1 veranschaulicht
in Form eine Blockdiagramms einen Zeitabstimmungssignal-Generator gemäß einem
bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung;
-
2A veranschaulicht
ein typisches flanken-erzeugendes NAND-Gatter von 1;
-
2B veranschaulicht
ein typisches flanken-erzeugendes AND-Gatter von 1;
-
3 ist
ein Zeitabstimmungsdiagramm bzw. Signalverlaufsdiagramm, das den
Betrieb der Schaltung von 1 veranschaulicht,
wenn sie zum Erzeugen eines einfachen periodischen Ausgabesignals
programmiert ist;
-
4 ist
ein Zeitabstimmungs-Diagramm bzw. Signalverlaufsdiagramm, das den
Betrieb der Schaltung von 1 veranschaulicht,
wenn sie zum Erzeugen eines komplexen periodischen Ausgabesignals
programmiert ist;
-
5 veranschaulicht
in Form eines Blockdiagramms einen Zeitabstimmungssignal-Generator gemäß einem
alternativen Ausführungsbeispiel
der vorliegenden Erfindung;
-
6A veranschaulicht
ein typisches flanken-erzeugendes NAND-Gatter von 5;
-
6B veranschaulicht
ein typisches flanken-erzeugendes AND-Gatter von 5;
und
-
7 ist
ein Zeitabstimmungs-Diagramm bzw. Signalverlaufsdiagramm, das den
Betrieb der Schaltung von 5 veranschaulicht.
-
Beschreibung
der bevorzugten Ausführungsbeispiele
-
1 veranschaulicht
in Form eines Blockdiagramms einen Zeitabstimmungssignal-Generator 10 gemäß einem
bevorzugten Ausführungsbeispiel der
vorliegenden Erfindung. Der Generator 10 erzeugt ein Ausgabe-Zeitabstimmungssignal
(TIMING) mit einer einstellbaren Frequenz, die ein ganzzahliges
oder nicht-ganzzahliges Vielfaches der Frequenz eines Referenz-Taktsignal CLOCK
sein kann, das von einer Taktsignal-Quelle 12 erzeugt wird.
Der Generator 10 enthält
eine Taktsignal-Quelle 12,
einen Ring-Oszillator 14, eine Phasenregelkreis-Steuerungsvorrichtung
(PLL) 16, N Setz-Schaltungen 19(1)–19(N),
N Rücksetz-Schaltungen 20(1)–20(N), eine
programmier bare Logikschaltung 21 und eine bistabile Signalspeicherschaltung
(Latch) 23. (N ist eine ganze Zahl größer als 1.)
-
Der
Ring-Oszillator 14 erzeugt eine Gruppe von N Ausgabe-Referenzsignale T(1)–T(N), die
mit dem Taktsignal (CLOCK) mittels einer herkömmlichen Phasenregelkreis-Steuerungsvorrichtung
(PLL) 16 frequenzverriegelt sind. Abgreifsignale T(1)–T(N) sind
derart phasenverteilt, dass ihre Vorderflanken die Periode des Taktsignals
gleichmäßig in N
gleiche Segmente unterteilen. Nur das Referenzsignal T(1) ist mit
dem Taktsignal CLOCK phasenverriegelt.
-
Die
programmierbare Logikschaltung 21 erzeugt wiederholt eine
Sequenz von ausgegebenen 2N-Bit-Datenwörtern DATA_OUT. Die Logikschaltung 21 empfängt das
CLOCK-Signal und erzeugt jedes ausgegebene Wort der Sequenz DATA_OUT
als Reaktion auf jeden Impuls des CLOCK-Signals. Jedes DATA_OUT-Wort
besteht aus einer Gruppe von N "Setz"-Bits SE(1)–SE(N) und
einer Gruppe aus N "Rücksetz"-Bits RE(1)–RE(N).
Wie weiter unten besprochen wird, kann ein Benutzer eine gewünschte Datensequenz
in die Logikschaltung 21 laden, und die Logikschaltung 21 erzeugt
diese Sequenz wiederholt als ihre Ausgabe. Die DATA_OUT-Sequenz steuert die
Eigenart des ausgegebenen TIMING-Signals einschließlich seiner
Phase, seiner Frequenz und seines Tastgrades.
-
Jede
Setz-Schaltung 19(J) (wobei J eine beliebige ganze Zahl
von 1 bis N ist) enthält
einen invertierenden Flanken-Generator N(J) und einen PMOS-Transistor
QP(J). Jeder Generator N(J) empfängt
als Eingabe das Referenzsignal P(J) und ein DATA_OUT-Wortbit SE(J).
Wenn SE(J) hoch ist, erzeugt der Flanken-Generator N(J) einen kurzen,
negativ werdenden Ausgabeimpuls. Die Ausgabe des Flanken-Generator
N(J) steuert den Gate-Anschluss des Transistors QP(J) an, so dass
sein Source-Anschluss
und Drain-Anschluss zwischen einer Quelle mit hohem Logikpegel (VDD)
und einem Ausgangsknoten 26 gekoppelt werden. Wenn es während einem
beliebigen Taktzyklus CLOCK bestätigt
wird, teilt das gesetzte Bit SE(J) dem Flanken-Generator N(J) mit,
den Transistor QP(J) auf der Vorderflanke eines P(J)-Impulses kurz
einzuschalten. Der Transistor QP(J) steuert das Zeitabstimmungssignal
TIMING dann auf einen hohen Logikpegel.
-
Jede
Rücksetz-Schaltung 20(J) enthält einen
nichtinvertierenden Flanken-Generator A(J) und einen NMOS-Transistor
QN(J). Der Flanken-Generator A(J) empfängt das Referenzsignal P(J)
und das DATA_OUT-Wort-Rücksetz-Bit
RE(J). Die Ausgabe des Flanken-Generators A(N) steuert den Gate-Anschluss
des Transistors QN(J) an, dessen Source-Anschluss und Drain-Anschluss
zwischen einer Quelle mit tiefem Logikpegel VSS und einem Ausgangsknoten
(26) gekoppelt bzw. geschaltet sind. Wenn es während eines
beliebigen Taktzyklus CLOCK bestätigt
wird, gibt das Rücksetz-Bit
RE(J) den Flanken-Generator A(N) frei. Auf der Vorderflanke eines
T(J)-Signals erzeugt der Flanken-Generator A(N)
einen kurzen, positiv werdenden Impuls, der den Transistor QN(J)
kurz einschaltet. Der Transistor QN(J) steuert dann das Zeitabstimmungssignal
TIMING auf einen tiefen Logikpegel. Die Pulsweite des Flankengenerator-Ausgabesignals
sollte kleiner als 1/N der Periode des P(J)-Signals sein, wobei
N die Anzahl der Abgreifsignale ist.
-
Die
bistabile Signalspeicherschaltung 23 besteht aus einem
Paar Invertern I1, I2. Der Ausgang des Inverters I1 ist an den Eingang
des Inverters I2 angeschlossen. Der Eingang des Inverters I1 und
der Ausgang des Inverters I2 sind an den Ausgangsknoten 26 angeschlossen.
Die Inverter I1, I2 sind aus relativ schwachen Transistoren gebildet,
während
die Transistoren QP(1)–QP(N)
und QN(1)–QN(N)
relativ stark sind. Wenn eine beliebige Setz-Schaltung 19(I) den
Knoten 26 momentan nach oben zieht, steuert der Inverter
I1 seinen Ausgang auf den niedrigen Pegel, und der Inverter I2 steuert
seinen Ausgang auf den hohen Pegel, so dass, wenn die Setz-Schaltung anschließend das
Ankoppeln des Anschlussknotens 26 an VDD stoppt, der Inverter
I2 den Knoten 26 weiterhin auf hohem Pegel hält. Wenn
umgekehrt irgendeine Rücksetz-Schaltung 20(I) den
Knoten 26 momentan nach unten zieht, steuert der Inverter
I1 seinen Ausgang auf den hohen Pegel, und der Inverter I2 steuert
seinen Ausgang auf den niedrigen Pegel, so dass, wenn die Rücksetz-Schaltung
den Knoten 26 nicht mehr nach unten zieht, der Inverter
I2 den Knoten 26 weiterhin nach unten zieht. Die bistabile
Schaltung 23 hält
somit das Zeitabstimmungssignal TIMING an dem Knoten 26 auf
seinem aktuellen Logikpegel, wenn keine der Setz- oder Rücksetz-Schaltungen 19, 20 den
Knoten aktiv ansteuern.
-
Wenn
z.B. das Setz-Bit SE(2) während
eines Taktsignal-Zyklus CLOCK bestätigt wird, reagiert die Setz-Schaltung 19(2) auf
die Vorderflanke eines Referenzsignal-Impulses P(2), indem sie den
Transistor QP(2) kurzeitig einschaltet, wodurch der Knoten 26 an
VDD gekoppelt wird und das Zeitabstimmungssignal TIMING auf den
hohen Pegel gesteuert wird. Auf der Vorderflanke des Zeitabstimmungssignal-Impulses
TIMING geht der Ausgang des Inverters I1 auf den tiefen Pegel, und
der Ausgang des Inverters I2 geht auf den hohen Pegel. Daraufhin
hält der
Inverter I2 somit das Zeitabstimmungssignal TIMING am Knoten 26 auf
dem hohen Logikpegel, bis es durch einen der Transistoren QN(1)–QN(N) wieder
auf den tiefen Pegel gezogen wird.
-
Wenn
umgekehrt das Rücksetz-Bit
RE(2) während
eines Taktsignal-Zyklus CLOCK bestätigt wird, reagiert die Rücksetz-Schaltung 20(2) auf
die Vorderflanke eines Referenzsignal-Impulses T(2), indem sie den Transistor
QN(2) kurzeitig einschaltet, wodurch der Knoten 26 an VSS
gekoppelt wird und das Zeitabstimmungssignal TIMING auf den tiefen Pegel
gesteuert wird. Wenn das Zeitabstimmungssignal TIMING auf den tiefen
Pegel geht, geht der Ausgang des Inverters I1 auf den hohen Pegel,
und der Ausgang des Inverters I2 geht auf den tiefen Pegel. Auf
der Rückflanke
des Referenzsignal-Impulses T(2) schaltet der Transistor QN(2) der
Rücksetz-Schaltung 20(2) ab,
wodurch der Ausgangsknoten 26 von VSS abgekoppelt wird.
Der Inverter I2 hält darauf
das Zeitabstimmungssignal TIMING am Knoten 26 weiterhin
auf dem tiefen Logikpegel, bis der Knoten 26 anschließend durch
eine der Setz-Schaltungen 19(1)–19(N) auf den hohen
Logikpegel gezogen wird.
-
Somit
steuert die Logikschaltung 21 die Zeitabstimmung der Zeitabstimmungssignal-Impulse
TIMING durch Erzeugen einer Sequenz von DATA_OUT-Wörtern, wobei
jedes DATA_OUT-Wort der Sequenz als Reaktion auf jeden Impuls des
Taktsignals CLOCK erzeugt wird. Da die Vorderflanken der Referenzsignale
T(1)–T(N)
die Periode des Taktsignals CLOCK in N Intervalle gleichmäßig unterteilen,
steuert die DATA_OUT-Sequenz die Zeitabstimmung des Zeitabstimmungssignal-Impulses
TIMING mit einer Auflösung
die 1/N der Periode des Referenztakt-Signals ist. Es sollte gesagt
werden, dass DATA_OUT-Wörter,
die den Setz-Signalen SE(1)–SE(N)
und den Rücksetz-Signalen RE(1)–RE(N) zugeführt werden
und die Setz- und Rücksetz-Schaltungen 19, 20 steuern,
nicht so programmiert werden sollten, dass sie den Setz- und Rücksetz-Schaltungen
gestatten, zu versuchen, den Knoten 26 gleichzeitig nach
oben und nach unten zu ziehen. Das heißt, die entsprechenden SE(J)-
und RE(J)-Bits in einem beliebigen DATA_OUT-Wort sollten nicht gleichzeitig
gesetzt werden.
-
2A veranschaulicht
den Flanken-Generator N(1) und den Transistor QP(1) von 1 in
einer ausführlicheren
Form. Die Flanken-Generatoren N(2)–N(N) sind ähnlich wie N(1). Der Flanken-Generator
N(1) enthält
eine Abfolge von Invertern 30, ein NAND-Gatter 31,
einen Drei-Zustand-Puffer 32 und einen Inverter 33.
Das Zeitabstimmungssignal T(1) wird einem Eingang des NAND-Gatters
direkt zugeführt
und einem anderen Eingang des NAND-Gatters 31 indirekt über die
Inverter 30 zugeführt.
Eine ausreichend große
Anzahl von Invertern 30 werden vorgesehen, um die Ankunft
von T(1) am zweiten Eingang des NAND-Gatters um beinahe 1/2 Zyklus
von T(1) zu verzögern,
so dass die beiden Eingänge
des NAND-Gatters 31 nur kurzzeitig gleichzeitig hoch sind.
Somit erzeugt das NAND-Gatter 31 einen kurzen, negativ
werden Ausgabe-Impuls während
jedes Zyklus von T(1), wodurch der Drei-Zustand-Puffer 32 kurzzeitig
freigegeben wird. Der Puffer 32 verbindet das Setz-Freigabesignal
SE(1) mit dem Inverter 33. Wenn SE(1) hoch ist, während der
Puffer 32 freigegeben ist, erzeugt der Inverter 33 einen
kurzen, negativ werdenden Impuls, wodurch der Gate-Anschluss des Transistors
QP(1) freigegeben bzw. (stroboskopartig) ein- und ausgeblendet wird
und QP(1) kurzzeitig eingeschaltet wird. Der Inverter 33 ist
so vorgespannt, dass beim Drei-Zustands-Betrieb des Puffers 32 der Inverter 33 am
Gate-Anschluss des
Transistors QP(1) nach oben zieht, um QP(1) ausgeschaltet zu halten.
-
2B veranschaulicht
den Flanken-Generator A(1) und den Transistor QN(1) von 1 in
ausführlicher
Form. Die Flanken-Generatoren A(2)–A(N) sind ähnlich wie A(1). Der Flanken-Generator A(1) enthält eine
Abfolge von Invertern 34, ein NAND-Gatter 35,
einen Drei-Zustands-Puffer 36 und einen Verstärker 37.
Das Zeitabstimmungssignal T(1) wird einem Eingang des NAND-Gatters 35 direkt
zugeführt und
einem anderen Eingang des NAND-Gatters 35 über die
Inverter 37 indirekt zugeführt. Das NAND-Gatter 35 erzeugt
einen kurzen, negativ werdenden Ausgabe-Impuls während jedes Zyklus von T(1),
wodurch der Drei-Zustands-Puffer 36 kurzzeitig freigegeben
wird. Der Puffer verbindet das Rücksetz-Freigabesignal
RE(1) mit dem Verstärker 37. Wenn
SE(1) hoch ist, während
der Puffer 32 freigegeben ist, erzeugt der Verstärker 37 einen
kurzen, positiv werdenden Impuls, der den Gate-Anschluss des Transistors
QN(1) freigibt bzw. (stroboskopartig) ein- und ausblendet und QN(1)
kurzzeitig einschaltet. Der Verstärker 37 ist so vorgespannt,
dass beim Drei-Zustands-Betrieb des Puffers 36 der Verstärker 37 an dem
Gate-Anschluss des Transistors QN(1) nach unten zieht, um QN(1)
ausgeschaltet zu halten.
-
Durch
passende Auswahl der DATA_OUT-Sequenz kann ein Benutzer den Zeitabstimmungssignal-Generator 21 programmieren,
um irgendeines einer großen
Vielzahl von Zeitabstimmungssignal-Mustern TIMING zu erzeugen. 3 ist ein
Zeitabstimmungs-Diagramm
bzw. Signalverlaufsdiagramm, das die Funktionsweise des Zeitabstimmungssignal-Generators 10 von 1 in
einem vereinfachten Beispiel veranschaulicht, bei dem N = 3. In
diesem Beispiel hat das gewünschte
Ausgabe-Zeitabstimmungssignal TIMING eine Periode von 5/3 derjenigen
des Taktsignals CLOCK. Während
einer ersten CLOCK-Signalperiode P1 wird nur das BIT SE(2) bestätigt. Wenn
SE(2) hoch ist, steuert die Setz-Schaltung 19(2) das Zeitabstimmungssignal
TIMING als Reaktion auf eine Vorderflanke eines Referenzsignal-Impulses
T(2) auf den hohen Pegel. Während
einer zweiten CLOCK-Signalperiode
P2 wird das Steuerungs-Bit RE(1) bestätigt, und die Rücksetz-Schaltung 20(1) steuert
das Zeitabstimmungssignal TIMING als Reaktion auf die Vorderflanke
eines Impulses des Referenzsignal T(1) auf den niedrigen Pegel.
Während
der CLOCK-Signalperiode P3 werden die Steuerungs-Bits SE(1) und
RE(3) beide bestätigt.
Die Setz-Schaltung 19(1) steuert das Zeitabstimmungssignal
TIMING als Reaktion auf den T(1)-Signalimpuls
anfänglich
auf den hohen Pegel, und die Rücksetz-Schaltung 20(3) steuert
das Zeitabstimmungssignal TIMING später als Reaktion auf den T(3)-Signalimpuls
wieder auf den tiefen Pegel. Während
der CLOCK-Signalperiode P4 wird das Freigabesignal SE(3) bestätigt, und
die Setz-Schaltung 19(3) steuert das Zeitabstimmungssignal
TIMING als Reaktion auf einen Referenzsignal-Impuls T(3) auf den
hohen Pegel. Während
der CLOCK-Signalperiode P5 wird das Freigabesignal RE(2) bestätigt, und
die Rücksetz-Schaltung 20(2) steuert
das Zeitabstimmungssignal TIMING als Reaktion auf den Referenzsignal-Impuls T(2) auf den
tiefen Pegel. Beginnend bei Periode P6 wird das Steuerungssignal-Muster,
das in den Perioden P1–P5
erscheint, wiederholt. Somit kann man sehen, dass, um zu bewirken,
dass der Generator 10 das Ausgabe-Zeitabstimmungssignal-Muster
TIMING von 2 erzeugt, die Logikschaltung 21 so
programmiert werden muss, dass sie eine DATA_OUT-Sequenz erzeugt, die sich jeweils nach
fünf Zyklen
des CLOCK-Signals wiederholt.
-
4 ist
ein Zeitabstimmungs-Diagramm bzw. Signalverlaufsdiagramm, das die
Funktionsweise des Zeitabstimmungs-Generators 10 von 1 veranschaulicht,
wenn er programmiert wird, um ein komplexeres Zeitabstimmungssignal
TIMING mit einer Periode zu erzeugen, die 10/3 der Taktsignal-Periode
CLOCK beträgt,
wobei zwei kurze Impulse und ein langer Impuls in jedem Zyklus erzeugt
werden. Damit die Generatorschaltung 10 eine Zeitabstimmungssignal-Ausgabe
TIMING mit diesem Muster erzeugt, muss die Logikschaltung 21 programmiert werden,
um eine DATA_OUT-Sequenz zu erzeugen, die sich nach allen 10 Zyklen
des CLOCK-Signals wiederholt. Der Einfachheit halber sind nur die
Ausgangsdaten-Sequenz-Bits SE(1)–SE(3) und RE(1)–RE(3) für die ersten
sechs Zyklen des CLOCK-Signals in 4 dargestellt.
-
Wie
man in 1 sieht, umfasst der Ring-Oszillator 14 zweckmäßigerweise
eine Gruppe aus N identischen Invertern 28(1)–28(N),
die in Serie geschaltet sind, um einen Ring zu bilden. Die PLL-Steuerungsvorrichtung 16 führt den
Invertern 28 ein Leistungssignal VPL zu, um ihre Umschaltgeschwindigkeit
zu steuern. Die Taktsignal-Ausgabe CLOCK der Quelle 12 und
die T(1)-Referenzsignal-Ausgabe des Oszillators 14 werden
der PLL-Steuerungsvorrichtung 16 als Eingaben zugeführt. Die
Steuerungsvorrichtung 16 erhöht VPL, wenn T(1) dem Taktsignal
CLOCK nacheilt, und verringert VPL, wenn T(1) dem Taktsignal CLOCK
vorauseilt, wodurch T(1) mit dem Taktsignal CLOCK in Phase gebracht
wird. Wenn die Inverter 28 identisch sind und das Referenzsignal
T(1) mit dem Taktsignal CLOCK phasenverriegelt ist, sind die Impulse
der Referenzsignale T(1)–T(N),
die an den Ausgängen der
Inverter 28 erscheinen, während jeder Periode des Taktsignals
CLOCK in der Zeit gleichmäßig verteilt.
Die Phasenregelkreis-Steuerungsvorrichtungen, die zur Verwendung
als PLL-Steuerungsvorrichtung 16 geeignet sind, sind dem
Fachmann geläufig.
-
Wie
man ebenfalls in 1 sieht, enthält in dem
bevorzugten Ausführungsbeispiel
die programmierbare Logikschaltung 21 einen Zähler 22 und
einen Speicher 24. Der Zähler 22 enthält ein internes Register
zum Empfangen und Speichern eines Eingabe-Datenwertes LIMIT, der
die Länge
der DATA_OUT-Wort-Sequenz
anzeigt. Der Zähler 22 zählt die
Impulse des Taktsig nals CLOCK und erzeugt binäre Daten ADDR_OUT, welche die
Anzahl der gezählten
Impulse darstellen. Wenn Die ADDR_OUT-Daten den Wert LIMIT erreichen, setzt der
Zähler 22 seine
Ausgabezählung
auf Null zurück. Die
Logikschaltung 21 enthält
einen adressierbaren 2N-Bit-Schreib-Lese-Speicher (RAM) 24.
Ein Eingabe-Lese-Schreib-Steuerungssignal zeigt an, ob auf den Speicher 24 ein
Lese- oder Schreib-Zugriff erfolgt. Die DATA_OUT-Segenz wird definiert
durch Schreiben von Steuerungswörtern
in den Speicher 24 bei den ersten M Speicheradressen, bei
denen M der Wert von LIMIT ist. Ein Benutzer kann ein Steuerungswort
an einer Adresse in den Speicher 24 schreiben, indem er
das Steuerungswort auf eine Gruppe von Daten-Eingabeleitungen DATA_IN
gibt, die Adressen auf eine Gruppe von Daten-Adressleitungen ADDR_IN
gibt und das R/W-Signal
bestätigt. Wenn
das R/W-Signal nicht bestätigt
wird, ist der Speicher 24 in seiner Lese-Betriebsart und
wird durch die ADDR_OUT-Ausgabe des Zählers 22 adressiert.
Bei jedem Impuls des Taktsignals CLOCK inkrementiert der Zähler 22 die
Daten ADDR_OUT, um die aktuelle Adresse des Speichers 24 zu
inkrementieren. In der Lese-Betriebsart reagiert der Speicher 24 durch
Auslesen des parallelen 2N-Bit-Wortes DATA_OUT, das an der neuen
Adresse gespeichert ist.
-
5 veranschaulicht
in Form eines Blockdiagramms einen Zeitabstimmungssignal-Generator 38 gemäß einem
alternativen Ausführungsbeispiel der
vorliegenden Erfindung. Während
der Generator 10 von 1 eine periodische
Zeitabstimmungssignal-Ausgabe TIMING erzeugt, erzeugt der Generator 38 von 5 einen
einzigen Zeitabstimmungssignal-Ausgabeimpuls TIMING zu einem genauen
Zeitpunkt nach jedem Impuls eines extern erzeugten "NEXT"-Signals. Der Generator 38 enthält eine
Taktsignal-Quelle 12',
einen Ringoszillator 14',
eine Phasenregelkreis-(PLL)-Steuerungsvorrichtung 16', N Setz-Schal tungen 19(1)'–19(N)', N Rücksetz-Schaltungen 20(1)'–20(N)', eine bistabile
Signalspeicherschaltung (Latch) 23' und eine Signalspeicherschaltung
(Latch) 40.
-
Die
Vorrichtungen 12', 14', 16' und 23' sind ähnlich wie
die Vorrichtungen 12, 14, 16 und 23 von 1.
Die Signalspeicherschaltung (Latch) 40 von 5 ersetzt
die programmierbare Logikschaltung 21 von 1,
hat jedoch eine ähnliche
Funktion und führt
den Setz- und Rücksetz-Schaltungen 19' und 20' die 2N-Bit-Datenwörter DATA_OUT
zu. Die Signalspeicherschaltung 40 verriegelt einfach ein
eingegebenes 2N-Bit-Datenwort
DATA_IN von einer externen Steuerungsvorrichtung und gibt es auf
den Bus DATA_OUT als Reaktion auf jeden Impuls eines NEXT-Signals,
das von der externen Steuerungsvorrichtung zugeführt wird.
-
Jede
Setz-Schaltung 19(J)' enthält einen Flanken-Generator
N(J)' und einen
PMOS-Transistor QP(J)'.
Der Flanken-Generator N(J)' jeder Setz-Schaltung 19(J)' hat drei Eingänge: das SE(J)-Bit
des DATA_OUT-Wortes, das T(J)-Referenzsignal und ein Freigabe-Bit
SET_ENABLE, das von dem Q-Ausgang eines Flipflops 42 stammt. Wenn
alle drei Eingänge
hoch sind, zieht der Flanken-Generator N(J) den Gate-Anschluss des PMOS-Transistors QW(J)
nach unten, um den Ausgangsknoten 26' an VDD zu koppeln, wodurch das ausgegebene
Zeitabstimmungssignal TIMING auf einen hohen Logikpegel gesteuert
wird.
-
Jede
Rücksetz-Schaltung 20(J)' enthält einen
Flanken-Generator A(J)' und
einen PMOS-Transistor QN(J)'.
Der Flanken-Generator
A(J)' jeder Rücksetz-Schaltung 20(J)' hat ebenfalls
drei Eingänge:
das RE(J)-Bit des DATA_OUT-Wortes, das T(J)-Referenzsignal und ein Rücksetz-Freigabe-Bit RESET_ENABLE,
das von dem Q-Ausgang eines Flipflops 44 stammt. Wenn alle drei
Eingänge
hoch sind, zieht der Flanken-Generator A(J) den Gate-Anschluss des
PMOS-Transistors QN(J) nach oben, um den Ausgangsknoten 26' an VSS zu koppeln,
wodurch das ausgegebene Zeitabstimmungssignal TIMING auf einen tiefen
Logikpegel gesteuert wird.
-
Die
bistabile Signalspeicherschaltung (Latch) 23', die aus den Invertern I1' und I2' besteht, verriegelt
das Zeitabstimmungssignal TIMING auf seinen momentanen hohen oder
tiefen Logikpegel je nachdem, ob der Knoten 26' zuletzt mit
VDD oder mit VSS verbunden war. Die Ausgabe des Inverters I2', die auch den Knoten 26' ansteuert,
steuert den Rücksetz-Eingang
des Flipflops 42 an. Die Ausgabe des Inverters I1' steuert den Rücksetz-Eingang
des Flipflops 44 an. Das NEXT-Signal steuert die Setz-Eingänge der
Flipflops 42 und 44 an.
-
Das
NEXT-Signal teilt der Signalspeicherschaltung 40 mit, ein
eingegebenes Datenwort DATA_IN auf dem DATA_OUT-Bus zu verriegeln
und setzt auch die Flipflops 42 und 44, wodurch
das Setz-Freigabe-Signal SET_ENABLE und das Rücksetz-Freigabe-Signal RESET_ENABLE
auf den hohen Pegel gesteuert werden. Wenn ein Setz-Bit SE(J) des
DATA_IN-Wortes auf dem hohen Pegel ist, während SET_ENABLE hoch ist,
wird auf der Vorderflanke eines nächsten Impulses des Referenzsignals T(J)
durch den Flanken-Generator N(J)' der
Transistor QP(J)' eingeschaltet,
wodurch der Knoten 26' an VDD
gekoppelt wird und das Zeitabstimmungssignal TIMING auf den hohen
Wert gesteuert wird. Wenn das Zeitabstimmungssignal TIMING auf den
hohen Pegel geht, führt
das Flipflop 42 eine Rücksetzung durch
und steuert das Signal SET_ENABLE auf den tiefen Wert. Alle Flanken-Generatoren
N(1)'–N(N)' sind daraufhin blockiert
und können
auf die Referenzsignale T(1)–T(N)
bis zu einem nächsten
Impuls des NEXT-Signals nicht reagieren.
-
Wenn
ein Rücksetz-Bit
RE(J) eines DATA_IN-Wortes auf dem hohen Pegel ist, während das
Signal RESET_ENABLE auf dem hohen Pegel ist, wird auf ähnliche
Weise auf der Vorderflanke eines nächsten Impulses des Referenzsignals
T(J) der Transistor QN(J)' durch
den Flanken-Generator A(J)' eingeschaltet,
wodurch der Knoten 26' an
VSS gekoppelt wird und das Zeitabstimmungssignal TIMINIG auf den
tiefen Pegel gesteuert wird. Wenn das Zeitabstimmungssignal TIMING
auf den tiefen Pegel geht, steuert es den Ausgang des Inverters
I1' auf den hohen
Pegel, wodurch das Flipflop 44 rückgesetzt wird und das Signal
RESET_ENABLE auf den tiefen Pegel gesteuert wird. Alle Flanken-Generatoren
A(1)'–A(N)' sind daraufhin blockiert
und können auf
die Referenzsignale T(1)–T(N)
bis zu einem nächsten
Impuls NEXT-Signals nicht reagieren.
-
Somit
kann nach jedem Impuls des NEXT-Signals der Zeitabstimmungssignal-Generator 38 den Impuls
des Zeitabstimmungssignals TIMING einmal ausgeben. Die Zeitabstimmung
der Vorder- und Rückflanken
der Zeitabstimmungssignal-Impulse TIMING werden durch die Eingabe
des DATA_IN-Wortes bestimmt, um die Signalspeicherschaltung 40 in dem
Augenblick zu verriegeln, wenn sie den NEXT-Signalimpuls empfängt.
-
6A veranschaulicht
den Flanken-Generator N(1)' und
den Transistor QP(1)' von 5 in ausführlicherer
Form. Die Flanken-Generatoren N(2)'–N(N)' sind ähnlich wie
N(1)'. Der Flanken-Generator
N(1) enthält
eine Reihe von Invertern 50, ein NAND-Gatter 51,
ein AND-Gatter 54, einen Drei-Zustands-Puffer 52 und einen Inverter 53.
Das Zeitabstimmungssignal T(1) wird einem Eingang des NAND-Gatters 51 direkt
zugeführt,
und einem weiteren Eingang des NAND-Gatters 51 über die
Inverter 50 indirekt zugeführt. Eine ausreichende Anzahl
von Invertern 50 ist vorgesehen, um die Ankunft von T(1) an
dem zweiten Eingang des NAND-Gatters 51 um beinahe 1/2
Zyklus von T(1) zu verzögern,
so dass die beiden Eingänge
des NAND-Gatters 51 nur
kurz gleichzeitig auf dem hohen Pegel sind. Somit erzeugt das NAND-Gatter 51 einen
kurzen, negativ werdenden Ausgabe-Impuls während jedes Zyklus von T(1), wodurch
der Drei-Zustands-Puffer 52 kurz freigegeben wird. Der
Puffer 52 verbindet den Ausgang des AND-Gatters 54 mit
dem Inverter 53. Die Signale SE(1) und SET_ENABLE steuern
die Eingänge
des AND-Gatters 54 an. Wenn SE(1) und SET_ENABLE auf dem
hohen Pegel sind, während
der Puffer 52 freigegeben ist, erzeugt der Inverter 53 einen
kurzen, negativ werdenden Impuls, der den Gate-Anschluss des Transistors
QP(1)' freigibt
bzw. (stroboskopartig) ein- und ausblendet und QP(1)' kurzzeitig einschaltet.
Der Inverter 53 ist derart vorgespannt, dass beim Drei-Zustands-Betrieb
des Puffers 52 der Inverter an dem Gate-Anschluss des Transistors
QP(1)' nach oben
zieht, um QP(1)' ausgeschaltet
zu halten.
-
6B veranschaulicht
den Flanken-Generator A(1)' und
den Transistor QN(1)' von 5 in ausführlicherer
Form. Die Flanken-Generatoren A(2)'–A(N)' sind ähnlich wie
A(1)'. Der Flanken-Generator
A(1)' enthält eine
Reihe von Invertern 64, ein NAND-Gatter 65, einen
Drei-Zustands-Puffer 66, einen Verstärker 67 und ein NAND-Gatter 68.
Das Zeitabstimmungssignal T(1) wird einem Eingang des NAND-Gatters 65 direkt
zugeführt
und einem weiteren Eingang des NAND-Gatters 65 über die
Inverter 64 indirekt zugeführt. Das NAND-Gatter 65 erzeugt einen
kurzen, negativ werdenden Ausgabe-Impuls während jedes Zyklus von T(1),
wodurch der Drei-Zustands-Puffer 66 kurzzeitig freigegeben
wird. Der Puffer 66 verbindet den Ausgang des NAND-Gatters 68 mit
dem Verstärker 76.
Das NAND-Gatter 68 empfängt
die Signale RE(1) und RESET_ENABLE. Wenn RE(1) und RESET_ENABLE
beide auf dem hohen Pegel sind, während der Puffer 66 freigegeben
ist, erzeugt der Verstärker 67 einen
kurzen, positiv werdenden Impuls, der den Gate-Anschluss des Transistors QN(1)' freigibt bzw. (stroboskopartig)
ein- und ausblendet und ihn kurzzeitig einschaltet. Der Verstärker 67 ist
so vorgespannt, dass bei einem Drei-Zustands-Betrieb des Puffers 66 der
Verstärker 67 an dem
Gate-Anschluss des Transistors QN(1)' nach unten zieht, um QN(1)' ausgeschaltet zu
halten.
-
7 ist
ein Zeitabstimmungs-Diagramm bzw. Signalverlaufsdiagramm, das den
Betrieb der Schaltung von 5 für ein vereinfachtes
Beispiel zeigt, bei den N = 3, wobei der Benutzer das Signal DATA_IN
so eingestellt hat, dass nur die Signale SE(2) und RE(3) bestätigt werden.
Wenn, wie in 5 und 7 gezeigt,
eine externe Steuerungsvorrichtung der NEXT-Signal-Eingabe einen Impuls zuführt, um
die Signalspeicherschaltung 40 während einer Periode P1 zu verriegeln,
gibt die Signalspeicherschaltung 40 ein eingegebenes DATA_IN-Wort als
DATA_OUT-Wort aus, bei dem die Bits SE(2) und RE(3) auf dem hohen
Pegel sind. Bei dem nächsten Referenzsignal-Impuls
T(2), der während
der Periode P2 auftritt, wird das Zeitabstimmungssignal TIMING auf
den hohen Pegel gesteuert. Daraufhin wird bei dem nächsten Referenzsignal-Impuls
T(3) das Zeitabstimmungssignal TIMING auf den tiefen Pegel gesteuert.
Später,
wenn während
der Periode P4 die externe Steuerungsvorrichtung veränderte Daten DATA_IN
hat, so dass nur das Bit SE(3) auf dem hohen Pegel ist, gibt die
externe Steuerungsvorrichtung erneut einen Impuls auf das NEXT-Signal.
Das Zeitabstimmungssignal TIMING wird dann als Reaktion auf einen
T(3)-Impuls auf den hohen Pegel gesteuert. Noch später während der
Periode P6 gibt die externe Steuerungsvorrichtung erneut einen Impuls
auf das NEXT-Signal, nachdem ein neuer DATA_IN-Wert an die Signalspeicherschaltung 40 abgegeben
wurde, in der nur das Bit RE(1) auf dem hohen Pegel ist. Anschließend wird
auf den nächsten
T(1)-Impuls das Zeitabstimmungssignal TIMING auf den tiefen Pegel gesteuert.
Die Zeitabstimmungssignal-Generator-Schaltung 38 von 4 erzeugt
daher nicht-periodische Zeitabstimmungssignal-Impulse TIMING, bei denen
die externe Steuerungsvorrichtung die Zeitabstimmung und Weite der
Impulse steuert, indem geeignete DATA_IN-Wörter
der Signalspeicherschaltung 40 zugeführt werden und die Impulse
des NEXT-Signals in geeigneter Weise zeitabgestimmt werden.
-
Somit
wurden bevorzugte und alternative Ausführungsbeispiele eines Zeitabstimmungssignal-Generators
gezeigt und beschrieben, der zur Erzeugung nutzer-definierter periodischer
und nicht-periodischer Zeitabstimmungssignale mit Impulsen bestimmt
ist, die bezüglich
eines Referenz-Taktsignals zeitabgestimmt sind. In jedem der Ausführungsbeispiele
steuert der Benutzer die Zeitabstimmung von Signal-Impulsen mit
einer Auflösung,
die feiner als die Periode des Referenz-Taktes ist.
-
In
der obigen Beschreibung wurden zwar bevorzugte und alternative Ausführungsbeispiele
der vorliegenden Erfindung beschrieben, doch sind dem Fachmann zahlreiche
Abwandlungen der bevorzugten Ausführungsbeispiele geläufig, ohne
dabei den Bereich der Erfindung in ihrem weiteren Sinne zu verlassen.
Die beigefügten
Ansprüche
sollen daher sämtliche
derartigen Abwandlungen abdecken, die innerhalb des wirklichen Rahmens
der Erfindung liegen.