aboutsummaryrefslogtreecommitdiff
path: root/src/alu_a_src_mux.v
blob: 208cc828ce5b35384759c908ca8dc030ba22f0f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
module alu_a_src_mux (
  input [31:0] src_pc, 
  input [31:0] src_pc_buf, 
  input [31:0] src_rd1_buf,

  input [1:0] alu_a_src,

  output reg [31:0] alu_a
);

`include "include/consts.vh"

always @(*) begin
  case (alu_a_src)
    ALU_A_SRC_PC:      alu_a <= src_pc;
    ALU_A_SRC_PC_BUF:  alu_a <= src_pc_buf;
    ALU_A_SRC_RD1_BUF: alu_a <= src_rd1_buf;
    ALU_A_SRC_0:       alu_a <= 32'b0;
    default:           alu_a <= 32'b0;
  endcase
end

endmodule