Forum: FPGA, VHDL & Co. You can improve the performance of the multiplier.


von Hans-Werner (Gast)


Lesenswert?

Was bedeutet denn diese Meldung ?

You can improve the performance of the multiplier XYZ by adding two 
registers

Wo sollte oder könnte man denn da zwei Register spendieren ?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sieh dir das an, da sind 2 Registerebenen hinzugekommen
Beitrag "Re: Latch bei Berechnung mittels FSM"
--> das Design kann schneller getaktet werden,
    der Multiplizierer hat aber Latency
    (der braucht letztendlich gleich lang ;-)

EDIT:
Das mit dem "improve" bezieht sich also nur auf die maximale 
Taktfrequenz des Designs, nicht auf die absolute Rechendauer der 
Multiplikation.

von Uwe Bonnes (Gast)


Lesenswert?

Vorsicht,
wenn das ein DSP48 aus dem Spartan3DSP ist, dann schafft der Synthesizer 
(noch) nicht, verfuegbare Register auch zum Pipilinen zu verwenden.

von Duke Scarring (Gast)


Lesenswert?

> der Synthesizer
Welche XST Version? Welches Service Pack?

Duke

von Hans-Werner (Gast)


Lesenswert?

Ah, jetzt ja.
Aber was bringt der schnellere Takt als solcher wenn die Ausführungzeit 
gleich bleibt ?
Eigentlich Nichts.

von spartanne (Gast)


Lesenswert?

klar bleibt die Ausführungszeit deines multipliers u.U. gleich. Aber der 
Rest des Designs ist schneller, dein multiplier ist nicht mehr der 
kritische Pfad welcher die max Frequenz runterzieht. Und du wirst ja 
nicht nur den multiplier im Design haben?!?
Hat Lothar auch schon geschrieben:
> Das mit dem "improve" bezieht sich also nur auf die maximale
> Taktfrequenz des Designs, nicht auf die absolute Rechendauer der
> Multiplikation.

von Karl (Gast)


Lesenswert?

Hier fehlen irgendwie die Begriffe "Latenz" und "Durchsatz".
Die Latenz verbessert sich durch das Pipelining nicht, die Zeit vom 
Start bis zum Ergebnis bleibt ungefähr gleich. Allerdings verdreifacht 
sich der Durchsatz, weil ja mit dem höheren Takt gearbeitet wird.

von Gast (Gast)


Lesenswert?

>Die Latenz verbessert sich durch das Pipelining nicht,
Doch, sie steigt!

von Morin (Gast)


Lesenswert?

> >Die Latenz verbessert sich durch das Pipelining nicht,
> Doch, sie steigt!

Damit verschlechtert sie sich aber.

von Karl (Gast)


Lesenswert?

>>Die Latenz verbessert sich durch das Pipelining nicht,
>Doch, sie steigt!

Sinn?

von Uli W. (uliw2008)


Lesenswert?

>>>Die Latenz verbessert sich durch das Pipelining nicht,
>>Doch, sie steigt!
>Sinn?

Kein Sinn, sondern negativer Begleitumstand zugunsten des höheren 
Taktes. Lohnt immer dann, wenn die Summe an zu bearbeitenden Daten gross 
gegen die Latenz ist, weil N+D clocks abzuwarten sind ud die Zeit dann 
sinkt.

von Karl (Gast)


Lesenswert?

Was ist nun N und D schon wieder? Die Latenz steigt im Idealfall doch 
nur um 3 setup-Zeiten für die FFs, oder? In der Realität kommt wohl noch 
ein bischen was dazu, weil man die Arbeit sicher nicht exakt dritteln 
kann. In Anbetracht der Gesamtdauer für eine rein kombinatorische 
Multiplikation würde ich die Latenz eben als beinahe gleich ansehen.

von Morin (Gast)


Lesenswert?

> Die Latenz steigt im Idealfall doch nur um 3 setup-Zeiten für die FFs, oder?

Die setup-Zeit ist erstmal vernachlässigbar klein.

> In der Realität kommt wohl noch ein bischen was dazu,
> weil man die Arbeit sicher nicht exakt dritteln kann.

Gut erkannt. In einer Pipeline macht das den größten Teil der 
"verschwendeten" Zeit aus und ist i.A. weit mehr als nur "ein bischen". 
Gerade bei komplizierteren Pipelines wird ein Riesenaufwand betrieben, 
um die Dauer der einzelnen Stufen auszugleichen.

Dieser spezielle Fall mit dem Multiplier ist aber wohlbekannt und es 
gibt sicher haufenweise Doku, wo genau die Register eingefügt werden 
sollen, d.h. jemand anderes hat dir schon die schlimmste Arbeit 
abgenommen.

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.