HyperRAM für AMD

OP #7692962
Lesenswert?

Es gibt endlich eine gute Lösung für HyperRAM für AMD 7-series FPGA's:

https://github.com/MJoergen/HyperRAM

da kriegt man den IP Core. 16-bit Avalon bus :(

Damit man es mit Vivado IPI verwenden kann ist aber noch ein bisschen was zu tun.

  1. man muss den IP core mit IP Packager in IP catalog core umwandeln, oder dann IPI attributes für Avalon und GPIO eintragen, ich habe die attributen gesetzt. Das reicht aus, wird erkannt ordentlich.

  2. man muss den avm_decrease nehmen:

https://github.com/MJoergen/HyperRAM/blob/main/src/Example_Design/avm_decrease.vhd

und mit IP packager in IP core umwandeln, dabei ist sehr wichtig bei dem slave avalon bus ein speicherbereich von 8M zu definieren.

  1. mann nimmt AXI AMM Bridge, und verbindet die Avalon buses. Dabei muss man beachten das der avm_decrease eine basis address bekommt in Address editor

  2. dann nimmt man eine "Slice" IP und schneidet bei avalon address bus zwischen den AXI AMM und avm_decrease 2 unteren bits weg! Das ist ein AMD errata, habe in quellcode gesehen.

Das wars, jetzt hat man ein MicroBlaze oder Zynq projekt mit HyperRAM.

OP #7693010
Lesenswert?

🍅🍅 🍅. schrieb:

Geil, mir reichts aber schon, wenn ich das gammlige 32kx8 SRAM an meinen MaxII CPLD rangefrickelt habe ;-)

Ist wenigstens ehrliche Arbeit, ohne lamen IP Core!

Das HyperRAM ist ein mieser biest, wenn man da den datenblatt nicht wirklicht liest versteht man nicht warum HyperRAM IP core gar nicht so einfach ist.

es geht um tCKD parameter was bei 100MHz bus takt von 1 bis 7 ns sein kann.

Dass heist die zeit von clock edge bis zu daten kann sich ändern um 1.2 mal die bit dauer. Das ist das hauptproblem bei HyperRAM, es gibt 4 unterschiedliche lösungen für dieses problem. RWDS strobing being woomglich die beste lösung, wird hier auch verwendet.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren