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

Kann es zu einer DQS-Bus-Aushändigung kommen, wenn auf mehr als einen DDR-Speicher mit dem Altera DDR SDRAM Controller v1.2.0 zugegriffen wird?

Umgebung

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung

Ja. Wenn die Zurück-bis-Zurück-Lesezugriffe ausgeführt werden, bei denen der Chip Änderungen zwischen den Zugriffen wählt und die Zeile in der zweiten CS bereits geöffnet ist, besteht das Potenzial für einen Bus-Streit. Nachfolgend finden Sie eine Situation, in der Streit auftreten kann, wo ACT = Aktivieren und RD = LESEN:

DDR-Seite

AKT A
RD A
AKT B
RD B
RD A

Lokale Seite

Lesen Sie Zeile A in CS1
Zeile B in CS2 lesen
Lesen Sie Zeile A in CS1

Der Controller erkennt, dass die Zeile beim zweiten Lesen in Zeile A bereits geöffnet ist. Daher ist kein ACT erforderlich. Unten finden Sie ein Diagramm, das die dqs-Signale zeigt, die die Lesedaten begleiten, während sie vom Speicher in den FPGA zurückgeführt werden (an dem Punkt, an dem RD B sofort von RD A gefolgt wird).

Das Ergebnis ist, dass das Lesen von CS2 verloren geht. Die Lösung besteht darin, ein NOP wie folgt einzulegen:

DDR-Seite
AKT A
RD A
AKT B
RD B
NOP
RD A

Lokale Seite
Lesen Sie Zeile A in CS1
Zeile B in CS2 lesen
nop (die Anfrage für 1 Zyklus nicht geltend machen)
Lesen Sie Zeile A in CS1

Für v1.2.0 des Altera DDR SDRAM Controller-Kerns muss dies vom Benutzer erfolgen. Für v2.0 des Kerns erfolgt dies automatisch und wird für den Benutzer transparent.

Zugehörige Produkte

Dieser Artikel bezieht sich auf 1 Produkte

Stratix® FPGAs

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.