Changeset 124 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit
- Timestamp:
- Jun 17, 2009, 2:11:25 PM (15 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/include/Load_store_unit.h
r122 r124 14 14 #endif 15 15 16 #include <iostream>17 16 #include "Common/include/ToString.h" 18 17 #include "Common/include/Debug.h" … … 31 30 #endif 32 31 #include "Behavioural/include/Usage.h" 32 33 #include <iostream> 34 #include <fstream> 33 35 34 36 namespace morpheo { … … 194 196 private : Tcontrol_t internal_DCACHE_REQ_VAL ; 195 197 private : Tselect_queue_t internal_DCACHE_REQ_SELECT_QUEUE; 196 #endif 198 199 #if defined(DEBUG) and defined(DEBUG_Load_store_unit) and (DEBUG_Load_store_unit == true) 200 private : std::ofstream * memory_log_file; 201 #endif 202 203 #endif 204 197 205 198 206 // -----[ methods ]--------------------------------------------------- -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/include/Parameters.h
r104 r124 43 43 public : uint32_t _nb_general_register ; 44 44 public : uint32_t _nb_special_register ; 45 public : uint32_t _nb_thread ; 46 public : bool * _num_thread_valid ; //[nb_thread] 45 47 46 48 //public : uint32_t _size_address_store_queue ; … … 66 68 public : Tdcache_address_t _mask_address_msb ; 67 69 public : Tdcache_address_t _mask_check_hit_byte ; 68 70 69 71 //-----[ methods ]----------------------------------------------------------- 70 72 public : Parameters (uint32_t size_store_queue , … … 84 86 uint32_t nb_general_register , 85 87 uint32_t nb_special_register , 88 uint32_t nb_thread , 89 bool * num_thread_valid , //[nb_thread] 86 90 bool is_toplevel=false); 87 91 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/src/Load_store_unit_allocation.cpp
r122 r124 9 9 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/include/Load_store_unit.h" 10 10 #include "Behavioural/include/Allocation.h" 11 #include "Common/include/Filename.h" 11 12 12 13 namespace morpheo { … … 177 178 #endif 178 179 180 #if defined(DEBUG) and defined(DEBUG_Load_store_unit) and (DEBUG_Load_store_unit == true) 181 directory_init (); 182 183 memory_log_file = new std::ofstream [_param->_nb_thread]; 184 for (uint32_t i=0; i<_param->_nb_thread; ++i) 185 if (_param->_num_thread_valid [i]) 186 { 187 188 std::string filename = morpheo::filename(MORPHEO_LOG, 189 "Memory_access-thread_"+toString(i), 190 "", 191 "log", 192 _simulation_file_with_date, 193 _simulation_file_with_pid , 194 true); 195 196 memory_log_file [i].open(filename.c_str() ,std::ios::out | std::ios::trunc); 197 } 198 #endif 199 179 200 log_printf(FUNC,Load_store_unit,FUNCTION,"End"); 180 201 }; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/src/Load_store_unit_deallocation.cpp
r122 r124 121 121 delete _component; 122 122 123 #if defined(DEBUG) and defined(DEBUG_Load_store_unit) and (DEBUG_Load_store_unit == true) 124 for (uint32_t i=0; i<_param->_nb_thread; ++i) 125 if (_param->_num_thread_valid [i]) 126 { 127 memory_log_file [i].close(); 128 } 129 #endif 123 130 124 131 log_printf(FUNC,Load_store_unit,FUNCTION,"End"); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/src/Load_store_unit_function_speculative_load_commit_transition.cpp
r122 r124 8 8 9 9 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/include/Load_store_unit.h" 10 #include "Behavioural/include/Identification.h" 10 11 11 12 namespace morpheo { … … 950 951 _store_queue [reg_STORE_QUEUE_PTR_READ]._state = STORE_QUEUE_COMMIT; 951 952 953 #if defined(DEBUG) and defined(DEBUG_Load_store_unit) and (DEBUG_Load_store_unit == true) 954 { 955 // log file 956 Tcontext_t num_thread = get_num_thread(_store_queue [reg_STORE_QUEUE_PTR_READ]._context_id , _param->_size_context_id , 957 _store_queue [reg_STORE_QUEUE_PTR_READ]._front_end_id , _param->_size_front_end_id , 958 _store_queue [reg_STORE_QUEUE_PTR_READ]._ooo_engine_id, _param->_size_ooo_engine_id); 959 960 memory_log_file [num_thread] 961 << "[" << simulation_cycle() << "] " 962 << std::hex 963 << "@ 0x" << std::setfill('0') << std::setw(_param->_size_general_data/4) << _store_queue [reg_STORE_QUEUE_PTR_READ]._address << " -[ Write ]-> 0x" << std::setfill('0') << std::setw(_param->_size_general_data/4) << _store_queue [reg_STORE_QUEUE_PTR_READ]._wdata << " " 964 << std::dec 965 << "{" << toString(_store_queue [reg_STORE_QUEUE_PTR_READ]._operation) << "}"; 966 967 memory_log_file [num_thread] << std::endl; 968 } 969 #endif 970 971 952 972 break; 953 973 } … … 1125 1145 _load_queue [packet_id]._rdata = data; 1126 1146 1147 #if defined(DEBUG) and defined(DEBUG_Load_store_unit) and (DEBUG_Load_store_unit == true) 1148 { 1149 // log file 1150 Tcontext_t num_thread = get_num_thread(_load_queue [packet_id]._context_id , _param->_size_context_id , 1151 _load_queue [packet_id]._front_end_id , _param->_size_front_end_id , 1152 _load_queue [packet_id]._ooo_engine_id, _param->_size_ooo_engine_id); 1153 1154 memory_log_file [num_thread] 1155 << "[" << simulation_cycle() << "] " 1156 << std::hex 1157 << "@ 0x" << std::setfill('0') << std::setw(_param->_size_general_data/4) << _load_queue [packet_id]._address << " -[ Read ]-> 0x" << std::setfill('0') << std::setw(_param->_size_general_data/4) << _load_queue [packet_id]._rdata << " " 1158 << std::dec 1159 << "{" << toString(_load_queue [packet_id]._operation) << "}"; 1160 1161 memory_log_file [num_thread] << std::endl; 1162 } 1163 #endif 1164 1127 1165 if (error != DCACHE_ERROR_NONE) 1128 1166 { -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/src/Parameters.cpp
r117 r124 36 36 uint32_t nb_general_register , 37 37 uint32_t nb_special_register , 38 uint32_t nb_thread , 39 bool * num_thread_valid , //[nb_thread] 38 40 bool is_toplevel) 39 41 { … … 54 56 _nb_general_register = nb_general_register ; 55 57 _nb_special_register = nb_special_register ; 58 _nb_thread = nb_thread ; 59 _num_thread_valid = num_thread_valid ; 56 60 57 61 _size_speculative_access_queue_ptr = log2(size_speculative_access_queue); … … 149 153 { 150 154 log_printf(FUNC,Load_store_unit,FUNCTION,"Begin"); 155 151 156 log_printf(FUNC,Load_store_unit,FUNCTION,"End"); 152 157 };
Note: See TracChangeset
for help on using the changeset viewer.