|
|
Xilinx ISE: Hinweise zu VersionenHinweise zu den aktuellen Versionen der Xilinx-Entwicklungsumgebung ISE und deren Probleme: [Bearbeiten] Allgemein
[Bearbeiten] ISE 11.2[Bearbeiten] Vorteile
[Bearbeiten] Nachteile
[Bearbeiten] Bugs
[Bearbeiten] ISE 9.2[Bearbeiten] Probleme
[Bearbeiten] ISE 9.0[Bearbeiten] ProblemeDie vorhandenen Projekte der Versionen 8,x werden meist reibungslos importiert (5 Testversionen) - sie funktionieren jedoch nicht vollständig. Abhilfe schafft teilweise das vollständige Löschen alter Projektdateiein und das Anwerfen einer neuen vollständigen Synthese. Vereinzelt war es nötig, Schematics updates durchzuführen, bzw nicht erkannte HDL-Files einmalig zu laden und wieder zu speichern. [Bearbeiten] VerbesserungenVereinzelt kleinere Design / bessere FPGA-Ausnuntzung im Falle von Virtex 4. Kaum Verbesserungen bei Spartan3 beobachtet. [Bearbeiten] NachteileGeringfügig längere Syntheselaufzeiten bei großen Projekten. [Bearbeiten] Xilinx ISE 8.2[Bearbeiten] Kurz und KnappFalls es nicht unbedingt nötig ist, sollte man bei der Vorgängerversion 8.1SP3 bleiben:
[Bearbeiten] ProblemeDas Problemkind heisst in der 8.2. XST, also das erste Glied der Kette: Es fängt mit angeblichen doppelten Bibliotheken an, work (klein) und WORK (gross) erscheinen, wo es nur eine Bibliothek gibt. Glücklicherweise hat die Fehlermeldung auch einen workaround parat: in skripten den Schalter -work_lib verwenden. Weiter gehts mit heftigen Umbennen der Instanzennamen. dann steigt ngdbuild aus, da die Netznamen dort nicht mehr zu Netzliste aus dem XST passen. Da hilft nur Editieren des ucf files (was aber dann nicht mehr abwärtskompatibel ist). Der XST hatte schon immer Problem mit Records. jetzt habe ich eines aus einem std_logic und einem Integer-array. das benutzt ich in einem generic. bei 8.1. alles in Ordnung, die 8.2 meckert irgenwas wie "Kann Feldindex nicht auflösen". Also behält man den record, benutzt aber als generic die Elemente einzeln. Hier ein generic für den std_logic und ein anderes für das Feld. In der generic map weisst man diesen beiden jeweils das element aus dem record zu. Auch Felder werden zum Problem. Hat man eins definiert in dessen Indexbereich eine Konstante benutzt wird (type mein_feld is array C_obere_grenze Downto 0 of integer) raucht XST mit Fatal Error ab, obwohl die Konstante deklariert und i.O. ist. Schreibt man statt der Konstanten die Zahl (z. B. 4 downto 0) ist alles i.O.. An irregulärem VHDL kann es nicht liegen, modelsim vetarbeitet es anstandslos. [Bearbeiten] Vorteile
[Bearbeiten] Xilinx ISE 8.1Seit Januar 2006 ist eine neue Versionen der Tools für die FPGA Programmierung der Xilinx Tools verfügbar. Ebenfalls im Januar wurde der erste Patch auf www.xilinx.com veröffentlicht. Im folgenden eine Liste der Vor- und Nachteile. Diese Erfahrungen wurden mit der WebPack- und Voll-Variante auf Linux und Microsoft Windows gemacht. Zum Teil entstammen sie dem Forum "Programmierbare Logik" von www.mikrocontroller.net. Manche der genannten Punkte sind bereits in der Version 7.1 neu hinzugekommen. Das ServicePack2 liegt seit 14.02.06 bei xilinx auf der website. Das Download-Tool (Impact) scheint nach dem Update unzuverlässiger (aber vielleicht liegts auch an Hardware). Ansonsten kaum Änderungen zum SP1. Die folgende Version Version (8.2) kame Ende März 2006, das zur 8.* passende EDK Ende Februar 2006 heraus. Laut Xilinxdistributor für Österreich, Silica wien, kommt anfang 2007 eine völlig neue und komplett überarbeitete Version 9.0 heraus. [Bearbeiten] Bugs[Bearbeiten] Zerstörung von VHDL-Files in Projekten von Vorgängerversionen
[Bearbeiten] Sonderzeichen deutsche Tastatur
[Bearbeiten] Tastatur HotKeysDie "alten" HotKeys und Cut/Paste geht gelegentlich nur wenn das Editorfenster im "float" modus ist. [Bearbeiten] Impact (FPGA Download)
[Bearbeiten] Linux map Absturz
[Bearbeiten] Änderungen
Das *.ise ist nich lesbar, zumindest nicht für Menschen. Damit sind Pfade nicht per Edit der Projektdatei bequen anpassbar. Verschiebung der Quelltexte erfordert Neuaufsetzen des Projektnavigators.
[Bearbeiten] Pathseperatorngdbuild wollte erst nicht, im ucf gabs Instanznamen die er nicht gefunden hat. Problem war wohl eine Änderung in der Defaulteinstellung wegen Preserve Hierarchie. Nachdem im ucf die Instanznamen mit / getrennt worden, liefs auch wieder. Version 6.3: INST toplevel_instanzname -> Version 8.1: INST toplevel/instanzname [Bearbeiten] Error statt Warning: Taktnetzwerk aus nicht GlobalClock Pin gespeistWird ein Taktnetzerk (DCM Eingang oder VHDL: clk_signal'event) nicht über ein GlobalClockPin in den FPGA geführt brechen die Tools (map oder PAR?) mit einem Fehler ab. Durch Setzen einer Variable (XIL_PLACE_ALLOW_LOCAL_BUFG_ROUTING) wird ein solches Design wie in den vorigen Versionen nur mit einer Warning angemeckert und die tools laufen bis zur Erstellung des Downloadfiles durch. [Bearbeiten] Syntax VHDL-Konstrukte
[Bearbeiten] Verbesserungen
|