www.mikrocontroller.net

Forum: FPGA, VHDL & Co. resize() über Registerstufe führen?


Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Uwe ... (uwegw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wozu sollte da ein Register nötig sein? Es werden ja einfach nur 
Leitungen weggelassen bzw. mit konstanten Werten erzeugt...

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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...

Autor: Uwe ... (uwegw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da wird dann ja einfach nur die MSB-Leitung auf die zusätzlichen Bits 
weitergeleitet...

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm, okay hast Recht! Danke.

Wie sieht das denn beim Shiften aus? Sollte man dahinter ein Register 
packen?

Autor: Uwe ... (uwegw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

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.