Forum: FPGA, VHDL & Co. Spartan 3e und MPMC


von noone (Gast)


Lesenswert?

Hallo MC.net Gemeinde.

Ich versuche zzt. ein Modul zu "Basteln" welches sich Daten aus dem MPMC 
holt. Hierbei benutze ich das NPI.  In meiner Simulation mit einem 
Virtex4 und einem Custom DDR Simulations Modul funktioniert alles 
einwandfrei.
Wenn ich dies nun aber auf ein Spartan3E Starter Kit Implementieren 
möchte, funktioniert die Kommunikation nicht mehr. Leider habe ich noch 
kein DDR Simulations Modell gefunden, welches zum Spartan passt. Hat 
hier jmd eine Idee bzw. könnte mir einen Link geben? Was mach ich in der 
Simulation mit dem 
"fpga_0_DDR_SDRAM_DDR_DQS_Div_I_DDR_SDRAM_DDR_DQS_Div_O" pin?

Währe nett wenn mit jmd. helfen könnte.

von Joko (Gast)


Lesenswert?

'der Pin'
"fpga_0_DDR_SDRAM_DDR_DQS_Div_I_DDR_SDRAM_DDR_DQS_Div_O"

wird/werden wahrscheinlich in Wirklichkeit 2 Pins sein:
"fpga_0_DDR_SDRAM_DDR_DQS_Div_I" und "fpga_0_DDR_SDRAM_DDR_DQS_Div_O"

Spartan3/3E/3A brauchen (wenn man das MIG-Tool verwendet) einen
'feedback', um die Daten vom Memory einsynchronisieren zu können:

schließe "fpga_0_DDR_SDRAM_DDR_DQS_Div_O" (auf dem PCB über eine 
Leitung,
die elektrisch 'so lang' ist, wie die Summe von "clk(FPGA)->DDR" + "DQS
(DDR)-> FPGA") an "fpga_0_DDR_SDRAM_DDR_DQS_Div_I" an.

In der Simulation verbindest du die beiden Pins einfach

Ansonsten 'geht' jedes DDR-Simulations-modell
  bevorzugt: Micron (jedoch nur als verilog verfügbar)
  auch schon erfolgreich probiert: Hynix (VHDL)


Gruß
Jochen

von noone (Gast)


Lesenswert?

Hey...
jo aus dem mpmc kommen 2 pins ...diese werden aber schon im MHS File zu 
einem zusammen gefügt, weswegen ich einen geschrieben habe.

Dann kann ich bei der Simulation davon ausgehen, dass das so 
funktioniert, da  der mpmc ja seinen ausgang direkt liest. Oder sollte 
ich dies für die Simulation auf 'L' legen? (nicht '0')

Das mit dem jeden ist so die Sache, da die Daten der DDR MOdelle ja auf 
die jeweiligen Eigenschaften angepasst sind und ich eigentlich ungern 
ein anderes Modell, als das was auf dem Board ist, benutzen wollte.

Eine Frage hab ich noch zu den anderen...

Der MPMC arbeitet ja mit der MPMC_clk,welche 100MHZ beträgt und aus dem 
Clock Modul kommt. Wie kann ich nun außerhalb des MicroBlaze an diesen 
Takt kommen? Wenn ich den Pin einfach nach außen verfügbar mache, 
meckert ISE in der Synthese das die Timinigs nicht eingehalten werden 
könne. Ist es sinnvoll einen DCM vor den MicroBlaze zu schalten, und 
diesen mit 100Mhz zu betreiben?

von noone (Gast)


Lesenswert?

hey leute...
ich kann echt nicht mehr ...kann mir bitte einer sagen warum der code 
aus dem anhang nicht funktioniert? alles klappt wunderbar..nur die 
verbindung zum npi nicht :(

ich hab das mit einem virtex4 mal simuliert da klappte das wunderbar 
...nun auf dem spartan nicht mehr ...


währe echt dankbar wenn mir das einer sagen könnte ...

von noone (Gast)


Angehängte Dateien:

Lesenswert?

sry nun mit dem code...

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.