Forum: FPGA, VHDL & Co. VHDL Simulation auf externem Server laufen lassen?


von Schnöselesser (Gast)


Lesenswert?

Kann man seine vhdl simulation auf einem externen Server laufen lassen?
Habe gar keine Zeit 2 Std. jedes mal zu warten xD.
Oder auf welche PC Komponente kommt es denn da an?
Welche CPU ist da am besten?
Dankee

von Cptn Cisco (Gast)


Lesenswert?

Wenn Mutti genug Geld gibt, dann lass dir ein VMWare ESXi hosten.
Da kannst du dann Wind00fse, Linuexe und andern Kram virtuell drauf tun.
Das kann man (zur Not) natuerlich auch selber tun.

von Schnöselesser (Gast)


Lesenswert?

ja wie geht n das?
kannst du ein Beispiel nennen wie man vorgehen muss um diesen "service" 
in Anspruch nehmen  zu können?

Also muss man zuerst einen kostenpflichtigen externen Server finden mit 
passender Leistung und dann darauf VMWare installieren wo dann mein 
VIvado ist oder was?

Kennst du irgendwas in der Richtung?

Vielen  Dank :D

von Schnöselesser (Gast)


Lesenswert?

https://www.cbtnuggets.com/blog/certifications/cloud/vmware-esxi-free-vs-paid-a-look-at-license-limitations

oha da steht das diese vmware dinger 768 (logical) cpus haben xD und 
6TB RAM

aber ich kapier das noch nicht ganz xD

von Testuser (Gast)


Lesenswert?

Modelsim kann man wunderbar auch nicht lokal über Kommandozeile laufen 
lassen. Auch mehrere Instanzen parallel. Dank textio kann man da Stimuli 
einlesen und Ergebnisse wegschreiben. Asserts und so kann man aus dem 
Transcript rausholen.

von Schnöselesser (Gast)


Lesenswert?

ja irgendwie geht das mit vivado auch. aber ich brauche ja trotzdem mehr 
Leistung xD
Mein PC is zu langsam

von Schnöselesser (Gast)


Lesenswert?


von Testuser (Gast)


Lesenswert?

Schnöselesser schrieb:
> ja irgendwie geht das mit vivado auch.

Modelsim ist da schneller.

> aber ich brauche ja trotzdem mehr
> Leistung xD
> Mein PC is zu langsam

Erstmal kannst du deine Hardwarebeschreibung so schreiben, dass sie 
schnell simuliert. Also alles getaktet und nur von diesem einen Takt 
abhängig. Prozesse nur mit dem Takt in der Sensitivitätsliste.
Und außerdem nur das simulieren was du simulieren musst. Xilinx IP wie 
MMCM/PLL muss man meist nicht simulieren. Und wenn man das simuliert 
dann man es das eher langsam.

von Schnöselesser (Gast)


Lesenswert?

Testuser schrieb:
> Schnöselesser schrieb:
>> ja irgendwie geht das mit vivado auch.
>
> Modelsim ist da schneller.
>
>> aber ich brauche ja trotzdem mehr
>> Leistung xD
>> Mein PC is zu langsam
>
> Erstmal kannst du deine Hardwarebeschreibung so schreiben, dass sie
> schnell simuliert. Also alles getaktet und nur von diesem einen Takt
> abhängig. Prozesse nur mit dem Takt in der Sensitivitätsliste.
> Und außerdem nur das simulieren was du simulieren musst. Xilinx IP wie
> MMCM/PLL muss man meist nicht simulieren. Und wenn man das simuliert
> dann man es das eher langsam.

ich glaube das dauert aber einfach so  lange....

von Testuser (Gast)


Lesenswert?

Kann sein, kann aber auch sein, dass man den Code effizienter schreiben 
kann und das dann deutlich schneller simuliert.

von Schnöselesser (Gast)


Lesenswert?

Testuser schrieb:
> Kann sein, kann aber auch sein, dass man den Code effizienter schreiben
> kann und das dann deutlich schneller simuliert.

das wäre am besten :D

von Martin S. (strubi)


Lesenswert?

Mit GHDL geht das grundsaetzlich in der Cloud legal und bei Dockerhub, 
gitlab u.a. auch kostenlos bis guenstig. Ich rate aber zu einer 
bezahlten Loesung, ansonsten man schnell als mutmasslicher Miner von der 
Nutzung der freien Server ausgeschlossen werden kann.

Wenn es sich um synthesefaehigen und 'sauberen' clock-synchronen Code 
handelt, kannst du auch mit yosys und dem CXXRTL-Backend einiges 
beschleunigen, brauchst allerdings ein Stimulus-Frontend, braucht etwas 
C++-Code oder man macht's per Python Co-Simulation.

von Gustl B. (-gb-)


Lesenswert?

Schnöselesser schrieb:
> das wäre am besten :D

Dann zeig doch mal den Code der langsam simuliert. Oder packe das 
Projekt als .zip hier in den Anhang.
Wir könnten ja mal Benchmarks machen und dein Projekt als Referenz 
nehmen. Mich würde auch mal interessieren was wie starke Auswirkungen 
hat, CPU Kerne, CPU Cache, Intel vs. AMD, RAM, HDD vs. SSD, ... und auch 
Vivado vs. Modelsim vs. GHDL.

von Schnöselesser (Gast)


Lesenswert?

Martin S. schrieb:
> Ich rate aber zu einer
> bezahlten Loesung, ansonsten man schnell als mutmasslicher Miner von der
> Nutzung der freien Server ausgeschlossen werden kann.

schlagt mir gerne mal  eine Toolchain vor. Hab da gar keine Idee.
Werde aber auch mal meinen Code prüfen lassen.
Aber habe die Vermutung, dass es einfach langsam ist..

Vielen Dank :D

von Schnöselesser (Gast)


Lesenswert?

Also es geht um die Simulation des Xaui Cores mit dem dem xilinx example 
design.

Details:
Dabei nehmen der status vector und der debug vector bei mir erst nach 
ca. 1,5 bis 2 std den Wert 0xfc und debug 0x3f an.
Dann erst arbeitet der Core richtig.

Der Core ist unter Vivado 2019 erhältlich.  Im IP Katalog.
Also ich füge den Core erst hinzu. Dann Rechtsklick und dann example 
design.

Und dann lasse ich das laufen.
Und dann warte ich zwei Stunden.
Und dann arbeitet der Core.
dut_ready wird dann high bzw status = 0xfc und debug 0x3f
 Signal werden dann  erstmalig übersetzt von xgmii nach xaui bzw. 
andersrum.

Soll ich den Code nochmal hochladen?
Würde mich wirklich interessieren wie das bei euch  ist!!!

Wollte mal zwei XAUIs hintereinander testen.
Es hat sich angefühlt wie 4 Stunden.

von Cptn Cisco (Gast)


Lesenswert?

Fuer
> diese vmware dinger 768 (logical) cpus haben xD und 6TB RAM
muss Mutti aber schon tief in den Geldspeicher langen.

Damit koenntest du 768 Simulationen parallel laufen lassen.
Wenn das Tool multithreaded ist, und dein OS 768 CPUs kann,
wuerde sich, optimistisch gerechnet, die Simulationszeit auf
ein 1/768 verkuerzen.
Mann will sich ja nicht einschraenken muessen.

P.S.: Die Genomanalytiker machen es so. Und die sind bestimmt nicht 
doof.

von Schnöselesser (Gast)


Lesenswert?

https://github.com/myshareplace/xauiexmaple
hier hab das einfach mal hochgeladen.
ich  denke man kann es auch in einem vivado 21 öffnen etc.
dann müsst ihr nicht extra 2019 runterladen.

von Cptn Cisco (Gast)


Lesenswert?

P.S.: Wenn dir das simuleren zu lange dauert, kaufe einfach
reale Hardware, einige reale hinreichend schnelle Oszis, LAs
und Patterngeneratoren.

Dann musst du nicht warten, sondern kannst dir das ganze in
Farbe und 3D live ansehen!

So hat man das frueher mit der ganz "normalen" Elektronik ja auch 
gemacht.

von Schnöselesser (Gast)


Lesenswert?

Cptn Cisco schrieb:
> P.S.: Wenn dir das simuleren zu lange dauert, kaufe einfach
> reale Hardware, einige reale hinreichend schnelle Oszis, LAs
> und Patterngeneratoren.
>
> Dann musst du nicht warten, sondern kannst dir das ganze in
> Farbe und 3D live ansehen!
>
> So hat man das frueher mit der ganz "normalen" Elektronik ja auch
> gemacht.

nachdem ich das erste  mal vor paar Wochen die Möglichkeit hatte das auf 
meinem FPGA zu machen, war ich fasziniert davon, dass die Synthese 
schneller ist als die Simulation.
Der xaui core ist dann auch in wenigen millisekunden bereit.

Zudem ist so eine Simulation auch gar nicht so ungefährlich. Die 
Realität ist doch immer anders.

Muss aber aus anderen  Gründen diese Simulation anfertigen.

Du bestätigst damit aber meine Vermutung, dass man so auch testen kann/ 
sollte :DDD

von Cptn Cisco (Gast)


Lesenswert?

> Der xaui core ist dann auch in wenigen millisekunden bereit.

Was auch nicht verwunderlich ist.
Das ist ja schon eine ueberwiegend "fertige" Netzliste.

> Muss ... anfertigen.

Mein Beileid.

von Tobias B. (Firma: www.elpra.de) (ttobsen) Benutzerseite


Lesenswert?

Falls du mit Xilinx unterwegs bist, dann ist das vll eine Option:

https://www.xilinx.com/products/design-tools/acceleration-zone/ef-vivado-sdx-vu9p-op-fl-nl.html

von schnöselesser (Gast)


Lesenswert?

Tobias B. schrieb:
> Falls du mit Xilinx unterwegs bist, dann ist das vll eine Option:
>
> 
https://www.xilinx.com/products/design-tools/acceleration-zone/ef-vivado-sdx-vu9p-op-fl-nl.html

Ja habe Xilinx
Habe das gestern auch schon kurz gesehen, aber die haben das so 
beschrieben, dass ich nicht verstehe, ob ich meine Simulation dort 
laufen lassen kann xD

Cptn Cisco schrieb:
> Der xaui core ist dann auch in wenigen millisekunden bereit.
>
> Was auch nicht verwunderlich ist.
> Das ist ja schon eine ueberwiegend "fertige" Netzliste.

ok ja gut ..
... der 10GEMAC hingegeben is auch in der Simulation nach ein paar 
millisekunden bereit...

Ich kann mir vorstellen, dass es um die Transceiver Simulation geht, die 
hier so lange Zeit kostet.
Vielleich kann man genau da eingreifen und das verkürzen :D

von Martin S. (strubi)


Lesenswert?

Schnöselesser schrieb:
> Also es geht um die Simulation des Xaui Cores mit dem dem xilinx example
> design.

Sag das doch gleich.
Vermutlich ist bei der ganzen Geschichte einfach wegen der Komplexitaet 
die Bremse drin, ausser, du hast die Dollar-Lizenz fuer Modelsim.

Wenn du das IP-Core-Geschrabbel einsetzt: keine Chance auf legal per 
OpenSource via GHDL, da vercryptet. Da vermutlich eine Menge 
Abhaengigkeiten bestehen, kommst du auch mit den einschlaegigen Tools 
wohl nicht viel weiter.

von J. S. (engineer) Benutzerseite


Lesenswert?

Martin S. schrieb:
> Wenn du das IP-Core-Geschrabbel einsetzt:

aus genau solchen Gründen sollte man zusehen, auf IP-Geschnodder nur 
zurückzugreifen, wenn nötig.

von Schloßgeist (Gast)


Lesenswert?

Servus,
Ich würde einen Kasten Bier gegen ein Glas Wasser wetten, dass es die 
Transceiver im Core sind, evtl. noch auf Artix-7.
Ich erinnere mich dunkel dass da ein Bug im Sim- Model mit Simulation 
"in echter Zeit" umgangen wird. Und Transceiver auf Millisekunden zu 
simulieren macht alt. 8o)

Ansonsten ist ISIM/xsim von der Simulationsgeschwindigkeit her relativ 
flott.

SG
Schloßgeist

von Tobias B. (Firma: www.elpra.de) (ttobsen) Benutzerseite


Lesenswert?

Martin S. schrieb:
> Wenn du das IP-Core-Geschrabbel einsetzt: keine Chance auf legal per
> OpenSource via GHDL, da vercryptet.

Das waere noch das kleinere Uebel. Mittlerweile gibts von Xilinx fast 
nichts mehr in VHDL. :-(

von Blechbieger (Gast)


Lesenswert?

K.A. ob es das bei Xilinx auch gibt aber viele Intel IP-Cores haben eine 
Konfigurationsoption damit nicht die komplette Initialisierungssequenz 
taktgenau simuliert wird sondern eine verkürzte. Schau mal ob der 
Xaui-Core auch sowas hat.

von Christoph Z. (christophz)


Lesenswert?

Schnöselesser schrieb:
> Oder auf welche PC Komponente kommt es denn da an?

Single-core CPU Leistung.
Lange danach kommt dann RAM Geschwindigkeit.

Cptn Cisco schrieb:
> Damit koenntest du 768 Simulationen parallel laufen lassen.
> Wenn das Tool multithreaded ist, und dein OS 768 CPUs kann,
> wuerde sich, optimistisch gerechnet, die Simulationszeit auf
> ein 1/768 verkuerzen.
> Mann will sich ja nicht einschraenken muessen.

Gesammt Simulation beschleunigen durch parallele kleine Simulationen 
funktioniert super. Ist gut geeignet um jeweils kleine Teile eines 
Systems oder Libraries zu testen, ähnlich wie Unit test in der Software 
gerne gebaut werden. Also z. B. separate Simulationen für einen SPI 
Master:
- Sende 8 bit
- Sende 16 bit
- Lese 8 bit
- Lese 16 bit
- Sende/Lese 8 bit
- Sende/Lese 16 bit

Ist z. B. mit Python Vunit auch einfach aufzusetzen und laufen zu 
lassen.

Problem: Jede parallele Simulation braucht eine eigene Lizenz. Kein 
Problem bei GHDL. Geht richtig ins Geld bei Modelsim.

Weiss jemand wie sich hier Xilinx Isim verhält?

von Tobias B. (Firma: www.elpra.de) (ttobsen) Benutzerseite


Lesenswert?

Christoph Z. schrieb:
> Weiss jemand wie sich hier Xilinx Isim verhält?

Leider nein, da VUnit weder ISim noch XSim unterstuetzt. :-(

von J. S. (engineer) Benutzerseite


Lesenswert?

Tobias B. schrieb:
> Das waere noch das kleinere Uebel. Mittlerweile gibts von Xilinx fast
> nichts mehr in VHDL. :-(

Es reicht in vielen Fällen ja auch, wenn es etwas mal in VHDL irgendwo 
gegeben hat, man es gefunden, kopiert, angepasst und dann generic-isiert 
hat, um es zu verallgemeinern und dann später einsetzen zu können.

von Gerhard H. (ghf)


Lesenswert?

Ich bin jetzt zwar nicht auf dem aktuellen Stand, aber die
Modelsims u.a. die bei Intel, Xilinx etc für lau dabei waren,
die hatten alle eine Bremse. Der richtige Modelsim/Questasim
kostet dann richtig Geld.

Gruß, Gerhard

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.