16-bit barrel shifter
A barrel shifter allows multiple bit shifts in a single clock cycle using only combinatorial logic.
Synthesized in Vivado and tested on Basys 3 Artix-7 (XC7A35TCPG236-1).
The top module sets up a 16-bit barrel shifter with an arbitrary start value. The start value can be shifted by one using the left and right buttons.
I made this to learn the basics of running VHDL on an FPGA. I also plan on using a barrel shifter in my homebrew CPU project so I needed to figure out how this circuit works.
66 2x1MUX
Logisim Evolution circuit logisim/barrel_shifter.circ
