Guten Morgen Zusammen, wir haben die Auflage bekommen, auch die VHDL Sachen in die Jenkins Umgebung zu integrieren, wie die restliche Software unserer Steuergeräte auch. Wir verwenden hier von Lattice die XO3 - ECP3/5 - und Certus FPGAs und die Lattice Diamond Umgebung, hier die 3.12 (automotive Zertifiziert) mit VHDL und ModelSim als Simulation-Test. Das bedeutet für mich, dass man den graphischen Entwicklungs-Workflow nun auf die Konsole bringen muss. Was soweit geht, ist mit Jenkins das Repo auslesen, über die Lattice Diamond TCL Konsole die Synthese, das Place and Route und die Bit-File Generierung zu starten und zu erzeugen. Auch die Erzeugung des *.c - Files aus dem Bit-File geht, damit man den FPGA vom Prozessor aus über SPI laden kann. Was ich nicht hin bekomme ist mit dem Lattice Projekt File ein *.do bzw *.mdo File für die Simulation automatisch zu erzeugen. Wenn man über Diamond den Simulation Wizard aufruft, werden die ganzen notwendigen Files für die Simulation, auch das *.mdo erzeugt. Leider kann ich nirgendwo herausfinden, welche Schritte Diamond mit dem Simulation Wizard durchführt. Was muss man da machen, um über eine Konsole ebenfalls die notwendigen Sachen für die Simulation des VHDL-Projekts zu erzeugen und anschließend das ganze zu starten. Habt ihr mir vielleicht einen Tip, wie man das *.mdo File aus der verkappten Diamond TCL Konsole oder auch über eine Standard Konsole zu erzeugen und dann die Simu zu startet. Vielen Dank im voraus.
Ich starte Modelsim immer separat (also unabhängig von Diamond, Quartus oder ISE). Für einfache Sachen reicht:
1 | vlib work |
2 | vcom *.vhd |
3 | vsim -gui meine_testbench |
Für komplexere Simulationen nehme ich (immer noch) vmk: https://sourceforge.net/projects/vmk/ Ansonsten sehe ich auf die Schnelle im Diamond keine TCL-Kommandos für die Simulation:
1 | > help |
2 | For more information on a specific command, type "help <command>": |
3 | dtc Lattice Diamond Tcl Console extended Tcl commands. |
4 | prj Project Manager extended Tcl commands. |
5 | sys System information Tcl commands. |
6 | ncd NCD extended Tcl commands. |
7 | ngd NGD extended Tcl commands. |
8 | rvl Reveal Inserter extended Tcl commands. |
9 | sbp System builder planner extended Tcl commands. |
10 | rva Reveal Analyzer extended Tcl commands. |
11 | pwc Power Calculator extended Tcl commands. |
12 | pgr Programmer extended Tcl commands. |
13 | psb Pojo2 extended Tcl commands. |
14 | icf Incremental Design Flow Database extended Tcl commands. |
15 | cmp Compile Lattice FPGA simulation libraries. |
16 | eco Physical Design extended Tcl commands. |
17 | |
18 | > help prj |
19 | Project Manager extended Tcl commands |
20 | For more information on a specific command, type hlp command-name: |
21 | |
22 | prj_project Project commands to manipulate project |
23 | prj_src Project source commands to manipulate project sources |
24 | prj_impl Project implementation commands to manipulate implementation |
25 | prj_strgy Project strategy commands to manipulate strategies |
26 | prj_run Project flow running command to run a flow process |
27 | prj_syn Project synthesis tool commands to list or set synthesis tool |
28 | prj_dev Project device commands to list or set the device used in the |
29 | project |
30 | prj_incr Project commands to manipulate incremental design flow |
31 | |
32 | > prj_run Simulation |
33 | Wrong # arg Simulation |
34 | Simulation is not a valid milestone name. |
35 | |
36 | > prj_run -task Simulation |
37 | Wrong # args |
38 | prj_run - Run a milestone or task |
39 | Usage: |
40 | prj_run <milestone name> [-impl <implement name>] [-task <task name>] |
41 | [-forceAll|forceOne] |
Guten Morgen, und Danke für die Antwort. \ Soweit bin ich auch gekommen. \ Aber mit dem Simulation Wizard führt Diamond doch auch nur Befehle oder ein Script aus. Es wird aus dem Projektfile *.ldf ein Simulationsfile *.mdo generiert. Danach wird ModelSim gestartet und das eben generierte *.mdo ausgeführt.\ In der Zwischenzeit haben sogar zwei Lattice FAE die Flügel gestreckt. Die meinen aber auch, dass der komplette Workflow per CLI funktionieren sollte, zumindest mal hat.\ Werde mir mal das oben genannte Framework VMK anschauen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.