Changeset 136 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Address_management/src/Address_management_transition.cpp
- Timestamp:
- Oct 20, 2009, 8:52:15 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Address_management/src/Address_management_transition.cpp
r128 r136 70 70 log_printf(TRACE,Address_management,FUNCTION," * PREDICT"); 71 71 72 bool branch_is_current = reg_PC_NEXT_IS_DS_TAKE; 72 bool branch_is_current = reg_PC_NEXT_IS_DS_TAKE; 73 Tbranch_state_t branch_state = PORT_READ(in_PREDICT_BRANCH_STATE ); 74 Tprediction_ptr_t branch_update_prediction_id = (_param->_have_port_depth )?PORT_READ(in_PREDICT_BRANCH_UPDATE_PREDICTION_ID):0; 75 Tinst_ifetch_ptr_t inst_ifetch_ptr = (_param->_have_port_inst_ifetch_ptr)?PORT_READ(in_PREDICT_INST_IFETCH_PTR ):0; 76 77 log_printf(TRACE,Address_management,FUNCTION," * branch_is_current : %d",branch_is_current ); 78 log_printf(TRACE,Address_management,FUNCTION," * branch_state : %d",branch_state ); 79 log_printf(TRACE,Address_management,FUNCTION," * branch_update_prediction_id : %d",branch_update_prediction_id); 80 log_printf(TRACE,Address_management,FUNCTION," * inst_ifetch_ptr : %d",inst_ifetch_ptr ); 81 73 82 if (branch_is_current) 74 83 { 75 if (_param->_have_port_inst_ifetch_ptr) 76 reg_PC_CURRENT_INST_IFETCH_PTR = PORT_READ(in_PREDICT_INST_IFETCH_PTR ); 77 reg_PC_CURRENT_BRANCH_STATE = PORT_READ(in_PREDICT_BRANCH_STATE ); 78 if (_param->_have_port_depth) 79 reg_PC_CURRENT_BRANCH_UPDATE_PREDICTION_ID = PORT_READ(in_PREDICT_BRANCH_UPDATE_PREDICTION_ID); 84 reg_PC_CURRENT_INST_IFETCH_PTR = inst_ifetch_ptr ; 85 reg_PC_CURRENT_BRANCH_STATE = branch_state ; 86 reg_PC_CURRENT_BRANCH_UPDATE_PREDICTION_ID = branch_update_prediction_id; 80 87 } 81 88 else 82 89 { 83 if (_param->_have_port_inst_ifetch_ptr) 84 reg_PC_NEXT_INST_IFETCH_PTR = PORT_READ(in_PREDICT_INST_IFETCH_PTR ); 85 reg_PC_NEXT_BRANCH_STATE = PORT_READ(in_PREDICT_BRANCH_STATE ); 86 if (_param->_have_port_depth) 87 reg_PC_NEXT_BRANCH_UPDATE_PREDICTION_ID = PORT_READ(in_PREDICT_BRANCH_UPDATE_PREDICTION_ID); 90 reg_PC_NEXT_INST_IFETCH_PTR = inst_ifetch_ptr ; 91 reg_PC_NEXT_BRANCH_STATE = branch_state ; 92 reg_PC_NEXT_BRANCH_UPDATE_PREDICTION_ID = branch_update_prediction_id; 88 93 } 89 94 … … 161 166 } 162 167 163 // if (not reg_PC_NEXT_VAL and reg_PC_NEXT_NEXT_VAL)164 168 if (reg_PC_NEXT_NEXT_VAL and not reg_PC_NEXT_VAL) 165 169 {
Note: See TracChangeset
for help on using the changeset viewer.