Changeset 88 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src
- Timestamp:
- Dec 10, 2008, 7:31:39 PM (16 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Parameters.cpp
r81 r88 20 20 #define FUNCTION "Read_unit::Parameters" 21 21 Parameters::Parameters (uint32_t size_read_queue , 22 uint32_t size_reservation_station, 23 uint32_t nb_context , 24 uint32_t nb_front_end , 25 uint32_t nb_ooo_engine , 26 uint32_t nb_packet , 27 uint32_t size_general_data , 28 uint32_t size_special_data , 29 uint32_t nb_general_register , 30 uint32_t nb_special_register , 31 uint32_t nb_gpr_write , 32 uint32_t nb_spr_write , 33 uint32_t size_store_queue , 34 uint32_t size_load_queue , 35 uint32_t nb_inst_retire , 36 uint32_t nb_bypass_write , 37 uint32_t nb_bypass_memory ): 38 _size_read_queue (size_read_queue ), 39 _size_reservation_station (size_reservation_station), 40 _nb_context (nb_context ), 41 _nb_front_end (nb_front_end ), 42 _nb_ooo_engine (nb_ooo_engine ), 43 _nb_packet (nb_packet ), 44 _size_general_data (size_general_data ), 45 _size_special_data (size_special_data ), 46 _nb_general_register (nb_general_register ), 47 _nb_special_register (nb_special_register ), 48 _nb_gpr_write (nb_gpr_write ), 49 _nb_spr_write (nb_spr_write ), 50 _size_store_queue (size_store_queue ), 51 _size_load_queue (size_load_queue ), 52 _nb_inst_retire (nb_inst_retire ), 53 _nb_bypass_write (nb_bypass_write ), 54 _nb_bypass_memory (nb_bypass_memory ), 55 56 _nb_gpr_read (2), 57 _nb_spr_read (1), 58 _size_context_id (log2(nb_context )), 59 _size_front_end_id (log2(nb_front_end )), 60 _size_ooo_engine_id (log2(nb_ooo_engine )), 61 _size_packet_id (log2(nb_packet )), 62 _size_general_register (log2(nb_general_register)), 63 _size_special_register (log2(nb_special_register)), 64 65 _have_port_context_id (_size_context_id >0), 66 _have_port_front_end_id (_size_front_end_id >0), 67 _have_port_ooo_engine_id (_size_ooo_engine_id>0), 68 _have_port_packet_id (_size_packet_id >0), 69 _have_port_load_queue_ptr (_size_load_queue >1) 22 uint32_t size_reservation_station, 23 uint32_t nb_context , 24 uint32_t nb_front_end , 25 uint32_t nb_ooo_engine , 26 uint32_t nb_packet , 27 uint32_t size_general_data , 28 uint32_t size_special_data , 29 uint32_t nb_general_register , 30 uint32_t nb_special_register , 31 uint32_t nb_gpr_write , 32 uint32_t nb_spr_write , 33 uint32_t size_store_queue , 34 uint32_t size_load_queue , 35 uint32_t nb_inst_retire , 36 uint32_t nb_bypass_write , 37 uint32_t nb_bypass_memory , 38 bool is_toplevel) 70 39 { 71 40 log_printf(FUNC,Read_unit,FUNCTION,"Begin"); 72 41 42 _size_read_queue = size_read_queue ; 43 _size_reservation_station = size_reservation_station; 44 _nb_context = nb_context ; 45 _nb_front_end = nb_front_end ; 46 _nb_ooo_engine = nb_ooo_engine ; 47 _nb_packet = nb_packet ; 48 _nb_general_register = nb_general_register ; 49 _nb_special_register = nb_special_register ; 50 _nb_gpr_write = nb_gpr_write ; 51 _nb_spr_write = nb_spr_write ; 52 _nb_inst_retire = nb_inst_retire ; 53 _nb_bypass_write = nb_bypass_write ; 54 _nb_bypass_memory = nb_bypass_memory ; 55 56 _nb_gpr_read = 2; 57 _nb_spr_read = 1; 58 73 59 _param_read_queue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Parameters 74 ( 75 76 77 78 79 ,_size_general_data80 ,_size_special_data81 82 83 84 85 ,_size_store_queue86 ,_size_load_queue87 60 (_size_read_queue 61 ,_nb_context 62 ,_nb_front_end 63 ,_nb_ooo_engine 64 ,_nb_packet 65 , size_general_data 66 , size_special_data 67 ,_nb_general_register 68 ,_nb_special_register 69 ,_nb_gpr_write 70 ,_nb_spr_write 71 , size_store_queue 72 , size_load_queue 73 ); 88 74 89 75 _param_reservation_station = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::reservation_station::Parameters 90 (size_reservation_station 91 ,nb_inst_retire 92 ,nb_context 93 ,nb_front_end 94 ,nb_ooo_engine 95 ,nb_packet 96 ,size_general_data 97 ,size_special_data 98 ,nb_general_register 99 ,nb_special_register 100 ,nb_gpr_write 101 ,nb_spr_write 102 ,nb_bypass_write 103 ,nb_bypass_memory 104 ,size_store_queue 105 ,size_load_queue 106 ); 107 76 (_size_reservation_station 77 ,_nb_inst_retire 78 ,_nb_context 79 ,_nb_front_end 80 ,_nb_ooo_engine 81 ,_nb_packet 82 , size_general_data 83 , size_special_data 84 ,_nb_general_register 85 ,_nb_special_register 86 ,_nb_gpr_write 87 ,_nb_spr_write 88 ,_nb_bypass_write 89 ,_nb_bypass_memory 90 , size_store_queue 91 , size_load_queue 92 ); 108 93 109 94 test(); 95 96 if (is_toplevel) 97 { 98 _size_context_id = log2(nb_context ); 99 _size_front_end_id = log2(nb_front_end ); 100 _size_ooo_engine_id = log2(nb_ooo_engine ); 101 _size_rob_ptr = log2(nb_packet ); 102 _size_general_register = log2(nb_general_register); 103 _size_special_register = log2(nb_special_register); 104 _size_general_data = size_general_data ; 105 _size_special_data = size_special_data ; 106 _size_store_queue_ptr = log2(size_store_queue ); 107 _size_load_queue_ptr = log2(size_load_queue ); 108 109 _have_port_context_id = _size_context_id > 0; 110 _have_port_front_end_id = _size_front_end_id > 0; 111 _have_port_ooo_engine_id = _size_ooo_engine_id > 0; 112 _have_port_rob_ptr = _size_rob_ptr > 0; 113 _have_port_load_queue_ptr = _size_load_queue_ptr > 0; 114 115 copy(); 116 } 110 117 111 118 log_printf(FUNC,Read_unit,FUNCTION,"End"); 112 119 }; 113 120 121 // #undef FUNCTION 122 // #define FUNCTION "Read_unit::Parameters (copy)" 123 // Parameters::Parameters (Parameters & param): 124 // _size_read_queue (param._size_read_queue ), 125 // _size_reservation_station (param._size_reservation_station), 126 // _nb_context (param._nb_context ), 127 // _nb_front_end (param._nb_front_end ), 128 // _nb_ooo_engine (param._nb_ooo_engine ), 129 // _nb_packet (param._nb_packet ), 130 // _size_general_data (param._size_general_data ), 131 // _size_special_data (param._size_special_data ), 132 // _nb_general_register (param._nb_general_register ), 133 // _nb_special_register (param._nb_special_register ), 134 // _nb_gpr_write (param._nb_gpr_write ), 135 // _nb_spr_write (param._nb_spr_write ), 136 // _size_store_queue (param._size_store_queue ), 137 // _size_load_queue (param._size_load_queue ), 138 // _nb_inst_retire (param._nb_inst_retire ), 139 // _nb_bypass_write (param._nb_bypass_write ), 140 // _nb_bypass_memory (param._nb_bypass_memory ), 141 142 // _nb_gpr_read (param._nb_gpr_read ), 143 // _nb_spr_read (param._nb_spr_read ), 144 // _size_context_id (param._size_context_id ), 145 // _size_front_end_id (param._size_front_end_id ), 146 // _size_ooo_engine_id (param._size_ooo_engine_id ), 147 // _size_packet_id (param._size_packet_id ), 148 // _size_general_register (param._size_general_register ), 149 // _size_special_register (param._size_special_register ), 150 151 // _have_port_context_id (param._have_port_context_id ), 152 // _have_port_front_end_id (param._have_port_front_end_id ), 153 // _have_port_ooo_engine_id (param._have_port_ooo_engine_id ), 154 // _have_port_packet_id (param._have_port_packet_id ), 155 // _have_port_load_queue_ptr (param._have_port_load_queue_ptr) 156 // { 157 // log_printf(FUNC,Read_unit,FUNCTION,"Begin"); 158 159 // _param_read_queue = param._param_read_queue ; 160 // _param_reservation_station = param._param_reservation_station; 161 162 // test(); 163 164 // log_printf(FUNC,Read_unit,FUNCTION,"End"); 165 // }; 166 114 167 #undef FUNCTION 115 #define FUNCTION "Read_unit::Parameters (copy)" 116 Parameters::Parameters (Parameters & param): 117 _size_read_queue (param._size_read_queue ), 118 _size_reservation_station (param._size_reservation_station), 119 _nb_context (param._nb_context ), 120 _nb_front_end (param._nb_front_end ), 121 _nb_ooo_engine (param._nb_ooo_engine ), 122 _nb_packet (param._nb_packet ), 123 _size_general_data (param._size_general_data ), 124 _size_special_data (param._size_special_data ), 125 _nb_general_register (param._nb_general_register ), 126 _nb_special_register (param._nb_special_register ), 127 _nb_gpr_write (param._nb_gpr_write ), 128 _nb_spr_write (param._nb_spr_write ), 129 _size_store_queue (param._size_store_queue ), 130 _size_load_queue (param._size_load_queue ), 131 _nb_inst_retire (param._nb_inst_retire ), 132 _nb_bypass_write (param._nb_bypass_write ), 133 _nb_bypass_memory (param._nb_bypass_memory ), 134 135 _nb_gpr_read (param._nb_gpr_read ), 136 _nb_spr_read (param._nb_spr_read ), 137 _size_context_id (param._size_context_id ), 138 _size_front_end_id (param._size_front_end_id ), 139 _size_ooo_engine_id (param._size_ooo_engine_id ), 140 _size_packet_id (param._size_packet_id ), 141 _size_general_register (param._size_general_register ), 142 _size_special_register (param._size_special_register ), 143 144 _have_port_context_id (param._have_port_context_id ), 145 _have_port_front_end_id (param._have_port_front_end_id ), 146 _have_port_ooo_engine_id (param._have_port_ooo_engine_id ), 147 _have_port_packet_id (param._have_port_packet_id ), 148 _have_port_load_queue_ptr (param._have_port_load_queue_ptr) 168 #define FUNCTION "Read_unit::~Parameters" 169 Parameters::~Parameters (void) 149 170 { 150 171 log_printf(FUNC,Read_unit,FUNCTION,"Begin"); 151 172 152 _param_read_queue = param._param_read_queue ; 153 _param_reservation_station = param._param_reservation_station; 154 155 test(); 173 delete _param_read_queue; 174 delete _param_reservation_station; 156 175 157 176 log_printf(FUNC,Read_unit,FUNCTION,"End"); … … 159 178 160 179 #undef FUNCTION 161 #define FUNCTION "Read_unit:: ~Parameters"162 Parameters::~Parameters ()180 #define FUNCTION "Read_unit::copy" 181 void Parameters::copy (void) 163 182 { 164 183 log_printf(FUNC,Read_unit,FUNCTION,"Begin"); 165 184 166 delete _param_read_queue;167 delete _param_reservation_station;185 COPY(_param_read_queue); 186 COPY(_param_reservation_station); 168 187 169 188 log_printf(FUNC,Read_unit,FUNCTION,"End"); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Parameters_print.cpp
r81 r88 39 39 xml.singleton_begin("nb_gpr_write "); xml.attribut("value",toString(_nb_gpr_write )); xml.singleton_end(); 40 40 xml.singleton_begin("nb_spr_write "); xml.attribut("value",toString(_nb_spr_write )); xml.singleton_end(); 41 42 41 // xml.singleton_begin("size_store_queue "); xml.attribut("value",toString(_size_store_queue )); xml.singleton_end(); 42 // xml.singleton_begin("size_load_queue "); xml.attribut("value",toString(_size_load_queue )); xml.singleton_end(); 43 43 xml.singleton_begin("nb_inst_retire "); xml.attribut("value",toString(_nb_inst_retire )); xml.singleton_end(); 44 44 xml.singleton_begin("nb_bypass_write "); xml.attribut("value",toString(_nb_bypass_write )); xml.singleton_end(); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Read_unit.cpp
r81 r88 38 38 log_printf(FUNC,Read_unit,FUNCTION,"Begin"); 39 39 40 #if DEBUG_Read_unit == true 41 log_printf(INFO,Read_unit,FUNCTION,_("<%s> Parameters"),_name.c_str()); 42 43 std::cout << *param << std::endl; 44 #endif 45 40 46 log_printf(INFO,Read_unit,FUNCTION,"Allocation"); 41 47 … … 47 53 48 54 #ifdef STATISTICS 49 if ( _usage & USE_STATISTICS)55 if (usage_is_set(_usage,USE_STATISTICS)) 50 56 { 51 57 log_printf(INFO,Read_unit,FUNCTION,"Allocation of statistics"); … … 56 62 57 63 #ifdef VHDL 58 if ( _usage & USE_VHDL)64 if (usage_is_set(_usage,USE_VHDL)) 59 65 { 60 66 // generate the vhdl … … 66 72 67 73 #ifdef SYSTEMC 68 if ( _usage & USE_SYSTEMC)74 if (usage_is_set(_usage,USE_SYSTEMC)) 69 75 { 70 76 log_printf(INFO,Read_unit,FUNCTION,"Method - transition"); … … 90 96 91 97 #ifdef STATISTICS 92 if ( _usage & USE_STATISTICS)98 if (usage_is_set(_usage,USE_STATISTICS)) 93 99 { 94 100 log_printf(INFO,Read_unit,FUNCTION,"Generate Statistics file"); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Read_unit_allocation.cpp
r82 r88 48 48 ,IN 49 49 ,SOUTH, 50 "Generalist interface"50 _("Generalist interface") 51 51 #endif 52 52 ); … … 57 57 // ~~~~~[ Interface "read_unit_in" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 58 58 { 59 ALLOC_INTERFACE("read_unit_in", IN, WEST, "Enter of new operation");59 ALLOC_INTERFACE("read_unit_in", IN, WEST, _("Enter of new operation")); 60 60 61 61 ALLOC_VALACK_IN ( in_READ_UNIT_IN_VAL,VAL); … … 64 64 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_FRONT_END_ID ,"front_end_id" ,Tcontext_t ,_param->_size_front_end_id ); 65 65 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_OOO_ENGINE_ID ,"ooo_engine_id" ,Tcontext_t ,_param->_size_ooo_engine_id); 66 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_PACKET_ID ,"packet_id" ,Tpacket_t ,_param->_size_ packet_id);66 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_PACKET_ID ,"packet_id" ,Tpacket_t ,_param->_size_rob_ptr ); 67 67 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_OPERATION ,"operation" ,Toperation_t ,_param->_size_operation ); 68 68 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_TYPE ,"type" ,Ttype_t ,_param->_size_type ); 69 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_STORE_QUEUE_PTR_WRITE,"store_queue_ptr_write",Tlsq_ptr_t , log2(_param->_size_store_queue));70 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_LOAD_QUEUE_PTR_WRITE ,"load_queue_ptr_write" ,Tlsq_ptr_t , log2(_param->_size_load_queue));69 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_STORE_QUEUE_PTR_WRITE,"store_queue_ptr_write",Tlsq_ptr_t ,_param->_size_store_queue_ptr); 70 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_LOAD_QUEUE_PTR_WRITE ,"load_queue_ptr_write" ,Tlsq_ptr_t ,_param->_size_load_queue_ptr); 71 71 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_HAS_IMMEDIAT ,"has_immediat" ,Tcontrol_t ,1); 72 72 ALLOC_SIGNAL_IN ( in_READ_UNIT_IN_IMMEDIAT ,"immediat" ,Tgeneral_data_t ,_param->_size_general_data); … … 85 85 // ~~~~~[ Interface "read_unit_out" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 86 86 { 87 ALLOC1_INTERFACE("read_unit_out", OUT, EAST, "Output of operation. All operand is valid.", _param->_nb_inst_retire);87 ALLOC1_INTERFACE("read_unit_out", OUT, EAST, _("Output of operation. All operand is valid."), _param->_nb_inst_retire); 88 88 89 89 ALLOC1_VALACK_OUT (out_READ_UNIT_OUT_VAL,VAL); … … 92 92 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_FRONT_END_ID ,"front_end_id" ,Tcontext_t ,_param->_size_front_end_id ); 93 93 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_OOO_ENGINE_ID ,"ooo_engine_id" ,Tcontext_t ,_param->_size_ooo_engine_id ); 94 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_PACKET_ID ,"packet_id" ,Tpacket_t ,_param->_size_ packet_id);94 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_PACKET_ID ,"packet_id" ,Tpacket_t ,_param->_size_rob_ptr ); 95 95 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_OPERATION ,"operation" ,Toperation_t ,_param->_size_operation ); 96 96 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_TYPE ,"type" ,Ttype_t ,_param->_size_type ); 97 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_STORE_QUEUE_PTR_WRITE,"store_queue_ptr_write",Tlsq_ptr_t , log2(_param->_size_store_queue));98 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_LOAD_QUEUE_PTR_WRITE ,"load_queue_ptr_write" ,Tlsq_ptr_t , log2(_param->_size_load_queue ));97 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_STORE_QUEUE_PTR_WRITE,"store_queue_ptr_write",Tlsq_ptr_t ,_param->_size_store_queue_ptr); 98 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_LOAD_QUEUE_PTR_WRITE ,"load_queue_ptr_write" ,Tlsq_ptr_t ,_param->_size_load_queue_ptr); 99 99 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_HAS_IMMEDIAT ,"has_immediat" ,Tcontrol_t ,1 ); 100 100 ALLOC1_SIGNAL_OUT(out_READ_UNIT_OUT_IMMEDIAT ,"immediat" ,Tgeneral_data_t ,_param->_size_general_data ); … … 110 110 // ~~~~~[ Interface "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 111 111 { 112 ALLOC1_INTERFACE("gpr_read", OUT, SOUTH, "Read port.", _param->_nb_gpr_read);112 ALLOC1_INTERFACE("gpr_read", OUT, SOUTH, _("Read port."), _param->_nb_gpr_read); 113 113 114 114 ALLOC1_VALACK_OUT (out_GPR_READ_VAL,VAL); … … 122 122 // ~~~~~[ Interface "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 123 123 { 124 ALLOC1_INTERFACE("spr_read", OUT, SOUTH, "Read port.", _param->_nb_spr_read);124 ALLOC1_INTERFACE("spr_read", OUT, SOUTH, _("Read port."), _param->_nb_spr_read); 125 125 126 126 ALLOC1_VALACK_OUT (out_SPR_READ_VAL,VAL); … … 134 134 // ~~~~~[ Interface "gpr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 135 { 136 ALLOC1_INTERFACE("gpr_write", IN , SOUTH, "Write port.", _param->_nb_gpr_write);136 ALLOC1_INTERFACE("gpr_write", IN , SOUTH, _("Write port."), _param->_nb_gpr_write); 137 137 138 138 ALLOC1_VALACK_IN ( in_GPR_WRITE_VAL,VAL); … … 144 144 // ~~~~~[ Interface "spr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 145 145 { 146 ALLOC1_INTERFACE("spr_write", IN , SOUTH, "Write port.", _param->_nb_spr_write);146 ALLOC1_INTERFACE("spr_write", IN , SOUTH, _("Write port."), _param->_nb_spr_write); 147 147 148 148 ALLOC1_VALACK_IN ( in_SPR_WRITE_VAL,VAL); … … 154 154 // ~~~~~[ Interface "bypass_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 155 155 { 156 ALLOC1_INTERFACE("bypass_write", IN , NORTH, "Output of write_queue.", _param->_nb_bypass_write);156 ALLOC1_INTERFACE("bypass_write", IN , NORTH, _("Output of write_queue."), _param->_nb_bypass_write); 157 157 158 158 ALLOC1_SIGNAL_IN ( in_BYPASS_WRITE_OOO_ENGINE_ID,"ooo_engine_id",Tcontext_t ,_param->_size_ooo_engine_id ); … … 167 167 // ~~~~~[ Interface "bypass_memory" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 168 168 { 169 ALLOC1_INTERFACE("bypass_memory", IN , NORTH, "Output of write_queue.", _param->_nb_bypass_memory);169 ALLOC1_INTERFACE("bypass_memory", IN , NORTH, _("Output of write_queue."), _param->_nb_bypass_memory); 170 170 171 171 ALLOC1_SIGNAL_IN ( in_BYPASS_MEMORY_VAL ,"val" ,Tcontrol_t ,1); … … 177 177 // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 178 178 179 // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~180 181 179 std::string name; 182 180 183 181 { 184 182 name = _name+"_read_queue"; 183 log_printf(INFO,Core,FUNCTION,_("Create : %s"),name.c_str()); 185 184 186 185 _component_read_queue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::read_queue::Read_queue … … 200 199 { 201 200 name = _name+"_reservation_station"; 202 201 log_printf(INFO,Core,FUNCTION,_("Create : %s"),name.c_str()); 202 203 203 _component_reservation_station = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::reservation_station::Reservation_station 204 204 (name.c_str() … … 219 219 { 220 220 name = _name+"_read_queue"; 221 std::cout << "Instance : " << name << std::endl; 221 log_printf(INFO,Core,FUNCTION,_("Instance : %s"),name.c_str()); 222 222 223 { 223 224 #ifdef POSITION … … 246 247 if (_param->_have_port_ooo_engine_id) 247 248 _component->port_map(name, "in_READ_QUEUE_IN_OOO_ENGINE_ID" ,dest, "in_READ_UNIT_IN_OOO_ENGINE_ID" ); 248 if (_param->_have_port_ packet_id)249 if (_param->_have_port_rob_ptr) 249 250 _component->port_map(name, "in_READ_QUEUE_IN_ROB_ID" ,dest, "in_READ_UNIT_IN_PACKET_ID" ); 250 251 _component->port_map(name, "in_READ_QUEUE_IN_OPERATION" ,dest, "in_READ_UNIT_IN_OPERATION" ); … … 283 284 if (_param->_have_port_ooo_engine_id) 284 285 _component->port_map(name,"out_READ_QUEUE_OUT_OOO_ENGINE_ID" ,dest, "in_INSERT_OOO_ENGINE_ID" ); 285 if (_param->_have_port_ packet_id)286 if (_param->_have_port_rob_ptr) 286 287 _component->port_map(name,"out_READ_QUEUE_OUT_ROB_ID" ,dest, "in_INSERT_ROB_ID" ); 287 288 _component->port_map(name,"out_READ_QUEUE_OUT_OPERATION" ,dest, "in_INSERT_OPERATION" ); … … 379 380 { 380 381 name = _name+"_reservation_station"; 381 std::cout << "Instance : " << name << std::endl;382 log_printf(INFO,Core,FUNCTION,_("Instance : %s"),name.c_str()); 382 383 { 383 384 #ifdef POSITION … … 407 408 if (_param->_have_port_ooo_engine_id) 408 409 _component->port_map(name, "in_INSERT_OOO_ENGINE_ID" ,dest,"out_READ_QUEUE_OUT_OOO_ENGINE_ID" ); 409 if (_param->_have_port_ packet_id)410 if (_param->_have_port_rob_ptr) 410 411 _component->port_map(name, "in_INSERT_ROB_ID" ,dest,"out_READ_QUEUE_OUT_ROB_ID" ); 411 412 _component->port_map(name, "in_INSERT_OPERATION" ,dest,"out_READ_QUEUE_OUT_OPERATION" ); … … 452 453 if (_param->_have_port_ooo_engine_id) 453 454 _component->port_map(name,"out_RETIRE_"+toString(i)+"_OOO_ENGINE_ID" ,dest,"out_READ_UNIT_OUT_"+toString(i)+"_OOO_ENGINE_ID" ); 454 if (_param->_have_port_ packet_id)455 if (_param->_have_port_rob_ptr) 455 456 _component->port_map(name,"out_RETIRE_"+toString(i)+"_ROB_ID" ,dest,"out_READ_UNIT_OUT_"+toString(i)+"_PACKET_ID" ); 456 457 _component->port_map(name,"out_RETIRE_"+toString(i)+"_OPERATION" ,dest,"out_READ_UNIT_OUT_"+toString(i)+"_OPERATION" ); … … 535 536 } 536 537 537 538 #ifdef POSITION 539 _component->generate_file(); 538 #if DEBUG_Read_unit == true 539 _component->test_map(); 540 #endif 541 542 #ifdef POSITION 543 if (usage_is_set(_usage,USE_POSITION)) 544 _component->generate_file(); 540 545 #endif 541 546 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Read_unit_deallocation.cpp
r81 r88 23 23 log_printf(FUNC,Read_unit,FUNCTION,"Begin"); 24 24 25 if ( _usage & USE_SYSTEMC)25 if (usage_is_set(_usage,USE_SYSTEMC)) 26 26 { 27 27 delete in_CLOCK ; … … 37 37 if (_param->_have_port_ooo_engine_id) 38 38 delete in_READ_UNIT_IN_OOO_ENGINE_ID ; 39 if (_param->_have_port_ packet_id)39 if (_param->_have_port_rob_ptr) 40 40 delete in_READ_UNIT_IN_PACKET_ID ; 41 41 delete in_READ_UNIT_IN_OPERATION ; … … 66 66 if (_param->_have_port_ooo_engine_id) 67 67 delete [] out_READ_UNIT_OUT_OOO_ENGINE_ID ; 68 if (_param->_have_port_ packet_id)68 if (_param->_have_port_rob_ptr) 69 69 delete [] out_READ_UNIT_OUT_PACKET_ID ; 70 70 delete [] out_READ_UNIT_OUT_OPERATION ; -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/src/Read_unit_end_cycle.cpp
r81 r88 25 25 26 26 #ifdef STATISTICS 27 _stat->end_cycle(); 27 if (usage_is_set(_usage,USE_STATISTICS)) 28 _stat->end_cycle(); 28 29 #endif 29 30 … … 31 32 // Evaluation before read the ouput signal 32 33 // sc_start(0); 33 _interfaces->testbench(); 34 if (usage_is_set(_usage,USE_VHDL_TESTBENCH)) 35 _interfaces->testbench(); 34 36 #endif 35 37
Note: See TracChangeset
for help on using the changeset viewer.