Phasendetektoren bzw. Verfahren zum
Ermitteln einer Phasendifferenz zwischen periodischen Signalen werden
insbesondere in Phasenregelkreisen bzw. PLLs verwendet. Neben einem
analogen Aufbau für
Phasendetektoren kann insbesondere bei niedrigen Signalfrequenzen
die Phasendetektion auch digital erfolgen. Dies bedeutet, dass die
ermittelte Phasendifferenz als Digitalwert vorliegt.
In 6 ist
eine digitale PLL gemäß einer aus
dem Stand der Technik bekannten Ausführungsform dargestellt. Die
dargestellte digitale PLL besteht aus einem Phasendetektor PD zur
Bestimmung des Phasenfehlers PH ERR zwischen dem Referenztaktsignal
REF_CLK und einem von der PLL synchronisierten Vergleichstaktsignal
PLL_CLK, einem Schleifenfilter SF zur Filterung des Phasenfehlers
sowie einem digital gesteuerten Oszillator DCO, der in Abhängigkeit
des vom Schleifenfilter erzeugten Stellsignals die Frequenz des
Vergleichstaktsignals PLL_CLK verändert. Aufgabe der dargestellten
PLL ist es, das erzeugte Vergleichstaktsignal PLL_CLK auf das Referenztaktsignal
REF_CLK zu synchronisieren. Zur Erzeugung des Phasenfehlers PH_ERR wird
der Phasendetektor PD mit einem Phasendetektortaktsignal CLK_PD
beaufschlagt, das eine höhere Frequenz
aufweist als das Referenztaktsignals REF_CLK. Der digital gesteuerte
Oszillator DCO wird zu dessen Betrieb mit einem Oszillatortaktsignal CLK_DCO
beaufschlagt. Das vom Oszillator DCO erzeugte Vergleichstaktsignal
PLL_CLK wird zum Phasendetektor PD und zum Schleifenfilter SF rückgeführt. In
der dargestellten Ausführungsform
entspricht der Phasenfehler PH_ERR jeweils einer bestimmten Anzahl
von Perioden des Phasendetektortaktsignals CLK_PD. Das Verhalten
der PLL wird maßgeblich
durch die Präzision
beeinflusst, mit der der Phasenfehler PH_ERR ermittelt werden kann.
Eine aus dem Stand der Technik bekannte Betriebsweise
der in 6 dargestellten
PLL ist in 7 dargestellt.
Dabei wird ein mit dem Phasendetektortaktsignal CLK_PD getakteter
Abwärtszähler verwendet,
der mit einer Flanke des Referenztaktsignals REF_CLK auf den Wert
PH_ERR_MAX gesetzt wird, wobei in diesem Fall der Wert PH_ERR_MAX der
Anzahl von Perioden des Phasendetektortaktsignals CLK_PD pro Halbperiode
des Referenztaktsignals REF_CLK entspricht. Der Zähler wird
dann mit jeder Periode des Phasendetektortaktsignals CLK_PD dekrementiert.
Der Phasenfehler PH_ERR entspricht dem Zählerstand zum Zeitpunkt der
als nächstes
darauffolgenden Flanke des Vergleichstaktsignals PLL_CLK. Mit dem
Zeitpunkt der Flanke ist generell die positive Taktflanke gemeint,
wobei die Ermittlung der Phasendifferenz PH_ERR auch durch Auswertung
der negativen Taktflanken durchgeführt werden kann. Im eingeschwungenen
Zustand der PLL ist das Vergleichstaktsignal PLL_CLK gegenüber dem
Referenztaktsignal REF_CLK um eine halbe Periode verschoben, wobei
der Phasenfehler PH_ERR und der diesem entsprechende Zählerstand
CNT des Zählers
null ist. Das Schleifenfilter SF wird von dem Vergleichstaktsignal
PLL_CLK getriggert und übernimmt
den jeweiligen Phasenfehler PH_ERR bzw. Zählerstand CNT des Zählers zur
Berechnung des Stellsignals CTRL_SIG. Das erzeugte Vergleichstaktsignal
PLL_CLK wird mit Hilfe einer nicht dargestellten Verzögerungsschaltung
um eine halbe Periode des Referenztaktsignals REF_CLK verzögert, um
die Phasendifferenz zum Referenztaktsignal REF_CLK auszugleichen.
Ein Nachteil dieser bekannten Ausgestaltung ist der zusätzliche Schaltungsaufwand,
der durch die Verzögerungsschaltung
entsteht. Weiterhin weist diese Schaltung den Nachteil einer hohen
Verlustleistung auf, die dadurch entsteht, dass der Zähler mindestens
eine halbe Periode des Referenztaktsignals REF_CLK aktiv sein muss.
Eine weitere Möglichkeit zum Betrieb des in 6 dargestellten Phasenregelkreises
ist in 8 dargestellt.
Bei dieser Ausgestaltung wird der Zähler innerhalb des Phasendetektors
PD im Takt des Phasendetektortaktsignals CLK_PD aufwärts gezählt und
mit einer Flanke des Referenztaktsignals REF_CLK auf null und nach
einer halben Periode des Referenztaktsignals REF_CLK auf den entsprechenden
negativen Wert (Phasenfehler = -T/2) gesetzt. In diesem Fall wird
auch ohne Verzögerungsschaltung erreicht,
dass im eingeschwungenen Zustand der PLL das Vergleichstaktsignal
PLL_CLK phasengleich zum Referenztaktsignal REF_CLK ist. Nachteiligerweise
wird in diesem Fall der Phasenfehler PH_ERR bei negativen Phasenfehlern
jedoch nur dann korrekt bestimmt, wenn die Periode des Referenztaktsignals REF_CLK
immer exakt gleich lang ist. Falls die Periodendauer des Referenztaktsignals
REF_CLK variiert, werden negative Phasenfehler falsch ermittelt. Bei
der in 8 dargestellten
Betriebsweise ist für den
Fall, dass die Periodendauer T des Referenztaktsignals REF_CLK um
eine Abweichung d verlängert ist,
die Fehlfunktion dargestellt, bei der bei Auftreten der dritten
positiven Flanke des Vergleichstaktsignals PLL_CLK der Zählerstand
CNT null erreicht, obwohl noch eine zeitliche Differenz zur nächsten positiven Flanke
des Referenztaktsignals REF_CLK herrscht. Die Phasendifferenz wurde
daher falsch ermittelt.
Eine solche veränderliche Periodendauer des
Referenztaktsignals REF_CLK kann beispielsweise bei der Datentaktrückgewinnung
bei einem plesiochronen Datenübertragungsverfahren,
wie beispielsweise bei SDSL, auftreten.
Der vorliegenden Erfindung liegt
die Aufgabe zu Grunde, ein Verfahren zur digitalen Phasendetektion
sowie einen digitalen Phasendetektor zu schaffen, mit denen auch
bei schwankender Periodendauer eines Signals die Phasendifferenz
sicher ermit telt werden kann und mit denen eine verringerte Leistungsaufnahme
erreichbar sind.
Erfindungsgemäß wird diese Aufgabe durch ein
Verfahren mit den Merkmalen des Anspruchs 1 bzw. 3 bzw. einen Phasendetektor
mit den Merkmalen des Anspruchs 13 bzw. 15 gelöst.
Erfindungsgemäß wird dazu zum Ermitteln der
Phasendifferenz die Zeitdauer zwischen einer Flanke eines Signals
und dem nächsten
Auftreten einer Flanke des jeweils anderen Signals ermittelt, wobei
die gemessene Zeitdauer entweder mit einer Flanke des Referenztaktsignals
oder mit einer Flanke des Vergleichstaktsignals beginnen kann. Der
Betrag des Phasenfehlers bzw. der Phasendifferenz entspricht dabei
der gemessenen Zeitdauer und das Vorzeichen des Phasenfehlers richtet
sich danach, ob die gemessene Zeitdauer mit einer Flanke des Referenztaktsignals
oder des Vergleichstaktsignals begonnen hat. Auf diese Weise kann
auch bei schwankenden Periodendauern des Referenztaktsignals die
Phasendifferenz bei negativen Werten zuverlässig bestimmt werden.
Im eingeschwungenen Zustand eines
Phasenregelkreises, dessen Phasendetektor nach dem erfindungsgemäßen Verfahren
arbeitet, treten nur geringe Phasendifferenzen auf, so dass nur
sehr kleine Zeitdauern gemessen werden müssen und somit Zähler zur
Ermittlung der Zeitdauer nur geringe Zeit getaktet werden müssen. Die
Leistungsaufnahme kann auf diese Weise verringert werden.
Vorteilhafterweise wird nach dem
Ermitteln einer Zeitdauer bis zum Auftreten einer Flanke eines Signals
erst das Auftreten der nächsten
Flanke eines Signals abgewartet, bis zum nächsten Mal eine Zeitdauer ermittelt
wird. Damit kann sichergestellt werden, dass die Flanken, die eine
erste ermittelte Zeitdauer begrenzen, nicht eine zeitliche Begrenzung
einer zweiten ermittelten Zeitdauer sein können. Somit werden die Zeitdauern
immer zwischen wechselnden Paaren von Flanken der beiden Signale
ermittelt.
Würde
unmittelbar nach der Ermittlung einer Zeitdauer zwischen einer ersten
und einer zweiten Flanke unmittelbar darauf die Zeitdauer zwischen
der zweiten und der dritten Flanke ermittelt werden, würde diese
zweite Zeitdauer der Differenz zwischen der Periodendauer des Referenztaktsignals
und der ermittelten ersten Zeitdauer entsprechen.
Der zwischen wechselnden Paaren von Flanken
der Taktsignale ermittelte Phasenfehler wird für den Fall, dass er zum Zeitpunkt
des Vergleichstaktes bestimmt wird bzw. dass die Zeitdauermessung
von einer Flanke des Vergleichstaktsignals beendet wird, als positiv
definiert. Für
den Fall, dass der Phasenfehler zum Zeitpunkt des Referenztaktes
bestimmt wird, wird der Phasenfehler als negativ definiert. Das
Vorzeichen des Phasenfehlers kann auch entgegengesetzt definiert
werden. Das Taktsignal, welches die Messung des Phasenfehlers stoppt, kann
jeweils als Triggersignal für
das Schleifenfilter verwendet werden, welches den neu bestimmten Phasenfehler
zur weiteren Verarbeitung übernimmt und
unter Einbeziehung dieses Phasenfehlers ein neues Steuersignal für den Oszillator
DCO generiert. Vorteilhafterweise wird das DCO-Steuersignal von dem
Schleifenfilter unverzüglich
nach dem Anliegen des neuen Phasenfehlers bzw. innerhalb einer sehr kurzen
Verarbeitungszeit generiert, um die Verzögerung innerhalb der Regelschleife
klein zu halten.
Für
den Fall, dass die Flanken des Referenztaktsignals und des Vergleichstaktsignals
exakt übereinanderliegen,
ist der gemessene Phasenfehler bzw. die gemessene Phasendifferenz
null und der Zähler
zur Ermittlung des Phasenfehlers verbleibt im Ruhezustand. Das Schleifenfilter
kann in diesem Fall von einem der beiden Signale getriggert werden.
Vorteilhafterweise wird die PLL in
der Form gestartet, dass der erste gemessene Phasenfehler vom Betrag
her gering ist bzw. unter einem Grenzwert liegt, der insbesondere
einer halben Referenztaktperiode entsprechen kann. Ein derartiger
Startphasenfehler kann z.B. erzielt werden, wenn der DCO mit einer
bestimmten Referenztaktsignalflanke gestartet wird und der erste
Vergleichstakt kurz nach dem DCO Start generiert wird. Die erste
Messung des Phasenfehlers wird ebenfalls mit diesem bestimmten Referenztaktsignal
gestartet und mit dem folgenden Vergleichstaktsignal gestoppt. Die
Messung der folgenden Phasenfehler kann wie oben beschrieben zwischen
wechselnden Flanken von Taktsignalen erfolgen.
Wenn kein definierter Oszillatorstart
in Bezug auf den Referenztakt möglich
ist, weil z.B. der von der PLL generierte Takt mit einer vom CLK_DCO
abgeleiteten Nominalfrequenz verfügbar sein muss, bevor ein Referenztakt
anliegt, kann der erste Phasenfehler prinzipiell positiv oder negativ
sein und vom Betrag her in der Größenordnung einer halben Referenztaktperiodendauer
liegen.
Vorteilhafterweise wird dann vor
dem Start einer ersten Phasendetektion gemäß der vorliegenden Erfindung
sichergestellt, dass die Phasendifferenz zwischen dem Referenztaktsignal
und dem Vergleichstaktsignal gering ist bzw. unter einem Grenzwert
liegt. Dadurch kann vermieden werden, dass die Ermittlung der Phasendifferenz
große
Werte liefert, die abhängig
von der Ausführung
der Regelung des Phasenregelkreises zu einem instabilen Verhalten führt. Dabei
kann es vorkommen, dass das Stellsignal für den Oszillator und die Phase
des vom Oszillator erzeugten Vergleichstaktsignals ständig zwischen einer
großen
positiven und einer großen
negativen Phasendifferenz springt.
Eine derartige Steuerung, die die
Phasendetektion erst bei hinreichend kleiner Phasendifferenz zulässt, kann
in einer Steuereinrichtung implementiert sein, die auch die Ermittlung der
Zeitdauern durchführt.
Dabei kann auch vorgesehen sein, dass durchgängig eine Phasendifferenz ermittelt
wird, diese allerdings erst an ein Schleifenfilter weitergegeben
wird, wenn die Phasendifferenz zwischen dem Vergleichstaktsignal
und dem Referenztaktsignal klein genug ist. Ebenso ist es denkbar,
das vom Schleifenfilter erzeugte Stellsignal so lange zu unterdrücken bzw.
zu sperren.
Eine andere Variante zur Vermeidung
nachteiliger Folgen bei zu großer
Phasendifferenz zu Beginn der Phasendetektoon besteht darin, zu
Beginn die Zeitdauer grundsätzlich
immer ab einer Flanke eines bestimmten Signals zu bestimmen. Dabei
kann insbesondere zusätzlich
vorgesehen sein, die ermittelte Phasendifferenz dem Betrag nach
auf einen Maximalwert zu begrenzen. Auf diese Weise wird sichergestellt,
dass auch bei einer großen
tatsächlichen Phasendifferenz
die ermittelte Phasendifferenz einen bestimmten Wert, nämlich den
Maximalwert, nicht überschreitet
und die Gefahr geringer ist, dass die Regelung instabil wird. Insbesondere
wird die ermittelte Phasendifferenz auf einen Wert begrenzt, der der
halben Periodendauer des Referenztaktsignals entspricht.
Der Maximalwert, auf den die ermittelte
Phasendifferenz beschränkt
wird, richtet sich u.a. auch nach der Auslegung der Regelung. Wenn
auf Grund der Regelungsauslegung die Neigung zu instabilem Verhalten
gering ist, kann u.U. die ermittelte Phasendifferenz auch auf einen
größeren Maximalwert
als die halbe Periode des Referenztaktsignals beschränkt werden.
Zum Beschleunigen des Einrastens
eines Phasenregelkreises unter Verwendung eines Phasendetektors
gemäß der vorliegenden
Erfindung kann zu Beginn vorgesehen werden, dass die Zeitdauer ab
der Flanke eines bestimmten Signals bis zum nächsten Auftreten einer Flanke
des anderen Signals ermittelt wird und diese Zeitdauer mit einem Grenzwert
verglichen wird. Der herangezogene Grenzwert ist insbesondere die
Hälfte
der Periodendauer des Referenztaktsignals. Wenn die ermittelte Zeit dauer
unterhalb des Grenzwerts liegt, wird vorteilhafterweise auch im
folgenden die Zeitdauer zwischen einer Flanke des bestimmten Signals
und der jeweils als nächstes
auftretenden Flanke des anderen Signals ermittelt. Dabei wird die
ermittelte Zeitdauer bzw. die daraus ermittelte Phasendifferenz nach
oben hin auf einen Maximalwert begrenzt, um auch bei Schwankungen
der Regelung oder der Periodendauer eines Signals keine zu großen Werte
für die
Phasendifferenz zu erhalten und ein instabiles Verhalten einer Regelung
zu vermeiden.
Falls diese zu Beginn ermittelte
Zeitdauer jedoch oberhalb des Grenzwerts liegt, empfiehlt es sich,
im folgenden die Zeitdauer immer zwischen einer Flanke des anderen
Signals und der jeweils als nächstes
auftretenden Flanke des bestimmten Signals zu ermitteln. Dabei kann
selbstverständlich
auch eine Begrenzung der ermittelten Zeitdauer bzw. der daraus abgeleiteten
Phasendifferenz nach oben hin auf einen Maximalwert erfolgen.
Mit Hilfe des zuvor beschriebenen
Verfahrens wird zu Beginn festgestellt, ob eine bestimmte Flanke
des bestimmten Signals zeitlich näher an der vorangegangenen
Flanke oder der noch folgenden Flanke des anderen Signals liegt.
Entsprechend können
zur Ermittlung der Zeitdauer jeweils die Flanken der verschiedenen
Signale zur Begrenzung der ermittelten Zeitdauer herangezogen werden,
die am nächsten
zusammenliegen, so dass kleine Werte für die ermittelte Zeitdauer
bzw. die Phasendifferenz erhalten werden. Das Einrasten der Regelung
wird auf diese Weise beschleunigt.
Vorteilhafterweise wird zu Beginn
der Flankendetektion, wenn der genaue Wert für die Phasendifferenz zwischen
den Signalen ungewiss ist und auch hohe Werte für die Phasendifferenz auftreten können, die
Phasendifferenz nach dem Verfahren ermittelt, bei dem die Zeitdauer
immer ab Flanken des gleichen Signals bis zum jeweils nächsten Auftreten einer
Flanke des anderen Signals ermittelt, wobei ggf. die erste ermittelte Zeitdauer
mit einem Grenzwert verglichen wird und davon abhängig festgelegt wird,
welches Signal das bestimmte Signal ist, dessen Flanken am Beginn
der ermittelten Zeitdauer stehen. Damit kann ein instabiles Verhalten
der Regelung zu Beginn vermieden werden. Sobald infolge der Regelung
sich die Phasendifferenz verringert und insbesondere unter einen
Grenzwert fällt,
kann die Phasendifferenz nach dem anderen Verfahren ermittelt werden,
bei dem die Zeitdauer ab Flanken von beiden Signalen ermittelt wird,
wobei auf diese Weise nach der Ermittlung einer Zeitdauer zwischen
einer ersten und zweiten Flanke die nächste Zeitdauer erst wieder
zwischen einer dritten und vierten Flanke ermittelt wird, unabhängig davon,
zu welchem Signal die erste und dritte Flanke gehören.
Mit Hilfe des erfindungsgemäßen Verfahrens kann
erreicht werden, dass ein Phasenregelkreis schnell und sicher einrastet
und im eingerasteten Zustand nur sehr kleine Zeitdauern erfasst
werden müssen,
so dass ein Zähler
zur Ermittlung der Zeitdauer nur sehr kurze Zeit betrieben werden
muss und eine geringe Leistungsaufnahme der Schaltung erreicht wird.
Grundsätzlich kann die Zeitdauer mit
Hilfe eines Zählers
erfasst werden, der im Takt eines Phasendetektortaktsignals auf-
oder abgezählt
wird und von den Flanken, die die zu ermittelnde Zeitdauer begrenzen,
gestartet bzw. gestoppt wird. Die Frequenz des Phasendetektortaktsignals
ist dabei größer als die
Frequenz der beiden Signale.
Zur Bestimmung des Vorzeichens der
Phasendifferenz kann vorgesehen sein, dass ein Zähler zur Ermittlung der Zeitdauer
abhängig
davon, ob die Zeitdauer ab einer Flanke des Referenztaktsignals oder
des Vergleichstaktsignals ermittelt wird, nach oben oder nach unten
gezählt
wird. Auf diese Weise kann das Vorzeichen der Phasendifferenz direkt
am Zählerstand
des Zählers
abgelesen werden. Dies bietet sich insbesondere in den Fällen an,
in denen durch digitale Berechnung aus der Phasendifferenz das Stellsignal
für den
Oszillator einer PLL berechnet wird.
Die Erfindung wird nachfolgend anhand
eines bevorzugten Ausführungsbeispiels
unter Bezugnahme auf die beigefügten
Zeichnungen näher
erläutert.
1 zeigt
den schematischen Aufbau eines Phasenregelkreises unter Verwendung
eines Phasendetektors gemäß dem Ausführungsbeispiel der
vorliegenden Erfindung,
2 zeigt
den Verlauf verschiedener in dem Phasenregelkreis gemäß 1 auftretende Signale im
normalen Regelbetrieb,
3 zeigt
den zeitlichen Verlauf verschiedener in dem Phasenregelkreis gemäß 1 auftretender Signale in
der Startphase bei positiver Startphasendifferenz,
4 zeigt
den zeitlichen Verlauf verschiedener in dem Phasenregelkreis gemäß 1 auftretender Signale in
der Startphase bei negativer Startphasendifferenz,
5 zeigt
detailliert den Verlauf des Zählerstands
eines Zählers
innerhalb des Phasendetektors gemäß dem Ausführungsbeispiel der vorliegenden Erfindung,
6 zeigt
den grundsätzlichen
Aufbau eines digitalen Phasenregelkreises nach dem Stand der Technik,
7 zeigt
den zeitlichen Verlauf einiger in dem Phasenregelkreis gemäß 6 auftretender Signale,
und
8 zeigt
den zeitlichen Verlauf einiger in dem Phasenregelkreis gemäß 6 auftretender Signale bei
schwankender Periodendauer des Referenztaktsignals.
Die Grundidee besteht darin, die
Messung der Zeitdauer bzw. der Phasendifferenz entweder mit einer
Flanke des Referenztaktsignals oder aber mit einer Flanke des Vergleichstaktsignals
zu starten. Falls zu Beginn des Verfahrens der Fall eintreten kann,
dass die erste Phasendifferenz in der Größenordnung von der halben Periodendauer
des Referenztaktsignals liegen kann, bietet sich das Starten mit
einem Verfahren an, bei dem die Messung der Zeitdauer bzw. der Phasendifferenz
immer mit den Flanken des gleichen Signals gestartet wird. Somit wird
sichergestellt, dass die u.U. große Phasendifferenz immer das
gleiche Vorzeichen hat, wodurch ein Springen zwischen großen positiven
und negativen Phasendifferenzen verhindert wird.
Der in 1 dargestellte
Phasenregelkreis, im folgenden PLL genannt, weist einen Phasendetektor
PD, ein Schleifenfilter SF und einen digital gesteuerten Oszillator
DCO auf. Der Phasendetektor PD wird von einem Referenztaktsignal
REF CLK und einem von dem Oszillator DCO erzeugten Vergleichstaktsignal
PLL_CLK beaufschlagt. Der Phasendetektor PD ermittelt die Differenz
der Phasen zwischen dem Referenztaktsignal REF_CLK und dem Vergleichstaktsignal
PLL CLK und erzeugt davon abhängig
eine Phasendifferenz PH_ERR, die der Phasendetektor PD an das Schleifenfilter
SF weiterleitet. Dieses erzeugt aus der Phasendifferenz PH_ERR ein
Steuersignal CTRL_SIG, mit dem es den gesteuerten Oszillator DCO
beaufschlagt. Die PLL ist derart eingerichtet, dass die Phase des
Vergleichstaktsignals PLL_CLK der Phase des Referenztaktsignals REF_CLK
nachgeregelt wird.
Der Oszillator DCO benötigt zum
Betrieb ein Oszillatortaktsignal CLK_DCO.
Der Phasendetektor PD weist eine
Steuerung CTRL und einen Zähler
CNTR auf, der von einem Phasendetektortaktsignal CLK_PD beaufschlagt
wird. Die Steuerung CTRL des Phasendetektors PD beaufschlagt das
Schleifenfilter SF weiterhin mit ei nem Triggersignal TRG, mit dem
das Schleifenfilter SF dazu veranlasst werden kann, aus einer anliegenden
Phasendifferenz PH_ERR ein Steuersignal CTRL_SIG für den Oszillator
DCO zu erzeugen.
Im folgenden wird die Betriebsweise
für den Fall
beschrieben, dass die Differenz der Phase des Referenztaktsignals
REF_CLK und des Vergleichstaktsignals PLL_CLK gering ist und insbesondere kleiner
der halben Periodendauer des Referenztaktsignals REF_CLK ist. Diese
Betriebsweise ist in 2 dargestellt.
Dabei ist oben der Verlauf des Referenztaktsignals wiedergegeben,
wobei die erste Periode die Periodendauer T und die zweite Periode die
Periodendauer T+d besitzt. Im dargestellten Fall können somit
Schwankungen der Periodendauer des Referenztaktsignals REF_CLK auftreten.
Dies ist beispielsweise bei der plesiochronen Datenübertragung bei
SDSL möglich,
wenn Datensymbole mit einer festen Symbolfrequenz im Rahmen übertragen
werden und die mittlere Rahmenlänge
durch geregeltes Einfügen
bzw. Weglassen von Stopfdatensymbolen, auch Stuffing genannt, auf
eine bestimmte Rahmenfrequenz geregelt wird. Bei einem derartigen
Fall ist die Rahmenfrequenz niedrig, so dass die Rückgewinnung
der Rahmenfrequenz mit Hilfe einer PLL auch digital durchgeführt werden
kann und somit vorteilhafterweise ein Anwendungsgebiet der vorliegenden
Erfindung darstellt.
Unter dem Verlauf des Referenztaktsignals REF_CLK
ist der Verlauf des Zählerstands
CNT des Zählers
CNTR dargestellt. Ein Ausschnitt A aus dem Verlauf CNT ist vergrößert in 5 dargestellt. In 5 ist
zu sehen, dass der Verlauf CNT des Zählerstands im Takt des Phasendetektortaktsignals CLK_PD
inkrementiert wird.
Unterhalb des Verlaufs CNT des Zählerstands
ist das Vergleichstaktsignal PLL_CLK dargestellt. Unten in 2 ist das Triggersignal
TRG dargestellt, das vom Phasendetektor PD erzeugt wird, um dem
Schleifenfilter SF mitzuteilen, dass ein korrekter Wert der Phasendifferenz
PH_ERR anliegt.
Zum Ermitteln der Phasendifferenz
wird mit Hilfe der Steuerung CTRL der Zähler CNTR mit der positiven
Flanke entweder des Referenztaktsignals REF_CLK oder des Vergleichstaktsignals
PLL_CLK auf null gesetzt und gestartet. Wenn der Zähler CNTR
mit der positiven Flanke des Referenztaktsignals REF_CLK gestartet
wurde, wird der Zähler CNTR
aufwärts
gezählt
und wenn er mit einer positiven Flanke des Vergleichstaktsignals
PLL_CLK gestartet wurde, wird der Zähler CNTR abwärts gezählt. Sobald
der Zähler
CNTR gestartet ist wird er von der nächsten positiven Flanke des
jeweils anderen Signals gestoppt, worauf er den zu diesem Zeitpunkt
erreichten Zählerstand
so lange behält,
bis er wieder zurückgesetzt
und gestartet wird.
Grundsätzlich ist die Steuerung CTRL
so eingerichtet, dass nach Ermittlung der Zeitdifferenz zwischen
einer Flanke eines Signals und der als nächstes auftretenden Flanke
des jeweils anderen Signals erst wieder die Zeitdauer ab der als
nächstes
auftretenden Flanke ermittelt wird, unabhängig von welchem Signal diese
ist.
In dem in 2 dargestellten Fall beginnt die erste
Phasendifferenzmessung mit der ersten positiven Flanke des Referenztaktsignals
REF_CLK und endet mit der ersten positiven Flanke des Vergleichstaktsignals
PLL_CLK. Der Zählerstand
CNT steigt zwischen den beiden vorgenannten positiven Flanken an
und bleibt nach dem Auftreten der positiven Flanke des Vergleichstaktsignals
PLL_CLK auf dem zu diesem Zeitpunkt erreichten Zählerstand N1 stehen. Der Zählerstand
N1 wird als Phasendifferenz PH_ERR übernommen und ist ab der ersten
positiven Flanke des Vergleichstaktsignals PLL_CLK gültig. Dies
wird vom Triggersignal TRG angezeigt, das mit der ersten positiven
Flanke des Vergleichstaktsignals PLL_CLK erzeugt wird. Im dargestellten
Beispielfall ist zu diesem Zeitpunkt der Oszillator DCO so eingerichtet,
dass er mit einer höheren
Frequenz als das Referenztaktsignal REF_CLK arbeitet, so dass die
zweite positive Flanke des Referenztaktsignals REF_CLK erst nach
der zweiten positiven Flanke des Vergleichstaktsignals PLL_CLK auftritt.
Dies bedeutet, dass die zweite Zeitdauermessung mit der zweiten
positiven Flanke des Vergleichstaktsignals PLL_CLK gestartet wird
und dementsprechend der Zählerstand
CNT zu diesem Zeitpunkt zu null gesetzt wird und sich daraufhin
verringert, da der Zähler CNTR
in diesem Fall abwärts
zählt.
Der Zähler
CNTR wird mit der zweiten positiven Flanke des Referenztaktsignals
REF_CLK gestoppt und behält
den zu diesem Zeitpunkt erreichten zweiten Zählerstand -N2. Da in diesem
Fall die Zeitdauermessung von einer Flanke des Referenztaktsignals
REF_CLK beendet wurde, und erst ab diesem Zeitpunkt der gültige Wert
-N2 für
die Phasendifferenz PH_ERR anliegt, wird die zweite positive Flanke
des Triggersignals TRG mit der zweiten positiven Flanke des Referenztaktsignals
REF_CLK erzeugt.
Die dritte positive Flanke des Referenztaktsignals
REF_CLK ist vergleichbar zur zweiten positiven Flanke wieder zeitlich
nach der entsprechenden dritten positiven Flanke des Vergleichstaktsignals PLL_CLK.
Dies liegt im dargestellten Fall an der schwankenden Periodendauer
des Referenztaktsignals, das zu diesem Zeitpunkt um den Betrag d
verlängert
ist. Der ermittelte Zählerstand
-N3 wurde auf die gleiche Weise erzeugt wie der vorangegangene Zählerstand
-N2. Bei den jeweils vierten positiven Flanken der beiden Signale
wurde die Phasendifferenz mittlerweile zu nu11 geregelt, so dass
die beiden vierten positiven Flanken gleichzeitig auftreten und zu
diesem Zeitpunkt auch das Triggersignal TRG erzeugt wird und als
gültige
Phasendifferenz der Wert Null ausgegeben wird.
In dem in 2 dargestellten Diagramm ist gut zu erkennen,
dass der Zähler
CNTR für
kleine Phasendifferenzen PH_ERR nur sehr kurze Zeit in Betrieb ist
und daher die Leistungsaufnahme des Phasendetektors PD gering gehalten
werden kann. Zu sätzlich
ist zu sehen, dass auch bei schwankender Periodendauer des Referenztaktsignals
REF_CLK negative Phasendifferenzen sicher ermittelt werden können.
Um einmal in einen Betriebszustand
zu gelangen, bei dem die Differenz der Phasen der beiden Signale
gering ist und ein instabiles Verhalten des Phasenregelkreises ausgeschlossen
ist, bieten sich verschiedene Möglichkeiten
an. Zum einen kann die Steuerung CTRL innerhalb des Phasendetektors
PD so eingerichtet sein, dass sie erst eine Phasendifferenz PH_ERR
ermittelt, wenn das Vergleichstaktsignals PLL_CLK und das Referenztaktsignal
REF_CLK im Wesentlichen in Phase sind bzw. erst dann einen erzeugten
Wert für
die Phasendifferenz PH ERR an das Schleifenfilter SF weitergibt.
Darüber
hinaus bietet sich die Möglichkeit
an, mit Hilfe des Triggersignals TRG eine Verarbeitung eines anliegenden
Wertes für
die Phasendifferenz PH_ERR durch das Schleifenfilter SF zu verhindern,
solange die beiden Signale nicht zumindest im Wesentlichen in Phase sind.
Letzteres bietet sich insbesondere dann an, wenn kein Ausgangspuffer
für den
Zähler
CNTR vorgesehen ist und somit am Schleifenfilter SF ständig der
aktuelle Zählerstand
des Zählers
CNTR anliegt.
Darüber hinaus bietet sich eine
Möglichkeit an,
bei der in einer Startphase, in der auch große Differenzen der Phasen der
beiden Signale REF_CLK, PLL_CLK auftreten können, der Zähler CNTR immer mit der positiven
Flanke des gleichen Signals gestartet und mit der Flanke des anderen
Signals gestoppt. Dieses bestimmte Signal kann das Referenztaktsignal
oder das Vergleichstaktsignal sein. Auf diese Weise wird ein Springen
zwischen großen
positiven und negativen Phasenfehlern vermieden. Zusätzlich wird
vorteilhafterweise der vom Phasendetektor PD ausgegebene Wert der
Phasendifferenz PH_ERR dem Betrag nach begrenzt. Eine andere Möglichkeit zur
Herstellung eines geringen Startphasenfehlers wäre, den DCO mit einer bestimmten
Referenztaktsignalflanke zu starten und den ersten Vergleichstakt kurz
nach dem DCO Start zu generieren.
Die erste Messung des Phasenfehlers
wird ebenfalls mit diesem bestimmten Referenztaktsignal gestartet
und mit dem folgenden Vergleichstaktsignal gestoppt. Auf diese Art
ergibt sich ein kleiner positiver Startphasenfehler.
Um das Einrasten des Phasenregelkreises zu
beschleunigen, ist im beschriebenen Ausführungsbeispiel vorgesehen,
dass die erste ermittelte Phasendifferenz mit einem Grenzwert verglichen wird
und bei Unterschreiten des Grenzwerts die nächsten Phasendifferenzen auf
die gleiche Weise erzeugt werden und bei Überschreiten des Grenzwerts
der Zähler
von den positiven Flanken des anderen Signals PLL_CLK gestartet
wird.
In 3 ist
der Fall dargestellt, in dem die erste ermittelte Phasendifferenz
kleiner als der Grenzwert ist. Der herangezogene Grenzwert ist die Hälfte der
Periodendauer des Referenztaktsignals REF_CLK. Die erste ermittelte
Phasendifferenz ist in 3 der
Wert +N1, der unter dem Grenzwert liegt, so dass dieser Wert der
erste gültige
Phasenfehler ist. Im weiteren Verlauf der Startphase wird der Zähler CNTR
immer von der positiven Flanke des Referenztaktsignals REF_CLK gestartet
wird. Die nächste Phasendifferenz
+N2 ist auf den Maximalwert PH_ERR_MAX begrenzt. Ein weiteres Ansteigen
der Phasendifferenz PH_ERR trotz des bereits hohen vorangegangenen
Werts +N1 für
die Phasendifferenz PH ERR kann sich auf Grund der Regelung oder
einer schwankenden Referenztaktperiodendauer ergeben. Der dritte
Wert +N3 der Phasendifferenz PH_ERR hat dagegen wieder abgenommen.
In allen Fällen
liegt der gültige
Wert für
die Phasendifferenz PH_ERR mit der positiven Flanke des Vergleichstaktsignals
PLL_CLK an und wird auch zu diesem Zeitpunkt das Triggersignals
TRG erzeugt.
In 4 ist
der Fall dargestellt, dass die erste ermittelte Phasendifferenz über dem
Grenzwert PH_ERR_MAX ist und auf diesen begrenzt wird, wobei dieser
Wert der Phasendifferenz PH_ERR durch Messung der Zeitdauer zwischen
der ersten positiven Flanke des Referenztaktsignals REF_CLK und der
ersten positiven Flanke des Vergleichstaktsignals PLL_CLK ermittelt
wurde. Dies bedeutet, dass die erste positive Flanke des Vergleichstaktsignals PLL_CLK
zeitlich näher
an der zweiten positiven Flanke des Referenztaktsignals REF_CLK
liegt als an der ersten. Die erste ermittelte Phasendifferenz ist nicht
gültig
und wird nicht an das Schleifenfilter weitergereicht bzw. das Schleifenfilter
wird nicht getriggert. Zum schnelleren Einrasten des Phasenregelkreises
wird daher immer die Zeitdauer zwischen einer positiven Flanke des
Vergleichstaktsignals PLL_CLK und der als nächstes auftretenden positiven
Flanke des Referenztaktsignals REF_CLK messen. Dies ist in 4 derart dargestellt, dass
der Zählerstand
CNT mit der ersten positiven Flanke des Vergleichstaktsignals PLL_CLK
auf null zurückgesetzt
und der Zähler
CNTR gestartet wird. Da es in diesem Fall die positive Flanke des
Vergleichstaktsignals PLL_CLK ist, die den Zähler CNTR startet, wird dieser
abwärts
gezählt,
bis er von der zweiten positiven Flanke des Referenztaktsignals
REF_CLK gestoppt wird und zu diesem Zeitpunkt der erreichte Zählerstand
-M1 den ersten gültigen
Wert für
die ermittelte Phasendifferenz PH_ERR darstellt. Aus Gründen der
Anschaulichkeit wird auch in diesem Fall angenommen, dass trotz
der Regelung der Betrag der Phasendifferenz weiter zunehmen kann,
so dass bei dem als nächstes
ermittelten Wert – M2
der Phasendifferenz PH_ERR die Begrenzung auf den Wert – PH_ERR_MAX
zu erkennen ist.
Nach der Startphase, in der abhängig von der
ersten ermittelten Phasendifferenz sich der Signalverlauf gemäß 3 oder der Signalverlauf
gemäß 4 ergeben kann, wird von
der Steuerung CTRL des Phasendetektors PD auf die normale Betriebsweise,
deren Signalverlauf in 2 dargestellt ist,
umgestaltet, sobald der Wert für
die Phasendifferenz einen bestimmten Grenzwert unterschreitet. Die Steuerung
kann auch so ausgelegt sein, dass nach einer Bestimmung eins ersten
gültigen
Phasenfehlers auf die normale Betriebsweise umgeschaltet wird.
Mit Hilfe der vorliegenden Erfindung
wird zum einen erreicht, dass das Vergleichstaktsignal PLL_CLK gegenüber dem
Referenztaktsignal REF_CLK im eingelaufenen Zustand der PLL keinen Phasenoffset
hat und somit keine weitere Verzögerungsschaltung
benötigt
wird. Weiterhin wird vorteilhafterweise die Phasendifferenz PH_ERR
auch bei nicht konstanter Periodendauer des Referenztaktsignals
REF_CLK immer exakt berechnet. Der Wert für die Phasendifferenz PH_ERR
muss nicht in einem weiteren Register gespeichert werden, da er
vom angehaltenen Zähler
CNTR gehalten wird. Im eingerasteten Zustand des Phasenregelkreises
läuft der
Zähler
CNTR nur in einem zeitlich sehr begrenzten Fenster, wodurch sich
eine sehr geringe Verlustleistung erzielen lässt. Darüber hinaus findet überhaupt
keine Aktivität
des Zählers
CNTR statt, sobald der Phasenregelkreis eingerastet ist und die
Periodendauer des Referenztaktsignals REF_CLK konstant ist.