Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- `timescale 1ns / 1ps
- //////////////////////////////////////////////////////////////////////////////////
- // Company:
- // Engineer:
- //
- // Create Date: 14:21:16 04/18/2019
- // Design Name:
- // Module Name: barrel_shifter
- // Project Name:
- // Target Devices:
- // Tool versions:
- // Description:
- //
- // Dependencies:
- //
- // Revision:
- // Revision 0.01 - File Created
- // Additional Comments:
- //
- //////////////////////////////////////////////////////////////////////////////////
- module barrel_shifter(
- input [3:0] a,
- input [1:0] sel,
- output [3:0] out
- );
- wire[3:0] muxl0_i,muxl1_i,mux_l;
- assign muxl0_i={1'b0,a[3],a[2],a[1]};
- assign muxl1_i={1'b0,1'b0,mux_l[3],mux_l[2]};
- genvar i;
- generate
- for(i=0;i<4;i=i+1)
- begin
- mux2_1 l1(.a(muxl0_i[i]),.b(a[i]),.sel(sel[0]),.out(mux_l[i]));
- mux2_1 l2(.a(muxl1_i[i]),.b(mux_l[i]),.sel(sel[1]),.out(out[i]));
- end
- endgenerate
- endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement