Hallo, kurz was vorweg: Ich will jetzt keine Disskussion zum Thema "Ist es sinnvoll CPLDs/FPGAs in meinem Fall zu verwenden?" vom Zaun brechen. Ich hab mit CPLD/FPGA noch keinerlei Erfahrungen. Ich wollte mal sehen, was ich damit machen kann und finde das auch ganz praktisch. Nur ein Problemchen tut sich mir auf: Ich weiß nicht, ob ich mit solch einem Chip überhaupt umgehen kann. Habe ich das richtig verstanden, was die zeitliche Abfolge der Entwicklung des "Programms" auf dem CPLD/FPGS angeht?: 1.) Schreiben eines entsprechenden Codes in HDL (VHDL/Verilog) 2.) Simulieren 3.) Erzeugen einer Netlist, ggf simulieren 4.) Beim FPGA mappen (so heißt das doch, wenn die Macrocells verteilt werden, oder?) 5.) Ergebnis ist eine Datei mit dem Bitcode für den Chip. Dieser muss jetzt noch auf den Chip geladen werden (beim FPGA auf den EEPROM) Zunächst im Voraus: Ich verwende Linux auf einem 64-Bit PC. Der Schritt 1 geht in jedem Texteditor. kein Problem. Der Schritt 2 und 3 wird von z.B. Ikarus Verilog übernommen, ggf kombiniert mit div. anderen Programmen. Welche Programme kann ich für Schritt 4 und 5 verwenden? Ich habe im Netz an einigen Stellen gelesen, dass man für Schritt 5 mithilfe eines einfachen Kabels (s. Artikel unter FPGA, CPLD & Co.) und ISE von Xilinx machen kann/muss. An anderer Stelle habe ich im Netz folgende Seite gefunden: http://www.fpga-faq.com/FAQ_Pages/0028_Downloading_a_Bitstream_under_Linux.htm Dort steht, dass der Bitstream einfach nur über die entsprechenden Pins des LPT-Ports bitweise ausgegeben werden müssen?!? Gibt es für Linux eine Mgl. CPLDs unter Linux 64 Bit zu programmieren? Gibt es eine Beschreibung des JTAG-Interfaces um die Programmierung durchzuführen? Bei einem FPGA muss der Bitstream einfach auf den EEPROM geschrieben wereden, richtig? OK, das waren jetzt einige Fragen. Wäre schön, wenn ich mich ein bisschen aufklären könntet Christian
@ Christian Wolf (clupus) >Habe ich das richtig verstanden, was die zeitliche Abfolge der >Entwicklung des "Programms" auf dem CPLD/FPGS angeht?: Ja. >Welche Programme kann ich für Schritt 4 und 5 verwenden? Die der Hersteller. http://www.mikrocontroller.net/articles/Programmierbare_Logik >Gibt es für Linux eine Mgl. CPLDs unter Linux 64 Bit zu programmieren? Keine Ahnung. >Gibt es eine Beschreibung des JTAG-Interfaces um die Programmierung >durchzuführen? Ja. >Bei einem FPGA muss der Bitstream einfach auf den EEPROM geschrieben >wereden, richtig? Quasi. MfG Falk
>>Welche Programme kann ich für Schritt 4 und 5 verwenden? > > Die der Hersteller. > > http://www.mikrocontroller.net/articles/Programmierbare_Logik > >>Gibt es für Linux eine Mgl. CPLDs unter Linux 64 Bit zu programmieren? > > Keine Ahnung. Das ist das Problem: Ich werde mal die Herstellerprogramme versuchen, aber ich fürchte, dass die nicht laufen werden. Wenn hier ein Linux-User ist: Bitte mal Erfahrungen mitteilen, danke. >>Gibt es eine Beschreibung des JTAG-Interfaces um die Programmierung >>durchzuführen? > > Ja. Verrätst du mir auch wo? ;-) Danke Christian
> Gibt es für Linux eine Mgl. CPLDs unter Linux 64 Bit zu programmieren? > Gibt es eine Beschreibung des JTAG-Interfaces um die Programmierung > durchzuführen? Jo gibt es. 64Bit Webpack von z.B. Xilinx. Impact zum Programmieren ist da gleich dabei. Normalerweise wird ein Kernel-Treiber benötigt, den man für 64Bit nicht bekommt, aber es gibt einen 64Bit Cable-Server, an den Impact connecten kann und der die Brücke zwischen parallel-Port-Programmer und Impact darstellt. Kuck mal in der Artikelsammlung unter 64Bit ISE oder so ... Mfg Thomas Pototschnig edit Ursprünglich hier: http://www.mikrocontroller.net/articles/Xilinx_ISE_Linux Eine inoffizielle gefixte Version des CableServers war in einem meiner Webspaces gehostet, da ist wohl was verloren gegangen ... werd ich korrigieren ... edit Okay, Link geht wieder ... http://www.oxed.de/fpga/cblsrv-0.2-src.tar.bz2
Hallo, die kommerzielle Version der Xilinx-Entwicklungsumgebung gibt es als 32 und als 64 Bit-Version, bei den Programmern (USB/ParallelPort) kann es Probleme geben. Bei der nichtkommerziellen Version (WebPack) gibt's nur 32 Bit. Gruss Jörg
Bei mit laeuft Webpack92i auf einem 64 bit Rechner unter OpenSuSE 11.0. Einfach mit "linux32 bash" eine 32-bit Umgebung herstellen und daraus arbeiten. uname -a zeigt dann "Linux linux 2.6.25.11-0.1-default #1 SMP 2008-07-13 20:48:28 +0200 i686 athlon i386 GNU/Linux". Bis zum Programmieren der CPLDs bin ich aber bis jetzt noch nicht gekommen, plane aber da einen USB-JTAG Adapter zu verwenden.
Christian Wolf wrote: ... > 1.) Schreiben eines entsprechenden Codes in HDL (VHDL/Verilog) > 2.) Simulieren > 3.) Erzeugen einer Netlist, ggf simulieren > 4.) Beim FPGA mappen (so heißt das doch, wenn die Macrocells verteilt > werden, oder?) ... > Der Schritt 2 und 3 wird von z.B. Ikarus Verilog übernommen, ggf > kombiniert mit div. anderen Programmen. Wenn ich das richtig verstehe dann ist die Synthese auch schon FPGA-spezifisch. Icarus unterstützt nur die Synthese für einen alten Virtex-Typ und für den Spartan XL. Die Unterstützung ist auch nur in der stabilen Version 0.8 vorhanden und funktioniert nicht in den letzten Entwicklungsversion 0.9.xx. Diese sind jedoch schneller in der Simulation und unterstützen weitere Funktionen des Verilogstandards als es bei 0.8.x der Fall ist.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.