-
HINTERGRUND DER ERFINDUNG
-
1. Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf ein Datenrückgewinnungsverfahren
und eine Datenrückgewinnungsschaltung
zum Wiederherstellen von seriell übertragenen Daten.
-
2. Beschreibung des Standes der Technik
-
In
den letzten Jahren und weiterhin wurden verschiedene Arten von Hochgeschwindigkeits-Schnittstellenstandards
vorgeschlagen und in praktischen Gebrauch genommen, um auf den Bedarf
für die
Hochgeschwindigkeits-Datenübertragung zu
antworten. Beispiele solcher Schnittstellenstandards umfassen USB
(universeller serieller Bus), seriellen ATA (Anschluss der fortschrittlichen
Technologie), IEEE 1394, 1G/10G Ethernet (eingetragene Handelsmarke),
InfiniBand, RapidIO, Faserkanal und PCI Express (Peripheriekomponenten-Verbindungsbus).
Es wird erwartet, dass in der Zukunft immer mehr Betonung auf die
Datenübertragung
mit höherer
Rate und großer
Kapazität
gelegt wird.
-
Die
meisten der Hochgeschwindigkeitsschnittstellen verwenden serielle Übertragungsschemen
zur Übertragung
von Daten gemäß einer
vorbestimmten Frequenz. Ein Takt mit dieser Frequenz wird in die übertragenen
Daten eingebettet. Das Empfangsende extrahiert diesen Takt aus den
empfangenen Daten und stellt die empfangenen Daten auf der Basis
des extrahierten Taktsignals wieder her. Die Schaltung zum Durchführen des
Wiederherstellungsprozesses wird Taktdaten-Rückgewinnungsschaltung (CDR-Schaltung)
genannt.
-
In
herkömmlichen
CDR-Schaltungen wird im Allgemeinen ein Phasenregelkreis (PLL) verwendet. Das
Oszillationssignal (oder der Takt) des spannungsgesteuerten Oszillators
(VCO) des PLL wird so gesteuert, dass er mit der Phase der empfangenen Daten
synchronisiert wird. Das Oszillationssignal wird als Wiedergabetaktsignal
ausgegeben. Das empfangene Signal wird unter Verwendung des Wiedergabetaktsignals
als Referenz zwischengespeichert und folglich genau wiederhergestellt.
-
Zusammen
mit der Zunahme der Datenübertragungsrate
jedes Jahr hat jedoch die VCO-Frequenz
die GHz-Größenordnung
für die
Datenübertragung
erreicht. Die CDR-Schaltung, die einen solchen Hochfrequenz-VCO
enthält,
hat einige negative Effekte, einschließlich einer vergrößerten Chipgröße, eines
erhöhten
Leistungsverbrauchs und erhöhter Kosten.
Außerdem
kann die durch die Verdrahtung induzierte Taktverzögerung in
einer solchen Situation, in der eine weitere Beschleunigung der
Datenübertragung
erforderlich ist, nicht ignoriert werden und die Verdrahtungsanordnung
und die Vorrichtungsanordnung wurden ausreichend in Erwägung gezogen. Folglich
wird die Schaltungskonstruktion komplizierter. Da die Verdrahtungsverzögerung erheblich
von den Eigenschaften der verwendeten Werkzeuge oder Vorrichtungen
abhängt,
kann die Verdrahtungsanordnung für
jeden Prozess neu entworfen werden müssen, und im schlimmsten Fall
kann die Schaltung selbst neu entworfen werden müssen. Folglich wird die Wiederverwendbarkeit
der Schaltung verschlechtert und die Entwicklungsdauer wird lang.
-
Um
das vorstehend beschriebene Problem zu beseitigen, wird eine Überabtast-Datenrückgewinnungsschaltung
vorgeschlagen. Siehe B Kim et al., "A 30-MHz Hybrid Analog/Digital Clock
Recovery Circuit in 2-um CMOS" IEEE
JSSC, Dezember 1990, auf 1385–1394.
-
1 ist
ein schematisches Blockdiagramm, das die Struktur einer herkömmlichen
Taktdaten-Rückgewinnungsschaltung
(CDR-Schaltung) darstellt. Die herkömmliche CDR-Schaltung umfasst einen Mehrphasentaktgenerator 200,
eine Flip-Flop-Schaltung 201 und einen digitalen PLL (DPLL) 202.
Der Mehrphasentaktgenerator 200 ist durch einen Phasenregelkreis
(PLL) oder einen verzögerten
Regelkreis (DLL) strukturiert und erzeugt mehrere Takte, deren Phasen
vom Referenztakt (RefCLK) in regelmäßigen Intervallen verschoben sind.
-
Die
Flip-Flop-Schaltung (F/F-Schaltung) 201 umfasst mehrere
Flip-Flops, wovon jedes Eingangsdaten am Dateneingangsanschluss über einen
gemeinsamen Pfad empfängt
und einen Takt (einen der Takte CLK1–CLKN) am Takteingangsanschluss
empfängt.
Jedes Flip- Flop
nimmt die Eingangsdaten an der steigenden Flanke (oder der fallenden
Flanke) des entsprechenden Takts an. Folglich sind die aus der Flip-Flop-Schaltung 201 ausgegebenen
Daten ein Satz von Datenelementen, die mit den phasenverschobenen
Takten abgetastet sind. Der digitale PLL 202 erfasst den
Logikinversionszeitpunkt aus der Bitsequenz, die von der Flip-Flop-Schaltung 201 geliefert
wird, wählt
einen Takt synchron mit dem Inversionszeitpunkt aus den mehreren
Takten aus und stellt den ausgewählten
Takt als Rückgewinnungstakt
(RecCLK) wieder her. Der DPLL 202 wählt auch Daten, die mit einem
Takt mit verschobener Phase (z. B. ein Takt mit entgegengesetzter
Phase) vom Rückgewinnungstakt
(beispielsweise ein Takt mit entgegengesetzter Phase) abgetastet
wurden, aus und gibt sie als Rückgewinnungsdaten
(RecData) aus. Der Dateninversionszeitpunkt wird nach dem Filtern (oder
Glätten
durch ein Filter) erfasst, um den Rückgewinnungstakt (RecCLK) auszuwählen. Dieser Rückgewinnungstakt
(RecCLK) wird im Signalprozessor der späteren Stufe verwendet. Mit
dieser Anordnung können
alle Schaltungen abgesehen vom Mehrphasengenerator 200 durch
digitale Schaltungen strukturiert und leicht implementiert werden.
-
Die
Phasendifferenz zwischen den mehreren Takten muss jedoch genau gesteuert
werden, da eine ungleichmäßige Phasendifferenz
Fehler einführen kann.
-
2 ist
ein Ablaufplan, der das Problem zeigt, das durch die Veränderung
der Phasendifferenz in der herkömmlichen
Taktdatenrückgewinnungsschaltung
verursacht wird. In diesem Beispiel werden vier Takte (CLK1–CLKN4)
erzeugt, deren Phase um vorgeschriebene Grade verschoben ist. Es
wird angenommen, dass die Phase von CLK2 um Δ hinter dem idealen Zustand
erhalten wird, dass CLK2 als Rückgewinnungstakt
(RecCLK) ausgewählt
wird und dass jeder Datensatz synchron mit dem Rückgewinnungstakt im Signalprozessor
verarbeitet wird. Wenn die Phase des Rückgewinnungstakts (RecCLK)
auf jene von CLK 1 zum Zeitpunkt Tsw umgeschaltet wird, wird die
Periode (T') des Rückgewinnungstakts
(RecCLK) im Gegensatz zur ursprünglichen
Phasendifferenz um Δ kürzer. Folglich
kann die Zeit Tsu',
die erforderlich ist, um das Flip-Flop im Signalprozessor einzurichten,
nicht garantiert werden und im schlimmsten Fall treten Fehler auf.
Selbst wenn die Schaltung derart entworfen ist, dass die Takte in
regelmäßigen Intervallen
an den Ausgangsanschlüssen
des Mehrphasentaktgenerators 200 erzeugt werden, werden
diese Takte durch einen Versatz (beispielsweise aufgrund der Verdrahtung
oder Last) vor dem Rückgewinnungstakt-Ausgangsanschluss
(RecCLK-Ausgangsanschluss) beeinflusst. Der Versatz wird auffällig, wenn
die Betriebsgeschwindigkeit zunimmt. In diesem Fall muss die Veränderung
der Verzögerung
zwischen mehreren Takten an jeder Stelle beseitigt werden; eine
solche Beseitigung ist jedoch sehr schwierig und wurde noch nicht
verwirklicht.
-
Eine
weitere Veröffentlichung
JP 2002-190724A offenbart ein Phasensteuerverfahren zum Einstellen
der Taktphase unter Verwendung eines Phaseninterpolators am Mehrphasentaktgenerator.
Die Verwendung eines Phaseninterpolators ermöglicht, dass mehrere Takte
ausgegeben werden, wobei die Phase in strengen regelmäßigen Intervallen
verschoben ist. Der Schaltungsmaßstab wird jedoch groß und die
Verdrahtungsverzögerung
aufgrund des Hochgeschwindigkeitsbetriebs kann nicht ignoriert werden.
Die Verdrahtungsverzögerung könnte durch
Korrigieren der Phasen der mehreren Takte in jeder Eingangsstufe
vermieden werden; dieses Verfahren ist jedoch genauso schwierig
wie die Implementierung einer Überabtast-CDR-Schaltung, die
mit einer Überabtastfrequenz
(die viermal die Taktfrequenz der übertragenen Daten in dem in 2 gezeigten
Beispiel ist) arbeitet.
-
Für diejenigen
Vorrichtungen, die eine herkömmliche
CDR-Schaltung mit einem analogen PLL oder eine Überabtast-CDR-Schaltung verwenden, um
den Takt aus den Eingangsdaten zurückzugewinnen, um eine Signalverarbeitung
auf der Basis des zurückgewonnenen
Takts durchzuführen,
wird folglich die Entwicklungsperiode immer länger, wenn die Übertragungsrate
zunimmt, da die CDR-Konstruktion schwieriger wird.
-
WO
03/036853 A offenbart eine Übergangserfassungs-,
Validierungs- und Speicherschaltung (TDVM-Schaltung), die die Position
eines Übergangs in
einem Strom von seriell übertragenen
binären
Daten (Bits), die überabgetastet
werden, erfasst und ein Steuersignal erzeugt, das angibt, welches
abgetastete Signal die besten Daten darstellt. Der eingehende Datenstrom
wird durch die n Phasen eines Mehrphasen-Taktsignals überabgetastet.
Die Frequenz des Mehrphasen-Taktsignals ist aus Stabilitätsgründen dieselbe
oder die Hälfte
der Frequenz der eingehenden Daten. Die n überabgetasteten Signale (S)
werden in die TDVM-Schaltung
eingespeist, die aus drei Abschnitten besteht. Der erste Abschnitt
erfasst den Übergang
in den Positionen von zwei aufeinander folgenden abgetasteten Signalen
gemäß einer
speziellen Signalverarbeitung, die zweimal drei Vergleiche an sechs
aufeinander folgenden überabgetasteten Signalen
(wobei das mittlere jederzeit ausgeschlossen wird) durchführen muss.
Der zweite Abschnitt validiert die zweite Erfassung als Übergangsposition. Der
dritte Abschnitt speichert die validierte Übertragungsposition und erzeugt
ein Steuersignal, das verwendet wird, um die Daten zurückzugewinnen.
Dieses Steuersignal kann beispielsweise in einer Abtastauswahl/Datenausrichtungs-Schaltung
verwendet werden, um das überabgetastete
Signal auszuwählen,
das sich für
die anschließende
Verarbeitung am besten eignet.
-
US 6 266 799 A offenbart
ein Daten/Takt-Rückgewinnungssystem
zur Verwendung in Vernetzungs-Sendeempfängereinheiten mit hoher Geschwindigkeit.
Das Daten/Takt-Rückgewinnungssystem
umfasst eine Abtastschaltung mit vier Phasen, die dazu konfiguriert
ist, eine Dateneingangswellenform zu empfangen und Ausgangsdaten
zu erzeugen. Eine Übergangserfassungsschaltung
ist dazu beschaffen, die von der Abtastschaltung mit vier Phasen
erzeugten Ausgangsdaten zu empfangen. Die Übergangserfassungsschaltung
ist dazu konfiguriert, festzustellen, ob ein Takt der Dateneingangswellenform
voreilt oder nacheilt. Ein Zähler
zum Verschieben des Takts, wenn der Takt von der Übergangserfassungsschaltung
als der Dateneingangswellenform entweder voreilend oder nacheilend
festgestellt wird, so dass die Verschiebung dazu konfiguriert ist,
den Takt und die Dateneingangswellenform zu synchronisieren. Ein
Decodierer empfängt
Steuersignale vom Zähler,
so dass der Decodierer ein Auswahlsignal erzeugt. Das Daten/Takt-Rückgewinnungssystem
umfasst ferner einen Multiplexer zum Auswählen von vier vorbestimmten
Taktphasen in Reaktion auf das vom Decodierer erzeugte Auswahlsignal.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Es
ist eine Aufgabe der vorliegenden Erfindung, ein verbessertes Datenrückgewinnungsverfahren
zum genauen Wiederherstellen von Daten zu schaffen.
-
Die
vorstehend erwähnte
Aufgabe wird durch den Gegenstand der unabhängigen Ansprüche gelöst. Die
abhängigen
Ansprüche
richten sich auf vorteilhafte Ausführungsformen.
-
VORTEILE DER ERFINDUNG
-
Vorteilhafterweise
wird ein Datenrückgewinnungsverfahren
zum genauen Wiederherstellen von Daten unter Verwendung eines unabhängigen Takts bei
oder unter der Taktfrequenz der Eingangsdaten anstelle von Rückgewinnungstakten,
die in den Eingangsdaten enthalten sind, unter einem geringeren Einfluss
von Jitter, selbst wenn der Jitter in den Eingangsdaten enthalten
ist, geschaffen.
-
Vorteilhafterweise
wird ein Datenrückgewinnungsverfahren
geschaffen. Das Verfahren umfasst die Schritte:
- (a) Überabtasten
von Daten, die seriell synchron mit einem ersten Takt mit einer
Frequenz f1 übertragen
wurden, unter Verwendung eines Mehrphasentakts, der durch Verschieben
einer Phase eines zweiten Takts mit einer Frequenz f2 in einem vorgeschriebenen
Intervall erzeugt wird, wobei die zweite Frequenz f2 des Mehrphasentakts auf
oder unter der ersten Frequenz f1 liegt;
- (b) Extrahieren von f1/f2 Bits im Durchschnitt aus den überabgetasteten
Daten; und
- (c) Rückgewinnen
der extrahierten Bits, um die empfangenen Daten wiederherzustellen.
-
Ferner
wird vorteilhafterweise eine Datenrückgewinnungsschaltung zum Wiederherstellen
von Daten durch Überabtasten
von seriell übertragenen Daten
geschaffen. Die Datenrückgewinnungsschaltung
umfasst:
- (a) eine Abtasteinheit, die so konfiguriert
ist, dass sie Daten, die seriell synchron mit einem ersten Takt
mit der Frequenz f1 übertragen
wurden, unter Verwendung eines Mehrphasentakts, der durch Verschieben
einer Phase eines zweiten Takts mit der Frequenz f2 in einem vorgeschriebenen
Intervall erzeugt wird, überabtastet,
wobei die zweite Frequenz f2 des Mehrphasentakts auf oder unter der
ersten Frequenz f1 liegt;
- (b) eine Datenwiederherstellungseinheit, die so konfiguriert
ist, dass sie f1/f2 Bits im Durchschnitt aus den überabgetasteten
Daten extrahiert und die extrahierten Bits zurückgewinnt, um die empfangenen
Daten wiederherzustellen.
-
In
dieser Weise wird die seriell übertragene Datensequenz
unter Verwendung eines Mehrphasentakts mit der Frequenz f2 überabgetastet,
wobei die Frequenz auf oder unter der Taktfrequenz f1 liegt, die
in den seriell übertragenen
Daten enthalten ist, ohne direkt den Datenübertragungstakt f1 zu verwenden.
Eine vorgeschriebene Anzahl von Bits werden aus den überabgetasteten
Daten extrahiert, wobei die Phasenabweichung aufgrund der Frequenzdifferenz
berücksichtigt
wird. Folglich kann der Datenrückgewinnungsprozess
selbst bei einer hohen Übertragungsrate
leicht ausgeführt
werden, während eine
nachteilige Auswirkung von Jitter verhindert wird, und eine genaue
Datenrückgewinnung
wird verwirklicht.
-
Mit
dem Datenrückgewinnungsverfahren und
der Datenrückgewinnungsschaltung
wird ein separater Takt, der vom Datenübertragungstakt unabhängig ist,
verwendet, um die empfangenen Daten überabzutasten. Außerdem werden
die empfangenen Daten unter Verwendung des Taktmusters mit derselben
Periode wie jener des in den empfangenen Daten enthaltenen Übertragungstakts
zurückgewonnen,
während
die Phase des Taktmusters verschoben wird. Folglich besteht ein
geringer Einfluss der Frequenzdifferenz und/oder von Jitter auf
die zurückgewonnenen
Daten. Da die Frequenz f2 des Mehrphasentakts auf einen Bruchteil
des Takts f1 der empfangenen Daten gesetzt werden kann, kann die Schaltung
leicht auf einen Anstieg der Datenübertragungsrate eingehen.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Weitere
Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden
aus der folgenden ausführlichen
Beschreibung besser ersichtlich, wenn sie in Verbindung mit den
begleitenden Zeichnungen gelesen wird, in denen:
-
1 ein
Blockdiagramm ist, das die Struktur einer herkömmlichen Taktdaten-Rückgewinnungsschaltung (CDR-Schaltung)
darstellt;
-
2 ein
Ablaufplan ist, der ein Problem in der herkömmlichen CDR-Schaltung aufgrund
einer Abweichung der phasenverschobenen Takte zeigt;
-
3 ein
schematisches Diagramm ist, das die Struktur der physikalischen
Ebene einer seriellen Datenübertragung
darstellt, auf die die Datenrückgewinnungsschaltung
der vorliegenden Erfindung angewendet wird;
-
4 ein
Blockdiagramm einer Datenrückgewinnungsschaltung
gemäß der ersten
Ausführungsform
der Erfindung ist;
-
5 ein
Ablaufplan ist, der ein Beispiel von Wellenformen der Hauptsignale
in der Überabtasteinheit
zeigt;
-
6 ein
Blockdiagramm des Auswahlsignalgenerators ist;
-
7A ein
Ablaufdiagramm ist, das die Wellenformen der Hauptsignale im Auswahlsignalgenerator
zeigt, und 7B eine vergrößerte Ansicht
eines Teils des Ablaufplans von 7A ist;
-
8 ein
schematisches Diagramm ist, das den Phasenübergang des Taktmusters CKP
zeigt;
-
9 eine
Tabelle ist, die ein Beispiel einer Umsetzungsregel zum Umsetzen
des Zustandssignals in ein Taktmuster CKP zeigt;
-
10 ein
Blockdiagramm ist, das ein Beispiel der Datenauswahleinrichtung
darstellt;
-
11A und 11B Diagramme
sind, die die Bitsynchronisation der Datenrückgewinnungsschaltung gemäß der ersten
Ausführungsform
der Erfindung darstellen;
-
12 ein
Diagramm zum Erläutern
der Beziehung zwischen dem Phasenfehler und der Jittertoleranz ist;
-
13 ein
Blockdiagramm ist, das ein Beispiel des Entserialisierers zeigt,
der in der Datenrückgewinnungsschaltung
verwendet wird;
-
14 ein
Schaltplan ist, der die detaillierte Struktur des im Entserialisierer
verwendeten Schieberegisters darstellt;
-
15A ein Ablaufplan ist, der verschiedene Signale
darstellt, die in der Symbolsynchronisations-Steuereinheit und im
Symbolumsetzer, die in 13 gezeigt sind, verwendet werden,
und 15B eine vergrößerte Ansicht
eines Teils des Ablaufplans von 15A ist;
-
16 ein
Ablaufplan des Datenrückgewinnungsverfahrens
gemäß der ersten
Ausführungsform der
Erfindung ist;
-
17A bis 17E Beispiele
von verschiedenen Datenelementen darstellen, die aus den überabgetasteten
Daten erzeugt werden;
-
18 ein
Diagramm ist, das zum Erläutern der
Umsetzung in Symboldaten verwendet wird;
-
19 ein
Schaltplan ist, der die Struktur des Phasenregelkreises (PLL) darstellt;
-
20 ein
Blockdiagramm ist, das den PLL und mehrere physikalische Ebenen
darstellt;
-
21 ein
Blockdiagramm ist, das einen Auswahlsignalgenerator darstellt, der
in einer Datenrückgewinnungsschaltung
gemäß der zweiten
Ausführungsform
der Erfindung verwendet wird;
-
22 eine
Tabelle ist, die ein Beispiel einer Umsetzungsregel zum Umsetzen
des Zustandssignals in Auswahlsignale Se1F und Se1R darstellt;
-
23 ein
Blockdiagramm einer Datenauswahleinrichtung ist, die in einer Datenrückgewinnungsschaltung
gemäß der zweiten
Ausführungsform
der Erfindung verwendet wird;
-
24 ein
Ablaufplan von Signalen ist, die aus der Datenauswahleinrichtung
ausgegeben werden; und
-
25 ein
Graph ist, der die Jittertoleranz gemäß der zweiten Ausführungsform
der Erfindung zeigt.
-
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
-
Die
bevorzugten Ausführungsformen
der vorliegenden Erfindung werden nun nachstehend in Verbindung
mit den beigefügten
Zeichnungen erläutert.
-
(Erste Ausführungsform)
-
3 ist
ein schematisches Blockdiagramm, das eine serielle Datenübertragung
darstellt, auf die eine Datenrückgewinnungsschaltung
gemäß der ersten
Ausführungsform
der Erfindung angewendet wird.
-
Die
physikalische Ebene 100 umfasst einen Sender 101 zum
Senden von Daten und einen Empfänger 102 zum
Empfangen von Daten. Daten werden zu und von einer anderen physikalischen
Ebene 120 mit einem Paar eines Senders 122 und
Empfängers 121 über Übertragungsleitungen 106 und 107 gesendet
und empfangen. Die physikalische Ebene 100 weist einen
PLL 113 zum Erzeugen eines Takts mit der Frequenz f2 aus
einem Referenztakt RefCLK 1 auf. Die physikalische Ebene 120 weist
einen PLL 123 zum Erzeugen eines Takts mit der Frequenz
f1 aus einem Referenztakt RefCLK 2 auf. Die physikalischen Ebenen 100 und 120 arbeiten
mit Frequenzen f2 und f1, die durch die PLLs 113 bzw. 123 erzeugt werden.
Das Paar des Senders 101 und Empfängers 102 und das
Paar des Senders 121 und Empfängers 122 werden Ports
genannt. Die serielle Datenübertragung
wird zwischen den Ports punktweise durchgeführt.
-
Die Übertragungsleitungen 106 und 107 der vorliegenden
Ausführungsform
bilden eine Duplexleitung, die das Senden und Empfangen von Daten gleichzeitig über separate Übertragungsleitungen
ermöglicht;
die Erfindung ist jedoch nicht auf dieses Beispiel begrenzt und
Halbduplex (oder Teilduplex) kann verwendet werden. Anstelle der Übertragungsleitungen 106 und 107 können drahtlose Übertragungskanäle auch
verwendet werden.
-
Der
Sender 101 umfasst einen Codierer 103 zum Codieren
von Übertragungsdaten
Dtx, die von einer oberen Ebene geliefert werden, gemäß einer vorgeschriebenen
Umsetzungsregel, einen Serialisierer 104 zum Umsetzen der
codierten Daten in serielle Daten und eine Ausgabeeinheit 105 zum
Ausgeben der seriell umgesetzten Daten an die Übertragungsleitung 106.
Die Daten werden über
die Übertragungsleitung 106 unter
Verwendung von Differenzsignalen übertragen. Der Codierer 103 codiert die
Eingangsdaten durch eine 8b/10b-Codierung zum
Umsetzen von 8-Bit-Daten in 10-Bit-Daten ("Symboldaten" genannt). Durch die 8b/10b-Umsetzung
wird ein spezieller K-Zeichensatz mit 10 Bits unter Verwendung eines
Ein-Bit-Steuerbits (DtxK) im Gegensatz zu tatsächlichen Daten erzeugt. Da
die 8b/10b-Umsetzung
bekannt ist, wird auf eine detaillierte Erläuterung in dieser Ausführungsform
verzichtet.
-
Der
PLL 113 erzeugt einen Datenübertragungstakt BCLK mit einer
Frequenz, die durch das zugehörige
Protokoll definiert ist, sowie einen internen Takt PCLK, der durch
Dividieren des Übertragungstakts
BCLK durch 10 beispielsweise durch die internen Operationen auf
der Basis des extern gelieferten Referenztakts RevCLK1 erhalten
wird. Wenn beispielsweise die Datenübertragungsrate 1,5 Gbps ist,
wird der Übertragungstakt
BCLK mit 2,5 GHz erzeugt und der interne Takt PCLK wird mit 250
MHz erzeugt. Der interne Takt PCLK wird zum Codierer 103 geliefert,
während
der Übertragungstakt
BCLK und der interne Takt PCLK zum Serialisierer 104 geliefert
werden, um jede Komponente anzusteuern. Das Datensenden und -empfangen
zu und von der oberen Ebene werden auch synchron mit dem internen
Takt PCLK ausgeführt.
-
Die
Empfangseinheit 102 umfasst eine Empfangsende-Eingangseinheit
(Rx) 108 zum Binarisieren der Differenzsignale, die über die Übertragungsleitung 107 übertragen
wurden, eine Datenrückgewinnungseinheit
(DR) 109 zum wiederherstellen der binarisierten Daten,
einen Entserialisierer (DES) 110 zum Umsetzen der wiederhergestellten
Daten in parallele Symboldaten mit 10 Bits, einen elastischen Puffer
(BE) 111 zum Absorbieren der Frequenzdifferenz zwischen
dem Sendeseitentakt und dem Empfangsseitentakt und einen Decodierer
(DEC) 112 zum Umsetzen der 10-Bit-Symboldaten in 8-Bit-Daten
(10b/8b-Umsetzung).
-
Die
physikalische Gegenstückebene 120 umfasst
auch eine Sendeeinheit 122, die Daten synchron mit einem Übertragungstakt
mit der Frequenz f1, der vom PLL 123 aus dem extern gelieferten
Referenztakt RefCLK2 erzeugt wird, sendet.
-
Der
elastische Puffer 111 absorbiert die Frequenzdifferenz
durch Hinzufügen
oder Löschen
von speziellen Codes. Obwohl in dem in 3 gezeigten Beispiel
der elastische Puffer 111 vor dem Decodierer 112 angeordnet
ist, kann er nach dem Decodierer 112 angeordnet sein. Der
annehmbare Bereich einer Frequenzdifferenz ist durch den zugehörigen Schnittstellenstandard
definiert.
-
Die
Datenrückgewinnungsschaltung
der ersten Ausführungsform
wird auf die Datenrückgewinnungseinheit 109 der
Empfangseinheit 102 angewendet. In diesem Beispiel fungiert
die Datenrückgewinnungsschaltung
auch als Entserialisierer 110; die Erfindung ist jedoch
nicht auf dieses Beispiel begrenzt. Die Struktur und die Funktion
der anderen Komponenten der physikalischen Ebene 100 können willkürlich modifiziert
werden, solange sie mit der Datenrückgewinnungsschaltung der ersten
Ausführungsform
kombiniert werden.
-
In
der physikalischen Ebene 100 der ersten Ausführungsform
werden Mehrphasentakte, die zur Datenrückgewinnungseinheit 109 geliefert
werden, und interne Takte PCLK, die zum elastischen Puffer 111 geliefert
werden, durch den PLL 113 erzeugt. Diese Takte werden auch
zur Sendeeinheit 101 geliefert (zum Liefern des internen
Takts PCLK und des Übertragungstakts
BCLK zum Serialisierer 104 und zum Codierer 103).
Folglich wird der PLL 113 gemeinsam zur Takterzeugung in
der Sendeeinheit 101 und der Empfangseinheit 102 verwendet.
Dies wird durch Erzeugen von Takten aus einem separaten Referenztakt
RefCLK1, der vom Referenztakt RefCLK2 des Gegenstück-Ports
unabhängig
ist, verwirklicht, um alle Komponenten der physikalischen Ebene 100 anzusteuern.
-
4 ist
ein Blockdiagramm der Datenrückgewinnungsschaltung
gemäß der ersten
Ausführungsform
der Erfindung. Die Datenrückgewinnungsschaltung
umfasst eine Überabtasteinheit 1,
einen Mehrphasentaktgenerator 2 und eine Symboldaten-Wiederherstellungseinheit 3.
-
In
diesem Beispiel ist die in 3 gezeigte Datenrückgewinnungseinheit 109 durch
einen Teil der Überabtasteinheit 1 und
einen Teil der Symboldaten-Wiederherstellungseinheit 3 strukturiert
und der in 3 gezeigte Entserialisierer 110 ist
durch den anderen Teil der Symbolwiederherstellungseinheit 3 strukturiert.
Der in 3 gezeigte PLL 113 ist durch den Mehrphasentaktgenerator 2 strukturiert.
-
Der
Entserialisierer 110 entspricht einem Serien-Parallel-Umsetzer.
Der Serien-Parallel-Umsetzer
muss nicht notwendigerweise in der Datenrückgewinnungsschaltung enthalten
sein und er kann separat vorgesehen sein.
-
Die Überabtasteinheit 1 nimmt
empfangene Daten synchron mit den Mehrphasentakten CK0-CK11, die vom Mehrphasentaktgenerator 2 geliefert
werden, an und gibt überabgetastete
Daten OVSD aus.
-
Die
Symboldaten-Wiederherstellungseinheit 3 stellt 10-Bit-Symboldaten
SYM aus den überabgetasteten
Daten OVSD wieder her, um den Symboltakt SYMCLK zu erzeugen. Folglich
hat die Symboldaten-Wiederherstellungseinheit 3 die Datenrückgewinnungsfunktion
und eine Entserialisierungsfunktion. Die Symboldaten-Wiederherstellungseinheit 3 arbeitet
synchron mit einem der Mehrphasentakte (CK0 in dem in 4 gezeigten
Beispiel).
-
Der
Mehrphasentaktgenerator 2 erzeugt einen Takt mit einer
vorgeschriebenen Frequenz aus dem Referenztakt RefCLK und verschiebt
die Phase des erzeugten Takts in regelmäßigen Intervallen, um Mehrphasentakte
zu erzeugen. In dieser Ausführungsform
erzeugt der Mehrphasentaktgenerator 2 mehrere phasenverschobene
Takte CK0-CK11, von denen jeder eine Frequenz f2 aufweist, die die
Hälfte des Übertragungstakts
BCLK mit einer vorbestimmten Periode U1 ist. In diesem Fall ist
die Phasendifferenz unter den Mehrphasentakten ein sechstel (1/6) der
Periode U1. Mit anderen Worten, wenn die Datenübertragungsrate 2,5 Gbps ist
(wobei U1 400 ps ist), dann werden zwölf Takte mit einer Phasendifferenz
von 66,7 ps erzeugt, wobei jeder Takt eine Periode von 800 ps und
eine Taktfrequenz von 1,25 GHz aufweist.
-
Die
Frequenz f2 des Mehrphasentakts ist nicht notwendigerweise die Hälfte des Übertragungstakts
und sie kann auf ein Viertel (1/4) des Übertragungstakts gesetzt werden.
Ebenso ist die Phasendifferenz unter den Mehrphasentakten nicht
auf 1/6 von U1 begrenzt. Außerdem
kann der Mehrphasentaktgenerator 1 separat von der Datenrückgewinnungsschaltung
vorgesehen sein, obwohl er in diesem Beispiel in der Datenrückgewinnungsschaltung enthalten
ist.
-
Unter
Verwendung von Mehrphasentakten, wobei jeder Takt eine Frequenz
f2 aufweist, die niedriger ist als die Übertragungstaktfrequenz f1,
kann in der Datenrückgewinnungsschaltung
die Oszillationsfrequenz des Mehrphasentaktgenerators 2 verringert werden
und daher kann sie eine erhöhte Übertragungsrate
bearbeiten.
-
Als
nächstes
wird jede Komponente erläutert.
Die Überabtasteinheit 1 umfasst
einen Satz von zwölf
Flip-Flops (F/F0 bis F/F11) 4 und einen Serialisierer 5 zum
Ausgeben der Eingansdaten synchron mit einem der Takte (z. B. mit
dem Takt CK0). Die empfangenen Daten werden gemeinsam mit dem Eingangsanschluss
von jedem der zwölf
Flip-Flops 4 verbunden und bei der steigenden Flanke von
einem der Mehrphasentakte CK0–CK11
in das zugehörige Flip-Flop 4 aufgenommen.
Die Ausgänge
des Flip-Flop-Satzes 4 sind Q0 bis Q11.
-
Der
Serialisierer 5 besitzt beispielsweise zwei Flip-Flops
zum Zwischenspeichern der Ausgangsgruppe Q0–Q5 bzw. der Ausgangsgruppe Q6–Q11. Dann
werden die zwei Gruppen von abgetasteten Datenelementen miteinander
kombiniert und ein Satz von Ausgängen
Q0–Q11
wird als überabgetastete
Daten OVSD synchron mit einem der Mehrphasentakte (z. B. mit CK0)
ausgegeben.
-
5 ist
ein Ablaufplan, der ein Beispiel von Wellenformen der Hauptsignale
darstellt, die in der Überabtasteinheit 1 verwendet
werden. Die Wellenform (a) stellt die empfangenen Daten dar, die
Wellenform (b) stellt den Datenübertragungstakt
dar (der in der Überabtasteinheit
nicht tatsächlich
existiert, sondern für
eine bessere Erläuterung
dargestellt ist), die Wellenformen (c-0) bis (c-11) stellen die
Mehrphasentakte CK0–CK11
dar, die Wellenformen (d-0) bis (d-11) stellen die Daten Q0–Q11 dar,
die in die zugehörigen
Flip-Flops 4 mit
der Zeitsteuerung der Mehrphasentakte eingegeben und aus den Flip-Flops 4 ausgegeben
werden, ein Paar von Wellenformen (e-0) und (e-6) stellt zwei Datengruppen Q0-Q5 bzw. Q6–Q11 dar,
die in den Serialisierer 5 eingegeben werden, und die Wellenform
(f) stellt die überabgetasteten
Daten OVSD dar, die aus dem Serialisierer 5 ausgegeben
werden.
-
Die
Periode von jedem der Mehrphasentakte CK0–CK11 wird auf das Doppelte
von jener der Taktperiode U1(2·U1)
des Datenübertragungstakts (durch
(b) angegeben) gesetzt und die Phasen der Mehrphasentakte verschieben
sich in regelmäßigen Intervallen.
Die Punkte, die auf die Wellenform (a) der empfangenen Daten ausrichten,
geben die Abtastpunkte an, an denen die Daten in die Flip-Flops 4 mit den
Zeitsteuerungen der Mehrphasentakte eingegeben werden. Die Ausgangssignale
Q0–Q11
der Flip-Flops 4 ändern
sich, wie durch (d-0) bis (d-11) dargestellt.
-
Die
erste Gruppe von Daten Q0–Q5
wird beim Takt CK0 in den Serialisierer 5 eingegeben, welcher
als QQ[0:5] bezeichnet und mit (e-0) markiert ist. Die zweite Gruppe
von Daten Q6-Q11
wird beim Takt CK6 in den Serialisierer 5 eingegeben, der
als QQ[6:11] bezeichnet und mit (e-6) markiert ist. Bei den nächsten Takten
CK0 werden QQ[0:5] und QQ[6:11] kombiniert oder serialisiert und
als überabgetastete
Daten OVSD [0:11] ausgegeben, wie durch die Wellenform (f) angegeben.
In 5 bezeichnet die linke Seite der Bitsequenz das
LSB, das den früheren
zeitlichen Abtastpunkt darstellt.
-
Diese
Anordnung ist vorteilhaft, da, wenn alle Ausgangssignale Q0–Q11 auf
einmal genommen werden, die Einrichtungszeit für die letzten paar Bits (beispielsweise
für Q10
und Q11) ausläuft
und folglich die korrekten Daten nicht erfasst werden können. Um
dieses Problem zu beseitigen, werden die Daten in den Serialisierer
in zwei Schritten eingegeben, um eine stabile Datenerfassung zu
garantieren. Die Anzahl von Schritten zum Eingeben der Daten kann weiter
erhöht
werden, um eine zuverlässige
Datenerfassung zu erreichen.
-
Im
Allgemeinen schwankt die steigende Flanke oder die fallende Flanke
der empfangenen Daten zufällig
oder aufgrund verschiedener Faktoren, wie durch den schraffierten
Teil A dargestellt. Dieses Phänomen
ist als Jitter bekannt. Insbesondere schwanken die Abtastdaten mit
oder nahe der Datenübertragungszeitsteuerung,
die durch weiße Punkte
dargestellt ist, und eine genaue Datenwiederherstellung kann verhindert
werden. Dagegen kann die in der Ausführungsform verwendete Mehrschritt-Datenerfassung
den Jitter verringern und ermöglicht
eine genaue Datenwiederherstellung.
-
Die
Symboldaten-Wiederherstellungseinheit 3 umfasst eine Datenauswahleinheit 6,
einen Auswahlsignalgenerator 7, einen Entserialisierer 8 und einen
Kommadetektor 9. Die Symboldaten-Wiederherstellungseinheit 3 stellt
10-Bit-Symboldaten SYM aus den überabgetasteten
Daten OVSD durch Serien-Parallel-Umsetzung wieder her und gibt einen phasenverschobenen
Symboltakt SYMCLK aus.
-
Die überabgetasteten
Daten OVSD sind 12-Bit-Daten, die durch Abtasten von zwei Bits der Übertragungsdaten
unter Verwendung von 6-Phasen-Taktsignalen erhalten werden. Aus
den überabgetasteten
12-Bit-Daten OVSD wird jedes in einer vorgeschriebenen Phase abgetastete
Bitpaar ausgewählt
und ausgegeben.
-
Wenn
die Frequenz des Übertragungstakts, der
in den von der Sendeeinheit 122 der physikalischen Ebene 120 gesandten
Daten enthalten ist, derselbe wie oder ein Bruchteil einer natürlichen
Zahl der Frequenz des Mehrphasen-Abtasttakts (jeder von CK0–CK11) ist,
der in der Empfangseinheit 102 der physikalischen Ebene 100 verwendet
wird, kann die Abtastphase fest sein. Es besteht jedoch typischerweise
ein gewisser Bereich einer Frequenzdifferenz und daher wird die
Abtastphase geringfügig eingestellt.
Ein 2-Bit-Datenelement
(d. h. die Anzahl von zurückgewonnenen
Bits ist zwei) wird beispielsweise gewöhnlich ausgegeben und ein 1-Bit-Datenelement
und ein 3-Bit-Datenelement werden selektiv zu bestimmten Zeitpunkten
ausgegeben.
-
Wenn
1000 ppm (0,1 %) Frequenzdifferenz existieren, ist die empfangene
Datensequenz um ein Bit alle 1000 Bits der Übertragungsdaten versetzt. Daher
wird ein 1-Bit-Datenelement oder ein 3-Bit-Datenelement alle 500
Zyklen des Überabtasttakts
CK0 ausgegeben.
-
Der
Auswahlsignalgenerator 7 erzeugt ein Auswahlsignal (Sel),
das die Datenerfassungsphase (oder anzunehmende Bitposition) in
den überabgetasteten
Daten OVSD angibt, sowie Zustandssignale S0 und S1 zum Angeben der
Anzahl von zurückzugewinnenden
Bits (1, 2 oder 3). Wenn S0 "1" ist und S1 "0" ist, ist die Anzahl von auszuwählenden
Bits 1. Wenn S1 "1" ist und SO "0" ist, ist die Anzahl von Bits 3. Wenn
sowohl S0 als auch S1 "1" sind, ist die Anzahl
von Bits 2. Es ist derart konstruiert, dass die Situation, in der
sowohl S0 als auch S1 "1" werden, nicht vorkommt.
-
Die
Datenauswahleinheit 6 gibt selektiv ein 1-Bit-Datenelement,
ein 2-Bit-Datenelement oder ein 3-Bit-Datenelement (d0, d1 oder
d2) aus den überabgetasteten
Daten OVSD auf der Basis des Auswahlsignals Sel und der Zustandssignale
S0 und S1 aus. Außerdem
gibt die Datenauswahleinheit 6 Zustandssignale S0' und S1' aus, die hinter
S0 und S1 um eine vorgeschriebene Zeit verzögert sind.
-
Der
Kommadetektor 9 erfasst ein Komma (einen speziellen Code,
der "Komma" heißt), der
in die Übertragungsdaten
in einem vorgeschriebenen Intervall eingefügt wird, und gibt ein Kommaerfassungssignal
Det aus.
-
Der
Entserialisierer 8 setzt seriell eingegebene Datenelemente
d0–d2,
die von der Datenauswahleinheit 6 geliefert werden, in
parallele 10-Bit-Symboldaten SYM um (Serien-Parallel-Umsetzung). Der Entserialisierer 8 gibt
auch einen Symboltakt SYMCLK aus.
-
6 ist
ein Blockdiagramm des in 4 gezeigten Auswahlsignalgenerators 7, 7A ist
ein Ablaufdiagramm, das die Wellenformen der Hauptsignale des Auswahlsignalsgenerators 7 zeigt,
und 7B ist eine vergrößerte Ansicht eines Teils von Signalwellenformen.
Die mit (a) bis (h-2) in 7A bezeichneten
Signale entsprechen denjenigen Signalen, die mit denselben Namen
in 6 angegeben sind. In 7B sind
die mit (b) bis (g-2) bezeichneten Signale in einer vergrößerten Ansicht
dargestellt. Die in 7A und 7B dargestellte
Bitsequenz stellt das LSB bis zum MSB von links nach rechts dar.
Das LSB ist das am frühesten
empfangene Bit.
-
Die
Wellenform (a) stellt den Takt CK0 dar, der vom Mehrphasentaktgenerator 2 geliefert
wird, die Wellenform (b) stellt überabgetastete
Daten OVSD[0:11] dar, die Wellenform (c) stellt das Signal RxEdge
mit beiden Flanken der überabgetasteten Daten
OVSD dar, die Wellenform (d) stellt den Übergangszustand dar, der eingeführt wird,
wenn die Phase des Taktmusters gemäß den Übertragungsdaten verschoben
wird, die Wellenform (e) stellt ein Taktmuster CKP dar, das aus
einer Sequenz von 12 Bits besteht, die durch den Überabtasttakt
CK0 erzeugt werden, und die Wellenform (f) stellt die fallende Flanke
CKEdge [0:11] des Taktmusters CKP dar. Die Wellenformen (g-1) und
(g-2) stellen Phasenverschiebungsindikatoren (UP und DN) dar, die
die Phasenverschiebungszeitsteuerung des Taktmusters angeben, die
mit Bezug auf 8 nachstehend beschrieben werden.
Die Wellenformen (h-1) und (h-2) stellen Zeitpunkte dar, zu denen
die Anzahl der Phasenverschiebungsindikatoren (UP und DN) eine vorgeschriebene
Anzahl (N) übersteiget.
-
Bei
Rückkehr
zu 6 umfasst der Auswahlsignalgenerator 7 einen
Detektor 20 für
beide Flanken, einen Vergleicher 21, einen Zähler 22,
eine Zustandssteuereinheit 23, einen Taktmusterumsetzer (CKP-Umsetzer) 24,
einen Flankendetektor 25 und einen Auswahlsignalumsetzer 26.
Der Auswahlsignalgenerator 7 arbeitet auf der Basis des
Takts CK0 (der als Wellenform (a) in 7 dargestellt
ist), der vom Mehrphasentaktgenerator 2 geliefert wird.
-
Der
Detektor 20 für
beide Flanken erfasst die steigende Flanke und die fallende Flanke
der Bitsequenz der überabgetasteten
Daten OVSD (durch die Wellenform (b) dargestellt) und erzeugt ein
Signal für beide
Flanken RxEdge (als Wellenform (c) dargestellt) zum Angeben der
Flankenposition.
-
Das
RxEdge-Signal ist das EXOR-Ergebnis (exklusive logische Summe) der überabgetasteten Daten
OVSD [0:11] und der um eine Phase verzögerten Daten dOVSD [0:11],
die um ein Bit von OVSD verzögert
sind. Die verzögerten
Daten dOVSD [0:11] werden ausgedrückt als
dOVSD [0:11] =
{pOVSD [11], OVSD [0:10]}
wobei pOVSD [11] um einen Takt vorherige
Daten von OVSD [11] sind. Wie in 7 dargestellt,
wird beispielsweise, wenn OVSD [0:11] "011111100000" ist, dann dOVSD [0:11] "001111110000" und RxEdge [0:11]
wird "010000010000".
-
Der
Vergleicher 21 vergleicht das Signal beider Flanken RxEdge
(Wellenform (c)) und das Signal der fallenden Flanke CKEdge des
Takts CL0, um festzustellen, welche Phase voreilt. Wenn die Phase von
CKEdge vorn liegt, dann wird das DN-Signal (g-2) auf "H" gesetzt. Wenn CKEdge hinter dem Flankensignal
RxEdge liegt, dann wird das UP-Signal (G-1) auf "H" gesetzt.
Wenn die Phasen von RxEdge und CKEdge miteinander übereinstimmen,
werden die DN- und UP-Signale auf "L" gesetzt.
-
Der
Zähler 22 zählt die
ausgegebenen UP-Signale und DN-Signale. Wenn die Anzahl von UP-Signalen
oder die Anzahl von DN-Signalen einen vorgeschriebenen Wert N erreicht,
der durch das LPF-Festlegungssignal definiert ist, wird ein SUP-Signal
(h-1) oder ein SDN-Signal
(h-2) ausgegeben. Der Zähler 22 zählt das
UP-Signal oder das DN-Signal, was als Schleifenfilter eines Phasenregelkreises (PLL)
funktioniert.
-
Der
Zähler 22 ist
beispielsweise ein digitaler Vorwärts-Rückwärts-Zähler. Wenn das UP-Signal "H" ist, wird der Zählerwert um 1 inkrementiert,
und wenn das DN-Signal "H" ist, wird der Zählerwert
um 1 dekrementiert. Wenn der Zählerwert
den vorgeschriebenen positiven Wert (beispielsweise positives N) übersteigt,
wird das SUP-Signal auf "H" gesetzt und der
Zählerwert
wird auf den Anfangswert (beispielsweise Null) zurückgesetzt.
Wenn der Zählerwert
unter den vorgeschriebenen negativen Wert (beispielsweise negatives
N) gelangt, wird das SDN-Signal auf "H" gesetzt
und der Zähler
wird initialisiert.
-
Die
positiven und negativen Schwellenwerte können unter Verwendung des LPF-Einstellsignals verändert werden,
um den Mittelungsbereich zu ändern.
Durch Mitteln des Phasenverschiebungs-Vergleichsergebnisses am Zähler kann,
ob die mittlere Position des Datenübergangszeitpunkts der überabgetasteten
Daten OVSD vor oder hinter dem Takt liegt, erfasst werden, selbst
wenn der Datenübergangszeitpunkt
der überabgetasteten
Daten OVSD aufgrund von Jitter in den empfangenen Daten schwankt.
-
Die
positiven und negativen Schwellenwerte werden unter Berücksichtigung
der Antwortcharakteristik auf die Frequenzdifferenz zwischen dem
Empfangsende und dem Sendeende ausgewählt. Wenn beispielsweise die
Frequenzdifferenz 1000 ppm ist, sind sechs SUP-Signale (oder sechs
SDN-Signale) zur Ausgabe unter 500 Takten CK0 geeignet und N kann
auf einen geeigneten Wert (beispielsweise 16 oder 32), der geringer
als 83 ist, und zum Erreichen des Mittelungseffekts gesetzt werden.
-
Um
die Struktur zu vereinfachen, wenn eine Phasenvoreilung oder Phasenverzögerung für mehrere
Flanken im Vergleicher 21 erfasst wird, werden sowohl das
UP-Signal als auch das DN-Signal auf "H" gesetzt.
In diesem Fall zählt
der Zähler 22 nicht vorwärts oder
rückwärts, wenn
sowohl das UP-Signal als auch das DN-Signal "H" sind.
-
Die
Zustandssteuereinheit 23 steuert sechs Phasenzustände (st0–st5) des
Taktmusters CKP. Das Taktmuster CKP in diesem Beispiel ist ein 12-Bit-Taktmuster,
das vom Übertragungstakt
in zwölf
Phasen von Taktsignalen überabgetastet
wird, wobei jeder Takt eine Frequenz aufweist, die zum Übertragungstakt
und einem Zwölftel
der Periode äquivalent
ist.
-
8 ist
ein schematisches Diagramm, das den Phasenübergang des Taktmusters CKP
darstellt. Die Übergangsbedingung
des Taktmusters CKP besteht darin, dass sich der Phasenzustand jedes
Mal, wenn ein SUP-Signal mit "H"-Pegel aus dem Zähler 22 ausgegeben
wird, im Uhrzeigersinn einzeln unter sechs Zuständen St0–St5 verschiebt, und jedes
Mal, wenn ein SDN-Signal mit "H"-Pegel aus dem Zähler 22 ausgegeben
wird, gegen den Uhrzeigersinn verschiebt. Der Anfangszustand ist
beispielsweise St0 und die Zustandssteuereinheit 23 gibt
das Zustandssignal, das den Anfangszustand St0 angibt, zusammen
mit den Zustandssignalen S0 und S1 aus. Das Zustandssignal S0 wird "H", wenn der Phasenzustand von St4 auf
St3 übergeht,
und das Zustandssignal S1 wird "H", wenn der Phasenzustand
von St3 auf St4 übergeht.
-
Bei
Rückkehr
zu 6 setzt der CKP-Umsetzer 24 das Zustandssignal
in das Taktmuster CKP um.
-
9 ist
eine Tabelle, die ein Beispiel einer Umsetzungsregel zum Umsetzen
des Zustandssignals in das Taktmuster CKP darstellt. Das in 9 gezeigte
Taktmuster ist ein 12-Bit-Muster, das in zwölf Phasen überabgetastet ist, die durch
Unterteilen der Periode (IU1) des Übertragungstakts definiert sind,
und wenn die Phase des Taktmusters CKP um ein Bit voreilt, wenn
der Phasenzustand in den nächsten
Zustand in den Zuständen
St0–St5 übergeht.
-
Der
Auswahlsignalumsetzer 26 setzt das Zustandssignal in das
Auswahlsignal Sel um. Das Auswahlsignal Sel wird bei der steigenden
Flanke des Taktmusters CKP "1 ". Diese Umsetzungsregel
ist auch in 9 zusammen mit der Taktmuster-Umsetzungsregel
(CKP-Umsetzungsregel)
dargestellt.
-
Wenn
der Phasenzustand von St4 auf St3 oder von St3 auf St4 übergeht,
wird ein anderes Auswahlsignal, das auf der rechten Seite der Tabelle
dargestellt ist, ausgegeben. Die Zustandssignale S0 und S1 stellen
die Anzahl von auszuwählenden
oder zurückzugewinnenden
Bits, d. h. die Anzahl von Bits "1" im Auswahlsignal
oder die Anzahl von steigenden Flanken eines Takts, dar. Wenn S0 "1" ist, ist die Anzahl von Bits "1", die im Auswahlsignal Sel enthalten sind,
eins. In diesem Fall soll ein 1-Bit-Datenelement ausgegeben werden.
Wenn S1 "1" ist, ist die Anzahl von
Bits "1" im Auswahlsignal
Sel drei. In diesem Fall soll ein 3-Bit-Datenelement ausgegeben
werden. Wenn S0 und S1 "0" sind, ist die Anzahl
von Bits "1" zwei, was der gewöhnliche
Fall ist. Wie in 9 dargestellt, ist, wenn sich
der Phasenzustand von St4 auf St3 verschiebt, nur ein Bit im Auswahlsignal
Sel "1 ". Wenn sich der Phasenzustand
von St3 zu St4 verschiebt, werden drei Bits im Auswahlsignal Sel "1". Diese Muster sind von den gewöhnlichen
Auswahlsignalen, die zwei effektive Bits "1" enthalten, verschieden.
-
Der
Flankendetektor 25 erfasst eine Bitposition, in der die
Logik der Bitsequenz des Taktmusters CKP invertiert wird, wenn sich
ein Bit von "1" auf "0" ändert,
d. h. die Position der fallenden Flanke des Taktmusters CKP, und
gibt ein Signal CKEdge für eine
fallende Flanke aus. Das Signal CKEdge für eine fallende Flanke wird
durch Durchführen
einer logischen Operation (~CKP&dCKP)
am Taktmustersignal CKP und den um eine Phase verzögerten Daten dCKP
[0:11], die um ein Bit vom Taktmuster CKP bitweise verzögert sind,
ausgegeben.
-
Das
Symbol "~CKP" stellt eine NOT-Operation
dar und "&" stellt eine AND-Operation
dar. Wenn ein um einen Takt vorheriges CKP [11] als pCKP11 bezeichnet
wird, dann wird dCKP [0:11] ausgedrückt als
dCKP[0:11] = {pCKP11,
CKP[0:11]}
wie bereits vorstehend beschrieben wurde.
-
Mit
Rückkehr
zu 7 sind die überabgetasteten Daten OVSD
(Wellenform (b)) Daten, die von den Übertragungsdaten "10101010..." an der Überabtasteinheit 1 überabgetastet
wurden, und bestehen aus aufeinander folgenden Datensequenzen von "011111100000". Das als Wellenform
(d) dargestellte Zustandssignal beginnt mit St0. Auf der Basis des Zustandssignals
St0 wird das Taktmuster CKP (Wellenform (d)) von "000111000111" gemäß der in 9 gezeigten
Umsetzungsregel ausgegeben. Das Flankensignal RxEdge (Wellenform
(c)) wird "010000010000" und die fallende
Flanke DKEdge des Taktmusters CKP (Wellenform (f)) wird "100000100000".
-
In
der in der vergrößerten Ansicht
I von 7B gezeigten Periode (i) liegt
die ansteigende Position des Taktmusters CKP vor der Flankenposition
RxEdge der überabgetasteten
Daten OVSD. Folglich wird das mit (g-2) bezeichnete DN-Signal "H". Wenn der Zählerwert des Zählers 22 -N
erreicht, wird das mit (h-2) bezeichnete SDN-Signal "H" und der Übergangszustand ändert sich
zu St5, wie durch die Wellenform (d) angegeben. Folglich ändert sich
das Taktmuster CKP (Wellenform (e)) zu "100011100011" und die Phasen von RxEdge (Wellenform
(c)) und CKEdge (Wellenform (f)) kommen in Übereinstimmung, wie in der
vergrößerten Ansicht
II von 7B dargestellt. In dieser Weise
wird das Taktmuster CKP mit den überabgetasteten
Daten OVSD synchronisiert.
-
10 ist
ein schematisches Blockdiagramm der Datenauswahleinrichtung 6.
Die Datenauswahleinrichtung 6 besitzt eine erste Auswahleinrichtung 30 und
eine zweite Auswahleinrichtung 31. Die erste Auswahleinrichtung 30 stellt
Datenelemente d0 und d1 aus den überabgetasteten
Daten OVSD [0:5] auf der Basis des Auswahlsignals Sel [0:5] und der
Zustandssignale S0 und S1 wieder her. Die zweite Auswahleinrichtung 31 stellt
ein Datenelement d2 aus den überabgetasteten
Daten OVSD [6:11] auf der Basis des Auswahlsignals Sel [6:11], das
aus dem Auswahlsignalgenerator 7 ausgegeben wird, wieder
her.
-
Die
Datenelemente d0, d1 und d2 werden gemäß den folgenden Regeln umgesetzt,
wobei das Symbol "&" das logische Produkt
oder eine AND-Operation darstellt.
-
Wenn
S0 "H" ist, ignoriere d0
und d1;
Wenn S1 "H" ist, setze d0 in
OVSD[0] um und setze d1 in OVSD[5] um;
Wenn S0 und S1 "L" sind, setze d0 in das logische Produkt
OVSD[k] & Sel[k]
um, wobei k von 0 bis 5 verändert
wird, und ignoriere d1; und
Setze d2 in das logische Produkt
OVSD[k] & Sel[k] um,
wobei k von 6 bis 11 variiert, ungeachtet des S0-Pegels und S1-Pegels
("H" oder "L").
-
Wenn
S0 "H" ist, wird nur d2
zu effektiven Daten. Wenn S1 "H" ist, sind drei Datenelemente
d0, d1 und d2 effektiv. Wenn sowohl S0 als auch S1 "L" sind, werden zwei Datenelemente d0
und d1 effektiv.
-
Wenn
diese effektiven Datenelemente ausgegeben werden, werden die Zustandssignale
S0' und S1', die um die Operationsverzögerungszeit
des Selektors von S0 und S1 verzögert
sind, ausgegeben, um die effektiven Zustände der wiederhergestellten
Daten d0, d1 und d2 anzugeben.
-
Als
nächstes
wird eine Erläuterung
der Synchronisation zwischen dem Taktmuster CKP und den überabgetasteten
Daten OVSD durchgeführt,
die ausgeführt
wird, wenn die Taktfrequenz f1 der empfangenen Daten nicht mit der
Taktfrequenz f2 (die die Auswertung der Mehrphasentakte CK0–CK11 beider Flanken
ist) des Empfangsendes übereinstimmt.
-
11A und 11B sind
Diagramme zum Erläutern
der Bitsynchronisation in der Datenrückgewinnungsschaltung gemäß der Ausführungsform
der Erfindung. Das Diagramm von 11A gilt,
wenn f1 größer ist
als f2 (f1 > f2),
und das Diagramm von 11B gilt für f1 < f2.
-
In 11A und 11B bedeutet ΔΦ die Phasendifferenz
zwischen den empfangenen Daten und dem Taktmuster CKP, die einen
positiven Wert annimmt, wenn die Phase der empfangenen Daten voreilt.
Es wird angenommen, dass zur Zeit ta0 und tb0 das Taktmuster synchron
mit CK0 (Phasenzustand st0) fällt,
wobei die Phase mit jener der empfangenen Daten konsistent ist.
Die Bezeichnung "Zählstand" stellt den Zählerwert
dar.
-
(1) Fall für f1 > f2
-
Die
Phasendifferenz ΔΦ nimmt allmählich zu.
Da die Phase des Taktmusters mit den überabgetasteten diskreten Daten
(empfangenen Daten) OVSD verglichen wird, kann betrachtet werden,
dass diese Phasen miteinander übereinstimmen,
wenn ΔΦ im Bereich
von 0 bis π/3
liegt. Wenn die Phasendifferenz π/3 übersteigt,
d. h., wenn die Zeit ta1 übersteigt,
wird das Phasenvoreilungssignal (UP-Signal) "H" und
der Zählerwert
des Zählers 22 nimmt
zu. Wenn der Zählerwert
einen vorgeschriebenen Wert (z. B. +N) zur Zeit ta2 erreicht, wird
das SUP-Signal auf "H" gesetzt, um die
Phase vorzuschieben. Folglich eilt die Phase des Taktmusters CKP
um π/3 vor und
die Phasendifferenz ΔΦ nimmt um π/3 ab.
-
(2) Fall für f1 < f2
-
Die
Phasendifferenz ΔΦ nimmt allmählich ab.
Wenn die Phasendifferenz negativ ist (ΔΦ < 0), wird ein Phasenverzögerungssignal
(DN-Signal) erfasst und der Zählerwert
nimmt ab. Wenn der Zählerwert
einen vorgeschriebenen Wert (-N in diesem Fall) zur Zeit tb1 erreicht,
wird das SDN-Signal auf "H" gesetzt, um die
Phase zu verzögern.
Folglich nimmt die Phasendifferenz ΔΦ um π/3 zu.
-
Diese
Operationen werden wiederholt, um den bitsynchronisierten Zustand
zu erreichen. Es sollte beachtet werden, dass ein stationärer Phasenfehler
existiert.
-
12 ist
ein Diagramm, das verwendet wird, um die Beziehung zwischen dem
Phasenfehler und der Jittertoleranz zu erläutern. Das obere Muster gibt
ein Augenmuster mit einer Phasendifferenz ΔΦ von Null (ΔΦ=0) an, die als Fall (a) bezeichnet
ist, und das untere Muster gibt ein Augenmuster mit einer Phasendifferenz ΔΦ von π/2 an, die
als Fall (b) bezeichnet ist. In diesen Augenmustern stellen die schraffierten
Teile Jitterbereiche dar, in denen Daten nicht genau zurückgewonnen
werden können.
Der von den Jitterbereichen sandwichartig eingefügte mittlere Teil wird Öffnung genannt,
in welchem Bereich Daten genau zurückgewonnen werden können.
-
Wenn
der Phasenzustand St0 ist, liegt die fallende Flanke des Taktmusters
CKP bei der Phase 0. Zu diesem Zeitpunkt ist die Phase 3 des Auswahlsignals
Sel "1" und die überabgetasteten
Daten OVSD[3] (und OVSD[9]), die in der Phase 3 abgetastet werden,
werden wiederhergestellt. Mit dem in 12 dargestellten
Jitter befindet sich die Phase 3 in der Augenöffnung sowohl für ΔΦ=0 als auch ΔΦ=π/2 und die
Daten können
genau wiederhergestellt werden. Wenn jedoch der Jitter zunimmt,
kann eine genaue Datenrückgewinnung
nicht durchgeführt werden,
insbesondere wenn ein Phasenfehler auftritt, wie im Fall (b). In
diesem Fall wird die Anzahl von Phasen des Mehrphasentakts erhöht, um den
stationären
Phasenfehler zu verringern.
-
13 ist
ein Blockdiagramm eines Entserialisierers 8, der in der
Datenwiederherstellungseinheit 3, die in 4 gezeigt
ist, verwendet wird. Der Entserialisierer 8 umfasst ein
Schieberegister 36, in das die wiederhergestellten Datenelemente
d0, d1 und d2 eingegeben werden, einen Symbolumsetzer 37 und
eine Symbolsynchronisations-Steuereinheit 38.
Das Schieberegister 36 verschiebt und hält nacheinander die wiederhergestellten
Datenelemente d0, d1 und d2 gemäß dem Zustandssignal
S0' und S1' und gibt parallele
Daten (PData) aus.
-
14 ist
ein Schaltplan des in 13 gezeigten Schieberegisters 36.
Das Schieberegister 36 umfasst Flip-Flops (Register) 40(0)–40(11) und
Multiplexer 41(1)–41(11).
Die Flip-Flops 40(0)–40(11) sind in
Kaskade geschaltet, um ein Schieberegister zu bilden. Jeder der
Multiplexer 41(1)–41(11) wählt ein Eingangssignal
unter den drei Eingangsanschlüssen gemäß den Zustandssignalen
S0' und S1' aus und gibt das
ausgewählte
an das zugehörige
Flip-Flop aus. Auf der Basis dieser Auswahl wird das Verschiebungsausmaß umgeschaltet
und eines der Datenelemente d0, d1 und d2 wird selektiv in das Flip-Flop (Registerelement)
eingegeben. In 14 ist der Rest der Flip-Flops
(F/F 40(5) und die nachfolgenden) weggelassen.
-
Die
drei Eingänge
in jeden Multiplexer entsprechen einer 3-Bit-Verschiebung, 2-Bit-Verschiebung bzw.
1-Bit-Verschiebung von der Oberseite. Wenn S1' "H" ist, wird das obere
Eingangssignal ausgewählt
und ausgegeben. Wenn S0' "H" ist, wird das untere ausgewählt. Im
Rest der Fälle
wird das mittlere ausgewählt.
Die zwölf
Flip-Flops 40 geben die Registerausgangssignale Q0-Q11
aus, die die parallelen Daten PData [0:11] definieren, die aus dem Schieberegister 36 ausgegeben
werden. In dieser Weise wird das zurückgewonnene Datenelement mit 1,
2 oder 3 Bits in parallele Daten PData umgesetzt.
-
Der
in 13 gezeigte Kommadetektor stellt fest, ob ein
vorgeschriebenes Kommacodemuster in den parallelen Daten PData enthalten
ist, die vom Entserialisierer 8 (genauer vom Schieberegister 36 des
Entserialisierers 8) geliefert werden. Der Kommadetektor 9 liefert
das Erfassungsergebnis Det und die erfasste Position (DetPos), falls
erfasst, zum Entserialisierer 8. Die erfasste Position
wird beispielsweise durch die Bitzahl des LSB des erfassten Kommacodemusters
angegeben.
-
Der
Kommacode bei der 8b/10b-Umsetzung ist "0011111010" oder "1100000101 ", wobei das Bit des linken Endes das
erste empfangene Bit (FRB) ist. Ein anderes Codemuster, wie z. B. "0011111001" oder "1100000110", mit den Attributen,
die den Symbolbegrenzer angeben, kann erfasst werden.
-
Wenn
beispielsweise PData [11:0] "100111110101" ist, dann stimmt
PData [10:0] mit dem Kommamuster überein und daher wird das Erfassungssignal
Det auf "H" gesetzt und DetPos=1 wird
als erfasste Position DetPos ausgegeben.
-
15A ist ein Ablaufplan, der verschiedene Wellenformen
zeigt, die verwendet werden, um die Symbolsynchronisationseinheit 38 und
den Symbolumsetzer 37, die in 13 gezeigt
sind, zu erläutern,
und 15B ist eine vergrößerte Ansicht
eines Teils des Ablaufplans von 15A.
In 15A und 15B stellt
PData [11] das erste empfangene Bit (FRB) dar und PData[0] ist das
letzte empfangene Bit (LRB). Die Wellenform (a) stellt den Takt
CK0 dar, die Wellenform (b) stellt PData [11:0] dar, die Wellenform (c)
stellt das Erfassungssignal Det dar, die Wellenform (d) stellt das
Signal DetPos der erfassten Position dar, Die Wellenformen (e-1)
und (e-2) stellen jeweils die Zustandssignale S0' und S1' dar, die Wellenform (g) stellt dPData
dar, die um einen Takt von den parallelen Daten PData verzögert sind,
die Wellenform (h) stellt den Symboltakt SYMCLK dar (der zum Zwischenspeicherfreigabesignal
LE identisch ist), die Wellenform (i) stellt das Symbolpositionssignal
LEPos dar, das die effektive Symbolposition der parallelen Daten
PData angibt, und die Wellenform (j) stellt ein 10-Bit-Symbolsignal
SYM dar.
-
Wenn
ein Kommamuster COM (das der unterstrichene Teil in der Wellenform
(b) ist, die in 15B gezeigt ist) von den parallelen
Daten PData erfasst wird, gibt der Kommadetektor 9 ein
Erfassungssignal Det (Wellenform (c)) und ein Signal DetPos der
erfassten Position (Wellenform (d)) aus. Die Symbolsynchronisations-Steuereinheit 38 besitzt
einen eingebauten Zähler
und beginnt das Zählen
in Reaktion auf das Erfassungssignal Det als Auslöser unter
Verwendung des Signals DetPos der erfassten Position als Anfangswert.
Der Zähler
zählt die
Anzahl von Bits der ausgegebenen Datenelemente (die jeweils aus
1, 2 oder 3 Bits bestehen) auf der Basis der Zustandssignale S0' und S1'. Jedes Mal, wenn
der Zählerwert 10 erreicht
(alle 10 Bits, die ein Symbol definieren), gibt die Symbolsynchronisations-Steuereinheit 38 ein
Zwischenspeicherfreigabesignal LE (Wellenform (h)) aus und setzt
den Zählerwert
auf –10.
Gleichzeitig gibt die Symbolsynchronisations-Steuereinheit 38 den
Zählerwert
als Symbolpositionssignal LEPos (Wellenform (i)) aus, das die effektive
Position der parallelen Daten PData angibt. Das Zählen wird
unter Verwendung von Zustandssignalen S0" und S1" (als (e-1) und (e-2) bezeichnet) durchgeführt, die
um zwei Takte verzögert
sind. Wenn S0" "H" ist, wird der Zähler um 1 inkrementiert. Wenn
S1" "H" ist, nimmt der Zählerwert um drei zu. Im Rest
der Fälle
nimmt der Zählerwert
um zwei zu.
-
Im
Symbolumsetzer 37 wird ein 10-Bit-Symbol SYM [0:9], das
als (j) bezeichnet ist, aus dPData (als (g) bezeichnet), das um
einen Takt hinter den parallelen Daten pData liegt, gemäß dem Symbolpositionssignal
LEPos extrahiert, wenn das Zwischenspeicherfreigabesignal KE "H" wird. Wenn das Symbolpositionssignal
LEPos 0, 1 oder 2 ist, dann werden dPData [9:0], [10:1] oder [11:2]
extrahiert. Das LEPos-Signal übersteigt
2 nicht, da die Daten beim vorherigen Takt mit LEPos ≥ 3 extrahiert
werden. Dasselbe Signal wie das Zwischenspeicherfreigabesignal LE
wird als Symboltakt SYMCLK ausgegeben.
-
Folglich
wird das 10-Bit-Symbol SYM synchron mit dem Symboltakt SYMCLK zurückgewonnen.
Die Periode des Symboltakts SYMCLK entspricht im Allgemeinen fünf Takten
von CK0 und zehn Takten des Übertragungstakts.
Aufgrund der Frequenzdifferenz zwischen dem Sendeende und dem Empfangsende
entspricht jedoch der Symboltakt gelegentlich vier oder sechs Takten
von CK0. Diese Veränderung
kann durch den elastischen Puffer EB 111, der in 3 gezeigt,
ist, absorbiert werden.
-
16 ist
ein Ablaufplan des Datenrückgewinnungsverfahrens
gemäß der ersten
Ausführungsform.
Die empfangenen Daten werden unter Verwendung von k-Bit-Mehrphasen-Taktsignalen
angenommen, wobei die Phasen in regelmäßigen Intervallen verschoben
sind, und überabgetastete
Daten OVSD [0:11] werden erzeugt (Schritt S10). In diesem Beispiel
ist die Frequenz f2 des Mehrphasentakts die Hälfte der Übertragungstaktfrequenz f1
der empfangenen Daten und 12-Phasen-Takte (k-Phasen-Takte) werden
erzeugt, während
die Phase um 1 Bit verschoben wird. Die vorliegende Erfindung ist
jedoch nicht auf dieses Beispiel begrenzt.
-
17A stellt ein Beispiel der überabgetasteten Daten OVSD
dar. Die linke Spalte "i" gibt die OVSD-Zeilennummer
an und das am weitesten links liegende Bit OVSD [0] ist das erste
empfangene Bit (FRB).
-
Bei
Rückkehr
zu 16 wird die Position des Übergangsbits, an dem der logische
Wert invertiert wird (von "0" auf "1" oder von "1" auf "0"), erfasst und die Positionen der Übergangsbits
(d. h. die Flankenpositionen) werden für jede OVSD-Zeile bestimmt.
Dann wird die mittlere Position der Übergangsbits über mehrere
Zeilen bestimmt (Schritt S11).
-
17B stellt das Signal RxEdge beider Flanken dar,
das die Flanken oder die erfassten Bitpositionen angibt. Für die erste
Zeile von OVSD wird eine logische Inversion zwischen den Bitnummern
[0] und [1] und zwischen den Bitnummern [6] und [7] durchgeführt. Folglich
wird RxEdge [0:11] "010000010000". Das erste Bit [0]
von RxEdge gibt den Bitübergang
vom letzten Bit [11] der vorherigen Zeile an. Die Flankendaten RxEdge
werde über
eine vorbestimmte Anzahl von Zeilen erfasst und die mittlere Position
der Übergangsbits
wird bestimmt. Da die Position des Übergangsbits in Intervallen
von ganzzahligen Vielfachen von 12/2 (k/2) wiederholt wird, befindet
sich die mittlere Position zwischen 0 und 5. Die mittlere Position
ist 1 für
die ersten paar Zeilen, dann verschiebt sich die mittlere Position
zu 2 in der Mitte. Für
die letzten Zeilen wird die mittlere Position 3.
-
Bei
erneuter Rückkehr
zu 16 wird ein Auswahlsignal Sel auf der Basis der
mittleren Position des Bitübergangs
erzeugt (Schritt S12). Das Auswahlsignal Sel wird beispielsweise
durch Addieren eines vorgeschriebenen Werts (beispielsweise 3) zur mittleren
Position erhalten. Folglich wird die mittlere Position des Takts
der empfangenen Daten bestimmt.
-
17C stellt ein Beispiel des Auswahlsignals Sel
dar. Das Auswahlbit (oder das effektive Bit) erscheint bei den Bitnummern
[4] und [10]. Für
diese Zeilen, bei denen sich die mittlere Bitposition von 2 zu 3
oder 3 zu 2 verschiebt, wird ein spezielles Muster des Auswahlsignals "000000100000" oder "100001000001" ausgegeben, da sich
das Auswahlbit über
die Zeilen verschiebt.
-
Bei
erneuter Rückkehr
zu 16 werden die durch das Auswahlsignal Sel bezeichneten
Bits aus den überabgetasteten
Daten OVSD extrahiert und die extrahierten Bits werden zurückgewonnen
und ausgegeben (Schritt S13).
-
17D stellt ein Beispiel eines zurückgewonnenen
Datenelements RecData dar und 17E stellt
die Anzahl von zurückgewonnenen
Bits für
jede Zeile (Val) dar. Wie in 17E dargestellt
und wie vorstehend beschrieben ist, ist die Anzahl von aus den OVSD
zurückgewonnenen
Bits im Allgemeinen zwei. Wenn jedoch das Auswahlsignal Sel ein
spezielles Muster aufweist, wird die Anzahl von zurückzugewinnenden
Bits 1 oder 3.
-
Bei
erneuter Rückkehr
zu 16 werden die zurückgewonnene Daten RecData in
10-Bit-Symboldaten
umgesetzt, während
die Anzahl von Bits gezählt
wird (Schritt S14). Der Symbolbegrenzer wird durch Erfassen eines
Kommacodes COM bestimmt und das Zählen wird ab dem Kommacode
begonnen, um die Symbolumsetzung zu implementieren. Da der Kommacode
in einem vorgeschriebenen Intervall eingefügt wird, wird die Position
des Begrenzers jedes Mal, wenn der Begrenzer erfasst wird, geprüft. Wenn
ein Synchronisationsfehler auftritt, wird der Fehler korrigiert.
-
18 ist
eine Tabelle, die verwendet wird, um die Umsetzung in Symboldaten
zu erläutern.
Die erste Zeile "i" stellt die Zeilennummer
dar, die zweite Zeile RecData stellt zurückgewonnene Daten dar, die dritte
Zeile Val gibt die Anzahl von zurückgewonnenen Bits an und die
letzte Zeile Zählstand
gibt den Zählwert
(d. h. die Anzahl von Bits) ausgehend vom Kommacode an.
-
Wenn
ein Kommacode "0011111010" erfasst wird (wie
in RecData unterstrichen), wird der Zähler auf "1" initialisiert
und wird für
jedes wiedergewonnene Bit inkrementiert. Jedes Mal, wenn der Zählerwert 10 erreicht,
werden 10-Bit-Symboldaten SYM erzeugt. Dann wird der Zähler wieder
initialisiert.
-
Mit
diesem Datenrückgewinnungsverfahren wird
eine genaue Datenrückgewinnung
verwirklicht, da die empfangenen Daten aus überabgetasteten Daten zurückgewonnen
werden, die mit der Mehrphasentaktfrequenz f2, die von der Taktfrequenz
f1 der Übertragungsdaten
unabhängig
ist, abgetastet werden. Indem f2 auf die Hälfte von f1 gesetzt wird, werden
die empfangenen Daten leicht zurückgewonnen,
selbst wenn die Übertragungsrate
hoch ist.
-
19 ist
ein Blockdiagramm eines Phasenregelkreises (PLL) 113, der
in der ersten Ausführungsform
verwendet wird (siehe 3). Der PLL 113 umfasst
einen Frequenzteiler 50, einen Phasenfrequenzdetektor (PFD) 51,
ein Tiefpassfilter (LPF) 51, einen spannungsgesteuerten
Oszillator (VCO) 53, einen Frequenzteiler 55 und
einen Frequenzteiler 58. Der PLL 113 erzeugt einen Übertragungstakt BCLK,
einen internen Betriebstakt PCLK und Mehrphasentakte CK0–CK11 auf
der Basis des Referenztakts RefCLK.
-
Der
spannungsgesteuerte Oszillator VCO 53 ist ein Ringoszillator
mit drei differentiellen Puffern 54a, 54b und 54c.
Der VCO 53 erzeugt 6 phasenverschobene Takte c0–c5, von
denen einer als Übertragungstakt
BCLK ausgegeben wird.
-
Der
Teiler 50 dividiert den Übertragungstakt BCLK durch
10 und führt
ein Zehntel (1/10) des Übertragungstakts
zum Phasenfrequenzdetektor (PFD) 51 zurück. Der PFD 51 vergleicht
das Ausgangssignal aus dem Teiler 50 mit dem Referenztakt
RefCLK und steuert die eingebaute Ladungspumpe (nicht dargestellt)
auf der Basis der erfassten Phasendifferenz an.
-
Das
Tiefpassfilter (LPF) 52 glättet das Ausgangssignal der
Ladungspumpe und liefert eine Steuerspannung Vc zum VCO 53.
-
Die
Verzögerungen
der differentiellen Puffer 54a–54c des VCO 53 ändern sich
gemäß der Steuerspannung
Vc, um eine Phasensynchronisationssteuerung durchzuführen. Wenn
beispielsweise ein Referenztakt RefCLK von 250 MHz geliefert wird,
dann wird ein Übertragungstakt
BCKL von 2,5 GHz erzeugt. Der Teiler 58 dividiert den Übertragungstakt BCKL
durch 10, um den internen Betriebstakt PCLK zu erzeugen.
-
Der
Teiler 55 umfasst 6 halbe Teiler 55a–55f (beispielsweise
durch Kipp-Flip-Flops strukturiert), von denen jeder ein normales
Ausgangssignal und ein invertiertes Ausgangssignal liefert. Die
halben Teiler 56a–56f werden
durch das Ausgangssignal RSTB der Rücksetzschaltung 57 zurückgesetzt
und die Phasen der Ausgangssignale werden so geregelt, dass CK0–CK11 gebildet
werden, die in 5 als Wellenformen (c-0) bis
(c-11) dargestellt sind. Sechs Phasentakte c0–c5 werden durch 2 dividiert und
12 Phasentakte CK0-CK11
werden mit der halben Frequenz des Übertragungstakts BCKL erzeugt.
-
20 stellt
den PLL 150 dar, der gemeinsam unter mehreren physikalischen
Ebenen (z. B. der physikalischen Ebene 151 der ersten Bahn
und der physikalischen Ebene 152 der zweiten Bahn) verwendet
wird. Der in 20 gezeigte PLL 150 fungiert auch
als Mehrphasentaktgenerator und erzeugt einen Übertragungstakt BCKK, einen
internen Betriebstakt PCKL und Mehrphasentakte CK0–CK11 auf
der Basis des extern gelieferten Referenzsignals RefCLK. Diese Takte
werden vom PLL 150 gemeinsam zu den mehreren physikalischen
Ebenen (wie z. B. den physikalischen Ebenen 151 und 152)
geliefert.
-
Die
physikalische Ebene 151 der ersten Bahn umfasst eine Sendeeinheit 101-1 und
eine Empfangseinheit 102-1, auf die die Datenrückgewinnungsschaltung
der ersten Ausführungsform
angewendet wird. Der Übertragungstakt
BCLK und der interne Takt PCKL werden zu den Sendeeinheiten 101-1 und 101-2 geliefert,
während
die Mehrphasentakte CK0–CK11
zu den Empfangseinheiten 102-1 und 102-2 geliefert
werden.
-
Die
Datenrückgewinnungsschaltung
gemäß der Ausführungsform
erzeugt einen Mehrphasentakt auf der Basis eines unabhängigen Referenztakts,
um die empfangenen Daten überabzutasten,
ohne den eingebetteten Takt direkt aus den empfangenen Daten zurückzugewinnen.
Die empfangenen Daten werden unter Verwendung von separat erzeugten
Mehrphasentakten überabgetastet
und die empfangenen Daten und Symbole werden aus den überabgetasteten
Daten zurückgewonnen.
Genauer gewinnt der Auswahlsignalgenerator 7 virtuell die
Takte, die in den empfangenen Daten eingebettet sind, als Taktmuster
CKP von den überabgetasteten
Daten zurück und
erzeugt ein Auswahlsignal auf der Basis des Taktmusters CKP. Die
Datenauswahleinrichtung 6 gewinnt Daten gemäß dem Auswahlsignal
zurück. Der
andere größere Teil
der Schaltung als die Überabtasteinheit 1 arbeitet
mit einem einzelnen Takt CK0 und daher kann die Datenrückgewinnungsschaltung auf
eine erhöhte Übertragungsrate
eingehen, ohne sich über
Versätze
zwischen Mehrphasentakten oder zwischen Datensätzen Sorgen zu machen. Außerdem können in
letzter Zeit entwickelte Schaltungen oder Anordnungsentwurfs-Überprüfungswerkzeuge auf
die Schaltung leicht angewendet werden. Folglich werden die Vereinfachung
des Schaltungsentwurfs und die Wiederverwendbarkeit der Schaltung
verbessert und folglich kann die Entwicklungsperiode verringert
werden. Da die Daten in der vorstehend beschriebenen Ausführungsform
so umgesetzt werden, dass sie für
eine parallele Verarbeitung geeignet sind, kann die Betriebsfrequenz
verringert werden, was leicht auf hohe Übertragungsraten eingeht.
-
Obwohl
in der Ausführungsform
eine Überabtastung
in zwölf
Phasen mit der halben Frequenz des Übertragungstakts ausgeführt wird,
kann eine Überabtastung
in vierundzwanzig Phasen mit einer viertel Frequenz des Übertragungstakts
durchgeführt werden.
Die Betriebsfrequenz kann weiter verringert werden, um auf weiter
erhöhte
Datenübertragungsraten
einzugehen.
-
Da
die Daten unter Verwendung eines Takts zurückgewonnen werden, der nicht
mit den empfangenen Daten synchronisiert ist, können die Erzeugung von Mehrphasentakten
und die Erzeugung von Übertragungstakten
gemeinsam ausgeführt
werden und die Chipgröße kann
verringert werden.
-
(Zweite Ausführungsform)
-
Die
zweite Ausführungsform
der vorliegenden Erfindung wird nun beschrieben. In der zweiten Ausführungsform
sind der Auswahlsignalgenerator 7 und die Datenauswahleinrichtung 6,
die in der Symboldaten-Wiederherstellungseinheit 3 der
ersten Ausführungsform
verwendet werden, modifiziert und die anderen Strukturen sind dieselben.
Folglich wird eine Erläuterung
durchgeführt,
die sich auf die Auswahlsignalerzeugung und die Datenauswahl konzentriert.
-
21 ist
ein Blockdiagramm des Auswahlsignalgenerators, der in der Datenrückgewinnungsschaltung
gemäß der zweiten
Ausführungsform
der Erfindung verwendet wird. In dem in 21 gezeigten
Auswahlsignalgenerator sind die aus dem Zähler 61, der Zustandssteuereinheit 62 und
dem Auswahlsignalwandler 63 ausgegebenen Signale von den
in der ersten Ausführungsform
in 6 dargestellten verschieden. Die anderen Komponenten,
d. h. der Detektor 20 für
beide Flanken, der Vergleicher 21, der CKP-Umsetzer 24 und
der Flankendetektor 25 sind dieselben wie die in der ersten
Ausführungsform gezeigten.
Dieselben Komponenten mit denselben Funktionen wie jenen der ersten
Ausführungsform sind
mit denselben Zahlenreferenzen bezeichnet.
-
Der
in 21 gezeigte Auswahlsignalgenerator erzeugt zwei
Auswahlsignale SelR und SelF zum Angeben der Phase der Datenerfassung
von den überabgetasteten
Daten OVSD. Gleichzeitig werden die Zustandssignale S0 und S1 zum
Definieren der Anzahl von effektiven Bits auch erzeugt. Ein Signal
FRSel zum Auswählen
von einem der zwei Auswahlsignale S0 und S1 wird auch erzeugt.
-
Das
erste Auswahlsignal SelR wird bei der steigenden Flanke des Taktmustersignals
CKP genau wie das Auswahlsignal Sel der ersten Ausführungsform "1 ". Das zweite Auswahlsignal SelF
ist ein Signal, das 1 Abtastzeit früher ist als das erste Auswahlsignal
SelR (wobei die Phase um 1/6 Periode voreilt).
-
Der
Zähler 61 zählt die
UP-Signale oder die DN-Signale, die aus dem Vergleicher 21 ausgegeben werden,
und gibt ein SUP-Signal oder ein SDN-Signal auf der Basis des Zählergebnisses
aus. Der Zähler 61 gibt
auch das FRSel-Signal zum Angeben, welches der Auswahlsignale effektiv
ist, auf der Basis des Zählerwerts
aus.
-
Wenn
der aktuelle Wert des Zählers 61 positiv
ist, wird das FRSel-Signal auf "H" gesetzt, was angibt,
dass das zweite Auswahlsignal SelF das effektive ist. Wenn der Zählerwert
negativ ist, wird das FRSel-Signal auf "L" gesetzt,
was darstellt, dass das erste Auswahlsignal SelR effektiv ist. Wenn
der aktuelle Zählerwert
Null ist, wird der vorherige Signalpegel übernommen.
-
Die
Zustandssteuereinheit 62 regelt die sechs Zustände St0–St5, die
die Phasenzustände des
Taktmusters CKP darstellen, gemäß dem SUP-Signal
oder dem SDN-Signal, das vom Zähler 61 geliefert
wird, und gibt ein Zustandssignal, das den aktuellen Zustand angibt,
sowie die Zustandssignale S0, S1 und S3 aus. Die Zustandssignale
S0 und S1 stellen Phasenübergänge von
St4 auf St3 bzw. von St3 auf St4 wie in der ersten Ausführungsform
dar. Das Zustandssignal S3 gibt an, dass sich der Phasenzustand
in St3 befindet.
-
Der
Auswahlsignalumsetzer 63 setzt das Zustandssignal in die
Auswahlsignale SelF und SelR um.
-
22 stellt
ein Beispiel der Umsetzungsregel zum Umsetzen des Zustandssignals
in die Auswahlsignale SelF und SelR dar. Das Zustandssignal geht
von St0 auf St5 in Reaktion auf das SUP-Signal über und geht von St5 auf St0
in Reaktion auf das SDN-Signal über,
wie in der ersten Ausführungsform. Die
quadrierten Bits, die in den Auswahlsignalen SeF [0:11] und SelR
[0:11] gezeigt sind, sind im Allgemeinen "1" und
gehen auf "0" über, wenn sich der Phasenzustand
in der SDN-Richtung verschiebt. Folglich wird unmittelbar, nachdem
die Phase von St4 auf St3 (St4 → St3) übergegangen
ist, SelR [0:11] "000000100000". Ebenso wird unmittelbar,
bevor die Phase von St3 auf St2 übergeht
(St3 → St2),
SelF [0:11] "000001000000". Die eingekreisten
Bits sind im Allgemeinen "0" und gehen auf "1" über, wenn
sich der Phasenzustand in der SUP-Richtung verschiebt. Unmittelbar
nachdem die Phase von St3 auf St4 übergegangen ist (St3 → St4), wird
SelR [0:11] "100001000001". Ebenso ist unmittelbar,
bevor die Phase von St2 auf St3 übergeht
(St2 → St3),
SelF [0:11] "100000100001".
-
23 ist
ein Blockdiagramm der Datenauswahleinrichtung, die in der Datenrückgewinnungsschaltung
gemäß der zweiten
Ausführungsform
der Erfindung verwendet wird, und 24 ist
ein Ablaufdiagramm, das verschiedene Signale zeigt, die aus der
Datenauswahleinrichtung ausgegeben werden.
-
Die
in 23 gezeigte Datenauswahleinrichtung umfasst Auswahleinrichtungen 71–74,
ein Flip-Flop (F/F) 75 und eine Auswahleinrichtung 76.
-
Die
Auswahleinrichtung 71 gewinnt Daten d0R und D1R aus überabgetasteten
Daten OVSD [0:5] gemäß dem Auswahlsignal
SelR [0:5] und den Zustandssignalen S0 und S1, die vom Auswahlsignalgenerator
geliefert werden, zurück.
-
Die
Auswahleinrichtung 72 gewinnt Daten d0F und D1F aus überabgetasteten
Daten OVSD [0:4] und verzögerte
Daten dOVSD11, die um einen Takt von OVSD [11] durch das Flip-Flop 75 verzögert werden,
gemäß dem Auswahlsignal
SelF [0:4] und den Zustandssignalen S0, S1 und S3, die vom Auswahlsignalgenerator
geliefert werden, zurück.
-
Die
Auswahleinrichtung 73 gewinnt Daten d2R von überabgetasteten
Daten OVSD [6:11] gemäß dem Auswahlsignal
SelR [6:11] zurück.
-
Die
Auswahleinrichtung 74 gewinnt Daten d2F von überabgetasteten
Daten OVSD [5:10] gemäß dem Auswahlsignal
SelF [5:10] zurück.
-
Die
Auswahleinrichtung 76 wählt
d0R/d0F, d1R/d1F und d2R/d2F gemäß dem Auswahlsignal FRSel
aus und gibt zurückgewonnene
Datenelemente d0, d1 und d2 aus.
-
Wenn
das FRSel-Signal "H" ist, werden die durch
Symbole mit F am Ende dargestellten Datenelemente ausgewählt. Wenn
FRSel "L" ist, werden durch
Symbole mit R am Ende dargestellte Datenelemente ausgewählt.
-
Die
Datenelemente d0R, d0F, d1R, d1F, d2R und d2F werden gemäß der folgenden
Regel umgesetzt:
- • Wenn S0=H, ignoriere d0R,
d0F, d1R und d1F;
- • Wenn
S1=H, setze d0R, d0F, d1R und d1F so um, dass d0R=OVSD[0], d0F=dOVSD[11], d1R=OVSD[5]
und d1F=OVSD[4];
- • Wenn
S0=S1=L, setze d0R in das logische Produkt OVSD[k] & Se1R[k] um, wobei
k von 0 bis 5 verändert
wird, und ignoriere d1R;
- • Wenn
S3=L, setze d0F in das logische Produkt OVSD[j] & SelF[j] um, wobei j von 0 bis 4
verändert
wird;
- • Wenn
S3=H, setze d0F in dOVSD[11] um und ignoriere d1F; und
- • Ungeachtet
der S0-, S1- und S3-Pegel, setze d2R in das logische Produkt OVSD[k] & SelR[k] um, wobei
k von 6 bis 11 verändert
wird, und setze d2F in das logische Produkt OVSD[j] % SelF[j] um,
wobei j von 5 bis 10 verändert
wird.
-
In 24 stellt
die Wellenform (a) das Phasenzustandssignal dar, die Wellenformen
(b), (c) und (d) stellen die Zustandssignale S0, S1 bzw. S3 dar, und
die Wellenformen (e), (f) und (g) stellen zurückgewonnene Datenelemente d0,
d1 bzw. d2 dar.
-
In
den Wellenformen (e), (f) und (g) stellen die weißen Bereiche
die Abschnitte mit existierenden Daten dar, in denen zurückgewonnene
Datenelemente d0, d1 oder d2 existieren, während die schraffierten Bereiche
und mit Kreuzen markierten Bereiche Abschnitte ohne existierende
Daten darstellen, in denen zurückgewonnene
Datenelemente nicht existieren. In dem in 24 gezeigten
Beispiel wird, wenn S0=H, nur das Datenelement d2 zurückgewonnen.
Wenn S1=H, werden drei Datenelemente d0, d1 und d2 zurückgewonnen.
Im Rest der Fälle
werden zwei Datenelemente d0 und d2 zurückgewonnen. Dieser Effekt ist
derselbe Effekt der Datenauswahleinrichtung der ersten Ausführungsform.
-
Obwohl
in 23 nicht gezeigt, gibt die Datenauswahleinrichtung
die Signale S0' und
S1', die von den
Zustandssignalen S0 bzw. S1 um die an der Datenauswahleinrichtung
erforderliche Betriebszeit verzögert
sind, wie in der ersten Ausführungsform aus
(siehe 4). Mit S0' und
S1' werden die effektiven
Zustände
von zurückgewonnenen
Datenelementen d0, d1 und d2 angegeben und daher können der Entserialisierer 8 und
der Kommadetektor 9, die in der ersten Ausführungsform
erläutert
wurden, als solche auf die Symboldaten-Wiederherstellungseinheit 3 angewendet
werden.
-
Als
nächstes
wird eine Erläuterung
der Synchronisation zwischen dem Taktmuster CKP und den überabgetasteten
Daten OVSD, wenn die Taktfrequenz f1 der empfangenen Daten nicht
mit der Taktfrequenz f2 (die die Auswertung der Mehrphasentakte
CK0–CK11
beider Flanken ist) des Empfangendes übereinstimmt, durchgeführt.
-
Da
die Beziehung zwischen dem Zählerwert und
der Phasendifferenz ΔΦ (zwischen
den empfangenen Daten und dem Taktmuster CKP) dieselbe wie die in
der ersten Ausführungsform
erläutern
ist, wird die Jittertoleranz auf der Basis von Augenmustern hier
hervorgehoben.
-
25 ist
ein Diagramm, das verwendet wird, um die Jittertoleranz zu erläutern. In
dem Graph von 25 stellt die horizontale Achse
die Zeit "t" dar und die vertikale
Achse stellt die Phasendifferenz ΔΦ zwischen
den empfangenen Daten und dem Taktmuster CKP dar. Die schattierten
Bereiche im Graphen geben Jitterbereiche (ii) an und der weiße Bereich
zwischen den Jitterbereichen stellt eine Augenöffnung (i) dar. Das Augenmuster 81 bei ΔΦ=0 besitzt eine
Augenöffnung
von 0,41 U1.
-
Die
fallende Flanke des Taktmusters CKP ist an der Phase 0 angeordnet,
das Auswahlsignal SelF wird in der Phase 2 "1" und
das Auswahlsignal SelR wird in der Phase 3 "1".
Folglich sind die Bereiche, in denen die durch die Auswahlsignale
SelF und SelR ausgewählten
Daten korrekt zurückgewonnen
werden, diejenigen, die durch die Pfeile 82 bzw. 83 angegeben
sind.
-
Durch
Zurückgewinnen
des gemäß dem Auswahlsignal
SelF ausgewählten
Datenelements, wenn der Zählerwert
(d. h. die Phasendifferenz ΔΦ) positiv
ist, und durch Zurückgewinnen
des gemäß dem Auswahlsignal
SelR ausgewählten
Datenelements, wenn der Zählerwert
(d. h. die Phasendifferenz ΔΦ) negativ
ist, kann der annehmbare Bereich, in dem die empfangenen Daten korrekt
zurückgewonnen
werden, selbst mit Phasenfehlern erweitert werden.
-
Mit
anderen Worten, die Jittertoleranz kann verbessert werden, ohne
die Anzahl von Phasen des Mehrphasentakts zu erhöhen, um den stationären Phasenfehler
zu verringern.
-
In
dieser Weise wird im Datenrückgewinnungsverfahren
und mit der Datenrückgewinnungsvorrichtung
gemäß der zweiten
Ausführungsform
der Erfindung ein unabhängiger
Mehrphasentakt, der mit dem Übertragungstakt
der empfangenen Daten nicht synchronisiert ist, erzeugt, ohne den Übertragungstakt
direkt aus den empfangenen Daten zurückzugewinnen, und Abtastdaten
werden durch Überabtasten
der empfangenen Daten unter Verwendung des Mehrphasentakts erfasst.
Der in die empfangenen Daten eingebettete Übertragungstakt wird virtuell
als Taktmuster CKP von den überabgetasteten
Daten zurückgewonnen
und die Auswahlsignale SelF und SelR, die verwendet werden, um effektive
Bits aus den überabgetasteten
Daten zu extrahieren, werden erzeugt, während das Taktmuster CKP mit
den überabgetasteten
Daten verglichen wird. Das optimale Auswahlsignal wird auf der Basis
des Vergleichsergebnisses ausgewählt
und die empfangenen Daten werden auf der Basis des optimalen Auswahlsignals zurückgewonnen.
Mit dieser Anordnung kann der annehmbare Bereich, der für eine genaue
Datenrückgewinnung
geeignet ist, selbst mit Phasenfehlern aufgrund der Inkonsistenz
zwischen dem Taktmuster CKP und den überabgetasteten Daten mit verbesserter
Jittertoleranz erweitert werden.
-
Der
andere größte Teil
der Schaltung als die Überabtasteinheit 1 arbeitet
mit einem einzigen Takt CK0 und daher kann die Datenrückgewinnungsschaltung
auf eine erhöhte Übertragungsrate
eingehen, ohne sich um Versätze
zwischen Mehrphasentakten oder zwischen Datensätzen zu sorgen.
-
Außerdem können in
letzter Zeit entwickelte Schaltungen oder Anordnungsentwurfs-Überprüfungswerkzeuge auf die Schaltung
leicht angewendet werden. Folglich werden die Vereinfachung des Schaltungsentwurfs
und die Wiederverwendbarkeit der Schaltung verbessert und folglich
kann die Entwicklungsperiode verringert werden.
-
Indem
die Mehrphasentaktfrequenz f2 auf einen Bruchteil des Übertragungstakts
f1 der empfangenen Daten gesetzt wird, kann die Betriebsfrequenz leicht
verringert werden. Folglich kann die Schaltung auf eine erhöhte Übertragungsrate
eingehen.