Changeset 85 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/src/Ifetch_unit_allocation.cpp
- Timestamp:
- May 14, 2008, 3:09:48 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/src/Ifetch_unit_allocation.cpp
r82 r85 213 213 214 214 { 215 dest = _name; 216 217 #ifdef POSITION 218 _component->interface_map (src ,"address", 219 dest,"icache_req"); 220 _component->interface_map (src ,"address", 221 dest+"_ifetch_unit_glue","address"); 222 #endif 215 dest = _name+"_ifetch_queue"; 223 216 224 217 for (uint32_t i=0; i<_param->_nb_instruction; i++) 225 218 { 226 219 #ifdef POSITION 227 _component->interface_map (src 228 dest +"_ifetch_queue","address_"+toString(i));229 #endif 230 PORT_MAP(_component,src,"out_ADDRESS_"+toString(i)+"_INSTRUCTION_ENABLE",231 dest+"_ifetch_queue", "in_ADDRESS_"+toString(i)+"_INSTRUCTION_ENABLE");220 _component->interface_map (src ,"address_"+toString(i), 221 dest,"address_"+toString(i)); 222 #endif 223 COMPONENT_MAP(_component,src ,"out_ADDRESS_"+toString(i)+"_INSTRUCTION_ENABLE", 224 dest, "in_ADDRESS_"+toString(i)+"_INSTRUCTION_ENABLE"); 232 225 } 233 226 234 PORT_MAP(_component,src ,"out_ADDRESS_VAL" ,235 dest+"_ifetch_unit_glue", "in_ICACHE_REQ_ADDRESS_VAL" );236 PORT_MAP(_component,src , "in_ADDRESS_ACK" ,237 dest+"_ifetch_unit_glue","out_ICACHE_REQ_ADDRESS_ACK" );238 PORT_MAP(_component,src ,"out_ADDRESS_INSTRUCTION_ADDRESS" ,239 dest,"out_ICACHE_REQ_ADDRESS");240 PORT_MAP(_component,src ,"out_ADDRESS_INSTRUCTION_ADDRESS" ,241 dest+"_ifetch_queue", "in_ADDRESS_INSTRUCTION_ADDRESS" );242 227 if (_param->_have_port_instruction_ptr) 243 PORT_MAP(_component,src ,"out_ADDRESS_INST_IFETCH_PTR" ,244 dest+"_ifetch_queue", "in_ADDRESS_INST_IFETCH_PTR" );245 PORT_MAP(_component,src ,"out_ADDRESS_BRANCH_STATE" ,246 dest+"_ifetch_queue", "in_ADDRESS_BRANCH_STATE" );228 COMPONENT_MAP(_component,src ,"out_ADDRESS_INST_IFETCH_PTR" , 229 dest, "in_ADDRESS_INST_IFETCH_PTR" ); 230 COMPONENT_MAP(_component,src ,"out_ADDRESS_BRANCH_STATE" , 231 dest, "in_ADDRESS_BRANCH_STATE" ); 247 232 if (_param->_have_port_branch_update_prediction_id) 248 PORT_MAP(_component,src ,"out_ADDRESS_BRANCH_UPDATE_PREDICTION_ID", 249 dest+"_ifetch_queue", "in_ADDRESS_BRANCH_UPDATE_PREDICTION_ID"); 233 COMPONENT_MAP(_component,src ,"out_ADDRESS_BRANCH_UPDATE_PREDICTION_ID", 234 dest, "in_ADDRESS_BRANCH_UPDATE_PREDICTION_ID"); 235 236 dest = _name+"_ifetch_unit_glue"; 237 238 #ifdef POSITION 239 _component->interface_map (src ,"address", 240 dest,"address"); 241 #endif 242 243 COMPONENT_MAP(_component,src ,"out_ADDRESS_VAL" , 244 dest, "in_ICACHE_REQ_ADDRESS_VAL"); 245 COMPONENT_MAP(_component,src , "in_ADDRESS_ACK" , 246 dest,"out_ICACHE_REQ_ADDRESS_ACK"); 247 COMPONENT_MAP(_component,src ,"out_ADDRESS_INSTRUCTION_ADDRESS", 248 dest, "in_ICACHE_REQ_ADDRESS_ADDRESS"); 250 249 } 251 250 … … 302 301 #endif 303 302 304 PORT_MAP(_component,src , "in_EVENT_VAL" ,dest ,"out_EVENT_ADDRESS_VAL"); 305 PORT_MAP(_component,src ,"out_EVENT_ACK" ,dest , "in_EVENT_ADDRESS_ACK"); 306 PORT_MAP(_component,src , "in_EVENT_ADDRESS",_name, "in_EVENT_ADDRESS"); 303 COMPONENT_MAP(_component,src , "in_EVENT_VAL" ,dest ,"out_EVENT_ADDRESS_VAL"); 304 COMPONENT_MAP(_component,src ,"out_EVENT_ACK" ,dest , "in_EVENT_ADDRESS_ACK"); 305 306 307 dest = _name; 308 PORT_MAP(_component,src , "in_EVENT_ADDRESS",dest, "in_EVENT_ADDRESS"); 307 309 } 308 310 } … … 333 335 #endif 334 336 337 if (_param->_have_port_queue_ptr) 338 PORT_MAP(_component,src ,"out_ADDRESS_IFETCH_QUEUE_ID" , 339 dest,"out_ICACHE_REQ_PACKET_ID" ); 340 335 341 for (uint32_t i=0; i<_param->_nb_instruction; i++) 336 342 { … … 339 345 dest+"_address_management","address_"+toString(i)); 340 346 #endif 341 342 PORT_MAP(_component,src , "in_ADDRESS_"+toString(i)+"_INSTRUCTION_ENABLE" , 343 dest+"_address_management","out_ADDRESS_"+toString(i)+"_INSTRUCTION_ENABLE" ); 347 348 //out_ADDRESS_INSTRUCTION_ENABLE - address_management 344 349 } 345 350 346 PORT_MAP(_component,src , "in_ADDRESS_VAL" , 347 dest+"_ifetch_unit_glue" ,"out_ICACHE_REQ_QUEUE_VAL" ); 348 PORT_MAP(_component,src ,"out_ADDRESS_ACK" , 349 dest+"_ifetch_unit_glue" , "in_ICACHE_REQ_QUEUE_ACK" ); 350 if (_param->_have_port_queue_ptr) 351 PORT_MAP(_component,src ,"out_ADDRESS_IFETCH_QUEUE_ID" , 352 dest ,"out_ICACHE_REQ_PACKET_ID" ); 353 PORT_MAP(_component,src , "in_ADDRESS_INSTRUCTION_ADDRESS" , 354 dest+"_address_management","out_ADDRESS_INSTRUCTION_ADDRESS" ); 355 if (_param->_have_port_instruction_ptr) 356 PORT_MAP(_component,src , "in_ADDRESS_INST_IFETCH_PTR" , 357 dest+"_address_management","out_ADDRESS_INST_IFETCH_PTR" ); 358 PORT_MAP(_component,src , "in_ADDRESS_BRANCH_STATE" , 359 dest+"_address_management","out_ADDRESS_BRANCH_STATE" ); 360 if (_param->_have_port_branch_update_prediction_id) 361 PORT_MAP(_component,src , "in_ADDRESS_BRANCH_UPDATE_PREDICTION_ID", 362 dest+"_address_management","out_ADDRESS_BRANCH_UPDATE_PREDICTION_ID"); 351 dest = _name+"_ifetch_unit_glue"; 352 353 COMPONENT_MAP(_component,src , "in_ADDRESS_VAL" , 354 dest,"out_ICACHE_REQ_QUEUE_VAL"); 355 COMPONENT_MAP(_component,src ,"out_ADDRESS_ACK" , 356 dest, "in_ICACHE_REQ_QUEUE_ACK"); 357 COMPONENT_MAP(_component,src , "in_ADDRESS_INSTRUCTION_ADDRESS", 358 dest,"out_ICACHE_REQ_QUEUE_ADDRESS"); 359 // in_ADDRESS_INST_IFETCH_PTR - address_management 360 // in_ADDRESS_BRANCH_STATE - address_management 361 // in_ADDRESS_BRANCH_UPDATE_PREDICTION_ID - address_management 363 362 } 364 363 … … 428 427 #endif 429 428 430 PORT_MAP(_component,src , "in_EVENT_RESET_VAL",dest,"out_EVENT_QUEUE_VAL");431 PORT_MAP(_component,src ,"out_EVENT_RESET_ACK",dest, "in_EVENT_QUEUE_ACK");429 COMPONENT_MAP(_component,src , "in_EVENT_RESET_VAL",dest,"out_EVENT_QUEUE_VAL"); 430 COMPONENT_MAP(_component,src ,"out_EVENT_RESET_ACK",dest, "in_EVENT_QUEUE_ACK"); 432 431 } 433 432 } … … 458 457 #endif 459 458 460 PORT_MAP(_component,src ,"out_ICACHE_REQ_VAL" ,dest ,"out_ICACHE_REQ_VAL"); 461 PORT_MAP(_component,src , "in_ICACHE_REQ_ADDRESS_VAL",dest+"_address_management","out_ADDRESS_VAL"); 462 PORT_MAP(_component,src ,"out_ICACHE_REQ_QUEUE_VAL" ,dest+"_ifetch_queue" , "in_ADDRESS_VAL" ); 463 PORT_MAP(_component,src , "in_ICACHE_REQ_ACK" ,dest , "in_ICACHE_REQ_ACK"); 464 PORT_MAP(_component,src ,"out_ICACHE_REQ_ADDRESS_ACK",dest+"_address_management", "in_ADDRESS_ACK"); 465 PORT_MAP(_component,src , "in_ICACHE_REQ_QUEUE_ACK" ,dest+"_ifetch_queue" ,"out_ADDRESS_ACK"); 466 PORT_MAP(_component,src ,"out_ICACHE_REQ_TYPE" ,dest ,"out_ICACHE_REQ_TYPE"); 459 PORT_MAP(_component,src ,"out_ICACHE_REQ_VAL" ,dest,"out_ICACHE_REQ_VAL"); 460 PORT_MAP(_component,src , "in_ICACHE_REQ_ACK" ,dest, "in_ICACHE_REQ_ACK"); 461 PORT_MAP(_component,src ,"out_ICACHE_REQ_TYPE" ,dest,"out_ICACHE_REQ_TYPE"); 462 PORT_MAP(_component,src ,"out_ICACHE_REQ_ADDRESS",dest,"out_ICACHE_REQ_ADDRESS"); 463 464 // in_ICACHE_REQ_ADDRESS_VAL - address_management 465 //out_ICACHE_REQ_QUEUE_VAL - ifetch_queue 466 //out_ICACHE_REQ_ADDRESS_ACK - address_management 467 // in_ICACHE_REQ_QUEUE_ACK - ifetch_queue 468 // in_ICACHE_REQ_ADDRESS_ADDRESS - address_management 469 //out_ICACHE_REQ_QUEUE_ADDRESS - ifetch_queue 470 467 471 } 468 472 … … 476 480 477 481 PORT_MAP(_component,src , "in_EVENT_VAL" ,dest , "in_EVENT_VAL" ); 478 PORT_MAP(_component,src ,"out_EVENT_ADDRESS_VAL",dest+"_address_management", "in_EVENT_VAL" );479 PORT_MAP(_component,src ,"out_EVENT_QUEUE_VAL" ,dest+"_ifetch_queue" , "in_EVENT_RESET_VAL" );480 482 PORT_MAP(_component,src ,"out_EVENT_ACK" ,dest ,"out_EVENT_ACK" ); 481 PORT_MAP(_component,src , "in_EVENT_ADDRESS_ACK",dest+"_address_management","out_EVENT_ACK" ); 482 PORT_MAP(_component,src , "in_EVENT_QUEUE_ACK" ,dest+"_ifetch_queue" ,"out_EVENT_RESET_ACK" ); 483 484 //out_EVENT_ADDRESS_VAL - address_management 485 //out_EVENT_QUEUE_VAL - ifetch_queue 486 // in_EVENT_ADDRESS_ACK - address_management 487 // in_EVENT_QUEUE_ACK - ifetch_queue 483 488 } 484 489 } 485 490 486 491 // ~~~~~[ Others ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 487 _component->test_map(); 492 if (DEBUG_Ifetch_unit == true) 493 _component->test_map(); 488 494 489 495 #ifdef POSITION
Note: See TracChangeset
for help on using the changeset viewer.