summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--riscvsingle.sv11
1 files changed, 10 insertions, 1 deletions
diff --git a/riscvsingle.sv b/riscvsingle.sv
index e2c1baa..fc9c830 100644
--- a/riscvsingle.sv
+++ b/riscvsingle.sv
@@ -229,7 +229,16 @@ module controller(input logic [6:0] op,
229 ALUSrc, RegWrite, Jump, ImmSrc, ALUOp); 229 ALUSrc, RegWrite, Jump, ImmSrc, ALUOp);
230 aludec ad(op[5], funct3, funct7b5, ALUOp, ALUControl); 230 aludec ad(op[5], funct3, funct7b5, ALUOp, ALUControl);
231 231
232 assign PCSrc = Branch & Zero | Jump; 232// assign PCSrc = Branch & Zero | Jump;
233 always_comb
234 if (Branch)
235 case (funct3)
236 3'b000: PCSrc = Zero;
237 3'b001: PCSrc = ~Zero;
238 default: PCSrc = 1'bx;
239 endcase
240 else
241 PCSrc = Jump;
233endmodule 242endmodule
234 243
235module maindec(input logic [6:0] op, 244module maindec(input logic [6:0] op,