Forum: FPGA, VHDL & Co. Optimierer erzeugt unplausible Ergebnisse


von Tomtom (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Moin,

ich habe eine relativ "schmale" Anwendung entwickelt und anschließend 
versucht ein paar Optimierungen durchzuführen.
Witzigerweise sagt mir der Report des Compilers, dass die Anwendung mit 
Performance-Optimierer mehr Logikzellen beansprucht und eine geringere 
maximale Frequenz aufweist, als im platzsparenden und energieeffizienten 
Modus.

Trotz einiger Erfahrung hab ich das vorher noch nie erlebt.. Kann sich 
das jemand erklären und mir etwas erklären?

von Tom Tailor (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Tomtom schrieb:
> Kann sich das jemand erklären und mir etwas erklären

Die Prozesse passen jetzt nicht mehr in die vorher dafür vorgesehene 
Taktzahl, die zufällig komplett ausgefüllt wurde. Durch die Optimierung 
muss jetzt noch ein Takt drangehangen werden, der wiederum eine 
komplette zusätzliche Zelle beansprucht und somit die Frequenz scheinbar 
verlangsamt.
In diesem Fall war die Optimierung leider eine Verschlimmbesserung.

Tomtom schrieb:
> hab ich das vorher noch nie erlebt

Dieser Effekt kommt auch nur selten vor.

von Lothar M. (lkmiller) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Tomtom schrieb:
> Witzigerweise sagt mir der Report des Compilers
Welcher Compiler?
Oder machst du was mit FPGAs und meinst den Synthesizer? Falls ja: das 
Timing des Synthesizers kann schon mal nett danebenliegen. Was kommt 
nach der vollständigen Implementierung heraus?

von Tomtom (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Danke euch beiden.

@Lothar: Intel nennt den Synthesizer in der Quartus-Software nunmal 
Compiler :)

Die Implementierung habe ich schon abgeschlossen. Wie bereits 
geschrieben, handelt es sich eher um eine kleine Anwendung mit ca. 250 
Zeilen Code.

Wenn die Verschlimmbesserung durch den Optimierer allerdings daneben 
ging, frage ich mich, warum der Synthesizer das nicht selbstständig 
erkannt und "zurückrudert"..

von Tobias B. (Firma: www.elpra.de) (ttobsen) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Die Toolkette hoert dann auf, wenn alle Contraints erfuellt sind. Einen 
Workflow ala "mach mir mal so schnell wie moeglich" gibt es nicht, 
dafuer gibt es viel zuviele Freiheitsgrade beim P&R und wuerde 
Ewigkeiten dauern.

Dir bleibt nichts anderes uebrig als Timing Constraints zu setzen und 
diese immer weiter nach oben zu schrauben, bis die Implementierung fehl 
schlaegt. Und selbst dann gibt es noch weitere Strategien um da noch 
mehr heraus zukitzeln.

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.

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