Forum: FPGA, VHDL & Co. Verilog nach Vhdl (Bits zusammenfügen)


von peter (Gast)


Lesenswert?

Werte mit Bitbreite:
wire [9:0] charLin;
reg [9:0]  CounterY;
wire [7:0] char;

Wie kann man das bitte in VHDL umsetzen :
assign charLin = {char,CounterY[3:1]};

char und CounterY[3:1] sind 11 Bit.
charlin hat 10 Bit.

Danke.
Gruss

von max (Gast)


Lesenswert?

concatination geht mit '&'

von 123 (Gast)


Lesenswert?

Nur als Beispiel

a : bit_vector(3 downto 0);
b : bit_vector(3 downto 0);

a & b entspricht aaaabbbb also 8 Bit

Aber auch:

a(2 downto 0) & b(1 to 3)

Man beachte auch die "Drehung" von MSB und LSB bei b

von peter (Gast)


Lesenswert?

Ja , danke für die Hilfe.

Gruss

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


Lesenswert?

123 schrieb:
> Man beachte auch die "Drehung" von MSB und LSB bei b
Die so natürlich nicht geht, wenn der Vektor b in absteigender 
Reihenfolge definiert ist.

Aber prinzipiell kann durchaus einem aufsteigendem Vektor ein 
absteigender zugewiesen werden. Dann wird bei einem 8 Bit Vektor das Bit 
(0) zum Bit (7). Allerdings ohne das es seine eigentliche Position im 
Vektor ändert...

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.