Ich habe einige Zeit Vivado 2020.1 auf Ubuntu 20.04 benutzt, es gab
keine Probleme. Nach dem Upgrade auf Ubuntu 22 bekomme ich keine
Vebindung mehr zwischen dem Hardware-Server und dem FPGA-Board
(Arty-A7). Fehlermeldung:
1
ERROR: [Labtoolstcl 44-199] No matching targets found on connected servers: localhost
2
Resolution: If needed connect the desired target to a server and use command refresh_hw_server. Then rerun the get_hw_targets command.
3
ERROR: [Common 17-39] 'get_hw_targets' failed due to earlier errors.
Beide /dev/ttyUSB{0,1}-Devices sind vorhanden, und ich kann über ttyUSB0
mit einem Terminalprogramm auf ein bereits geflashtes Design zugreifen.
Hardwaremäßig scheint also alles in Ordnung zu sein. Alles andere
funktioniert auch bei Vivado (Synthese, PAR etc).
Jemand eine Idee, wo das Problem liegen könnte?
Leider nicht. Ich habe auch schon versucht, das Board mittels xsdb zu
connecten, aber es wird kein angeschlossenes Target gefunden, egal mit
welchem Kabel und an welchem USB-Port.
Welches Board versuchst du über welchen Programmer anzusprechen?
Der Boardhersteller hat gern mal seine eigenen Treiber (z.B. Trenz).
Und dann kann natürlich auch ein Kabel/Hatdware mal verrecken. Also
testet man die gesamte Hardware mit einer alten Installation.
Bei Linux sind die Rechte auch mal ein Problem. Mal das ganze per sudo
starten
Wie gesagt, ein Arty A7-100 über den onboard-Programmer (ftdi-Chip). Das
braucht keinen speziellen Treiber, ging die ganze Zeit per /dev/ttyUSB1
und den Cabledriver von Vivado2020.1.
Ich habe heute mal die Adept2-Software von Digilent installiert, damit
kann ich den FPGA laden, die HW ist also OK. Allerdings ist das
Adept-Zeug ziemlich grottig, z.B. kann man den Flash nicht
programmieren, weil der nicht in der Jtag-Chain hängt. Daher will ich
Vivado nutzen. Aber seit dem Ubuntu-Upgrade wird das Arty nicht mehr
erkannt.
vancouver schrieb:> . Daher will ich> Vivado nutzen. Aber seit dem Ubuntu-Upgrade wird das Arty nicht mehr> erkannt.
Dann teil die chain in zwei vershiedene Versionen auf, fürs FPGA über
JTAG konfigurieren nimmste de alte Software, fürs Synthetisieren etc.
die neue.
Never change a running system.
Das kann ja dann eigentlich nur mit einem Treiber Kuddelmuddel oder
falschen udev Regeln zusammen hängen. Oder die haben bei Xilinx wieder
mal was geändert und nun müsstest du eine aktuelle Vivado Version
nehmen. Schau doch mal in die Release Notes.
Ludewig Lämpel schrieb:> fürs FPGA über> JTAG konfigurieren nimmste de alte Software, fürs Synthetisieren etc.> die neue.
Ich soll ein zweites Betriebsystem am Laufen halten, nur um einen FPGA
zu konfigurieren?
> Never change a running system.
Bis zu einem gewissen Grad ja, aber irgendwann werden halt doch Upgrades
notwendig. Auf dem System läuft ja noch weitere Software außer Vivado.
vancouver schrieb:> Ludewig Lämpel schrieb:>> fürs FPGA über>> JTAG konfigurieren nimmste de alte Software, fürs Synthetisieren etc.>> die neue.>> Ich soll ein zweites Betriebsystem am Laufen halten, nur um einen FPGA> zu konfigurieren?
Wieso zweites Betriebssystem und wieso "Nur" zum Konfigurieren?!?
Xilinx hat auch für Vivado die Toolchains in Entwicklung und Labtools
trennbar gestaltet. Beide Editions sollte es für das selbe OS geben.
Die Labtools benutzt man nicht nur um das Design auf den FPGA zu laden,
sondern auch zur Inbetriebnahme Debug (Chipscope, debug/profiler
Host,vio, Temperatur/Spannungs-überwachung per Sysmon).
Und wer A sagt "FPGA machen" muß auch B sagen (Toolchain am Laufen
halten)!
Christian R. schrieb:> Oder die haben bei Xilinx wieder> mal was geändert und nun müsstest du eine aktuelle Vivado Version> nehmen. Schau doch mal in die Release Notes.
Ja, vermutlich werde ich das ganze Vivado-Zeug neu installieren müssen,
mit dem ganzen Aufwand, den das bedeutet.
Wäre mal interessant zu wissen, ob jemand Vivado 2020 oder 2022 auf
Ubuntu 22.04 problemlos am Laufen hat.
Ach ich sehe grad du hast nicht Vivado auf die 22 gehoiben sonden
Ubuntu.
Muß dann wohl ne Ubuntu-Macke sein. Bei debian hat man mit apt-get
ziemlich feinjustierbare Update-Möglichkeiten. Wenn Nötig kann man auch
mal ein Paket downgraden.
https://www.linuxuprising.com/2019/02/how-to-downgrade-packages-to-specific.html
Dann mussman nicht gleich alles umkrempeln.
Ludewig Lämpel schrieb:> Wenn Nötig kann man auch> mal ein Paket downgraden.
Das geht bei Ubuntu auch, soweit ich weiß (ist ja ein Debian-Fahrwerk
drunter), aber dazu müsste ich wissen, welches Paket die Probleme macht.
Leider gbt es nirgendwo eine Fehlermeldung, wenn ich das Board mit dem
hw_server verbinden will.
Ich habe eine ähnliche Problematik (allerdings bei der Konkurrenz) über
Jahre am Laufen gehalten, in dem ich die (alten/veralteten) Shared Libs,
die die Software vom Betriebssystem erwartet ins bin/ Verzeichnis von
Quartus kopiert habe (so läeft z.B. eine 13.0 auf Debian Testing).
Allerdings wird das mit Release zu Release schwieriger und mittlerweile
übernimmt ein Debian 11 in einer KVM-VM die Aufgabe ohne weiteren
Aufwand.
Auch das USB-Passthrough (Altera Blaster) funktioniert problemlos.
Mit Xilinx habe ich das noch nicht probiert, sehe aber nicht, warum das
nicht auch so funktionieren sollte.
Also Leute, ich suche hier gerade nach einer versteckten Kamera. Ohne
einen (für mich) erkennbaren Grund funktioniert es plötzlich wieder.
Eben habe ich versucht, das TCL-Script zum Konfigurieren als root zu
starten, und das klappt plötzlich (gestern noch nicht). Seitdem geht es
auch wieder als normaler User. Auch nach Ab/Anstecken des Boards und
Neustart des PCs. Alles wie früher, und ich habe wirklich nichts
anders gemacht. WTF?!
Schau mal ob libusb Teil des Updates war. Die Xilinx Welt funktioniert
nur mit einer veralteten und verbuggten libusb.
Wobei es mich wundert, Ubuntu 22.04 ist Teil der unterstuetzen Linuxen.
:-/