VHDL Simulation auf externem Server laufen lassen?

Gast #7072901
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
Gast #7072909
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.
Gast #7072929
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.
Gast #7072935
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....
#7072983
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.
#7072988
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.
Gast #7072993
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
Gast #7072998
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.
Gast #7073000
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.
Gast #7073008
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.
Gast #7073019
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
Gast #7073197
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
#7074273
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.
Gast #7077613
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
Gast #7077864
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.
#7082622
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?

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