Forum: FPGA, VHDL & Co. Altera Speichercontroller ist so langsam in Simulation


von Control (Gast)


Lesenswert?

Hallo,

für mein Design verwende ich das Modell des Speichercontrollers von 
Altera für DDR2 SDRAM. Leider schluckt die Simulation dieses Controllers 
etwa 95% der Simulationszeit (und ich verwende schon ein komplexes 
Design).
Gibt es eine einfache Möglichkeit diesen Controller durch einen 
schnelleren, dafür weniger genauen Controller zu ersetzen? Wenn ja, wo 
finde ich den?

Danke!

von Duke Scarring (Gast)


Lesenswert?

Wenn Du den DDR-Controller getestet hast, könntest Du ihn per generic 
abschalten, so daß er nicht mehr mit simuliert wird.

Eventuell brauchst Du ein funktionelles Modell, welches den Controller + 
Speicher ersetzt. Aber das sollte nicht allzu schwierig sein, oder?

Duke

von Control (Gast)


Lesenswert?

Duke Scarring schrieb:
> Wenn Du den DDR-Controller getestet hast, könntest Du ihn per generic
> abschalten, so daß er nicht mehr mit simuliert wird.

Aber dann habe ich ja keinen DDR-Controller mehr. :-( Am liebsten wäre 
mir ein generic, dass die taktgenaue Simulation deaktiviert und nur noch 
ein funktionales Modell laufen lässt. Sowas gibt es aber nicht, oder?

Duke Scarring schrieb:
> Eventuell brauchst Du ein funktionelles Modell, welches den Controller +
> Speicher ersetzt. Aber das sollte nicht allzu schwierig sein, oder?

Meinst du selber entwickeln oder gibt es da schon was Fertiges?
An selbst entwickeln habe ich schon gedacht. Ich möchte aber an den 
Schnittstellen meiner Komponenten möglichst wenig bis gar nichts ändern.

In meinem Design habe ich eine Schreib- und eine Lesekomponente, die auf 
den Speicher zugreifen, die sich auf zwei unterschiedlichen 
Hierachiestufen befinden. Ich würde gerne in der Schreibkomponente ein 
Array deklarieren, auf dessen Inhalt ich ich in der Lesekomponente 
zugreifen kann. In C würde ich dafür einen Header einbinden und das 
Array als static oder extern deklarieren. Kann man sowas in VHDL auch 
irgendwie realisieren?

von Duke Scarring (Gast)


Lesenswert?

Control schrieb:
> Meinst du selber entwickeln oder gibt es da schon was Fertiges?
Sowohl als auch. Schau doch mal ob Du unter [1] bzw. den dort 
angegebenen Links schon fündig wirst.

Duke

[1] http://www.vhdl.org/comp.lang.vhdl/FAQ1.html#3.2

von Control (Gast)


Lesenswert?

Danke! Ich werde mir das mal genauer anschauen, auch wenn ich auf den 
ersten Blick nicht fündig geworden bin.

Ist das eigentlich normal, dass die Simulation eines Speichercontrollers 
so lange dauert? Ich vermute bei meinem Design (und das ist schon 
ziemlich groß) ist Modelsim sogar mehr als 95% der Zeit damit 
beschäftigt den Controller zu simulieren... :-(

von D. I. (Gast)


Lesenswert?

Control schrieb:
> Danke! Ich werde mir das mal genauer anschauen, auch wenn ich auf den
> ersten Blick nicht fündig geworden bin.
>
> Ist das eigentlich normal, dass die Simulation eines Speichercontrollers
> so lange dauert? Ich vermute bei meinem Design (und das ist schon
> ziemlich groß) ist Modelsim sogar mehr als 95% der Zeit damit
> beschäftigt den Controller zu simulieren... :-(

Ja so ne simulation geht ewig

von Duke Scarring (Gast)


Lesenswert?

Control schrieb:
> Ist das eigentlich normal, dass die Simulation eines Speichercontrollers
> so lange dauert?
Kommt darauf an, wie komplex der Controller ist. Wenn Du Pech hast ist 
das Simulationsmodell aus der Netzliste erzeugt und da sind dann viele 
kleine Primitives z u siumlieren :-/

Duke

von Control (Gast)


Lesenswert?

Duke Scarring schrieb:
> Wenn Du Pech hast ist
> das Simulationsmodell aus der Netzliste erzeugt und da sind dann viele
> kleine Primitives z u siumlieren :-/

Es sind keine EDIF-Dateien in dem Ordner, nur von Quartus generierte 
Verilog-Dateien... :-(

von Control (Gast)


Lesenswert?

Und die Verilog-Dateien des Speichercontrollers nehmen 24,2 MB ein! Ist 
mir unbegreiflich, warum das so groß sein muss...

von Control (Gast)


Lesenswert?

Sorry Zahlendreher: es sind 22,4 MB.

von Duke Scarring (Gast)


Lesenswert?

Control schrieb:
> Und die Verilog-Dateien des Speichercontrollers nehmen 24,2 MB ein!
Das klingt nach verilogisierter Netzliste...
Bei der Größe würde ich mich über eine langsame Siumlation nicht 
wundern.

> Ist mir unbegreiflich, warum das so groß sein muss...
Frag doch mal den Hersteller ob es auch anders geht.

Duke

von Control (Gast)


Lesenswert?

Duke Scarring schrieb:
> Das klingt nach verilogisierter Netzliste...

Die größte Datei lautet "alt_<variation 
name>_alt_mem_ddrx_controller_top.vho". VHO sind doch Netzlisten, oder?

Es werden zwar noch eine ganze Reihe weiterer Verilog- und VHDL-Dateien 
von Quartus generiert, doch leider funktioniert der Controller nicht 
ohne diese VHO-Datei. :-( Habt ihr das gleiche Problem?

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.