wie kann man Daten aus dem DDR2 RAM verarbeiten? Eine kurze blöde Fragen, wenn man weiss wie es geht. Die Daten werden in den RAM mit steigender und fallender Flanke übertragen. Alle VHDL Anweisungen sind nur mit einer Flanke möglich. (Ausnahme CoolrunnerII). Der FPGA kann doch nur Daten mit ein Flanke synchronisieren. Gibt es einen Multiplexer, der die Takrate wieder reduziert? Oder wo ist der Haken an der Technik?
Es gibt DDR Flipflops an den IO Ports, die die Daten zu fallender und steigender Flanke abtasten können. Intern im FPGA gibt es dann zwei Datenpfade.
Dann ist der DDR flip-Flop ein Multiplexer. Wie ich es mir gedacht habe. Gibt es dafür Beispiel Code? Da es hier um ein zeitkritsches Verhalten geht.
DDR2 ist viel zu komplex für einen CPLD. Das können nur noch FPGAs. Z.B. non-volatile FPGAs XP2 von Lattice. Die I/O struktur beinhaltet eine FF-Struktur, die aus einigen D-Flops und Multiplexern die Datan auf beiden Clockflanken extrahieren koennen. Die I/Os sollten sehr hohe Geschwindigkeiten unterstützen und den für DDR2 notwendigen differentiellen Signalstandard unterstützen. Ein DDR2 Controler benötigt in einem FPGA ca. 2000 Register und für eine 32bit implementation 236 I/Os. Cheers!
Hallo mich ihneressiert dieses Thema auch. Leider hatte ich noch nicht genug Zeit, mich einzuarbeiten. Auf der Suche nach Informationen ist mit dieser vielversprechende Link in die Finger geraten. Intel reference design http://www.intel.com/design/iio/applnots/appndx_d.pdf
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.