VHDL fill rest of the vector in assignment

Guest #3543565
Hello,
I'd like to assign a value to an std_logic_vector, and fill the rest of 
the vector with zeros. The length of the vector is defined with a 
generic or a constant.
So it would be like this (but this does not work):

signal my_signal : std_logic_vector(CONST_WIDTH downto 0);
my_signal <= (others => '0') & x"2";

It could be done with a for generate statement, but are there any 
shorter and nicer solutions?
Guest
Oh this does it, as long as DMEM_ADDR_W is 5 or greater:
1
tb_addr <= (DMEM_ADDR_W-1 downto 4 => '0') & x"2";

Reply

A question of your own? This thread is over 12 years old. Ask it in a thread of its own – more people read along there, and it gets answered more often and sooner.

Start a new thread

A fix, an addition or feedback on this thread? Then reply here.

Formatting
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]
  • [[Title]] – link to an article
  • Link to another post: right-click its post ID (#8078628), copy the address, paste it into the text

More about formatting

Post long source code as an attachment, not in the text.

Already registered? Log in

Not shown to anyone. We send you a link; your post appears once you confirm it there.

By submitting you create a free account and accept the terms of use.