Fehlermeldung Modelsim

OP #794085
Lesenswert?

Hallo,

ich benutze Xilinx Foundation 8.1i SP3 und Modelsim XE III 6.1e.
Nachdem ich letztlich ein bißchen rumprobiert hatte, um ein
RAM-Modell zum laufen zu kriegen, bekomme ich jetzt bei "normalen"
Testbenches folgende Fehlermeldung(en):

# ** Error: (vcom-13) Recompile 
C:/Modeltech_xe_starter_6.1e/xilinx/vhdl/unisim.vcomponents because 
C:\Modeltech_xe_starter_6.1e\win32xoem/../ieee.std_logic_1164 has 
changed.
# ** Error: dcm_1.vhd(27): (vcom-1195) Cannot find expanded name: 
'unisim.vcomponents'.
# ** Error: dcm_1.vhd(27): Unknown record element "vcomponents".
# ** Error: dcm_1.vhd(30): VHDL Compiler exiting
# ** Error: C:/Modeltech_xe_starter_6.1e/win32xoem/vcom failed.

Ich habe die Xilinx Libraries nochmal neu runtergeladen und entpackt
und habe den Befehl "vcom -force_refresh -work xilinxcorelib" als 
mögliche Lösung gefunden und probiert, hat aber beides nichts geändert.
Ich habe auch schon Modelsim neu installiert, das hat aber auch nichts 
gebracht.

Kann mir dazu jemand einen Tipp geben?
Gast #794413
Lesenswert?

Ich klick in solchen fällen die libraries, über die er meckert, im 
"Library"-Tab vom Modelsim mit der rechten Maustaste an und drücke auf 
"refresh", das hat bisher die Probleme gottseidank immer gelöst.

Und DCM simulieren kann auch zu seltsamen Problemen führen, wir hatten 
ein funktionierendes Design wo ein Takt und ein Clock Enable aus dem 
selben Counter erzeugt wurden. Lief problemlos.

Dann stellten wir auf eine DCM um, weil der Takt zu dem Clock Enable in 
der Phase verschiebbar sein sollte. Auf einmal wurde der durch das Clock 
Enable gesteuerte Prozess immer eine Taktflanke zu früh ausgewertet. Im 
Wave-Window kam das Signal immer noch wie zuvor, aber die Auswertung des 
Prozesses war ganz klar eine Flanke zu früh. Nach mehrfachem Kontakt mit 
Mentor war die Erklärung, dass es sich um eine Race Condition bei den 
Delta Delays handelt, irgendwie hat die DCM dazu geführt, dass das 
CE-Signal auf einmal im selben Delta Cycle zugewiesen wird in der auch 
die Clock für den Prozess zugewiesen wird.

Ich habs dann mit "after"-Statements gelöst, ist allerdings nicht die 
reine Lehre der funktionalen Simulation.

Für solche Probleme ist übrigens das "List"-Window sehr hilfreich.

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