Line 80... |
Line 80... |
dRa <= 9'd0;
|
dRa <= 9'd0;
|
dRb <= 9'd0;
|
dRb <= 9'd0;
|
dRc <= 9'd0;
|
dRc <= 9'd0;
|
end
|
end
|
endcase
|
endcase
|
|
`R: begin dRb <= 9'd0; dRc <= 9'd0; end
|
|
`RR: dRc <= 9'd0;
|
|
`TRAPcc: dRc <= 9'd0;
|
|
`TRAPcci: begin dRb <= 9'd0; dRc <= 9'd0; end
|
`CALL,`JMP,`NOPI:
|
`CALL,`JMP,`NOPI:
|
begin
|
begin
|
dRa <= 9'd0;
|
dRa <= 9'd0;
|
dRb <= 9'd0;
|
dRb <= 9'd0;
|
dRc <= 9'd0;
|
dRc <= 9'd0;
|
Line 91... |
Line 95... |
`RET: begin
|
`RET: begin
|
dRa <= {AXC,5'd30};
|
dRa <= {AXC,5'd30};
|
dRb <= {AXC,5'd31};
|
dRb <= {AXC,5'd31};
|
dRc <= 9'd0;
|
dRc <= 9'd0;
|
end
|
end
|
|
`LB,`LBU,`LH,`LHU,`LC,`LCU,`LW,`LP,`LSH,`LSW,`LF,`LFD,`LFP,`LFDP,`LWR:
|
|
begin
|
|
dRb <= 9'd0;
|
|
dRc <= 9'd0;
|
|
end
|
|
`SB,`SC,`SH,`SW,`SP,`SSH,`SSW,`SF,`SFD,`SFP,`SFDP,`SWC:
|
|
dRc <= 9'd0;
|
|
`INB,`INBU,`INCH,`INCU,`INH,`INHU,`INW:
|
|
begin
|
|
dRb <= 9'd0;
|
|
dRc <= 9'd0;
|
|
end
|
|
`OUTB,`OUTC,`OUTH,`OUTW:
|
|
dRc <= 9'd0;
|
`BLTI,`BLEI,`BGTI,`BGEI,
|
`BLTI,`BLEI,`BGTI,`BGEI,
|
`BLTUI,`BLEUI,`BGTUI,`BGEUI,
|
`BLTUI,`BLEUI,`BGTUI,`BGEUI,
|
`BEQI,`BNEI:
|
`BEQI,`BNEI:
|
begin
|
begin
|
dRb <= 9'd0;
|
dRb <= 9'd0;
|
dRc <= 9'd0;
|
dRc <= 9'd0;
|
end
|
end
|
|
`BTRI: dRc <= 9'd0;
|
`SLTI,`SLEI,`SGTI,`SGEI,
|
`SLTI,`SLEI,`SGTI,`SGEI,
|
`SLTUI,`SLEUI,`SGTUI,`SGEUI,
|
`SLTUI,`SLEUI,`SGTUI,`SGEUI,
|
`SEQI,`SNEI:
|
`SEQI,`SNEI:
|
begin
|
begin
|
dRb <= 9'd0;
|
dRb <= 9'd0;
|
dRc <= 9'd0;
|
dRc <= 9'd0;
|
end
|
end
|
`SETLO: dRa <= {AXC,insn[26:22]};
|
`ADDI,`ADDUI,`SUBI,`SUBUI,`CMPI,`CMPUI,
|
`SETMID: dRa <= {AXC,insn[26:22]};
|
`ANDI,`XORI,`ORI,`MULUI,`MULSI,`DIVUI,`DIVSI:
|
`SETHI: dRa <= {AXC,insn[26:22]};
|
begin
|
|
dRb <= 9'd0;
|
|
dRc <= 9'd0;
|
|
end
|
|
`JAL:
|
|
begin
|
|
dRb <= 9'd0;
|
|
dRc <= 9'd0;
|
|
end
|
|
`SETLO: begin dRa <= {AXC,insn[26:22]}; dRb <= 9'd0; dRc <= 9'd0; end
|
|
`SETMID: begin dRa <= {AXC,insn[26:22]}; dRb <= 9'd0; dRc <= 9'd0; end
|
|
`SETHI: begin dRa <= {AXC,insn[26:22]}; dRb <= 9'd0; dRc <= 9'd0; end
|
default: dRa <= {AXC,insn[24:20]};
|
default: dRa <= {AXC,insn[24:20]};
|
endcase
|
endcase
|
end
|
end
|
else if (advanceR) begin
|
else if (advanceR) begin
|
dRa <= 9'd0;
|
dRa <= 9'd0;
|