Artikel-ID: 000079277 Inhaltstyp: Fehlerbehebung Letzte Überprüfung: 11.09.2012

Warum hält der Arria® II GX Transceiver CDR, der im automatisch gesperrten Modus konfiguriert ist, das rx_freqlocked Signal in einem anderen Modus als dem PCIe-Modus aufrecht?

Umgebung

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung

Es kann vorkommen, dass rx_freqlocked Signal aufgrund eines CDR-Sperrproblems, das durch einen Softwarefehler in Quartus II 10.0 SP1 und früheren Versionen verursacht wird, in einer hohen Position feststeckt. Dieses Problem konnte in allen Modi mit Ausnahme des PCIe-Modus beobachtet werden. SAS/SATA oder Anwendungen, die rx_signaldetect Signal verwenden, benötigen möglicherweise zusätzliche Problemumgehungen.

Eine Erklärung, warum die Arria® II GX CDR-Einheit das rx_freqlocked Signal in einem anderen Modus als dem PCIe-Modus beibehalten kann, finden Sie im Arria II GX Errata Sheet (PDF).

Um dieses Problem zu umgehen, laden Sie den entsprechenden Patch über die folgenden Links herunter und installieren Sie ihn. Die Softwarelösung zur Behebung dieses Problems ist vollständig in die Quartus II-Softwareversionen nach 10.0 SP1 integriert, sodass in einer späteren Softwareversion kein Patch erforderlich ist.

Beachten Sie, dass die Software-Patches nicht mit bestimmten früheren Patches kompatibel sind, die unten angegeben sind. Wenn Sie einen dieser inkompatiblen Patches verwenden, überprüfen Sie die alternative Lösung mit der in Abbildung 1 dargestellten und unten beschriebenen Reset-Sequenz, oder stellen Sie eine Serviceanfrage bei mysupport.altera.com, wenn Sie einen kompatiblen Patch benötigen.

Nach der Installation des Patches können Sie den Quartus II Software-Assembler einfach erneut ausführen, ohne eine vollständige Kompilierung durchführen zu müssen.

Lösung

Hinweis: Wenn Sie das rx_signaldetect Signal nicht verwenden, ignorieren Sie das 64k parallele Taktzyklus-Timing und befolgen Sie nur die folgenden Schritte.

  1. Setzen Sie die rx_analogreset und die rx_digitalreset Signale durch.
  2. Die rx_freqlocked[0..n-1]-Signale werden niedrig, was darauf hinweist, dass die Transceiver an den Referenztakt gebunden sind (Lock to Reference).
  3. Deaktivieren Sie das rx_analogreset Signal. Stellen Sie sicher, dass Daten an den Empfängereingängen vorhanden sind, bevor Sie das rx_analogreset Signal deaktivieren. Wenn Sie den rx_signaldetect Port verwenden, können Sie dem Timing-Diagramm wie oben vorgeschlagen folgen. Wenn Sie das rx_signaldetect Signal nicht verwenden, lesen Sie den folgenden speziellen Hinweis zum Erkennen des Vorhandenseins von Daten in Ihrem RX-Puffer.
  4. Die rx_freqlocked[0..n-1]-Signale werden hoch, was darauf hinweist, dass die Transceiver auf Daten gesperrt sind.
  5. Etwa 4 μs (tLTD_Auto) nach dem letzten rx_freqlocked das Signal hoch geht, deaktivieren Sie das rx_digitalreset Signal.

Besonderer Hinweis

Verwenden Sie eine oder mehrere der folgenden Methoden, um festzustellen, ob Daten im RX-Puffer vorhanden sind.

  1. Die Signalerkennung ist in den Modi PCIe und Basic verfügbar. Sie können rx_signaldetect Signal als Verlust oder Vorhandensein eines Verbindungsindikators überwachen. rx_signaldetect wird bestätigt, ob gültige Daten im RX-Puffer vorhanden sind.
  2. Sie können einen PPM-Detektor im Gerätekern für Modi implementieren, die keine Signalerkennung haben, um die Verbindung zu überwachen. Mit dem PPM-Detektor können Sie feststellen, ob gültige Daten über den Link vorhanden sind oder nicht.
  3. Datenbeschädigung oder RX-Phase comp fifo Überlauf/Unterlauf-Bedingung in der Benutzerlogik kann auf gültige oder ungültige Daten im RX-Puffer hinweisen.

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.