diff --git a/lab1/src/main/scala/riscv/core/Execute.scala b/lab1/src/main/scala/riscv/core/Execute.scala index c2b16a0..0ca0e39 100644 --- a/lab1/src/main/scala/riscv/core/Execute.scala +++ b/lab1/src/main/scala/riscv/core/Execute.scala @@ -47,9 +47,17 @@ class Execute extends Module { alu_ctrl.io.funct7 := funct7 // lab1(Execute) - - - + alu.io.func := alu_ctrl.io.alu_funct + alu.io.op1 := Mux( + io.aluop1_source === ALUOp1Source.Register, + io.reg1_data, + io.instruction_address + ) + alu.io.op2 := Mux( + io.aluop2_source === ALUOp2Source.Register, + io.reg2_data, + io.immediate + ) // lab1(Execute) end