Artikel-ID: 000083851 Inhaltstyp: Fehlerbehebung Letzte Überprüfung: 04.04.2014

Warum sehe ich falsche Lesedaten, wenn ich einen Hard Memory Controller mit mehreren MPFE-Ports verwende?

Umgebung

    Intel® Quartus® II Anmeldungs-Edition
    DDR3 SDRAM Controller mit UniPHY Intel® FPGA IP
BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung

Beim Ausführen von Schreib- und Lesetransaktionen an den MPFE-Ports des Hard Memory Controller (HMC) können Sie beobachten, dass die Lesetransaktionen vor den Schreibtransaktionen ausgeführt werden, selbst wenn die Schreibpriorität höher ist. Daher können die gelesenen Daten falsch sein.

Zum Beispiel, wenn Ihre HMC MPFE-Ports wie folgt eingestellt sind:

Port0 ist schreibgeschützt konfiguriert, die Priorität ist auf 7 und die Gewichtung auf 0 gesetzt
Port1 ist schreibgeschützt konfiguriert, die Priorität ist auf 1 und die Gewichtung auf 0 gesetzt

Wenn Sie gleichzeitig eine Schreibanforderung auf Port0 ausführen, um 'addr0' mit den Daten 'data0' zu adressieren, und eine Leseanforderung auf Port1, um 'addr0' zu adressieren, sollte das Zurücklesen der Daten immer 'data0' sein. In der HMC gibt es ein Problem, bei dem die gelesenen Daten nicht den Erwartungen entsprechen.

Lösung

Die Problemumgehung besteht darin, die Ausführung von Leseanforderungen für einen Adressbereich zu verzögern, bis alle Schreibanforderungen an denselben Adressbereich abgeschlossen sind. Ein alternativer Ansatz besteht darin, aus einem anderen Speicherbereich zu lesen als dem, in den geschrieben wird.

Zugehörige Produkte

Dieser Artikel bezieht sich auf 11 Produkte

Cyclone® V ST SoC-FPGA
Arria® V ST SoC-FPGA
เอฟพีจีเอ Arria® V GX
เอฟพีจีเอ Arria® V GT
Cyclone® V SX SoC-FPGA
เอฟพีจีเอ Cyclone® V GT
เอฟพีจีเอ Cyclone® V GX
เอฟพีจีเอ Arria® V GZ
Arria® V SX SoC-FPGA
เอฟพีจีเอ Cyclone® V E
Cyclone® V SE SoC-FPGA

1

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 es Widersprüche zwischen der englischsprachigen Version dieser Seite und der Übersetzung geben, gilt die englische Version. Englische Version dieser Seite anzeigen.