-
GEBIET DER ERFINDUNG
-
Ausführungsformen der Erfindung betreffen allgemein das Gebiet der Prozessoren. Insbesondere betreffen Ausführungsformen der Erfindung ein Verfahren, eine Vorrichtung und ein System zum Kompensieren von Inter-Symbol-Interferenz (ISI) in Signalen.
-
HINTERGRUND
-
Mit zunehmender Geschwindigkeit von Eingangs-Ausgangs(E/A)-Sender/Empfängern verringert sich der Noise-Margin für Signale, die über eine Übertragungsleitung durch einen E/A-Sender gesendet und durch einen entsprechenden E/A-Empfänger empfangen werden. Der Terminus „Noise-Margin” meint im Sinne des vorliegenden Textes einen Betrag, der einer oder mehreren Signalintegritätseigenschaften (z. B. Jittertoleranz, Höhe und Breite des Signalauges, Overshoot, Undershoot usw.) eines Signals entspricht, die einen Mindestpegel für den einwandfreien Empfang des Signals in einem E/A-Empfänger übersteigen. Ein höherer Noise-Margin für ein zu empfangendes Signal meint, dass es für den E/A-Empfänger einfacher ist, den Signalinhalt zu identifizieren, als im Vergleich zu einem Signal, die einen niedrigen Noise-Margin aufweist. Der Noise-Margin für ein Signal verschlechtert sich außerdem aufgrund von Übertragungsleitungsverlusten und/oder Inter-Symbol-Interferenz (ISI) in dem Signal.
-
ISI ist eine Form von Rauschen in einem Signal, das durch die aufeinanderfolgende Übertragung von Datenabtastungen in einer Übertragungsleitung verursacht wird. Eine solche aufeinanderfolgende Übertragung von Datenabtastungen kollidiert mit zuvor gesendeten Datenabtastungen auf derselben Übertragungsleitung. Eine solche Interferenz ist konstruktive und/oder destruktive Interferenz in dem gesendeten Datensignal und kann zu einem unklaren Signal am E/A-Empfänger-Ende führen. Ein unklares Signal am Empfänger-Ende, das durch ISI verursacht wird, hat eine kleine Höhe und Breite des Signalauges, so dass es für den E/A-Empfänger schwierig wird, das empfangene Signal zu lesen. Der Terminus „lesen” meint im Sinne des vorliegenden Textes die Abtastung des Datensignals durch ein Taktsignal zum Identifizieren des logischen Wertes des empfangenen Signals (d. h. des Datensignals).
-
ISI reduziert außerdem die Jittertoleranz des E/A-Systems, weil ISI das Timing-Budget (auch als Schutzband bezeichnet) der in dem E/A-System gesendeten und empfangenen Signale beschneidet. Ein Verfahren zum Verringern der Effekte von ISI (d. h. zum Kompensieren von ISI) ist das Implementieren von Entzerrern in den E/A-Empfängern für die empfangenen Datensignale. Ein Beispiel eines Empfängerentzerrers ist ein Decision Feedback Equalizer (DFE). Jedoch kompensiert das Anwenden von DFE auf Datenabtastungen eines Datensignals kein ISI an Randabtastungen des Datensignals. Ein weiteres Beispiel eines Entzerrers ist ein Linear-Entzerrer, wie zum Beispiel ein Continuous Time Liner Equalizer (CTLE). Jedoch ist ein CTLE unwirksam zum Kompensieren von ISI an Rand- und Datenabtastungen des Datensignals, weil CTLE empfindlich auf Schwankungen bei der Prozesstechnologie, der Temperatur und den Versorgungsspannungsstufen reagieren.
-
Der Terminus „Datenabtastungen” meint im Sinne des vorliegenden Textes Datenpunkte in dem Datensignal, die durch ein Datentaktsignal abgetastet werden und durch den DFE dafür verwendet werden, ISI an jenen Datenpunkten des Datensignals auszulöschen. Der Terminus entspricht außerdem den logisch niedrigen und hohen Werten des abgetasteten Datensignals. Der Terminus „Randabtastungen” meint im Sinne des vorliegenden Textes Datenpunkte des Datensignals, die durch einen Randtakt abgetastet werden. In einigen Fällen befindet sich der Randtakt an einem Kreuzungspunkt (Überschneidung) eines ansteigenden und abfallenden Datensignals. Solche Datenpunkte befinden sich idealerweise auf halbem Weg der logisch hohen und logisch niedrigen Pegel des Datensignals.
-
Die Randabtastungen bilden einen Bezugspunkt für einen Taktgeberschaltkreis, der ein Taktsignal generiert und das Taktsignal relativ zu dem empfangenen Datensignal so positioniert, dass der Empfänger das empfangene Datensignal korrekt abtasten kann. Jedoch löscht oder kompensiert das Anwenden von DFE auf die Datenabtastungen des Datensignals kein ISI an den Randabtastungen des Datensignals, die letztendlich zum Positionieren eines Abtasttaktes relativ zu dem empfangenen Datensignal verwendet werden.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Ausführungsformen der Erfindung werden anhand der folgenden detaillierten Beschreibung und anhand der beiliegenden Zeichnungen verschiedener Ausführungsformen der Erfindung besser verstanden. Diese dürfen jedoch nicht so verstanden werden, als beschränkten sie die Erfindung auf die konkreten Ausführungsformen. Vielmehr dienen sie lediglich der Erläuterung und dem Verständnis.
-
1 veranschaulicht eine Architektur auf Systemebene mit einer Logikeinheit, die einen Decision Feedback Equalizer (DFE) zum Auslöschen von Inter-Symbol-Interferenz (ISI) in Rand- und Datenabtastungen eines Signals gemäß einer Ausführungsform der Erfindung umfasst.
-
2A veranschaulicht die Logikeinheit zum Auslöschen von ISI in Rand- und Datenabtastungen eines Signals gemäß einer Ausführungsform der Erfindung.
-
2B veranschaulicht eine Eingangswellenform in die Logikeinheit von 2A und eine Ausgangswellenform aus der Logikeinheit gemäß einer Ausführungsform der Erfindung.
-
2C veranschaulicht ein Paar Augendiagramme rekonstruierter Datensignale an einem Eingang eines Datenabtasters, wobei ein Vergleich einer zum Stand der Technik gehörenden Anwendung von DFE nur auf Datenabtastungen eines Datensignals mit einer Anwendung von DFE sowohl auf die Rand- als auch auf die Datenabtastungen des Datensignals gemäß einer Ausführungsform der Erfindung gezeigt ist.
-
3A veranschaulicht Logikeinheiten zum Anwenden von DFE auf Rand- und Datenabtastungen eines Datensignals gemäß einer Ausführungsform der Erfindung.
-
3B veranschaulicht Logikeinheiten zum Anwenden von DFE auf Randabtastungen eines Signals über DFE-Koeffizienten von Datenabtastungen des Datensignals gemäß einer Ausführungsform der Erfindung.
-
4 veranschaulicht eine Look-ahead-Logikeinheit zum Beseitigen von Timing-Verletzungen in den Datenabtastungen des Signals gemäß einer Ausführungsform der Erfindung.
-
5A veranschaulicht ein allgemeines Flussdiagramm zum Auslöschen von ISI in Rand- und Datenabtastungen eines Signals gemäß einer Ausführungsform der Erfindung.
-
5B veranschaulicht ein detailliertes Flussdiagramm zum Auslöschen von ISI in Rand- und Datenabtastungen eines Signals gemäß einer Ausführungsform der Erfindung.
-
5C veranschaulicht ein Flussdiagramm für das Erzeugen von DFE-Koeffizienten für Randabtastungen eines Signals gemäß einer Ausführungsform der Erfindung.
-
6 veranschaulicht ein System mit einem computerlesbaren Speichermedium mit durch einen Computer ausführbaren Anweisungen zum Ausführen eines Verfahrens zum Auslöschen von ISI in Rand- und Datenabtastungen eines Signals gemäß einer Ausführungsform der Erfindung.
-
DETAILLIERTE BESCHREIBUNG
-
Ausführungsformen der Erfindung betreffen ein Verfahren, eine Vorrichtung und ein System zum Kompensieren von Inter-Symbol-Interferenz (ISI) in Signalen. In einer Ausführungsform ist ein Eingangs-Ausgangs(E/A)-Empfänger dafür geeignet, ISI sowohl in den Daten- als auch in den Randabtastungen eines empfangenen Datensignals auszulöschen. In einer Ausführungsform wird eine herkömmliche Decision Feedback Equalizer(DFE)-Architektur zum Anwenden von DFE auf Datenabtastungen eines Datensignals dafür modifiziert, DFE auf Randabtastungen des Datensignals anzuwenden. In einer Ausführungsform werden Koeffizienten für die DFE, die Datenabtastungen des Datensignals entsprechen, dafür verwendet, DFE-Koeffizienten zum Anwenden von DFE auf Randabtastungen des Datensignals zu erzeugen. In einer solchen Ausführungsform wird ISI in Randabtastungen des empfangenen Datensignals ebenfalls ausgelöscht, d. h. kompensiert – zusammen mit dem Auslöschen von ISI aus den Datenabtastungen des empfangenen Datensignals.
-
In einer Ausführungsform werden die kompensierten Randabtastungen dann durch einen Taktgeberschaltkreis z. B. einen Clock Data Recovery(CDR)-Schaltkreis, verwendet, um einen Abtasttakt relativ zu dem empfangenen Datensignal dergestalt zu positionieren, dass das empfangene Datensignal mit einem höheren Timing-Margin abgetastet wird, als wenn die Randabtastungen nicht ISI-kompensiert werden würden. Durch ISI-Kompensieren der Randabtastungen unter Anwendung der DFE-Koeffizienten der Datenabtastungen des Datensignals wird die Gesamtleistung des E/A-Systems verbessert, d. h. das E/A-System hat nun einen besseren Timing-Margin und eine bessere Jittertoleranz. Des Weiteren kann der E/A-Empfänger nun für einen weiten Bereich von Datensignalfrequenzen (d. h. eine größere Bandbreite) verwendet werden, weil der Abtasttakt richtig positioniert werden kann, um das empfangene Datensignal ohne Abtastfehler zu lesen.
-
1 veranschaulicht eine Architektur auf Systemebene 100 mit einer Logikeinheit 105, die einen DFE umfasst, der dafür geeignet ist, ISI sowohl in den Rand- als auch in den Datenabtastungen eines empfangenen Signals 107 auszulöschen, gemäß einer Ausführungsform der Erfindung. In einer Ausführungsform umfasst das System einen Prozessor 101, der über einen Kommunikationslink 106 kommunikativ mit einem Prozessor 102 gekoppelt ist. In einer Ausführungsform ist der Kommunikationslink 106 eine Leiterbahn auf einer (nicht gezeigten) Hauptplatine. In einer weiteren Ausführungsform ist der Kommunikationslink 106 ein flexibles leitfähiges Kabel zum Anschließen an einen Universal Serial Bus (USB). In einer Ausführungsform sind der Sender 103 und der Empfänger 104 (auch als eine Empfangseinheit bezeichnet) ein USB-basierter Sender und Empfänger. In einer Ausführungsform ist der USB-basierte Sender und Empfänger ein USB3-basierter Sender und Empfänger. In anderen Ausführungsformen entsprechen der Sender 103 und der Empfänger 104 anderen E/A-Standards, wie zum Beispiel Serial Advanced Technology Attachment (SATA), Peripheral Component Interconnect Express (PCI-E) usw.
-
In einer Ausführungsform ist der Kommunikationslink 106 ein Drahtlosübertragungsmedium. In einer Ausführungsform ist die Drahtlosübertragungsmedium mit einem Wireless Personal Area Network (WPAN) und/oder einem Wireless Local Area Network (WLAN) und/oder einem Wireless Wide Area Network (WWAN) gekoppelt.
-
In einer Ausführungsform sind die Prozessoren 101 und 102 ein Mikroprozessor bzw. ein entsprechender Chipsatz. In einer Ausführungsform sind die Prozessoren 101 und 102 beide Mikroprozessoren (CPUs). In einer Ausführungsform ist der Prozessor 102 mit einem Speicher gekoppelt (Speicher 605 von 6). In einer Ausführungsform ist der Speicher ein Dynamic Random Access Memory (DRAM). In einer Ausführungsform ist der Speicher eine Static Random Access Memory (SRAM). Kehren wir zu 1 zurück. Obgleich der Prozessor 102 mit einem Empfänger 104 gezeigt ist und der Prozessor 101 mit einem Sender 103 gezeigt ist, haben in einer Ausführungsform beide Prozessoren 101 und 102 Sender und Empfänger auf demselben Chip, um Daten über einen oder mehrere Kommunikationslinks zu senden und zu empfangen.
-
In einer Ausführungsform enthält der Empfänger 104 eine Logikeinheit 105, die dafür ausgelegt ist, eine DFE sowohl in den Daten- als auch in den Randabtastungen des empfangenen Signals 107 auszuführen. Details der Logikeinheit 105 werden mit Bezug auf die 2–6 besprochen. Das Ausgangssignal 108 aus dem Empfänger 104 ist sowohl in den Rand- als auch in den Datenabtastungen des empfangenen Signals 107 ISI-kompensiert. Der Terminus „kompensieren” meint im Sinne des vorliegenden Textes das Auslöschen von ISI in dem empfangenen Signal 107. Das Ausgangssignal 108 wird dann zur (nicht gezeigten) weiteren Verarbeitung durch den Prozessor 102 verwendet.
-
2A veranschaulicht allgemeine Details der Logikeinheit 105 zum Auslöschen von ISI sowohl in den Rand- als auch in den Datenabtastungen des empfangenen Signals gemäß einer Ausführungsform der Erfindung. 2A wird mit Bezug auf 1 beschrieben. In einer Ausführungsform umfasst der E/A-Empfänger 104 eine erste Logikeinheit 204 zum Generieren von DFE-Koeffizienten 206 für Datenabtastungen eines Datensignals 107. In einer Ausführungsform wird das Datensignal 107 durch einen Verstärker 201a empfangen, der eine verstärkte Version des Datensignals 107 als Signal 202 generiert. Das Signal 202 enthält, wie das Datensignal 107, ISI. In den hier besprochenen Ausführungsformen wird das Signal 202 auch als das Datensignal 202 bezeichnet, weil es eine verstärkte Version des Datensignals 107 ist, die ISI aufweist.
-
In einer Ausführungsform ist der Verstärker 201a ein Variable Gain Amplifier (VGA), der dafür geeignet ist, seine Ausgangsverstärkung durch ein Steuersignal 208 aus der ersten Logikeinheit 204 zu variieren. Ein Zweck des Justierens oder Variierens der Verstärkung des VGA 201a ist das Justieren eines durchschnittlichen Pegels des Signals 312 (was später noch mit Bezug auf 3A besprochen wird) in der nachgeschalteten Logikeinheit 203 (z. B. der dritten Logikeinheit 203) auf einen (nicht gezeigten) Bezugspegel. In einer Ausführungsform bezeichnet eine Differenz zwischen dem Pegel von Signal 312 (was später noch mit Bezug auf 3A besprochen wird) und dem Bezugspegel den Betrag an Rest-ISI und wird durch die Logikeinheit 204 zum Aktualisieren der DFE-Koeffizienten 206 für die Datenabtastungen des Datensignals 202 verwendet.
-
Kehren wir zu 2A zurück. In einer Ausführungsform werden die DFE-Koeffizienten 206 aus der ersten Logikeinheit 204 zum Implementieren von DFE an den Datenabtastungen des Datensignals 202 verwendet. Die hier besprochenen Ausführungsformen gelten für einen DFE mit 4 Abgriffen. Es können weniger oder mehr als vier Abgriffe für den DFE verwendet werden, ohne das Wesen der Erfindung zu verändern. In einer Ausführungsform wird ein DFE mit 4 Abgriffen an den Datenabtastungen des Datensignals 202 durch den folgenden Ausdruck implementiert: Vdata(i) = Vin(i) – (C1 × d(i – 1) + C2 × d(i – 2) + C3 × d(i – 3) + C4 × d(i – 4)), wobei Vin(i) das Datensignal 202 vor dem Auslöschen von ISI aus diesem Signal ist, wobei C1, C2, C3 und C4 DFE-Koeffizienten 206 sind, die durch die erste Logikeinheit 204 generiert werden, wobei d(i – 1), d(i – 2), d(i – 3) und d(i – 4) frühere Datenabtastungen (Datenverlauf) des Datensignals 202 sind, und wobei Vdata(i) das Signal (312 von 3A) ist, das um ISI in den Datenabtastungen des Signals Vin(i) 202 kompensiert ist. In einer Ausführungsform werden die Additions- und Subtraktionsoperationen in dem obigen Ausdruck, die das Erzeugen des Vdata(i)-Signals zur Folge haben, durch eine dritte Logikeinheit 203 implementiert. In einer Ausführungsform werden die DFE-Koeffizienten 206 durch einen Least Mean Square(LMS)-basierten Entzerrer generiert. In anderen Ausführungsformen können andere adaptive Filter zum Generieren von DFE-Koeffizienten 206 für die Datenabtastungen des Datensignals 202 verwendet werden.
-
In einer Ausführungsform umfasst der E/A-Empfänger 104 des Weiteren eine zweite Logikeinheit 205, die mit der ersten Logikeinheit 204 gekoppelt ist, zum Generieren von DFE-Koeffizienten 207 für die Randabtastungen des Datensignals 202 über die DFE-Koeffizienten 206 für die Datenabtastungen des Datensignals 202.
-
In einer Ausführungsform ist die zweite Logikeinheit 205 dafür geeignet, einen Schätzungsfaktor zu empfangen, der absolut gesehen (d. h. als skalare Quantität) einen idealen Randabtastungspunkt in dem Datensignal 202 darstellt. In einer Ausführungsform ist der Schätzungsfaktor 0,5. In einer Ausführungsform ist der Schätzungsfaktor von logisch hohen und logisch niedrigen Pegeln des Datensignals unabhängig. In einer Ausführungsform ist der Schätzungsfaktor ein zuvor festgelegter Faktor. In anderen Ausführungsformen ist der Schätzungsfaktor durch Hardware und/oder Software programmierbar.
-
In einer Ausführungsform sind die DFE-Koeffizienten für die Randabtastungen 207 des Datensignals 202: (Schätzungsfaktor × C1), (Schätzungsfaktor × (C1 + C2)), (Schätzungsfaktor × (C2 + C3)) und (Schätzungsfaktor × (C3 + C4)) für eine DFE-Konfiguration mit 4 Abgriffen.
-
In einer Ausführungsform umfasst der E/A-Empfänger 104 die dritte Logikeinheit 203, die mit der ersten und der zweiten Logikeinheit 204 bzw. 205 gekoppelt ist, zum Kompensieren der Daten- und Randabtastungen des Datensignals 202 für ISI an den Daten- und Randabtastungszeitpunkten des Datensignals 202. In einer Ausführungsform wird eine DFE mit 4 Abgriffen an den Randabtastungen des Datensignals 202, die die DFE-Koeffizienten der Datenabtastungen des Datensignals 202 anwendet, durch den folgenden Ausdruck implementiert:
Vedge(i) = Vin(i) – Schätzungsfaktor × (C1 × d(i) + (C1 + C2) × d(i – 1) + (C2 + C3) × d(i – 2) + (C3 + C4) × d(i – 3)), wobei Vin(i) das Signal 202 vor dem Auslöschen von ISI aus diesem Signal ist, wobei C1, C2, C3 und C4 DFE-Koeffizienten 206 der Datenabtastungen sind, die durch die erste Logikeinheit 204 generiert werden, wobei d(i – 1), d(i – 2) und d(i – 3) frühere Datenabtastungen (Datenverlauf) des Datensignals 202 sind, wobei d(i) die momentane Datenabtastung des Datensignals 202 ist, wobei der Schätzungsfaktor ein zuvor festgelegter Faktor (oben besprochen) oder ein programmierter Faktor ist, wobei (Schätzungsfaktor × C1), (Schätzungsfaktor × (C1 + C2)), (Schätzungsfaktor × (C2 + C3)) und (Schätzungsfaktor × (C3 + C4)) DFE-Koeffizienten für die Randabtastungen 207 des Datensignals 202 für eine DFE-Konfiguration mit 4 Abgriffen sind, und wobei Vedge(i) (313 von 3A) das Signal ist, das ist um ISI in den Randabtastungen des Signals Vin(i) 202 kompensiert ist.
-
In einer Ausführungsform werden die Additions- und Subtraktionsoperationen in dem obigen Ausdruck, die das Generieren des Vedge(i)-Signals zur Folge haben, durch die dritte Logikeinheit 203 implementiert. In einer Ausführungsform wird das Vedge(i)-Signal als ein Eingang in einen Taktgeberschaltkreis verwendet, der das Taktsignal für eine Abtastung des Datensignals 202 dergestalt positioniert, dass es richtig gelesen oder abgetastet werden kann. In einer Ausführungsform ist das Vedge(i)-Signal ein analoges Signal, das in ein entsprechendes digitales Signal umgewandelt wird, bevor es durch den Taktgeberschaltkreis verwendet wird. Die obige Ausführungsform wird ausführlicher mit Bezug auf 3A besprochen.
-
2B veranschaulicht ein Differenzialeingangssignal 107 in die Logikeinheit 105 und eine Ausgangswellenform 216 (gleiche wie 108) aus der Logikeinheit 105 gemäß einer Ausführungsform der Erfindung. Die x-Achse des Diagramms 210 liegt im Zeitbereich, der als Einheitsintervalle (Unit Intervals, UI) ausgedrückt wird, während die y-Achse im Spannungs(Volt)-Bereich liegt. In einer Ausführungsform ist die Logikeinheit 105 dafür geeignet, ein ein-endiges Eingangssignal 107 mit ISI zu empfangen und die ISI sowohl für die Daten- als auch für die Randabtastungen des ein-endigen Eingangssignal 107 auszulöschen, ohne das Wesen der Ausführungsformen der Erfindung zu verändern.
-
Das Signal 211, das das gleiche wie das Datensignal 202 ist, stellt ein Differenzialeingangssignal mit ISI dar. Der Signalpunkt 212 ist eine Datenabtastung des Signals 202, die einen logisch hohen Pegel darstellt, bevor eine DFE angewendet wird, um ISI an jenem Signalpunkt (auch als eine Datenabtastung bezeichnet) auszulöschen. Der Signalpunkt 213 stellt eine Datenabtastung des Signals 202 nach dem Anwenden einer DFE auf die Datenabtastung 212 dar. Der Signalpunkt 214 stellt eine Randabtastung des Signals 202 dar, wenn keine DFE auf die Randabtastung des Datensignals 202 angewendet wird.
-
In einer Ausführungsform wird die Randabtastung 214 dafür verwendet, den Rand eines Datensignals und somit einen Bezugsrand für einen Taktdatenrückgewinnungsschaltkreis (oder einer Taktgeberschaltkreis 308 von 3A) zu identifizieren. Der Bezugsrand wird dann zum Generieren eines Abtasttaktsignals dergestalt verwendet, dass jenes Taktsignal in der Mitte der Augenbreite (im Zeitbereich) des Datensignals 202 übergeht (vom hohen zum niedrigen oder vom niedrigen zum hohen Pegel). Wenn ISI nicht aus der Randabtastung 214 ausgelöscht wird, so positioniert der Taktgeberschaltkreis oder Taktrückgewinnungsschaltkreis 308 von 3A einen Abtasttakt außerhalb der Mitte der Augenbreite (im Zeitbereich) des Datensignals 202, was eventuell zur Abtastung eines falschen Wertes des Datensignals 202 aufgrund von ISI-Rauschen in dem Datensignal 202 führt.
-
Das Signal 215 stellt eine Randabtastung dar, die dem Signal 202 entspricht, nachdem eine DFE auf die Randabtastung 214 über die Logikeinheit 105 angewendet wird. Durch Anwenden einer DFE auf die Randabtastung 214 hat ein Taktgeberschaltkreis einen korrekten Bezugspunkt zum Generieren eines Abtasttaktes in der Mitte der Augenbreite (z. B. im Zeitbereich) des Signals 202. Das Signal 216 stellt das Ausgangssignal 108 dar, das aus den Daten- und Randabtastungen 213 bzw. 215 nach dem Anwenden einer DFE auf die Daten- und Randabtastungen 212 bzw. 214 rekonstruiert wurde. In der obigen Ausführungsform wird ISI (durch die Logikeinheit 105) sowohl für die Daten- als auch für die Randabtastungen 212 und 214 ausgelöscht. Die Daten- und die Randabtastungen 213 bzw. 215 sind ohne ISI.
-
2C veranschaulicht ein Paar Augendiagramme 220 rekonstruierter Datensignale an einem Eingang eines Datenabtasters, die einen Vergleich einer zum Stand der Technik gehörenden Anwendung von DFE nur auf Datenabtastungen eines Datensignals zur Anwendung von DFE sowohl auf die Rand-(214) als auch auf die Daten(212)-Abtastungen des Signals 202 gemäß einer Ausführungsform der Erfindung zeigen.
-
Der Terminus „rekonstruiertes” Signal meint im Sinne des vorliegenden Textes das Signal vor der Abtastung durch die Daten- und/oder Randabtaster (z. B. 304, 305 von 3A), und das auf die Taktsignale (z. B. 314, 317 von 3A) bezogen wird, die durch die Taktgebereinheit (PI 309, CDR 308 von 3A) generiert werden.
-
Kehren wir zurück zu 2C, wo die Wellenform 221 ein herkömmliches (dem Stand der Technik entsprechendes) rekonstruiertes Augendiagramm nach dem Anwenden einer DFE lediglich auf Datenabtastungen zeigt. Während die Wellenform 221 um ISI in den Datenabtastungen eines Datensignals kompensiert ist, sind die Kreuzungspunkte der Signale über eine Distanz von 0,32 Einheitsintervalle (UI) verteilt. Die Kreuzungspunkte der Signale stellen ISI-induzierten Signal-Jitter (Rauschen) dar, der nicht durch einen Taktdatenrückgewinnungsschaltkreis verfolgt wird. Ein Taktdatenrückgewinnungsschaltkreis verwendet die Kreuzungspunkte, um ein Bezugsrandsignal zu bestimmen und dann Taktsignale, zum Abtasten von Datensignalen, anhand des Bezugsrandsignals zu generieren. Eine breitere Verteilung von Kreuzungspunkten, wie in Wellenform 221 zeigt, verursacht eine falsche Abtastung des empfangenen Datensignals.
-
Da die Kreuzungspunkte der Signale von Wellenform 221 – verglichen mit der Verteilung der Kreuzungspunkte der Signale von Wellenform 222 – über eine breite Distanz (0,32 UI) verteilt sind, hat ein Taktdatenrückgewinnungsschaltkreis eines herkömmlichen Empfängers eine kleinere Jittertoleranz als der Taktdatenrückgewinnungsschaltkreis 308 der Ausführungsformen der Erfindung.
-
Die Wellenform 222 stellt das rekonstruierte Datensignal (312 von 3A) des Empfängers 104 dar, der DFE sowohl auf die Rand- als auch auf die Datenabtastungen des Datensignals 202 gemäß einer Ausführungsform anwendet. In einer solchen Ausführungsform sind die Kreuzungspunkte des rekonstruierten Signals (312 von 3A) über eine kürzere (schmalere) Distanz von 0,13 UI verteilt. Wie oben angesprochen, verwendet der Taktdatenrückgewinnungsschaltkreis in einer Ausführungsform die Kreuzungspunkte, um ein Bezugsrandsignal zu bestimmen und dann Taktsignale, zum Abtasten von Datensignalen, anhand des Bezugsrandsignals zu generieren. Eine schmalere Verteilung von Kreuzungspunkten, wie in Wellenform 222 gezeigt, bewirkt eine korrekte Abtastung des empfangenen Datensignals über eine große Bandbreite.
-
Da die Kreuzungspunkte des Signals (312 von 3A) von Wellenform 222 über eine kürzere Distanz verteilt sind als die Verteilung von Wellenform 221 (Stand der Technik), toleriert der Empfänger 104 der vorliegenden Ausführungsformen mehr internen und/oder externen Jitter in dem Datensignal 202 als der Stand der Technik.
-
3A veranschaulicht Logikeinheiten 300 zum Anwenden von DFE sowohl auf die Rand- als auch auf die Datenabtastungen des Datensignals 202 gemäß einer Ausführungsform der Erfindung. 3A wird mit Bezug auf die 1–2 besprochen. In einer Ausführungsform ist die dritte Logikeinheit 203 dafür geeignet, DFE-Koeffizienten 311 aus der ersten Logikeinheit 204 zum Anwenden von DFE auf die Datenabtastungen des Datensignals 202 zu empfangen. In einer Ausführungsform ist die dritte Logikeinheit 203 dafür geeignet, die DFE-Koeffizienten 318 aus der zweiten Logikeinheit 205 für die Randabtastungen des Datensignals 202 zu empfangen.
-
In einer Ausführungsform wird der Schätzungsfaktor, der zum Skalieren (durch Multiplizieren) der DFE-Koeffizienten 318 für die Randabtastungen verwendet wird, in einem Register 301 gespeichert. In einer Ausführungsform ist das Register 301 über ein (nicht gezeigtes) Betriebssystem programmierbar. In einer Ausführungsform wendet die dritte Logikeinheit 203 die DFE-Koeffizienten für die Daten- und Randabtastungen (311 und 318) auf das Datensignal 202 an, um ein Ausgangssignal 108 zu generieren, das ISI-kompensiert ist. Das Ausgangssignal 108 wird dann durch eine nachgeschaltete (nicht gezeigte) Logik verwendet, um den Inhalt des Ausgangssignals 108 zu verarbeiten.
-
In einer Ausführungsform umfasst die dritte Logikeinheit 203 Summierer-Logikeinheiten 302 und 303 zum Erzeugen von Vdata(i)- bzw. Vedge(i)-Signalen. In einer Ausführungsform ist die Summierer-Logikeinheit 302 (die erste DFE-Summierungs-Logikeinheit) dafür geeignet, anhand der DFE-Koeffizienten für die Datenabtastungen 311 des Datensignals 202 und früherer Datenabtastungen 310 des Datensignals 202 ein korrigiertes Datenabtastsignal Vdata(i) 312 zu generieren. In einer Ausführungsform ist die Summierer-Logikeinheit 303 (die zweite DFE-Summierungs-Logikeinheit) dafür geeignet, anhand der DFE-Koeffizienten für die Randabtastungen 318 des Datensignals 202 und der früheren Datenabtastungen 310 des Datensignals 202 ein korrigiertes Randabtastsignal Vedge(i) 313 zu generieren.
-
Um die wichtigen Aspekte der Ausführungsformen der Erfindung nicht in den Hintergrund treten zu lassen, wird auf eine detaillierte Beschreibung der Implementierung der Summierer-Logikeinheiten verzichtet. Der Fachmann kann digitale und/oder analoge Summierer zum Implementieren der mathematischen Funktion des Addierens und Subtrahierens verwenden, um die Signale Vdata(i) 312 und Vedge(i) 313 zu generieren.
-
Wie oben mit Bezug auf 2A besprochen, Vdata(i) = Vin(i) – (C1 × d(i – 1) + C2 × d(i – 2) + C3 × d(i – 3) + C4 × d(i – 4)), während Vedge(i) = Vin(i) – Schätzungsfaktor × (C1 × d(i) + (C1 + C2) × d(i – 1) + (C2 + C3) × d(i – 2) + (C3 + C4) × d(i – 3)), wobei Vin(i) das Signal 202 ist, Vdata(i) das Signal 312 ist und Vedge(i) das Signal 313 ist. In einer Ausführungsform wird das Datenverlaufssignal 310, das die Datensignale d(i), d(i – 1), d(i – 2) und d(i – 3) umfasst, durch die Datenverlaufs-Logikeinheit 306 in Registern gespeichert. In einer Ausführungsform ist die Datenverlaufs-Logikeinheit 306 ein Schieberegister mit einer Kette von Speichervorrichtungen, wie zum Beispiel Flipflops oder Latches oder sonstigen Speichervorrichtungen, zum Speichern des Datenverlaufs.
-
In einer Ausführungsform enthält die dritte Logikeinheit 203 eine Fehlerabtastungs-Logikeinheit 307, um zu bestimmen, ob das korrigierte (rekonstruierte) Vdata(i)-Datensignal 312, das ISI-kompensiert ist, über oder unter einem oder mehreren Bezugspegeln liegt. In einer solchen Ausführungsform ist die Fehlerabtastungs-Logikeinheit 307 dafür geeignet, das korrigierte (rekonstruierte) Vdata(i)-Datensignal 312 und den einen oder die mehreren (nicht gezeigten) Bezugssignalpegel zu empfangen, wobei einer der Bezugspegel ein hoher Bezugspegel ist, der einem logisch hohen Pegel entspricht, während der andere Bezugspegel ein niedriger Bezugspegel ist, der einem logisch niedrigen Pegel entspricht.
-
In einer Ausführungsform, wenn alle ISI kompensiert ist, befindet sich das Vdata(i)-Signal 312 auf den Bezugssignalpegeln, die logisch niedrigen oder logisch hohen Pegeln entsprechen. In einer Ausführungsform zeigt das ausgegebene abgetastete Fehlersignal 319 aus der Fehlerabtasteinheit 307 an, ob das abgetastete Vdata(i)-Signal 108 über oder unter den Bezugspegeln liegt.
-
In einer Ausführungsform empfängt die erste Logikeinheit 204 das abgetastete Fehlersignal 319 und das abgetastete Vdata(i)-Signal 108 und verwendet sie zum Aktualisieren der DFE-Koeffizienten 311 für die Datenabtastungen des Datensignals 202. In einer Ausführungsform wird die erste Logikeinheit 204 als ein LMS-Entzerrer implementiert. In einer Ausführungsform werden die neuen DFE-Datenabtastungskoeffizienten 311 durch die zweite Logikeinheit 204 zum Aktualisieren der DFE-Koeffizienten 318 für die Randabtastungen empfangen.
-
In einer Ausführungsform generiert die Schleife von der ersten und der zweiten Logikeinheit (204 und 205) zur dritten Logikeinheit (203) weiterhin aktualisierte DFE-Koeffizienten für die Daten- und Randabtastungen (311 bzw. 318), bis das abgetastete Fehlerausgangssignal 307 anzeigt, das keine weitere Änderung an den Vdata(i)- und/oder Vedge(i)-Signalen (312 bzw. 313) nötig ist. In einer solchen Ausführungsform erzeugen die erste und die zweite Logikeinheit (204 und 205) weiterhin aktualisierte DFE-Koeffizienten für die Daten- und Randabtastungen (311 bzw. 318) selbst dann, wenn der Fehler nahe null liegt oder null ist. In einer Ausführungsform kann der Fehler um einen Gleichgewichtspegel, z. B. einen Null-Pegel, herum pendeln. Der Terminus „nahe” meint im Sinne des vorliegenden Textes einen Fehler, der nicht weiter als 10% vom Null-Fehler-Pegel entfernt liegt.
-
In einer Ausführungsform ist die dritte Logikeinheit 203 dafür geeignet, die Signale Vdata(i) 312 und Vedge(i) 313 über Daten- und Randabtasteinheiten 304 bzw. 305 abzutasten. In einer Ausführungsform sind die Abtast-Logikeinheiten 304 und 305 dafür geeignet, Abtasttaktsignale 317 (auch als ein erstes Taktsignal bezeichnet) bzw. 314 (auch als ein zweites Taktsignal bezeichnet) aus einer Taktgeber-Logikeinheit (die nicht in ihrer Gesamtheit gezeigt ist) zu empfangen. In einer Ausführungsform sind die Abtast-Logikeinheiten 304 und 305 als Flipflops implementiert. In anderen Ausführungsformen sind die Abtast-Logikeinheiten 304 und 305 als Abtast- und Halteschaltkreise implementiert. In anderen Ausführungsformen können andere Implementierungen der Abtast-Logikeinheiten 304 und 305 verwendet werden, ohne das Wesen der Erfindung zu verändern.
-
In einer Ausführungsform umfasst die Taktgeber-Logikeinheit einen Phaseninterpolator (PI) 309. In einer Ausführungsform umfasst der PI 309 eine (nicht gezeigte) Verzögerungsleitung zum Verzögern eines Taktsignals 315, um verschiedene verzögerte Versionen des Taktsignals 315 über Interpolationen zwischen Taktsignalen zu generieren.
-
Der Terminus „Verzögerung” meint im Sinne des vorliegenden Textes eine Verzögerung im Zeitbereich, die zur Änderung einer Phase des Signals führt. In einer Ausführungsform ist die (nicht gezeigte) Verzögerungsleitung Teil einer Delay Locked Loop (DLL), die eine Verzögerungsleitung mit Bezug auf ein Bezugstaktsignal 316 verriegelt, um verzögerte Taktsignale 317 und 314 für die Daten- und Randabtast-Logikeinheiten 304 bzw. 305 zu generieren.
-
In einer Ausführungsform umfasst die Taktgeber-Logikeinheit einen Clock Data Recovery(CDR)-Schaltkreis 308, der dafür ausgelegt ist, Signale 320 und 108 zu empfangen, die die abgetasteten Ausgänge von Vedge(i) 313 bzw. Vdata(i) 312 sind, um ein Steuersignal 315 für den PI 309 zu generieren. In einer Ausführungsform wird das Steuersignal 315 in den PI 309 dafür verwendet, die Verzögerung zwischen den ausgegebenen Taktsignalen 317 und 314 von dem PI 309 relativ zu dem Eingangstaktsignal 316 zu justieren. In einer Ausführungsform ist der CDR-Schaltkreis 308 dafür geeignet, den PI 309 über das Steuersignal 315 anzuweisen, die verzögerten Taktsignale 317 und 314 für die Daten- und Randabtast-Logikeinheiten 304 bzw. 305 so zu generieren, dass das verzögerte Taktsignal 317 in der Mitte der Augenbreite (im Zeitbereich) des Vdata(i)-Signals 312 positioniert ist und das Taktsignal 314 am Rand des Auges (nahe dem 0-UI-Punkt der Wellenform 222 von 2C) positioniert ist.
-
Kehren wir zu 3A zurück. In der obigen Ausführungsform ist der CDR 308 dafür geeignet, die abgetasteten Rand- und Datensignale 320 bzw. 108 zu empfangen, um die Position des Taktsignals 317 relativ zu dem Datensignal 312 zu bestimmen. In einer solchen Ausführungsform ist der CDR 308 dafür geeignet, den PI 309 über das Steuersignal 315 anzuweisen, das Taktsignal 314 zu positionieren, um das Randsignal 313 abzutasten, und das Taktsignal 317 zu positionieren, um das Datensignal 312 abzutasten.
-
In einer Ausführungsform liegen die Taktsignale 317 und 314 in der Regel etwa ein halbes UI auseinander, so dass das Taktsignal 317 (im Zeitbereich) auf die Mitte des Datenauges von Signal 312 ausgerichtet ist und das Taktsignal 314 (im Zeitbereich) auf den Rand eines Auges des Signals 313 ausgerichtet ist. Um die wichtigen Aspekte der Ausführungsformen der Erfindung nicht in den Hintergrund treten zu lassen, wird die Implementierung des CDR-Schaltkreises 308 nicht im Einzelnen besprochen.
-
3B veranschaulicht ein Logikpegeldiagramm 330, das die zweite Logikeinheit 205 umfasst, um DFE-Koeffizienten für die Randabtastungen des Datensignals 202 über DFE-Koeffizienten der Datenabtastungen des Datensignals 202 gemäß einer Ausführungsform der Erfindung zu generieren. In einer Ausführungsform ist der Eingang in die zweite Logikeinheit 205 DFE-Koeffizienten der Datenabtastungen des Datensignals 202d. h. C1, C2, C3, .... In einer Ausführungsform enthält der Ausgang der zweiten Logikeinheit 205 DFE-Koeffizienten der Randabtastungen des Datensignals 318, d. h. A × C1, A × (C1 + C2), A × (C2 + C3), ..., wobei „A” der Schätzungsfaktor aus der Schätzungsfaktor-Logikeinheit 301 ist und wobei C1, C2, C3 DFE-Koeffizienten der Datenabtastungen des Datensignals sind. In einer Ausführungsform ist die zweite Logikeinheit dafür geeignet, eine lineare Approximierung auf die DFE-Koeffizienten für die Datenabtastungen 311 des Datensignals 202 anzuwenden, um die DFE-Koeffizienten 318 für die Randabtastungen des Datensignals 202 zu generieren.
-
In einer Ausführungsform umfasst die zweite Logikeinheit 205 einen ersten Multiplizierer 331, der dafür geeignet ist, einen ersten Daten-DFE-Koeffizienten C1 von 311, aus den DFE-Koeffizienten 311 für die Datenabtastungen, mit einem Schätzungsfaktor „A” aus der Schätzungsfaktor-Logikeinheit 301 zu multiplizieren. In der obigen Ausführungsform ist der erste Multiplizierer 331 dafür geeignet, einen ersten Rand-DFE-Koeffizienten (A × C1) zu generieren.
-
In einer Ausführungsform umfasst die zweite Logikeinheit 205 des Weiteren eine Addierer-Logikeinheit 334 zum Addieren des ersten Daten-DFE-Koeffizienten C1 von 311 mit einem zweiten Daten-DFE-Koeffizienten C2 aus den DFE-Koeffizienten 311 für die Datenabtastungen des Datensignals 202, um ein Summierungssignal zu generieren, d. h. C1 + C2. In einer Ausführungsform wird das Summierungssignal (C1 + C2) dann durch einen zweiten Multiplizierer 332 multipliziert, um den Schätzungsfaktor „A” aus der Schätzungsfaktor-Logikeinheit 301 mit dem Summierungssignal (C1 + C2) zu multiplizieren, um einen zweiten Rand-DFE-Koeffizienten, d. h. A × (C1 + C2), zu generieren, wobei die DFE-Koeffizienten für die Randabtastungen des Datensignals den ersten und den zweiten Rand-DFE-Koeffizienten enthalten.
-
In einer Ausführungsform umfasst die zweite Logikeinheit 205 eine weitere Addierer-Logikeinheit 335 zum Addieren des zweiten Daten-DFE-Koeffizienten C2 von 311 mit dem zweiten Daten-DFE-Koeffizienten C2 aus den DFE-Koeffizienten für die Datenabtastungen des Datensignals 311, um ein weiteres Summierungssignal zu generieren, d. h. C2 + C3. In einer Ausführungsform wird das andere Summierungssignal (C2 + C3) dann durch einen dritten Multiplizierer 333 multipliziert, um den Schätzungsfaktor „A” aus der Schätzungsfaktor-Logikeinheit 301 mit dem anderen Summierungssignal (C2 + C3) zu multiplizieren, um einen dritten Rand-DFE-Koeffizienten, d. h. A × (C2 + C3), zu generieren.
-
In einer Ausführungsform sind – je nach der Anzahl von Abgriffen zum Anwenden von DFE auf Datenabtastungen des Datensignals 202 – eine entsprechende Anzahl von Addierern und Multiplizierern in der zweiten Logikeinheit 205 enthalten, um DFE-Koeffizienten für die Randabtastungen 318 aus den DFE-Koeffizienten der Datenabtastungen 311 des Datensignals 202 zu generieren. In einer Ausführungsform kann die Anzahl von Rand-DFE-Koeffizienten weniger oder mehr als die Anzahl von DFE-Abgriffen zum Anwenden von DFE auf die Datenabtastungen des Datensignals 202 sein.
-
In einer Ausführungsform ist der Prozess des Erzeugens der DFE-Koeffizienten für die Randabtastungen 318 ein linearer Prozess. In einer Ausführungsform führen die Addierer 334 und 335 die Summierungsoperationen nach den Multiplizierungsoperationen durch die Multiplizierer 331, 332 und 333 aus. In einer Ausführungsform umfasst die zweite Logikeinheit 205 Multiplizierer zum Multiplizieren des Schätzungsfaktors „A” mit den DFE-Koeffizienten der Datenabtastungen, um ein multipliziertes Ergebnis zu generieren. In einer solchen Ausführungsform wird das multiplizierte Ergebnis dann mit multiplizierten Ergebnissen von anderen Multiplizierern zusammenaddiert, um DFE-Koeffizienten von Randabtastungen 318 anhand von DFE-Koeffizienten von Datenabtastungen 311 zu generieren.
-
4 veranschaulicht eine Look-ahead-Logikeinheit 400 zum Beseitigen von Timing-Verletzungen aus dem Datenabtaster 304 zu den DFE-Summierer-Logikeinheiten 302 und 303 gemäß einer Ausführungsform der Erfindung. In einer Ausführungsform werden die Summierer-Logikeinheit 302 und der Datenabtaster 304 durch die Look-ahead-Logikeinheit 400 ersetzt, um das Ausgangssignal 108 zu generieren, wobei das Ausgangssignal 108 keine Timing-Verletzungen enthält.
-
Obgleich die Look-ahead-Logikeinheit 400 für den Daten-DFE-Aspekt der dritten Logikeinheit 203 veranschaulicht ist, kann sie auch für den Rand-DFE-Aspekt der dritten Logikeinheit 203 verwendet werden. In einer solchen Ausführungsform ersetzt die Look-ahead-Logikeinheit 400 die Summierer-Logikeinheit 303 und den Randabtaster 305. In einer Ausführungsform wird die Look-ahead-Logikeinheit 400 sowohl für die Daten-DFE als auch für die Rand-DFE zusammen verwendet.
-
In einer Ausführungsform ist die Look-ahead-Logikeinheit 400, die die Summierer-Logikeinheit 302 und den Datenabtaster 304 ersetzt, dafür geeignet, die Datenabtastungen (d(i – 1), d(i – 2), d(i – 3), d(i – 4), ...) des Datensignals 202 aus der Datenverlaufseinheit 306 zu empfangen. In der obigen Ausführungsform ist die Look-ahead-Logikeinheit 400 des Weiteren dafür geeignet, DFE-Koeffizienten 311 von einem Rückkopplungspfad zu empfangen, der die erste Logikeinheit 204 mit der dritten Logikeinheit 203 verbindet. In einer solchen Ausführungsform ist die Look-ahead-Logikeinheit 400 dafür geeignet, ein korrigiertes Datenabtastsignal 108 aus mehreren korrigierten Datenabtastsignalen (407 und 408) auszuwählen, wobei das ausgewählte korrigierte Datenabtastsignal 108 keine Timing-Verletzungen enthält.
-
In einer Ausführungsform umfasst die Look-ahead-Logikeinheit 400 zwei Summierer-Logikeinheiten 401 und 402, wobei die erste Summierer-Logikeinheit 401 ein korrigiertes Datenabtastsignal 407 durch Anwenden einer „0” für die vorgesehene d(i – 1)-Datenabtastung generiert und wobei die zweite Summierer-Logikeinheit 402 ein korrigiertes Datenabtastsignal 408 durch Anwenden einer „1” für die vorgesehene d(i – 1) Datenabtastung generiert. In einer Ausführungsform werden die zwei korrigierten Datenabtastsignale, 407 und 408, durch Abtaster 403 und 404 über Taktsignale aus dem PI 309 abgetastet. In einer Ausführungsform wird der Ausgang der Abtaster 403 und 404 durch einen Multiplexer 406 multiplexiert, wobei der Multiplexer 406 durch ein Auswahlsignal gesteuert wird, das ein Ausgang eines Abtasters 405 ist, der d(i – 1) (entweder ein logischer Null- oder Eins-Pegel) über ein Invers des Taktsignals 317 abtastet. Der Terminus „invers” meint im Sinne des vorliegenden Textes eine 180-Grad-Phasenverschiebung zu einem Signal. Der Ausgang des Multiplexers 406 ist 108 und enthält keine Timing-Verletzungen.
-
In einer Ausführungsform, wenn die Look-ahead-Logikeinheit 400 den Rand-DFE-Summierer 303 und den Randabtaster 305 ersetzt, so ist der Ausgang der Look-ahead-Logikeinheit 400 das Signal 320 anstatt 108. In einer solchen Ausführungsform sind die Eingange in die erste und die zweite Summierer-Logikeinheit (401 und 402) Datenabtastungen 0, d(i – 1), d(i – 2) und d(i – 3) und 1, d(i – 1), d(i – 2) bzw. d(i – 3). In einer Ausführungsform empfangen die erste und die zweite Summierer-Logikeinheit (401 und 402) die Randabtastungen 318 anstatt der Datenabtastungen 311. In der obigen Ausführungsform empfängt der Abtaster 405 das Signal d(i) anstatt des Signals d(i – 1).
-
5A veranschaulicht ein allgemeines Flussdiagramm 500 zum Auslöschen von ISI aus den Rand- und Datenabtastungen eines Signals 202 gemäß einer Ausführungsform der Erfindung. Das Verfahrensflussdiagramm wird mit Bezug auf die 1–3 erläutert.
-
Bei Block 501 empfängt der Empfänger 104 ein Datensignal 107 von einem Sender 103 über eine Übertragungsleitung 106. Das Datensignal 107 wird verstärkt, um ein verstärktes Signal 202 zu generieren, das dann zur Weiterverarbeitung verwendet wird. Bei Block 502 generiert die erste Logikeinheit 204 DFE-Koeffizienten 311 für die Datenabtastungen des empfangenen Datensignals 202.
-
Bei Block 503 werden DFE-Koeffizienten 318 für die Randabtastungen des empfangenen Datensignals 202 durch die zweite Logikeinheit 205 über die DFE-Koeffizienten für die Datenabtastungen 311 des empfangenen Datensignals 202 generiert. Bei Block 504 werden die Daten- und Randabtastungen 108 und 320 des empfangenen Datensignals 202 um ISI in den Daten- und Randabtastungen des empfangenen Datensignals 202 kompensiert, wobei das Kompensieren um ISI über die DFE-Koeffizienten für die Daten- und Randabtastungen 311 bzw. 318 erfolgt.
-
5B veranschaulicht ein detailliertes Flussdiagramm des Blocks 504 von 5A zum Auslöschen von ISI aus den Rand- und Datenabtastungen des empfangenen Signals 202 gemäß einer Ausführungsform der Erfindung. Bei Block 505 wird eine korrigierte Datenabtastung 312 anhand der DFE-Koeffizienten für die Datenabtastungen 311 des empfangenen Datensignals 202 und der früheren Datenabtastungen 310 des empfangenen Datensignals 202 generiert. Bei Block 506 wird ein korrigiertes Randabtastsignal 313 anhand der DFE-Koeffizienten für die Randabtastungen 318 des empfangenen Datensignals 202 und der früheren Datenabtastungen 310 des empfangenen Datensignals 202 generiert. Bei Block 507 werden die korrigierten Daten- und Randabtastsignale 312 und 313 durch Abtaster 304 und 305 über Taktsignale 317 (erstes Taktsignal) bzw. 314 (zweites Taktsignal) abgetastet. Bei Block 508 wird eine Phase von mindestens einem der Taktsignale 317 (erstes Taktsignal) und 314 (zweites Taktsignal) über den CDR 308 und den PI 309 aktualisiert, wobei die Taktsignale 317 (erstes Taktsignal) und 314 (zweites Taktsignal) zum Abtasten der Daten- und Randabtastsignale 312 bzw. 313 dienen. In einer Ausführungsform werden die Phasen sowohl der Taktsignale 317 (erstes Taktsignal) und 314 (zweites Taktsignal) über den CDR 308 und den PI 309 aktualisiert.
-
5C veranschaulicht ein Flussdiagramm, das die Details von Block 503 von 5A zum Erzeugen von DFE-Koeffizienten für die Randabtastungen 318 des empfangenen Signals 202 gemäß einer Ausführungsform der Erfindung beschreibt.
-
Bei Block 509 wird ein erster Daten-DFE-Koeffizient (C1) aus den DFE-Koeffizienten 311 (C1, C2, C3, C4, ...) für die Datenabtastungen durch den Multiplizierer 331 mit dem Schätzungsfaktor „A” multipliziert, um einen ersten Rand-DFE-Koeffizienten (A × C1) zu generieren. Bei Block 510 wird der erste Daten-DFE-Koeffizient (C1) durch den Addierer 334 mit einem zweiten Daten-DFE-Koeffizienten (C2) aus den DFE-Koeffizienten 311 (C1, C2, C3, C4, ...) für die Datenabtastungen des empfangenen Datensignals 202 addiert, um ein Summierungssignal (C1 + C2) zu generieren.
-
Bei Block 511 wird der Schätzungsfaktor „A” durch den Multiplizierer 332 mit dem Summierungssignal (C1 + C2) multipliziert, um einen zweiten Rand-DFE-Koeffizienten (A × (C1 + C2)) zu generieren, wobei die DFE-Koeffizienten für die Randabtastungen 318 des empfangenen Datensignals 202 den ersten und den zweiten Rand-DFE-Koeffizienten enthalten.
-
6 veranschaulicht ein System 600, das ein computerlesbares Speichermedium 602 mit durch einen Computer ausführbaren Anweisungen 603 aufweist, um ein oder mehrere Verfahren (z. B. 5A–C) zum Auslöschen von ISI in Rand- und Datenabtastungen des empfangenen Signals 202 gemäß einer Ausführungsform der Erfindung auszuführen. Ausführungsformen der Erfindung werden außerdem über die programmierbaren Computer-ausführbaren Anweisungen 603 implementiert.
-
In einer Ausführungsform umfasst das System zum Ausführen der oben besprochenen Verfahren den Prozessor 101, der mit dem Prozessor 102 über einen Netzwerkbus 601 gekoppelt ist, wobei der Prozessor 102 den Empfänger 104 (auch als eine Empfangseinheit bezeichnet) mit Logik zum Auslöschen von ISI in Rand- und Datenabtastungen des empfangenen Signals 202 aufweist. Der Terminus „Netzwerkbus” erstreckt sich sowohl auf Übertragungsleitungen als auch auf Drahtlosübertragungsmedien. In einer Ausführungsform umfasst das System 600 eine Netzwerkschnittstelle 604 zum Verbinden von Komponenten des Systems 600 mit dem Netzwerk, z. B. dem Internet. In einer Ausführungsform ist das Netzwerk ein Drahtlosnetz. In einer Ausführungsform ist der Prozessor 102 mit einem Speicher 605 über den Netzwerkbus 601 (verdrahtet von drahtlos) gekoppelt. In einer Ausführungsform ist der Speicher 605 ein DRAM.
-
Bei dem computerlesbaren Speichermedium 602 kann es sich beispielsweise um Flash-Speicher, optische Disks, CD-ROMa, DVD ROMs, RAMs, EPROMs, EEPROMs, magnetische oder optische Karten oder andere Arten von maschinenlesbaren Speichermedien handeln, die sich zum Speichern elektronischer oder Computer-ausführbarer Anweisungen eignen. Zum Beispiel können Ausführungsformen der Erfindung als ein Computerprogramm heruntergeladen werden, das von einem räumlich abgesetzten Computer (z. B. einem Server) zu einem anfordernden Computer (z. B. einem Client) mittels Datensignalen über einen Kommunikationslink (z. B. ein Modem oder eine Netzwerkverbindung) übertragen werden kann.
-
Wenn in der Spezifikation von „eine Ausführungsform”, „einigen Ausführungsformen” oder „anderen Ausführungsformen” die Rede ist, so bedeutet das, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Eigenschaft, die in Verbindung mit den Ausführungsformen beschrieben werden, in mindestens einigen Ausführungsformen, aber nicht unbedingt in allen Ausführungsformen enthalten ist. Die verschiedenen Erwähnungen von „eine Ausführungsform”, „einigen Ausführungsformen” oder „anderen Ausführungsformen” beziehen sich nicht unbedingt alle auf dieselben Ausführungsformen. Wenn die Spezifikation aussagt, dass eine Komponente, ein Merkmal, eine Struktur oder eine Eigenschaft enthalten sein „kann” oder „könnte”, so müssen die bestimmte Komponente, das bestimmte Merkmal, die bestimmte Struktur oder die bestimmte Eigenschaft nicht unbedingt enthalten sein. Wenn in der Spezifikation oder dem Anspruch von „einem” Element gesprochen wird, so bedeutet das nicht, dass nur ein einziges der Elemente vorhanden ist. Wenn in der Spezifikation oder dem Anspruch von „einem zusätzlichen” Element gesprochen wird, so schließt das nicht aus, dass es mehr als eines des zusätzlichen Elements gibt.
-
Obgleich die Erfindung in Verbindung mit konkreten Ausführungsformen beschrieben wurde, fallen dem Durchschnittsfachmann im Licht der obigen Beschreibung viele Alternativen, Modifizierungen und Änderungen an diesen Ausführungsformen ein. Es ist beabsichtigt, dass die Ausführungsformen der Erfindung alle derartigen Alternativen, Modifizierungen und Änderungen unter dem weit gefassten Geltungsbereich der beiliegenden Ansprüche zusammenführen.