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?
Gast
#740935
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.
Gast
#748557
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!
Gast
#750582
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
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.