blob: c8270120b09c2c93d7137d77d810deb2b0e3f16d [file] [log] [blame]
module shiftmant (input logic alessb,
input logic [23:0] manta, mantb,
input logic [7:0] shamt,
output logic [23:0] shmant);
logic [23:0] shiftedval;
logic ovf;
assign shiftedval = alessb ?
(manta >> shamt) : (mantb >> shamt);
assign ovf = (shamt[7] | shamt[6] | shamt[5] |
(shamt[4] & shamt[3]));
assign shmant = ovf ? 24'h0 : shiftedval;
endmodule // shiftmant