-
Die
vorliegende Erfindung bezieht sich allgemein auf integrierte Schaltungen
und insbesondere auf eine Verzögerungsregelschleifenschaltung.
-
Taktsignale
werden in praktisch jeder integrierten Schaltung (IC) verwendet,
um die Betriebszeitgebung der IC und/oder die Übertragung von Daten innerhalb
und zwischen ICs zu steuern. Alle einzelnen Schaltungen oder Vorrichtungen,
wie z. B. Flip-Flops und/oder Latche, in einer bestimmten IC können einen
Zustand z. B. bei einer einzelnen ansteigenden oder abfallenden
Flanke eines gemeinsamen Taktsignals ändern. Relativ große ICs,
wie z. B. Speicherchips und programmierbare Logikarrays, umfassen
tausende oder sogar Millionen derartiger einzelner Schaltungen oder
Vorrichtungen. Das Taktsignal wird üblicherweise an einen Takteingangsanschlußstift der
IC zur Verteilung zu jeder dieser zahlreichen Vorrichtungen innerhalb
der IC angelegt. So wird das Taktsignal von dem Takteingangsanschlußstift zu
Vorrichtungen auf der IC übertragen
oder weitergeleitet, die sowohl relativ nahe als auch relativ weit
entfernt von dem Takteingangsanschlußstift sind. Bis zu der Zeit,
zu der das Taktsignal die Vorrichtungen erreicht, die auf Abschnitten
der IC angeordnet sind, die relativ weit entfernt von dem Eingangsanschlußstift sind,
hat das Taktsignal wahrscheinlich an einer wesentlichen Laufzeitverzögerung gelitten.
-
Das
an dem IC-Takteingang empfangene Taktsignal wird im folgenden als
das Eingangs- oder Referenztaktsignal REF_CLK bezeichnet, wohingegen
das Taktsignal, das durch die zuletzt bediente Vorrichtung auf der
IC empfangen wird, hierin als das ausgebreitete Taktsignal P_CLK
bezeichnet wird. Die Laufzeitverzögerung zwischen den Signalen REF_CLK
und P_CLK, die im folgenden als tP bezeichnet
wird, kann unter Umständen
Schwierigkeiten beim schnittstellenmäßigen Verbinden zwischen ICs
und/oder ein Verlangsamen der Gesamtbetriebsgeschwindigkeit eines
Systems bewirken. Daten können
z. B. auf eine bezüglich
des Referenztaktsignals zeitausgerichtete Weise an eine IC geliefert
oder in dieselbe eingegeben werden, wohingegen Daten, die von der
IC ausgegeben werden, wahrscheinlich auf eine mit dem ausgebreiteten
Taktsignal zeitausgerichtete Weise bereitgestellt werden.
-
Die
Laufzeitverzögerung
tP für
eine bestimmte IC hängt
zumindest teilweise von der Konfiguration dieser bestimmten IC ab.
So variiert für
eine bestimmte IC, die unter standardmäßigen oder Nenn-Betriebsbedingungen,
-Temperaturen und -Spannungen arbeitet, tP allgemein
nicht wesentlich. tP variiert jedoch aufgrund
externer Faktoren, wie z. B. Veränderungen
der Umgebungstemperatur und/oder angelegter Spannung. Es ist von
Vorteil, die Auswirkung derartiger externer Faktoren auf die Laufzeitverzögerung tP des Referenztaktsignals durch eine Zeitausrichtung
des ausgebreiteten Taktsignals P_CLK einer IC mit dem Referenztaktsignal REF_CLK
auszugleichen. Verzögerungsregelschleifenschaltungen
sind eine Art und Weise, auf die eine derartige Zeitausrichtung
von Signalen durchgeführt wird.
-
Verzögerungsregelschleifen-
(DLL-) Schaltungen empfangen das Referenztaktsignal REF_CLK und
erzeugen ein Ausgangstaktsignal CLK_OUT, das bezüglich des Referenztaktsignals REF_CLK
vorgestellt oder verzögert
wird. Zur Bequemlichkeit werden alle Signale, die durch eine DLL erzeugt
werden, im folgenden bezeichnet, um hinsichtlich des Signals REF_CLK
verzögert
zu sein, und zwar unabhängig
davon, ob das bestimmte Signal tatsächlich hinsichtlich des Referenztaktsignals vorgestellt
oder verzögert
wird. Eine DLL verzögert das
Ausgangstaktsignal CLK_OUT um einen Zeitbetrag, der im wesentlichen
gleich der Laufzeitverzögerung
tP der IC ist, d. h. um den Zeitbetrag,
den das Referenztaktsignal REF_CLK benötigt, um sich unter standardmäßigen oder
normalen Be triebsbedingungen durch die IC auszubreiten. Ferner stellt
eine DLL das Signal CLK_OUT ein, um Veränderungen an tP aufgrund
der zuvor genannten externen Faktoren auszugleichen. Vorrichtungen,
die auf Abschnitten der IC gebildet sind, die nahe an dem Takteingangsanschluß sind,
werden üblicherweise
mit dem Signal REF_CLK versorgt, wohingegen Vorrichtungen, die auf
Abschnitten der IC gebildet sind, die relativ weit entfernt von
dem Eingangstaktsignal sind, üblicherweise
mit dem Signal CLK_OUT über
eine chipexternen Treiber versorgt werden. So empfangen alle Vorrichtungen
auf der IC Taktsignale, die zeitlich ausgerichtet sind.
-
Die
DLL stellt den Zeitbetrag, um den das Signal CLK_OUT hinsichtlich
des Signals REF_CLK verzögert
ist, durch ein Vergleichen des Signals REF_CLK mit einem Rückkopplungstaktsignal FB_CLK
ein, das die Laufzeitverzögerung
der IC modelliert. Das Signal CLK_OUT ist im wesentlichen eine verzögerte Version
des Signals REF_CLK. Die Verzögerung
des Signals CLK_OUT wird durch eine Vorwärtsverzögerungsschaltung, die eine
Vorwärtsverzögerungsleitung
aufweist, eingestellt. Die Vorwärtsverzögerungsleitung
umfaßt
eine Mehrzahl einzelner Verzögerungseinheiten,
wie z. B. eine vorbestimmte Anzahl von Puffern oder Invertern, die
in Serie miteinander geschaltet sind. Die Länge der Vorwärtsverzögerungsleitung
ist basierend auf einem Vergleich des Signals REF_CLK mit dem Rückkopplungstaktsignal
FB_CLK eingestellt, um dadurch die Verzögerung des Signals CLK_OUT
hinsichtlich des Signals REF_CLK einzustellen.
-
Allgemein
muß eine
DLL eine minimale Verzögerungszeit
liefern, die in etwa gleich der längsten vorhergesehenen Zykluszeit
(d. h. der niedrigsten Betriebsfrequenz) des Signals REF_CLK ist,
um eine Ausrichtung des Signals REF_CLK mit dem Signal FB_CLK unter
schlechtesten Betriebsbedingungen sicherzustellen. Bei relativ hochfrequenten
Anwendungen, wie z. B. bei Chips dynamischer Direktzugriffsspeicher
(DRAM) oder anderen ICs, die eine Taktzeitversatzeinstellung erfordern,
wird die gesamte Länge
der Verzögerungslei tung
nur selten benötigt.
So wird ein wesentlicher Abschnitt der Verzögerungsleitung unter Umständen unter
einem Normalbetrieb der IC nicht benötigt.
-
Deshalb
wird in der Technik eine DLL benötigt,
die selektiv den Abschnitt der Verzögerungsleitung, der nicht benötigt wird,
deaktiviert.
-
Ferner
wird in der Technik ein DLL benötigt, die
einen Leistungsverbrauch durch ein Takten nur der Abschnitte der
Verzögerungsleitung,
die zur Zeitausrichtung der Taktsignale erforderlich sind, reduziert.
-
Zusätzlich wird
in der Technik eine DLL benötigt,
die die Last des Systems oder des Referenztaktsignals durch ein
Deaktivieren nicht verwendeter Abschnitte der Verzögerungsleitung
reduziert.
-
Aus
der
DE 19934226 A1 ist
eine Analog-Digital-Hybrid-DLL bekannt, die eine Mehrzahl von Verzögerungsblöcken aufweist,
wobei eine durch die Verzögerungsblöcke gelieferte
Verzögerung
abhängig
von einem Phasenvergleich zwischen einem rückgekoppelten verzögerten Taktsignal
und einem Refernztakteingangssignal gesteuert wird. Das Ausgangssignal
von einem der Verzögerungsblöcke wird als
eingerastetes Verzögerungstaktsignal
ausgewählt.
Ferner werden Verzögerungsblockfreigabesignale
zum Abschalten der Verzögerungsblöcke hinter dem
Verzögerungsblock,
der das eingerastete Verzögerungstaktsignal
ausgibt, erzeugt und an die Verzögerungsblockgruppe
ausgegeben.
-
Es
ist die Aufgabe der vorliegenden Erfindung, eine Freigabe/Sperrschaltung
für eine
Verzögerungsregelschleifenschaltung
und eine entsprechende Verzögerungsregelschleifenschaltung
mit verbesserten Charakteristika und ein verbessertes Verfahren
zum Sperren eines oder mehrerer Verzögerungsblöcke zu schaffen.
-
Diese
Aufgabe wird durch eine Freigabe/Sperrschaltung gemäß Anspruch
1, eine Verzögerungsregelschleifenschaltung
gemäß Anspruch
5 und ein Verfahren gemäß Anspruch
10 gelöst.
-
Die
vorliegende Erfindung liefert eine Verzögerungsregelschleifenschaltung,
die selektiv Blöcke von
Verzögerungseinheiten
deaktiviert, die nicht notwendig zur Ausrichtung eines Referenztaktsignals mit
einem internen Rückkopplungstaktsignal
sind.
-
Die
Erfindung weist in einer Form derselben eine Vorwärtsverzögerungsschaltung
auf, die das Referenztaktsignal empfängt. Die Vorwärtsverzögerungsschaltung
umfaßt
eine Vorwärtsverzögerungsleitung,
die eine Mehrzahl elektrisch miteinander verbundener Verzögerungsblöcke aufweist.
Jeder der Verzögerungsblöcke umfaßt eine
vorbestimmte Anzahl elektrisch miteinander verbundener Verzögerungseinheiten.
Eine Sperreinrichtung sperrt den einen oder die mehreren Verzögerungsblöcke, wenn die
Verzögerungsblöcke nicht
benötigt
werden, um das Referenztaktsignal zeitlich mit dem internen Rückkopplungstaktsignal
auszurichten.
-
Ein
Vorteil der vorliegenden Erfindung besteht darin, daß der Abschnitt
der Verzögerungsleitung,
der nicht benötigt
wird, deaktiviert ist.
-
Ein
weiterer Vorteil der vorliegenden Erfindung besteht darin, daß ein Leistungsverbrauch durch
ein Takten nur derjeniger Abschnitte der Verzögerungsleitung, die benötigt werden,
reduziert wird.
-
Noch
ein weiterer Vorteil der vorliegenden Erfindung besteht darin, daß die Last
auf das Referenztaktsignal durch ein Deaktivieren nicht verwendeter
Abschnitte der Verzögerungsleitung
reduziert wird.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beigefügten
Zeichnungen näher
erläutert,
wobei entsprechende Bezugszeichen in den mehreren Ansichten entsprechende
Teile anzeigen. Es zeigen:
-
1 ein Blockdiagramm einer
herkömmlichen
DLL;
-
2 ein Blockdiagramm eines
Ausführungsbeispiels
der DLL der vorliegenden Erfindung;
-
3 ein Blockdiagramm der
Verzögerungsleitung
der DLL aus 2; und
-
4 ein schematisches Diagramm
der Freigabe-/Sperrlogik der DLL aus 2.
-
Bezug
nehmend auf 1 ist ein
Blockdiagramm einer herkömmlichen
DLL-Schaltung gezeigt. Die DLL-Schaltung 10 umfaßt eine
Vorwärtsverzögerungsschaltung 12,
eine Rückkopplungsverzögerungsschaltung 14,
eine Vergleichsschaltung COMP 16 und eine Steuerungsschaltung
CTRL 18. Üblicherweise
ist die DLL-Schaltung 10 auf einem gemeinsamen Substrat
mit einer integrierten Schaltung (IC) 20, wie z. B. einem
Chip eines dynamischen Direktzugriffsspeichers (DRAM) oder einer
IC, die eine Taktzeitversatzeinstellung erfordert, gebildet oder
gemeinsam mit derselben gehäust
und mit derselben verbunden. Allgemein empfängt die DLL-Schaltung 10 ein
Referenztaktsignal REF_CLK 22, vergleicht das Signal REF_CLK 22 mit
einem Rückkopplungstaktsignal
FB_CLK 24 und gibt ein Ausgangstaktsignal CLK_OUT 26 zumindest
teilweise basierend auf dem Vergleich aus. Ein Signal CLK_OUT 26 wird durch
ein Verzögern
des Signals REF_CLK 22 erzeugt. Der Vergleich und die Verzögerung werden
iterativ wiederholt, bis das Signal FB_CLK 24 zeitlich mit
dem Signal REF_CLK 22 ausgerichtet ist.
-
Die
Vorwärtsverzögerungsschaltung 12 ist elektrisch
mit der CTRL-Schaltung 18 verbunden und empfängt ein
Signal CTRL 28 von derselben. Die Vorwärtsverzögerungsschaltung 12 empfängt das
Signal REF_CLK 22 und gibt das Signal CLK_OUT 26 aus,
das allgemein eine verzögerte
Version des Signals REF_CLK 22 ist. Der Zeitbetrag, um
den die Vorwärtsverzögerungsschaltung 12 das
Signal CLK_OUT 26 hinsichtlich des Signals REF_CLK 22 verzögert, hängt zumindest
teilweise von dem CTRL-Signal 28 ab. Die Vorwärtsverzögerungsschaltung 12 umfaßt eine
Mehrzahl von Verzögerungselementen
(nicht gezeigt), wie z. B. Puffer oder Inverter, die in Serie geschaltet
sind. Jedes der Verzögerungselemente
weist eine Verzögerungszeit
von einer Einheitsverzögerung,
oder tU, auf. Eine Einheitsverzögerung kann
jeder Zeitraum sein, der geeignet für die Anwendung auf die DLL 10 ist,
wie z. B. einige 10, 100 oder 1000 Pikosekunden oder länger.
-
Die
Rückkopplungsverzögerungsschaltung 14 ist
elektrisch mit der Vorwärtsverzögerungsschaltung 12 verbunden
und empfängt
von derselben das Signal CLK_OUT 26. Die Rückkopplungsverzögerungsschaltung 14 ist
ferner elektrisch mit dem Signal COMP 16 der Vergleichsschaltung
verbunden und gibt das Signal FB_CLK 24 an dieselbe aus,
wobei dasselbe allgemein eine verzögerte Version des Signals CLK_OUT 26 ist.
Das Signal FB_CLK 24 ist hinsichtlich des Signals CLK_OUT 26 um
eine Rückkopplungsverzögerungszeit
tFB verzögert.
Die Rückkopplungsverzögerungszeit
tFB ist z. B. im wesentlichen gleich der
Laufzeitverzögerung
tP des Signals REF_CLK 22 durch
die IC 20 unter vordefinierten Betriebsbedingungen, wie
z. B. 25°C
Umgebungstemperatur und angelegter Nenn-Betriebs-/Versorgungsspannung. Die Rückkopplungsverzögerungsschaltung 14 umfaßt eines
oder mehrere Verzögerungselemente
(nicht gezeigt), wie z. B. Puffer oder Inverter, die das Signal
FB_CLK 24 hinsichtlich des Signals CLK_OUT 26 um
die Rückkopplungszeit
tFB verzögern.
Die Rückkopplungsverzögerungsschaltung modelliert über die
Rückkopplungsverzögerungszeit tFB die Laufzeitverzögerung durch die IC 20 über einen
vordefinierten Bereich von Betriebsbedingungen und -parametern.
-
Die
Vergleichsschaltung COMP 16 empfängt die Signale REF_CLK 22 und
FB_CLK 24. Die Vergleichsschaltung 16 vergleicht
das Signal REF_CLK 22 mit dem Signal FB_CLK 24 und
gibt ein COMP-Signal 30 an die Steuerungsschaltung CTRL 18 aus. Die
Vergleichsschaltung COMP 16 weist einen herkömmlichen
Aufbau und einen herkömmlichen
Entwurf auf, wie z. B. ein Phasendetektor, und ist Fachleuten auf
diesem Gebiet bekannt. Das COMP-Signal 30 zeigt die Phase
des Signals REF_CLK 22 hinsichtlich des Signals FB_CLK 24 an
und zeigt so an, ob das Signal REF_CLK 22 dem Signal FB_CLK 24 vorauseilt
oder nacheilt.
-
Die
Steuerungsschaltung CTRL 18 ist elektrisch mit der COMP-Schaltung 16 und
mit der Vorwärtsverzögerungsschaltung 12 verbunden.
Die CTRL-Schaltung 18 gibt das CTRL-Signal 28 an
die Vorwärtsverzögerungsschaltung 12 aus
und empfängt
das COMP-Signal 30 von der COMP-Schaltung 16.
Abhängig
zumindest teilweise von dem COMP-Signal 30 stellt die CTRL-Schaltung 18 das CTRL-Signal 28 ein,
um dadurch den Zeitbetrag, um den die Vorwärtsverzögerungsschaltung 12 das
Signal CLK_OUT 26 hinsichtlich des Signals REF_CLK 22 verzögert, zu
erhöhen,
zu senken oder unverändert
zu lassen, d. h. das CTRL-Signal 28 stellt die Länge der
Vorwärtsverzögerungsleitung
der Vorwärtsverzögerungsschaltung 12 ein.
Die Steuerungsschaltung CTRL 18 ist z. B. als eines oder
mehrere Schieberegister oder Zähler
konfiguriert, die bewirken, daß gespeicherte
Daten sich basierend auf dem Phasenunterschied zwischen dem Signal
REF_CLK 22 und dem Signal FB_CLK 24, wie für Fachleute
auf diesem Gebiet ersichtlich ist, um eine Bitposition nach rechts
oder links bewegen.
-
Im
Gebrauch wird das Signal REF_CLK 22 durch z. B. ein externes
Taktnetz (nicht gezeigt) an die DLL-Schaltung 10 geliefert.
Auf einen Betriebsbeginn hin wird die DLL-Schaltung 10 derart rückgesetzt,
daß die
Vorwärtsverzögerungsschaltung 12 im wesentlichen
keine Verzögerung
einführt.
Das Signal REF_CLK 22 wird so im wesentlichen unverzögert durch
die Vorwärtsverzögerungsschaltung 12 geleitet.
Das Signal CLK_OUT 26, d. h. die nicht verzögerte Version
des Signals REF_CLK 22, das aus der Vorwärtsverzögerungsschaltung 12 hervorgeht,
wird an die Rückkopplungsverzögerungsschaltung 14 geliefert,
die das Signal FB_CLK 24 ausgibt. Das Signal FB_CLK 24 wird
hinsichtlich des Signals REF_CLK 22 um tFB verzögert. Das
Signal FB_CLK 24 wird durch die Vergleichsschaltung COMP 16 mit
dem Signal REF_CLK 22 verglichen. Die COMP-Schaltung 16 bestimmt
das Phasenverhältnis
der Signale und gibt das COMP-Signal 30, das dieses Phasenverhältnis anzeigt,
an die Steuerungsschaltung CRTL 18 aus. Die Steuerungsschaltung
CTRL 18 wiederum gibt das Signal CTRL 28 aus,
um, falls nötig,
die Länge
der Vorwärtsverzögerungsleitung
der Vorwärtsverzögerungsschaltung 12 einzustellen.
-
Unter
der Annahme, daß die
Signale REF_CLK 22 und FB_CLK 24 exakt in Phase
sind, setzt das CTRL-Signal 28 die Vorwärtsverzögerungsschaltung 12,
um den gegenwärtigen
Verzögerungszustand
des Signals CLK_OUT 26 hinsichtlich des Signals REF_CLK 22 zu
halten. So ist, da die Laufzeitverzögerung tP durch
die Rückkopplungsverzögerung tFB modelliert wird, das Signal CLK_OUT 26 zu Beginn
mit der Laufzeitverzögerung
der IC 20 zeitlich ausgerichtet. Wenn sich die Betriebsbedingungen der
IC 20 verändern
und die Laufzeitverzögerung
tP derselben zu- oder abnimmt, verändert sich
tFB entsprechend. Der oben beschriebene
Vergleich des Signals REF_CLK 22 mit dem Signal FB_CLK 24 und die
Einstellung der Verzögerung
des Signals CLK_OUT 26 hinsichtlich des Signals REF_CLK 22 werden
wiederholt, wobei jede Veränderung
an tP durch eine entsprechende Änderung
an tFB verfolgt wird. Die Veränderung
an tFB verändert entsprechend die Verzögerung des
Signals FB_CLK 24. So verfolgt die Länge der Zeit, um die die Vorwärtsverzögerungsschaltung 12 CLK_OUT 26 hinsichtlich
des Signals REF_CLK 22 verzögert, eine Veränderung
an tP.
-
Um über die
Fähigkeit
zu verfügen,
die Takte in allen Fällen
auszurichten, muß die
Verzögerungsleitung
der Vorwärtsverzögerungsschaltung 12 in
der Lage sein, die Verzögerung
des Signals CLK_OUT 26 bis zu der Länge der Zykluszeit der niedrigsten Betriebsfrequenz
des Signals REF_CLK 22 und/oder der IC 20 zu erhöhen. Ein
Einführen
einer derartigen, relativ langen Verzögerung in das Signal CLK_OUT 26 macht
es erforderlich, daß die
Vorwärtsverzögerungsschaltung 12 eine
Mehrzahl an leistungsverbrauchenden Verzögerungselementen umfaßt, und erhöht dadurch
den Zeitbetrag, den die DLL 10 benötigt, um die Taktsignale zu „verrie geln", d. h. zeitlich auszurichten,
erhöht
die Leistung, die durch die DLL 10 verbraucht wird, und
erhöht
die Last, die die DLL 10 auf das Signal REF_CLK 22 plaziert.
Im Gegensatz dazu deaktiviert die DLL der vorliegenden Erfindung
selektiv Abschnitte der Verzögerungsleitung, die
gerade nicht verwendet werden, wodurch ein Leistungsverbrauch und
die Last auf dem Referenztaktsignal reduziert werden.
-
Bezug
nehmend auf 2 ist ein
Blockdiagramm eines Ausführungsbeispiels
einer DLL der vorliegenden Erfindung gezeigt. Eine DLL 50 umfaßt eine
Vorwärtsverzögerungsschaltung 52,
eine Rückkopplungsverzögerungsschaltung 54,
eine Komparatorschaltung COMPCKT 56, eine Steuerungsschaltung
CTRL 58 und eine Freigabe-/Sperrlogik 60. Die DLL-Schaltung 50 ist
z. B. auf einem gemeinsamen Substrat mit einer integrierten Schaltung
(IC) 70, wie z. B. einem Chip eines dynamischen Direktzugriffsspeichers
(DRAM) oder einer IC, die eine Taktzeitversatzeinstellung erfordert,
gebildet oder gemeinsam mit derselben gehäust und mit derselben verbunden. Allgemein
empfängt
die DLL-Schaltung 50 ein Referenztaktsignal REF_CLK 72,
vergleicht das Signal REF_CLK 72 mit einem Rückkopplungstaktsignal FB_CLK 74 und
stellt die Vorwärtsverzögerungsschaltung 52 ein,
um dadurch das Signal FB_CLK 74 zeitlich mit dem Signal
REF_CLK 72 auszurichten. Ferner und weiter allgemein deaktiviert
die DLL 50 selektiv Abschnitte oder Blöcke der Vorwärtsverzögerungsschaltung 52,
die nicht zur Ausrichtung der Signale benötigt werden, und reduziert
dadurch einen Leistungsverbrauch und eine Last auf das Signal REF_CLK 72.
-
Die
Vorwärtsverzögerungsschaltung 52 empfängt das
Signal REF_CLK 72 und ist mit der Steuerungsschaltung CTRL 58 und
der Freigabe-/Sperrlogik 60 verbunden. Die Vorwärtsverzögerungsschaltung 52 empfängt ein
Signal CTRL 78 von der CTRL-Schaltung 58. Der Zeitbetrag,
um den die Vorwärtsverzögerungsschaltung 52 ein
Signal CLK_OUT 76 hinsichtlich des Signals REF_CLK 72 verzögert, hängt zumindest
teilweise von dem CTRL-Signal 78 ab. Wie im folgenden besonders
beschrie ben ist, umfaßt
die Vorwärtsverzögerungsschaltung 52 eine
Mehrzahl einzelner Verzögerungselemente.
Eine vorbestimmte Anzahl von Verzögerungselementen ist in jeweilige
Verzögerungsblöcke gruppiert.
Die Vorwärtsverzögerungsschaltung 52 empfängt Freigabesignale
E1, E2, E3, ... und EN von der
Freigabe-/Sperrlogik 60, um selektiv einen oder mehrere
der Verzögerungsblöcke, die
nicht verwendet werden, zu deaktivieren.
-
Die
Rückkopplungsverzögerungsschaltung 54 ist
elektrisch mit der Vorwärtsverzögerungsschaltung 52 verbunden
und empfängt
das Signal CLK_OUT 76 von derselben. Die Rückkopplungsverzögerungsschaltung 54 ist
ferner elektrisch mit der Vergleichsschaltung COMPCKT 56 verbunden.
Die Rückkopplungsverzögerungsschaltung
gibt das Signal FB_CLK 74 an die Vergleichsschaltung COMPCKT 56 aus.
Das Signal FB_CLK 74 ist im wesentlichen eine verzögerte Version
des Signals CLK_OUT 76. Das Signal FB_CLK 74 ist
hinsichtlich des Signals CLK_OUT 76 um eine feste Rückkopplungsverzögerungszeit
tFB verzögert.
Die feste Verzögerungszeit
tFB ist im wesentlichen gleich der Laufzeitverzögerung tP des Signals REF_CLK 72 durch die
IC 70 unter vordefinierten Betriebsbedingungen, wie z.
B. 25°C
Umgebungstemperatur und angelegter Nenn-Betriebs-/Versorgungsspannung.
Die Rückkopplungsverzögerungsschaltung 54 modelliert
die Laufzeitverzögerung
durch die IC 70. So verfolgt, wenn sich Betriebsbedingungen
und -parameter derselben verändern,
die Verzögerungszeit
tFB jede Veränderung an tP.
Die Rückkopplungsverzögerungsschaltung 54 umfaßt eines
oder mehrere Verzögerungselemente
(nicht gezeigt), die das Signal FB_CLK 74 hinsichtlich
des Signals CLK_OUT 76 um die Rückkopplungszeit tFB verzögern.
-
Die
Vergleichsschaltung COMPCKT 56 empfängt das Signal REF_CLK 72 und
das Signal FB_CLK 74. COMPCKT 56 vergleicht das
Signal REF_CLK 72 mit dem Signal FB_CLK 74 und
gibt das Signal COMP 80 an die Steuerungsschaltung CTRL 58 aus.
Die Vergleichsschaltung COMPCKT 56 weist einen herkömmlichen
Aufbau und einen herkömmlichen
Entwurf auf, wie z. B. ein Phasendetektor, und ist Fachleuten auf
diesem Gebiet bekannt.
-
Die
Steuerungsschaltung CTRL 58 ist elektrisch mit COMPCKT 56 und
der Vorwärtsverzögerungsschaltung 52 verbunden.
Die CTRL-Schaltung 58 empfängt das COMP-Signal 80 von
COMPCKT 56 und gibt das Signal CTRL 78 an die
Vorwärtsverzögerungsschaltung 52 aus.
Zumindest teilweise abhängig
von dem COMP-Signal 82 stellt die CTRL-Schaltung 58 das
CTRL-Signal 78 ein, um dadurch den Zeitbetrag, um den die
Vorwärtsverzögerungsschaltung 54 das
Signal CLK_OUT 76 hinsichtlich des Signals REF_CLK 72 verzögert, zu
erhöhen, zu
erniedrigen oder unverändert
zu lassen. Die Steuerungsschaltung CTRL 58 umfaßt, wie
dies in der Technik bekannt ist, eine oder mehrere Schaltungen (nicht
gezeigt), wie z. B. Zähler
oder Schieberegister, die bewirken, daß Daten basierend auf dem Phasenunterschied
zwischen dem Signal REF_CLK 72 und dem Signal FB_CLK 74,
wie dies durch das COMP-Signal 82 angezeigt wird, um eine
Bitposition nach rechts oder links bewegt werden. So erhöht oder
erniedrigt die Steuerungsschaltung CTRL 58 die Länge der
Verzögerungsleitung
der Vorwärtsverzögerungsschaltung 52 über das
CTRL-Signal 78. Die Steuerungsschaltung CTRL 58 gibt
außerdem
ein Filterumgehungssignal FILTER_BY 82, Blockauswahlsignale
SEL1, SEL2, SEL3, ... und SELN und
ein Überlaufsignal
O_FLOW 84 an die Freigabe-/Sperrschaltung 60 aus.
-
Bezug
nehmend auf 3 ist die
Vorwärtsverzögerungsschaltung 52 genauer
beschrieben. Die Vorwärtsverzögerungsschaltung 52 umfaßt eine
Verzögerungsleitung 90.
Die Verzögerungsleitung 90 umfaßt eine
Mehrzahl von Verzögerungselementen D1, D2, D3,
... und DX, wie z. B. Puffer oder Inverter,
die elektrisch in Serie geschaltet sind. Jedes der Verzögerungselemente
weist eine Verzögerungszeit
von einer Einheitsverzögerung
tU auf. Eine Einheitsverzögerung ist
jeder Zeitraum, der für
das Anwenden auf die DLL 50 geeignet ist, wie z. B. einige
zehn, hundert oder tausend Pikosekunden oder länger. Die Verzögerungseinheiten
sind in Verzögerungsblöcke B1, B2, ... und BN organisiert oder gruppiert.
-
Jeder
der Verzögerungsblöcke B1, B2, ... und BN umfaßt
eine vorbestimmte Anzahl, wie z. B. acht, einzelner Verzögerungselemente
D1, D2, D3, ... und DX. So
weisen die Verzögerungsblöcke B1, B2, ... und BN eine Blockverzögerungszeit tB auf,
die die Summe der einzelnen Einheitsverzögerungen tU der
einzelnen Verzögerungselemente
innerhalb des bestimmten Blocks ist. Jeder der Verzögerungsblöcke B1, B2, ... und BN umfaßt
einen jeweiligen Freigabeeingang 94 und empfängt an demselben
Freigabesignale E1, E2,
... bzw. EN von der Freigabe-/Sperrlogik 60.
Ferner ist jeder Verzögerungsblock
B1, B2, ... und
BN an seinem jeweiligen Takteingang 96 elektrisch
verbunden, wobei der erste Verzögerungsblock
B1 das REF_CLK-Signal 72 an seinem
Takteingang 96 empfängt.
Die Verzögerungsblöcke B1, B2, ... und BN umfassen außerdem Steuerungseingänge 98 und
empfangen das Steuerungssignal CTRL 78 an denselben. Jeder
Verzögerungsblock
B1, B2, ... und
BN umfaßt
außerdem
einen jeweiligen Verzögerungsblockausgang
BK_OUT1, BK_OUT2,
... und BK_OUTN. Ein Multiplexer (nicht
gezeigt) in Verbindung mit einem Signal von der Steuerungsschaltung
CTRL 58 wählt zumindest
teilweise abhängig
von Auswahlsignalen SEL1, SEL2,
... und SELN aus, welcher der Blockausgänge BK_OUT1, BK_OUT2, ... und
BK_OUTN das Signal CLK_OUT 76 liefert.
-
Die
Freigabe-/Sperrlogikschaltung 60, die am besten in 4 zu sehen ist, umfaßt eine
Mehrzahl von Sperrschaltungen 102, wie z. B. NAND-Gatter,
die jeweils einem der Verzögerungsblöcke B1, B2, ... und BN entsprechen. Jede der Sperrschaltungen 102 empfängt ein
Filterumgehungssignal FILTER_BY 82, ein jeweiliges und
entsprechendes der Blockauswahlsignale SEL1,
SEL2, SEL3, ...
und SELN und ein bO_FLOW-Signal 106,
das der Inverter 108 als eine invertierte Version des Überlaufsignals O_FLOW 84 ausgibt,
das von der Steuerungsschaltung CTRL 58 empfangen wird.
Die Freigabe-/Sperrlogikschaltung 60 gibt eine Mehrzahl
von Sperrsignalen E1, E2,
E3, ... und EN aus,
wobei jedes derselben einem jeweiligen der Verzögerungsblöcke B1,
B2, ... und BN entspricht
und durch einen derselben empfangen wird. Wie im folgenden detaillierter
erklärt
ist, müssen
sowohl das Signal FILTER_BY 82, das bO_FLOW-Signal 106 und
das Blockauswahlsignal SEL1, SEL2, SEL3, ... und
SELN für
einen bestimmten Block auf einer geeigneten Logikebene sein, damit die
Freigabe-/Sperrsteuerungsschaltung 60 ein Sperrsignal E1, E2, E3,
... und EN ausgibt, das eine geeignete Logikebene
aufweist, um diesen Verzögerungsblock
zu sperren.
-
Im
Gebrauch wirkt die DLL 50 allgemein, um selektiv durch
die Freigabe-/Sperrlogikschaltung 60 einen oder mehrere
der Verzögerungsblöcke B1, B2, B3,
... und BN zu deaktivieren, die nicht benötigt werden.
Durch ein Deaktivieren von Verzögerungsblöcken, die
nicht benötigt
werden, reduziert die DLL 50 einen Leistungsverbrauch und
die Last auf dem Signal REF_CLK 72. Das einzige Mal, daß einer
oder mehrere der Verzögerungsblöcke B1, B2, B3,
... und BN gesperrt sind, ist dann, wenn
kein Überlaufzustand
existiert, eine „grobe
Verriegelung" zwischen dem
Signal FB_CLK 74 und dem Signal REF_CLK 72 erzielt
wurde und der bestimmte Blockausgang nicht ausgewählt ist.
-
Ein Überlaufzustand
tritt auf, wenn ein Steuerungszähler
(nicht gezeigt) innerhalb der CTRL-Schaltung 58 einen maximalen
Wert erreicht und ein Überlaufbit
setzt, wodurch angezeigt wird, daß die gesamte Verzögerungsleitung 90 benötigt wird,
um die Taktsignale auszurichten. Bei einem Überlaufzustand ist das Signal
O_FLOW 84 aktiv, wie z. B. ein logisches Hoch. Als das
Inverse zu dem Signal O_FLOW 84 wird das Signal bO_FLOW 106 nur dann
aktiv, z. B. ein logisches Hoch, wenn kein Überlaufzustand existiert (d.
h. wenn das Signal O_FLOW 84 nicht aktiv ist, wie z. B.
auf einer logisch niedrigen Ebene).
-
Ein „Grobverriegelungs"-Zustand ist Fachleuten
auf diesem Gebiet bekannt, um einen Zustand anzuzeigen, bei dem
keine Erhöhung
oder Senkung der Länge
der Verzögerungsleitung 90 notwendig
ist, wobei Feineinstellungen zwischen den Taktsignalen durch einen
Analogmischer- oder einen gleichwertigen Schaltungsaufbau (nicht
gezeigt) innerhalb der CTRL-Schaltung 58 erzielt
werden. Das Vorliegen eines Grobverriegelungszustands wird durch
die CTRL-Schaltung 58 angezeigt, die das Signal FILTER_BY 82 aktiv
macht. Das Signal FILTER_BY 82 ist während der Zeit, die das Filter
umgangen wird, d. h. bis ein Grobverriegelungszustand erzielt wird, aktiv,
wie z. B. auf einer logisch hohen Ebene.
-
Eine
oder mehrere der Verzögerungsblöcke B1, B2, B3,
... und BN wird/werden durch die CTRL-Schaltung 58 ausgewählt, die
die Auswahlsignale SEL1, SEL2,
SEL3, ... und SELN,
die dem oder den ausgewählten
Verzögerungsblöcken entsprechen,
aktiv macht, wie z. B. auf eine logisch niedrige Ebene. Wie oben
angemerkt ist, wählt
der Multiplexer (nicht gezeigt) zumindest teilweise abhängig von
den Auswahlsignalen SEL1, SEL2,
SEL3, ... und SELN aus, welcher
der Blockausgänge
BK_OUT1, BK_OUT2 ... und
BK_OUTN das Signal CLK_OUT 76 liefert.
-
Kurz
gesagt sind das Signal FILTER_BY 82 und das Signal bO_FLOW 106 beide
nur dann aktiv, wenn das Filter umgangen wird und kein Überlaufzustand
existiert. Die Auswahlsignale SEL1, SEL2, SEL3, ... und
SELN sind nur dann aktiv, wenn der Verzögerungsblock,
der denselben entspricht, ausgewählt
ist. Zu Darstellungszwecken werden das Signal FILTER_BY 82 und
bO_FLOW 106 im folgenden als aktiv betrachtet, wenn sie
auf einer hohen logischen Ebene sind, und die Auswahlsignale SEL1, SEL2, SEL3, ... und SELN werden
im folgenden als aktiv betrachtet, wenn sie auf einer logisch niedrigen
Ebene sind.
-
Sowohl
das Signal FILTER_BY 82, das Signal bO_FLOW 106 als
auch die Auswahlsignale SEL1, SEL2, SEL3, ... und
SELN werden durch die Freigabe-/Sperrlogikschaltung 60 empfangen.
Die Freigabe-/Sperrlogikschaltung gibt zumindest teilweise abhängig von
diesen Signalen Freigabesignale E1, E2, E3, ... und EN aus. Insbesondere werden die Signale FILTER_BY 82 und
bO_FLOW 106 durch jede der Freigabeschaltungen 102 empfangen,
wohingegen jedes Auswahlsignal SEL1, SEL2, SEL3, ... und
SELN durch eine entsprechende der Freigabeschaltungen 102 empfangen
wird. Wie oben angemerkt ist, ist die einzige Zeit, zu der einer
oder mehrere Verzögerungsblöcke B1, B2, B3,
... und BN deaktiviert sind, dann, wenn
das Filter umgangen wird (d. h. ein Grobverriegelungszustand wird
erzielt), es keinen Überlaufzustand
gibt und der entsprechende Ausgang für einen bestimmten Block nicht
ausgewählt ist.
So wird ein Verzögerungsblock
B1, B2, B3, ... und BN nur
dann gesperrt, wenn die Signale FILTER_BY 82 und bO_FLOW 106 aktiv
sind und ein entsprechendes Auswahlsignal SEL1,
SEL2, SEL3, ...
und SELN für diesen bestimmten Block nicht
aktiv ist. Wenn ein derartiger Zustand für einen bestimmten Verzögerungsblock
B1, B2, B3, ... und BN existiert,
wird dieser bestimmte Verzögerungsblock
nicht benötigt, um
die Taktsignale auszurichten. Folglich gibt die Freigabe-/Sperrlogikschaltung 60 an
diesen bestimmten Verzögerungsblock
ein Freigabesignal E1, E2,
E3, ... und EN aus,
das eine geeignete Logikebene aufweist, wie z. B. eine logische
Niedrigebene, um den Verzögerungsblock
zu deaktivieren. Durch ein Deaktivieren von Verzögerungsblöcken, die nicht benötigt werden,
um die Taktsignale auszurichten, reduziert die DLL 50 einen
Leistungsverbrauch und die Last auf dem Signal REF_CLK 72.
-
Bei
dem gezeigten Ausführungsbeispiel
sind die Freigabeschaltungen 102 als NAND-Gatter konfiguriert.
Es wird jedoch darauf verwiesen, daß die Freigabeschaltungen alternativ
konfiguriert sein können,
wie z. B. als UND-Gatter, oder entsprechende alternativ konfigurierte
Verzögerungsblöcke, die durch
ein Freigabesignal auf hoher logischer Ebene freigegeben werden.
Für Fachleute
auf diesem Gebiet ist es ersichtlich, daß diese und verschiedene andere
Konfigurationen abhängig
von der Logikebene möglich
sind, bei der der die Signale, die in die Freigabeschaltungen eingegeben
werden, aktiv und/oder inaktiv ist.
-
Bei
dem gezeigten Ausführungsbeispiel
gibt die CTRL-Schaltung 58 das
CTRL-Signal 78 aus und wählt die Signale SEL1, SEL2, SEL3, ... und SELN aus. Es
wird jedoch darauf verwiesen, daß die DLL der vorliegenden
Erfindung alternativ konfiguriert sein kann, wie z. B. die Auswahlsignale
in dem Steuerungssignal umfassend.
-
Bei
dem gezeigten Ausführungsbeispiel
sind das Filterumgehungssignal und die Überlaufsignale darstellend
beschrieben, um auf einer logisch hohen Ebene zu sein, wenn das
Filter umgangen wird und kein Überlaufzustand
besteht, wohingegen die Auswahlsignale nur dann beschrieben werden,
um auf einer logisch niedrigen Ebene zu sein, wenn ein entsprechender
Verzögerungsblock
ausgewählt
ist. Es wird jedoch darauf verwiesen, daß die DLL der vorliegenden
Erfindung alternativ für
eine Funktionalität mit
den aktiven Logikzuständen
der verschiedenen Signale konfiguriert sein kann.