fix instr invld bug
This commit is contained in:
@@ -150,14 +150,18 @@ module control_unit (
|
|||||||
output logic ebreak_o
|
output logic ebreak_o
|
||||||
);
|
);
|
||||||
|
|
||||||
logic [6:0] opcode = instr_i[6:0];
|
logic [6:0] opcode;
|
||||||
logic [2:0] funct3 = instr_i[14:12];
|
logic [2:0] funct3;
|
||||||
logic funct7 = instr_i[30];
|
logic funct7;
|
||||||
logic [1:0] alu_op;
|
logic [1:0] alu_op;
|
||||||
logic instr_invld_md;
|
logic instr_invld_md;
|
||||||
logic instr_invld_ad;
|
logic instr_invld_ad;
|
||||||
logic branch_o;
|
logic branch_o;
|
||||||
|
|
||||||
|
assign opcode = instr_i[6:0];
|
||||||
|
assign funct3 = instr_i[14:12];
|
||||||
|
assign funct7 = instr_i[30];
|
||||||
|
|
||||||
assign ebreak_o = (opcode == 7'b1110011) && (funct3 == 3'b000) && (instr_i[31:20] == 12'h1);
|
assign ebreak_o = (opcode == 7'b1110011) && (funct3 == 3'b000) && (instr_i[31:20] == 12'h1);
|
||||||
|
|
||||||
main_decoder md (
|
main_decoder md (
|
||||||
|
|||||||
Reference in New Issue
Block a user