Line 42... |
Line 42... |
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
//
|
//
|
// CVS Revision History
|
// CVS Revision History
|
//
|
//
|
// $Log: not supported by cvs2svn $
|
// $Log: not supported by cvs2svn $
|
|
// Revision 1.1 2002/01/03 08:16:15 lampret
|
|
// New prefixes for RTL files, prefixed module names. Updated cache controllers and MMUs.
|
|
//
|
// Revision 1.9 2001/11/12 01:45:40 lampret
|
// Revision 1.9 2001/11/12 01:45:40 lampret
|
// Moved flag bit into SR. Changed RF enable from constant enable to dynamic enable for read ports.
|
// Moved flag bit into SR. Changed RF enable from constant enable to dynamic enable for read ports.
|
//
|
//
|
// Revision 1.8 2001/10/21 17:57:16 lampret
|
// Revision 1.8 2001/10/21 17:57:16 lampret
|
// Removed params from generic_XX.v. Added translate_off/on in sprs.v and id.v. Removed spr_addr from dc.v and ic.v. Fixed CR+LF.
|
// Removed params from generic_XX.v. Added translate_off/on in sprs.v and id.v. Removed spr_addr from dc.v and ic.v. Fixed CR+LF.
|
Line 142... |
Line 145... |
|
|
//
|
//
|
// Forwarding logic for operand A register
|
// Forwarding logic for operand A register
|
//
|
//
|
always @(ex_forw or wb_forw or rf_dataa or sel_a) begin
|
always @(ex_forw or wb_forw or rf_dataa or sel_a) begin
|
casex (sel_a) // synopsys full_case parallel_case infer_mux
|
`ifdef OR1200_ADDITIONAL_SYNOPSYS_DIRECTIVES
|
|
casex (sel_a) // synopsys parallel_case infer_mux
|
|
`else
|
|
casex (sel_a) // synopsys parallel_case
|
|
`endif
|
`OR1200_SEL_EX_FORW:
|
`OR1200_SEL_EX_FORW:
|
muxed_a = ex_forw;
|
muxed_a = ex_forw;
|
`OR1200_SEL_WB_FORW:
|
`OR1200_SEL_WB_FORW:
|
muxed_a = wb_forw;
|
muxed_a = wb_forw;
|
default:
|
default:
|
Line 156... |
Line 163... |
|
|
//
|
//
|
// Forwarding logic for operand B register
|
// Forwarding logic for operand B register
|
//
|
//
|
always @(simm or ex_forw or wb_forw or rf_datab or sel_b) begin
|
always @(simm or ex_forw or wb_forw or rf_datab or sel_b) begin
|
casex (sel_b) // synopsys full_case parallel_case infer_mux
|
`ifdef OR1200_ADDITIONAL_SYNOPSYS_DIRECTIVES
|
|
casex (sel_b) // synopsys parallel_case infer_mux
|
|
`else
|
|
casex (sel_b) // synopsys parallel_case
|
|
`endif
|
`OR1200_SEL_IMM:
|
`OR1200_SEL_IMM:
|
muxed_b = simm;
|
muxed_b = simm;
|
`OR1200_SEL_EX_FORW:
|
`OR1200_SEL_EX_FORW:
|
muxed_b = ex_forw;
|
muxed_b = ex_forw;
|
`OR1200_SEL_WB_FORW:
|
`OR1200_SEL_WB_FORW:
|