Vektor zusammensetzen: 0 definitions of operator "&" match here

Gast #3997833
Hallo an alle,

ich habe folgendes Ausgangslage: Ich habe einen Vektor len, der um size 
nach links geschoben werden soll. Dazu habe ich folgende Signal- bzw. 
Variablen:
1
signal s_len      : std_logic_vector(7 downto 0);
2
signal s_size     : std_logic_vector(2 downto 0);
3
variable v_size   : integer range 0 to 7;
4
variable v_result : std_logic_vector(14 downto 0);

Ich möchte nun in v_result das Signal so zusammensetzen, dass in den 
unteren Bits v_size-1 Nullen, dann s_len und darüber die restlichen 
Nullen angeordnet sind.

Dazu habe ich folgendes versucht:
1
v_size   := to_integer(unsigned(s_size));
2
v_result := (7 - v_size downto 0 => '0') & s_len & (v_size-1 downto 0 => '0');

Mit ist schon klar, dass damit nicht die einfachste Logik synthetisiert 
wird, doch es scheitert bei mir mit VHDL. Leider liefert mir Vivado die 
folgende Fehlermeldung:
1
[Synth 8-944] 0 definitions of operator "&" match here ["test.vhd":45]

Kann mir jemand damit helfen?

lg Martin
Gast
s_len und v_result sind zwar vom Typ std_logic_vector,
aber (others => '0') oÄ kann verschiedene Typen matchen,
z.B. auc bit_vector. Und da der &-Operator eben auch für
diese Typen definiert ist und std_logic_vector erwartet
wird, kommt es nun mal zu Mehrdeutigkeiten. VHDL mag's
aber nur eindeutig.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 11 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.