Forum: FPGA, VHDL & Co. Xilinx ISE: Taktfrequenzangabe nach der Synthese


von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Hallo,

ist die Taktfrequenzangabe nach der Synthese eine obere Grenze, also 
kann ich mir das Implement Design schon sparen wenn die Frequenzangabe 
nach der Synthese zu klein ist?

Gruß
Andreas

von Falk B. (falk)


Lesenswert?

@  Andreas Schwarz (andreas)

>ist die Taktfrequenzangabe nach der Synthese eine obere Grenze, also
>kann ich mir das Implement Design schon sparen wenn die Frequenzangabe
>nach der Synthese zu klein ist?

Jain. Diese Angabe ist eine, wie ich meine, äusserst grobe Abschätzung, 
die meistens zu HOCH ist.

MfG
Falk

von Jan M. (mueschel)


Lesenswert?

Es bestehen gute Chancen bei den meisten Designs, sie durch geschicktes 
Placement einige Prozent schneller zu bekommen. Insofern hilft meist nur 
ausprobieren.

Dass die Angabe nach der Synthese hoeher ist, als der endgueltige Wert 
liegt haeufig aber auch an den gesetzten Constraints: Bei der 
Implementierung wird nur darauf geachtet, die Constraints einzuhalten, 
auch wenn eine deutlich schnellere Implementierung moeglich waere.

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Dank!

Noch eine verwandte Frage: der langsamste Pfad besteht zu > 60% aus 
Routingverzögerung. Das erscheint mir ungewöhnlich viel. Gibt es für 
solche Fälle irgend ein "Patentrezept" um die Geschwindigkeit zu 
verbessern?

von Jan M. (mueschel)


Lesenswert?

Die Verzoegerung durch eine lookuptable ist gewoehnlich kleiner als das 
net delay auf dem Weg zu einem anderen Slice, das womoeglich noch nicht 
einmal benachbart ist. Zum Beispiel bei einer Operation, die viele 
Signale aus verschiedenen Teilen der Logik verbindet, ist das also ganz 
normal.

Manchmal hilft es beispielsweise, die Logik etwas umzustrukturieren, so 
dass die Synthese weniger luts verwendet und dafuer set- und 
clear-Eingaenge an Flipflops benutzt. "Patentrezept" wuerde ich das aber 
nicht nennen.

von Falk B. (falk)


Lesenswert?

@  Andreas Schwarz (andreas)

>Noch eine verwandte Frage: der langsamste Pfad besteht zu > 60% aus
>Routingverzögerung. Das erscheint mir ungewöhnlich viel. Gibt es für

Ist nicht ungewöhnlich.

>solche Fälle irgend ein "Patentrezept" um die Geschwindigkeit zu
>verbessern?

Pipelining.

MFG
Falk

von FPGA Spezialist (Gast)


Lesenswert?

Das pipelining ist ein Designkonzept. Du meinst sicher flipflops 
dazwischen, um das Routing zu überbrücken. Das führt dann zu pipelined 
Strukturen. (Man beachte Ursache und Wirkung)

Die Idee ist nicht schlecht, haut nur im FPGA nicht hin, weil mit 
speziellen Interconnections gearbeitet wird, und nicht mit "langen 
Leitungen", wie im ASIC. Dort geht die Laufzeit mit der Länge im Quadrat 
und kann durch FFs merklich reduziert werden. Wenn er - wie oben 
angedeutet - 60% fürs Routing braucht, dann hat das seinen Grund: (von 
mir aus spezieller Pins an BRAM oder an die Multiplier. Den Weg kann man 
kaum verkürzen.)

pipelining bringt im FPGA nur Schaltgeschwindigkeit (man unterscheide 
zum Datendruchsatz), wenn man einen extrem langen kombinatorischen Pfad 
hat.

Ein FF mehr dort im Zweig kann etwa die Hälfte von den 40% bringen, 
wobei einem wieder einige ns aufgebrummt werden. MAcht also maximal 15% 
verbesserung. Könnte natürlich sein, daß die reichen.

Was man vorab probieren sollte: "Timing Driven Placement"

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.