Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
13 years ago

variable length shift register needed

i need a shift register with variable length, i can't find it in dsp builder.

1 Reply

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I have never used DSP Builder but what you described is often called a barrelshifter. Perhaps it is called that in DSP Builder.

    In verilog you can create a barrelshift with code like this:

    assign c = b << a; // right shift by variable length

    assign f = e >> d; // left shift by variable length

    The code above will be very slow since it's combinational. You can either pipeline the operation or use a multiplier block to do the same thing.