Artikel-ID: 000074652 Inhaltstyp: Produktinformationen und Dokumente Letzte Überprüfung: 30.09.2014

Wie kann ich die Eingangs-Taktphasen-Verschiebung zur Erfassung von Daten in der ALTLVDS_RX Megafunktion einstellen?

Umgebung

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung

Die ALTLVDS_RX-Megafunktion bietet eine begrenzte Dropdown-Liste zur Einstellung der Takt- und Datenbe beziehung im Nicht-DPA-Modus.  Der Parameter ist Was ist die Phasenausrichtung von "rx_in" in Bezug auf "rx_inclock". Durch Die Einstellung dieses Parameters berechnet die ALTLVDS_RX-Megafunktion die richtige Erfassungsphase für die seriellen Daten.

Die Phasenwechselwerte basieren auf dem rx_inclock Zeitraum, der je nach Schnittstelle variieren kann.  Folgendes ist rx_inclock Nutzungsszenarien üblich:

  • Ein rx_inclock Zeitraum für alle seriellen Bits pro Wort (Einzel-Datenraten-Takt)
  • Zwei rx_inclock Perioden für alle seriellen Bits pro Wort (Doppel-Datenraten-Takt)
  • Gleiche Anzahl rx_inclock Perioden für alle seriellen Bits pro Wort (volle Datenraten-Taktfrequenz)

Die verfügbaren Phasenwechsel-Auswahlen in der Megafunktion setzen den Capture-Takt auf verschiedene Positionen in den seriellen Daten. Dies basiert auf der Anzahl der rx_inclock Perioden für die Anzahl der seriellen Bits pro Wort (Deserialisierungsfaktor).  Die Möglichkeit, die Phasenverlagerung innerhalb eines einzelnen Datenbitzeitraums anzugeben, hängt davon ab, wie viele rx_inclock Perioden für jedes erhaltene serielle Wort auftreten.

Betrachten Sie beispielsweise eine Schnittstelle mit den folgenden Parametern:

  • Datenrate = 800 Mbit/s
  • Deserialisierungsfaktor = 8
  • rx_inclock = 100 MHz

In diesem Fall gibt es einen rx_inclock Zeitraum für alle erhaltenen 8 seriellen Bits.  Jede von Ihnen gewählte Einstellung in Schritten von 45 Grad in der ALTLVDS_RX Megafunktion (0, 45, 90 Grad usw.) setzt die Erfassungsphase daher an einer anderen Bitposition im seriellen Wort.  Diese Einstellung ändert die Phasenaufnahmeposition nicht innerhalb eines Bitzeitraums.  Jede dieser Auswahlen führt zu einer anderen Wortausrichtung auf der parallelen Seite der Schnittstelle.

Betrachten Sie ein zweites Beispiel mit den folgenden Parametern:

  • Datenrate = 800 Mbit/s
  • Deserialisierungsfaktor = 8
  • rx_inclock = 800 MHz

In diesem Fall gibt es für jede serielle Bit-Phase einen rx_inclock Zeitraum.  Jede Einstellung, die Sie wählen, ändert die Erfassungsphase innerhalb eines einzigen Bitzeitraums.

Es kann Fälle geben, in denen Sie die Erfassungsphase mithilfe der Dropdown-Liste ALTLVDS_RX Megafunction für die Phasenausrichtung "rx_in" in Bezug auf den Parameter "rx_inclock" an eine Position setzen möchten, die nicht möglich ist.

Lösung

Die mögliche Gesamtanzahl der Aufnahmephasenpositionen hängt vom Deserialisierungsfaktor der Schnittstelle ab.  Für jede serielle Bit-Zeit stehen 8 Phasen ab dem schnellen Takt zur Verfügung. Der schnelle Takt wird mit der seriellen Bitrate betrieben.

Die Gesamtzahl möglicher Erfassungsphasen beträgt 8 * Deserialisierungsfaktor.

In den oben genannten Beispielen ist der Deserialisierungsfaktor 8, so dass es insgesamt 64 verfügbare Phasenpositionen gibt, um den Capture-Takt über alle 8 Bits des seriellen Wortes zu setzen. Sie können wählen, ob Sie die Erfassungsphase an einer einzigen Bit-Position, an verschiedenen Bitpositionen, oder eine Kombination von beidem festlegen möchten, indem Sie die ALTLVDS_RX Variation-Datei ändern.

Rechtliche Phasenwerte müssen in Schritten sein, die dem Schnelltaktzeitraum entsprechen, geteilt durch 8. Jede 8-Phasen-Shift-Erhöhung ist einer Bitsperiode gleich.  Wenn Sie mit den Parametern aus Beispiel 1 oben den ansteigenden Rand der rx_inclock angeben möchten, die mit dem dritten seriellen Bit des 8-Bit-Wortes ausgerichtet werden sollen, benötigen Sie insgesamt 20 Phasen-Shift-Erhöhungen (8 Phasen-Erhöhungen für jede der ersten beiden Bit-Perioden sowie 4 Phasen-Erhöhungen für die mit der Mitte ausgerichtete ansteigende Edge in der dritten Bit-Zeit).

Der schnelle Takt in diesem Beispiel wird mit 800 MHz betrieben, was der Datenrate entspricht.  Der Schnelltaktzeitraum beträgt 1,25 ns, was pro Phasenwechsel-Erhöhung zu 156,25 PS führt.  Die gesamte erforderliche Phasenverlagerung in diesem Beispiel zur Beschreibung des Eingabe-Takts und des Datenverhältnisses beträgt 20 * 156,25 ps = 3,125 ns.

Sobald Sie den gewünschten Phasenumschaltwert berechnet haben, geben Sie ihn in die ALTLVDS_RX-Variation-Datei ein.  Öffnen Sie die Datei und suchen Sie nach dem folgenden Parameter:

Für Verilog: ALTLVDS_RX_component.inclock_phase_shift

Für VHDL: inclock_phase_shift

Geben Sie den von Ihnen berechneten Wert ein, die Einheiten sind 100 %.

Hinweis: Der bedeutendste Bit (MSB) der seriellen Daten ist möglicherweise nicht der MSB der deserialisierten parallelen Daten auf dem rx_out Port der ALTLVDS_RX-Megafunktion.  Sie müssen den Bitslip-Schaltkreis verwenden, um die Wortgrenze auf der parallelen Seite festzulegen.

Weitere Informationen finden Sie im Abschnitt "Wortgrenzen ausrichten" des LVDS SERDES Sender/Empfängers (ALTLVDS_TX und ALTLVDS_RX) Megafunctions Benutzerhandbuch (PDF).

Zugehörige Produkte

Dieser Artikel bezieht sich auf 1 Produkte

Intel® programmierbare Geräte

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.