Dieser ArtikelBenutzerSuche |
Xilinx ISE Linux
[bearbeiten] InstallationHier sind zwei komplette Beschreibungen (auf englisch) was zu tun ist, um das ISE von Xilinx unter Linux zu installieren. Das ISE ist recht unproblematisch zu installieren, aber der CableDriver ist recht zickig.
[bearbeiten] Nutzung des CableDriversDa es speziell mit ubuntu edgy eft (Linux-Kernel 2.6.17) doch nicht ganz nach den Fahrplänen von oben funktioniert, hier ein paar Tipps:
[bearbeiten] Impact und 64Bit Linux mit CableServerMit der derzeitige Version von Impact (ISE8.2i) ist es nicht möglich unter einem 64Bit Linux direkt einen Parallel-Port-Programmer zu verwenden, da Impact ein Kernelmodul verwendet, welches nicht für 64Bit verfügbar ist. Stattdessen gibt es aber die Möglichkeit einen Remote-Programmer zu verwenden. Notwendig ist hierzu ein Server, der die Anfragen von Impact an den Parallel-Port-Programmer weiterleitet. Das erfreuliche ist, dass es diesen Server als OpenSource gibt, und er unter jedem Linux kompilierbar ist. Der Vorteil der Cable-Server-Lösung ist, dass man den Win Driver nicht mehr benötigt und Impact von hausaus alle Xilinx-ICs unterstützt. Eine inoffizielle Version des cblsrv (Version enthält einen Bugfix für das Parallel-Cable-III) gibt es hier: http://www.oxed.de/fpga/cblsrv-0.2-src.tar.bz2 [bearbeiten] ISE9.1 Impact und CableserverFür die Verwendung des CableServers mit der ISE9.1 Version ist es unbedingt erforderlich mindestens auf SP3 upzudaten, da sich in Impact ein Fehler im Kommunikationsprotokol mit dem CableServer eingeschlichen hat! [bearbeiten] Impact und 64Bit Linux mit WinDriver-EmulationEs ist auch möglich den in Impact integrierten (lokalen) Cableserver, ohne das WinDriver Kernelmodul, unter einem 64Bit Linux zu nutzen. Dazu benötigt man eine Library, die das Kernelmodul im Userspace emuliert. Die Library ist hier erhältlich: http://www.rmdir.de/~michael/xilinx/ Da Impact als 32Bit Programm keine 64Bit Libraries laden kann, muss die Library als 32Bit Library kompiliert werden. Dazu muss im Makefile bei den CFLAGS zusätzlich -m32 angegeben werden (Beispiel: CFLAGS=-Wall -O2 -fPIC -m32). Alternativ kann eine 32Bit-chroot-Umgebung benutzt werden. Zum Kompilieren benötigt man außerdem eine 32Bit Version der libusb.a [1]. Das Paket muss/kann nicht installiert werden, aber es reicht, wenn man es entpackt und aus der enthaltenen Datei data.tar.gz die libusb.a extrahiert und nach /usr/lib32/libusb.a kopiert. Danach sollte die Library erfolgreich kompilieren. Wenn man USB-JTAG-Kabel von Xilinx verwenden möchte, muss man sich auch noch eine 32Bit Version der libusb.so erzeugen, worauf man aber verzichten kann, wenn man nur ein Parallel-Cable-III verwendet. Beim Parallel-Cable-III benötigt man Schreibrechte auf /dev/parport0 (Benutzer zur Gruppe lp hinzufügen; Unter Ubuntu zusätzlich in der /etc/modules "lp" auskommentieren, damit man überhaupt ein /dev/parport0 hat). Zum Starten von impact empfiehlt es sich die Impact-Binärdatei in "impact_bin" umzubenennen und ein "impact" Script zu schreiben, welches so aussehen könnte: "export LD_PRELOAD=/path/to/libusb-driver.so && /path/to/impact_bin". Wenn man das ISE nutzt, empfielt es sich auch die ISE Binärdatei in "ise_bin" umzubenennen und ein Script "ise" analog zum Script "impact" anzulegen, da das ISE Impact nicht über das Script "impact" startet. [1]: http://de.archive.ubuntu.com/ubuntu/pool/main/libu/libusb/libusb-dev_0.1.12-2_i386.deb (Ubuntu oder Debian) [bearbeiten] Alternative für ImpactWer mit Spartan3-Bausteinen arbeitet, könnte xc3sprog als Alternative für Impact verwenden. Finden kann man das Programm hier: http://www.rogerstech.force9.co.uk/xc3sprog/ [bearbeiten] PDF Viewer (Could not find PDF Viewer)Irgendwie hat Xilinx die Konfigurationsmöglichkeit für den PDF-Viewer vergessen. Durch folgenden Eintrag in die .qt/xilinxrc verschwindet die Fehlermeldung "Could not find PDF Viewer": 8.2i/Gq/PDFViewer=/usr/bin/xpdf %1 [bearbeiten] Anwendung[bearbeiten] ERROR:Simulator:222Wer bei der Simulation die Fehlermeldung "ERROR:Simulator:222 - Generated C++ compilation was unsuccessful" erhält, sollte die Dateien ./gnu/gcc/3.2.3/lin/i686-pc-linux-gnu/bin/ld ./gnu/gcc/3.2.3/lin/bin/ld im Xilinx-Installationspfad umbenennen. Siehe auch: http://groups.google.de/group/comp.arch.fpga/msg/3f6c44c16d3a3f85 [bearbeiten] ERROR:Simulator:170Falls die Simulation mit der Fehlermeldung ERROR:Simulator:170 - work/counter/Behavioral is not compiled properly. Please recompile work/counter/Behavioral in file "C:/projects/Xilinx/tutorial2/counter.vhd" without -incremental option. ERROR:Simulator:199 - Failed when handling dependencies for entity counter_tbw, architecture testbench_arch abbricht, kann dies ggf. daran liegen, dass der Pfad zu dem Projektverzeichnis ein Leerzeichen enthaelt. Zumindest kann das manchmal Abhilfe schaffen. [bearbeiten] ERROR:Simulator:607ERROR:Simulator:607 - ISE Simulator is unable to elaborate this design due to specific coding constructs used in the design. Xilinx is actively working on reducing the number of conditions where this error occurs. For more information on this error, please consult Answer Record 24067 in Answers Database at http://www.xilinx.com/support. Nicht ganz klar was das verursacht... Bei mir liess er sich uebrreden es dennoch zu simulieren indem ich wahllos synthetisiert / place n route / ... gemacht hab Danach ging es aufeinmal... Wobei ich auch noch die ld files gelöscht hab: ./gnu/gcc/3.2.3/lin/i686-pc-linux-gnu/bin/ld ./gnu/gcc/3.2.3/lin/bin/ld --Sssssss |