www.mikrocontroller.net

Forum: FPGA, VHDL & Co. ISE beim erstellen der .bit Zeit sparen?


Autor: sWeeR (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich arbeite mit ISE 12.3 an einem RocketIO GTP_DUAL tile.

Leider dauert das synthetisieren, mappen, routen einfach ewigkeiten (> 5 
min)
Wenn ich nur ein bisschnen was im Source-Code geändert habe, muss ich 
diesen ganzen Prozess wiederholen. So dauert das Programmieren einfach 
zu lange.

Kann ich das irgendwie beschleunigen? Vielleicht, die Module alle 
einzeln erstellen zu lassen, und auch so die einzelnen Cores zu 
integrieren? Hab gesucht, aber nichts gefunden zu dem Thema..

Vielen dank,
sWeeR

Autor: D. I. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sWeeR schrieb:

> Leider dauert das synthetisieren, mappen, routen einfach ewigkeiten (> 5
> min)

Da habe ich jetzt mal 3 Mal herzlich gelacht :D 5 Minuten = Ewigkeit mag 
vllt in der Softwarewelt gelten, hier ist das so ziemlich die untere 
Grenze

Nein man muss immer wieder alles durchführen.

Autor: sWeeR (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schade, das is ja übel... danke für die schnelle antwort!

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ISE ist einfach total langsam. Unter ISE 9.2 hab ich mal den versuch 
gemacht und ein einfaches UND glied Synthetisiert. Selbst das hat bis 
zum bit File 30 sekunden gedauert. Grosse Teile von ISE sind leider in 
Java gekodet.

>hier ist das so ziemlich die untere Grenze
Zumindest bei Xilinx, andere Tools sind schneller, wenn auch nicht viel

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sWeeR schrieb:
> Leider dauert das synthetisieren, mappen, routen einfach ewigkeiten (> 5
> min)

Ich hatte auch schon mit Designs zu tun, die liefen nicht unter 5h 
durch.
Du solltest Deinen Workflow ändern.

Nicht auf der Hardware wird rumprobiert, sondern im Simulator. Und zwar 
solange bis es dort läuft. Dann kann man auf die Hardware gehen...

Duke

Autor: lalala (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
man sollte sich auch mal vor Augen halten was hier alles passiert. Es 
ist kein Compiler, der Befehle in Maschinensprache übersetzt. Die 
komplette beschriebene Logik wird analysiert, vereinfacht, optimiert. 
Die Gatter werden dann im FPGA richtig platziert und müssen dann auch 
noch verbunden werden, und das alles so, dass das Timing passt. Ich 
vergleiche sowas immer gerne, wenn man eine Platine designed ... alleine 
das Routen kann ewig dauern, bis es passt ...

Bei diesen 5min musste ich auch herzhaft lachen - das reicht ja nicht 
mal um sich einen Kaffee zu holen :-P

Autor: Anguel S. (anguel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ich bei der Diskussion sehr interessant finde ist, dass niemand 
sagt, was für einen Rechner er verwendet ;)

Autor: lalala (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
tut meiner Meinung nach nicht wirklich soviel zur Sache - wenn man ein 
Design hat, dass 5min braucht, ist ein schneller halt in 4min und ein 
langsamer in 6min fertig. Bei einem Design, dass 5h braucht, ist der 
schnelle in 3h, der langsame in 8h fertig - aber die Größenordnung 
bleibt doch letztendlich diesselbe. Beim kleinen Design, kann man mal 
schnell nochmal Routen, beim großen Design, kann man das Ergebnis eh nur 
1-2 mal pro Tag ausprobieren, wenn man den Rechner auch über Nacht 
laufen läßt.

Mehrkernrechner werden eh nicht unterstützt, also kommt es nur auf die 
Taktfrequenz und Speicheranbindung an. Bei den Taktfrequenzen tut sich 
ja nicht mehr soviel.

Autor: René D. (Firma: www.dossmatik.de) (dose)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mittlerweile sind in einem PC-Processor mehrer CPUs.

Ich habe auf meine CPU-Auslastung bei einem längeren Fitvorgang 
geschaut. Bei mir sind 4 CPUs vorhanden.
Eine CPU hat 100% Auslastung und die anderen drei CPUs haben 
2%Auslastung. Die 100% sind immer mal an einer anderen CPU, das hängt 
sicher auch von dem Betriebssystem wie die Prozesse verteilt werden.

In der Console sind die Meldungen an was gerade gewerkelt wird.

Optimierung A
Optimierung B
Optimierung C

Das läasst sich auch parallel auf verschiedenen CPUs organisieren. 
Leider hat ISE kein Multithreading.

Ich habe das Webpack. Es wäre interessant, wenn jemand die 
Prozessorauslastung von einer vollen Lizenz mal postet, ob dann 
Multithreading existiert.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nö, auch bei der System Edition gibts nix paralleles. Stelle ich mir 
auch schwer vor, da ja das Design schlecht vom Mapper partitioniert 
werden kann. Wichtig ist, dass man viel schnellen RAM hat, denn gerade 
bei den größeren FPGAs frisst map und ngdbuild massiv Speicher: 
http://www.xilinx.com/ise/products/memory.htm

Autor: D. I. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich sah bisher noch nicht wirklich ein Problem, warum man das nicht 
multithreaden könnte, denn im Prinzip ist das ja nichts anderes wie 
heuristisches Backtracking und ein paar andere Sachen, da könnte man 
durchaus mehrere Möglichkeiten auf mehreren CPU's gleichzeitig testen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.