www.mikrocontroller.net

Forum: FPGA, VHDL & Co. VHDL: Addition von 64Bit-std_logic_vector


Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich mächte zu der Adresse A im Format std_logic_vector einen Offset B 
addieren.

Also
C := A + B;

Das Problem ist, dass A und C eigentlich std_logic_vector(63 downto 0) 
sind, B ist ein std_logic_vector(3 downto 0)

Da man std_logic_vector-Signale nicht addieren kann, wandele ich sie in 
integer um mit to_integer(unsigned(A))

Jetzt ist der Integer-Datentyp aber auf 32Bit beschränkt.

Wie mache ich das am besten?

Autor: Kest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
std_logic_vector'en kann man sehr wohl addieren.

Aber konvertiere einfach nicht zu integer sondern nach unsigned, das 
geht dann problemlos


Grüße,
Kest

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke!
Funktioniert wunderbar...


In der VHDL-Referenz, die ich habe, steht bei erlaubte Datentypen nur 
Integer und Real...

Autor: hera (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
C <= std_logic_vector(unsigned(a) + unsigned(b));

Mit Überlauf :

C <= std_logic_vector(unsigned(a) + unsigned("000000000000000...0" & 
b));

Also b so erweitern, daß gleiches format, dafür C ein bit mehr.

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.