Changeset 88 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/SelfTest/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/SelfTest/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/SelfTest/src/main.cpp
r81 r88 14 14 err (_("<Usage> %s name_instance list_params.\n"),argv[0]); 15 15 err (_("list_params is :\n")); 16 err (_(" * nb_read_unit (uint32_t )\n")); 17 err (_(" * nb_functionnal_unit (uint32_t )\n")); 18 err (_(" * nb_load_store_unit (uint32_t )\n")); 19 err (_(" * nb_write_unit (uint32_t )\n")); 20 err (_(" * nb_context (uint32_t )\n")); 21 err (_(" * nb_front_end (uint32_t )\n")); 22 err (_(" * nb_ooo_engine (uint32_t )\n")); 23 err (_(" * nb_packet (uint32_t )\n")); 24 err (_(" * size_general_data (uint32_t )\n")); 25 err (_(" * size_special_data (uint32_t )\n")); 26 err (_(" * size_read_queue [read_unit] (uint32_t )\n")); 27 err (_(" * size_reservation_station [read_unit] (uint32_t )\n")); 28 err (_(" * nb_inst_retire [read_unit] (uint32_t )\n")); 29 err (_(" * size_store_queue [load_store_unit] (uint32_t )\n")); 30 err (_(" * size_load_queue [load_store_unit] (uint32_t )\n")); 31 err (_(" * size_speculative_access_queue [load_store_unit] (uint32_t )\n")); 32 err (_(" * nb_port_check [load_store_unit] (uint32_t )\n")); 33 err (_(" * speculative_load [load_store_unit] (Tspeculative_load_t)\n")); 34 err (_(" * nb_bypass_memory [load_store_unit] (uint32_t )\n")); 35 err (_(" * size_write_queue [write_unit] (uint32_t )\n")); 36 err (_(" * size_execute_queue [write_unit] (uint32_t )\n")); 37 err (_(" * nb_bypass_write [write_unit] (uint32_t )\n")); 38 err (_(" * nb_gpr_bank (uint32_t )\n")); 39 err (_(" * nb_gpr_port_read_by_bank (uint32_t )\n")); 40 err (_(" * nb_gpr_port_write_by_bank (uint32_t )\n")); 41 err (_(" * nb_spr_bank (uint32_t )\n")); 42 err (_(" * nb_spr_port_read_by_bank (uint32_t )\n")); 43 err (_(" * nb_spr_port_write_by_bank (uint32_t )\n")); 44 err (_(" * nb_general_register [nb_ooo_engine] (uint32_t )\n")); 45 err (_(" * nb_special_register [nb_ooo_engine] (uint32_t )\n")); 46 err (_(" * nb_inst_insert_rob [nb_ooo_engine] (uint32_t )\n")); 47 err (_(" * nb_inst_retire_rob [nb_ooo_engine] (uint32_t )\n")); 48 err (_(" * execution_unit_to_write_unit_priority (Tpriority_t )\n")); 49 err (_(" * execution_unit_to_write_unit_table_routing[nb_execute_unit][nb_write_unit] (bool )\n")); 50 err (_(" * execution_unit_to_write_unit_table_thread [nb_write_unit][nb_thread] (bool )\n")); 51 err (_(" * read_unit_to_execution_unit_priority (Tpriority_t )\n")); 52 err (_(" * read_unit_to_execution_unit_table_routing [nb_read_unit][nb_execute_unit] (bool )\n")); 53 err (_(" * read_unit_to_execution_unit_table_thread [nb_execute_unit][nb_thread] (bool )\n")); 16 err (_(" * nb_read_unit (uint32_t )\n")); 17 err (_(" * nb_functionnal_unit (uint32_t )\n")); 18 err (_(" * nb_load_store_unit (uint32_t )\n")); 19 err (_(" * nb_write_unit (uint32_t )\n")); 20 err (_(" * nb_context (uint32_t )\n")); 21 err (_(" * nb_front_end (uint32_t )\n")); 22 err (_(" * nb_ooo_engine (uint32_t )\n")); 23 err (_(" * nb_packet (uint32_t )\n")); 24 err (_(" * size_general_data (uint32_t )\n")); 25 err (_(" * size_special_data (uint32_t )\n")); 26 err (_(" * size_read_queue [nb_read_unit] (uint32_t )\n")); 27 err (_(" * size_reservation_station [nb_read_unit] (uint32_t )\n")); 28 err (_(" * nb_inst_retire [nb_read_unit] (uint32_t )\n")); 29 err (_(" * nb_inst_functionnal_unit [nb_functionnal_unit] (uint32_t )\n")); 30 err (_(" * size_store_queue [nb_load_store_unit] (uint32_t )\n")); 31 err (_(" * size_load_queue [nb_load_store_unit] (uint32_t )\n")); 32 err (_(" * size_speculative_access_queue [nb_load_store_unit] (uint32_t )\n")); 33 err (_(" * nb_port_check [nb_load_store_unit] (uint32_t )\n")); 34 err (_(" * speculative_load [nb_load_store_unit] (Tspeculative_load_t)\n")); 35 err (_(" * nb_bypass_memory [nb_load_store_unit] (uint32_t )\n")); 36 err (_(" * nb_cache_port [nb_load_store_unit] (uint32_t )\n")); 37 err (_(" * nb_inst_memory [nb_load_store_unit] (uint32_t )\n")); 38 err (_(" * size_write_queue [nb_write_unit] (uint32_t )\n")); 39 err (_(" * size_execute_queue [nb_write_unit] (uint32_t )\n")); 40 err (_(" * nb_bypass_write [nb_write_unit] (uint32_t )\n")); 41 err (_(" * nb_gpr_bank (uint32_t )\n")); 42 err (_(" * nb_gpr_port_read_by_bank (uint32_t )\n")); 43 err (_(" * nb_gpr_port_write_by_bank (uint32_t )\n")); 44 err (_(" * nb_spr_bank (uint32_t )\n")); 45 err (_(" * nb_spr_port_read_by_bank (uint32_t )\n")); 46 err (_(" * nb_spr_port_write_by_bank (uint32_t )\n")); 47 err (_(" * nb_general_register [nb_ooo_engine] (uint32_t )\n")); 48 err (_(" * nb_special_register [nb_ooo_engine] (uint32_t )\n")); 49 err (_(" * nb_inst_insert_rob [nb_ooo_engine] (uint32_t )\n")); 50 err (_(" * nb_inst_retire_rob [nb_ooo_engine] (uint32_t )\n")); 51 err (_(" * execution_unit_to_write_unit_priority (Tpriority_t )\n")); 52 err (_(" * execution_unit_to_write_unit_table_routing[nb_execute_unit][nb_execute_unit_port][nb_write_unit] (bool )\n")); 53 err (_(" * execution_unit_to_write_unit_table_thread [nb_write_unit][nb_thread] (bool )\n")); 54 err (_(" * read_unit_to_execution_unit_priority (Tpriority_t )\n")); 55 err (_(" * read_unit_to_execution_unit_table_routing [nb_read_unit][nb_execute_unit][nb_execute_unit_port] (bool )\n")); 56 err (_(" * read_unit_to_execution_unit_table_thread [nb_execute_unit][nb_thread] (bool )\n")); 57 err (_(" * is_load_store_unit [nb_execute_unit] (bool )\n")); 58 err (_(" * translate_num_execute_unit [nb_execute_unit] (uint32_t )\n")); 59 54 60 55 61 exit (1); … … 62 68 #endif 63 69 { 70 // Command 71 for (int32_t i=0; i<argc; ++i) 72 msg("%s ",argv[i]); 73 msg("\n"); 74 64 75 if (argc < 2+NB_PARAMS) 65 76 usage (argc, argv); … … 84 95 int32_t nb_params = (2+NB_PARAMS+ 85 96 3*nb_read_unit+ 86 6*nb_load_store_unit+ 97 1*nb_functionnal_unit+ 98 8*nb_load_store_unit+ 87 99 3*nb_write_unit+ 88 100 4*nb_ooo_engine+ 89 nb_execute_unit*nb_write_unit+101 // sum_execute_unit_port*nb_write_unit+ 90 102 nb_write_unit*nb_thread+ 91 nb_read_unit*nb_execute_unit+ 92 nb_execute_unit*nb_thread); 93 94 95 96 if (argc != nb_params) 97 { 98 msg(_("Need %d parameters."),nb_params); 99 usage (argc, argv); 100 } 103 // nb_read_unit*sum_execute_unit_port+ 104 nb_execute_unit*nb_thread+ 105 2*nb_execute_unit); 106 107 if (argc <= nb_params) 108 usage (argc, argv); 109 101 110 uint32_t * size_read_queue = new uint32_t [nb_read_unit]; 102 111 for (uint32_t i=0; i<nb_read_unit; i++) … … 111 120 nb_inst_retire [i] = atoi(argv[x++]); 112 121 122 uint32_t * nb_inst_functionnal_unit = new uint32_t [nb_functionnal_unit]; 123 for (uint32_t i=0; i<nb_functionnal_unit; i++) 124 nb_inst_functionnal_unit [i] = atoi(argv[x++]); 125 113 126 uint32_t * size_store_queue = new uint32_t [nb_load_store_unit]; 114 127 for (uint32_t i=0; i<nb_load_store_unit; i++) … … 134 147 for (uint32_t i=0; i<nb_load_store_unit; i++) 135 148 nb_bypass_memory [i] = atoi(argv[x++]); 149 150 uint32_t * nb_cache_port = new uint32_t [nb_load_store_unit]; 151 for (uint32_t i=0; i<nb_load_store_unit; i++) 152 nb_cache_port [i] = atoi(argv[x++]); 153 154 uint32_t * nb_inst_memory = new uint32_t [nb_load_store_unit]; 155 for (uint32_t i=0; i<nb_load_store_unit; i++) 156 nb_inst_memory [i] = atoi(argv[x++]); 157 158 159 uint32_t sum_execute_unit_port = 0; 160 for (uint32_t i=0; i<nb_load_store_unit; i++) 161 sum_execute_unit_port += nb_inst_memory[i]; 162 for (uint32_t i=0; i<nb_functionnal_unit; i++) 163 sum_execute_unit_port += nb_inst_functionnal_unit[i]; 164 165 nb_params = (2+NB_PARAMS+ 166 3*nb_read_unit+ 167 1*nb_functionnal_unit+ 168 8*nb_load_store_unit+ 169 3*nb_write_unit+ 170 4*nb_ooo_engine+ 171 sum_execute_unit_port*nb_write_unit+ 172 nb_write_unit*nb_thread+ 173 nb_read_unit*sum_execute_unit_port+ 174 nb_execute_unit*nb_thread+ 175 2*nb_execute_unit); 176 177 if (argc != nb_params) 178 { 179 msg("nb_functionnal_unit : %d\n",nb_functionnal_unit); 180 msg("nb_load_store_unit : %d\n",nb_load_store_unit ); 181 msg("sum_execute_unit_port : %d.\n",sum_execute_unit_port); 182 msg(_("Have %d parameters.\n"),argc ); 183 msg(_("Need %d parameters.\n"),nb_params); 184 usage (argc, argv); 185 } 136 186 137 187 uint32_t * size_write_queue = new uint32_t [nb_write_unit]; … … 172 222 Tpriority_t execution_unit_to_write_unit_priority = fromString<Tpriority_t>(argv[x++]); 173 223 174 bool ** execution_unit_to_write_unit_table_routing = new bool* [nb_execute_unit];224 bool *** execution_unit_to_write_unit_table_routing = new bool ** [nb_execute_unit]; 175 225 for (uint32_t i=0; i<nb_execute_unit; i++) 176 226 { 177 execution_unit_to_write_unit_table_routing [i] = new bool [nb_write_unit]; 178 for (uint32_t j=0; j<nb_write_unit; j++) 179 execution_unit_to_write_unit_table_routing [i][j] = atoi(argv[x++]); 180 } 227 uint32_t nb_execute_unit_port = (i<nb_load_store_unit)?nb_inst_memory[i]:nb_inst_functionnal_unit[i-nb_load_store_unit]; 228 229 execution_unit_to_write_unit_table_routing [i] = new bool * [nb_execute_unit_port]; 230 231 for (uint32_t j=0; j<nb_execute_unit_port; j++) 232 { 233 execution_unit_to_write_unit_table_routing [i][j] = new bool [nb_write_unit]; 234 235 for (uint32_t k=0; k<nb_write_unit; k++) 236 execution_unit_to_write_unit_table_routing [i][j][k] = atoi(argv[x++]); 237 } 238 } 239 181 240 bool ** execution_unit_to_write_unit_table_thread = new bool * [nb_write_unit]; 182 241 for (uint32_t i=0; i<nb_write_unit; i++) … … 188 247 Tpriority_t read_unit_to_execution_unit_priority = fromString<Tpriority_t>(argv[x++]); 189 248 190 bool ** read_unit_to_execution_unit_table_routing = new bool* [nb_read_unit];249 bool *** read_unit_to_execution_unit_table_routing = new bool ** [nb_read_unit]; 191 250 for (uint32_t i=0; i<nb_read_unit; i++) 192 251 { 193 read_unit_to_execution_unit_table_routing [i] = new bool [nb_execute_unit];252 read_unit_to_execution_unit_table_routing [i] = new bool * [nb_execute_unit]; 194 253 for (uint32_t j=0; j<nb_execute_unit; j++) 195 read_unit_to_execution_unit_table_routing [i][j] = atoi(argv[x++]); 196 } 254 { 255 uint32_t nb_execute_unit_port = (j<nb_load_store_unit)?nb_inst_memory[j]:nb_inst_functionnal_unit[j-nb_load_store_unit]; 256 read_unit_to_execution_unit_table_routing [i][j] = new bool [nb_execute_unit_port]; 257 258 for (uint32_t k=0; k<nb_execute_unit_port; k++) 259 read_unit_to_execution_unit_table_routing [i][j][k] = atoi(argv[x++]); 260 } 261 } 262 197 263 bool ** read_unit_to_execution_unit_table_thread = new bool * [nb_execute_unit]; 198 264 for (uint32_t i=0; i<nb_execute_unit; i++) … … 202 268 read_unit_to_execution_unit_table_thread [i][j] = atoi(argv[x++]); 203 269 } 204 execute_timing_t *** timing = new execute_timing_t ** [nb_execute_unit]; 205 270 271 bool * is_load_store_unit = new bool [nb_execute_unit]; 272 for (uint32_t i=0; i<nb_execute_unit; i++) 273 is_load_store_unit [i] = fromString<bool>(argv[x++]); 274 275 uint32_t * translate_num_execute_unit = new uint32_t [nb_execute_unit]; 276 for (uint32_t i=0; i<nb_execute_unit; i++) 277 translate_num_execute_unit [i] = fromString<uint32_t>(argv[x++]); 278 279 execute_timing_t *** timing = new execute_timing_t ** [nb_functionnal_unit]; 206 280 // alloc and reset timing array 207 for (uint32_t i=0; i< nb_ execute_unit; i++)281 for (uint32_t i=0; i< nb_functionnal_unit; i++) 208 282 { 209 283 timing [i] = new execute_timing_t * [MAX_TYPE]; … … 218 292 } 219 293 220 for (uint32_t i=0; i< nb_load_store_unit; i++)221 for (uint32_t k=0; k< MAX_OPERATION; k++)222 timing[i][TYPE_MEMORY][k]._delay = timing[i][TYPE_MEMORY][k]._latence = 1;223 294 for (uint32_t i=0; i< nb_functionnal_unit; i++) 224 295 for (uint32_t j=0; j< MAX_TYPE; j++) 225 if (j != TYPE_MEMORY) 226 for (uint32_t k=0; k< MAX_OPERATION; k++) 227 timing[i+nb_load_store_unit][j][k]._delay = timing[i+nb_load_store_unit][j][k]._latence = 1; 228 229 morpheo::behavioural::custom::custom_information_t (*get_custom_information) (uint32_t) = &(morpheo::behavioural::custom::default_get_custom_information); 296 { 297 if ( (j != TYPE_MEMORY) and 298 not ((i!=0) and ((j == TYPE_SPECIAL) or 299 (j == TYPE_CUSTOM)))) 300 for (uint32_t k=0; k< MAX_OPERATION; k++) 301 timing[i][j][k]._delay = timing[i][j][k]._latence = 1; 302 } 303 304 morpheo::behavioural::custom::custom_information_t (*get_custom_information) (void) = &(morpheo::behavioural::custom::default_get_custom_information); 230 305 231 306 try … … 247 322 size_reservation_station , 248 323 nb_inst_retire , 249 324 325 nb_inst_functionnal_unit , 250 326 timing , 251 327 get_custom_information , … … 256 332 nb_port_check , 257 333 speculative_load , 258 259 334 nb_bypass_memory , 335 nb_cache_port , 336 nb_inst_memory , 337 260 338 size_write_queue , 261 339 size_execute_queue , … … 279 357 read_unit_to_execution_unit_priority , 280 358 read_unit_to_execution_unit_table_routing , 281 read_unit_to_execution_unit_table_thread ); 282 283 msg(_("%s"),param->print(1).c_str()); 359 read_unit_to_execution_unit_table_thread , 360 361 is_load_store_unit , //[nb_execute_unit] 362 translate_num_execute_unit , //[nb_execute_unit] 363 true // is_toplevel 364 ); 284 365 285 366 test (name,param); … … 287 368 catch (morpheo::ErrorMorpheo & error) 288 369 { 289 msg (_(" <%s> : %s.\n"),name.c_str(),error.what ());370 msg (_("%s\n"),error.what ()); 290 371 exit (EXIT_FAILURE); 291 372 } 292 373 catch (...) 293 374 { 294 err (_(" <%s> : This test must generate a error.\n"),name.c_str());375 err (_("This test must generate a error.\n")); 295 376 exit (EXIT_FAILURE); 296 377 } -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/SelfTest/src/test.cpp
r82 r88 7 7 */ 8 8 9 #define NB_ITERATION 1 9 #define NB_ITERATION 128 10 10 #define CYCLE_MAX (128*NB_ITERATION) 11 11 … … 21 21 22 22 #ifdef STATISTICS 23 morpheo::behavioural::Parameters_Statistics * _parameters_statistics = new morpheo::behavioural::Parameters_Statistics (5, 50);23 morpheo::behavioural::Parameters_Statistics * _parameters_statistics = new morpheo::behavioural::Parameters_Statistics (5,CYCLE_MAX); 24 24 #endif 25 26 Tusage_t _usage = USE_ALL; 27 28 // _usage = usage_unset(_usage,USE_SYSTEMC ); 29 // _usage = usage_unset(_usage,USE_VHDL ); 30 // _usage = usage_unset(_usage,USE_VHDL_TESTBENCH ); 31 // _usage = usage_unset(_usage,USE_VHDL_TESTBENCH_ASSERT); 32 // _usage = usage_unset(_usage,USE_POSITION ); 33 // _usage = usage_unset(_usage,USE_STATISTICS ); 34 // _usage = usage_unset(_usage,USE_INFORMATION ); 25 35 26 36 Execute_loop * _Execute_loop = new Execute_loop … … 30 40 #endif 31 41 _param, 32 USE_ALL);42 _usage); 33 43 34 44 #ifdef SYSTEMC … … 75 85 ALLOC1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_NO_SEQUENCE ,"out_EXECUTE_LOOP_OUT_NO_SEQUENCE ",Tcontrol_t ,_param->_nb_write_unit); 76 86 ALLOC1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_ADDRESS ,"out_EXECUTE_LOOP_OUT_ADDRESS ",Tgeneral_data_t ,_param->_nb_write_unit); 77 ALLOC1_SC_SIGNAL(out_DCACHE_REQ_VAL ,"out_DCACHE_REQ_VAL ",Tcontrol_t ,_param->_nb_load_store_unit); 78 ALLOC1_SC_SIGNAL( in_DCACHE_REQ_ACK ," in_DCACHE_REQ_ACK ",Tcontrol_t ,_param->_nb_load_store_unit); 79 ALLOC1_SC_SIGNAL(out_DCACHE_REQ_CONTEXT_ID ,"out_DCACHE_REQ_CONTEXT_ID ",Tcontext_t ,_param->_nb_load_store_unit); 80 ALLOC1_SC_SIGNAL(out_DCACHE_REQ_PACKET_ID ,"out_DCACHE_REQ_PACKET_ID ",Tpacket_t ,_param->_nb_load_store_unit); 81 ALLOC1_SC_SIGNAL(out_DCACHE_REQ_ADDRESS ,"out_DCACHE_REQ_ADDRESS ",Tdcache_address_t ,_param->_nb_load_store_unit); 82 ALLOC1_SC_SIGNAL(out_DCACHE_REQ_TYPE ,"out_DCACHE_REQ_TYPE ",Tdcache_type_t ,_param->_nb_load_store_unit); 83 ALLOC1_SC_SIGNAL(out_DCACHE_REQ_WDATA ,"out_DCACHE_REQ_WDATA ",Tdcache_data_t ,_param->_nb_load_store_unit); 84 ALLOC1_SC_SIGNAL( in_DCACHE_RSP_VAL ," in_DCACHE_RSP_VAL ",Tcontrol_t ,_param->_nb_load_store_unit); 85 ALLOC1_SC_SIGNAL(out_DCACHE_RSP_ACK ,"out_DCACHE_RSP_ACK ",Tcontrol_t ,_param->_nb_load_store_unit); 86 ALLOC1_SC_SIGNAL( in_DCACHE_RSP_CONTEXT_ID ," in_DCACHE_RSP_CONTEXT_ID ",Tcontext_t ,_param->_nb_load_store_unit); 87 ALLOC1_SC_SIGNAL( in_DCACHE_RSP_PACKET_ID ," in_DCACHE_RSP_PACKET_ID ",Tpacket_t ,_param->_nb_load_store_unit); 88 ALLOC1_SC_SIGNAL( in_DCACHE_RSP_RDATA ," in_DCACHE_RSP_RDATA ",Tdcache_data_t ,_param->_nb_load_store_unit); 89 ALLOC1_SC_SIGNAL( in_DCACHE_RSP_ERROR ," in_DCACHE_RSP_ERROR ",Tdcache_error_t ,_param->_nb_load_store_unit); 90 ALLOC2_SC_SIGNAL( in_INSERT_ROB_VAL ," in_INSERT_ROB_VAL ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]); 91 ALLOC2_SC_SIGNAL(out_INSERT_ROB_ACK ,"out_INSERT_ROB_ACK ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]); 92 ALLOC2_SC_SIGNAL( in_INSERT_ROB_RD_USE ," in_INSERT_ROB_RD_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]); 93 ALLOC2_SC_SIGNAL( in_INSERT_ROB_RD_NUM_REG ," in_INSERT_ROB_RD_NUM_REG ",Tgeneral_address_t,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]); 94 ALLOC2_SC_SIGNAL( in_INSERT_ROB_RE_USE ," in_INSERT_ROB_RE_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]); 95 ALLOC2_SC_SIGNAL( in_INSERT_ROB_RE_NUM_REG ," in_INSERT_ROB_RE_NUM_REG ",Tspecial_address_t,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]); 96 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_VAL ," in_RETIRE_ROB_VAL ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 97 ALLOC2_SC_SIGNAL(out_RETIRE_ROB_ACK ,"out_RETIRE_ROB_ACK ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 98 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RD_OLD_USE ," in_RETIRE_ROB_RD_OLD_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 99 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RD_OLD_NUM_REG ," in_RETIRE_ROB_RD_OLD_NUM_REG ",Tgeneral_address_t,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 100 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RD_NEW_USE ," in_RETIRE_ROB_RD_NEW_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 101 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RD_NEW_NUM_REG ," in_RETIRE_ROB_RD_NEW_NUM_REG ",Tgeneral_address_t,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 102 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RE_OLD_USE ," in_RETIRE_ROB_RE_OLD_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 103 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RE_OLD_NUM_REG ," in_RETIRE_ROB_RE_OLD_NUM_REG ",Tspecial_address_t,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 104 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RE_NEW_USE ," in_RETIRE_ROB_RE_NEW_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 105 ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RE_NEW_NUM_REG ," in_RETIRE_ROB_RE_NEW_NUM_REG ",Tspecial_address_t,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]); 87 ALLOC1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_DATA ,"out_EXECUTE_LOOP_OUT_DATA ",Tgeneral_data_t ,_param->_nb_write_unit); 88 ALLOC2_SC_SIGNAL(out_DCACHE_REQ_VAL ,"out_DCACHE_REQ_VAL ",Tcontrol_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 89 ALLOC2_SC_SIGNAL( in_DCACHE_REQ_ACK ," in_DCACHE_REQ_ACK ",Tcontrol_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 90 ALLOC2_SC_SIGNAL(out_DCACHE_REQ_CONTEXT_ID ,"out_DCACHE_REQ_CONTEXT_ID ",Tcontext_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 91 ALLOC2_SC_SIGNAL(out_DCACHE_REQ_PACKET_ID ,"out_DCACHE_REQ_PACKET_ID ",Tpacket_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 92 ALLOC2_SC_SIGNAL(out_DCACHE_REQ_ADDRESS ,"out_DCACHE_REQ_ADDRESS ",Tdcache_address_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 93 ALLOC2_SC_SIGNAL(out_DCACHE_REQ_TYPE ,"out_DCACHE_REQ_TYPE ",Tdcache_type_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 94 ALLOC2_SC_SIGNAL(out_DCACHE_REQ_WDATA ,"out_DCACHE_REQ_WDATA ",Tdcache_data_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 95 ALLOC2_SC_SIGNAL( in_DCACHE_RSP_VAL ," in_DCACHE_RSP_VAL ",Tcontrol_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 96 ALLOC2_SC_SIGNAL(out_DCACHE_RSP_ACK ,"out_DCACHE_RSP_ACK ",Tcontrol_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 97 ALLOC2_SC_SIGNAL( in_DCACHE_RSP_CONTEXT_ID ," in_DCACHE_RSP_CONTEXT_ID ",Tcontext_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 98 ALLOC2_SC_SIGNAL( in_DCACHE_RSP_PACKET_ID ," in_DCACHE_RSP_PACKET_ID ",Tpacket_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 99 ALLOC2_SC_SIGNAL( in_DCACHE_RSP_RDATA ," in_DCACHE_RSP_RDATA ",Tdcache_data_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 100 ALLOC2_SC_SIGNAL( in_DCACHE_RSP_ERROR ," in_DCACHE_RSP_ERROR ",Tdcache_error_t ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 101 ALLOC2_SC_SIGNAL( in_INSERT_ROB_VAL ," in_INSERT_ROB_VAL ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 102 ALLOC2_SC_SIGNAL(out_INSERT_ROB_ACK ,"out_INSERT_ROB_ACK ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 103 ALLOC2_SC_SIGNAL( in_INSERT_ROB_RD_USE ," in_INSERT_ROB_RD_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 104 ALLOC2_SC_SIGNAL( in_INSERT_ROB_RD_NUM_REG ," in_INSERT_ROB_RD_NUM_REG ",Tgeneral_address_t,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 105 ALLOC2_SC_SIGNAL( in_INSERT_ROB_RE_USE ," in_INSERT_ROB_RE_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 106 ALLOC2_SC_SIGNAL( in_INSERT_ROB_RE_NUM_REG ," in_INSERT_ROB_RE_NUM_REG ",Tspecial_address_t,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 107 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_VAL ," in_RETIRE_ROB_VAL ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 108 // ALLOC2_SC_SIGNAL(out_RETIRE_ROB_ACK ,"out_RETIRE_ROB_ACK ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 109 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RD_OLD_USE ," in_RETIRE_ROB_RD_OLD_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 110 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RD_OLD_NUM_REG ," in_RETIRE_ROB_RD_OLD_NUM_REG ",Tgeneral_address_t,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 111 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RD_NEW_USE ," in_RETIRE_ROB_RD_NEW_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 112 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RD_NEW_NUM_REG ," in_RETIRE_ROB_RD_NEW_NUM_REG ",Tgeneral_address_t,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 113 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RE_OLD_USE ," in_RETIRE_ROB_RE_OLD_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 114 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RE_OLD_NUM_REG ," in_RETIRE_ROB_RE_OLD_NUM_REG ",Tspecial_address_t,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 115 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RE_NEW_USE ," in_RETIRE_ROB_RE_NEW_USE ",Tcontrol_t ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 116 // ALLOC2_SC_SIGNAL( in_RETIRE_ROB_RE_NEW_NUM_REG ," in_RETIRE_ROB_RE_NEW_NUM_REG ",Tspecial_address_t,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 106 117 107 118 /******************************************************** … … 122 133 if (_param->_have_port_ooo_engine_id) 123 134 INSTANCE1_SC_SIGNAL(_Execute_loop, in_EXECUTE_LOOP_IN_OOO_ENGINE_ID ,_param->_nb_read_unit); 124 if (_param->_have_port_ packet_id)135 if (_param->_have_port_rob_ptr ) 125 136 INSTANCE1_SC_SIGNAL(_Execute_loop, in_EXECUTE_LOOP_IN_PACKET_ID ,_param->_nb_read_unit); 126 137 INSTANCE1_SC_SIGNAL(_Execute_loop, in_EXECUTE_LOOP_IN_OPERATION ,_param->_nb_read_unit); … … 149 160 if (_param->_have_port_ooo_engine_id) 150 161 INSTANCE1_SC_SIGNAL(_Execute_loop,out_EXECUTE_LOOP_OUT_OOO_ENGINE_ID ,_param->_nb_write_unit); 151 if (_param->_have_port_ packet_id)162 if (_param->_have_port_rob_ptr ) 152 163 INSTANCE1_SC_SIGNAL(_Execute_loop,out_EXECUTE_LOOP_OUT_PACKET_ID ,_param->_nb_write_unit); 153 164 //INSTANCE1_SC_SIGNAL(_Execute_loop,out_EXECUTE_LOOP_OUT_OPERATION ,_param->_nb_write_unit); … … 157 168 INSTANCE1_SC_SIGNAL(_Execute_loop,out_EXECUTE_LOOP_OUT_NO_SEQUENCE ,_param->_nb_write_unit); 158 169 INSTANCE1_SC_SIGNAL(_Execute_loop,out_EXECUTE_LOOP_OUT_ADDRESS ,_param->_nb_write_unit); 159 INSTANCE1_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_VAL ,_param->_nb_load_store_unit); 160 INSTANCE1_SC_SIGNAL(_Execute_loop, in_DCACHE_REQ_ACK ,_param->_nb_load_store_unit); 170 INSTANCE1_SC_SIGNAL(_Execute_loop,out_EXECUTE_LOOP_OUT_DATA ,_param->_nb_write_unit); 171 INSTANCE2_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_VAL ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 172 INSTANCE2_SC_SIGNAL(_Execute_loop, in_DCACHE_REQ_ACK ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 161 173 if (_param->_have_port_dcache_context_id) 162 INSTANCE 1_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_CONTEXT_ID ,_param->_nb_load_store_unit);163 INSTANCE 1_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_PACKET_ID ,_param->_nb_load_store_unit);164 INSTANCE 1_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_ADDRESS ,_param->_nb_load_store_unit);165 INSTANCE 1_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_TYPE ,_param->_nb_load_store_unit);166 INSTANCE 1_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_WDATA ,_param->_nb_load_store_unit);167 INSTANCE 1_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_VAL ,_param->_nb_load_store_unit);168 INSTANCE 1_SC_SIGNAL(_Execute_loop,out_DCACHE_RSP_ACK ,_param->_nb_load_store_unit);174 INSTANCE2_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_CONTEXT_ID ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 175 INSTANCE2_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_PACKET_ID ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 176 INSTANCE2_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_ADDRESS ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 177 INSTANCE2_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_TYPE ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 178 INSTANCE2_SC_SIGNAL(_Execute_loop,out_DCACHE_REQ_WDATA ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 179 INSTANCE2_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_VAL ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 180 INSTANCE2_SC_SIGNAL(_Execute_loop,out_DCACHE_RSP_ACK ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 169 181 if (_param->_have_port_dcache_context_id) 170 INSTANCE 1_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_CONTEXT_ID ,_param->_nb_load_store_unit);171 INSTANCE 1_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_PACKET_ID ,_param->_nb_load_store_unit);172 INSTANCE 1_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_RDATA ,_param->_nb_load_store_unit);173 INSTANCE 1_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_ERROR ,_param->_nb_load_store_unit);174 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_VAL ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[ alloc_signal_it1]);175 INSTANCE2_SC_SIGNAL(_Execute_loop,out_INSERT_ROB_ACK ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[ alloc_signal_it1]);176 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_RD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[ alloc_signal_it1]);177 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_RD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[ alloc_signal_it1]);178 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_RE_USE ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[ alloc_signal_it1]);179 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_RE_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[ alloc_signal_it1]);180 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_VAL ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);181 INSTANCE2_SC_SIGNAL(_Execute_loop,out_RETIRE_ROB_ACK ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);182 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RD_OLD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);183 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RD_OLD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);184 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RD_NEW_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);185 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RD_NEW_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);186 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RE_OLD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);187 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RE_OLD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);188 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RE_NEW_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);189 INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RE_NEW_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);182 INSTANCE2_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_CONTEXT_ID ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 183 INSTANCE2_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_PACKET_ID ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 184 INSTANCE2_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_RDATA ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 185 INSTANCE2_SC_SIGNAL(_Execute_loop, in_DCACHE_RSP_ERROR ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 186 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_VAL ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 187 INSTANCE2_SC_SIGNAL(_Execute_loop,out_INSERT_ROB_ACK ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 188 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_RD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 189 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_RD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 190 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_RE_USE ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 191 INSTANCE2_SC_SIGNAL(_Execute_loop, in_INSERT_ROB_RE_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 192 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_VAL ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 193 // INSTANCE2_SC_SIGNAL(_Execute_loop,out_RETIRE_ROB_ACK ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 194 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RD_OLD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 195 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RD_OLD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 196 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RD_NEW_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 197 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RD_NEW_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 198 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RE_OLD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 199 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RE_OLD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 200 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RE_NEW_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 201 // INSTANCE2_SC_SIGNAL(_Execute_loop, in_RETIRE_ROB_RE_NEW_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 190 202 191 203 msg(_("<%s> : Start Simulation ............\n"),name.c_str()); … … 233 245 delete in_NRESET; 234 246 235 delete [] in_EXECUTE_LOOP_IN_VAL ; 236 delete [] out_EXECUTE_LOOP_IN_ACK ; 237 delete [] in_EXECUTE_LOOP_IN_CONTEXT_ID ; 238 delete [] in_EXECUTE_LOOP_IN_FRONT_END_ID ; 239 delete [] in_EXECUTE_LOOP_IN_OOO_ENGINE_ID ; 240 delete [] in_EXECUTE_LOOP_IN_PACKET_ID ; 241 delete [] in_EXECUTE_LOOP_IN_OPERATION ; 242 delete [] in_EXECUTE_LOOP_IN_TYPE ; 243 delete [] in_EXECUTE_LOOP_IN_STORE_QUEUE_PTR_WRITE; 244 delete [] in_EXECUTE_LOOP_IN_LOAD_QUEUE_PTR_WRITE ; 245 delete [] in_EXECUTE_LOOP_IN_HAS_IMMEDIAT ; 246 delete [] in_EXECUTE_LOOP_IN_IMMEDIAT ; 247 delete [] in_EXECUTE_LOOP_IN_READ_RA ; 248 delete [] in_EXECUTE_LOOP_IN_NUM_REG_RA ; 249 delete [] in_EXECUTE_LOOP_IN_READ_RB ; 250 delete [] in_EXECUTE_LOOP_IN_NUM_REG_RB ; 251 delete [] in_EXECUTE_LOOP_IN_READ_RC ; 252 delete [] in_EXECUTE_LOOP_IN_NUM_REG_RC ; 253 delete [] in_EXECUTE_LOOP_IN_WRITE_RD ; 254 delete [] in_EXECUTE_LOOP_IN_NUM_REG_RD ; 255 delete [] in_EXECUTE_LOOP_IN_WRITE_RE ; 256 delete [] in_EXECUTE_LOOP_IN_NUM_REG_RE ; 257 delete [] out_EXECUTE_LOOP_OUT_VAL ; 258 delete [] in_EXECUTE_LOOP_OUT_ACK ; 259 delete [] out_EXECUTE_LOOP_OUT_CONTEXT_ID ; 260 delete [] out_EXECUTE_LOOP_OUT_FRONT_END_ID ; 261 delete [] out_EXECUTE_LOOP_OUT_OOO_ENGINE_ID ; 262 delete [] out_EXECUTE_LOOP_OUT_PACKET_ID ; 263 //delete [] out_EXECUTE_LOOP_OUT_OPERATION ; 264 //delete [] out_EXECUTE_LOOP_OUT_TYPE ; 265 delete [] out_EXECUTE_LOOP_OUT_FLAGS ; 266 delete [] out_EXECUTE_LOOP_OUT_EXCEPTION ; 267 delete [] out_EXECUTE_LOOP_OUT_NO_SEQUENCE ; 268 delete [] out_EXECUTE_LOOP_OUT_ADDRESS ; 269 delete [] out_DCACHE_REQ_VAL ; 270 delete [] in_DCACHE_REQ_ACK ; 271 delete [] out_DCACHE_REQ_CONTEXT_ID ; 272 delete [] out_DCACHE_REQ_PACKET_ID ; 273 delete [] out_DCACHE_REQ_ADDRESS ; 274 delete [] out_DCACHE_REQ_TYPE ; 275 delete [] out_DCACHE_REQ_WDATA ; 276 delete [] in_DCACHE_RSP_VAL ; 277 delete [] out_DCACHE_RSP_ACK ; 278 delete [] in_DCACHE_RSP_CONTEXT_ID ; 279 delete [] in_DCACHE_RSP_PACKET_ID ; 280 delete [] in_DCACHE_RSP_RDATA ; 281 delete [] in_DCACHE_RSP_ERROR ; 282 delete [] in_INSERT_ROB_VAL ; 283 delete [] out_INSERT_ROB_ACK ; 284 delete [] in_INSERT_ROB_RD_USE ; 285 delete [] in_INSERT_ROB_RD_NUM_REG ; 286 delete [] in_INSERT_ROB_RE_USE ; 287 delete [] in_INSERT_ROB_RE_NUM_REG ; 288 delete [] in_RETIRE_ROB_VAL ; 289 delete [] out_RETIRE_ROB_ACK ; 290 delete [] in_RETIRE_ROB_RD_OLD_USE ; 291 delete [] in_RETIRE_ROB_RD_OLD_NUM_REG ; 292 delete [] in_RETIRE_ROB_RD_NEW_USE ; 293 delete [] in_RETIRE_ROB_RD_NEW_NUM_REG ; 294 delete [] in_RETIRE_ROB_RE_OLD_USE ; 295 delete [] in_RETIRE_ROB_RE_OLD_NUM_REG ; 296 delete [] in_RETIRE_ROB_RE_NEW_USE ; 297 delete [] in_RETIRE_ROB_RE_NEW_NUM_REG ; 247 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_VAL ,_param->_nb_read_unit); 248 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_IN_ACK ,_param->_nb_read_unit); 249 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_CONTEXT_ID ,_param->_nb_read_unit); 250 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_FRONT_END_ID ,_param->_nb_read_unit); 251 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_OOO_ENGINE_ID ,_param->_nb_read_unit); 252 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_PACKET_ID ,_param->_nb_read_unit); 253 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_OPERATION ,_param->_nb_read_unit); 254 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_TYPE ,_param->_nb_read_unit); 255 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_STORE_QUEUE_PTR_WRITE,_param->_nb_read_unit); 256 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_LOAD_QUEUE_PTR_WRITE ,_param->_nb_read_unit); 257 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_HAS_IMMEDIAT ,_param->_nb_read_unit); 258 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_IMMEDIAT ,_param->_nb_read_unit); 259 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_READ_RA ,_param->_nb_read_unit); 260 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_NUM_REG_RA ,_param->_nb_read_unit); 261 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_READ_RB ,_param->_nb_read_unit); 262 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_NUM_REG_RB ,_param->_nb_read_unit); 263 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_READ_RC ,_param->_nb_read_unit); 264 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_NUM_REG_RC ,_param->_nb_read_unit); 265 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_WRITE_RD ,_param->_nb_read_unit); 266 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_NUM_REG_RD ,_param->_nb_read_unit); 267 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_WRITE_RE ,_param->_nb_read_unit); 268 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_IN_NUM_REG_RE ,_param->_nb_read_unit); 269 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_VAL ,_param->_nb_write_unit); 270 DELETE1_SC_SIGNAL( in_EXECUTE_LOOP_OUT_ACK ,_param->_nb_write_unit); 271 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_CONTEXT_ID ,_param->_nb_write_unit); 272 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_FRONT_END_ID ,_param->_nb_write_unit); 273 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_OOO_ENGINE_ID ,_param->_nb_write_unit); 274 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_PACKET_ID ,_param->_nb_write_unit); 275 //DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_OPERATION ,_param->_nb_write_unit); 276 //DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_TYPE ,_param->_nb_write_unit); 277 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_FLAGS ,_param->_nb_write_unit); 278 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_EXCEPTION ,_param->_nb_write_unit); 279 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_NO_SEQUENCE ,_param->_nb_write_unit); 280 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_ADDRESS ,_param->_nb_write_unit); 281 DELETE1_SC_SIGNAL(out_EXECUTE_LOOP_OUT_DATA ,_param->_nb_write_unit); 282 DELETE2_SC_SIGNAL(out_DCACHE_REQ_VAL ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 283 DELETE2_SC_SIGNAL( in_DCACHE_REQ_ACK ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 284 DELETE2_SC_SIGNAL(out_DCACHE_REQ_CONTEXT_ID ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 285 DELETE2_SC_SIGNAL(out_DCACHE_REQ_PACKET_ID ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 286 DELETE2_SC_SIGNAL(out_DCACHE_REQ_ADDRESS ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 287 DELETE2_SC_SIGNAL(out_DCACHE_REQ_TYPE ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 288 DELETE2_SC_SIGNAL(out_DCACHE_REQ_WDATA ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 289 DELETE2_SC_SIGNAL( in_DCACHE_RSP_VAL ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 290 DELETE2_SC_SIGNAL(out_DCACHE_RSP_ACK ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 291 DELETE2_SC_SIGNAL( in_DCACHE_RSP_CONTEXT_ID ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 292 DELETE2_SC_SIGNAL( in_DCACHE_RSP_PACKET_ID ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 293 DELETE2_SC_SIGNAL( in_DCACHE_RSP_RDATA ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 294 DELETE2_SC_SIGNAL( in_DCACHE_RSP_ERROR ,_param->_nb_load_store_unit,_param->_nb_cache_port[it1]); 295 DELETE2_SC_SIGNAL( in_INSERT_ROB_VAL ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 296 DELETE2_SC_SIGNAL(out_INSERT_ROB_ACK ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 297 DELETE2_SC_SIGNAL( in_INSERT_ROB_RD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 298 DELETE2_SC_SIGNAL( in_INSERT_ROB_RD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 299 DELETE2_SC_SIGNAL( in_INSERT_ROB_RE_USE ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 300 DELETE2_SC_SIGNAL( in_INSERT_ROB_RE_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]); 301 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_VAL ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 302 // DELETE2_SC_SIGNAL(out_RETIRE_ROB_ACK ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 303 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_RD_OLD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 304 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_RD_OLD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 305 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_RD_NEW_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 306 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_RD_NEW_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 307 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_RE_OLD_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 308 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_RE_OLD_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 309 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_RE_NEW_USE ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 310 // DELETE2_SC_SIGNAL( in_RETIRE_ROB_RE_NEW_NUM_REG ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]); 298 311 299 312 #endif
Note: See TracChangeset
for help on using the changeset viewer.