-
Gebiet
-
Die
vorliegende Erfindung betrifft im allgemeinen Eingang/Ausgang-Schaltungen
(E/A-Schaltungen)
und genauer E/A-Schaltungen mit zeitlichem Abgleich.
-
Hintergrund
-
Speichervorrichtungen
werden schneller. Eingang/Ausgang-Vorrichtungen (E/A-Vorrichtungen)
in Speichervorrichtungen und E/A-Schaltungen, die zwischen Speichervorrichtungen übertragen,
sollten schnell genug sei, um die Geschwindigkeit der Speichervorrichtungen
zu unterstützen.
Skew (Schwankungen in der Phase) zwischen einzelnen Bits in einer
Schnittstelle ist ein Problem, das zu verhindern droht, daß E/A-Schaltungen
die ständig wachsenden
Geschwindigkeiten von Speichervorrichtungen unterstützen.
-
Skew
ist üblicherweise
gehandhabt worden, indem das Layout von integrierten Schaltkreisen
und Leiterplatten genau angepaßt
wurde, um den Skew zwischen allen Daten-Signalleiterbahnen, die
mit einer einzelnen Speichervorrichtung gekoppelt sind, zu verringern.
Aller übrige
Skew zwischen den Datensignalen und einem empfangenen Taktsignal
wird dann gehandhabt, indem der Takt relativ zu allen Datensignalen
als einer Gruppe zeitlich abgeglichen wird.
-
Kurze Beschreibung der Zeichnungen
-
1 und 2 zeigen
Diagramme von zwei gekoppelten integrierten Schaltkreisen;
-
3 zeigt
ein Grundriß-Diagramm
einer Speichervorrichtung;
-
4 zeigt
ein Flußdiagramm
nach verschiedenen Ausführungen
der vorliegenden Erfindung; und
-
5 zeigt
eine Diagramm eines elektronischen Systems nach verschiedenen Ausführungen der
vorliegenden Erfindung.
-
Beschreibung der Ausführungen
-
In
der folgenden detaillierten Beschreibung wird auf die beigefügten Zeichnungen
Bezug genommen, die zum Zweck der Erläuterung spezielle Ausführungen
zeigen, durch die die Erfindung angewandt werden kann. Diese Ausführungen
werden ausreichend detailliert beschrieben, um es dem Fachmann zu
erlauben, die Erfindung anzuwenden. Es versteht sich, daß die verschiedenen
Ausführungen
der Erfindung, obwohl sie unterschiedlich sind, sich nicht notwendigerweise
gegenseitig ausschließen.
Ein bestimmtes Merkmal, eine bestimmte Struktur oder Charakteristik,
das oder die hier in Zusammenhang mit einer Ausführung beschrieben wurde, kann
in anderen Ausführungen
implementiert werden, ohne vom Geist und Schutzumfang der Erfindung
abzuweichen. Es versteht sich außerdem, daß der Ort oder die Anordnung
von einzelnen Elementen in jeder der offenbarten Ausführungen
modifiziert werden kann, ohne von dem Geist und Schutzumfang der
Erfindung abzuweichen. Die folgende detaillierte Beschreibung sollte
somit nicht in einem einschränkenden
Sinn aufgefaßt
werden, und der Schutzumfang der vorliegenden Erfindung wird nur durch
die angefügten
Ansprüche
definiert, wenn sie angemessen interpretiert werden, zusammen mit
der vollen Bandbreite an Äquivalenten,
zu denen die Ansprüche
Berechtigung geben. In den Zeichnungen beziehen sich gleiche Bezugszeichen
auf gleiche oder ähnliche
Funktionalitäten
in den verschiedenen Ansichten.
-
Die 1 zeigt
ein Diagramm von zwei gekoppelten integrierten Schaltkreisen. Jede
der integrierten Schaltkreise 110 und 150 kann
ein Speichercontroller oder eine Speichervorrichtung sein. Der integrierte
Schaltkreis 110 kann beispielsweise ein Speichercontroller
in einem Computersystem sein, oder kann eine Speichervorrichtung
sein, wie etwa eine DRAM-Vorrichtung (dynamic random access memory).
Ebenso kann beispielsweise der integrierte Schaltkreis 150 ein
Speichercontroller oder eine Speichervorrichtung sein, wie etwa
ein DRAM.
-
Der
integrierte Schaltkreis 110 umfaßt E/A-Schaltungen 112 und 114,
einen Taktschaltkreis 118 und einen Takttreiber 116.
In manchen Ausführungen
kann der Taktschaltkreis 118 eine phasenverriegelte Schleife
(PLL) umfassen, um einen oder mehrere Takte zu erzeugen. In anderen
Ausführungen
kann der Taktschaltkreis 118 ein oder mehrere Taktsignale
von einer Quelle empfangen, die außerhalb des integrierten Schaltkreises 110 liegt.
Der Takttreiber 116 empfängt ein Taktsignal von dem Taktschaltkreis 118 und
treibt ein Taktsignal aus dem integrierten Schaltkreis 110 heraus.
-
Die
E/A-Schaltkreise 112 und 114 bilden einen E/A-Schaltkreis,
der Segmente umfaßt.
Beispielsweise ist der E/A-Schaltkreis 112 ein Segment und
der E/A-Schaltkreis 114 ein anderes Segment. Die E/A-Schaltkreise
können
jede Anzahl von Segmenten umfassen, ohne vom Schutzumfang der vorliegenden
Erfindung abzuweichen.
-
Die
E/A-Schaltkreise 112 und 114 empfangen Daten von
anderen Logikschaltungen (nicht gezeigt) in dem integrierten Schaltkreis 110 und
treiben diese Daten auf die Leitungen 120 und 140.
Die E/A-Schaltkreise 112 und 114 werden so gezeigt, daß sie vier
Bits an Daten treiben, obwohl dies nicht eine Einschränkung der
vorliegenden Erfindung ist. In manchen Ausführungen operiert jeder der E/A-Schaltkreise
auf mehr oder weniger als vier Bits an Daten. Der Taktpuffer 116 und
die E/A-Schaltkreise 112 und 114 werden
auch so gezeigt, daß sie
unsymmetrische Signale auf den Leitungen 130, 120 bzw. 140 treiben.
In manchen Ausführungen
treiben der Taktpuffer 116 und die E/A-Schaltkreise 112 und 114 unterschiedliche
Signale, und die Anzahl der physischen Leitungen ist doppelt so
groß wie
die, die in der 1 gezeigt ist.
-
In
manchen Ausführungen
bilden die E/A-Schaltkreise 112 und 114 Leitungsschaltungen aus
seriellen Hochgeschwindigkeits-Standleitungen. In manchen Ausführungen
können
die die E/A-Schaltkreise 112 und 114 beispielsweise
so arbeiten, daß sie
einen seriellen Hochgeschwindigkeits-Leitungsstandard, wie etwa einen PCI-Express-Standard
(peripheral component interconnect), erfüllen oder teilweise erfüllen.
-
Die
E/A-Schaltkreise 112 und 114 empfangen ein gemeinsames
Taktsignal von dem Taktschaltkreis 118 und verwenden dieses
Taktsignal, um digitale Daten zu takten, um die Leitungen 120 und 140 zu
treiben. In manchen Ausführungen
ist sowohl der E/A-Schaltkreis 112 als auch 114 entworfen,
um den Skew zwischen den verschiedenen Signalpfaden in dem E/A-Schaltkreis
zu minimieren. Der E/A-Schaltkreis 112 kann beispielsweise
entworfen sein, um den Skew zwischen den Signalen zu minimieren,
die auf den Leitungen 120 getrieben werden, und der E/A-Schaltkreis 114 kann
entworfen sein, um den Skew zwischen den Signalen auf den Leitungen 140 zu
minimieren.
-
Die
Leitungen 120, 130 und 140 können als Signalleiterbahnen
auf einer Leiterplatte, als Drähte, Kabel
oder Leiterbahnen auf einem integrierten Schaltkreis implementiert
sein. Diese Leitungen können
Skew in die verschiedenen Signale einführen. Skew kann beispielsweise
zwischen einem Taktsignal auf der Leitung 130 und Datensignalen
auf den Leitungen 120 eingeführt werden, oder Skew kann zwischen
einem Taktsignal auf der Leitung 130 und Datensignalen
auf den Leitungen 140 eingeführt werden. Des weiteren kann
Skew zwischen den Datensignalen auf den Leitungen 120 und
Datensignalen auf den Leitungen 140 eingeführt werden.
-
In
manchen Ausführungen
können
die Leitungen 120 geführt
werden, um Skew zwischen den Signalen auf den Leitungen 120 zu
minimieren, und die Leitungen 140 werden geführt, um
Skew zwischen den Signalen auf den Leitungen 140 zu minimieren.
Demnach wird der Skew zwischen den Datensignalen, die an dem integrierten
Schaltkreis 150 auf den Leitungen 120 ankommen,
vorzugsweise gering gehalten. Des weiteren wird der Skew zwischen den
Datensignalen, die an dem integrierten Schaltkreis 150 auf
den Leitungen 140 ankommen, vorzugsweise gering gehalten.
-
Der
integrierte Schaltkreis 150 umfaßt E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170,
einen Halbbyte-Zeitabgleich-Steuerschaltkreis 180 und Verzögerungsleitungs-
und Interpolationsschaltkreise 162 und 172. Der
integrierte Schaltkreis 150 kann viele andere Schaltkreise
(nicht gezeigt) umfassen, wie etwa Speicherarrays oder andere Logikschaltungen.
Darüber
hinaus kann der integrierte Schaltkreis 150 Treiberschaltungen
in jedem der E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 umfassen,
um Daten zurück
zu dem integrierten Schaltkreis 110 zu treiben. Diese Treiberschaltungen und
andere Schaltungen werden mit Absicht in der 1 ausgelassen,
um das, was gezeigt wird, nicht zu verdunkeln.
-
Im
Betrieb empfangen die E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 Daten auf
den Leitungen 120 bzw. 140. Wie oben beschrieben
können
die Daten auf den Leitungen 120 relativ zu den Daten auf
den Leitungen 140 sowie relativ zu dem Taktsignal auf der
Leitung 130 zeitlich verschoben sein. Die Kombination aus
dem Halbbyte-Zeitabgleich-Steuerschaltkreis 180 und den
Verzögerungsleitungs-
und Interpolationsschaltkreisen 162 und 172 arbeitet,
um eine geeignete Taktphase zu ermitteln, um Daten in die E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 zu
takten. Beispielsweise empfangt der Verzögerungsleitungs- und Interpolationsschaltkreis 162 ein
Taktsignal von der Leitung 130 und Steuersignale von dem
Halbbyte-Zeitabgleich-Steuerschaltkreis 180, und stellt
ein Taktsignal an den E/A-Halbbyte-Schnittstellenschaltkreis 160 zur
Verfügung.
Der Verzögerungsleitungs-
und Interpolationsschaltkreis 162 kann eine Verzögerungsleitung
mit Abgriff umfassen, die Taktsignale mit verschiedenen Phasen bereitstellt,
und kann eines der Taktsignale aus der Verzögerungsleitung mit Abgriff auswählen, um
es dem E/A-Halbbyte-Schnittstellenschaltkreis 160 zur Verfügung zu
stellen. Des weiteren kann der Verzögerungsleitungs- und Interpolationsschaltkreis 162 auch
einen oder mehrere Phaseninterpolationsschaltkreise umfassen, um
zwei oder mehrere Taktsignale aus einer Verzögerungsleitung mit Abgriff
zu kombinieren, um ein Taktsignal mit einer geeigneten Phase zu
erzeugen, um es dem E/A-Halbbyte-Schnittstellenschaltkreis 160 bereitzustellen.
Der Verzögerungsleitungs-
und Interpolationsschaltkreis 172 stellt ähnliche
Funktionalitäten
für den
E/A-Halbbyte-Schnittstellenschaltkreis 170 bereit.
-
Der
integrierte Schaltkreis 110 kann eine oder mehrere Trainingssequenzen
von Daten dem integrierten Schaltkreis 150 senden, um es
zu ermöglichen,
daß geeignete
Taktphasen ermittelt werden. Bei einem System-Hochfahr- oder Reset-Ereignis kann
beispielsweise der E/A-Schaltkreis 112 eine erste Trainingssequenz
auf den Leitungen 120 übertragen.
Während
des Empfangs der Trainingssequenz kann der Halbbyte-Zeitabgleich-Steuerschaltkreis 180 bewirken,
daß der
Verzögerungsleitungs- und
Interpolationsschaltkreis 162 die Phase des Taktsignals
durchläuft,
das dem E/A-Halbbyte-Schnittstellenschaltkreis 160 bereitgestellt
wird. Ebenso kann beispielsweise der E/A-Schaltkreis 114 eine
zweite Trainingssequenz auf den Leitungen 140 übertragen.
Während
des Empfangs der Trainingssequenz kann der Halbbyte-Zeitabgleich-Steuerschaltkreis 180 bewirken,
daß der
Verzögerungsleitungs- und
Interpolationsschaltkreis 172 die Phase des Taktsignals
durchlauft, das dem E/A-Halbbyte-Schnittstellenschaltkreis 170 bereitgestellt
wird. Die E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 stellen
dem Halbbyte-Zeitabgleich-Steuerschaltkreis 180 Feedback
zur Verfügung,
der dann eine geeignete Phase für
jede der E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 ermittelt.
-
Die
E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 werden
so gezeigt, daß sie
jeweils vier Bits an Daten empfangen, aber dies ist keine Einschränkung der
vorliegenden Erfindung. Die E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 können beide
auf mehr oder weniger als vier Bits an Daten operieren. Demnach
ist der Begriff „Halbbyte", wie er hier verwendet
wird, nicht auf vier Bits beschränkt.
Im Gegenteil wird der Begriff „Halbbyte" verwendet, um weniger
als alle Bits zu beschreiben, die von einer Vorrichtung gehandhabt
werden. Der integrierte Schaltkreis 150 kann beispielsweise
eine Acht-Bit-Speichervorrichtung sein, und jeder der E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 kann
auf vier Bits operieren. Ebenso kann der integrierte Schaltkreis 150 beispielsweise
eine 16-Bit-Speichervorrichtung sein, und jeder der E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 kann
auf acht Bits operieren. Darüber
hinaus kann der integrierte Schaltkreis 150 mehr als vier E/A-Halbbyte-Schnittstellenschaltkreise
umfassen, ohne vom Schutzumfang der vorliegenden Erfindung abzuweichen.
-
Die
E/A-Halbbyte-Schnittstellenschaltkreise 160 und 170 können über ein
Integrierter-Schaltkreis-Die
verteilt sein. Der E/A-Halbbyte-Schnittstellenschaltkreis 160 kann
an einem Ende eines Integrierter-Schaltkreis-Die liegen, und der
E/A-Halbbyte-Schnittstellenschaltkreis 170 kann an einem
anderen Ende des selben Integrierter-Schaltkreis-Die liegen. Das
Verteilen der E/A-Halbbyte- Schnittstellenschaltkreise über einen
Integrierter-Schaltkreis-Die kann es ermöglichen, daß die E/A-Schaltungen eng mit anderen Schaltungen
in dem integrierten Schaltkreis (z. B. Speicherarrays) gekoppelt sind,
und können
auch Leitungsführungsressourcen in
dem integrierten Schaltkreis einsparen. In manchen Ausführungen
kann der Halbbyte-Zeitabgleich-Steuerschaltkreis 180 zentral
angeordnet sein, wie es in der 1 gezeigt
ist, oder kann zusammen mit den E/A-Halbbyte-Schnittstellenschaltkreisen verteilt
sein.
-
Wie
in der 1 gezeigt ist, wird der zeitliche Abgleich auf
einer per Halbbyte Basis ausgeführt, oder
ein „Halbbyte-Zeitabgleich" wird ausgeführt. In Ausführungen,
die durch die 1 dargestellt werden, werden
Leitungslängen
in einem Halbbyte (sowohl auf wie entfernt von den integrierten
Schaltkreisen) genau abgeglichen, um Skew in einem Halbbyte zu minimieren.
Um Chip-Chip-Leitungsführungsbeschränkungen
zu erleichtern und daneben etwas Halbbyte-Halbbyte-Skew auf dem Chip
zu berücksichtigen,
wird ein beliebiger Skew aus Halbbyte-Halbbyte toleriert. Zeitlicher
Halbbyte-Abgleich wird ausgeführt,
um jeden Zeitsteuerungsfehler zu korrigieren, der durch Halbbyte-Halbbyte-Skew
erzeugt wird. Zeitlicher Halbbyte-Abgleich ermöglicht eine höhere Leistung,
während
er die Leistungszunahme, die durch zusätzliche Zeitabgleichsschaltungen
hervorgerufen wird, zu begrenzen. Es ist ein Kompromiß zwischen
Zeitabgleich auf Bitebene und Zeitabgleich auf dem gesamten Chip.
-
Die 2 zeigt
zwei gekoppelte integrierte Schaltkreise. Die integrierten Schaltkreise 210 und 250 können wie
die integrierten Schaltkreise 110 und 150 (1)
Speichercontroller oder Speichervorrichtungen sein. Die Schnittstelle
zwischen zwei integrierten Schaltkreisen, die in der 2 gezeigt
wird, kann eine Schnittstelle zwischen einem Speichercontroller
und einer Speichervorrichtung, eine Schnittstelle zwischen zwei
Speichercontrollern oder eine Schnittstelle zwischen zwei Speichervorrichtungen darstellen.
-
Der
integrierte Schaltkreis 210 umfaßt Halbbyte-Schnittstellenschaltkreise 212 und 214,
Verzögerungsleitungs-
und Interpolationsschaltkreise 220 und 240 und
eine Halbbyte-Zeitabgleich-Steuerung 242.
In Ausführungen,
die durch die 2 dargestellt werden, wird der
Halbbyte-Zeitabgleich
ausgeführt, indem
eine Taktphase für
ein Taktsignal ermittelt wird, das verwendet wird, um Daten zu übertragen
anstatt Daten zu empfangen. Der Verzögerungsleitungs- und Interpolationsschaltkreis 220 wird
beispielsweise verwendet, um eine Phase eines Taktsignals zu ermitteln,
das Daten aus dem E/A-Halbbyte-Schnittstellenschaltkreis 212 taktet,
und der Verzögerungsleitungs-
und Interpolationsschaltkreis 240 wird verwendet, um eine
Phase eines Taktsignals zu ermitteln, das Daten aus dem E/A-Halbbyte-Schnittstellenschaltkreis 214 taktet.
Die E/A-Halbbyte-Schnittstellenschaltkreise 212 und 214 umfassen
Sender, um Daten in die Leitungen 120 und 140 zu übertragen.
-
Der
integrierte Schaltkreis 250 umfaßt E/A-Halbbyte-Schnittstellenschaltkreise 260 und 270.
Jeder der E/A-Halbbyte-Schnittstellenschaltkreise 260 und 270 empfängt Daten
und eine Taktsignal. Da die Daten Halbbyte-zeitabgeglichen werden,
bevor sie durch den integrierten Schaltkreis 210 übertragen
werden, ist ein weiterer Halbbyte-Zeitabgleich am integrierten Schaltkreis 250 nicht
notwendig.
-
In
manchen Ausführungen
wird eine oder mehrere Trainingssequenzen durch den integrierten Schaltkreis 210 übertragen,
und der integrierte Schaltkreis 250 mißt den Skew auf Halbbyte-Basis. Der
integrierte Schaltkreis 250 kann Skew-Information zurück zu dem
integrierten Schaltkreis 210 übertragen, damit der Halbbyte-Zeitabgleich-Steuerschaltkreis 242 die
Phase des Taktsignals einstellen kann, die verwendet wird, um Daten
aus den E/A-Halbbyte-Schnittstellenschaltkreisen 212 und 214 zu
takten.
-
Die 3 zeigt
ein Grundriß-Diagramm
einer Speichervorrichtung. Der Grundriß 300 zeigt vier Speicherarrays 310, 320, 330 und 340;
vier E/A-Halbbyte-Schnittstellenschaltkreisen 312 und 322, 332 und 342;
und vier Halbbyte-Zeitabgleich-Steuerschaltkreise 314, 324, 334 und 344.
Jeder der Speicherarrays ist mit einem der E/A-Halbbyte-Schnittstellenschaltkreise
gekoppelt, der wiederum mit einem Halbbyte-Zeitabgleich-Steuerschaltkreis
gekoppelt ist. Der Speicherarray 310 und der Halbbyte-Zeitabgleich-Steuerschaltkreis 314 sind beispielsweise
mit dem E/A-Halbbyte-Schnittstellenschaltkreis 312 gekoppelt;
der Speicherarray 320 und der Halbbyte-Zeitabgleich-Steuerschaltkreis 324 sind
mit dem E/A-Halbbyte-Schnittstellenschaltkreis 322 gekoppelt;
der Speicherarray 330 und der Halbbyte-Zeitabgleich-Steuerschaltkreis 334 sind
mit dem E/A-Halbbyte-Schnittstellenschaltkreis 332 gekoppelt;
und der Speicherarray 340 und der Halbbyte-Zeitabgleich-Steuerschaltkreis 344 sind
mit dem E/A-Halbbyte-Schnittstellenschaltkreis 342 gekoppelt.
-
Wie
in der 3 gezeigt ist, können die E/A-Halbbyte-Schnittstellenschaltkreise
um einen Integrierter-Schaltkreis-Die verteilt sein. Jeder der E/A-Halbbyte-Schnittstellenschaltkreise
bildet ein Segment eines größeren E/A-Schaltkreises,
bei dem Zeitabgleich auf einer Segment-für-Segment-Basis ausgeführt wird. Die Speichervorrichtung,
die durch den Grundriß 300 dargestellt
ist, führt
beispielsweise Halbbyte-Zeitabgleich aus.
-
Durch
das Verteilen der E/A-Halbbyte-Schnittstellenschaltkreise um einen
Integrierter-Schaltkreis-Die
und durch die Durchführung
von Halbbyte-Zeitabgleich können
Designbeschränkungen
gelockert werden, während
die angestrebte Speicher-E/A-Leistung immer noch beibehalten wird. In
Ausführungen,
die durch die 3 dargestellt werden, kann ein
Designer beispielsweise eingeschränkt sein, um Skew in einem
Halbbyte niedrig zu halten, ist aber frei, ein gewisses Maß an Skew
zwischen den Halbbytes zu erlauben.
-
Die 4 zeigt
ein Flußdiagramm
nach verschiedenen Ausführungen
der vorliegenden Erfindung. In manchen Ausführungen kann das Verfahren 400 verwendet
werden, um Halbbyte-Zeitabgleich auszuführen. In manchen Ausführungen
wird das Verfahren 400, oder Teile davon, durch einen Halbbyte-Zeitabgleich-Steuerschaltkreis
ausgeführt,
Ausführung
desselben in den verschiedenen Figuren gezeigt sind. In anderen
Ausführungen
wird das Verfahren 400 durch einen Speichercontroller oder
einen Chipsatz ausgeführt.
Das Verfahren 400 ist nicht durch die besondere Art von
Vorrichtung begrenzt, die das Verfahren ausführt. Die verschiedenen Aktionen
in dem Verfahren 400 können
in der angegebenen Reihenfolge ausgeführt werden, oder sie können in
einer anderen Reihenfolge ausgeführt
werden. Des weiteren werden in manchen Ausführungen manche der Aktionen,
die in der 4 aufgelistet sind, in dem Verfahren 400 ausgelassen.
-
Das
Verfahren 400 beginnt bei 410, wo eine erste Trainingssequenz
an einer ersten Halbbyte-Schnittstelle
in einer Speichervorrichtung empfangen wird. In manchen Ausführungen
entspricht dies einem Speichercontroller, der eine Trainingssequenz
an eine Speichervorrichtung während
eines Hochfahr- oder Reset-Ereignisses überträgt. Die Trainingssequenz kann
eine Sequenz von digitalen Daten umfassen, die sowohl dem Speichercontroller wie
der Speichervorrichtung bekannt ist. Die Trainingssequenz kann beispielsweise
eine Sequenz von abwechselnden Einsen und Nullen umfassen.
-
Bei 420 wird
eine zweite Trainingssequenz an einer zweiten Halbbyte-Schnittstelle
in der Speichervorrichtung empfangen. Die Handlungen von 410 und 420 können dem
Empfangen einer Trainingssequenz von dem integrierten Schaltkreis 150 (1)
bei den E/A-Halbbyte-Schnittstellenschaltkreisen 160 und 170 entsprechen.
-
Bei 430 wird
ein Taktsignal empfangen. In manchen Ausführungen wird der Takt von der
selben Quelle empfangen, wie die Trainingssequenzen, die bei 410 und 420 empfangen
wurden. Ein Speichercontroller mit einer quellensynchronen Schnittstelle kann
beispielsweise sowohl die Trainingssequenzen als auch das Taktsignal übertragen.
-
Bei 440 wird
eine erste Taktphase ermittelt, um Daten an der ersten Halbbyte-Schnittstelle
zu takten, und bei 450 wird eine zweite Taktphase ermittelt, um
Daten an der zweiten Halbbyte-Schnittstelle
zu takten. Sowohl die erste Taktphase als auch die zweite Taktphase
können
durch eine oder mehrere Halbbyte-Zeitabgleich-Steuerschaltkreise,
wie etwa die, die in den vorhergehenden Figuren gezeigt sind, ermittelt
werden.
-
Bei
der Beendigung der Handlungen, die in dem Verfahren 400 gezeigt
sind, wurde Halbbyte-Zeitabgleich
für zwei
E/A-Halbbyte-Schnittstellenschaltkreise ausgeführt. In manchen Ausführungen
wird Halbbyte-Zeitabgleich für
mehr als zwei E/A-Halbbyte-Schnittstellenschaltkreise
ausgeführt. Des
weiteren können,
nachdem der Halbbyte-Zeitabgleich ausgeführt wurde, Daten in einer Halbbyte-Schnittstelle
mittels eines Taktsignals mit der Taktphase, die bei 440 oder 450 ermittelt
wurde, getaktet werden.
-
Die 5 zeigt
ein System-Diagramm in Übereinstimmung
mit verschiedenen Ausführungen der
vorliegenden Erfindung. Die 5 zeigt
eine System 500, das einen Chipsatz 510, einen
Hochfrequenz-Schaltkreis (HF-Schaltkreis) 560, Antennen 570,
eine Speichervorrichtung 550 und einen Leiter 502 umfaßt. Der
Chipsatz 510 umfaßt
einen Prozessor 520, einen Eingang/Ausgang-Controller (E/A-Controller) 530 und
einen Speichercontroller 540. Im Betrieb sendet und empfangt
das System 500 Signale mittels der Antenne 570,
und diese Signale werden durch die verschiedenen in der 5 gezeigten
Elemente verarbeitet. Die Antenne 570 kann eine Richtantenne
oder eine Rundstrahlantenne sein. Der Begriff Rundstrahlantenne,
wie er hier verwendet wird, bezeichnet eine Antenne mit einem im
wesentlichen gleichförmigen
Muster in zumindest einer Ebene. In manchen Ausführungen kann die Antenne 570 beispielsweise
eine Rundstrahlantenne, wie etwa eine Dipolantenne oder eine Viertelwellenantenne
sein. In manchen Ausführungen
kann die Antenne 570 auch beispielsweise eine Richtantenne, wie
etwa eine Parabolantenne, eine Patch-Antenne oder eine Yagi-Antenne sein.
In manchen Ausführungen
kann die Antenne 570 mehrere physische Antennen umfassen.
-
Der
Hochfrequenz-Schaltkreis 560 kommuniziert mit den Antennen 570 und
dem E/A-Controller 530. In manchen Ausführungen kann der HF-Schaltkreis 560 eine
physikalischen Schnittstelle (PHY) umfassen, die zu einem Kommunikationsprotokoll gehört. Der
HF-Schaltkreis 560 kann beispielsweise Modulatoren, Demodulatoren,
Mixer, Frequenzsynthesizer, rauscharme Verstärker, Leistungsverstärker und ähnliches
umfassen. In manchen Ausführungen kann
der HF-Schaltkreis 560 einen Heterodyn-Empfänger umfassen,
und in anderen Ausführungen
kann der HF-Schaltkreis 560 einen Empfänger mit direkter Umwandlung
umfassen. In manchen Ausführungen kann
der HF-Schaltkreis 560 mehrere
Empfänger umfassen.
In Ausführungen
mit mehreren Antennen 570 kann beispielsweise jede der
Antennen mit einem zugehörigen
Empfänger
gekoppelt sein. Im Betrieb empfängt
der HF-Schaltkreis 560 Kommunikationssignale von der Antenne 570 und
stellt analoge oder digitale Signale an den E/A-Controller 530 bereit.
Des weiteren kann der E/A-Controller 530 Signale an den
HF-Schaltkreis 560 bereitstellen, der die Signale verarbeitet
und sie dann zur Antenne 570 überträgt.
-
Der
Speichercontroller 540 sieht eine Schnittstelle zwischen
dem Chipsatz 510 und den Speichervorrichtungen vor, wie
etwa der Speichervorrichtung 550. Der Speichercontroller 540 umfaßt einen
E/A-Schaltkreis 542, um mit der Speichervorrichtung 550 zu
kommunizieren. Der gezeigte E/A-Schaltkreis 542 wird beispielsweise
so gezeigt, daß er
mit der Speichervorrichtung über
die Leitung 502 gekoppelt ist. Die Leitung 502 repräsentiert
mehrere Leitungen, die eine Mehrzahl von Halbbytes unterstützen. Die
Leitung 502 kann beispielsweise die Leitungen 120, 130 und 140 (1, 2)
umfassen. Der E/A-Schaltkreis 542 kann eine Mehrzahl von Segmenten
umfassen. Der E/A-Schaltkreis 542 kann beispielsweise eine
Mehrzahl von E/A-Halbbyte-Schnittstellenschaltkreisen
umfassen, die mit Bezug auf die vorhergehenden Figuren beschrieben wurden.
Der E/A-Schaltkreis 542 kann auch einen oder mehrere Halbbyte-Zeitabgleich-Steuerschaltkreise
umfassen. Der E/A-Schaltkreis 542 kann jede der Halbbyte-Zeitabgleich-Ausführungen,
die hier beschrieben wurden, umfassen.
-
Die
Speichervorrichtung 550 kann jede der Halbbyte-Zeitabgleich-Ausführungen
umfassen, die hier beschrieben wurden. Die Speichervorrichtung 550 kann
beispielsweise mehrere Segmente eines E/A-Schaltkreises umfassen,
bei dem jedes der Segmente einen Halbbyte-Zeitabgleich-Schaltkreis
umfaßt.
Des weiteren kann die Speichervorrichtung 550 mehrere Speichervorrichtungen
umfassen, wobei jede der Speichervorrichtungen mehrere E/A-Halbbyte-Schnittstellenschaltkreise
und einen oder mehrere Halbbyte-Zeitabgleich-Steuerschaltkreise
umfaßt.
-
Der
Chipsatz 510 kann jede Anzahl von integrierten Schaltkreisen,
oder „Chips", umfassen und kann
jeden Integrationsgrad aufweisen. In manchen Ausführungen
umfaßt
der Chipsatz 510 beispielsweise den Prozessor 520 und
den Speichercontroller 540 in getrennten Packages. In manchen
Ausführungen
kann der Chipsatz beispielsweise auch den Prozessor 520 und
den Speichercontroller 540 auf dem selben Integrierter-Schaltkreis-Die
oder auf einem getrennten Integrierter-Schaltkreis-Die, der gemeinsam
gepackt ist, umfassen.
-
Beispielssysteme,
die durch die 5 dargestellt werden, umfassen
Mobiltelefone, Personal Digital Assistants, WLAN-Schnittstellen
(drahtloses lokales Netzwerk) oder jedes andere geeignete System.
Viele andere Verwendungen in Systemen für Halbbyte-Zeitabgleich existieren.
Der Chipsatz 510 kann beispielsweise in einem Desktop-Computer,
einer Netzwerk-Brücke
oder einem Netzwerk-Router oder anderen Systemen ohne eine Antenne
verwendet werden.
-
Obwohl
die vorliegende Erfindung im Zusammenhang mit bestimmten Ausführungen
beschrieben wurde, versteht es sich, daß Modifikationen und Variationen
verwendet werden können,
ohne vom Geist und Schutzumfang der Erfindung abzuweichen, wie der
Fachmann leicht einsehen wird. Solche Modifikationen und Variationen
werden als innerhalb des Schutzumfangs der Erfindung und der angefügten Ansprüche angesehen.
-
Zusammenfassung
-
Zeitabgleich
wird auf einer Per-Halbbyte-Basis ausgeführt, wobei ein Halbbyte nicht
auf vier Bits beschränkt
ist.