www.mikrocontroller.net

Forum: FPGA, VHDL & Co. effizienz von edk/ise 8.1


Autor: Breti (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe mir soeben edk und ise in version 8.1 mit den jeweils
verfügbaren updates installiert. dabei habe ich ein bisher
funktionierendes design für ein spartan3 starterkit neu synthetisiert
und es passt plötzlich nicht mehr in das fpga, was mich etwas stutzig
macht.
Gleichzeitig ist die maximale Geschwindigkeit des uBlazes von 88,87Mhz
auf 86,62Mhz gesunken.

vorher (hat gerade noch rein gepasst):
Logic Utilization:
  Number of Slice Flip Flops:  1,650 out of   3,840   42%
  Number of 4 input LUTs:      2,836 out of   3,840   73%
Logic Distribution:
 Number of occupied Slices: 1,918 out of 1,920 99%
 Number of Slices containing only related logic: 1,760 out of 1,918
91%
 Number of Slices containing unrelated logic: 158 out of 1,918 8%
Total Number 4 input LUTs:          3,292 out of   3,840   85%
  Number used as logic:              2,836
  Number used as a route-thru:         112
  Number used for Dual Port RAMs:      256
  Number used as Shift registers:       88

nachher:
Logic Utilization:
  Number of Slice Flip Flops: 1,595 out of   3,840   41%
  Number of 4 input LUTs:     3,014 out of   3,840   78%
Logic Distribution:
 Number of occupied Slices: 1,945 out of 1,920 101%!!!!
 Number of Slices containing only related logic: 1,759 out of 1,945
90%
 Number of Slices containing unrelated logic: 186 out of 1,945 9%
Total Number 4 input LUTs:          3,430 out of   3,840   89%
 Number used as logic:              3,014
 Number used as a route-thru:          69
 Number used for Dual Port RAMs:      256
 Number used as Shift registers:       91

Ist Euch ähnliches passiert? Es scheint mir, dass die Tools
ineffizienter arbeiten als vorher arbeiten.
Optimization ist übrigens auf "Speed" mit Optimization Effort
"high" gestellt. Ich könnte es natürlich mal auf Slices hin
optimieren - ich finde es aber trotzdem komisch, dass die Effizienz der
tools nachgelassen hat.

Viele Grüße,
             Thomas

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm das ist zu Komplex um sicher antworten zu können. Was sich bei
updates ändert, sind die speedfiles. In diesen stehen die Zeiten fürs
Silizium, sind also bei updates genauer, meist schneller. In den ersten
Versionen baut man mehr Reserven ein, z.B wenn bisher 90% der
gefertigten Chips die LUT's in 1.9 ns durchlaufen werden, gibt Xilinx
vielleicht 2.2 ns an. Wenn dan die Ausschussrate (chips langsamer als
2.2ns) nicht steigt und immer noch die meisten Chips LUT's von 1.9 ns
haben, setzt man in den Speedfiles des updates die Laufzeit auf 2.0
ns.
Deshalb werden selbe Designs mit neuen Tools meist schneller.

Wenn jetzt ein design langsamer wird!? Vielleicht hat das Update
Defaulteinstellungen geändert. Also wenn z.B. die Treiberstärke der
IO-Pins nicht vorgeben wurde, wird in der Version x.01 12 mA gesetzt in
der Version x.02 8 mA.

Nach meinen Erfahrungen hilft nur ein Spielen mit den Optionen. Xilinx
gibt selbst ein Script/Tool heraus (Xplorer) um durch Try und Error die
optimalen Einstellungen zu finden. Ich hat schon ein Design, das mit
eingeschalteten Optimierungen größer und langsamer wurde.

Also ich kann nicht sicher sagen, ob die Tools wirklich schlechtere
Ergebnisse produzieren müßen.

Autor: TheMason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@breti
@fgpaküchle

also ich habe auch einen solchen effekt beobachtet. ich habe mir unter
6.2 einen kleinen dsp-kern gebastelt (mac einheit, 4 multiplexer, 3
blockrams, schieberegister, statemachine + ein bisschen logik).
beim 6.2 ise kam ich beim design auf 100MHz. beim 8.1 kam ich nur auf
53MHz.
aber danke für den tip mit den optionen. werds mal probieren ob ich da
auf mehr komme, da ich auch lieber neuere versionen nutze in denen
weniger bugs auftreten (wobei ich mit 6.2 bis jetzt eigentlich recht
zufrieden bin). schaun mer mal

gruß
rene

Autor: Breti (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

also ich werde dann wohl auch mal den xplorer testen. Mal schauen, was
dabei herauskommt. Vielleicht geh ich mal bei unserem Prof. fragen. Die
entwickeln ein ähnliches Tool, welches genetische Algorithmen zur
exploration einsetzt. Mal schauen, was der dazu sagt.

Gruß,
      Thomas

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.