Windows11 steht vor der Tür, und mein (noch nicht so alter)
Rechner wird wahrscheinlich nicht unterstützt. Zumindestens
soll in der Zukunft der Support/Updating ausbleiben. Da
einige FPGA-Tools leider nur unter Windows laufen, habe
ich mir überlegt, auf Linux umzusteigen und Die Tools
(Xilinx, Altera und Lattice) z.B. unter VirtualBox zu nutzen.
Wer hier hat Erfahrung mit den Tools in Verbindung mit
VirtualBox, welche Probleme können auftreten?
(gibt es überhaupt Probleme Mit Linux, 32Bit als auch 64Bit
in Verbindung mit Virtual Box und Windows mit oben genantenen
Tools?)
Altera Q13-15 und ISE 10.1-14.7 laufen übrigens wunderbar auf
Linux-Rechner.
Nur der Kram von Lattice nicht, aber von denen will ich eh nix mehr
wissen, seit dem bei denen der ISP Classic irgendwas 600$/Jahr
kostet.....
Sollte problemlos funktionieren. Dank USB Durchreiche auch mit den JTAG
Adaptern.
Je nach Linux Distro könnte das aber mehr oder weniger in Bastelei
ausarten. Mit Ubuntu und den Xilinx Tools habe ich gute Erfahrungen
gemacht.
Gustl B. schrieb:> Sollte problemlos funktionieren. Dank USB Durchreiche auch mit den JTAG> Adaptern.
Ich kenne dich aus mehreren Beiträgen in Verbindung
mit Xilinx und glaube auch mit Altera. Hast du mit
allen drei Herstellern schon Erfahrung gemacht,
insbes. längere Debugsessions?
Mit Xilinx und Altera ja, mit Lattice oder Microsemi hatte ich noch nix
am Hut.
Sigi schrieb:> längere Debugsessions?
Klar, das gehört dazu. Wobei ich die Einstellung habe, dass man sich
viel Debugging ersparen kann wenn man vorher ordentlich simuliert. Das
habe ich hier im Forum gelernt und versuche es weiterzugeben.
Gustl B. schrieb:> Das> habe ich hier im Forum gelernt und versuche es weiterzugeben.
Ist zwar hier nicht das Thema, ich habe aber oft Chips
am FPGA hängen, die ich gerne längere Zeit beobachten
möchte, z.B. um Daten zu sampeln. Wenn die USB-Verbindung
abstürzt, muss ich wieder von Vorne anfangen. Insbes.
bei seltenen Ereignissen wird's dann sehr hart.
Sigi schrieb:> ich habe aber oft Chips> am FPGA hängen, die ich gerne längere Zeit beobachten> möchte, z.B. um Daten zu sampeln.
Verstehe ich nicht so wirklich ... also geht es dabei noch um die
Entwicklung und du willst gucken ob das stabil ist, oder ist das Teil
der Anwendung, also Messung seltener Ereignisse?
Letzteres machen wir hier. Wir messen Radioaktivität und zwar Low-Level
mit wenigen Zerfällen am Tag und Messdauern die gerne mal > 1 Woche lang
sind. Die Hauptfehlerquellen sind da instabile Treiber am PC und kurze
Stromausfälle (merkt man kaum, lassen aber den Rechner oder so
neustarten) bei Gewittern im Sommer.
Wenn es ums Debugging geht dann hilft nachmessen ob man die
Spzifikationen einhält. Spannungspegel und so. Wenn das der Fall ist
verlasse ich mich darauf, dass ein Chip auch das tut was dessen
Hersteller verspricht.
Gustl B. schrieb:> Verstehe ich nicht so wirklich ...
Du interpretierst zu viel in das unwichtige Beispiel
rein (das aus meinen privaten Projekten stammt, wie z.B.
das Debuggen/Beobachten von alten Chips, und da sind
Tools wie z.B. ChipScope sehr hilfreich), mir geht's
hier nur um die Stabilität.
Rote T. schrieb:> Aber wieso, wenn es die Ware auch direkt für Linux gibt?> VM-Zeugs ist doch total umständlich und lahm.
Ich find VirtualBox nicht umständlich und lahm. Ich hab mit dieser
Technik mal aus Sicherheitsgründen angefangen. Ich hab nur ein recht
einfaches Host-System (auch Linux) und dann so 20 VBoxen für diverse
Aufgaben. Eine für Elektronik-Entwicklung, eine für FPGAs, eine zum
Surfen, eine für Büroarbeiten usw.
Da sind unterschiedliche Systeme dabei. Also die Quartus VBox ist z.B.
32 Bit weil sonst der Sim nicht richtig lief. Ich hab eine Windows VBox
in der ich Visual Studio Kram mache. In mehreren anderen laufen
unterschiedliche Server und ich code da z.B. PHP.
Wenn ich mit der Arbeit fertig bin, wird die entsprechende VBox komplett
auf externe Platten geschrieben als Backup. Einige kopier ich auf den
Laptop und nehm sie mit zu Kunden.
Wenn der Host kaputt ist, wird die VBox auf nen Backup Rechner kopiert
und spätestens 2h später arbeite ich weiter.
> Ich find VirtualBox nicht umständlich und lahm. Ich hab mit dieser> Technik mal aus Sicherheitsgründen angefangen.
Ganz im Gegenteil. Das alte Xilinx Webpack 8.x laeuft auf einem
aktuellen
Rechner in VirtualBox endlich so schnell wie es 2005 schon haette laufen
sollen und ist damit fast so gut/schnell wie die aktuelle Software der
Chinesen von Anylogic.
Die Installation des Platform Cable USB war etwas hakelig, hat dann aber
auch funktioniert.
Olaf
VirtualBox ist unter Linux nicht nötig, geht auch alles in Docker
containern ohne Performance-Einbussen. Gibt es diverse Repositories zu
den Stichworten "Dockerized FPGA toolchains", z.B
https://github.com/Gekkio/docker-fpga
Die FPGA SW läuft idR recht gut unter Linux. Hatte aber auch schon
Probleme.
Mit einer Virtuellen Maschine geht das eingetlich auch sehr gut. Man
sollte aber beachten, dass diese Tools recht resourcen-hungrig sind.
Kannst du für deine VM genügend RAM und CPU reservieren, dass es
überhaupt Spaß macht?
Meine Erfahrung ist, dass es nicht wirklich Freude macht, wenn die VM zu
schwach ist.
Zur Nutzung der JTAG Adapter:
- Man kann, wie oben beschrieben, das USB durchreichen. Kann aber auch
kräftige Probleme machen.
- Altera / xilinx und vermutlich auch die anderen Hersteller haben
Standalone Programmierserver. Diese kannst du theoretisch auf deinem
Linux laufen lassen und dann mittels Netzwerk von der VM auf den lokal
laufenden Server kommen.
ich nutze selbst ein Arch-Linux und sogar darauf sind Xilinx und Altera
problemfrei nutzbar. Auf einem Ubuntu/Debian würde ich jetzt auch keine
Probleme erwarten. Die Tools bringen eigentlich alle ihre Libraries mit,
sodass die Systemabhängigkeit nicht allzu groß ist.
Tobias B. schrieb:> Rote T. schrieb:>> Nur der Kram von Lattice nicht,>> Lattice Diamond laeuft unter Linux prima. Andere Tools von denen kann> ich leider nicht beurteilen.
Radiant nicht.
Läuft in einer VM (zumindest VMware), aber der Programmer macht ewige
Denkpause, bevor er startet. Ich bin dann irgendwann auf den
Opensource-Programmer umgestiegen, der läuft native unter Linux und ist
schnell.
Simulator gibt's ja inzwischen auch für Lattice das Intel-Tool, das
läuft ebenfalls native unter Linux.
Jörg W. schrieb:> Simulator gibt's ja inzwischen auch für Lattice das Intel-Tool, das> läuft ebenfalls native unter Linux.
Als Simulator nehme ich Modelsim aus der neusten Diamond Version. Damit
lassen sich auch wunderbar die ganzen verschluesselten Xilinx IPs
kompilieren und simulieren und mixed Language ist der auch noch. Eine
wirklich guenstige Alternative auch wenn deutlich langsamer als der
Erwerb einer richtigen Lizenz.
M. H. schrieb:> Kannst du für deine VM genügend RAM und CPU reservieren, dass es> überhaupt Spaß macht?>> Meine Erfahrung ist, dass es nicht wirklich Freude macht, wenn die VM zu> schwach ist.
Meine VBoxen haben bis max 4 Kerne, ich glaub 6 GB Ram hat die Grösste
und so 100 GB HD. Ich muss aber dazu sagen, dass ich derzeit nur die
freien Tools benutze, die wohl alle nur max 1 Kern benutzen, so dass der
Bedarf an Resourcen gar nicht so gross ist.
Was ich leider noch nicht so einfach hinbekommen hab, ist das
Hotplugging von CPU Kernen. Wenn also eine VBox kurzzeitig mal mehr
Leistung braucht, einen Kern von einer anderen VBox abziehen und der
hungrigen VBox zuweisen. Das geht zwar in der Kommandozeile, aber da war
der Leidensdruck noch nicht gross genug, mir passende Scripte zu
schreiben.
Was ich auch noch gerne hätte wäre die Option einen 2. laufenden Rechner
einzubinden und z.B. eine laufende VBox auf den 2. Rechner zu schieben.
Dafür müsste ich mir mal so eine Cluster-Software einrichten, aber ich
hab irgendwie nicht soviel freie Zeit zum Spielen... :-(
Andreas Rückert schrieb:> Meine VBoxen haben bis max 4 Kerne, ich glaub 6 GB Ram hat die Grösste> und so 100 GB HD. Ich muss aber dazu sagen, dass ich derzeit nur die> freien Tools benutze, die wohl alle nur max 1 Kern benutzen, so dass der> Bedarf an Resourcen gar nicht so gross ist.
Neuere Versionen von Quartus Lite unterstützen mehrere Kerne. Für den
RAM in die Release-Notes schauen, da sind genaue Tabellen drin. Für die
größten von Lite unterstützten FPGA werden 8 GB empfohlen. 6 GB ist
schon die Empfehlung für kleinere und mittlere Cyclone V.
Für Xilinx gibt es bestimmt auch solche Tabellen.
Ich arbeite eh oft mit den billigen Dev Boards mit Cyc2 und so. Da muss
eine alte Version von Quartus nehmen.
Freie Software scheint es da noch nicht zu geben.