Hallo, wenn ich in VHDL eine mathematische Formel synthetisieren möchte, die aus mehreren elementaren Rechenoperationen besteht, dann sollte ich sicherlich hinter jedem Addierer, Subtrahierer etc. ein Register setzen, wenn ich eine hohe Taktgeschwindigkeit erzielen möchte. Soviel ist klar. Aber wie sieht aus, wenn ich die resize-Funktion anwende (z. B. am Eingang einer Komponente. Würdet ihr das auch über ein Register führen (auch in Hinblick auf signed-Werte)? Oder gleich dahinter einen Addierer, Subtrahierer etc.? Was sagt da die "best practice"? Ich habe bisher hinter resized-Funktionen immer ein Register gesetzt. Ich komme aber langsam ins Grübeln, ob das nicht reine Ressourenverschwendung ist. Grüße, Mike
Wozu sollte da ein Register nötig sein? Es werden ja einfach nur Leitungen weggelassen bzw. mit konstanten Werten erzeugt...
Bei resize auf unsigned-Werten mag ich dir ja Recht geben, aber trifft das auch auf signed zu? Da muss doch in Abhängigkeit vom MSB "aufgefüllt" werden...
Da wird dann ja einfach nur die MSB-Leitung auf die zusätzlichen Bits weitergeleitet...
Hmm, okay hast Recht! Danke. Wie sieht das denn beim Shiften aus? Sollte man dahinter ein Register packen?
Stell dir einfach vor, wie du das Ganze als TTL-Grab aufbauen würdest. Dann wird sofort klar, was wirkliche Logik und was nur Verdrahtung ist. Shiften um eine konstante Anzahl von Bits heißt ja nichts anderes, als die Bitleitungen nicht 1:1, sondern versetzt zu verbinden.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.