Changeset 82 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop
- Timestamp:
- May 1, 2008, 6:48:45 PM (16 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop
- Files:
-
- 4 added
- 40 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/SelfTest/configuration.cfg
r81 r82 3 3 1 1 +1 # nb_front_end 4 4 2 2 +1 # nb_ooo_engine 5 1024 1024+1 # nb_packet5 256 256 +1 # nb_packet 6 6 32 32 +1 # size_general_data 7 7 32 32 +1 # nb_general_register -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (1024*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" 11 12 #define NB_ITERATION 113 #define CYCLE_MAX (1024*NB_ITERATION)14 15 #define LABEL(str...) \16 { \17 msg (_("{%d} "),static_cast<uint32_t>(sc_simulation_time())); \18 msg (str); \19 msg (_("\n")); \20 } while(0)21 22 #define SC_START(cycle_offset) \23 do \24 { \25 /*cout << "SC_START (begin)" << endl;*/ \26 \27 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \28 if (cycle_offset != 0) \29 { \30 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \31 } \32 \33 if (cycle_current > CYCLE_MAX) \34 { \35 TEST_KO("Maximal cycles Reached"); \36 } \37 \38 sc_start(cycle_offset); \39 \40 /*cout << "SC_START (end )" << endl;*/ \41 } while(0)42 14 43 15 class execute_transaction … … 121 93 Functionnal_unit * _Functionnal_unit = new Functionnal_unit (name.c_str(), 122 94 #ifdef STATISTICS 123 _parameters_statistics,95 _parameters_statistics, 124 96 #endif 125 _param); 97 _param, 98 USE_ALL); 126 99 127 100 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/include/Functionnal_unit.h
r81 r82 148 148 #endif 149 149 Parameters * param, 150 morpheo::behavioural::Tusage_t usage =USE_ALL150 morpheo::behavioural::Tusage_t usage 151 151 ); 152 152 public : ~Functionnal_unit (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/include/test.h
r81 r82 7 7 */ 8 8 9 #define CYCLE_MAX 1024 9 10 10 11 #include "Common/include/Time.h" -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/src/test1.cpp
r81 r82 7 7 */ 8 8 9 /* 10 9 11 #include <queue> 10 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/include/test.h" 11 12 #define NB_ITERATION 113 #define CYCLE_MAX (1024*NB_ITERATION)14 15 #define LABEL(str) \16 { \17 cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} " << str << endl; \18 } while(0)19 20 #define SC_START(cycle_offset) \21 do \22 { \23 /*cout << "SC_START (begin)" << endl;*/ \24 \25 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \26 if (cycle_offset != 0) \27 { \28 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \29 } \30 \31 if (cycle_current > CYCLE_MAX) \32 { \33 TEST_KO("Maximal cycles Reached"); \34 } \35 sc_start(cycle_offset); \36 /*cout << "SC_START (end )" << endl;*/ \37 } while(0)38 13 39 14 … … 55 30 56 31 #ifdef SYSTEMC 57 /********************************************************************* 58 * Déclarations des signaux 59 *********************************************************************/ 32 60 33 string rename = ""; 61 34 … … 129 102 } 130 103 131 /******************************************************** 132 * Instanciation 133 ********************************************************/ 104 // Instanciation 134 105 135 106 cout << "<" << name << "> Instanciation of _Load_store_unit" << endl; … … 215 186 Time * _time = new Time(); 216 187 217 /******************************************************** 218 * Simulation - Begin 219 ********************************************************/ 188 // Simulation - Begin 220 189 221 190 // Initialisation … … 656 625 } 657 626 658 627 LABEL("DCACHE_RSP : "+toString(in_DCACHE_RSP_VAL->read())+" - "+toString(out_DCACHE_RSP_ACK ->read())); 659 628 if (in_DCACHE_RSP_VAL->read() and out_DCACHE_RSP_ACK->read()) 660 629 { … … 677 646 678 647 679 /******************************************************** 680 * Simulation - End 681 ********************************************************/ 648 // Simulation - End 682 649 683 650 TEST_OK ("End of Simulation"); … … 755 722 #endif 756 723 } 724 */ -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/src/test2.cpp
r81 r82 9 9 #include <queue> 10 10 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/include/test.h" 11 12 #define CYCLE_MAX 102413 14 #define LABEL(str) \15 { \16 cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} " << str << endl; \17 } while(0)18 19 #define SC_START(cycle_offset) \20 do \21 { \22 /*cout << "SC_START (begin)" << endl;*/ \23 \24 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \25 if (cycle_offset != 0) \26 { \27 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \28 } \29 \30 if (cycle_current > CYCLE_MAX) \31 { \32 TEST_KO("Maximal cycles Reached"); \33 } \34 sc_start(cycle_offset); \35 /*cout << "SC_START (end )" << endl;*/ \36 } while(0)37 38 11 39 12 //===================================================================={test} … … 71 44 _parameters_statistics, 72 45 #endif 73 _param); 46 _param, 47 USE_ALL); 74 48 75 49 #ifdef SYSTEMC … … 487 461 SC_START(0); 488 462 489 LABEL("MEMORY_IN : "+toString(in_MEMORY_IN_VAL ->read())+" - "+toString(out_MEMORY_IN_ACK ->read()));463 LABEL("MEMORY_IN : %d - %d",in_MEMORY_IN_VAL ->read(),out_MEMORY_IN_ACK ->read()); 490 464 if ( in_MEMORY_IN_VAL ->read() and out_MEMORY_IN_ACK ->read()) 491 465 { 492 466 Tpacket_t packet_id = in_MEMORY_IN_PACKET_ID->read(); 493 467 494 LABEL(" * Accepted MEMORY_IN : " + toString(packet_id));468 LABEL(" * Accepted MEMORY_IN : %d",packet_id); 495 469 cout << fifo_request.top(); 496 470 … … 509 483 } 510 484 511 LABEL("MEMORY_OUT : "+toString(out_MEMORY_OUT_VAL->read())+" - "+toString(in_MEMORY_OUT_ACK ->read()));485 LABEL("MEMORY_OUT : %d - %d",out_MEMORY_OUT_VAL->read(),in_MEMORY_OUT_ACK ->read()); 512 486 if (out_MEMORY_OUT_VAL->read() and in_MEMORY_OUT_ACK->read()) 513 487 { 514 488 Tpacket_t packet_id = out_MEMORY_OUT_PACKET_ID->read(); 515 489 516 LABEL(" * Accepted MEMORY_OUT : " + toString(packet_id));490 LABEL(" * Accepted MEMORY_OUT : %d",packet_id); 517 491 518 492 if (is_operation_memory_store(tab_request[packet_id]._operation)) … … 650 624 } 651 625 652 LABEL("DCACHE_REQ : "+toString(out_DCACHE_REQ_VAL->read())+" - "+toString(in_DCACHE_REQ_ACK ->read()));626 LABEL("DCACHE_REQ : %d - %d",out_DCACHE_REQ_VAL->read(),in_DCACHE_REQ_ACK ->read()); 653 627 if (out_DCACHE_REQ_VAL->read() and in_DCACHE_REQ_ACK->read()) 654 628 { … … 665 639 packet_id = (out_DCACHE_REQ_PACKET_ID ->read())>>1; 666 640 667 LABEL(" * Accepted DCACHE_REQ : " + toString(packet_id));641 LABEL(" * Accepted DCACHE_REQ : %d",packet_id); 668 642 669 643 if (address >= size_memory) … … 676 650 { 677 651 rdata = _memory->access (context_id, address, out_DCACHE_REQ_TYPE->read(), out_DCACHE_REQ_WDATA->read()); 678 LABEL(" * rdata : " + toString(rdata));652 LABEL(" * rdata : 0x%x",rdata); 679 653 } 680 654 … … 699 673 } 700 674 701 LABEL("DCACHE_RSP : "+toString(in_DCACHE_RSP_VAL->read())+" - "+toString(out_DCACHE_RSP_ACK ->read()));675 LABEL("DCACHE_RSP : %d - %d",in_DCACHE_RSP_VAL->read(),out_DCACHE_RSP_ACK ->read()); 702 676 if (in_DCACHE_RSP_VAL->read() and out_DCACHE_RSP_ACK->read()) 703 677 { -
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
r81 r82 30 30 #include "Behavioural/include/Vhdl.h" 31 31 #endif 32 #include "Behavioural/include/Usage.h" 32 33 33 34 namespace morpheo { … … 48 49 // -----[ fields ]---------------------------------------------------- 49 50 // Parameters 50 protected : const std::string _name; 51 51 protected : const std::string _name; 52 52 protected : const Parameters * _param; 53 private : const Tusage_t _usage; 53 54 54 55 #ifdef STATISTICS … … 202 203 morpheo::behavioural::Parameters_Statistics * param_statistics, 203 204 #endif 204 Parameters * param ); 205 Parameters * param, 206 morpheo::behavioural::Tusage_t usage ); 205 207 public : ~Load_store_unit (void); 206 208 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/src/Load_store_unit.cpp
r81 r82 20 20 #undef FUNCTION 21 21 #define FUNCTION "Load_store_unit::Load_store_unit" 22 Load_store_unit::Load_store_unit 23 ( 22 24 #ifdef SYSTEMC 23 Load_store_unit::Load_store_unit (sc_module_name name,25 sc_module_name name, 24 26 #else 25 Load_store_unit::Load_store_unit (string name,27 std::string name, 26 28 #endif 27 29 #ifdef STATISTICS 28 30 morpheo::behavioural::Parameters_Statistics * param_statistics, 29 31 #endif 30 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_execute_unit::execute_unit::load_store_unit::Parameters * param ): 31 _name (name) 32 ,_param (param) 32 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_execute_unit::execute_unit::load_store_unit::Parameters * param , 33 morpheo::behavioural::Tusage_t usage 34 ): 35 _name (name) 36 ,_param (param) 37 ,_usage (usage) 33 38 { 34 39 log_printf(FUNC,Load_store_unit,FUNCTION,"Begin"); -
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
r81 r82 26 26 log_printf(FUNC,Load_store_unit,FUNCTION,"Begin"); 27 27 28 _component = new Component ( );28 _component = new Component (_usage); 29 29 30 30 Entity * entity = _component->set_entity (_name -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/include/test.h"10 #include "Common/include/Test.h"11 12 9 #define NB_ITERATION 1 13 10 //64 14 11 #define CYCLE_MAX (1024*NB_ITERATION) 15 12 16 #define LABEL(str) \ 17 { \ 18 cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} " << str << endl; \ 19 } while(0) 20 21 static uint32_t cycle = 0; 22 23 #define SC_START(cycle_offset) \ 24 do \ 25 { \ 26 /*cout << "SC_START (begin)" << endl;*/ \ 27 \ 28 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \ 29 if (cycle_current != cycle) \ 30 { \ 31 cycle = cycle_current; \ 32 cout << "##########[ cycle "<< cycle << " ]" << endl; \ 33 } \ 34 \ 35 if (cycle_current > CYCLE_MAX) \ 36 { \ 37 TEST_KO("Maximal cycles Reached"); \ 38 } \ 39 sc_start(cycle_offset); \ 40 /*cout << "SC_START (end )" << endl;*/ \ 41 } while(0) 13 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/include/test.h" 14 #include "Common/include/Test.h" 42 15 43 16 void test (string name, … … 54 27 _parameters_statistics, 55 28 #endif 56 _param); 29 _param, 30 USE_ALL); 57 31 58 32 #ifdef SYSTEMC … … 362 336 for (uint32_t iteration=0; iteration<NB_ITERATION; iteration ++) 363 337 { 364 LABEL("Iteration "+toString(iteration));338 LABEL("Iteration %d",iteration); 365 339 int32_t percent_transaction_queue_in = (rand()%45)+30; 366 340 int32_t percent_transaction_queue_out = (rand()%45)+30; … … 518 492 SC_START(0); 519 493 520 LABEL("Test READ_QUEUE_IN : "+toString(READ_QUEUE_IN_VAL->read())+","+toString(READ_QUEUE_IN_ACK->read()));494 LABEL("Test READ_QUEUE_IN : %d,%d",READ_QUEUE_IN_VAL->read(),READ_QUEUE_IN_ACK->read()); 521 495 if ((READ_QUEUE_IN_VAL->read() == 1) and 522 496 (READ_QUEUE_IN_ACK->read() == 1)) 523 497 { 524 LABEL("Accepted READ_QUEUE_IN [ "+toString(request_in)+"]");498 LABEL("Accepted READ_QUEUE_IN [%d]",request_in); 525 499 request_in ++; 526 500 } 527 LABEL("Test READ_QUEUE_OUT : "+toString(READ_QUEUE_OUT_VAL->read())+","+toString(READ_QUEUE_OUT_ACK->read()));501 LABEL("Test READ_QUEUE_OUT : %d,%d",READ_QUEUE_OUT_VAL->read(),READ_QUEUE_OUT_ACK->read()); 528 502 if ((READ_QUEUE_OUT_VAL->read() == 1) and 529 503 (READ_QUEUE_OUT_ACK->read() == 1)) … … 535 509 rob_id = 0; 536 510 Tcontext_t ctxt = _ooo_engine_id [rob_id]; 537 LABEL("Accepted READ_QUEUE_OUT [ "+toString(rob_id)+"]");511 LABEL("Accepted READ_QUEUE_OUT [%d]",rob_id); 538 512 539 513 TEST(uint32_t , rob_id ,request_out); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/include/Read_queue.h
r81 r82 17 17 #include "Common/include/ToString.h" 18 18 #include "Common/include/Debug.h" 19 #include "Behavioural/include/Types.h"20 19 21 20 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/include/Parameters.h" 21 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/include/Types.h" 22 22 #ifdef STATISTICS 23 23 #include "Behavioural/include/Stat.h" … … 27 27 #include "Behavioural/include/Vhdl.h" 28 28 #endif 29 #include "Behavioural/include/Usage.h" 29 30 30 31 namespace morpheo { … … 36 37 namespace read_unit { 37 38 namespace read_queue { 38 39 class Tread_queue_entry_t40 {41 public : Tcontext_t _context_id ;42 public : Tcontext_t _front_end_id ;43 public : Tcontext_t _ooo_engine_id;44 public : Tpacket_t _rob_id ;45 public : Toperation_t _operation ;46 public : Ttype_t _type ;47 public : Tlsq_ptr_t _store_queue_ptr_write;48 public : Tlsq_ptr_t _load_queue_ptr_write;49 public : Tcontrol_t _has_immediat ;50 public : Tgeneral_data_t _immediat ;51 public : Tcontrol_t _read_ra ;52 public : Tgeneral_address_t _num_reg_ra ;53 public : Tcontrol_t _read_rb ;54 public : Tgeneral_address_t _num_reg_rb ;55 public : Tcontrol_t _read_rc ;56 public : Tspecial_address_t _num_reg_rc ;57 public : Tcontrol_t _write_rd ;58 public : Tgeneral_address_t _num_reg_rd ;59 public : Tcontrol_t _write_re ;60 public : Tspecial_address_t _num_reg_re ;61 62 friend std::ostream& operator<< (std::ostream& output_stream,63 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Tread_queue_entry_t & x)64 {65 output_stream << " * _context_id : " << toString(x._context_id ) << std::endl66 << " * _front_end_id : " << toString(x._front_end_id ) << std::endl67 << " * _ooo_engine_id : " << toString(x._ooo_engine_id) << std::endl68 << " * _rob_id : " << toString(x._rob_id ) << std::endl69 << " * _operation : " << toString(x._operation ) << std::endl70 << " * _type : " << toString(x._type ) << std::endl71 << " * _store_queue_ptr_write : " << toString(x._store_queue_ptr_write) << std::endl72 << " * _load_queue_ptr_write : " << toString(x._load_queue_ptr_write ) << std::endl73 << " * _has_immediat : " << toString(x._has_immediat ) << std::endl74 << " * _immediat : " << toString(x._immediat ) << std::endl75 << " * _read_ra : " << toString(x._read_ra ) << std::endl76 << " * _num_reg_ra : " << toString(x._num_reg_ra ) << std::endl77 << " * _read_rb : " << toString(x._read_rb ) << std::endl78 << " * _num_reg_rb : " << toString(x._num_reg_rb ) << std::endl79 << " * _read_rc : " << toString(x._read_rc ) << std::endl80 << " * _num_reg_rc : " << toString(x._num_reg_rc ) << std::endl81 << " * _write_rd : " << toString(x._write_rd ) << std::endl82 << " * _num_reg_rd : " << toString(x._num_reg_rd ) << std::endl83 << " * _write_re : " << toString(x._write_re ) << std::endl84 << " * _num_reg_re : " << toString(x._num_reg_re ) << std::endl;85 86 return output_stream;87 }88 89 };90 91 class Tread_queue_head_entry_t92 {93 public : Tcontext_t _context_id ;94 public : Tcontext_t _front_end_id ;95 public : Tcontext_t _ooo_engine_id;96 public : Tpacket_t _rob_id ;97 public : Toperation_t _operation ;98 public : Ttype_t _type ;99 public : Tlsq_ptr_t _store_queue_ptr_write;100 public : Tlsq_ptr_t _load_queue_ptr_write;101 public : Tcontrol_t _has_immediat ;102 public : Tgeneral_data_t _immediat ;103 public : Tcontrol_t _read_ra ;104 public : Tcontrol_t _read_ra_val ; // 1 : must access at the registerFile (after access, is set at 0)105 public : Tgeneral_address_t _num_reg_ra ;106 public : Tcontrol_t _data_ra_val ; // 1 : the read of registerFile is valid107 public : Tgeneral_data_t _data_ra ;108 public : Tcontrol_t _read_rb ;109 public : Tcontrol_t _read_rb_val ;110 public : Tgeneral_address_t _num_reg_rb ;111 public : Tcontrol_t _data_rb_val ;112 public : Tgeneral_data_t _data_rb ;113 public : Tcontrol_t _read_rc ;114 public : Tcontrol_t _read_rc_val ;115 public : Tspecial_address_t _num_reg_rc ;116 public : Tcontrol_t _data_rc_val ;117 public : Tspecial_data_t _data_rc ;118 public : Tcontrol_t _write_rd ;119 public : Tgeneral_address_t _num_reg_rd ;120 public : Tcontrol_t _write_re ;121 public : Tspecial_address_t _num_reg_re ;122 123 #undef FUNCTION124 #define FUNCTION "Tread_queue_head_entry_t::operator="125 public : Tread_queue_head_entry_t& operator=(Tread_queue_entry_t x)126 {127 log_printf(FUNC,Read_queue,FUNCTION,"Begin");128 129 _context_id = x._context_id ;130 _front_end_id = x._front_end_id ;131 _ooo_engine_id= x._ooo_engine_id;132 _rob_id = x._rob_id ;133 _operation = x._operation ;134 _type = x._type ;135 _store_queue_ptr_write = x._store_queue_ptr_write;136 _load_queue_ptr_write = x._load_queue_ptr_write ;137 _has_immediat = x._has_immediat ;138 _immediat = x._immediat ;139 _read_ra = x._read_ra ;140 _read_ra_val = x._read_ra == 1 ; //if not must read, the registerFile is already access141 _num_reg_ra = x._num_reg_ra ;142 _data_ra_val = x._read_ra == 0 ; //if not must read, the data is already valid143 _data_ra = 0 ;144 _read_rb = x._read_rb ;145 _read_rb_val = x._read_rb == 1 ;146 _num_reg_rb = x._num_reg_rb ;147 _data_rb_val = x._read_rb == 0 ;148 _data_rb = 0 ;149 _read_rc = x._read_rc ;150 _read_rc_val = x._read_rc == 1 ;151 _num_reg_rc = x._num_reg_rc ;152 _data_rc_val = x._read_rc == 0 ;153 _data_rc = 0 ;154 _write_rd = x._write_rd ;155 _num_reg_rd = x._num_reg_rd ;156 _write_re = x._write_re ;157 _num_reg_re = x._num_reg_re ;158 159 log_printf(FUNC,Read_queue,FUNCTION,"End");160 161 return *this;162 }163 164 friend std::ostream& operator<< (std::ostream& output_stream,165 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Tread_queue_head_entry_t & x)166 {167 output_stream << " * _context_id : " << x._context_id << std::endl168 << " * _front_end_id : " << x._front_end_id << std::endl169 << " * _ooo_engine_id : " << x._ooo_engine_id<< std::endl170 << " * _rob_id : " << x._rob_id << std::endl171 << " * _operation : " << x._operation << std::endl172 << " * _type : " << x._type << std::endl173 << " * _store_queue_ptr_write : " << toString(x._store_queue_ptr_write) << std::endl174 << " * _load_queue_ptr_write : " << toString(x._load_queue_ptr_write ) << std::endl175 << " * _has_immediat : " << x._has_immediat << std::endl176 << " * _immediat : " << x._immediat << std::endl177 << " * _read_ra : " << x._read_ra << std::endl178 << " * _read_ra_val : " << x._read_ra_val << std::endl179 << " * _num_reg_ra : " << x._num_reg_ra << std::endl180 << " * _data_ra_val : " << x._data_ra_val << std::endl181 << " * _data_ra : " << x._data_ra << std::endl182 << " * _read_rb : " << x._read_rb << std::endl183 << " * _read_rb_val : " << x._read_rb_val << std::endl184 << " * _num_reg_rb : " << x._num_reg_rb << std::endl185 << " * _data_rb_val : " << x._data_rb_val << std::endl186 << " * _data_rb : " << x._data_rb << std::endl187 << " * _read_rc : " << x._read_rc << std::endl188 << " * _read_rc_val : " << x._read_rc_val << std::endl189 << " * _num_reg_rc : " << x._num_reg_rc << std::endl190 << " * _data_rc_val : " << x._data_rc_val << std::endl191 << " * _data_rc : " << x._data_rc << std::endl192 << " * _write_rd : " << x._write_rd << std::endl193 << " * _num_reg_rd : " << x._num_reg_rd << std::endl194 << " * _write_re : " << x._write_re << std::endl195 << " * _num_reg_re : " << x._num_reg_re << std::endl;196 197 return output_stream;198 }199 };200 39 201 40 class Read_queue … … 206 45 // -----[ fields ]---------------------------------------------------- 207 46 // Parameters 208 protected : const std::string _name; 209 protected : const Parameters * _param; 47 protected : const std::string _name; 48 protected : const Parameters * _param; 49 private : const Tusage_t _usage; 210 50 211 51 #ifdef STATISTICS … … 345 185 morpheo::behavioural::Parameters_Statistics * param_statistics, 346 186 #endif 347 Parameters * param ); 187 Parameters * param, 188 morpheo::behavioural::Tusage_t usage); 348 189 349 190 public : Read_queue (Parameters * param ); … … 381 222 }; // end namespace multi_execute_loop 382 223 }; // end namespace core 383 384 224 }; // end namespace behavioural 385 225 }; // end namespace morpheo -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue.cpp
r81 r82 18 18 19 19 20 #ifdef SYSTEMC 21 Read_queue::Read_queue (sc_module_name name, 20 Read_queue::Read_queue 21 ( 22 #ifdef SYSTEMC 23 sc_module_name name, 22 24 #else 23 Read_queue::Read_queue (string name,25 std::string name, 24 26 #endif 25 27 #ifdef STATISTICS 26 morpheo::behavioural::Parameters_Statistics * param_statistics, 27 #endif 28 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Parameters * param ): 29 _name (name) 30 ,_param (param) 28 morpheo::behavioural::Parameters_Statistics * param_statistics, 29 #endif 30 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Parameters * param, 31 morpheo::behavioural::Tusage_t usage ): 32 _name (name) 33 ,_param (param) 34 ,_usage (usage) 31 35 { 32 36 log_printf(FUNC,Read_queue,"Read_queue","Begin"); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue_allocation.cpp
r81 r82 23 23 log_printf(FUNC,Read_queue,"allocation","Begin"); 24 24 25 _component = new Component ( );25 _component = new Component (_usage); 26 26 27 27 Entity * entity = _component->set_entity (_name -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/src/test.cpp
r81 r82 6 6 * Test 7 7 */ 8 #define NB_ITERATION 2 9 #define CYCLE_MAX (2048*NB_ITERATION) 8 10 9 11 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/include/test.h" 10 12 #include "Common/include/Test.h" 11 13 #include "Common/include/BitManipulation.h" 12 13 #define NB_ITERATION 214 #define CYCLE_MAX (2048*NB_ITERATION)15 16 #define LABEL(str) \17 { \18 cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} " << str << endl; \19 } while(0)20 21 static uint32_t cycle = 0;22 23 #define SC_START(cycle_offset) \24 do \25 { \26 /*cout << "SC_START (begin)" << endl;*/ \27 \28 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \29 sc_start(cycle_offset); \30 if (cycle_current != cycle) \31 { \32 cycle = cycle_current; \33 cout << "##########[ cycle "<< cycle << " ]" << endl; \34 } \35 \36 if (cycle_current > CYCLE_MAX) \37 { \38 TEST_KO("Maximal cycles Reached"); \39 } \40 /*cout << "SC_START (end )" << endl;*/ \41 } while(0)42 14 43 15 void test (string name, … … 50 22 #endif 51 23 52 Reservation_station * _Reservation_station = new Reservation_station (name.c_str(), 24 Reservation_station * _Reservation_station = new Reservation_station 25 (name.c_str(), 53 26 #ifdef STATISTICS 54 27 _parameters_statistics, 55 28 #endif 56 _param); 29 _param, 30 USE_ALL); 57 31 58 32 #ifdef SYSTEMC … … 354 328 for (uint32_t iteration=0; iteration<NB_ITERATION; iteration ++) 355 329 { 356 LABEL("Iteration "+toString(iteration));330 LABEL("Iteration %d",iteration); 357 331 358 332 int32_t percent_transaction_queue_in = (rand()%50)+25; … … 507 481 if (val) 508 482 { 509 LABEL(" * GPR_WRITE [ "+toString(i)+"] - gpr["+toString(num_reg)+"]["+toString(ooo_engine)+"] <- "+toString(data));483 LABEL(" * GPR_WRITE [%d] - gpr[%d][%d] <- 0x%x",i,num_reg,ooo_engine,data); 510 484 can_gpr_use [ooo_engine][num_reg] = false; 511 485 need_gpr [ooo_engine][num_reg] = false; … … 533 507 if (val == 1) 534 508 { 535 LABEL(" * SPR_WRITE ["+toString(i)+"] - spr["+toString(num_reg)+"]["+toString(ooo_engine)+"] <- "+toString(data)); 509 LABEL(" * SPR_WRITE [%d] - spr[%d][%d] <- 0x%x",i,num_reg,ooo_engine,data); 510 536 511 can_spr_use [ooo_engine][num_reg] = false; 537 512 need_spr[ooo_engine][num_reg] = false; … … 560 535 if (gpr_val) 561 536 { 562 LABEL(" * BYPASS_WRITE [ "+toString(i)+"] - gpr["+toString(gpr_num_reg)+"]["+toString(ooo_engine)+"] <- "+toString(gpr_data));537 LABEL(" * BYPASS_WRITE [%d] - gpr[%d][%d] <- 0x%x",i,gpr_num_reg,ooo_engine,gpr_data); 563 538 can_gpr_use [ooo_engine][gpr_num_reg] = false; 564 539 need_gpr[ooo_engine][gpr_num_reg] = false; … … 580 555 if (spr_val) 581 556 { 582 LABEL(" * BYPASS_WRITE ["+toString(i)+"] - spr["+toString(spr_num_reg)+"]["+toString(ooo_engine)+"] <- "+toString(spr_data)); 557 LABEL(" * BYPASS_WRITE [%d] - spr[%d][%d] <- 0x%x",i,spr_num_reg,ooo_engine,spr_data); 558 583 559 can_spr_use [ooo_engine][spr_num_reg] = false; 584 560 need_spr[ooo_engine][spr_num_reg] = false; … … 608 584 if (val) 609 585 { 610 LABEL(" * BYPASS_MEMORY ["+toString(i)+"] - gpr["+toString(num_reg)+"]["+toString(ooo_engine)+"] <- "+toString(data)); 586 LABEL(" * BYPASS_MEMORY [%d] - spr[%d][%d] <- 0x%x",i,num_reg,ooo_engine,data); 587 611 588 can_gpr_use [ooo_engine][num_reg] = false; 612 589 need_gpr [ooo_engine][num_reg] = false; … … 622 599 (out_INSERT_ACK->read() == 1)) 623 600 { 624 LABEL("Accepted INSERT number : "+toString(request_in));601 LABEL("Accepted INSERT number : %d",request_in); 625 602 request_in ++; 626 603 } … … 628 605 for (uint32_t i=0; i<_param->_nb_inst_retire; i++) 629 606 { 630 LABEL("Test RETIRE "+toString(i)+" : "+toString(out_RETIRE_VAL[i]->read())+","+toString(in_RETIRE_ACK[i]->read()));607 LABEL("Test RETIRE %d : %d,%d",i,out_RETIRE_VAL[i]->read(),in_RETIRE_ACK[i]->read()); 631 608 if ((out_RETIRE_VAL [i]->read() == 1) and 632 609 ( in_RETIRE_ACK [i]->read() == 1)) … … 637 614 else 638 615 rob_id = 0; 639 LABEL("Accepted RETIRE [ "+toString(i)+"] number : "+toString(rob_id)+", request number : "+toString(request_out));616 LABEL("Accepted RETIRE [%d] number : %d, request number : %d",i,rob_id,request_out); 640 617 TEST(bool, request_out_wait [rob_id] , true); 641 618 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/include/Reservation_station.h
r81 r82 21 21 #endif 22 22 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/include/Parameters.h" 23 #include "Behavioural/ include/Types.h"23 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/include/Types.h" 24 24 #ifdef STATISTICS 25 25 #include "Behavioural/include/Stat.h" … … 29 29 #include "Behavioural/include/Vhdl.h" 30 30 #endif 31 #include "Behavioural/include/Usage.h" 31 32 32 33 namespace morpheo { … … 39 40 namespace reservation_station { 40 41 41 class Treservation_station_entry_t42 {43 public : Tcontext_t _context_id ;44 public : Tcontext_t _front_end_id ;45 public : Tcontext_t _ooo_engine_id ;46 public : Tpacket_t _rob_id ;47 public : Toperation_t _operation ;48 public : Ttype_t _type ;49 public : Tlsq_ptr_t _store_queue_ptr_write;50 public : Tlsq_ptr_t _load_queue_ptr_write ;51 public : Tcontrol_t _has_immediat;52 public : Tgeneral_data_t _immediat ;53 //public : Tcontrol_t _read_ra ;54 public : Tgeneral_address_t _num_reg_ra ;55 public : Tcontrol_t _data_ra_val ;56 public : Tgeneral_data_t _data_ra ;57 //public : Tcontrol_t _read_rb ;58 public : Tgeneral_address_t _num_reg_rb ;59 public : Tcontrol_t _data_rb_val ;60 public : Tgeneral_data_t _data_rb ;61 //public : Tcontrol_t _read_rc ;62 public : Tspecial_address_t _num_reg_rc ;63 public : Tcontrol_t _data_rc_val ;64 public : Tspecial_data_t _data_rc ;65 public : Tcontrol_t _write_rd ;66 public : Tgeneral_address_t _num_reg_rd ;67 public : Tcontrol_t _write_re ;68 public : Tspecial_address_t _num_reg_re ;69 70 friend std::ostream& operator<< (std::ostream& output_stream,71 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::reservation_station::Treservation_station_entry_t & x)72 {73 output_stream << " * _context_id : " << toString(x._context_id ) << std::endl74 << " * _front_end_id : " << toString(x._front_end_id ) << std::endl75 << " * _ooo_engine_id : " << toString(x._ooo_engine_id ) << std::endl76 << " * _rob_id : " << toString(x._rob_id ) << std::endl77 << " * _operation : " << toString(x._operation ) << std::endl78 << " * _type : " << toString(x._type ) << std::endl79 << " * _store_queue_ptr_write : " << toString(x._store_queue_ptr_write) << std::endl80 << " * _load_queue_ptr_write : " << toString(x._load_queue_ptr_write ) << std::endl81 << " * _has_immediat : " << toString(x._has_immediat ) << std::endl82 << " * _immediat : " << toString(x._immediat ) << std::endl83 // << " * _read_ra : " << toString(x._read_ra ) << std::endl84 << " * _num_reg_ra : " << toString(x._num_reg_ra ) << std::endl85 << " * _data_ra_val : " << toString(x._data_ra_val ) << std::endl86 << " * _data_ra : " << toString(x._data_ra ) << std::endl87 // << " * _read_rb : " << toString(x._read_rb ) << std::endl88 << " * _num_reg_rb : " << toString(x._num_reg_rb ) << std::endl89 << " * _data_rb_val : " << toString(x._data_rb_val ) << std::endl90 << " * _data_rb : " << toString(x._data_rb ) << std::endl91 // << " * _read_rc : " << toString(x._read_rc ) << std::endl92 << " * _num_reg_rc : " << toString(x._num_reg_rc ) << std::endl93 << " * _data_rc_val : " << toString(x._data_rc_val ) << std::endl94 << " * _data_rc : " << toString(x._data_rc ) << std::endl95 << " * _write_rd : " << toString(x._write_rd ) << std::endl96 << " * _num_reg_rd : " << toString(x._num_reg_rd ) << std::endl97 << " * _write_re : " << toString(x._write_re ) << std::endl98 << " * _num_reg_re : " << toString(x._num_reg_re ) << std::endl;99 100 return output_stream;101 }102 };103 104 42 class Reservation_station 105 43 #if SYSTEMC … … 109 47 // -----[ fields ]---------------------------------------------------- 110 48 // Parameters 111 protected : const std::string _name; 112 49 protected : const std::string _name; 113 50 protected : const Parameters * _param; 51 private : const Tusage_t _usage; 114 52 115 53 #ifdef STATISTICS … … 241 179 morpheo::behavioural::Parameters_Statistics * param_statistics, 242 180 #endif 243 Parameters * param ); 181 Parameters * param, 182 morpheo::behavioural::Tusage_t usage ); 183 244 184 public : ~Reservation_station (void); 245 185 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/src/Reservation_station.cpp
r81 r82 20 20 #undef FUNCTION 21 21 #define FUNCTION "Reservation_station::Reservation_station" 22 23 Reservation_station::Reservation_station 24 ( 22 25 #ifdef SYSTEMC 23 Reservation_station::Reservation_station (sc_module_name name,26 sc_module_name name, 24 27 #else 25 Reservation_station::Reservation_station (string name,28 std::string name, 26 29 #endif 27 30 #ifdef STATISTICS 28 31 morpheo::behavioural::Parameters_Statistics * param_statistics, 29 32 #endif 30 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::reservation_station::Parameters * param ): 31 _name (name) 32 ,_param (param) 33 morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::reservation_station::Parameters * param, 34 morpheo::behavioural::Tusage_t usage ): 35 _name (name) 36 ,_param (param) 37 ,_usage (usage) 33 38 { 34 39 log_printf(FUNC,Reservation_station,FUNCTION,"Begin"); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/src/Reservation_station_allocation.cpp
r81 r82 26 26 log_printf(FUNC,Reservation_station,FUNCTION,"Begin"); 27 27 28 _component = new Component ( );28 _component = new Component (_usage); 29 29 30 30 Entity * entity = _component->set_entity (_name -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (128*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" 11 14 #include "Behavioural/include/Allocation.h" 12 13 #define NB_ITERATION 114 #define CYCLE_MAX (128*NB_ITERATION)15 16 #define LABEL(str...) \17 { \18 msg (_("{%d} "),static_cast<uint32_t>(sc_simulation_time())); \19 msg (str); \20 msg (_("\n")); \21 } while(0)22 23 #define SC_START(cycle_offset) \24 do \25 { \26 /*cout << "SC_START (begin)" << endl;*/ \27 \28 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \29 if (cycle_offset != 0) \30 { \31 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \32 } \33 \34 if (cycle_current > CYCLE_MAX) \35 { \36 TEST_KO("Maximal cycles Reached"); \37 } \38 \39 sc_start(cycle_offset); \40 \41 /*cout << "SC_START (end )" << endl;*/ \42 } while(0)43 15 44 16 void test (string name, … … 51 23 #endif 52 24 53 Read_unit * _Read_unit = new Read_unit (name.c_str(), 25 Read_unit * _Read_unit = new Read_unit 26 (name.c_str(), 54 27 #ifdef STATISTICS 55 _parameters_statistics, 56 #endif 57 _param); 28 _parameters_statistics, 29 #endif 30 _param, 31 USE_ALL); 58 32 59 33 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/include/Read_unit.h
r81 r82 178 178 #endif 179 179 Parameters * param, 180 morpheo::behavioural::Tusage_t usage =USE_ALL180 morpheo::behavioural::Tusage_t usage 181 181 ); 182 182 public : ~Read_unit (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Read_unit_allocation.cpp
r81 r82 184 184 name = _name+"_read_queue"; 185 185 186 _component_read_queue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Read_queue (name.c_str() 186 _component_read_queue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Read_queue 187 (name.c_str() 187 188 #ifdef STATISTICS 188 ,param_statistics 189 #endif 190 ,_param->_param_read_queue); 189 ,param_statistics 190 #endif 191 ,_param->_param_read_queue 192 ,_usage); 191 193 192 194 _component->set_component (_component_read_queue->_component … … 199 201 name = _name+"_reservation_station"; 200 202 201 _component_reservation_station = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::reservation_station::Reservation_station (name.c_str() 203 _component_reservation_station = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::reservation_station::Reservation_station 204 (name.c_str() 202 205 #ifdef STATISTICS 203 ,param_statistics 204 #endif 205 ,_param->_param_reservation_station); 206 ,param_statistics 207 #endif 208 ,_param->_param_reservation_station 209 ,_usage); 206 210 207 211 _component->set_component (_component_reservation_station->_component -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (128*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" 11 14 #include "Behavioural/include/Allocation.h" 12 15 #include "Common/include/BitManipulation.h" 13 14 #define NB_ITERATION 115 #define CYCLE_MAX (128*NB_ITERATION)16 17 #define LABEL(str...) \18 { \19 msg (_("{%d} "),static_cast<uint32_t>(sc_simulation_time())); \20 msg (str); \21 msg (_("\n")); \22 } while(0)23 24 #define SC_START(cycle_offset) \25 do \26 { \27 /*cout << "SC_START (begin)" << endl;*/ \28 \29 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \30 if (cycle_offset != 0) \31 { \32 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \33 } \34 \35 if (cycle_current > CYCLE_MAX) \36 { \37 TEST_KO("Maximal cycles Reached"); \38 } \39 \40 sc_start(cycle_offset); \41 \42 /*cout << "SC_START (end )" << endl;*/ \43 } while(0)44 16 45 17 class entry_t … … 109 81 #endif 110 82 111 Execute_queue * _Execute_queue = new Execute_queue (name.c_str(), 83 Execute_queue * _Execute_queue = new Execute_queue 84 (name.c_str(), 112 85 #ifdef STATISTICS 113 86 _parameters_statistics, 114 87 #endif 115 _param); 88 _param, 89 USE_ALL); 116 90 117 91 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/include/Execute_queue.h
r81 r82 17 17 #include "Common/include/ToString.h" 18 18 #include "Common/include/Debug.h" 19 #include "Behavioural/include/Types.h"20 19 21 20 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/include/Parameters.h" 21 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/include/Types.h" 22 22 #ifdef STATISTICS 23 23 #include "Behavioural/include/Stat.h" … … 31 31 namespace morpheo { 32 32 namespace behavioural { 33 34 33 namespace core { 35 34 namespace multi_execute_loop { … … 38 37 namespace write_unit { 39 38 namespace execute_queue { 40 41 42 class execute_queue_entry_t43 {44 public : Tcontext_t _context_id ;45 public : Tcontext_t _front_end_id ;46 public : Tcontext_t _ooo_engine_id;47 public : Tpacket_t _packet_id ;48 //public : Toperation_t _operation ;49 //public : Ttype_t _type ;50 public : Tspecial_data_t _flags ;51 public : Texception_t _exception ;52 public : Tcontrol_t _no_sequence ;53 public : Tgeneral_data_t _address ;54 55 public : execute_queue_entry_t (Tcontext_t context_id ,56 Tcontext_t front_end_id ,57 Tcontext_t ooo_engine_id,58 Tpacket_t packet_id ,59 //Toperation_t operation ,60 //Ttype_t type ,61 Tspecial_data_t flags ,62 Texception_t exception ,63 Tcontrol_t no_sequence ,64 Tgeneral_data_t address )65 {66 _context_id = context_id ;67 _front_end_id = front_end_id ;68 _ooo_engine_id = ooo_engine_id;69 _packet_id = packet_id ;70 //_operation = operation ;71 //_type = type ;72 _flags = flags ;73 _exception = exception ;74 _no_sequence = no_sequence ;75 _address = address ;76 };77 };78 79 39 80 40 class Execute_queue … … 159 119 #endif 160 120 Parameters * param, 161 morpheo::behavioural::Tusage_t usage =USE_ALL121 morpheo::behavioural::Tusage_t usage 162 122 ); 163 123 public : ~Execute_queue (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (128*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" 11 14 #include "Common/include/BitManipulation.h" 12 15 #include "Behavioural/include/Allocation.h" 13 14 #define NB_ITERATION 115 #define CYCLE_MAX (128*NB_ITERATION)16 17 #define LABEL(str...) \18 { \19 msg (_("{%d} "),static_cast<uint32_t>(sc_simulation_time())); \20 msg (str); \21 msg (_("\n")); \22 } while(0)23 24 #define SC_START(cycle_offset) \25 do \26 { \27 /*cout << "SC_START (begin)" << endl;*/ \28 \29 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \30 if (cycle_offset != 0) \31 { \32 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \33 } \34 \35 if (cycle_current > CYCLE_MAX) \36 { \37 TEST_KO("Maximal cycles Reached"); \38 } \39 \40 sc_start(cycle_offset); \41 \42 /*cout << "SC_START (end )" << endl;*/ \43 } while(0)44 16 45 17 class entry_t … … 127 99 #endif 128 100 129 Write_unit * _Write_unit = new Write_unit (name.c_str(), 101 Write_unit * _Write_unit = new Write_unit 102 (name.c_str(), 130 103 #ifdef STATISTICS 131 104 _parameters_statistics, 132 105 #endif 133 _param); 106 _param, 107 USE_ALL); 134 108 135 109 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (128*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" 11 14 #include "Common/include/BitManipulation.h" 12 15 #include "Behavioural/include/Allocation.h" 13 14 #define NB_ITERATION 115 #define CYCLE_MAX (128*NB_ITERATION)16 17 #define LABEL(str...) \18 { \19 msg (_("{%d} "),static_cast<uint32_t>(sc_simulation_time())); \20 msg (str); \21 msg (_("\n")); \22 } while(0)23 24 #define SC_START(cycle_offset) \25 do \26 { \27 /*cout << "SC_START (begin)" << endl;*/ \28 \29 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \30 if (cycle_offset != 0) \31 { \32 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \33 } \34 \35 if (cycle_current > CYCLE_MAX) \36 { \37 TEST_KO("Maximal cycles Reached"); \38 } \39 \40 sc_start(cycle_offset); \41 \42 /*cout << "SC_START (end )" << endl;*/ \43 } while(0)44 16 45 17 class entry_t … … 127 99 128 100 129 Write_queue * _Write_queue = new Write_queue (name.c_str(), 101 Write_queue * _Write_queue = new Write_queue 102 (name.c_str(), 130 103 #ifdef STATISTICS 131 104 _parameters_statistics, 132 105 #endif 133 _param); 106 _param, 107 USE_ALL); 134 108 135 109 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Write_queue.h
r81 r82 17 17 #include "Common/include/ToString.h" 18 18 #include "Common/include/Debug.h" 19 #include "Behavioural/include/Types.h"20 19 21 20 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Parameters.h" 21 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Types.h" 22 22 23 #ifdef STATISTICS 23 24 #include "Behavioural/include/Stat.h" … … 37 38 namespace write_unit { 38 39 namespace write_queue { 39 40 class write_queue_entry_t41 {42 public : Tcontext_t _context_id ;43 public : Tcontext_t _front_end_id ;44 public : Tcontext_t _ooo_engine_id;45 public : Tpacket_t _packet_id ;46 //public : Toperation_t _operation ;47 public : Ttype_t _type ;48 public : Tcontrol_t _write_rd ;49 public : Tgeneral_address_t _num_reg_rd ;50 public : Tgeneral_data_t _data_rd ;51 public : Tcontrol_t _write_re ;52 public : Tspecial_address_t _num_reg_re ;53 public : Tspecial_data_t _data_re ;54 public : Texception_t _exception ;55 public : Tcontrol_t _no_sequence ;56 public : Tgeneral_data_t _address ;57 58 public : write_queue_entry_t (Tcontext_t context_id ,59 Tcontext_t front_end_id ,60 Tcontext_t ooo_engine_id,61 Tpacket_t packet_id ,62 //Toperation_t operation ,63 Ttype_t type ,64 Tcontrol_t write_rd ,65 Tgeneral_address_t num_reg_rd ,66 Tgeneral_data_t data_rd ,67 Tcontrol_t write_re ,68 Tspecial_address_t num_reg_re ,69 Tspecial_data_t data_re ,70 Texception_t exception ,71 Tcontrol_t no_sequence ,72 Tgeneral_data_t address )73 {74 _context_id = context_id ;75 _front_end_id = front_end_id ;76 _ooo_engine_id = ooo_engine_id;77 _packet_id = packet_id ;78 //_operation = operation ;79 _type = type ;80 _write_rd = write_rd ;81 _num_reg_rd = num_reg_rd ;82 _data_rd = data_rd ;83 _write_re = write_re ;84 _num_reg_re = num_reg_re ;85 _data_re = data_re ;86 _exception = exception ;87 _no_sequence = no_sequence ;88 _address = address ;89 };90 };91 92 40 93 41 class Write_queue … … 204 152 #endif 205 153 Parameters * param, 206 morpheo::behavioural::Tusage_t usage =USE_ALL154 morpheo::behavioural::Tusage_t usage 207 155 ); 208 156 public : ~Write_queue (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/include/Write_unit.h
r81 r82 145 145 #endif 146 146 Parameters * param, 147 morpheo::behavioural::Tusage_t usage =USE_ALL147 morpheo::behavioural::Tusage_t usage 148 148 ); 149 149 public : ~Write_unit (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/src/Write_unit_allocation.cpp
r81 r82 139 139 name = _name+"_write_queue"; 140 140 141 component_write_queue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::Write_queue (name.c_str() 141 component_write_queue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::write_queue::Write_queue 142 (name.c_str() 142 143 #ifdef STATISTICS 143 ,param_statistics 144 #endif 145 ,_param->_param_write_queue); 144 ,param_statistics 145 #endif 146 ,_param->_param_write_queue 147 ,_usage); 146 148 147 149 _component->set_component (component_write_queue->_component … … 156 158 name = _name+"_execute_queue"; 157 159 158 component_execute_queue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::execute_queue::Execute_queue (name.c_str() 160 component_execute_queue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::execute_queue::Execute_queue 161 (name.c_str() 159 162 #ifdef STATISTICS 160 ,param_statistics 161 #endif 162 ,_param->_param_execute_queue); 163 ,param_statistics 164 #endif 165 ,_param->_param_execute_queue 166 ,_usage); 163 167 164 168 _component->set_component (component_execute_queue->_component -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Execution_unit_to_Write_unit/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (128*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Execution_unit_to_Write_unit/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" … … 12 15 #include "Behavioural/include/Allocation.h" 13 16 #include <set> 14 15 #define NB_ITERATION 116 #define CYCLE_MAX (128*NB_ITERATION)17 18 #define LABEL(str...) \19 { \20 msg (_("{%d} "),static_cast<uint32_t>(sc_simulation_time())); \21 msg (str); \22 msg (_("\n")); \23 } while(0)24 25 #define SC_START(cycle_offset) \26 do \27 { \28 /*cout << "SC_START (begin)" << endl;*/ \29 \30 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \31 if (cycle_offset != 0) \32 { \33 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \34 } \35 \36 if (cycle_current > CYCLE_MAX) \37 { \38 TEST_KO("Maximal cycles Reached"); \39 } \40 \41 sc_start(cycle_offset); \42 \43 /*cout << "SC_START (end )" << endl;*/ \44 } while(0)45 17 46 18 … … 106 78 #endif 107 79 108 Execution_unit_to_Write_unit * _Execution_unit_to_Write_unit = new Execution_unit_to_Write_unit (name.c_str(), 80 Execution_unit_to_Write_unit * _Execution_unit_to_Write_unit = new Execution_unit_to_Write_unit 81 (name.c_str(), 109 82 #ifdef STATISTICS 110 83 _parameters_statistics, 111 84 #endif 112 _param); 85 _param, 86 USE_ALL); 113 87 114 88 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Execution_unit_to_Write_unit/include/Execution_unit_to_Write_unit.h
r81 r82 126 126 #endif 127 127 Parameters * param, 128 morpheo::behavioural::Tusage_t usage =USE_ALL128 morpheo::behavioural::Tusage_t usage 129 129 ); 130 130 public : ~Execution_unit_to_Write_unit (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Read_unit_to_Execution_unit/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (128*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Read_unit_to_Execution_unit/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" … … 13 16 #include <list> 14 17 #include <set> 15 16 #define NB_ITERATION 117 #define CYCLE_MAX (128*NB_ITERATION)18 19 #define LABEL(str...) \20 { \21 msg (_("{%d} "),static_cast<uint32_t>(sc_simulation_time())); \22 msg (str); \23 msg (_("\n")); \24 } while(0)25 26 #define SC_START(cycle_offset) \27 do \28 { \29 /*cout << "SC_START (begin)" << endl;*/ \30 \31 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \32 if (cycle_offset != 0) \33 { \34 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \35 } \36 \37 if (cycle_current > CYCLE_MAX) \38 { \39 TEST_KO("Maximal cycles Reached"); \40 } \41 \42 sc_start(cycle_offset); \43 \44 /*cout << "SC_START (end )" << endl;*/ \45 } while(0)46 47 18 48 19 class entry_t … … 113 84 #endif 114 85 115 Read_unit_to_Execution_unit * _Read_unit_to_Execution_unit = new Read_unit_to_Execution_unit (name.c_str(), 86 Read_unit_to_Execution_unit * _Read_unit_to_Execution_unit = new Read_unit_to_Execution_unit 87 (name.c_str(), 116 88 #ifdef STATISTICS 117 89 _parameters_statistics, 118 90 #endif 119 _param); 91 _param, 92 USE_ALL); 120 93 121 94 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Network/Read_unit_to_Execution_unit/include/Read_unit_to_Execution_unit.h
r81 r82 130 130 #endif 131 131 Parameters * param, 132 morpheo::behavioural::Tusage_t usage =USE_ALL132 morpheo::behavioural::Tusage_t usage 133 133 ); 134 134 public : ~Read_unit_to_Execution_unit (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 128 10 #define CYCLE_MAX (128*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" 11 12 #define NB_ITERATION 12813 #define CYCLE_MAX (128*NB_ITERATION)14 15 #define LABEL(str) \16 { \17 cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} " << str << endl; \18 } while(0)19 20 static uint32_t cycle = 0;21 22 #define SC_START(cycle_offset) \23 do \24 { \25 /*cout << "SC_START (begin)" << endl;*/ \26 \27 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \28 if (cycle_current != cycle) \29 { \30 cycle = cycle_current; \31 cout << "##########[ cycle "<< cycle << " ]" << endl; \32 } \33 \34 if (cycle_current > CYCLE_MAX) \35 { \36 TEST_KO("Maximal cycles Reached"); \37 } \38 sc_start(cycle_offset); \39 /*cout << "SC_START (end )" << endl;*/ \40 } while(0)41 14 42 15 void test (string name, … … 49 22 #endif 50 23 51 Register_unit_Glue * _Register_unit_Glue = new Register_unit_Glue (name.c_str(), 24 Register_unit_Glue * _Register_unit_Glue = new Register_unit_Glue 25 (name.c_str(), 52 26 #ifdef STATISTICS 53 27 _parameters_statistics, 54 28 #endif 55 _param); 29 _param, 30 USE_ALL); 56 31 57 32 #ifdef SYSTEMC … … 575 550 for (uint32_t iteration=0; iteration<NB_ITERATION; iteration ++) 576 551 { 577 LABEL("Iteration "+toString(iteration));552 LABEL("Iteration %d",iteration); 578 553 579 554 if (test_read == true) … … 584 559 Tcontrol_t val = (rand()%100)<=percent_transaction; 585 560 586 LABEL("GPR_READ [ "+toString(j)+"] : "+toString(val)+" - " +toString(static_cast<uint32_t>(context)));561 LABEL("GPR_READ [%d] : %d - %d",j,val,context); 587 562 588 563 in_GPR_READ_VAL [j] ->write(val); … … 623 598 Tcontrol_t val = (rand()%100)<=percent_transaction; 624 599 625 LABEL("SPR_READ [ "+toString(j)+"] : "+toString(val)+" - " +toString(static_cast<uint32_t>(context)));600 LABEL("SPR_READ [%d] : %d - %d",j,val,context); 626 601 627 602 in_SPR_READ_VAL [j] ->write(val); … … 666 641 Tcontrol_t val = (rand()%100)<=percent_transaction; 667 642 668 LABEL("GPR_WRITE [ "+toString(j)+"] : "+toString(val)+" - " +toString(static_cast<uint32_t>(context)));669 643 LABEL("GPR_WRITE [%d] : %d - %d",j,val,context); 644 670 645 in_GPR_WRITE_VAL [j] ->write(val); 671 646 in_GPR_WRITE_OOO_ENGINE_ID [j] ->write(context); … … 701 676 Tcontrol_t val = (rand()%100)<=percent_transaction; 702 677 703 LABEL("SPR_WRITE [ "+toString(j)+"] : "+toString(val)+" - " +toString(static_cast<uint32_t>(context)));678 LABEL("SPR_WRITE [%d] : %d - %d",j,val,context); 704 679 705 680 in_SPR_WRITE_VAL [j] ->write(val); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/include/Register_unit_Glue.h
r81 r82 169 169 #endif 170 170 Parameters * param, 171 morpheo::behavioural::Tusage_t usage =USE_ALL171 morpheo::behavioural::Tusage_t usage 172 172 ); 173 173 public : ~Register_unit_Glue (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/src/Register_unit_Glue_allocation.cpp
r81 r82 24 24 log_printf(FUNC,Register_unit_Glue,FUNCTION,"Begin"); 25 25 26 _component = new Component ( );26 _component = new Component (_usage); 27 27 28 28 Entity * entity = _component->set_entity (_name -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (10240*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" 11 12 #define NB_ITERATION 113 #define CYCLE_MAX (10240*NB_ITERATION)14 15 #define LABEL(str) \16 { \17 cout << "{"+toString(static_cast<uint32_t>(sc_simulation_time()))+"} " << str << endl; \18 } while(0)19 20 static uint32_t cycle = 0;21 22 #define SC_START(cycle_offset) \23 do \24 { \25 /*cout << "SC_START (begin)" << endl;*/ \26 \27 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \28 if (cycle_current != cycle) \29 { \30 cycle = cycle_current; \31 cout << "##########[ cycle "<< cycle << " ]" << endl; \32 } \33 \34 if (cycle_current > CYCLE_MAX) \35 { \36 TEST_KO("Maximal cycles Reached"); \37 } \38 sc_start(cycle_offset); \39 /*cout << "SC_START (end )" << endl;*/ \40 } while(0)41 14 42 15 void test (string name, … … 49 22 #endif 50 23 51 Register_unit * _Register_unit = new Register_unit (name.c_str(), 24 Register_unit * _Register_unit = new Register_unit 25 (name.c_str(), 52 26 #ifdef STATISTICS 53 27 _parameters_statistics, 54 28 #endif 55 _param); 29 _param, 30 USE_ALL); 56 31 57 32 #ifdef SYSTEMC … … 406 381 for (uint32_t iteration=0; iteration<NB_ITERATION; iteration ++) 407 382 { 408 LABEL("Iteration "+toString(iteration));383 LABEL("Iteration %d",iteration); 409 384 410 385 LABEL("(GPR) Write default value"); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/include/Register_unit.h
r81 r82 142 142 #endif 143 143 Parameters * param, 144 morpheo::behavioural::Tusage_t usage =USE_ALL144 morpheo::behavioural::Tusage_t usage 145 145 ); 146 146 public : ~Register_unit (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/src/Register_unit_allocation.cpp
r81 r82 29 29 log_printf(FUNC,Register_unit,FUNCTION,"Begin"); 30 30 31 _component = new Component ( );31 _component = new Component (_usage); 32 32 33 33 Entity * entity = _component->set_entity (_name … … 270 270 #endif 271 271 ,_param->_param_gpr [i] 272 ,_usage 272 273 ); 273 274 … … 290 291 #endif 291 292 ,_param->_param_gpr_status [i] 293 ,_usage 292 294 ); 293 295 … … 310 312 #endif 311 313 ,_param->_param_spr [i] 314 ,_usage 312 315 ); 313 316 … … 329 332 #endif 330 333 ,_param->_param_spr_status [i] 334 ,_usage 331 335 ); 332 336 … … 350 354 #endif 351 355 ,_param->_param_glue 356 ,_usage 352 357 ); 353 358 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/SelfTest/src/test.cpp
r81 r82 7 7 */ 8 8 9 #define NB_ITERATION 1 10 #define CYCLE_MAX (128*NB_ITERATION) 11 9 12 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/SelfTest/include/test.h" 10 13 #include "Common/include/Test.h" 11 14 #include "Behavioural/include/Allocation.h" 12 15 13 #define NB_ITERATION 114 #define CYCLE_MAX (128*NB_ITERATION)15 16 #define LABEL(str...) \17 { \18 msg (_("{%d} "),static_cast<uint32_t>(sc_simulation_time())); \19 msg (str); \20 msg (_("\n")); \21 } while(0)22 23 #define SC_START(cycle_offset) \24 do \25 { \26 /*cout << "SC_START (begin)" << endl;*/ \27 \28 uint32_t cycle_current = static_cast<uint32_t>(sc_simulation_time()); \29 if (cycle_offset != 0) \30 { \31 cout << "##########[ cycle "<< cycle_current+cycle_offset << " ]" << endl; \32 } \33 \34 if (cycle_current > CYCLE_MAX) \35 { \36 TEST_KO("Maximal cycles Reached"); \37 } \38 \39 sc_start(cycle_offset); \40 \41 /*cout << "SC_START (end )" << endl;*/ \42 } while(0)43 16 44 17 void test (string name, … … 51 24 #endif 52 25 53 Execute_loop * _Execute_loop = new Execute_loop (name.c_str(), 26 Execute_loop * _Execute_loop = new Execute_loop 27 (name.c_str(), 54 28 #ifdef STATISTICS 55 29 _parameters_statistics, 56 30 #endif 57 _param); 31 _param, 32 USE_ALL); 58 33 59 34 #ifdef SYSTEMC -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/include/Execute_loop.h
r81 r82 176 176 #endif 177 177 Parameters * param, 178 morpheo::behavioural::Tusage_t usage =USE_ALL178 morpheo::behavioural::Tusage_t usage 179 179 ); 180 180 public : ~Execute_loop (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/src/Execute_loop_allocation.cpp
r81 r82 164 164 ,param_statistics 165 165 #endif 166 ,_param->_param_read_unit[i]); 166 ,_param->_param_read_unit[i] 167 ,_usage); 167 168 168 169 _component->set_component (_component_read_unit [i]->_component … … 184 185 ,param_statistics 185 186 #endif 186 ,_param->_param_functionnal_unit[i]); 187 ,_param->_param_functionnal_unit[i] 188 ,_usage); 187 189 188 190 _component->set_component (_component_functionnal_unit [i]->_component … … 204 206 ,param_statistics 205 207 #endif 206 ,_param->_param_load_store_unit[i]); 208 ,_param->_param_load_store_unit[i] 209 ,_usage); 207 210 208 211 _component->set_component (_component_load_store_unit [i]->_component … … 224 227 ,param_statistics 225 228 #endif 226 ,_param->_param_write_unit[i]); 229 ,_param->_param_write_unit[i] 230 ,_usage); 227 231 228 232 _component->set_component (_component_write_unit [i]->_component … … 242 246 ,param_statistics 243 247 #endif 244 ,_param->_param_read_unit_to_execution_unit); 248 ,_param->_param_read_unit_to_execution_unit 249 ,_usage); 245 250 246 251 _component->set_component (_component_read_unit_to_execution_unit->_component … … 260 265 ,param_statistics 261 266 #endif 262 ,_param->_param_execution_unit_to_write_unit); 267 ,_param->_param_execution_unit_to_write_unit 268 ,_usage); 263 269 264 270 _component->set_component (_component_execution_unit_to_write_unit->_component … … 278 284 ,param_statistics 279 285 #endif 280 ,_param->_param_register_unit); 286 ,_param->_param_register_unit 287 ,_usage); 281 288 282 289 _component->set_component (_component_register_unit->_component
Note: See TracChangeset
for help on using the changeset viewer.