Changeset 77 for trunk/IPs/systemC
- Timestamp:
- Feb 5, 2008, 5:21:20 PM (17 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo
- Files:
-
- 99 added
- 78 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
r72 r77 8 8 2 2 +1 # size_special_data 9 9 16 16 +1 # nb_special_register 10 10 10 +1 # nb_operation11 4 4 +1 # nb_type -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/SelfTest/src/main.cpp
r76 r77 9 9 #include "Behavioural/Custom/include/Custom_example.h" 10 10 11 #define NB_PARAMS 1011 #define NB_PARAMS 8 12 12 13 13 void usage (int argc, char * argv[]) … … 23 23 err (_(" * size_special_data (uint32_t)\n")); 24 24 err (_(" * nb_special_register (uint32_t)\n")); 25 err (_(" * nb_operation (uint32_t)\n"));26 err (_(" * nb_type (uint32_t)\n"));27 25 exit (1); 28 26 } … … 48 46 const uint32_t size_special_data = atoi(argv[x++]); 49 47 const uint32_t nb_special_register = atoi(argv[x++]); 50 const uint32_t nb_operation = atoi(argv[x++]);51 const uint32_t nb_type = atoi(argv[x++]);52 48 53 49 execute_timing_t ** timing = new execute_timing_t * [MAX_TYPE]; … … 72 68 size_special_data , 73 69 nb_special_register , 74 nb_operation ,75 nb_type ,76 70 timing , 77 71 &(morpheo::behavioural::custom::example_get_custom_information) -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/include/Parameters.h
r76 r77 36 36 public : const uint32_t _size_special_data ; 37 37 public : const uint32_t _nb_special_register ; 38 public : const uint32_t _nb_operation ;39 public : const uint32_t _nb_type ;40 38 public : execute_timing_t ** _timing ; 41 39 public : morpheo::behavioural::custom::custom_information_t (*_get_custom_information) (uint32_t); … … 47 45 public : const uint32_t _size_general_register ; 48 46 public : const uint32_t _size_special_register ; 49 public : const uint32_t _size_operation ;50 public : const uint32_t _size_type ;51 47 52 48 public : const bool _have_port_context_id ; … … 66 62 uint32_t size_special_data , 67 63 uint32_t nb_special_register, 68 uint32_t nb_operation ,69 uint32_t nb_type ,70 64 execute_timing_t** timing , 71 65 morpheo::behavioural::custom::custom_information_t (*get_custom_information) (uint32_t)); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/src/Functionnal_unit_allocation.cpp
r76 r77 153 153 } 154 154 155 _function_execute = new function_execute_t ** [ MAX_TYPE];155 _function_execute = new function_execute_t ** [_param->_nb_type]; 156 156 157 157 // Initialisation 158 for (uint32_t i=0; i< MAX_TYPE; i++)158 for (uint32_t i=0; i<_param->_nb_type; i++) 159 159 { 160 _function_execute [i] = new function_execute_t * [ MAX_OPERATION];160 _function_execute [i] = new function_execute_t * [_param->_nb_operation]; 161 161 162 for (uint32_t j=0; j< MAX_OPERATION; j++)162 for (uint32_t j=0; j<_param->_nb_operation; j++) 163 163 _function_execute [i][j] = &(operation_unimplemented); 164 164 } -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/src/Functionnal_unit_transition.cpp
r76 r77 86 86 87 87 #ifdef DEBUG_TEST 88 if (operation >= MAX_OPERATION) 89 throw ERRORMORPHEO(FUNCTION,"Invalid operation : '"+toString(operation)+"' is higher that MAX_OPERATION"); 88 if (type >= _param->_nb_type) 89 throw ERRORMORPHEO(FUNCTION,"Invalid type : '"+toString(type)+"' is higher that _nb_type"); 90 if (operation >= _param->_nb_operation) 91 throw ERRORMORPHEO(FUNCTION,"Invalid operation : '"+toString(operation)+"' is higher that _nb_operation"); 90 92 #endif 91 93 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/src/Parameters.cpp
r76 r77 28 28 uint32_t size_special_data , 29 29 uint32_t nb_special_register, 30 uint32_t nb_operation ,31 uint32_t nb_type ,32 30 execute_timing_t** timing , 33 31 morpheo::behavioural::custom::custom_information_t (*get_custom_information) (uint32_t)) : … … 40 38 _size_special_data (size_special_data ), 41 39 _nb_special_register (nb_special_register ), 42 _nb_operation (nb_operation ),43 _nb_type (nb_type ),44 40 45 41 _size_context_id (log2(nb_context )), … … 49 45 _size_general_register (log2(_size_general_register)), 50 46 _size_special_register (log2(_size_special_register)), 51 _size_operation (log2(_size_operation )),52 _size_type (log2(_size_type )),53 47 54 48 _have_port_context_id (_size_context_id > 0), … … 82 76 _size_special_data (param._size_special_data ), 83 77 _nb_special_register (param._nb_special_register ), 84 _nb_operation (param._nb_operation ),85 _nb_type (param._nb_type ),86 78 87 79 _size_context_id (param._size_context_id ), … … 91 83 _size_general_register (param._size_general_register ), 92 84 _size_special_register (param._size_special_register ), 93 _size_operation (param._size_operation ),94 _size_type (param._size_type ),95 85 96 86 _have_port_context_id (param._have_port_context_id ), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/src/Parameters_msg_error.cpp
r76 r77 28 28 std::string msg = ""; 29 29 30 for (uint32_t i=0; i< MAX_TYPE; i++)31 for (uint32_t j=0; j< MAX_OPERATION; j++)30 for (uint32_t i=0; i<_nb_type; i++) 31 for (uint32_t j=0; j<_nb_operation; j++) 32 32 if (_timing[i][j]._delay != _timing[i][j]._latence) 33 33 msg = " - For the type '"+toString(i)+"', and the operation '"+toString(j)+"', the delay and the latence must be equal."; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Functionnal_unit/src/Parameters_print.cpp
r72 r77 35 35 xml.singleton_begin("size_special_data "); xml.attribut("value",toString(_size_special_data )); xml.singleton_end(); 36 36 xml.singleton_begin("nb_special_register"); xml.attribut("value",toString(_nb_special_register)); xml.singleton_end(); 37 xml.singleton_begin("nb_operation "); xml.attribut("value",toString(_nb_operation )); xml.singleton_end();38 xml.singleton_begin("nb_type "); xml.attribut("value",toString(_nb_type )); xml.singleton_end();39 37 xml.balise_close(); 40 38 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/configuration.cfg
r71 r77 11 11 32 32 *2 # size_general_data 12 12 32 32 *2 # nb_general_register 13 4 4 *2 # nb_operation14 4 4 *2 # nb_type -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/src/main.cpp
r71 r77 10 10 #define number_of_test 2 11 11 12 #define NB_PARAMS 1 312 #define NB_PARAMS 11 13 13 14 14 void usage (int argc, char * argv[]) … … 27 27 << " - size_general_data (uint32_t)" << endl 28 28 << " - nb_general_register (uint32_t)" << endl 29 << " - nb_operation (uint32_t)" << endl30 << " - nb_type (uint32_t)" << endl31 29 << "" << endl; 32 30 … … 66 64 const uint32_t _size_general_data = atoi(argv[x++]); 67 65 const uint32_t _nb_general_register = atoi(argv[x++]); 68 const uint32_t _nb_operation = atoi(argv[x++]);69 const uint32_t _nb_type = atoi(argv[x++]);70 66 71 67 try … … 83 79 _nb_packet , 84 80 _size_general_data , 85 _nb_general_register , 86 _nb_operation , 87 _nb_type 88 ); 81 _nb_general_register ); 89 82 90 83 cout << param->print(1); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/SelfTest/src/test2.cpp
r72 r77 57 57 128,//_nb_packet 58 58 32, //_size_general_data 59 64, //_nb_general_register 60 4, //_nb_operation 61 4 //_nb_type 59 64 //_nb_general_register 62 60 ); 63 61 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/include/Parameters.h
r71 r77 39 39 public : const uint32_t _size_general_data ; 40 40 public : const uint32_t _nb_general_register ; 41 public : const uint32_t _nb_operation ;42 public : const uint32_t _nb_type ;43 41 44 42 public : const uint32_t _size_address_store_queue ; … … 50 48 public : const uint32_t _size_packet_id ; 51 49 public : const uint32_t _size_general_register ; 52 public : const uint32_t _size_operation ;53 public : const uint32_t _size_type ;54 50 public : const uint32_t _size_dcache_context_id ; 55 51 public : const uint32_t _size_dcache_packet_id ; … … 75 71 uint32_t nb_packet , 76 72 uint32_t size_general_data , 77 uint32_t nb_general_register , 78 uint32_t nb_operation , 79 uint32_t nb_type 80 ); 73 uint32_t nb_general_register ); 81 74 82 75 public : Parameters (Parameters & param) ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/src/Parameters.cpp
r71 r77 30 30 uint32_t nb_packet , 31 31 uint32_t size_general_data , 32 uint32_t nb_general_register , 33 uint32_t nb_operation , 34 uint32_t nb_type 35 ): 32 uint32_t nb_general_register ): 36 33 _size_store_queue (size_store_queue ), 37 34 _size_load_queue (size_load_queue ), … … 45 42 _size_general_data (size_general_data ), 46 43 _nb_general_register (nb_general_register ), 47 _nb_operation (nb_operation ),48 _nb_type (nb_type ),49 44 50 45 _size_address_store_queue (log2(size_store_queue )), … … 57 52 _size_packet_id (log2(nb_packet )), 58 53 _size_general_register (log2(nb_general_register)), 59 _size_operation (log2(nb_operation )),60 _size_type (log2(nb_type )),61 54 _size_dcache_context_id (_size_context_id + _size_front_end_id + _size_ooo_engine_id), 62 55 _size_dcache_packet_id ((log2((size_store_queue>size_load_queue)?size_store_queue:size_load_queue))+1), … … 90 83 _size_general_data (param._size_general_data ), 91 84 _nb_general_register (param._nb_general_register ), 92 _nb_operation (param._nb_operation ),93 _nb_type (param._nb_type ),94 85 95 86 _size_address_store_queue (param._size_address_store_queue ), … … 102 93 _size_packet_id (param._size_packet_id ), 103 94 _size_general_register (param._size_general_register ), 104 _size_operation (param._size_operation ),105 _size_type (param._size_type ),106 95 _size_dcache_context_id (param._size_dcache_context_id ), 107 96 _size_dcache_packet_id (param._size_dcache_packet_id ), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Execute_unit/Execute_unit/Load_store_unit/src/Parameters_print.cpp
r71 r77 39 39 xml.singleton_begin("size_general_data "); xml.attribut("value",toString(_size_general_data )); xml.singleton_end(); 40 40 xml.singleton_begin("nb_general_register "); xml.attribut("value",toString(_nb_general_register )); xml.singleton_end(); 41 xml.singleton_begin("nb_operation "); xml.attribut("value",toString(_nb_operation )); xml.singleton_end();42 xml.singleton_begin("nb_type "); xml.attribut("value",toString(_nb_type )); xml.singleton_end();43 41 xml.balise_close(); 44 42 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/config0.cfg
r76 r77 9 9 16 16 *2 # nb_general_register 10 10 2 2 +1 # nb_special_register 11 40 40 +1 # nb_operation12 6 6 +1 # nb_type13 11 4 4 *2 # nb_gpr_write 14 12 2 2 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/config1.cfg
r76 r77 9 9 4 4 *2 # nb_general_register 10 10 4 4 +1 # nb_special_register 11 40 40 +1 # nb_operation12 6 6 +1 # nb_type13 11 2 4 *2 # nb_gpr_write 14 12 2 4 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/config2.cfg
r76 r77 9 9 4 4 *2 # nb_general_register 10 10 4 4 +1 # nb_special_register 11 40 40 +1 # nb_operation12 6 6 +1 # nb_type13 11 1 1 *2 # nb_gpr_write 14 12 1 1 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/config_min.cfg
r76 r77 9 9 32 32 *2 # nb_general_register 10 10 32 32 +1 # nb_special_register 11 12 12 +1 # nb_operation12 5 5 +1 # nb_type13 11 1 1 *2 # nb_gpr_write 14 12 1 1 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/src/main.cpp
r76 r77 8 8 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/SelfTest/include/test.h" 9 9 10 #define NB_PARAMS 1 510 #define NB_PARAMS 13 11 11 12 12 void usage (int argc, char * argv[]) … … 23 23 << " - nb_general_register (unsigned int)" << endl 24 24 << " - nb_special_register (unsigned int)" << endl 25 << " - nb_operation (unsigned int)" << endl26 << " - nb_type (unsigned int)" << endl27 25 << " - nb_gpr_write (unsigned int)" << endl 28 26 << " - nb_spr_write (unsigned int)" << endl … … 58 56 const uint32_t nb_general_register = atoi(argv[x++]); 59 57 const uint32_t nb_special_register = atoi(argv[x++]); 60 const uint32_t nb_operation = atoi(argv[x++]);61 const uint32_t nb_type = atoi(argv[x++]);62 58 const uint32_t nb_gpr_write = atoi(argv[x++]); 63 59 const uint32_t nb_spr_write = atoi(argv[x++]); … … 77 73 ,nb_general_register 78 74 ,nb_special_register 79 ,nb_operation80 ,nb_type81 75 ,nb_gpr_write 82 76 ,nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/include/Parameters.h
r76 r77 37 37 public : const uint32_t _nb_general_register ; 38 38 public : const uint32_t _nb_special_register ; 39 public : const uint32_t _nb_operation ;40 public : const uint32_t _nb_type ;41 39 public : const uint32_t _nb_gpr_write ; 42 40 public : const uint32_t _nb_spr_write ; … … 52 50 public : const uint32_t _size_general_register; 53 51 public : const uint32_t _size_special_register; 54 public : const uint32_t _size_operation ;55 public : const uint32_t _size_type ;56 52 57 53 public : const bool _have_port_context_id ; … … 72 68 uint32_t nb_general_register, 73 69 uint32_t nb_special_register, 74 uint32_t nb_operation ,75 uint32_t nb_type ,76 70 uint32_t nb_gpr_write , 77 71 uint32_t nb_spr_write , -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Parameters.cpp
r76 r77 27 27 uint32_t nb_general_register, 28 28 uint32_t nb_special_register, 29 uint32_t nb_operation ,30 uint32_t nb_type ,31 29 uint32_t nb_gpr_write , 32 30 uint32_t nb_spr_write , … … 42 40 _nb_general_register (nb_general_register ), 43 41 _nb_special_register (nb_special_register ), 44 _nb_operation (nb_operation ),45 _nb_type (nb_type ),46 42 _nb_gpr_write (nb_gpr_write ), 47 43 _nb_spr_write (nb_spr_write ), … … 57 53 _size_general_register (static_cast<uint32_t>(log2(_nb_general_register))), 58 54 _size_special_register (static_cast<uint32_t>(log2(_nb_special_register))), 59 _size_operation (static_cast<uint32_t>(log2(_nb_operation ))),60 _size_type (static_cast<uint32_t>(log2(_nb_type ))),61 55 62 56 _have_port_context_id (_size_context_id > 0), … … 104 98 _nb_general_register (param._nb_general_register ), 105 99 _nb_special_register (param._nb_special_register ), 106 _nb_operation (param._nb_operation ),107 _nb_type (param._nb_type ),108 100 _nb_gpr_write (param._nb_gpr_write ), 109 101 _nb_spr_write (param._nb_spr_write ), … … 119 111 _size_general_register (param._size_general_register ), 120 112 _size_special_register (param._size_special_register ), 121 _size_operation (param._size_operation ),122 _size_type (param._size_type ),123 113 124 114 _have_port_context_id (param._have_port_context_id ), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Parameters_print.cpp
r76 r77 35 35 xml.singleton_begin("nb_general_register"); xml.attribut("value",toString(_nb_general_register)); xml.singleton_end(); 36 36 xml.singleton_begin("nb_special_register"); xml.attribut("value",toString(_nb_special_register)); xml.singleton_end(); 37 xml.singleton_begin("nb_operation "); xml.attribut("value",toString(_nb_operation )); xml.singleton_end();38 xml.singleton_begin("nb_type "); xml.attribut("value",toString(_nb_type )); xml.singleton_end();39 37 xml.singleton_begin("nb_gpr_write "); xml.attribut("value",toString(_nb_gpr_write )); xml.singleton_end(); 40 38 xml.singleton_begin("nb_spr_write "); xml.attribut("value",toString(_nb_spr_write )); xml.singleton_end(); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/configuration_multi_port_bypass_memory.cfg
r76 r77 10 10 16 16 *2 # nb_general_register 11 11 8 8 +1 # nb_special_register 12 8 8 +1 # nb_operation13 4 4 +1 # nb_type14 12 1 1 *2 # nb_gpr_write 15 13 1 1 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/configuration_multi_port_bypass_write.cfg
r76 r77 10 10 16 16 *2 # nb_general_register 11 11 8 8 +1 # nb_special_register 12 8 8 +1 # nb_operation13 4 4 +1 # nb_type14 12 1 1 *2 # nb_gpr_write 15 13 1 1 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/configuration_multi_port_retire2.cfg
r76 r77 10 10 18 16 *2 # nb_general_register 11 11 8 8 +1 # nb_special_register 12 8 8 +1 # nb_operation13 4 4 +1 # nb_type14 12 1 1 *2 # nb_gpr_write 15 13 1 1 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/configuration_multi_port_retire4.cfg
r76 r77 10 10 16 16 *2 # nb_general_register 11 11 8 8 +1 # nb_special_register 12 8 8 +1 # nb_operation13 4 4 +1 # nb_type14 12 1 1 *2 # nb_gpr_write 15 13 1 1 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/configuration_multi_port_write.cfg
r76 r77 10 10 16 16 *2 # nb_general_register 11 11 8 8 +1 # nb_special_register 12 8 8 +1 # nb_operation13 4 4 +1 # nb_type14 12 2 4 *2 # nb_gpr_write 15 13 2 4 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/src/main.cpp
r76 r77 8 8 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/SelfTest/include/test.h" 9 9 10 #define NB_PARAMS 1 810 #define NB_PARAMS 16 11 11 12 12 void usage (int argc, char * argv[]) … … 24 24 << " - nb_general_register (unsigned int)" << endl 25 25 << " - nb_special_register (unsigned int)" << endl 26 << " - nb_operation (unsigned int)" << endl27 << " - nb_type (unsigned int)" << endl28 26 << " - nb_gpr_write (unsigned int)" << endl 29 27 << " - nb_spr_write (unsigned int)" << endl … … 62 60 const uint32_t nb_general_register = atoi(argv[x++]); 63 61 const uint32_t nb_special_register = atoi(argv[x++]); 64 const uint32_t nb_operation = atoi(argv[x++]);65 const uint32_t nb_type = atoi(argv[x++]);66 62 const uint32_t nb_gpr_write = atoi(argv[x++]); 67 63 const uint32_t nb_spr_write = atoi(argv[x++]); … … 84 80 ,nb_general_register 85 81 ,nb_special_register 86 ,nb_operation87 ,nb_type88 82 ,nb_gpr_write 89 83 ,nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/include/Parameters.h
r76 r77 36 36 public : const uint32_t _nb_general_register ; 37 37 public : const uint32_t _nb_special_register ; 38 public : const uint32_t _nb_operation ;39 public : const uint32_t _nb_type ;40 38 public : const uint32_t _nb_gpr_write ; 41 39 public : const uint32_t _nb_spr_write ; … … 59 57 public : const uint32_t _size_general_register; 60 58 public : const uint32_t _size_special_register; 61 public : const uint32_t _size_operation ;62 public : const uint32_t _size_type ;63 59 64 60 public : const bool _have_port_context_id ; … … 78 74 uint32_t nb_general_register, 79 75 uint32_t nb_special_register, 80 uint32_t nb_operation ,81 uint32_t nb_type ,82 76 uint32_t nb_gpr_write , 83 77 uint32_t nb_spr_write , -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/src/Parameters.cpp
r76 r77 30 30 uint32_t nb_general_register, 31 31 uint32_t nb_special_register, 32 uint32_t nb_operation ,33 uint32_t nb_type ,34 32 uint32_t nb_gpr_write , 35 33 uint32_t nb_spr_write , … … 48 46 _nb_general_register (nb_general_register ), 49 47 _nb_special_register (nb_special_register ), 50 _nb_operation (nb_operation ),51 _nb_type (nb_type ),52 48 _nb_gpr_write (nb_gpr_write ), 53 49 _nb_spr_write (nb_spr_write ), … … 63 59 _size_general_register (static_cast<uint32_t>(log2(_nb_general_register))), 64 60 _size_special_register (static_cast<uint32_t>(log2(_nb_special_register))), 65 _size_operation (static_cast<uint32_t>(log2(_nb_operation ))),66 _size_type (static_cast<uint32_t>(log2(_nb_type ))),67 61 68 62 _have_port_context_id (_size_context_id > 0), … … 89 83 _nb_general_register (param._nb_general_register ), 90 84 _nb_special_register (param._nb_special_register ), 91 _nb_operation (param._nb_operation ),92 _nb_type (param._nb_type ),93 85 _nb_gpr_write (param._nb_gpr_write ), 94 86 _nb_spr_write (param._nb_spr_write ), … … 104 96 _size_general_register (param._size_general_register ), 105 97 _size_special_register (param._size_special_register ), 106 _size_operation (param._size_operation ),107 _size_type (param._size_type ),108 98 109 99 _have_port_context_id (param._have_port_context_id ), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Reservation_station/src/Parameters_print.cpp
r76 r77 38 38 xml.singleton_begin("nb_general_register"); xml.attribut("value",toString(_nb_general_register)); xml.singleton_end(); 39 39 xml.singleton_begin("nb_special_register"); xml.attribut("value",toString(_nb_special_register)); xml.singleton_end(); 40 xml.singleton_begin("nb_operation "); xml.attribut("value",toString(_nb_operation )); xml.singleton_end();41 xml.singleton_begin("nb_type "); xml.attribut("value",toString(_nb_type )); xml.singleton_end();42 40 xml.singleton_begin("nb_gpr_write "); xml.attribut("value",toString(_nb_gpr_write )); xml.singleton_end(); 43 41 xml.singleton_begin("nb_spr_write "); xml.attribut("value",toString(_nb_spr_write )); xml.singleton_end(); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/SelfTest/configuration.cfg
r76 r77 10 10 64 64 *2 # nb_general_register 11 11 16 16 *2 # nb_special_register 12 10 10 *2 # nb_operation13 4 4 *2 # nb_type14 12 2 2 *2 # nb_gpr_write 15 13 2 2 *2 # nb_spr_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/SelfTest/src/main.cpp
r76 r77 8 8 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/SelfTest/include/test.h" 9 9 10 #define NB_PARAMS 1 910 #define NB_PARAMS 17 11 11 12 12 void usage (int argc, char * argv[]) … … 24 24 err (_(" * nb_general_register (uint32_t)\n")); 25 25 err (_(" * nb_special_register (uint32_t)\n")); 26 err (_(" * nb_operation (uint32_t)\n"));27 err (_(" * nb_type (uint32_t)\n"));28 26 err (_(" * nb_gpr_write (uint32_t)\n")); 29 27 err (_(" * nb_spr_write (uint32_t)\n")); … … 59 57 const uint32_t _nb_general_register = atoi(argv[x++]); 60 58 const uint32_t _nb_special_register = atoi(argv[x++]); 61 const uint32_t _nb_operation = atoi(argv[x++]);62 const uint32_t _nb_type = atoi(argv[x++]);63 59 const uint32_t _nb_gpr_write = atoi(argv[x++]); 64 60 const uint32_t _nb_spr_write = atoi(argv[x++]); … … 83 79 _nb_general_register , 84 80 _nb_special_register , 85 _nb_operation ,86 _nb_type ,87 81 _nb_gpr_write , 88 82 _nb_spr_write , -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/include/Parameters.h
r76 r77 36 36 public : const uint32_t _nb_general_register ; 37 37 public : const uint32_t _nb_special_register ; 38 public : const uint32_t _nb_operation ;39 public : const uint32_t _nb_type ;40 38 public : const uint32_t _nb_gpr_write ; 41 39 public : const uint32_t _nb_spr_write ; … … 54 52 public : const uint32_t _size_general_register ; 55 53 public : const uint32_t _size_special_register ; 56 public : const uint32_t _size_operation ;57 public : const uint32_t _size_type ;58 54 59 55 public : const bool _have_port_context_id ; … … 76 72 uint32_t nb_general_register , 77 73 uint32_t nb_special_register , 78 uint32_t nb_operation ,79 uint32_t nb_type ,80 74 uint32_t nb_gpr_write , 81 75 uint32_t nb_spr_write , -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Parameters.cpp
r76 r77 29 29 uint32_t nb_general_register , 30 30 uint32_t nb_special_register , 31 uint32_t nb_operation ,32 uint32_t nb_type ,33 31 uint32_t nb_gpr_write , 34 32 uint32_t nb_spr_write , … … 48 46 _nb_general_register (nb_general_register ), 49 47 _nb_special_register (nb_special_register ), 50 _nb_operation (nb_operation ),51 _nb_type (nb_type ),52 48 _nb_gpr_write (nb_gpr_write ), 53 49 _nb_spr_write (nb_spr_write ), … … 66 62 _size_general_register (log2(nb_general_register)), 67 63 _size_special_register (log2(nb_special_register)), 68 _size_operation (log2(nb_operation )),69 _size_type (log2(nb_type )),70 64 71 65 _have_port_context_id (_size_context_id >0), … … 86 80 ,_nb_general_register 87 81 ,_nb_special_register 88 ,_nb_operation89 ,_nb_type90 82 ,_nb_gpr_write 91 83 ,_nb_spr_write … … 105 97 ,nb_general_register 106 98 ,nb_special_register 107 ,nb_operation108 ,nb_type109 99 ,nb_gpr_write 110 100 ,nb_spr_write … … 134 124 _nb_general_register (param._nb_general_register ), 135 125 _nb_special_register (param._nb_special_register ), 136 _nb_operation (param._nb_operation ),137 _nb_type (param._nb_type ),138 126 _nb_gpr_write (param._nb_gpr_write ), 139 127 _nb_spr_write (param._nb_spr_write ), … … 152 140 _size_general_register (param._size_general_register ), 153 141 _size_special_register (param._size_special_register ), 154 _size_operation (param._size_operation ),155 _size_type (param._size_type ),156 142 157 143 _have_port_context_id (param._have_port_context_id ), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Parameters_print.cpp
r76 r77 37 37 xml.singleton_begin("nb_general_register "); xml.attribut("value",toString(_nb_general_register )); xml.singleton_end(); 38 38 xml.singleton_begin("nb_special_register "); xml.attribut("value",toString(_nb_special_register )); xml.singleton_end(); 39 xml.singleton_begin("nb_operation "); xml.attribut("value",toString(_nb_operation )); xml.singleton_end();40 xml.singleton_begin("nb_type "); xml.attribut("value",toString(_nb_type )); xml.singleton_end();41 39 xml.singleton_begin("nb_gpr_write "); xml.attribut("value",toString(_nb_gpr_write )); xml.singleton_end(); 42 40 xml.singleton_begin("nb_spr_write "); xml.attribut("value",toString(_nb_spr_write )); xml.singleton_end(); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/Makefile.deps
r74 r77 25 25 $(Behavioural_DIR_LIBRARY) 26 26 27 Execute_queue_DEPENDENCIES = Behavioural_library 27 #-----[ Rules ]-------------------------------------------- 28 28 29 Execute_queue_CLEAN = Behavioural_library_clean 30 31 #-----[ Rules ]-------------------------------------------- 32 #.NOTPARALLEL : Execute_queue_library Execute_queue_library_clean 33 34 Execute_queue_library : $(Execute_queue_DEPENDENCIES) 29 Execute_queue_library : 35 30 @\ 31 $(MAKE) Behavioural_library; \ 36 32 $(MAKE) --directory=$(Execute_queue_DIR) --makefile=Makefile; 37 33 38 Execute_queue_library_clean : $(Execute_queue_CLEAN)34 Execute_queue_library_clean : 39 35 @\ 36 $(MAKE) Behavioural_library_clean; \ 40 37 $(MAKE) --directory=$(Execute_queue_DIR) --makefile=Makefile clean; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/SelfTest/configuration.cfg
r73 r77 7 7 32 32 *2 # uint32_t size_general_data 8 8 2 2 *2 # uint32_t size_special_data 9 10 10 *2 # uint32_t nb_operation10 4 4 *2 # uint32_t nb_type -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/SelfTest/src/main.cpp
r73 r77 8 8 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/SelfTest/include/test.h" 9 9 10 #define NB_PARAMS 910 #define NB_PARAMS 7 11 11 12 12 void usage (int argc, char * argv[]) … … 21 21 err (_(" * size_general_data (uint32_t)\n")); 22 22 err (_(" * size_special_data (uint32_t)\n")); 23 err (_(" * nb_operation (uint32_t)\n"));24 err (_(" * nb_type (uint32_t)\n"));25 23 26 24 exit (1); … … 46 44 const uint32_t size_general_data = atoi(argv[x++]); 47 45 const uint32_t size_special_data = atoi(argv[x++]); 48 const uint32_t nb_operation = atoi(argv[x++]);49 const uint32_t nb_type = atoi(argv[x++]);50 46 51 47 try … … 58 54 nb_packet , 59 55 size_general_data , 60 size_special_data , 61 nb_operation , 62 nb_type ); 56 size_special_data ); 63 57 64 58 msg(_("%s"),param->print(1).c_str()); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/include/Parameters.h
r73 r77 33 33 public : const uint32_t _size_general_data ; 34 34 public : const uint32_t _size_special_data ; 35 public : const uint32_t _nb_operation ;36 public : const uint32_t _nb_type ;37 35 38 36 public : const uint32_t _size_context_id ; … … 40 38 public : const uint32_t _size_ooo_engine_id ; 41 39 public : const uint32_t _size_packet_id ; 42 public : const uint32_t _size_operation ;43 public : const uint32_t _size_type ;44 40 45 41 public : const bool _have_port_context_id ; … … 55 51 uint32_t nb_packet , 56 52 uint32_t size_general_data , 57 uint32_t size_special_data , 58 uint32_t nb_operation , 59 uint32_t nb_type ); 53 uint32_t size_special_data ); 60 54 public : Parameters (Parameters & param) ; 61 55 public : ~Parameters () ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/src/Parameters.cpp
r74 r77 26 26 uint32_t nb_packet , 27 27 uint32_t size_general_data , 28 uint32_t size_special_data , 29 uint32_t nb_operation , 30 uint32_t nb_type ): 28 uint32_t size_special_data ): 31 29 _size_queue (size_queue ), 32 30 _nb_context (nb_context ), … … 36 34 _size_general_data (size_general_data ), 37 35 _size_special_data (size_special_data ), 38 _nb_operation (nb_operation ),39 _nb_type (nb_type ),40 36 41 37 _size_context_id (log2(_nb_context )), … … 43 39 _size_ooo_engine_id (log2(_nb_ooo_engine )), 44 40 _size_packet_id (log2(_nb_packet )), 45 _size_operation (log2(_nb_operation )),46 _size_type (log2(_nb_type )),47 41 48 42 _have_port_context_id (_size_context_id > 0), … … 66 60 _size_general_data (param._size_general_data ), 67 61 _size_special_data (param._size_special_data ), 68 _nb_operation (param._nb_operation ),69 _nb_type (param._nb_type ),70 62 71 63 _size_context_id (param._size_context_id ), … … 73 65 _size_ooo_engine_id (param._size_ooo_engine_id ), 74 66 _size_packet_id (param._size_packet_id ), 75 _size_operation (param._size_operation ),76 _size_type (param._size_type ),77 67 78 68 _have_port_context_id (param._have_port_context_id ), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Execute_queue/src/Parameters_print.cpp
r73 r77 35 35 xml.singleton_begin("size_general_data "); xml.attribut("value",toString(_size_general_data )); xml.singleton_end(); 36 36 xml.singleton_begin("size_special_data "); xml.attribut("value",toString(_size_special_data )); xml.singleton_end(); 37 xml.singleton_begin("nb_operation "); xml.attribut("value",toString(_nb_operation )); xml.singleton_end();38 xml.singleton_begin("nb_type "); xml.attribut("value",toString(_nb_type )); xml.singleton_end();39 37 xml.balise_close(); 40 38 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Makefile.deps
r74 r77 35 35 $(Execute_queue_DIR_LIBRARY) 36 36 37 Write_unit_DEPENDENCIES = Behavioural_library \38 Write_queue_library \39 Execute_queue_library40 41 Write_unit_CLEAN = Behavioural_library_clean \42 Write_queue_library_clean \43 Execute_queue_library_clean44 45 37 #-----[ Rules ]-------------------------------------------- 46 38 47 #.NOTPARALLEL : Write_unit_library Write_unit_library_clean 48 49 Write_unit_library : $(Write_unit_DEPENDENCIES) 39 Write_unit_library : 50 40 @\ 41 $(MAKE) Behavioural_library; \ 42 $(MAKE) Write_queue_library; \ 43 $(MAKE) Execute_queue_library; \ 51 44 $(MAKE) --directory=$(Write_unit_DIR) --makefile=Makefile; 52 45 53 Write_unit_library_clean : $(Write_unit_CLEAN)46 Write_unit_library_clean : 54 47 @\ 48 $(MAKE) Behavioural_library_clean; \ 49 $(MAKE) Write_queue_library_clean; \ 50 $(MAKE) Execute_queue_library_clean; \ 55 51 $(MAKE) --directory=$(Write_unit_DIR) --makefile=Makefile clean; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/SelfTest/configuration.cfg
r74 r77 10 10 2 2 *2 # uint32_t size_special_data 11 11 16 16 *2 # uint32_t nb_special_register 12 10 10 *2 # uint32_t nb_operation13 4 4 *2 # uint32_t nb_type14 12 1 8 *2 # uint32_t nb_bypass_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/SelfTest/configuration_execute_queue_null.cfg
r74 r77 10 10 2 2 *2 # uint32_t size_special_data 11 11 16 16 *2 # uint32_t nb_special_register 12 10 10 *2 # uint32_t nb_operation13 4 4 *2 # uint32_t nb_type14 12 8 8 *2 # uint32_t nb_bypass_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/SelfTest/src/main.cpp
r74 r77 8 8 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/SelfTest/include/test.h" 9 9 10 #define NB_PARAMS 1 310 #define NB_PARAMS 11 11 11 12 12 void usage (int argc, char * argv[]) … … 24 24 err (_(" * size_special_data (uint32_t)\n")); 25 25 err (_(" * nb_special_register (uint32_t)\n")); 26 err (_(" * nb_operation (uint32_t)\n"));27 err (_(" * nb_type (uint32_t)\n"));28 26 err (_(" * nb_bypass_write (uint32_t)\n")); 29 27 … … 53 51 const uint32_t size_special_data = atoi(argv[x++]); 54 52 const uint32_t nb_special_register = atoi(argv[x++]); 55 const uint32_t nb_operation = atoi(argv[x++]);56 const uint32_t nb_type = atoi(argv[x++]);57 53 const uint32_t nb_bypass_write = atoi(argv[x++]); 58 54 … … 70 66 size_special_data , 71 67 nb_special_register, 72 nb_operation ,73 nb_type ,74 68 nb_bypass_write ); 75 69 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/SelfTest/src/test.cpp
r74 r77 50 50 public : Tpacket_t _packet_id ; 51 51 //public : Toperation_t _operation ; 52 //public : Ttype_t _type ;52 public : Ttype_t _type ; 53 53 public : Tcontrol_t _write_rd ; 54 54 public : Tgeneral_address_t _num_reg_rd ; … … 66 66 Tpacket_t packet_id , 67 67 //Toperation_t operation , 68 //Ttype_t type ,68 Ttype_t type , 69 69 Tcontrol_t write_rd , 70 70 Tgeneral_address_t num_reg_rd , … … 82 82 _packet_id = packet_id ; 83 83 //_operation = operation ; 84 //_type = type ;84 _type = type ; 85 85 _write_rd = write_rd ; 86 86 _num_reg_rd = num_reg_rd ; … … 102 102 << " * _packet_id : " << toString(x._packet_id ) << std::endl 103 103 //<< " * _operation : " << toString(x._operation ) << std::endl 104 //<< " * _type : " << toString(x._type ) << std::endl104 << " * _type : " << toString(x._type ) << std::endl 105 105 << " * _write_rd : " << toString(x._write_rd ) << std::endl 106 106 << " * _num_reg_rd : " << toString(x._num_reg_rd ) << std::endl … … 149 149 ALLOC_SC_SIGNAL ( in_WRITE_UNIT_IN_PACKET_ID ," in_WRITE_UNIT_IN_PACKET_ID" , Tpacket_t ); 150 150 //ALLOC_SC_SIGNAL ( in_WRITE_UNIT_IN_OPERATION ," in_WRITE_UNIT_IN_OPERATION" , Toperation_t ); 151 //ALLOC_SC_SIGNAL ( in_WRITE_UNIT_IN_TYPE ," in_WRITE_UNIT_IN_TYPE" , Ttype_t );151 ALLOC_SC_SIGNAL ( in_WRITE_UNIT_IN_TYPE ," in_WRITE_UNIT_IN_TYPE" , Ttype_t ); 152 152 ALLOC_SC_SIGNAL ( in_WRITE_UNIT_IN_WRITE_RD ," in_WRITE_UNIT_IN_WRITE_RD" , Tcontrol_t ); 153 153 ALLOC_SC_SIGNAL ( in_WRITE_UNIT_IN_NUM_REG_RD ," in_WRITE_UNIT_IN_NUM_REG_RD" , Tgeneral_address_t); … … 210 210 INSTANCE_SC_SIGNAL (_Write_unit, in_WRITE_UNIT_IN_PACKET_ID ); 211 211 //INSTANCE_SC_SIGNAL (_Write_unit, in_WRITE_UNIT_IN_OPERATION ); 212 //INSTANCE_SC_SIGNAL (_Write_unit, in_WRITE_UNIT_IN_TYPE );212 INSTANCE_SC_SIGNAL (_Write_unit, in_WRITE_UNIT_IN_TYPE ); 213 213 INSTANCE_SC_SIGNAL (_Write_unit, in_WRITE_UNIT_IN_WRITE_RD ); 214 214 INSTANCE_SC_SIGNAL (_Write_unit, in_WRITE_UNIT_IN_NUM_REG_RD ); … … 323 323 i, 324 324 //range<Toperation_t >(rand(),_param->_size_operation ), 325 //range<Ttype_t >(rand(),_param->_size_type ),325 range<Ttype_t >(rand(),_param->_size_type ), 326 326 range<Tcontrol_t >(rand(),1 ), 327 327 range<Tgeneral_address_t>(rand(),_param->_size_general_register), … … 355 355 in_WRITE_UNIT_IN_PACKET_ID ->write(request [nb_request_in]->_packet_id ); 356 356 //in_WRITE_UNIT_IN_OPERATION ->write(request [nb_request_in]->_operation ); 357 //in_WRITE_UNIT_IN_TYPE ->write(request [nb_request_in]->_type );357 in_WRITE_UNIT_IN_TYPE ->write(request [nb_request_in]->_type ); 358 358 in_WRITE_UNIT_IN_WRITE_RD ->write(request [nb_request_in]->_write_rd ); 359 359 in_WRITE_UNIT_IN_NUM_REG_RD ->write(request [nb_request_in]->_num_reg_rd ); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/Makefile.deps
r74 r77 19 19 20 20 #-----[ Library ]------------------------------------------ 21 21 22 Write_queue_LIBRARY = -lWrite_queue \ 22 23 $(Behavioural_LIBRARY) … … 25 26 $(Behavioural_DIR_LIBRARY) 26 27 27 Write_queue_DEPENDENCIES = Behavioural_library 28 #-----[ Rules ]-------------------------------------------- 28 29 29 Write_queue_CLEAN = Behavioural_library_clean 30 31 #-----[ Rules ]-------------------------------------------- 32 #.NOTPARALLEL : Write_queue_library Write_queue_library_clean 33 34 Write_queue_library : $(Write_queue_DEPENDENCIES) 30 Write_queue_library : 35 31 @\ 32 $(MAKE) Behavioural_library; \ 36 33 $(MAKE) --directory=$(Write_queue_DIR) --makefile=Makefile; 37 34 38 Write_queue_library_clean : $(Write_queue_CLEAN)35 Write_queue_library_clean : 39 36 @\ 37 $(MAKE) Behavioural_library_clean; \ 40 38 $(MAKE) --directory=$(Write_queue_DIR) --makefile=Makefile clean; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/SelfTest/configuration.cfg
r73 r77 9 9 2 2 *2 # uint32_t size_special_data 10 10 16 16 *2 # uint32_t nb_special_register 11 10 10 *2 # uint32_t nb_operation12 4 4 *2 # uint32_t nb_type13 11 1 8 *2 # uint32_t nb_bypass_write -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/SelfTest/src/main.cpp
r73 r77 8 8 #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/SelfTest/include/test.h" 9 9 10 #define NB_PARAMS 1 210 #define NB_PARAMS 10 11 11 12 12 void usage (int argc, char * argv[]) … … 23 23 err (_(" * size_special_data (uint32_t)\n")); 24 24 err (_(" * nb_special_register (uint32_t)\n")); 25 err (_(" * nb_operation (uint32_t)\n"));26 err (_(" * nb_type (uint32_t)\n"));27 25 err (_(" * nb_bypass_write (uint32_t)\n")); 28 26 … … 51 49 const uint32_t size_special_data = atoi(argv[x++]); 52 50 const uint32_t nb_special_register = atoi(argv[x++]); 53 const uint32_t nb_operation = atoi(argv[x++]);54 const uint32_t nb_type = atoi(argv[x++]);55 51 const uint32_t nb_bypass_write = atoi(argv[x++]); 56 52 … … 67 63 size_special_data , 68 64 nb_special_register, 69 nb_operation ,70 nb_type ,71 65 nb_bypass_write ); 72 66 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/SelfTest/src/test.cpp
r74 r77 50 50 public : Tpacket_t _packet_id ; 51 51 //public : Toperation_t _operation ; 52 //public : Ttype_t _type ;52 public : Ttype_t _type ; 53 53 public : Tcontrol_t _write_rd ; 54 54 public : Tgeneral_address_t _num_reg_rd ; … … 66 66 Tpacket_t packet_id , 67 67 //Toperation_t operation , 68 //Ttype_t type ,68 Ttype_t type , 69 69 Tcontrol_t write_rd , 70 70 Tgeneral_address_t num_reg_rd , … … 82 82 _packet_id = packet_id ; 83 83 //_operation = operation ; 84 //_type = type ;84 _type = type ; 85 85 _write_rd = write_rd ; 86 86 _num_reg_rd = num_reg_rd ; … … 102 102 << " * _packet_id : " << toString(x._packet_id ) << std::endl 103 103 //<< " * _operation : " << toString(x._operation ) << std::endl 104 //<< " * _type : " << toString(x._type ) << std::endl104 << " * _type : " << toString(x._type ) << std::endl 105 105 << " * _write_rd : " << toString(x._write_rd ) << std::endl 106 106 << " * _num_reg_rd : " << toString(x._num_reg_rd ) << std::endl … … 149 149 ALLOC_SC_SIGNAL ( in_WRITE_QUEUE_IN_PACKET_ID ," in_WRITE_QUEUE_IN_PACKET_ID" , Tpacket_t ); 150 150 //ALLOC_SC_SIGNAL ( in_WRITE_QUEUE_IN_OPERATION ," in_WRITE_QUEUE_IN_OPERATION" , Toperation_t ); 151 //ALLOC_SC_SIGNAL ( in_WRITE_QUEUE_IN_TYPE ," in_WRITE_QUEUE_IN_TYPE" , Ttype_t );151 ALLOC_SC_SIGNAL ( in_WRITE_QUEUE_IN_TYPE ," in_WRITE_QUEUE_IN_TYPE" , Ttype_t ); 152 152 ALLOC_SC_SIGNAL ( in_WRITE_QUEUE_IN_WRITE_RD ," in_WRITE_QUEUE_IN_WRITE_RD" , Tcontrol_t ); 153 153 ALLOC_SC_SIGNAL ( in_WRITE_QUEUE_IN_NUM_REG_RD ," in_WRITE_QUEUE_IN_NUM_REG_RD" , Tgeneral_address_t); … … 209 209 INSTANCE_SC_SIGNAL (_Write_queue, in_WRITE_QUEUE_IN_PACKET_ID ); 210 210 //INSTANCE_SC_SIGNAL (_Write_queue, in_WRITE_QUEUE_IN_OPERATION ); 211 //INSTANCE_SC_SIGNAL (_Write_queue, in_WRITE_QUEUE_IN_TYPE );211 INSTANCE_SC_SIGNAL (_Write_queue, in_WRITE_QUEUE_IN_TYPE ); 212 212 INSTANCE_SC_SIGNAL (_Write_queue, in_WRITE_QUEUE_IN_WRITE_RD ); 213 213 INSTANCE_SC_SIGNAL (_Write_queue, in_WRITE_QUEUE_IN_NUM_REG_RD ); … … 322 322 i, 323 323 //range<Toperation_t >(rand(),_param->_size_operation ), 324 //range<Ttype_t >(rand(),_param->_size_type ),324 range<Ttype_t >(rand(),_param->_size_type ), 325 325 range<Tcontrol_t >(rand(),1 ), 326 326 range<Tgeneral_address_t>(rand(),_param->_size_general_register), … … 354 354 in_WRITE_QUEUE_IN_PACKET_ID ->write(request [nb_request_in]->_packet_id ); 355 355 //in_WRITE_QUEUE_IN_OPERATION ->write(request [nb_request_in]->_operation ); 356 //in_WRITE_QUEUE_IN_TYPE ->write(request [nb_request_in]->_type );356 in_WRITE_QUEUE_IN_TYPE ->write(request [nb_request_in]->_type ); 357 357 in_WRITE_QUEUE_IN_WRITE_RD ->write(request [nb_request_in]->_write_rd ); 358 358 in_WRITE_QUEUE_IN_NUM_REG_RD ->write(request [nb_request_in]->_num_reg_rd ); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Parameters.h
r73 r77 35 35 public : const uint32_t _size_special_data ; 36 36 public : const uint32_t _nb_special_register ; 37 public : const uint32_t _nb_operation ;38 public : const uint32_t _nb_type ;39 37 public : const uint32_t _nb_bypass_write ; 40 38 … … 48 46 public : const uint32_t _size_general_register ; 49 47 public : const uint32_t _size_special_register ; 50 public : const uint32_t _size_operation ;51 public : const uint32_t _size_type ;52 48 53 49 public : const bool _have_port_context_id ; … … 66 62 uint32_t size_special_data , 67 63 uint32_t nb_special_register, 68 uint32_t nb_operation ,69 uint32_t nb_type ,70 64 uint32_t nb_bypass_write ); 71 65 public : Parameters (Parameters & param) ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/include/Write_queue.h
r75 r77 45 45 public : Tpacket_t _packet_id ; 46 46 //public : Toperation_t _operation ; 47 //public : Ttype_t _type ;47 public : Ttype_t _type ; 48 48 public : Tcontrol_t _write_rd ; 49 49 public : Tgeneral_address_t _num_reg_rd ; … … 61 61 Tpacket_t packet_id , 62 62 //Toperation_t operation , 63 //Ttype_t type ,63 Ttype_t type , 64 64 Tcontrol_t write_rd , 65 65 Tgeneral_address_t num_reg_rd , … … 77 77 _packet_id = packet_id ; 78 78 //_operation = operation ; 79 //_type = type ;79 _type = type ; 80 80 _write_rd = write_rd ; 81 81 _num_reg_rd = num_reg_rd ; … … 128 128 public : SC_IN (Tpacket_t ) * in_WRITE_QUEUE_IN_PACKET_ID ; 129 129 //public : SC_IN (Toperation_t ) * in_WRITE_QUEUE_IN_OPERATION ; 130 //public : SC_IN (Ttype_t ) * in_WRITE_QUEUE_IN_TYPE ;130 public : SC_IN (Ttype_t ) * in_WRITE_QUEUE_IN_TYPE ; 131 131 public : SC_IN (Tcontrol_t ) * in_WRITE_QUEUE_IN_WRITE_RD ; 132 132 public : SC_IN (Tgeneral_address_t) * in_WRITE_QUEUE_IN_NUM_REG_RD ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Parameters.cpp
r74 r77 29 29 uint32_t size_special_data , 30 30 uint32_t nb_special_register, 31 uint32_t nb_operation ,32 uint32_t nb_type ,33 31 uint32_t nb_bypass_write ): 34 32 _size_queue (size_queue ), … … 41 39 _size_special_data (size_special_data ), 42 40 _nb_special_register (nb_special_register), 43 _nb_operation (nb_operation ),44 _nb_type (nb_type ),45 41 _nb_bypass_write (nb_bypass_write ), 46 42 … … 54 50 _size_general_register (log2(_nb_general_register)), 55 51 _size_special_register (log2(_nb_special_register)), 56 _size_operation (log2(_nb_operation )),57 _size_type (log2(_nb_type )),58 52 59 53 _have_port_context_id (_size_context_id > 0), … … 79 73 _size_special_data (param._size_special_data ), 80 74 _nb_special_register (param._nb_special_register ), 81 _nb_operation (param._nb_operation ),82 _nb_type (param._nb_type ),83 75 _nb_bypass_write (param._nb_bypass_write ), 84 76 … … 92 84 _size_general_register (param._size_general_register ), 93 85 _size_special_register (param._size_special_register ), 94 _size_operation (param._size_operation ),95 _size_type (param._size_type ),96 86 97 87 _have_port_context_id (param._have_port_context_id ), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Parameters_print.cpp
r73 r77 37 37 xml.singleton_begin("size_special_data "); xml.attribut("value",toString(_size_special_data )); xml.singleton_end(); 38 38 xml.singleton_begin("nb_special_register"); xml.attribut("value",toString(_nb_special_register)); xml.singleton_end(); 39 xml.singleton_begin("nb_operation "); xml.attribut("value",toString(_nb_operation )); xml.singleton_end();40 xml.singleton_begin("nb_type "); xml.attribut("value",toString(_nb_type )); xml.singleton_end();41 39 xml.singleton_begin("nb_bypass_write "); xml.attribut("value",toString(_nb_bypass_write )); xml.singleton_end(); 42 40 xml.balise_close(); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_allocation.cpp
r76 r77 60 60 ALLOC_SIGNAL_IN ( in_WRITE_QUEUE_IN_PACKET_ID ,"packet_id" ,Tpacket_t ,_param->_size_packet_id ); 61 61 // ALLOC_SIGNAL_IN ( in_WRITE_QUEUE_IN_OPERATION ,"operation" ,Toperation_t ,_param->_size_operation ); 62 //ALLOC_SIGNAL_IN ( in_WRITE_QUEUE_IN_TYPE ,"type" ,Ttype_t ,_param->_size_type );62 ALLOC_SIGNAL_IN ( in_WRITE_QUEUE_IN_TYPE ,"type" ,Ttype_t ,_param->_size_type ); 63 63 ALLOC_SIGNAL_IN ( in_WRITE_QUEUE_IN_WRITE_RD ,"write_rd" ,Tcontrol_t ,1 ); 64 64 ALLOC_SIGNAL_IN ( in_WRITE_QUEUE_IN_NUM_REG_RD ,"num_reg_rd" ,Tgeneral_address_t,_param->_size_general_register ); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_deallocation.cpp
r73 r77 41 41 delete in_WRITE_QUEUE_IN_PACKET_ID ; 42 42 // delete in_WRITE_QUEUE_IN_OPERATION ; 43 //delete in_WRITE_QUEUE_IN_TYPE ;43 delete in_WRITE_QUEUE_IN_TYPE ; 44 44 delete in_WRITE_QUEUE_IN_WRITE_RD ; 45 45 delete in_WRITE_QUEUE_IN_NUM_REG_RD ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/Write_queue/src/Write_queue_transition.cpp
r74 r77 53 53 (_param->_have_port_packet_id )?PORT_READ(in_WRITE_QUEUE_IN_PACKET_ID ):0, 54 54 //PORT_READ(in_WRITE_QUEUE_IN_OPERATION ), 55 //PORT_READ(in_WRITE_QUEUE_IN_TYPE ),55 PORT_READ(in_WRITE_QUEUE_IN_TYPE ), 56 56 PORT_READ(in_WRITE_QUEUE_IN_WRITE_RD ), 57 57 PORT_READ(in_WRITE_QUEUE_IN_NUM_REG_RD ), … … 67 67 } 68 68 69 // Test if pop 70 if (internal_WRITE_QUEUE_OUT_VAL and PORT_READ(in_WRITE_QUEUE_OUT_ACK)) 69 // Test if pop : 70 // * transaction on write_queue_out interface 71 // * have a speculative load and all register is write in registerfile 72 if ( (internal_WRITE_QUEUE_OUT_VAL and PORT_READ(in_WRITE_QUEUE_OUT_ACK)) or 73 ((_queue->empty() == false) and 74 (_queue->front()->_type == TYPE_MEMORY) and 75 (_queue->front()->_exception == EXCEPTION_MEMORY_LOAD_SPECULATIVE) and 76 (_queue->front()->_write_rd == 0) and 77 (_queue->front()->_write_re == 0))) 71 78 { 72 79 delete _queue->front(); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/include/Parameters.h
r74 r77 38 38 public : const uint32_t _size_special_data ; 39 39 public : const uint32_t _nb_special_register ; 40 public : const uint32_t _nb_operation ;41 public : const uint32_t _nb_type ;42 40 public : const uint32_t _nb_bypass_write ; 43 41 … … 51 49 public : const uint32_t _size_general_register ; 52 50 public : const uint32_t _size_special_register ; 53 public : const uint32_t _size_operation ;54 public : const uint32_t _size_type ;55 51 56 52 public : const bool _have_component_execute_queue ; … … 74 70 uint32_t size_special_data , 75 71 uint32_t nb_special_register, 76 uint32_t nb_operation ,77 uint32_t nb_type ,78 72 uint32_t nb_bypass_write ); 79 73 public : Parameters (Parameters & param) ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/include/Write_unit.h
r76 r77 71 71 public : SC_IN (Tpacket_t ) * in_WRITE_UNIT_IN_PACKET_ID ; 72 72 //public : SC_IN (Toperation_t ) * in_WRITE_UNIT_IN_OPERATION ; 73 //public : SC_IN (Ttype_t ) * in_WRITE_UNIT_IN_TYPE ;73 public : SC_IN (Ttype_t ) * in_WRITE_UNIT_IN_TYPE ; 74 74 public : SC_IN (Tcontrol_t ) * in_WRITE_UNIT_IN_WRITE_RD ; 75 75 public : SC_IN (Tgeneral_address_t) * in_WRITE_UNIT_IN_NUM_REG_RD ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/src/Parameters.cpp
r74 r77 29 29 uint32_t size_special_data , 30 30 uint32_t nb_special_register, 31 uint32_t nb_operation ,32 uint32_t nb_type ,33 31 uint32_t nb_bypass_write ): 34 32 _size_write_queue (size_write_queue ), … … 42 40 _size_special_data (size_special_data ), 43 41 _nb_special_register (nb_special_register), 44 _nb_operation (nb_operation ),45 _nb_type (nb_type ),46 42 _nb_bypass_write (nb_bypass_write ), 47 43 … … 55 51 _size_general_register (log2(_nb_general_register)), 56 52 _size_special_register (log2(_nb_special_register)), 57 _size_operation (log2(_nb_operation )),58 _size_type (log2(_nb_type )),59 53 60 54 _have_component_execute_queue (_size_execute_queue > 0), … … 75 69 size_special_data , 76 70 nb_special_register, 77 nb_operation ,78 nb_type ,79 71 nb_bypass_write ); 80 72 … … 86 78 nb_packet , 87 79 size_general_data , 88 size_special_data , 89 nb_operation , 90 nb_type ); 80 size_special_data ); 91 81 92 82 test(); … … 108 98 _size_special_data (param._size_special_data ), 109 99 _nb_special_register (param._nb_special_register ), 110 _nb_operation (param._nb_operation ),111 _nb_type (param._nb_type ),112 100 _nb_bypass_write (param._nb_bypass_write ), 113 101 … … 121 109 _size_general_register (param._size_general_register ), 122 110 _size_special_register (param._size_special_register ), 123 _size_operation (param._size_operation ),124 _size_type (param._size_type ),125 111 126 112 _have_component_execute_queue (param._have_component_execute_queue), -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/src/Parameters_print.cpp
r74 r77 37 37 xml.singleton_begin("size_special_data "); xml.attribut("value",toString(_size_special_data )); xml.singleton_end(); 38 38 xml.singleton_begin("nb_special_register"); xml.attribut("value",toString(_nb_special_register)); xml.singleton_end(); 39 xml.singleton_begin("nb_operation "); xml.attribut("value",toString(_nb_operation )); xml.singleton_end();40 xml.singleton_begin("nb_type "); xml.attribut("value",toString(_nb_type )); xml.singleton_end();41 39 xml.singleton_begin("nb_bypass_write "); xml.attribut("value",toString(_nb_bypass_write )); xml.singleton_end(); 42 40 xml.balise_close(); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/src/Write_unit_allocation.cpp
r76 r77 66 66 ALLOC_SIGNAL_IN ( in_WRITE_UNIT_IN_PACKET_ID ,"packet_id" ,Tpacket_t ,_param->_size_packet_id ); 67 67 // ALLOC_SIGNAL_IN ( in_WRITE_UNIT_IN_OPERATION ,"operation" ,Toperation_t ,_param->_size_operation ); 68 //ALLOC_SIGNAL_IN ( in_WRITE_UNIT_IN_TYPE ,"type" ,Ttype_t ,_param->_size_type );68 ALLOC_SIGNAL_IN ( in_WRITE_UNIT_IN_TYPE ,"type" ,Ttype_t ,_param->_size_type ); 69 69 ALLOC_SIGNAL_IN ( in_WRITE_UNIT_IN_WRITE_RD ,"write_rd" ,Tcontrol_t ,1 ); 70 70 ALLOC_SIGNAL_IN ( in_WRITE_UNIT_IN_NUM_REG_RD ,"num_reg_rd" ,Tgeneral_address_t,_param->_size_general_register ); … … 199 199 _component->port_map(name, "in_WRITE_QUEUE_IN_PACKET_ID" , _name, "in_WRITE_UNIT_IN_PACKET_ID" ); 200 200 //_component->port_map(name, "in_WRITE_QUEUE_IN_OPERATION" , _name, "in_WRITE_UNIT_IN_OPERATION" ); 201 //_component->port_map(name, "in_WRITE_QUEUE_IN_TYPE" , _name, "in_WRITE_UNIT_IN_TYPE" );201 _component->port_map(name, "in_WRITE_QUEUE_IN_TYPE" , _name, "in_WRITE_UNIT_IN_TYPE" ); 202 202 _component->port_map(name, "in_WRITE_QUEUE_IN_WRITE_RD" , _name, "in_WRITE_UNIT_IN_WRITE_RD" ); 203 203 _component->port_map(name, "in_WRITE_QUEUE_IN_NUM_REG_RD" , _name, "in_WRITE_UNIT_IN_NUM_REG_RD" ); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Write_unit/Write_unit/src/Write_unit_deallocation.cpp
r74 r77 40 40 delete in_WRITE_UNIT_IN_PACKET_ID ; 41 41 // delete in_WRITE_UNIT_IN_OPERATION ; 42 //delete in_WRITE_UNIT_IN_TYPE ;42 delete in_WRITE_UNIT_IN_TYPE ; 43 43 delete in_WRITE_UNIT_IN_WRITE_RD ; 44 44 delete in_WRITE_UNIT_IN_NUM_REG_RD ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile
r23 r77 8 8 9 9 #-----[ Directory ]---------------------------------------- 10 DIR_COMPONENT = . /10 DIR_COMPONENT = . 11 11 include $(DIR_COMPONENT)/Makefile.defs 12 12 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.Component
r71 r77 1 #-----[ 1 #-----[ Directory ]---------------------------------------- 2 2 DIR_DOC = doc 3 3 DIR_LIB = lib 4 4 DIR_TEST = SelfTest 5 5 6 #-----[ 6 #-----[ Variable ]----------------------------------------- 7 7 OBJECTS = $(OBJECTS_COMMON) 8 8 9 #-----[ 9 #-----[ Rules ]-------------------------------------------- 10 10 .PRECIOUS : $(DIR_LIB)/%.a 11 11 #.NOTPARALLEL : clean help … … 33 33 component_help : 34 34 @\ 35 $(ECHO) " -----[ 35 $(ECHO) " -----[ Component ]----------------------------------";\ 36 36 $(ECHO) "";\ 37 37 $(ECHO) " * all_component : compile all c++ file and generate library";\ -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.deps
r76 r77 2 2 # $Id$ 3 3 # 4 # [ 4 # [ Description ] 5 5 # 6 6 # Makefile … … 14 14 endif 15 15 16 #-----[ Library ]------------------------------------------ 17 Behavioural_LIBRARY = -lBehavioural 16 #-----[ Directory ]---------------------------------------- 18 17 19 Behavioural_DIR _LIBRARY = -L$(DIR_MORPHEO)/Behavioural/lib18 Behavioural_DIR = $(DIR_MORPHEO)/Behavioural 20 19 21 Behavioural_DEPENDENCIES = Common_library 20 #-----[ Library ]------------------------------------------ 22 21 23 Behavioural_CLEAN = Common_library_clean 22 Behavioural_LIBRARY = -lCommon \ 23 -lBehavioural 24 24 25 Behavioural_DIR_LIBRARY = -L$(Common_DIR)/lib \ 26 -L$(Behavioural_DIR)/lib 25 27 26 #-----[ 28 #-----[ Rules ]-------------------------------------------- 27 29 28 #.NOTPARALLEL : Behavioural_library 29 #.NOTPARALLEL : Behavioural_library_clean 30 Behavioural_library : 31 @\ 32 $(MAKE) Common_library; 33 $(MAKE) --directory=$(Behavioural_DIR) --makefile=Makefile; 30 34 31 Behavioural_library : $(Behavioural_DEPENDENCIES)35 Behavioural_library_clean : 32 36 @\ 33 $(MAKE) --directory=$(DIR_MORPHEO)/Behavioural --makefile=Makefile ; 34 35 Behavioural_library_clean : $(Behavioural_CLEAN) 36 @\ 37 $(MAKE) --directory=$(DIR_MORPHEO)/Behavioural --makefile=Makefile clean; 37 $(MAKE) Common_library_clean; 38 $(MAKE) --directory=$(Behavioural_DIR) --makefile=Makefile clean; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component.sh
r76 r77 33 33 function test_usage () 34 34 { 35 if test ! -d $SOURCE_DIR; then36 echo "Source directory \"$SOURCE_DIR\" invalid";37 usage;38 fi;39 40 35 if test -d $TMP_DIR; then 41 36 echo "Temporary directory \"$TMP_DIR\" exist already"; … … 68 63 fi; 69 64 65 if test ! -d $SOURCE_DIR; then 66 echo "Source directory \"$SOURCE_DIR\" invalid"; 67 usage; 68 fi; 69 70 70 # if test -d $1/$2; then 71 71 # echo "Component in Directory \"$1/$2\" already exist"; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component_vbe/Makefile.deps
r76 r77 19 19 20 20 #-----[ Library ]------------------------------------------ 21 21 22 @COMPONENT_LIBRARY = -l@COMPONENT \ 22 23 $(Behavioural_LIBRARY) … … 29 30 @COMPONENT_library : 30 31 @\ 31 $(MAKE) --directory=$(Behavioural_DIR) --makefile=Makefile;32 $(MAKE) Behavioural_library; 32 33 $(MAKE) --directory=$(@COMPONENT_DIR) --makefile=Makefile; 33 34 34 35 @COMPONENT_library_clean : 35 36 @\ 36 $(MAKE) --directory=$(Behavioural_DIR) --makefile=Makefileclean;37 $(MAKE) Behavioural_library_clean; 37 38 $(MAKE) --directory=$(@COMPONENT_DIR) --makefile=Makefile clean; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component_vbe/include/Parameters.h
r76 r77 11 11 #include "Common/include/Debug.h" 12 12 #include "Behavioural/include/Parameters.h" 13 #include <math.h>14 13 15 14 namespace morpheo { -
trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component_vst/Makefile.deps
r76 r77 19 19 20 20 #-----[ Library ]------------------------------------------ 21 21 22 @COMPONENT_LIBRARY = -l@COMPONENT \ 22 23 $(Behavioural_LIBRARY) … … 29 30 @COMPONENT_library : 30 31 @\ 31 $(MAKE) --directory=$(Behavioural_DIR) --makefile=Makefile;32 $(MAKE) Behavioural_library; 32 33 $(MAKE) --directory=$(@COMPONENT_DIR) --makefile=Makefile; 33 34 34 35 @COMPONENT_library_clean : 35 36 @\ 36 $(MAKE) --directory=$(Behavioural_DIR) --makefile=Makefileclean;37 $(MAKE) Behavioural_library_clean; 37 38 $(MAKE) --directory=$(@COMPONENT_DIR) --makefile=Makefile clean; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/New_Component_vst/include/Parameters.h
r76 r77 11 11 #include "Common/include/Debug.h" 12 12 #include "Behavioural/include/Parameters.h" 13 #include <math.h>14 13 15 14 namespace morpheo { -
trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Constants.h
r76 r77 10 10 # define TYPE_MOVE 0x2 // 00000 - unit multiple 11 11 # define TYPE_TEST 0x3 // 00000 - unit multiple 12 # define TYPE_MUL_DIV 0x4 // 00000 - unit multiple , type optionnal12 # define TYPE_MUL_DIV 0x4 // 00000 - unit multiple 13 13 # define TYPE_EXTEND 0x5 // 00000 - unit multiple, type optionnal 14 14 # define TYPE_FIND 0x6 // 00000 - unit multiple, type optionnal 15 15 # define TYPE_SPECIAL 0x7 // 00000 - unit uniq 16 # define TYPE_CUSTOM 0x8 // 00000 - unit uniq 17 # define TYPE_BRANCH 0x9 // 00000 - unit multiple , to a special routing16 # define TYPE_CUSTOM 0x8 // 00000 - unit uniq , type optionnal 17 # define TYPE_BRANCH 0x9 // 00000 - unit multiple 18 18 # define TYPE_MEMORY 0xa // 00000 - unit uniq 19 # define MAX_TYPE 0x10 // 00000 - unit uniq 19 20 # define SIZE_TYPE 5 21 # define MAX_TYPE (1<<SIZE_TYPE) 20 22 21 23 //====================================================[ Operation ]===== … … 186 188 # define OPERATION_CUSTOM_LV_4 0x4f // 100_1111 187 189 188 # define MAX_OPERATION 0x80 190 # define SIZE_OPERATION 7 191 # define MAX_OPERATION (1<<SIZE_OPERATION) 189 192 190 193 //====================================================[ Exception ]===== -
trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Debug_component.h
r73 r77 29 29 #define DEBUG_Multi_Write_unit false 30 30 #define DEBUG_Write_unit false 31 #define DEBUG_Execute_queue true 32 #define DEBUG_Write_queue true 31 #define DEBUG_Execute_queue false 32 #define DEBUG_Write_queue false 33 #define DEBUG_Network true 34 #define DEBUG_Execution_unit_to_Write_unit true 35 #define DEBUG_Read_unit_to_Execution_unit true 33 36 #define DEBUG_Register_unit false 34 37 #define DEBUG_Register_unit_Glue false -
trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Parameters.h
r72 r77 5 5 * $Id$ 6 6 * 7 * [ 7 * [ Description ] 8 8 * 9 9 */ … … 25 25 class Parameters 26 26 { 27 // -----[ fields ]---------------------------------------------------- 27 // -----[ fields ]---------------------------------------------------- 28 public : static const uint32_t _nb_operation = MAX_OPERATION; 29 public : static const uint32_t _nb_type = MAX_TYPE; 30 public : static const uint32_t _size_operation = SIZE_OPERATION; 31 public : static const uint32_t _size_type = SIZE_TYPE; 28 32 public : static const uint32_t _size_exception = SIZE_EXCEPTION; 29 33 public : static const uint32_t _size_dcache_type = SIZE_DCACHE_TYPE; 30 34 public : static const uint32_t _size_dcache_error = SIZE_DCACHE_ERROR; 31 35 32 // -----[ 36 // -----[ methods ]--------------------------------------------------- 33 37 public : Parameters (void); 34 38 public : virtual ~Parameters (); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Types.h
r73 r77 3 3 4 4 #include "Common/include/Types.h" 5 #include "Common/include/ToString.h" 5 6 #include "Behavioural/include/Constants.h" 6 7 … … 56 57 }; 57 58 58 inline Tcontext_t get_num_thread (Tcontext_t num_context_id , 59 uint32_t size_context_id, 60 Tcontext_t num_front_end_id , 61 uint32_t size_front_end_id, 62 Tcontext_t num_ooo_engine_id , 63 uint32_t size_ooo_engine_id) 59 inline Tcontext_t get_num_thread (Tcontext_t num_context_id , uint32_t size_context_id , 60 Tcontext_t num_front_end_id , uint32_t size_front_end_id , 61 Tcontext_t num_ooo_engine_id, uint32_t size_ooo_engine_id) 64 62 { 65 63 return ((num_ooo_engine_id << (size_context_id + size_front_end_id)) | … … 67 65 (num_context_id)); 68 66 } 69 70 67 68 inline uint32_t get_nb_thread (uint32_t nb_context , 69 uint32_t nb_front_end , 70 uint32_t nb_ooo_engine ) 71 { 72 return (nb_ooo_engine * 73 nb_front_end * 74 nb_context) ; 75 } 71 76 72 77 }; // end namespace behavioural 78 79 inline std::string toString_type(const morpheo::behavioural::Ttype_t& x) 80 { 81 switch (x) 82 { 83 case TYPE_ALU : return "ALU" ; break; 84 case TYPE_SHIFT : return "SHIFT" ; break; 85 case TYPE_MOVE : return "MOVE" ; break; 86 case TYPE_TEST : return "TEST" ; break; 87 case TYPE_MUL_DIV : return "MUL_DIV"; break; 88 case TYPE_EXTEND : return "EXTEND" ; break; 89 case TYPE_FIND : return "FIND" ; break; 90 case TYPE_SPECIAL : return "SPECIAL"; break; 91 case TYPE_CUSTOM : return "CUSTOM" ; break; 92 case TYPE_BRANCH : return "BRANCH" ; break; 93 case TYPE_MEMORY : return "MEMORY" ; break; 94 default : return "" ; break; 95 } 96 }; 97 73 98 }; // end namespace morpheo 74 99 -
trunk/IPs/systemC/processor/Morpheo/Common/Makefile
r71 r77 8 8 9 9 #-----[ Directory ]---------------------------------------- 10 DIR_COMPONENT = . /10 DIR_COMPONENT = . 11 11 include $(DIR_COMPONENT)/Makefile.defs 12 12 -
trunk/IPs/systemC/processor/Morpheo/Common/Makefile.deps
r71 r77 10 10 Common = yes 11 11 12 #-----[ Directory ]---------------------------------------- 13 14 Common_DIR = $(DIR_MORPHEO)/Common 15 12 16 #-----[ Library ]------------------------------------------ 17 13 18 Common_LIBRARY = -lCommon 14 19 15 Common_DIR_LIBRARY = -L$(DIR_MORPHEO)/Common/lib 16 17 Common_DEPENDENCIES = 18 19 Common_CLEAN = 20 20 Common_DIR_LIBRARY = -L$(Common_DIR)/lib 21 21 22 22 #-----[ Rules ]-------------------------------------------- 23 23 24 #.NOTPARALLEL : Common_library Common_library_clean 24 Common_library : 25 @\ 26 $(MAKE) --directory=$(Common_DIR) --makefile=Makefile 25 27 26 Common_library : $(Common_DEPENDENCIES)28 Common_library_clean : 27 29 @\ 28 $(MAKE) --directory=$(DIR_MORPHEO)/Common --makefile=Makefile 29 30 Common_library_clean : $(Common_CLEAN) 31 @\ 32 $(MAKE) --directory=$(DIR_MORPHEO)/Common --makefile=Makefile clean 30 $(MAKE) --directory=$(Common_DIR) --makefile=Makefile clean
Note: See TracChangeset
for help on using the changeset viewer.