EmbDev.net

Forum: FPGA, VHDL & Verilog convert number Verilog


Author: Sergei C. (sergei_cr)
Posted on:

Rate this post
0 useful
not useful
Hello

Don't remember as an operation is called and and therefore i have 
problems with the search for implementation.

input [4:0] number1,
output [31:0] number2

number2  has the form :  11..1100..00  where the cout of "1" is equal to 
the number1
As example number1 = 3, so number2 = 111000..00
As example number1 = 8, so number2 = 11111111000..00

I think the best way to speed and energy efficiency is to describe each 
output bit, but for large numbers it looks unattractive for reading and 
understanding. I would like to find a parametrized short record of this 
relationship, but I can not

Thanks for the help

: Edited by User
Author: Andy (Guest)
Posted on:

Rate this post
1 useful
not useful
This may work:
 assign number2 = ~(32'hFFFFFFFF >> number1);

Author: Sergei C. (sergei_cr)
Posted on:

Rate this post
0 useful
not useful
Andy wrote:
> This may work:
>
>
>  assign number2 = ~(32'hFFFFFFFF >> number1);
> 

Yes! Beautiful solution. Thanks, it's what i want.

Reply

Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [vhdl]VHDL code[/vhdl]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]




Bild automatisch verkleinern, falls nötig