mikrocontroller.net

Forum: FPGA, VHDL & Co. Timing Simulation


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi @all

ich schreibe gerade an meiner Diplomarbeit.

In meiner Diplomarbeit geht es um ein FPGA-Projekt. Dieses habe ich
auch schon fast fertig, jedoch funktioniert nur die
"funktionale-Simulation". Wenn ich das erzeugte Bit-File auf den FPGA
hochlade, dann funktioniert viele Module nicht mehr. Nun versuche ich
den Fehler zu finden. Diese ist recht schwierig, wenn das Projekt schon
recht groß ist. Deshalb möchte ich eine Timing-Simulation durchführen.
Ich verwende das Tool "Protel DXP 2004". Falls jemand das Tool
benutzt und weiß wie ich die Timing-Simulation durchführen kann dann
schreibt mir bitte. Das Problem ist das ich mit "Protel DXP 2004"
dein "sdf-file" (standard delay file) erzeugen kann (wird für die
Timing-Simulation benötigt). Deshalb muss ich mit Protel DXP 2004 eine
edif-Netzliste erzeugen. Diese Netzliste lade ich in Xilinx ISE 6.3 und
erzeuge dann mit Xilinx ISE 6.3 ein "sdf-file" Wenn ich dieses dann
aber in Protel DXP 2004 verwende, dann kommt es zu Problemen.

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,

wenn Du Probleme mit DXP bei der Simulation hast, nimm doch Modelsim
von Mentor. Xilinx bietet eine kostenlose Version an. Mit dem hab ich
heute eine Post P&R Simulation durchgeführt.

Gruß Jörn
P.s.: Solle man die Post P&R Simulation nicht bevor man das File in das
FPGA programmiert machen  ;)

Autor: Alex1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jörn,

ich habe auch Probleme mit ModelSim:
Ich habe mir eine voellig einfachen Addressdekoder gemacht. Diesen
moechte ich mit ModelSim simulieren.
Ich habe drei Eingänge und 2 Ausgänge. Diesen 3 Eingänge moechte ich
jeweils einen Takt geben, so das ich die 2 Ausgaenge betrachten kann.
Wie fange ich es an?

Alex

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich dachte immer modelsim ist eine eigenständige Software und kostet
viel Geld. Ich werde es aber mal ausprobieren.

Kann man bei Modelsim meine Testbench benutzen oder muss ich dort ein
anderes File erstellen?

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Alex,

hast Du schon eine Testbench für Deinen Adressdecoder geschrieben?
Diese ist der erste Schritt zum die Funktion zu verifizieren.

Gruß Jörn

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Michael,

Es gibt eine Xilinxedition von Modelsim. Diese kannst Du auf HP von
Xilinx, nachdem Du Dich registiert hast, runterladen. Die Performance
gegenüber der Orginal Modelsimversion ist eingeschränkt.

Deine Testbench kannst Du weiter benutzten. Du benötigt für die
Simultion noch die xxx_timesim.vhd und xxx_timesim.sdf Dateien, die von
ISE erzeugt werden.

Gruß Jörn

Autor: Alex1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jörn!
Was heisst ein Testbench geschrieben?
Ich habe mir ein Bench erstellt. Genau da wollte ich ja meine Eingänge
beschreiben, bzw. das Signal der Eingänge. Das ging aber nur bei dem
ersten.
Wie mache ich das richtig? Das Tutorial hat mich auch nicht wirklich
weitergebracht.

Danke
Alex

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Alex,

kannst Du mir mal Deinen Quellcode schicken oder ihn posten.

Gruß Jörn

Autor: Michael (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
An Alex1

Mit einer Testbench kann man seine Software debuggen.

Die Testbench wird für eine Simulation benötigt. In ihr steht die
Zustände der Eingänge im Topdesign. (das heist du hast auf Deinem
obersten Schaltplan Ports.) Wenn Du z.B. einen AD-Wandler hast, dann
steuerst Du den AD-Wandler mit dem FPGA an. Nun möchtest Du das Signal,
welches der AD-Wandler liefert weiter verarbeiten. Damit Du die
Weiterverarbeitung Simulieren kannst, erstellt man eine Testbench. In
der Testbench steht dann z.B. das der Port "DATA-ADC" (Daten die vom
AD-wandler kommen) für 35ns den Zustand "1" haben soll ( DATA_ADC <=
'1'; wait for 35ns; Durch die Testbench kannst Du dann die
Datenverarbeitung simulieren, da Du Dir selber Werte erzeugst, die der
AD-Wandler liefert. Durch die Simulation wirst Du außerdem schnell
grobe Fehler erkennen.

Ich hoffe ich konnte Dir damit weiterhelfen (Sorry für die
Rechtschreibfehler aber ich habe einfach drauf losgeschrieben)

Gruß Micahel

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zuerst habe ich ein Project mit ISE 6.2 erstellt. Anschließend habe ich
eine die "Simulate Post-Place & VHDL Model" (Timing Simulation) aus
ISE gestartet. Modelsim öffnet sich und fängt an zu arbeiten. Bleibt
dann aber stehn und zeigt folgenden Fehler an:

Error (vcom-19) Failed to access library 'simprim' at 'simprim'
No such file or directory
Error c:/programme/modelsim/win32/vcom failed

Was mache ich falsch? (benutze Modelsim 6.0a SE)

Michael

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die Library simprim wird zur Timing Simu verwendet.

Kann sein das die bei Dir noch nicht eingebunden ist.
Frag mich jetzt net, wie man die einbinded (manuals ...) bin froh das
es bei mir jetzt funktioniert.


Thomas

Autor: Alex1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo...
Danke!

Ich glaube, ich habe es geschafft. Zumindest zeigen mir jetzt die
Ausgaenge auch Werte an.

Ich hatte das "test bench waveform" benutzt.

mal schauen, ob ich noch weiter komme. ;-))

Alex

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.