Changeset 145 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include
- Timestamp:
- Oct 13, 2010, 8:15:51 PM (14 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include/Commit_unit.h
r142 r145 74 74 public : counter_t ** _stat_nb_cycle_state_wait_end ;//[nb_thread] 75 75 76 // 76 //public : uint32_t * _stat_last_inst ;//[nb_thread] 77 77 public : uint32_t * _stat_last_inst_type ;//[nb_thread] 78 78 public : uint32_t * _stat_last_inst_operation ;//[nb_thread] … … 97 97 //public : SC_IN (Tcontext_t ) *** in_INSERT_RENAME_UNIT_ID ;//[nb_rename_unit][nb_inst_insert] 98 98 public : SC_IN (Tdepth_t ) *** in_INSERT_DEPTH ;//[nb_rename_unit][nb_inst_insert] 99 public : SC_IN (Tcontrol_t ) *** in_INSERT_SAVE_RAT ;//[nb_rename_unit][nb_inst_insert] 99 100 #ifdef STATISTICS 100 101 public : SC_IN (uint32_t ) *** in_INSERT_INSTRUCTION ;//[nb_rename_unit][nb_inst_insert] … … 141 142 public : SC_OUT(Tcontext_t ) *** out_RETIRE_CONTEXT_ID ;//[nb_rename_unit][nb_inst_retire] 142 143 //public : SC_OUT(Tcontext_t ) *** out_RETIRE_RENAME_UNIT_ID ;//[nb_rename_unit][nb_inst_retire] 144 //public : SC_OUT(Tdepth_t ) *** out_RETIRE_DEPTH ;//[nb_rename_unit][nb_inst_retire] 143 145 public : SC_OUT(Tcontrol_t ) *** out_RETIRE_USE_STORE_QUEUE ;//[nb_rename_unit][nb_inst_retire] 144 146 public : SC_OUT(Tcontrol_t ) *** out_RETIRE_USE_LOAD_QUEUE ;//[nb_rename_unit][nb_inst_retire] … … 234 236 public : SC_IN (Tcounter_t ) *** in_NB_INST_DECOD_ALL ;//[nb_front_end][nb_context] 235 237 236 237 238 239 238 // // ~~~~~[ Interface : "depth" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 239 //public : SC_IN (Tdepth_t ) *** in_DEPTH_MIN ;//[nb_front_end][nb_context] 240 //public : SC_IN (Tdepth_t ) *** in_DEPTH_MAX ;//[nb_front_end][nb_context] 241 //public : SC_IN (Tcontrol_t ) *** in_DEPTH_FULL ;//[nb_front_end][nb_context] 240 242 241 243 // ~~~~~[ Interface : "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ … … 272 274 private : Tcounter_t ** reg_NB_INST_COMMIT_ALL ;//[nb_front_end][nb_context] 273 275 private : Tcounter_t ** reg_NB_INST_COMMIT_MEM ;//[nb_front_end][nb_context] 276 private : Tcounter_t *** reg_NB_INST_DEPTH ;//[nb_front_end][nb_context][nb_branch_speculated] 274 277 275 278 private : Tcommit_event_state_t ** reg_EVENT_STATE ;//[nb_front_end][nb_context] -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include/Parameters.h
r139 r145 24 24 { 25 25 //-----[ fields ]------------------------------------------------------------ 26 public : uint32_t _nb_front_end ; 27 public : uint32_t * _nb_context ;//[nb_front_end] 28 public : uint32_t _nb_rename_unit ; 29 public : uint32_t _size_queue ; 30 public : uint32_t _nb_bank ; 31 public : Tretire_ooo_scheme_t _retire_ooo_scheme ; 32 public : uint32_t * _nb_inst_insert ;//[nb_rename_unit] 33 public : uint32_t * _nb_inst_retire ;//[nb_rename_unit] 34 public : uint32_t _nb_inst_commit ; 35 public : uint32_t _nb_inst_reexecute ; 36 public : uint32_t _nb_inst_branch_complete ; 37 public : uint32_t ** _nb_branch_speculated ;//[nb_front_end][nb_context] 38 //public : uint32_t _size_general_data ; 39 //public : uint32_t _size_store_queue_ptr ; 40 //public : uint32_t _size_load_queue_ptr ; 41 //public : uint32_t _size_general_register ; 42 //public : uint32_t _size_special_register ; 43 public : Trat_scheme_t * _rat_scheme ;//[nb_front_end] 44 public : Tpriority_t _priority ; 45 public : Tload_balancing_t _load_balancing ; 46 public : uint32_t _nb_rename_unit_select ; 47 public : uint32_t _nb_thread ; 48 public : uint32_t ** _translate_num_context_to_num_thread;//[nb_front_end][nb_context] 49 public : const uint32_t _nb_bank_access_commit ; 26 public : uint32_t _nb_front_end ; 27 public : uint32_t * _nb_context ;//[nb_front_end] 28 public : uint32_t _nb_rename_unit ; 29 public : uint32_t _size_queue ; 30 public : uint32_t _nb_bank ; 31 public : Tretire_ooo_scheme_t _retire_ooo_scheme ; 32 public : uint32_t * _nb_inst_insert ;//[nb_rename_unit] 33 public : uint32_t * _nb_inst_retire ;//[nb_rename_unit] 34 public : uint32_t _nb_inst_commit ; 35 public : uint32_t _nb_inst_reexecute ; 36 public : uint32_t _nb_inst_branch_complete ; 37 public : uint32_t ** _nb_branch_speculated ;//[nb_front_end][nb_context] 38 //public : uint32_t _size_general_data ; 39 //public : uint32_t _size_store_queue_ptr ; 40 //public : uint32_t _size_load_queue_ptr ; 41 //public : uint32_t _size_general_register ; 42 //public : uint32_t _size_special_register ; 43 public : Trat_scheme_t * _rat_scheme ;//[nb_rename_unit] 44 public : std::vector<uint32_t>* _link_front_end_with_rename_unit ;//[nb_rename_unit] 50 45 51 public : uint32_t _max_nb_context ; 52 public : uint32_t _max_nb_inst_insert ; 53 public : uint32_t _max_nb_inst_retire ; 54 //public : uint32_t _size_address ; 55 //public : uint32_t _size_front_end_id ; 56 //public : uint32_t _size_context_id ; 57 public : uint32_t _size_rename_unit_id ; 58 public : uint32_t _size_bank ; 59 //public : uint32_t _size_nb_inst ; 60 //public : uint32_t _size_packet_id ; 61 public : uint32_t ** _array_size_depth ;//[nb_front_end][nb_context] 62 //public : uint32_t _max_size_depth ; 63 64 //public : Tpacket_t _shift_num_bank ; 65 public : Tpacket_t _mask_num_bank ; 66 public : Tpacket_t _shift_num_slot ; 67 //public : Tpacket_t _mask_num_slot ; 46 public : Tpriority_t _priority ; 47 public : Tload_balancing_t _load_balancing ; 48 public : uint32_t _nb_rename_unit_select ; 49 public : uint32_t _nb_thread ; 50 public : uint32_t ** _translate_num_context_to_num_thread;//[nb_front_end][nb_context] 51 public : Trat_scheme_t * _front_end_rat_scheme ;//[nb_front_end] 52 public : const uint32_t _nb_bank_access_commit ; 53 54 public : uint32_t _max_nb_context ; 55 public : uint32_t _max_nb_inst_insert ; 56 public : uint32_t _max_nb_inst_retire ; 57 //public : uint32_t _size_address ; 58 //public : uint32_t _size_front_end_id ; 59 //public : uint32_t _size_context_id ; 60 public : uint32_t _size_rename_unit_id ; 61 public : uint32_t _size_bank ; 62 //public : uint32_t _size_nb_inst ; 63 //public : uint32_t _size_packet_id ; 64 public : uint32_t ** _array_size_depth ;//[nb_front_end][nb_context] 65 //public : uint32_t _max_size_depth ; 66 67 //public : Tpacket_t _shift_num_bank ; 68 public : Tpacket_t _mask_num_bank ; 69 public : Tpacket_t _shift_num_slot ; 70 //public : Tpacket_t _mask_num_slot ; 68 71 69 72 … … 79 82 80 83 //-----[ methods ]----------------------------------------------------------- 81 public : Parameters (uint32_t nb_front_end , 82 uint32_t * nb_context ,//[nb_front_end] 83 uint32_t nb_rename_unit , 84 uint32_t size_queue , 85 uint32_t nb_bank , 86 Tretire_ooo_scheme_t retire_ooo_scheme , 87 uint32_t * nb_inst_insert ,//[nb_rename_unit] 88 uint32_t * nb_inst_retire ,//[nb_rename_unit] 89 uint32_t nb_inst_commit , 90 uint32_t nb_inst_reexecute , 91 uint32_t nb_inst_branch_complete , 92 uint32_t ** nb_branch_speculated ,//[nb_front_end][nb_context] 93 uint32_t size_nb_inst_decod , 94 uint32_t size_general_data , 95 uint32_t size_store_queue_ptr , 96 uint32_t size_load_queue_ptr , 97 uint32_t size_general_register , 98 uint32_t size_special_register , 99 Trat_scheme_t * rat_scheme ,//[nb_front_end] 100 Tpriority_t priority , 101 Tload_balancing_t load_balancing , 102 uint32_t nb_rename_unit_select , 103 uint32_t nb_thread , 104 uint32_t ** translate_num_context_to_num_thread, //[nb_front_end][nb_context] 105 bool is_toplevel=false 84 public : Parameters (uint32_t nb_front_end , 85 uint32_t * nb_context ,//[nb_front_end] 86 uint32_t nb_rename_unit , 87 uint32_t size_queue , 88 uint32_t nb_bank , 89 Tretire_ooo_scheme_t retire_ooo_scheme , 90 uint32_t * nb_inst_insert ,//[nb_rename_unit] 91 uint32_t * nb_inst_retire ,//[nb_rename_unit] 92 uint32_t nb_inst_commit , 93 uint32_t nb_inst_reexecute , 94 uint32_t nb_inst_branch_complete , 95 uint32_t ** nb_branch_speculated ,//[nb_front_end][nb_context] 96 uint32_t size_nb_inst_decod , 97 uint32_t size_general_data , 98 uint32_t size_store_queue_ptr , 99 uint32_t size_load_queue_ptr , 100 uint32_t size_general_register , 101 uint32_t size_special_register , 102 Trat_scheme_t * rat_scheme ,//[nb_rename_unit] 103 std::vector<uint32_t>* link_front_end_with_rename_unit ,//[nb_rename_unit] 104 Tpriority_t priority , 105 Tload_balancing_t load_balancing , 106 uint32_t nb_rename_unit_select , 107 uint32_t nb_thread , 108 uint32_t ** translate_num_context_to_num_thread, //[nb_front_end][nb_context] 109 bool is_toplevel=false 106 110 ); 107 111 // public : Parameters (Parameters & param) ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include/Types.h
r139 r145 81 81 public : rob_state_t state ; 82 82 public : rob_state_t state_old ; 83 //public : Tcontrol_t restore ; 84 83 85 public : uint32_t ptr ; 84 86 public : Tcontext_t front_end_id ; … … 207 209 }; 208 210 211 template<> inline std::string toString<morpheo::behavioural::core::multi_ooo_engine::ooo_engine::commit_unit::Tcommit_event_state_t>(const morpheo::behavioural::core::multi_ooo_engine::ooo_engine::commit_unit::Tcommit_event_state_t& x) 212 { 213 switch (x) 214 { 215 case morpheo::behavioural::core::multi_ooo_engine::ooo_engine::commit_unit::COMMIT_EVENT_STATE_NO_EVENT : return "COMMIT_EVENT_STATE_NO_EVENT" ; break; 216 case morpheo::behavioural::core::multi_ooo_engine::ooo_engine::commit_unit::COMMIT_EVENT_STATE_NOT_YET_EVENT : return "COMMIT_EVENT_STATE_NOT_YET_EVENT"; break; 217 case morpheo::behavioural::core::multi_ooo_engine::ooo_engine::commit_unit::COMMIT_EVENT_STATE_EVENT : return "COMMIT_EVENT_STATE_EVENT" ; break; 218 // case morpheo::behavioural::core::multi_ooo_engine::ooo_engine::commit_unit::COMMIT_EVENT_STATE_WAIT_DECOD : return "COMMIT_EVENT_STATE_WAIT_DECOD" ; break; 219 case morpheo::behavioural::core::multi_ooo_engine::ooo_engine::commit_unit::COMMIT_EVENT_STATE_WAIT_END : return "COMMIT_EVENT_STATE_WAIT_END" ; break; 220 // case morpheo::behavioural::core::multi_ooo_engine::ooo_engine::commit_unit::COMMIT_EVENT_STATE_END : return "COMMIT_EVENT_STATE_END" ; break; 221 222 default : return "" ; break; 223 } 224 }; 225 226 209 227 }; // end namespace morpheo 210 228
Note: See TracChangeset
for help on using the changeset viewer.