OpenCores
URL https://opencores.org/ocsvn/thor/thor/trunk

Subversion Repositories thor

[/] [thor/] [trunk/] [FT64v5/] [rtl/] [common/] [FT64_idecoder.v] - Diff between revs 48 and 49

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 48 Rev 49
Line 147... Line 147...
reg IsFlowCtrl;
reg IsFlowCtrl;
 
 
always @*
always @*
case(instr[`INSTRUCTION_OP])
case(instr[`INSTRUCTION_OP])
`BRK:    IsFlowCtrl <= TRUE;
`BRK:    IsFlowCtrl <= TRUE;
`RR:    case(instr[`INSTRUCTION_S2])
`R2:    case(instr[`INSTRUCTION_S2])
        `RTI:   IsFlowCtrl <= TRUE;
        `RTI:   IsFlowCtrl <= TRUE;
        default:    IsFlowCtrl <= FALSE;
        default:    IsFlowCtrl <= FALSE;
        endcase
        endcase
`Bcc:   IsFlowCtrl <= TRUE;
`Bcc:   IsFlowCtrl <= TRUE;
`BBc:           IsFlowCtrl <= TRUE;
`BBc:           IsFlowCtrl <= TRUE;
Line 222... Line 222...
    endcase
    endcase
`Bcc:   fnCanException = TRUE;
`Bcc:   fnCanException = TRUE;
`BEQI:  fnCanException = TRUE;
`BEQI:  fnCanException = TRUE;
`CHK:   fnCanException = TRUE;
`CHK:   fnCanException = TRUE;
default:
default:
 
// Stores can stil exception if there is a write buffer, but we allow following
 
// stores to be issued by ignoring the fact they can exception because the stores
 
// can be undone by invalidating the write buffer.
 
`ifdef HAS_WB
 
    fnCanException = IsLoad(isn);
 
`else
    fnCanException = IsMem(isn);
    fnCanException = IsMem(isn);
 
`endif
endcase
endcase
end
end
endfunction
endfunction
 
 
function IsLoad;
function IsLoad;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.