Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Last revision Both sides next revision | ||
dtpr_versuch_3 [2014/03/28 15:02] beckmanf first |
dtpr_versuch_3 [2016/05/11 15:25] beckmanf make based simulation added |
||
---|---|---|---|
Line 77: | Line 77: | ||
Wenn sie danach das Waveformfenster anschauen sehen Sie den zusätzlichen Simulationsvektor. | Wenn sie danach das Waveformfenster anschauen sehen Sie den zusätzlichen Simulationsvektor. | ||
+ | ==== Simulation mit Modelsim - Aufsetzen des Projektes mit Make ==== | ||
+ | Wie bei der Synthese mit Quartus kann auch die Simulation mit make gestartet werden. | ||
+ | |||
+ | <code> | ||
+ | cd | ||
+ | cd digitaltechnikpraktikum | ||
+ | cd sim | ||
+ | cd ledsw | ||
+ | </code> | ||
+ | |||
+ | Wenn Sie im Simulationsverzeichnis einfach "make" eintippen, dann werden die möglichen make targets gezeigt. | ||
+ | |||
+ | <code> | ||
+ | fritz@ubuntu:~/projects/digitaltechnikpraktikum/sim/ledsw$ make | ||
+ | "make" does intentionally nothing. Type: | ||
+ | "make mproject" to create a new modelsim project only | ||
+ | "make compile" to compile all VHDL sources in batch mode | ||
+ | "make modelsim" to start modelsim with graphical user interface | ||
+ | "make sim" to start modelsim gui with the top testbench of the project | ||
+ | "make clean" to remove all generated files | ||
+ | </code> | ||
+ | |||
+ | Sie können das Projekt mit den zugehörigen Dateien aufsetzen und die graphische Benutzeroberfläche mit | ||
+ | |||
+ | <code> | ||
+ | make modelsim | ||
+ | </code> | ||
+ | |||
+ | starten. Wenn Sie gleich alle Toplevelsignale in das Waveformfenster übertragen und die Simulation starten wollen, dann können Sie das mit | ||
+ | |||
+ | |||
+ | <code> | ||
+ | make sim | ||
+ | </code> | ||
+ | |||
+ | Wenn ihr Code allerdings noch Fehler enthält, dann wird die graphische Oberfläche nicht gestartet. Sie können dann besser mit "make modelsim" die GUI starten und dann dort mit "Compile->Compile All" die VHDL Dateien übersetzen. Mit | ||
+ | |||
+ | <code> | ||
+ | make clean | ||
+ | </code> | ||
+ | |||
+ | werden alle temporär erzeugten Dateien gelöscht. | ||
+ | |||
+ | In der Datei [[https://git.etech.fh-augsburg.de/friedrich.beckmann/digitaltechnikpraktikum/blob/master/sim/ledsw/makefile|makefile]] wird der Name des Projektes festgelegt. Aus dem Projektnamen wird ein Name für die Testbench nach dem Muster t_<project>.vhd abgeleitet. Zusätzlichen werden alle Dateien, die in der Datei [[https://git.etech.fh-augsburg.de/friedrich.beckmann/digitaltechnikpraktikum/blob/master/sim/ledsw/makefile.sources|makefile.sources]] aufgelistet sind, zu dem Projekt hinzugefügt. Hier müssen also alle Dateien aufgelistet werden, die zu dem Projekt gehören. | ||
+ | |||
+ | In dem Beispiel hier sind ist die Datei [[https://git.etech.fh-augsburg.de/friedrich.beckmann/digitaltechnikpraktikum/blob/master/src/t_ledsw.vhd|t_ledsw.vhd]] die Testbench und [[https://git.etech.fh-augsburg.de/friedrich.beckmann/digitaltechnikpraktikum/blob/master/src/ledsw_rtl.vhd|ledsw_rtl.vhd]] die Datei, die später für das FPGA synthetisiert wird. |