Forum: FPGA, VHDL & Co. FPGA <= DMA => PowerPC - 16/32bit?


von Andreas B. (loopy83)


Lesenswert?

Hallo,

ich wende mich erneut mit meinem Problem an dieses Forum.

Ich plane einen FPGA (Spartan 3A DSP) mit einem PowerPC (440EPx) zu 
verheiraten. Ziel ist es, dass der PPC via DMA Daten vom FPGA abfragen 
kann, um sie im DDR2 RAM abzulegen/zu speichern.

Nun bin ich mir nicht sicher, ob ich richtig liege, wenn diese 
Konnektivität vom EBC - external Buscontroller - 32bit verwaltet wird.

Dazugehörioge Signale an PPC sind:
PerAddr[0:31]
PerPLast#
PerClk
PerCS[0:5]#
PerData[0:31]
PerDataPar[0:3]
PerErr
PerOE#
PerReady
PerR/#W
PerWBE[0:3]#
ExtReset

Eine weitere Frage ist, ob ich diesen 32bit But mit einem 16bit SDRAM 
Interface kombinieren kann. Ich möchte lediglich nur einen DDR2 Baustein 
verwenden, der nur 16bit Daten zur Verfügung stellt. Ist es möglich 
diesen 16bit Bus mit dem EBC (32bit) zu kombinieren?

Gehe ich recht in der Annahme, dass am gleichen Bus noch das NOR Flash 
angeschlossen wird, was ja auch nur 16bit Daten hat?

Die letzten 16bit Daten des Busses sind ja doppelt belegt mit dem USB 
Interface. Das werde ich nicht nutzen... kann ich also den Bus einfach 
auf 16bit "beschneiden", dass es keinerlei Probleme mit dem 16bit SDRAM 
Interface gibt?

Ich wäre für Hinweise und Antworten dankbar!

MfG Andreas

von Antti (Gast)


Lesenswert?

1) DDR2 mit S3A geht, aber muhsam, und nicht mit max DDR2 data rate
2) DDR zugriffe lesen 2 worter per clock, dh fur 16 bit bus 32 bits per 
clock, aber meist wird es noch mehr rausgelesen als das, dh, es kommt 
immer mehr von dem DDR2 als 16, ABER da ist grosses overhead per access, 
das 20+ takte fressen kann

das was den PPC angeht must du wohl RTFM machen
was den spartan ip core angeht, da kannst du selber bus width
matching machen wenns notwendig sein sollte

Antti

von Andreas B. (loopy83)


Lesenswert?

FPGA und PPC sind getrennt, also zwei physisch getrennte Chips und der 
DDR2 hängt am PPC. Der FPGA legt nur via DMA die Daten im DDR2 ab. Es 
findet also keine direkte Kommunikation mit dem DDR2 statt, sondern eher 
mit dem DMA Controller.

Danke für deine Antwort :)

MfG Andreas

von Antti (Gast)


Lesenswert?

ja das hatte ich ja so verstanden, bin doch nicht blod
die signale die du hast gibt bei embedded PPC nicht
aber alles was ich sagte ist passend zu deinem problem,

Antti

von Heinze78 (Gast)


Lesenswert?

Was ist denn jetzt der Unterschied zu folgendem Beitrag ?

Beitrag "PPC, Spartan3DSP => DMA/Bus Problem"


Gruß,
Heinze

von Zefix (Gast)


Lesenswert?

Was du brauchst ist ne Nachbildung eines SRAM oder SDRAM im FPGA, 
welcher
am PPC Bus hängt. Wo ist da jetzt das Problem ? Viel Spaß bei
der State Machine ...

von Andreas B. (loopy83)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich wollte lediglich wissen, ob der Bus der richtige ist und ob ich die 
genannten Signale/Pins für die Kommunikation mit dem FPGA verwenden 
kann/muss. Diese existieren auch so wie sie dastehen als Pins am PPC.

Auch habe ich noch Bedenken bzgl. der Busbreiten, die sich aktuell mit 
32bit für die FPGA <=> PPC Kommunikation und 16bit für die PPC <=> DDR2 
Kommunikation nicht decken. Nicht das ich dann irgendwann genau an 
diesem Problem scheitere, weil ich es nicht abgeklärt habe.

Das war die einzige Intension meines Beitrages...

Ich hänge auch gerne noch einmal meine Skizze an, wie ich mir das 
vorgestellt habe. Ich wüßte jetzt auf Anhieb nicht, wieso ich einen 
SDRAM/SRAM im FPGA nachbilden sollte?! Der DDR2 ist doch physisch am PPC 
angeschlossen und in den sollen dann auch die Daten gelangen.

Vielen Dank!

von Heinze78 (Gast)


Lesenswert?

Was ist denn jetzt der Unterschied zu folgendem Beitrag ?

Beitrag "PPC, Spartan3DSP => DMA/Bus Problem"


Gruß,
Heinze ;O))

von Andreas B. (loopy83)


Lesenswert?

Hallo,

dort ging es mir mehr um die Machbarkeit der ganzen Geschichte.

Hier jetzt mehr um die konkrete Umsetzung und die Busanbindungen...

Meinen anderen Beitrag hatte ich auf die Schnelle auch nicht 
wiedergefunden, sonst hätte ich ihn wiederbelebt und dort nachgefragt.

Ich hoffe, auch wenn sich die Beiträge ähneln, dass mir hier geholfen 
werden kann.

MfG Andreas

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
Noch kein Account? Hier anmelden.