Changeset 75 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit
- Timestamp:
- Jan 31, 2008, 6:46:41 PM (16 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit
- Files:
-
- 2 deleted
- 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/SelfTest/include/Cache.h
r71 r75 27 27 private : const uint32_t _miss_rate; 28 28 private : const uint32_t _miss_penality; 29 private : list<cache_rsp_t> _list_respons;29 private : std::list<cache_rsp_t> _list_respons; 30 30 31 31 public : Cache_t (uint32_t miss_rate, uint32_t miss_penality): … … 59 59 60 60 // find good place 61 list<cache_rsp_t>::iterator i;61 std::list<cache_rsp_t>::iterator i; 62 62 for(i = _list_respons.begin(); (i != _list_respons.end()) and (i->_cycle<=cycle); i++); 63 63 … … 82 82 public : void end_cycle (void) 83 83 { 84 for( list<cache_rsp_t>::iterator i = _list_respons.begin(); i != _list_respons.end(); i++)84 for(std::list<cache_rsp_t>::iterator i = _list_respons.begin(); i != _list_respons.end(); i++) 85 85 { 86 86 i->_cycle --; … … 90 90 public : void print (void) 91 91 { 92 for( list<cache_rsp_t>::iterator i = _list_respons.begin(); i != _list_respons.end(); i++)92 for(std::list<cache_rsp_t>::iterator i = _list_respons.begin(); i != _list_respons.end(); i++) 93 93 { 94 94 std::cout << "{" << i->_cycle << "}\t" -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/include/Memory.h
r72 r75 53 53 } 54 54 55 cout << "=====[ Memory's information ]" <<endl56 << " * _nb_context : " << _nb_context <<endl57 << " * _nb_word : " << _nb_word <<endl58 << " * _size_word : " << _size_word <<endl59 << " * _shift_addr : " << _shift_addr <<endl60 << " * _mask_addr : " << hex << _mask_addr << dec <<endl;55 std::cout << "=====[ Memory's information ]" << std::endl 56 << " * _nb_context : " << _nb_context << std::endl 57 << " * _nb_word : " << _nb_word << std::endl 58 << " * _size_word : " << _size_word << std::endl 59 << " * _shift_addr : " << _shift_addr << std::endl 60 << " * _mask_addr : " << std::hex << _mask_addr << std::dec << std::endl; 61 61 } 62 62 … … 71 71 morpheo::behavioural::Tdcache_data_t data) 72 72 { 73 cout << "<Memory::access>" <<endl74 << " * context : " << context <<endl75 << " * address : " << hex << address << dec <<endl76 << " * type : " << type <<endl77 << " * wdata : " << hex << data << dec <<endl;73 std::cout << "<Memory::access>" << std::endl 74 << " * context : " << context << std::endl 75 << " * address : " << std::hex << address << std::dec << std::endl 76 << " * type : " << type << std::endl 77 << " * wdata : " << std::hex << data << std::dec << std::endl; 78 78 79 79 morpheo::behavioural::Tdcache_data_t rdata; … … 90 90 rdata = other (context, address, type); 91 91 92 cout << " * rdata : " << hex << rdata << dec <<endl;92 std::cout << " * rdata : " << std::hex << rdata << std::dec << std::endl; 93 93 94 94 return rdata; … … 161 161 morpheo::behavioural::Tdcache_data_t data) 162 162 { 163 cout << " * write" <<endl;163 std::cout << " * write" << std::endl; 164 164 165 165 if (context>_nb_context) … … 172 172 morpheo::behavioural::Tdcache_address_t MSB = address >> _shift_addr; 173 173 174 cout <<hex175 << " * LSB : " << LSB << endl176 << " * MSB : " << MSB << endl177 << dec;174 std::cout << std::hex 175 << " * LSB : " << LSB << std::endl 176 << " * MSB : " << MSB << std::endl 177 << std::dec; 178 178 179 179 morpheo::behavioural::Tdcache_data_t data_old = _data [context][MSB]; … … 193 193 uint32_t index_max = index_min+memory_size; 194 194 195 cout << " * type : " << type <<endl196 << " * memory_size : " << memory_size << endl197 << " * index_min : " << index_min << endl198 << " * index_max : " << index_max << endl;195 std::cout << " * type : " << type << std::endl 196 << " * memory_size : " << memory_size << std::endl 197 << " * index_min : " << index_min << std::endl 198 << " * index_max : " << index_max << std::endl; 199 199 200 200 morpheo::behavioural::Tdcache_data_t data_insert = data<<index_min; // the data is aligned at LSB 201 201 202 // cout << "read :" <<endl203 // << " * context : " << context << endl204 // << hex205 // << " * address : " << address << endl206 // << " * LSB : " << LSB << endl207 // << " * MSB : " << MSB << endl208 // << dec209 // << " * index_min : " << index_min << endl210 // << " * index_max : " << index_max << endl211 // << " * type : " << type << endl;202 // std::cout << "read :" << std::endl 203 // << " * context : " << context << std::endl 204 // << std::hex 205 // << " * address : " << address << std::endl 206 // << " * LSB : " << LSB << std::endl 207 // << " * MSB : " << MSB << std::endl 208 // << std::dec 209 // << " * index_min : " << index_min << std::endl 210 // << " * index_max : " << index_max << std::endl 211 // << " * type : " << type << std::endl; 212 212 213 213 if (index_max > _size_word) … … 218 218 _data [context][MSB] = data_new; 219 219 220 cout <<hex221 << " * data_old : " << data_old <<endl222 << " * data_new : " << data_new <<endl223 <<dec;220 std::cout << std::hex 221 << " * data_old : " << data_old << std::endl 222 << " * data_new : " << data_new << std::endl 223 << std::dec; 224 224 225 225 … … 277 277 } 278 278 std::cout << " - " 279 << hex279 << std::hex 280 280 << i->_address << " : " 281 281 << i->_data_old << " -> " 282 282 << i->_data_new << std::endl 283 << hex;283 << std::hex; 284 284 } 285 285 } -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/include/MemoryRequest.h
r71 r75 126 126 { 127 127 return os << "<" << morpheo::toString(x._cycle) << "> : " 128 << "{" << morpheo::toString(static_cast<uint32_t>(x._packet_id)) << "}" << endl129 << "\t * context / front_end / ooo_engine : " << morpheo::toString(static_cast<uint32_t>(x._context_id )) << " - " << morpheo::toString(static_cast<uint32_t>(x._front_end_id )) << " - " << morpheo::toString(static_cast<uint32_t>(x._ooo_engine_id)) << endl130 << "\t * operation / type / write_spec_ko : " << morpheo::toString(static_cast<uint32_t>(x._operation)) << " " << morpheo::toString(static_cast<uint32_t>(x._type)) << " " << morpheo::toString(static_cast<uint32_t>(x._write_spec_ko)) << endl131 << "\t * ptr_write store/load : " << morpheo::toString(static_cast<uint32_t>(x._store_queue_ptr_write)) << " " << morpheo::toString(static_cast<uint32_t>(x._load_queue_ptr_write)) << endl132 << "\t * immediat / data_ra / data_rb : " << morpheo::toString(static_cast<uint32_t>(x._immediat)) << " - " << morpheo::toString(static_cast<uint32_t>(x._data_ra)) << " - " << morpheo::toString(static_cast<uint32_t>(x._data_rb)) << endl133 << "\t * write_rd / num_reg_rd : " << morpheo::toString(static_cast<uint32_t>(x._write_rd)) << " " << morpheo::toString(static_cast<uint32_t>(x._num_reg_rd)) << endl134 << "\t * data_wait : " << morpheo::toString(static_cast<uint32_t>(x._data_wait)) << endl;128 << "{" << morpheo::toString(static_cast<uint32_t>(x._packet_id)) << "}" << std::endl 129 << "\t * context / front_end / ooo_engine : " << morpheo::toString(static_cast<uint32_t>(x._context_id )) << " - " << morpheo::toString(static_cast<uint32_t>(x._front_end_id )) << " - " << morpheo::toString(static_cast<uint32_t>(x._ooo_engine_id)) << std::endl 130 << "\t * operation / type / write_spec_ko : " << morpheo::toString(static_cast<uint32_t>(x._operation)) << " " << morpheo::toString(static_cast<uint32_t>(x._type)) << " " << morpheo::toString(static_cast<uint32_t>(x._write_spec_ko)) << std::endl 131 << "\t * ptr_write store/load : " << morpheo::toString(static_cast<uint32_t>(x._store_queue_ptr_write)) << " " << morpheo::toString(static_cast<uint32_t>(x._load_queue_ptr_write)) << std::endl 132 << "\t * immediat / data_ra / data_rb : " << morpheo::toString(static_cast<uint32_t>(x._immediat)) << " - " << morpheo::toString(static_cast<uint32_t>(x._data_ra)) << " - " << morpheo::toString(static_cast<uint32_t>(x._data_rb)) << std::endl 133 << "\t * write_rd / num_reg_rd : " << morpheo::toString(static_cast<uint32_t>(x._write_rd)) << " " << morpheo::toString(static_cast<uint32_t>(x._num_reg_rd)) << std::endl 134 << "\t * data_wait : " << morpheo::toString(static_cast<uint32_t>(x._data_wait)) << std::endl; 135 135 } 136 136 -
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
r71 r75 30 30 #include "Behavioural/include/Vhdl.h" 31 31 #endif 32 33 using namespace std;34 using namespace morpheo::behavioural::generic::queue_control;35 32 36 33 namespace morpheo { … … 51 48 // -----[ fields ]---------------------------------------------------- 52 49 // Parameters 53 protected : const st ring _name;50 protected : const std::string _name; 54 51 55 52 protected : const Parameters * _param; … … 194 191 sc_module_name name, 195 192 #else 196 st ringname,193 std::string name, 197 194 #endif 198 195 #ifdef STATISTICS … … 221 218 #ifdef STATISTICS 222 219 public : void statistics_declaration (morpheo::behavioural::Parameters_Statistics * param_statistics); 223 public : string statistics_print (uint32_t depth);224 220 #endif 225 221 -
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
r72 r75 24 24 void Load_store_unit::allocation (void) 25 25 { 26 string rename;27 28 26 log_printf(FUNC,Load_store_unit,FUNCTION,"Begin"); 29 27 -
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
r72 r75 660 660 #if DEBUG>=DEBUG_TRACE 661 661 // ***** dump store queue 662 cout << "Dump STORE_QUEUE :" <<endl663 << "ptr_read : " << toString(static_cast<uint32_t>(reg_STORE_QUEUE_PTR_READ)) <<endl;662 std::cout << "Dump STORE_QUEUE :" << std::endl 663 << "ptr_read : " << toString(static_cast<uint32_t>(reg_STORE_QUEUE_PTR_READ)) << std::endl; 664 664 665 665 for (uint32_t i=0; i<_param->_size_store_queue; i++) 666 666 { 667 667 uint32_t j = (reg_STORE_QUEUE_PTR_READ+i)%_param->_size_store_queue; 668 cout << "{" << j << "}" <<endl669 << _store_queue[j] <<endl;668 std::cout << "{" << j << "}" << std::endl 669 << _store_queue[j] << std::endl; 670 670 } 671 671 672 672 // ***** dump speculative_access queue 673 cout << "Dump SPECULATIVE_ACCESS_QUEUE :" <<endl;673 std::cout << "Dump SPECULATIVE_ACCESS_QUEUE :" << std::endl; 674 674 675 675 for (uint32_t i=0; i<_param->_size_speculative_access_queue; i++) 676 676 { 677 677 uint32_t j = (*_speculative_access_queue_control)[i]; 678 cout << "{" << j << "}" <<endl679 << _speculative_access_queue[j] << endl;678 std::cout << "{" << j << "}" << std::endl 679 << _speculative_access_queue[j] << std::endl; 680 680 } 681 681 682 682 // ***** dump load queue 683 cout << "Dump LOAD_QUEUE :" <<endl684 << "ptr_read_check_priority : " << toString(static_cast<uint32_t>(reg_LOAD_QUEUE_CHECK_PRIORITY)) << endl;683 std::cout << "Dump LOAD_QUEUE :" << std::endl 684 << "ptr_read_check_priority : " << toString(static_cast<uint32_t>(reg_LOAD_QUEUE_CHECK_PRIORITY)) << std::endl; 685 685 686 686 for (uint32_t i=0; i<_param->_size_load_queue; i++) 687 687 { 688 688 uint32_t j = i; 689 cout << "{" << j << "}" <<endl690 << _load_queue[j] << endl;689 std::cout << "{" << j << "}" << std::endl 690 << _load_queue[j] << std::endl; 691 691 } 692 692
Note: See TracChangeset
for help on using the changeset viewer.