mikrocontroller.net

Forum: FPGA, VHDL & Co. CPU mit 2 Kernen


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi @all

Ich möchte aus dem VHDL-Projekt das Konfigurationsfile für den FPGA 
erzeugen. Dies dauert immer sehr lange ca 4 Minuten. Dies möchte ich 
beschleunigen. Daher wird ein neues PC-System gekauft. Momentan denke 
ich an einen Core2 Duo von Intel. Hat vielleicht schon jemand eine CPU 
mit 2 Kernen? Werden diese gleichzeitig von ISE ausgelastet, wenn das 
Konfigurationsfile erzeugt wird?.

Grüsse

Michael

Autor: ron (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Dies dauert immer sehr lange ca 4 Minuten"

4 Minuten = langsam???

bin froh wenn mein FPGA Programming file in 2-3h fertig ist, und das auf 
nem 2.5 Ghz P4

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie will man da denn noch etwas testen. P4 mit 2,5GHz ist ja auch nicht 
schnell. Ich rede von einem Core2 Duo. Der sollte viel schneller sein.

Autor: Benedikt W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
warum sollte ein core duo schneller sein ?
normaler weise bekommt jede cpu einen teil der arbeit den sie berechnen 
soll, dazu müssen die daten synchronisiert werden.
aber beim "compilieren" wird eigentlich nur eine cpu ausgelastet.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ISE für das was da solange dauert mehrere parallele 
Prozesse/Threads verwendet, dann hilft ein zweiter Core. Ansonsten eher 
nicht.

Autor: Fabian Scheler (rosepeter)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> aber beim "compilieren" wird eigentlich nur eine cpu ausgelastet.

Also ich weiß ja nicht, wie du größere Sachen baust, aber für make gibt 
es eine schöne Kommandozeilen-Option -j <Anzahl paralleler Procs>, als 
Daumenregel sollte man hier die Anzahl der verfügbaren Cores * 3 
angeben, und dann fetzt das ganz schön!

Wenn es darum geht Netzlisten für FPGAs etc. zu bauen, sieht die Sache 
natürlich etwas anders aus, schließlich ist die ja irgendwann mal 
"global", da nützen viele Prozesse freilich wenig. Aber vielleicht haben 
die Tool-Hersteller ja ihre Hausaufgaben gemacht und das 
Synthese-Werkzeug in parallelisierbare Teile aufgesplittet, dann dürfte 
man von mehreren Cores auch hier profitieren.

Ciao, Fabian

Autor: T.M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim Place & Route, was den Löwenanteil ausmacht, kann man angeben, dass 
mehrere Kerne (falls vorhanden) genutzt werden sollen. Wenn du mit 4 
Minuten die Zeit von der Synthese bis zum fertigen Bitfile meinst, ist 
das aber eh ein Witz. Bei jedem etwas größeren Design dauert es um 
einiges länger. Wir Implementieren hier auf einem Linux-System mit 2 
Opterons und 4GB RAM drauf und benötigen mindestens genauso viel.


T.M.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich finde 4 Minuten trotzdem langsam. Gerade wenn man den Fehler 
eingrenzen möchte schalte ich systematisch Teile ab. Jedesmal muss ich 
dann 4 Minuten warten, um dann das Ergebnis anzuschauen. Diese Zeit 
kommt mir sehr lange vor. Und ich gehe mit einem schlechten Gefühl nach 
Hause wenn ich so langsam voran komme. Wenn das nur 20 Sekunden dauern 
würde, dann würde ich schneller voran kommen.

Ich denke mal das man nicht mehr als 1GByte RAM benötigt. Ich finde die 
CPU wird immer belastet. Ich denke mal das jedes mal irgendwelche 
Bibliotheken neu compaliert werden.

Mit meinem Programm habe ich ca 15% eines Spartan3 mit 400k Systemgates 
ausgelastet. Deshalb denke ich das mein Projekt auch nicht mehr so klein 
ist. Der Core2 Duo besitzt eine neue Architektur. Der kann jetzt viel 
mehr Befehle mit einem Takt ausführen.

Wo kann man die Einstellung vornehmen? (das beim Place and Route mehrere 
CPU Kerne verwendet werden sollen?)

Ach ja im November kommen schon 4 Kerne raus.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn dein P4 HyperThreading kann und es aktiviert ist, dann könnte diese 
Einstellung auch da schon helfen.

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
andreas:
"Wenn dein P4 HyperThreading kann und es aktiviert ist, dann könnte 
diese
Einstellung auch da schon helfen."

Nach meiner Erfahrung: negativ. Laut Taskmanager ist eine Hälfte der CPU 
beschäftigt während Synthese etc.. Volle Auslastung erreiche ich z.B 
durch eine parallel laufende Simulation...



4 min für ca 50 000 Gates ist nicht besonders schnell (ich geh mal von 
einem 1,5 Jahren alten PC aus). Da kannst du mit den richtigen 
Einstellungen und Designbeschreibungen einigen rausholen. Schalte mal 
die Optimierung vom Place und route auf "std". Das dürfte einiges an 
Rechenzeit bringen. Falls dein timing dann nicht mehr stimmt platziere 
dann die kritischen stellen (DCM,BUFG,MULT18) per Hand und halte es im 
*.ucf per LOCATE constraint fest. Ebenso bringt die Optimierung bei der 
Synthese nicht immer den gewünschten Erfolg, sondern frisst nur Zeit.

Autor: SiO2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist leider so, das die Synthese etwas lahmt. selbst wenn ich nur nen 
blinklicht Synthetisiere, dauert es vielleicht 15 sec.

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.