Ignore:
Timestamp:
Dec 10, 2008, 7:31:39 PM (15 years ago)
Author:
rosiere
Message:

Almost complete design
with Test and test platform

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/src/Execute_loop_allocation.cpp

    r82 r88  
    6262       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_FRONT_END_ID         ,"front_end_id"         ,Tcontext_t        ,_param->_size_front_end_id);
    6363       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_OOO_ENGINE_ID        ,"ooo_engine_id"        ,Tcontext_t        ,_param->_size_ooo_engine_id);
    64        ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_PACKET_ID            ,"packet_id"            ,Tpacket_t         ,_param->_size_packet_id);
     64       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_PACKET_ID            ,"packet_id"            ,Tpacket_t         ,_param->_size_rob_ptr  );
    6565       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_OPERATION            ,"operation"            ,Toperation_t      ,_param->_size_operation);
    6666       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_TYPE                 ,"type"                 ,Ttype_t           ,_param->_size_type);         
    67        ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_STORE_QUEUE_PTR_WRITE,"store_queue_ptr_write",Tlsq_ptr_t        ,_param->_max_size_store_queue);
     67       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_STORE_QUEUE_PTR_WRITE,"store_queue_ptr_write",Tlsq_ptr_t        ,_param->_size_store_queue_ptr);
    6868       if (_param->_have_port_load_queue_ptr)
    69        ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_LOAD_QUEUE_PTR_WRITE ,"load_queue_ptr_write" ,Tlsq_ptr_t        ,_param->_max_size_load_queue);
     69       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_LOAD_QUEUE_PTR_WRITE ,"load_queue_ptr_write" ,Tlsq_ptr_t        ,_param->_size_load_queue_ptr);
    7070       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_HAS_IMMEDIAT         ,"has_immediat"         ,Tcontrol_t        ,1);
    7171       ALLOC1_SIGNAL_IN ( in_EXECUTE_LOOP_IN_IMMEDIAT             ,"immediat"             ,Tgeneral_data_t   ,_param->_size_general_data);
     
    9090       ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_FRONT_END_ID ,"front_end_id" ,Tcontext_t     ,_param->_size_front_end_id);
    9191       ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_OOO_ENGINE_ID,"ooo_engine_id",Tcontext_t     ,_param->_size_ooo_engine_id);
    92        ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_PACKET_ID    ,"packet_id"    ,Tpacket_t      ,_param->_size_packet_id);
     92       ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_PACKET_ID    ,"packet_id"    ,Tpacket_t      ,_param->_size_rob_ptr  );
    9393//     ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_OPERATION    ,"operation"    ,Toperation_t   ,_param->_size_operation);
    9494//     ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_TYPE         ,"type"         ,Ttype_t        ,_param->_size_type);
     
    9797       ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_NO_SEQUENCE  ,"no_sequence"  ,Tcontrol_t     ,1);
    9898       ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_ADDRESS      ,"address"      ,Tgeneral_data_t,_param->_size_general_data);
     99       ALLOC1_SIGNAL_OUT(out_EXECUTE_LOOP_OUT_DATA         ,"data"         ,Tgeneral_data_t,_param->_size_general_data);
    99100     }
    100101    // ~~~~~[ Interface "dcache_req" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    101102     {
    102        ALLOC1_INTERFACE("dcache_req",OUT, NORTH, "Data cache port : request", _param->_nb_load_store_unit);
    103        
    104        ALLOC1_VALACK_OUT(out_DCACHE_REQ_VAL,VAL);
    105        ALLOC1_VALACK_IN ( in_DCACHE_REQ_ACK,ACK);
    106        ALLOC1_SIGNAL_OUT(out_DCACHE_REQ_CONTEXT_ID,"context_id",Tcontext_t       ,_param->_max_size_dcache_context_id);
    107        ALLOC1_SIGNAL_OUT(out_DCACHE_REQ_PACKET_ID ,"packet_id" ,Tpacket_t        ,_param->_max_size_dcache_packet_id );
    108        ALLOC1_SIGNAL_OUT(out_DCACHE_REQ_ADDRESS   ,"address"   ,Tdcache_address_t,_param->_size_general_data);
    109        ALLOC1_SIGNAL_OUT(out_DCACHE_REQ_TYPE      ,"type"      ,Tdcache_type_t   ,_param->_size_dcache_type);
    110        ALLOC1_SIGNAL_OUT(out_DCACHE_REQ_WDATA     ,"wdata"     ,Tdcache_data_t   ,_param->_size_general_data);
     103       ALLOC2_INTERFACE("dcache_req",OUT, NORTH, "Data cache port : request", _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     104       
     105       _ALLOC2_VALACK_OUT(out_DCACHE_REQ_VAL,VAL, _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     106       _ALLOC2_VALACK_IN ( in_DCACHE_REQ_ACK,ACK, _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     107       _ALLOC2_SIGNAL_OUT(out_DCACHE_REQ_CONTEXT_ID,"context_id",Tcontext_t       ,_param->_max_size_dcache_context_id, _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     108       _ALLOC2_SIGNAL_OUT(out_DCACHE_REQ_PACKET_ID ,"packet_id" ,Tpacket_t        ,_param->_max_size_dcache_packet_id , _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     109       _ALLOC2_SIGNAL_OUT(out_DCACHE_REQ_ADDRESS   ,"address"   ,Tdcache_address_t,_param->_size_general_data         , _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     110       _ALLOC2_SIGNAL_OUT(out_DCACHE_REQ_TYPE      ,"type"      ,Tdcache_type_t   ,_param->_size_dcache_type          , _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     111       _ALLOC2_SIGNAL_OUT(out_DCACHE_REQ_WDATA     ,"wdata"     ,Tdcache_data_t   ,_param->_size_general_data         , _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
    111112     }
    112113    // ~~~~~[ Interface "dcache_rsp" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    113114     {
    114        ALLOC1_INTERFACE("dcache_rsp",IN, NORTH, "Data cache port : respons", _param->_nb_load_store_unit);
    115 
    116        ALLOC1_VALACK_IN ( in_DCACHE_RSP_VAL,VAL);
    117        ALLOC1_VALACK_OUT(out_DCACHE_RSP_ACK,ACK);
    118        ALLOC1_SIGNAL_IN ( in_DCACHE_RSP_CONTEXT_ID,"context_id",Tcontext_t     ,_param->_max_size_dcache_context_id);
    119        ALLOC1_SIGNAL_IN ( in_DCACHE_RSP_PACKET_ID ,"packet_id" ,Tpacket_t      ,_param->_max_size_dcache_packet_id);
    120        ALLOC1_SIGNAL_IN ( in_DCACHE_RSP_RDATA     ,"rdata"     ,Tdcache_data_t ,_param->_size_general_data);
    121        ALLOC1_SIGNAL_IN ( in_DCACHE_RSP_ERROR     ,"error"     ,Tdcache_error_t,_param->_size_dcache_error);
     115       ALLOC2_INTERFACE("dcache_rsp",IN, NORTH, "Data cache port : respons", _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     116
     117       _ALLOC2_VALACK_IN ( in_DCACHE_RSP_VAL,VAL, _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     118       _ALLOC2_VALACK_OUT(out_DCACHE_RSP_ACK,ACK, _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     119       _ALLOC2_SIGNAL_IN ( in_DCACHE_RSP_CONTEXT_ID,"context_id",Tcontext_t     ,_param->_max_size_dcache_context_id, _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     120       _ALLOC2_SIGNAL_IN ( in_DCACHE_RSP_PACKET_ID ,"packet_id" ,Tpacket_t      ,_param->_max_size_dcache_packet_id , _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     121       _ALLOC2_SIGNAL_IN ( in_DCACHE_RSP_RDATA     ,"rdata"     ,Tdcache_data_t ,_param->_size_general_data         , _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
     122       _ALLOC2_SIGNAL_IN ( in_DCACHE_RSP_ERROR     ,"error"     ,Tdcache_error_t,_param->_size_dcache_error         , _param->_nb_load_store_unit, _param->_nb_cache_port[it1]);
    122123     }
    123124    // ~~~~~[ Interface "insert_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    124125     {
    125        ALLOC2_INTERFACE("insert_rob",IN, EAST, "Rename's stage : insert a new instruction in the Re Order Buffer",_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_interface_it1]);
    126        
    127        _ALLOC2_VALACK_IN ( in_INSERT_ROB_VAL,VAL,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]);
    128        _ALLOC2_VALACK_OUT(out_INSERT_ROB_ACK,ACK,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]);
    129 
    130        _ALLOC2_SIGNAL_IN ( in_INSERT_ROB_RD_USE    ,"rd_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]);
    131        _ALLOC2_SIGNAL_IN ( in_INSERT_ROB_RD_NUM_REG,"rd_num_reg",Tgeneral_address_t,_param->_size_general_register,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]);
    132        _ALLOC2_SIGNAL_IN ( in_INSERT_ROB_RE_USE    ,"re_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]);
    133        _ALLOC2_SIGNAL_IN ( in_INSERT_ROB_RE_NUM_REG,"re_num_reg",Tspecial_address_t,_param->_size_special_register,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[alloc_signal_it1]);
     126       ALLOC2_INTERFACE("insert_rob",IN, EAST, "Rename's stage : insert a new instruction in the Re Order Buffer",_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]);
     127       
     128       _ALLOC2_VALACK_IN ( in_INSERT_ROB_VAL,VAL,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]);
     129       _ALLOC2_VALACK_OUT(out_INSERT_ROB_ACK,ACK,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]);
     130
     131       _ALLOC2_SIGNAL_IN ( in_INSERT_ROB_RD_USE    ,"rd_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]);
     132       _ALLOC2_SIGNAL_IN ( in_INSERT_ROB_RD_NUM_REG,"rd_num_reg",Tgeneral_address_t,_param->_size_general_register,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]);
     133       _ALLOC2_SIGNAL_IN ( in_INSERT_ROB_RE_USE    ,"re_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]);
     134       _ALLOC2_SIGNAL_IN ( in_INSERT_ROB_RE_NUM_REG,"re_num_reg",Tspecial_address_t,_param->_size_special_register,_param->_nb_ooo_engine,_param->_nb_inst_insert_rob[it1]);
    134135     }
    135     // ~~~~~[ Interface "retire_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    136      {
    137        ALLOC2_INTERFACE("retire_rob",IN, EAST, "Rename's stage : retire a new instruction in the Re Order Buffer",_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_interface_it1]);
    138        
    139        _ALLOC2_VALACK_IN ( in_RETIRE_ROB_VAL,VAL,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    140        _ALLOC2_VALACK_OUT(out_RETIRE_ROB_ACK,ACK,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    141 
    142        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RD_OLD_USE    ,"rd_old_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    143        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RD_OLD_NUM_REG,"rd_old_num_reg",Tgeneral_address_t,_param->_size_general_register,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    144        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RD_NEW_USE    ,"rd_new_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    145        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RD_NEW_NUM_REG,"rd_new_num_reg",Tgeneral_address_t,_param->_size_general_register,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    146        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RE_OLD_USE    ,"re_old_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    147        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RE_OLD_NUM_REG,"re_old_num_reg",Tspecial_address_t,_param->_size_special_register,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    148        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RE_NEW_USE    ,"re_new_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    149        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RE_NEW_NUM_REG,"re_new_num_reg",Tspecial_address_t,_param->_size_special_register,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[alloc_signal_it1]);
    150      }
     136//     // ~~~~~[ Interface "retire_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     137//      {
     138//        ALLOC2_INTERFACE("retire_rob",IN, EAST, "Rename's stage : retire a new instruction in the Re Order Buffer",_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     139       
     140//        _ALLOC2_VALACK_IN ( in_RETIRE_ROB_VAL,VAL,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     141//        _ALLOC2_VALACK_OUT(out_RETIRE_ROB_ACK,ACK,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     142
     143//        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RD_OLD_USE    ,"rd_old_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     144//        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RD_OLD_NUM_REG,"rd_old_num_reg",Tgeneral_address_t,_param->_size_general_register,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     145//        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RD_NEW_USE    ,"rd_new_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     146//        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RD_NEW_NUM_REG,"rd_new_num_reg",Tgeneral_address_t,_param->_size_general_register,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     147//        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RE_OLD_USE    ,"re_old_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     148//        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RE_OLD_NUM_REG,"re_old_num_reg",Tspecial_address_t,_param->_size_special_register,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     149//        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RE_NEW_USE    ,"re_new_use"    ,Tcontrol_t        ,1                             ,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     150//        _ALLOC2_SIGNAL_IN ( in_RETIRE_ROB_RE_NEW_NUM_REG,"re_new_num_reg",Tspecial_address_t,_param->_size_special_register,_param->_nb_ooo_engine,_param->_nb_inst_retire_rob[it1]);
     151//      }
    151152
    152153     // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    153154     std::string name;
     155
     156     {
     157       name = _name+"_glue";
     158       log_printf(INFO,Core,FUNCTION,_("Create   : %s"),name.c_str());
     159       
     160       _component_glue = new morpheo::behavioural::core::multi_execute_loop::execute_loop::execute_loop_glue::Execute_loop_Glue
     161         (name.c_str()
     162#ifdef STATISTICS
     163          ,param_statistics
     164#endif
     165          ,_param->_param_glue
     166          ,_usage);
     167       
     168       _component->set_component (_component_glue->_component
     169#ifdef POSITION
     170                                  , 50, 50, 10, 10
     171#endif
     172                                  );
     173     }
    154174       
    155175     _component_read_unit = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::Read_unit * [_param->_nb_read_unit];
     
    157177       {
    158178         name = _name+"_read_unit_"+toString(i);
    159          std::cout << "Create   : " << name << std::endl;
     179         log_printf(INFO,Core,FUNCTION,_("Create   : %s"),name.c_str());
    160180
    161181         _component_read_unit [i] = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_read_unit::read_unit::Read_unit
     
    178198       {
    179199         name = _name+"_functionnal_unit_"+toString(i);
    180          std::cout << "Create   : " << name << std::endl;
     200         log_printf(INFO,Core,FUNCTION,_("Create   : %s"),name.c_str());
    181201
    182202         _component_functionnal_unit [i] = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_execute_unit::execute_unit::functionnal_unit::Functionnal_unit
     
    199219       {
    200220         name = _name+"_load_store_unit_"+toString(i);
    201          std::cout << "Create   : " << name << std::endl;
     221         log_printf(INFO,Core,FUNCTION,_("Create   : %s"),name.c_str());
    202222
    203223         _component_load_store_unit [i] = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_execute_unit::execute_unit::load_store_unit::Load_store_unit
     
    220240       {
    221241         name = _name+"_write_unit_"+toString(i);
    222          std::cout << "Create   : " << name << std::endl;
     242         log_printf(INFO,Core,FUNCTION,_("Create   : %s"),name.c_str());
    223243
    224244         _component_write_unit [i] = new morpheo::behavioural::core::multi_execute_loop::execute_loop::multi_write_unit::write_unit::Write_unit
     
    239259     {
    240260       name = _name+"_read_unit_to_execution_unit";
    241        std::cout << "Create   : " << name << std::endl;
     261       log_printf(INFO,Core,FUNCTION,_("Create   : %s"),name.c_str());
    242262       
    243263       _component_read_unit_to_execution_unit = new morpheo::behavioural::core::multi_execute_loop::execute_loop::network::read_unit_to_execution_unit::Read_unit_to_Execution_unit
     
    258278     {
    259279       name = _name+"_execution_unit_to_write_unit";
    260        std::cout << "Create   : " << name << std::endl;
     280       log_printf(INFO,Core,FUNCTION,_("Create   : %s"),name.c_str());
    261281       
    262282       _component_execution_unit_to_write_unit = new morpheo::behavioural::core::multi_execute_loop::execute_loop::network::execution_unit_to_write_unit::Execution_unit_to_Write_unit
     
    277297     {
    278298       name = _name+"_register_unit";
    279        std::cout << "Create   : " << name << std::endl;
     299       log_printf(INFO,Core,FUNCTION,_("Create   : %s"),name.c_str());
    280300       
    281301       _component_register_unit = new morpheo::behavioural::core::multi_execute_loop::execute_loop::register_unit::Register_unit
     
    296316     // ~~~~~[ Instanciation ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    297317     std::string src,dest;
     318
     319     // ===================================================================
     320     // =====[ GLUE ]======================================================
     321     // ===================================================================
     322     {
     323       src = _name+"_glue";
     324       log_printf(INFO,Core,FUNCTION,_("Instance : %s"),src.c_str());
     325       
     326       {
     327         dest = _name;
     328#ifdef POSITION
     329         _component->interface_map (src ,"",
     330                                    dest,"");
     331#endif
     332         PORT_MAP(_component ,src , "in_CLOCK" ,dest, "in_CLOCK");
     333         PORT_MAP(_component ,src , "in_NRESET",dest, "in_NRESET");
     334       }
     335
     336       for (uint32_t i=0; i<_param->_nb_gpr_write; i++)
     337         {
     338           {
     339             dest = _name+"_write_unit_"+toString(i);
     340             
     341#ifdef POSITION
     342             _component->interface_map (src ,"gpr_write_write_unit_"+toString(i),
     343                                        dest,"gpr_write");
     344#endif
     345
     346             //  in_GPR_WRITE_WRITE_UNIT_VAL               
     347             // out_GPR_WRITE_WRITE_UNIT_ACK               
     348             //  in_GPR_WRITE_WRITE_UNIT_OOO_ENGINE_ID     
     349             //  in_GPR_WRITE_WRITE_UNIT_NUM_REG           
     350             //  in_GPR_WRITE_WRITE_UNIT_DATA             
     351           }
     352
     353           {
     354             dest = _name+"_register_unit";
     355             
     356#ifdef POSITION
     357             _component->interface_map (src ,"gpr_write_register_file_"+toString(i),
     358                                        dest,"gpr_write_"+toString(i));
     359#endif
     360             // out_GPR_WRITE_REGISTER_FILE_VAL           
     361             //  in_GPR_WRITE_REGISTER_FILE_ACK           
     362             // out_GPR_WRITE_REGISTER_FILE_OOO_ENGINE_ID 
     363             // out_GPR_WRITE_REGISTER_FILE_NUM_REG       
     364             // out_GPR_WRITE_REGISTER_FILE_DATA           
     365           }
     366
     367           {
     368             dest = _name+"_read_unit_0";
     369
     370#ifdef POSITION
     371             _component->interface_map (src ,"gpr_write_read_unit_"+toString(i),
     372                                        dest,"gpr_write");
     373#endif
     374
     375             // out_GPR_WRITE_READ_UNIT_VAL               
     376             // out_GPR_WRITE_READ_UNIT_OOO_ENGINE_ID     
     377             // out_GPR_WRITE_READ_UNIT_NUM_REG           
     378             // out_GPR_WRITE_READ_UNIT_DATA               
     379           }
     380         }
     381
     382       for (uint32_t i=0; i<_param->_nb_spr_write; i++)
     383         {
     384           {
     385             dest = _name+"_write_unit_"+toString(i);
     386             
     387#ifdef POSITION
     388             _component->interface_map (src ,"spr_write_write_unit_"+toString(i),
     389                                        dest,"spr_write");
     390#endif
     391
     392             //  in_SPR_WRITE_WRITE_UNIT_VAL               
     393             // out_SPR_WRITE_WRITE_UNIT_ACK               
     394             //  in_SPR_WRITE_WRITE_UNIT_OOO_ENGINE_ID     
     395             //  in_SPR_WRITE_WRITE_UNIT_NUM_REG           
     396             //  in_SPR_WRITE_WRITE_UNIT_DATA             
     397           }
     398
     399           {
     400             dest = _name+"_register_unit";
     401             
     402#ifdef POSITION
     403             _component->interface_map (src ,"spr_write_register_file_"+toString(i),
     404                                        dest,"spr_write_"+toString(i));
     405#endif
     406             // out_SPR_WRITE_REGISTER_FILE_VAL           
     407             //  in_SPR_WRITE_REGISTER_FILE_ACK           
     408             // out_SPR_WRITE_REGISTER_FILE_OOO_ENGINE_ID 
     409             // out_SPR_WRITE_REGISTER_FILE_NUM_REG       
     410             // out_SPR_WRITE_REGISTER_FILE_DATA           
     411           }
     412
     413           {
     414             dest = _name+"_read_unit_0";
     415
     416#ifdef POSITION
     417             _component->interface_map (src ,"spr_write_read_unit_"+toString(i),
     418                                        dest,"spr_write");
     419#endif
     420
     421             // out_SPR_WRITE_READ_UNIT_VAL               
     422             // out_SPR_WRITE_READ_UNIT_OOO_ENGINE_ID     
     423             // out_SPR_WRITE_READ_UNIT_NUM_REG           
     424             // out_SPR_WRITE_READ_UNIT_DATA               
     425           }
     426         }
     427
     428       
     429     }
    298430
    299431     // ===================================================================
     
    306438         {
    307439           src = _name+"_read_unit_"+toString(i);
    308            std::cout << "Instance : " << src << std::endl;
     440           log_printf(INFO,Core,FUNCTION,_("Instance : %s"),src.c_str());
    309441           
    310442           {
     
    334466             if (_param->_have_port_ooo_engine_id)
    335467             PORT_MAP(_component ,src , "in_READ_UNIT_IN_OOO_ENGINE_ID"        ,dest , "in_EXECUTE_LOOP_IN_"+toString(i)+"_OOO_ENGINE_ID"        );
    336              if (_param->_have_port_packet_id)
     468             if (_param->_have_port_rob_ptr  )
    337469             PORT_MAP(_component ,src , "in_READ_UNIT_IN_PACKET_ID"            ,dest , "in_EXECUTE_LOOP_IN_"+toString(i)+"_PACKET_ID"            );
    338470             PORT_MAP(_component ,src , "in_READ_UNIT_IN_OPERATION"            ,dest , "in_EXECUTE_LOOP_IN_"+toString(i)+"_OPERATION"            );
     
    361493               
    362494#ifdef POSITION
    363                _component->interface_map (src ,"read_unit_"+toString(i),
     495               _component->interface_map (src ,"read_unit_"+toString(j),
    364496                                          dest,"read_unit_"+toString(it_read_unit_out));
    365497#endif
    366498             
    367                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_VAL"                  ,
    368                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_VAL"                  );
    369                PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(i               )+"_ACK"                  ,
    370                                     dest,"out_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_ACK"                  );
     499               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_VAL"                  ,
     500                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_VAL"                  );
     501               COMPONENT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(j               )+"_ACK"                  ,
     502                                         dest,"out_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_ACK"                  );
    371503               if (_param->_have_port_context_id)
    372                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_CONTEXT_ID"           ,
    373                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_CONTEXT_ID"           );
     504               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_CONTEXT_ID"           ,
     505                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_CONTEXT_ID"           );
    374506               if (_param->_have_port_front_end_id)
    375                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_FRONT_END_ID"         ,
    376                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_FRONT_END_ID"         );
     507               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_FRONT_END_ID"         ,
     508                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_FRONT_END_ID"         );
    377509               if (_param->_have_port_ooo_engine_id)
    378                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_OOO_ENGINE_ID"        ,
    379                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_OOO_ENGINE_ID"        );
    380                if (_param->_have_port_packet_id)
    381                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_PACKET_ID"            ,
    382                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_PACKET_ID"            );
    383                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_OPERATION"            ,
    384                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_OPERATION"            );
    385                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_TYPE"                 ,
    386                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_TYPE"                 );
    387                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_STORE_QUEUE_PTR_WRITE",
    388                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_STORE_QUEUE_PTR_WRITE");
     510               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_OOO_ENGINE_ID"        ,
     511                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_OOO_ENGINE_ID"        );
     512               if (_param->_have_port_rob_ptr  )
     513               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_PACKET_ID"            ,
     514                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_PACKET_ID"            );
     515               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_OPERATION"            ,
     516                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_OPERATION"            );
     517               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_TYPE"                 ,
     518                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_TYPE"                 );
     519               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_STORE_QUEUE_PTR_WRITE",
     520                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_STORE_QUEUE_PTR_WRITE");
    389521               if (_param->_have_port_load_queue_ptr)
    390                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_LOAD_QUEUE_PTR_WRITE" ,
    391                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_LOAD_QUEUE_PTR_WRITE" );
    392                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_HAS_IMMEDIAT"         ,
    393                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_HAS_IMMEDIAT"         );
    394                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_IMMEDIAT"             ,
    395                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_IMMEDIAT"             );
    396                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_DATA_RA"              ,
    397                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RA"              );
    398                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_DATA_RB"              ,
    399                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RB"              );
    400                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_DATA_RC"              ,
    401                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RC"              );
    402                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_WRITE_RD"             ,
    403                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_WRITE_RD"             );
    404                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_NUM_REG_RD"           ,
    405                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_NUM_REG_RD"           );
    406                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_WRITE_RE"             ,
    407                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_WRITE_RE"             );
    408                PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(i               )+"_NUM_REG_RE"           ,
    409                                     dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_NUM_REG_RE"           );
     522               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_LOAD_QUEUE_PTR_WRITE" ,
     523                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_LOAD_QUEUE_PTR_WRITE" );
     524               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_HAS_IMMEDIAT"         ,
     525                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_HAS_IMMEDIAT"         );
     526               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_IMMEDIAT"             ,
     527                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_IMMEDIAT"             );
     528               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RA"              ,
     529                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_DATA_RA"              );
     530               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RB"              ,
     531                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_DATA_RB"              );
     532               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RC"              ,
     533                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_DATA_RC"              );
     534               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_WRITE_RD"             ,
     535                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_WRITE_RD"             );
     536               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_NUM_REG_RD"           ,
     537                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_NUM_REG_RD"           );
     538               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_WRITE_RE"             ,
     539                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_WRITE_RE"             );
     540               COMPONENT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(j               )+"_NUM_REG_RE"           ,
     541                                         dest, "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_"+toString(j)+"_NUM_REG_RE"           );
    410542             
    411              it_read_unit_out ++;
    412543           }
     544           it_read_unit_out ++;
    413545           
    414546           // ~~~~~[ Interface "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     
    421553                                        dest,"gpr_read_"+toString(2*i+1));
    422554#endif
    423              PORT_MAP(_component ,src ,"out_GPR_READ_0_VAL"          , dest, "in_GPR_READ_"+toString(2*i  )+"_VAL"          );
    424              PORT_MAP(_component ,src , "in_GPR_READ_0_ACK"          , dest,"out_GPR_READ_"+toString(2*i  )+"_ACK"          );
     555             COMPONENT_MAP(_component ,src ,"out_GPR_READ_0_VAL"          , dest, "in_GPR_READ_"+toString(2*i  )+"_VAL"          );
     556             COMPONENT_MAP(_component ,src , "in_GPR_READ_0_ACK"          , dest,"out_GPR_READ_"+toString(2*i  )+"_ACK"          );
    425557             if (_param->_have_port_ooo_engine_id)
    426              PORT_MAP(_component ,src ,"out_GPR_READ_0_OOO_ENGINE_ID", dest, "in_GPR_READ_"+toString(2*i  )+"_OOO_ENGINE_ID");
    427              PORT_MAP(_component ,src ,"out_GPR_READ_0_NUM_REG"      , dest, "in_GPR_READ_"+toString(2*i  )+"_NUM_REG"      );
    428              PORT_MAP(_component ,src , "in_GPR_READ_0_DATA"         , dest,"out_GPR_READ_"+toString(2*i  )+"_DATA"         );
    429              PORT_MAP(_component ,src , "in_GPR_READ_0_DATA_VAL"     , dest,"out_GPR_READ_"+toString(2*i  )+"_DATA_VAL"     );
    430              PORT_MAP(_component ,src ,"out_GPR_READ_1_VAL"          , dest, "in_GPR_READ_"+toString(2*i+1)+"_VAL"          );
    431              PORT_MAP(_component ,src , "in_GPR_READ_1_ACK"          , dest,"out_GPR_READ_"+toString(2*i+1)+"_ACK"          );
     558             COMPONENT_MAP(_component ,src ,"out_GPR_READ_0_OOO_ENGINE_ID", dest, "in_GPR_READ_"+toString(2*i  )+"_OOO_ENGINE_ID");
     559             COMPONENT_MAP(_component ,src ,"out_GPR_READ_0_NUM_REG"      , dest, "in_GPR_READ_"+toString(2*i  )+"_NUM_REG"      );
     560             COMPONENT_MAP(_component ,src , "in_GPR_READ_0_DATA"         , dest,"out_GPR_READ_"+toString(2*i  )+"_DATA"         );
     561             COMPONENT_MAP(_component ,src , "in_GPR_READ_0_DATA_VAL"     , dest,"out_GPR_READ_"+toString(2*i  )+"_DATA_VAL"     );
     562             COMPONENT_MAP(_component ,src ,"out_GPR_READ_1_VAL"          , dest, "in_GPR_READ_"+toString(2*i+1)+"_VAL"          );
     563             COMPONENT_MAP(_component ,src , "in_GPR_READ_1_ACK"          , dest,"out_GPR_READ_"+toString(2*i+1)+"_ACK"          );
    432564             if (_param->_have_port_ooo_engine_id)
    433              PORT_MAP(_component ,src ,"out_GPR_READ_1_OOO_ENGINE_ID", dest, "in_GPR_READ_"+toString(2*i+1)+"_OOO_ENGINE_ID");
    434              PORT_MAP(_component ,src ,"out_GPR_READ_1_NUM_REG"      , dest, "in_GPR_READ_"+toString(2*i+1)+"_NUM_REG"      );
    435              PORT_MAP(_component ,src , "in_GPR_READ_1_DATA"         , dest,"out_GPR_READ_"+toString(2*i+1)+"_DATA"         );
    436              PORT_MAP(_component ,src , "in_GPR_READ_1_DATA_VAL"     , dest,"out_GPR_READ_"+toString(2*i+1)+"_DATA_VAL"     );
     565             COMPONENT_MAP(_component ,src ,"out_GPR_READ_1_OOO_ENGINE_ID", dest, "in_GPR_READ_"+toString(2*i+1)+"_OOO_ENGINE_ID");
     566             COMPONENT_MAP(_component ,src ,"out_GPR_READ_1_NUM_REG"      , dest, "in_GPR_READ_"+toString(2*i+1)+"_NUM_REG"      );
     567             COMPONENT_MAP(_component ,src , "in_GPR_READ_1_DATA"         , dest,"out_GPR_READ_"+toString(2*i+1)+"_DATA"         );
     568             COMPONENT_MAP(_component ,src , "in_GPR_READ_1_DATA_VAL"     , dest,"out_GPR_READ_"+toString(2*i+1)+"_DATA_VAL"     );
    437569           }
    438570           
     
    442574#ifdef POSITION
    443575             _component->interface_map (src ,"spr_read_0",
    444                                         dest,"spr_read_"+toString(2*i  ));
    445 #endif
    446              PORT_MAP(_component ,src ,"out_SPR_READ_0_VAL"          , dest, "in_SPR_READ_"+toString(2*i  )+"_VAL"          );
    447              PORT_MAP(_component ,src , "in_SPR_READ_0_ACK"          , dest,"out_SPR_READ_"+toString(2*i  )+"_ACK"          );
     576                                        dest,"spr_read_"+toString(i));
     577#endif
     578             COMPONENT_MAP(_component ,src ,"out_SPR_READ_0_VAL"          , dest, "in_SPR_READ_"+toString(i)+"_VAL"          );
     579             COMPONENT_MAP(_component ,src , "in_SPR_READ_0_ACK"          , dest,"out_SPR_READ_"+toString(i)+"_ACK"          );
    448580             if (_param->_have_port_ooo_engine_id)
    449              PORT_MAP(_component ,src ,"out_SPR_READ_0_OOO_ENGINE_ID", dest, "in_SPR_READ_"+toString(2*i  )+"_OOO_ENGINE_ID");
    450              PORT_MAP(_component ,src ,"out_SPR_READ_0_NUM_REG"      , dest, "in_SPR_READ_"+toString(2*i  )+"_NUM_REG"      );
    451              PORT_MAP(_component ,src , "in_SPR_READ_0_DATA"         , dest,"out_SPR_READ_"+toString(2*i  )+"_DATA"         );
    452              PORT_MAP(_component ,src , "in_SPR_READ_0_DATA_VAL"     , dest,"out_SPR_READ_"+toString(2*i  )+"_DATA_VAL"     );
     581             COMPONENT_MAP(_component ,src ,"out_SPR_READ_0_OOO_ENGINE_ID", dest, "in_SPR_READ_"+toString(i)+"_OOO_ENGINE_ID");
     582             COMPONENT_MAP(_component ,src ,"out_SPR_READ_0_NUM_REG"      , dest, "in_SPR_READ_"+toString(i)+"_NUM_REG"      );
     583             COMPONENT_MAP(_component ,src , "in_SPR_READ_0_DATA"         , dest,"out_SPR_READ_"+toString(i)+"_DATA"         );
     584             COMPONENT_MAP(_component ,src , "in_SPR_READ_0_DATA_VAL"     , dest,"out_SPR_READ_"+toString(i)+"_DATA_VAL"     );
    453585           }
    454586           
     
    459591                it++)
    460592             {
    461                dest = _name+"_write_unit_"+toString(*it);
     593               uint32_t num_port = (*it);
     594
     595               dest = _name+"_glue";
    462596#ifdef POSITION
    463597               _component->interface_map (src ,"gpr_write_"+toString(it_gpr_write),
    464                                           dest,"gpr_write");
     598                                          dest,"gpr_write_read_unit_"+toString(num_port));
    465599#endif
    466600               
    467                PORT_MAP(_component ,src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_VAL"          ,
    468                                     dest,"out_GPR_WRITE_0_VAL"          );
     601               COMPONENT_MAP(_component ,src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_VAL"          ,
     602                                         dest,"out_GPR_WRITE_READ_UNIT_"+toString(num_port)+"_VAL"          );
    469603               if (_param->_have_port_ooo_engine_id)
    470                PORT_MAP(_component ,src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_OOO_ENGINE_ID",
    471                                     dest,"out_GPR_WRITE_0_OOO_ENGINE_ID");
    472                PORT_MAP(_component ,src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_NUM_REG"      ,
    473                                     dest,"out_GPR_WRITE_0_NUM_REG"      );
    474                PORT_MAP(_component ,src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_DATA"         ,
    475                                     dest,"out_GPR_WRITE_0_DATA"         );
    476 
    477                // PORT MAP to the "write_unit" component
    478 #ifdef POSITION
    479                _component->interface_map (dest,"gpr_write",
    480                                           src ,"gpr_write_"+toString(it_gpr_write));
    481 #endif
    482                
    483                PORT_MAP(_component ,dest,"out_GPR_WRITE_0_VAL"          ,
    484                                     src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_VAL"          );
    485                if (_param->_have_port_ooo_engine_id)
    486                PORT_MAP(_component ,dest,"out_GPR_WRITE_0_OOO_ENGINE_ID",
    487                                     src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_OOO_ENGINE_ID");
    488                PORT_MAP(_component ,dest,"out_GPR_WRITE_0_NUM_REG"      ,
    489                                     src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_NUM_REG"      );
    490                PORT_MAP(_component ,dest,"out_GPR_WRITE_0_DATA"         ,
    491                                     src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_DATA"         );
     604               COMPONENT_MAP(_component ,src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_OOO_ENGINE_ID",
     605                                         dest,"out_GPR_WRITE_READ_UNIT_"+toString(num_port)+"_OOO_ENGINE_ID");
     606               COMPONENT_MAP(_component ,src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_NUM_REG"      ,
     607                                         dest,"out_GPR_WRITE_READ_UNIT_"+toString(num_port)+"_NUM_REG"      );
     608               COMPONENT_MAP(_component ,src , "in_GPR_WRITE_"+toString(it_gpr_write)+"_DATA"         ,
     609                                         dest,"out_GPR_WRITE_READ_UNIT_"+toString(num_port)+"_DATA"         );
    492610               
    493611               it_gpr_write ++;
     
    500618                it++)
    501619             {
    502                dest = _name+"_write_unit_"+toString(*it);
     620               uint32_t num_port = (*it);
     621
     622               dest = _name+"_glue";
    503623#ifdef POSITION
    504624               _component->interface_map (src ,"spr_write_"+toString(it_spr_write),
    505                                           dest,"spr_write");
     625                                          dest,"spr_write_read_unit_"+toString(num_port));
    506626#endif
    507627               
    508                PORT_MAP(_component ,src , "in_SPR_WRITE_"+toString(it_spr_write)+"_VAL"          ,
    509                                     dest,"out_SPR_WRITE_0_VAL"          );
     628               COMPONENT_MAP(_component ,src , "in_SPR_WRITE_"+toString(it_spr_write)+"_VAL"          ,
     629                                         dest,"out_SPR_WRITE_READ_UNIT_"+toString(num_port)+"_VAL"          );
     630
    510631               if (_param->_have_port_ooo_engine_id)
    511                PORT_MAP(_component ,src , "in_SPR_WRITE_"+toString(it_spr_write)+"_OOO_ENGINE_ID",
    512                                     dest,"out_SPR_WRITE_0_OOO_ENGINE_ID");
    513                PORT_MAP(_component ,src , "in_SPR_WRITE_"+toString(it_spr_write)+"_NUM_REG"      ,
    514                                     dest,"out_SPR_WRITE_0_NUM_REG"      );
    515                PORT_MAP(_component ,src , "in_SPR_WRITE_"+toString(it_spr_write)+"_DATA"         ,
    516                                     dest,"out_SPR_WRITE_0_DATA"         );
    517 
    518                // PORT MAP to the "write_unit" component
    519 #ifdef POSITION
    520                _component->interface_map (dest,"spr_write",
    521                                           src ,"spr_write_"+toString(it_spr_write));
    522 #endif
    523                PORT_MAP(_component ,dest,"out_SPR_WRITE_0_VAL"          ,
    524                                     src , "in_SPR_WRITE_"+toString(it_spr_write)+"_VAL"          );
    525                if (_param->_have_port_ooo_engine_id)
    526                PORT_MAP(_component ,dest,"out_SPR_WRITE_0_OOO_ENGINE_ID",
    527                                     src , "in_SPR_WRITE_"+toString(it_spr_write)+"_OOO_ENGINE_ID");
    528                PORT_MAP(_component ,dest,"out_SPR_WRITE_0_NUM_REG"      ,
    529                                     src , "in_SPR_WRITE_"+toString(it_spr_write)+"_NUM_REG"      );
    530                PORT_MAP(_component ,dest,"out_SPR_WRITE_0_DATA"         ,
    531                                     src , "in_SPR_WRITE_"+toString(it_spr_write)+"_DATA"         );
    532 
     632               COMPONENT_MAP(_component ,src , "in_SPR_WRITE_"+toString(it_spr_write)+"_OOO_ENGINE_ID",
     633                                         dest,"out_SPR_WRITE_READ_UNIT_"+toString(num_port)+"_OOO_ENGINE_ID");
     634               COMPONENT_MAP(_component ,src , "in_SPR_WRITE_"+toString(it_spr_write)+"_NUM_REG"      ,
     635                                         dest,"out_SPR_WRITE_READ_UNIT_"+toString(num_port)+"_NUM_REG"      );
     636               COMPONENT_MAP(_component ,src , "in_SPR_WRITE_"+toString(it_spr_write)+"_DATA"         ,
     637                                         dest,"out_SPR_WRITE_READ_UNIT_"+toString(num_port)+"_DATA"         );
     638               
    533639               it_spr_write ++;
    534640             }
     
    550656                   
    551657                   if (_param->_have_port_ooo_engine_id)
    552                    PORT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_OOO_ENGINE_ID",
    553                                         dest,"out_BYPASS_WRITE_"+toString(j              )+"_OOO_ENGINE_ID");
    554                    PORT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_VAL"      ,
    555                                         dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_VAL"      );
    556                    PORT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_NUM_REG"  ,
    557                                         dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_NUM_REG"  );
    558                    PORT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_DATA"     ,
    559                                         dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_DATA"     );
    560                    PORT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_VAL"      ,
    561                                         dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_VAL"      );
    562                    PORT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_NUM_REG"  ,
    563                                         dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_NUM_REG"  );
    564                    PORT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_DATA"     ,
    565                                         dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_DATA"     );
     658                   COMPONENT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_OOO_ENGINE_ID",
     659                                             dest,"out_BYPASS_WRITE_"+toString(j              )+"_OOO_ENGINE_ID");
     660                   COMPONENT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_VAL"      ,
     661                                             dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_VAL"      );
     662                   COMPONENT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_NUM_REG"  ,
     663                                             dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_NUM_REG"  );
     664                   COMPONENT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_DATA"     ,
     665                                             dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_DATA"     );
     666                   COMPONENT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_VAL"      ,
     667                                             dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_VAL"      );
     668                   COMPONENT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_NUM_REG"  ,
     669                                             dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_NUM_REG"  );
     670                   COMPONENT_MAP(_component ,src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_DATA"     ,
     671                                             dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_DATA"     );
    566672
    567673#ifdef POSITION
     
    570676#endif
    571677                   
    572                    if (_param->_have_port_ooo_engine_id)
    573                    PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_OOO_ENGINE_ID",
    574                                         src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_OOO_ENGINE_ID");
    575                    PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_VAL"      ,
    576                                         src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_VAL"      );
    577                    PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_NUM_REG"  ,
    578                                         src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_NUM_REG"  );
    579                    PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_DATA"     ,
    580                                         src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_DATA"     );
    581                    PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_VAL"      ,
    582                                         src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_VAL"      );
    583                    PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_NUM_REG"  ,
    584                                         src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_NUM_REG"  );
    585                    PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_DATA"     ,
    586                                         src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_DATA"     );
     678//                 if (_param->_have_port_ooo_engine_id)
     679//                 PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_OOO_ENGINE_ID",
     680//                                      src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_OOO_ENGINE_ID");
     681//                 PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_VAL"      ,
     682//                                      src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_VAL"      );
     683//                 PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_NUM_REG"  ,
     684//                                      src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_NUM_REG"  );
     685//                 PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_GPR_DATA"     ,
     686//                                      src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_GPR_DATA"     );
     687//                 PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_VAL"      ,
     688//                                      src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_VAL"      );
     689//                 PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_NUM_REG"  ,
     690//                                      src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_NUM_REG"  );
     691//                 PORT_MAP(_component ,dest,"out_BYPASS_WRITE_"+toString(j              )+"_SPR_DATA"     ,
     692//                                      src , "in_BYPASS_WRITE_"+toString(it_bypass_write)+"_SPR_DATA"     );
    587693
    588694                   it_bypass_write ++;
     
    606712                   
    607713                   if (_param->_have_port_ooo_engine_id)
    608                    PORT_MAP(_component ,src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_OOO_ENGINE_ID",
    609                                         dest,"out_BYPASS_MEMORY_"+toString(j               )+"_OOO_ENGINE_ID");
    610                    PORT_MAP(_component ,src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_VAL"          ,
    611                                         dest,"out_BYPASS_MEMORY_"+toString(j               )+"_VAL"          );
    612                    PORT_MAP(_component ,src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_NUM_REG"      ,
    613                                         dest,"out_BYPASS_MEMORY_"+toString(j               )+"_NUM_REG"      );
    614                    PORT_MAP(_component ,src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_DATA"         ,
    615                                         dest,"out_BYPASS_MEMORY_"+toString(j               )+"_DATA"         );
     714                   COMPONENT_MAP(_component ,src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_OOO_ENGINE_ID",
     715                                             dest,"out_BYPASS_MEMORY_"+toString(j               )+"_OOO_ENGINE_ID");
     716                   COMPONENT_MAP(_component ,src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_VAL"          ,
     717                                             dest,"out_BYPASS_MEMORY_"+toString(j               )+"_VAL"          );
     718                   COMPONENT_MAP(_component ,src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_NUM_REG"      ,
     719                                             dest,"out_BYPASS_MEMORY_"+toString(j               )+"_NUM_REG"      );
     720                   COMPONENT_MAP(_component ,src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_DATA"         ,
     721                                             dest,"out_BYPASS_MEMORY_"+toString(j               )+"_DATA"         );
    616722
    617723                   // port map to the "load_store_unit" component
     
    621727#endif
    622728                   
    623                    if (_param->_have_port_ooo_engine_id)
    624                    PORT_MAP(_component ,dest,"out_BYPASS_MEMORY_"+toString(j               )+"_OOO_ENGINE_ID",
    625                                         src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_OOO_ENGINE_ID");
    626                    PORT_MAP(_component ,dest,"out_BYPASS_MEMORY_"+toString(j               )+"_VAL"          ,
    627                                         src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_VAL"          );
    628                    PORT_MAP(_component ,dest,"out_BYPASS_MEMORY_"+toString(j               )+"_NUM_REG"      ,
    629                                         src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_NUM_REG"      );
    630                    PORT_MAP(_component ,dest,"out_BYPASS_MEMORY_"+toString(j               )+"_DATA"         ,
    631                                         src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_DATA"         );
     729//                 if (_param->_have_port_ooo_engine_id)
     730//                 PORT_MAP(_component ,dest,"out_BYPASS_MEMORY_"+toString(j               )+"_OOO_ENGINE_ID",
     731//                                      src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_OOO_ENGINE_ID");
     732//                 PORT_MAP(_component ,dest,"out_BYPASS_MEMORY_"+toString(j               )+"_VAL"          ,
     733//                                      src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_VAL"          );
     734//                 PORT_MAP(_component ,dest,"out_BYPASS_MEMORY_"+toString(j               )+"_NUM_REG"      ,
     735//                                      src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_NUM_REG"      );
     736//                 PORT_MAP(_component ,dest,"out_BYPASS_MEMORY_"+toString(j               )+"_DATA"         ,
     737//                                      src , "in_BYPASS_MEMORY_"+toString(it_bypass_memory)+"_DATA"         );
    632738
    633739                   it_bypass_memory ++;
     
    651757
    652758             src = _name+"_functionnal_unit_"+toString(x);
    653              std::cout << "Instance : " << src << std::endl;
     759             log_printf(INFO,Core,FUNCTION,_("Instance : %s"),src.c_str());
    654760             
    655761             {
     
    669775#ifdef POSITION
    670776               _component->interface_map (src ,"execute_in",
    671                                           dest,"execute_unit_in_"+toString(i));
    672 #endif
    673 
    674                PORT_MAP(_component ,src , "in_EXECUTE_IN_VAL"                  ,
    675                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_VAL"                  );
    676                PORT_MAP(_component ,src ,"out_EXECUTE_IN_ACK"                  ,
    677                                     dest, "in_EXECUTE_UNIT_IN_"+toString(i)+"_ACK"                  );
     777                                          dest,"execute_unit_in_"+toString(i)+"_0");
     778#endif
     779
     780               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_VAL"                  ,
     781                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_VAL"                  );
     782               COMPONENT_MAP(_component ,src ,"out_EXECUTE_IN_ACK"                  ,
     783                                         dest, "in_EXECUTE_UNIT_IN_"+toString(i)+"_0_ACK"                  );
    678784               if (_param->_have_port_context_id)
    679                PORT_MAP(_component ,src , "in_EXECUTE_IN_CONTEXT_ID"           ,
    680                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"           );
     785               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_CONTEXT_ID"           ,
     786                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_CONTEXT_ID"           );
    681787               if (_param->_have_port_front_end_id)
    682                PORT_MAP(_component ,src , "in_EXECUTE_IN_FRONT_END_ID"         ,
    683                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_FRONT_END_ID"         );
     788               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_FRONT_END_ID"         ,
     789                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_FRONT_END_ID"         );
    684790               if (_param->_have_port_ooo_engine_id)
    685                PORT_MAP(_component ,src , "in_EXECUTE_IN_OOO_ENGINE_ID"        ,
    686                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID"        );
    687                if (_param->_have_port_packet_id)
    688                PORT_MAP(_component ,src , "in_EXECUTE_IN_PACKET_ID"            ,
    689                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_PACKET_ID"            );
    690                PORT_MAP(_component ,src , "in_EXECUTE_IN_OPERATION"            ,
    691                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OPERATION"            );
    692                PORT_MAP(_component ,src , "in_EXECUTE_IN_TYPE"                 ,
    693                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_TYPE"                 );
    694                PORT_MAP(_component ,src , "in_EXECUTE_IN_STORE_QUEUE_PTR_WRITE",
    695                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_STORE_QUEUE_PTR_WRITE");
     791               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_OOO_ENGINE_ID"        ,
     792                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_OOO_ENGINE_ID"        );
     793               if (_param->_have_port_rob_ptr  )
     794               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_PACKET_ID"            ,
     795                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_PACKET_ID"            );
     796               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_OPERATION"            ,
     797                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_OPERATION"            );
     798               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_TYPE"                 ,
     799                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_TYPE"                 );
     800               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_STORE_QUEUE_PTR_WRITE",
     801                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_STORE_QUEUE_PTR_WRITE");
    696802               if (_param->_have_port_load_queue_ptr)
    697                PORT_MAP(_component ,src , "in_EXECUTE_IN_LOAD_QUEUE_PTR_WRITE" ,
    698                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_LOAD_QUEUE_PTR_WRITE" );
    699                PORT_MAP(_component ,src , "in_EXECUTE_IN_HAS_IMMEDIAT"         ,
    700                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_HAS_IMMEDIAT"         );
    701                PORT_MAP(_component ,src , "in_EXECUTE_IN_IMMEDIAT"             ,
    702                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_IMMEDIAT"             );
    703                PORT_MAP(_component ,src , "in_EXECUTE_IN_DATA_RA"              ,
    704                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RA"              );
    705                PORT_MAP(_component ,src , "in_EXECUTE_IN_DATA_RB"              ,
    706                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RB"              );
    707                PORT_MAP(_component ,src , "in_EXECUTE_IN_DATA_RC"              ,
    708                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RC"              );
    709                PORT_MAP(_component ,src , "in_EXECUTE_IN_WRITE_RD"             ,
    710                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RD"             );
    711                PORT_MAP(_component ,src , "in_EXECUTE_IN_NUM_REG_RD"           ,
    712                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"           );
    713                PORT_MAP(_component ,src , "in_EXECUTE_IN_WRITE_RE"             ,
    714                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RE"             );
    715                PORT_MAP(_component ,src , "in_EXECUTE_IN_NUM_REG_RE"           ,
    716                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"           );
     803               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_LOAD_QUEUE_PTR_WRITE" ,
     804                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_LOAD_QUEUE_PTR_WRITE" );
     805               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_HAS_IMMEDIAT"         ,
     806                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_HAS_IMMEDIAT"         );
     807               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_IMMEDIAT"             ,
     808                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_IMMEDIAT"             );
     809               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_DATA_RA"              ,
     810                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_DATA_RA"              );
     811               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_DATA_RB"              ,
     812                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_DATA_RB"              );
     813               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_DATA_RC"              ,
     814                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_DATA_RC"              );
     815               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_WRITE_RD"             ,
     816                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_WRITE_RD"             );
     817               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_NUM_REG_RD"           ,
     818                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_NUM_REG_RD"           );
     819               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_WRITE_RE"             ,
     820                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_WRITE_RE"             );
     821               COMPONENT_MAP(_component ,src , "in_EXECUTE_IN_NUM_REG_RE"           ,
     822                                         dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_0_NUM_REG_RE"           );
    717823             }
    718824             
     
    723829#ifdef POSITION
    724830               _component->interface_map (src ,"execute_out",
    725                                           dest,"execute_unit_out_"+toString(i));
    726 #endif
    727 
    728                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_VAL"          ,
    729                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_VAL"          );
    730                PORT_MAP(_component ,src , "in_EXECUTE_OUT_ACK"          ,
    731                                     dest,"out_EXECUTE_UNIT_OUT_"+toString(i)+"_ACK"          );
     831                                          dest,"execute_unit_out_"+toString(i)+"_0");
     832#endif
     833
     834               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_VAL"          ,
     835                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_VAL"          );
     836               COMPONENT_MAP(_component ,src , "in_EXECUTE_OUT_ACK"          ,
     837                                         dest,"out_EXECUTE_UNIT_OUT_"+toString(i)+"_0_ACK"          );
    732838               if (_param->_have_port_context_id)
    733                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_CONTEXT_ID"   ,
    734                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_CONTEXT_ID"   );
     839               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_CONTEXT_ID"   ,
     840                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_CONTEXT_ID"   );
    735841               if (_param->_have_port_front_end_id)
    736                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_FRONT_END_ID" ,
    737                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_FRONT_END_ID" );
     842               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_FRONT_END_ID" ,
     843                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_FRONT_END_ID" );
    738844               if (_param->_have_port_ooo_engine_id)
    739                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_OOO_ENGINE_ID",
    740                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OOO_ENGINE_ID");
    741                if (_param->_have_port_packet_id)
    742                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_PACKET_ID"    ,
    743                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_PACKET_ID"    );
    744 //             PORT_MAP(_component ,src ,"out_EXECUTE_OUT_OPERATION"    ,
    745 //                                  dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OPERATION"    );
    746                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_TYPE"         ,
    747                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_TYPE"         );
    748                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_WRITE_RD"     ,
    749                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RD"     );
    750                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_NUM_REG_RD"   ,
    751                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RD"   );
    752                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_DATA_RD"      ,
    753                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RD"      );
    754                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_WRITE_RE"     ,
    755                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RE"     );
    756                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_NUM_REG_RE"   ,
    757                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RE"   );
    758                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_DATA_RE"      ,
    759                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RE"      );
    760                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_EXCEPTION"    ,
    761                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_EXCEPTION"    );
    762                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_NO_SEQUENCE"  ,
    763                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NO_SEQUENCE"  );
    764                PORT_MAP(_component ,src ,"out_EXECUTE_OUT_ADDRESS"      ,
    765                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_ADDRESS"      );
     845               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_OOO_ENGINE_ID",
     846                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_OOO_ENGINE_ID");
     847               if (_param->_have_port_rob_ptr  )
     848               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_PACKET_ID"    ,
     849                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_PACKET_ID"    );
     850//             COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_OPERATION"    ,
     851//                                       dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_OPERATION"    );
     852               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_TYPE"         ,
     853                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_TYPE"         );
     854               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_WRITE_RD"     ,
     855                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_WRITE_RD"     );
     856               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_NUM_REG_RD"   ,
     857                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_NUM_REG_RD"   );
     858               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_DATA_RD"      ,
     859                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_DATA_RD"      );
     860               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_WRITE_RE"     ,
     861                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_WRITE_RE"     );
     862               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_NUM_REG_RE"   ,
     863                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_NUM_REG_RE"   );
     864               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_DATA_RE"      ,
     865                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_DATA_RE"      );
     866               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_EXCEPTION"    ,
     867                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_EXCEPTION"    );
     868               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_NO_SEQUENCE"  ,
     869                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_NO_SEQUENCE"  );
     870               COMPONENT_MAP(_component ,src ,"out_EXECUTE_OUT_ADDRESS"      ,
     871                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_0_ADDRESS"      );
    766872             }
    767873           }
     
    773879 
    774880             src = _name+"_load_store_unit_"+toString(x);
    775              std::cout << "Instance : " << src << std::endl;
     881             log_printf(INFO,Core,FUNCTION,_("Instance : %s"),src.c_str());
    776882
    777883             // ~~~~~[ Interface "" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     
    787893         
    788894             // ~~~~~[ Interface "memory_in" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    789              {
    790                dest = _name+"_read_unit_to_execution_unit";
    791 
    792 #ifdef POSITION
    793                _component->interface_map (src ,"memory_in",
    794                                           dest,"execute_unit_in_"+toString(i));
    795 #endif
    796 
    797                PORT_MAP(_component ,src , "in_MEMORY_IN_VAL"                  ,
    798                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_VAL"                  );
    799                PORT_MAP(_component ,src ,"out_MEMORY_IN_ACK"                  ,
    800                                     dest, "in_EXECUTE_UNIT_IN_"+toString(i)+"_ACK"                  );
    801                if (_param->_have_port_context_id)
    802                PORT_MAP(_component ,src , "in_MEMORY_IN_CONTEXT_ID"           ,
    803                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"           );
    804                if (_param->_have_port_front_end_id)
    805                PORT_MAP(_component ,src , "in_MEMORY_IN_FRONT_END_ID"         ,
    806                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_FRONT_END_ID"         );
    807                if (_param->_have_port_ooo_engine_id)
    808                PORT_MAP(_component ,src , "in_MEMORY_IN_OOO_ENGINE_ID"        ,
    809                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID"        );
    810                if (_param->_have_port_packet_id)
    811                PORT_MAP(_component ,src , "in_MEMORY_IN_PACKET_ID"            ,
    812                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_PACKET_ID"            );
    813                PORT_MAP(_component ,src , "in_MEMORY_IN_OPERATION"            ,
    814                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OPERATION"            );
    815                PORT_MAP(_component ,src , "in_MEMORY_IN_TYPE"                 ,
    816                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_TYPE"                 );
    817                PORT_MAP(_component ,src , "in_MEMORY_IN_STORE_QUEUE_PTR_WRITE",
    818                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_STORE_QUEUE_PTR_WRITE");
    819                if (_param->_have_port_load_queue_ptr)
    820                PORT_MAP(_component ,src , "in_MEMORY_IN_LOAD_QUEUE_PTR_WRITE" ,
    821                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_LOAD_QUEUE_PTR_WRITE" );
    822                PORT_MAP(_component ,src , "in_MEMORY_IN_HAS_IMMEDIAT"         ,
    823                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_HAS_IMMEDIAT"         );
    824                PORT_MAP(_component ,src , "in_MEMORY_IN_IMMEDIAT"             ,
    825                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_IMMEDIAT"             );
    826                PORT_MAP(_component ,src , "in_MEMORY_IN_DATA_RA"              ,
    827                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RA"              );
    828                PORT_MAP(_component ,src , "in_MEMORY_IN_DATA_RB"              ,
    829                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RB"              );
    830                PORT_MAP(_component ,src , "in_MEMORY_IN_DATA_RC"              ,
    831                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RC"              );
    832                PORT_MAP(_component ,src , "in_MEMORY_IN_WRITE_RD"             ,
    833                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RD"             );
    834                PORT_MAP(_component ,src , "in_MEMORY_IN_NUM_REG_RD"           ,
    835                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"           );
    836                PORT_MAP(_component ,src , "in_MEMORY_IN_WRITE_RE"             ,
    837                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RE"             );
    838                PORT_MAP(_component ,src , "in_MEMORY_IN_NUM_REG_RE"           ,
    839                                     dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"           );
    840              }
     895             for (uint32_t j=0; j<_param->_nb_inst_memory [x]; j++)
     896               {
     897                 dest = _name+"_read_unit_to_execution_unit";
     898                 
     899#ifdef POSITION
     900                 _component->interface_map (src ,"memory_in_"+toString(j),
     901                                            dest,"execute_unit_in_"+toString(i)+"_"+toString(j));
     902#endif
     903
     904                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_VAL"                  ,
     905                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_VAL"                  );
     906                 COMPONENT_MAP(_component ,src ,"out_MEMORY_IN_"+toString(j)+"_ACK"                  ,
     907                                           dest, "in_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_ACK"                  );
     908                 if (_param->_have_port_context_id)
     909                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_CONTEXT_ID"           ,
     910                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_CONTEXT_ID"           );
     911                 if (_param->_have_port_front_end_id)
     912                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_FRONT_END_ID"         ,
     913                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_FRONT_END_ID"         );
     914                 if (_param->_have_port_ooo_engine_id)
     915                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_OOO_ENGINE_ID"        ,
     916                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_OOO_ENGINE_ID"        );
     917                 if (_param->_have_port_rob_ptr  )
     918                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_PACKET_ID"            ,
     919                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_PACKET_ID"            );
     920                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_OPERATION"            ,
     921                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_OPERATION"            );
     922                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_TYPE"                 ,
     923                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_TYPE"                 );
     924                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_STORE_QUEUE_PTR_WRITE",
     925                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_STORE_QUEUE_PTR_WRITE");
     926                 if (_param->_have_port_load_queue_ptr)
     927                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_LOAD_QUEUE_PTR_WRITE" ,
     928                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_LOAD_QUEUE_PTR_WRITE" );
     929                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_HAS_IMMEDIAT"         ,
     930                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_HAS_IMMEDIAT"         );
     931                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_IMMEDIAT"             ,
     932                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_IMMEDIAT"             );
     933                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_DATA_RA"              ,
     934                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_DATA_RA"              );
     935                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_DATA_RB"              ,
     936                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_DATA_RB"              );
     937                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_DATA_RC"              ,
     938                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_DATA_RC"              );
     939                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_WRITE_RD"             ,
     940                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_WRITE_RD"             );
     941                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_NUM_REG_RD"           ,
     942                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_NUM_REG_RD"           );
     943                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_WRITE_RE"             ,
     944                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_WRITE_RE"             );
     945                 COMPONENT_MAP(_component ,src , "in_MEMORY_IN_"+toString(j)+"_NUM_REG_RE"           ,
     946                                           dest,"out_EXECUTE_UNIT_IN_"+toString(i)+"_"+toString(j)+"_NUM_REG_RE"           );
     947               }
    841948
    842949             // ~~~~~[ Interface "memory_out" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    843              {
     950             for (uint32_t j=0; j<_param->_nb_inst_memory [x]; j++)
     951               {
    844952               dest = _name+"_execution_unit_to_write_unit";
    845953               
    846954#ifdef POSITION
    847                _component->interface_map (src ,"memory_out",
    848                                           dest,"execute_unit_out_"+toString(i));
    849 #endif
    850 
    851                PORT_MAP(_component ,src ,"out_MEMORY_OUT_VAL"          ,
    852                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_VAL"          );
    853                PORT_MAP(_component ,src , "in_MEMORY_OUT_ACK"          ,
    854                                     dest,"out_EXECUTE_UNIT_OUT_"+toString(i)+"_ACK"          );
     955               _component->interface_map (src ,"memory_out_"+toString(j)
     956                                          dest,"execute_unit_out_"+toString(i)+"_"+toString(j));
     957#endif
     958
     959               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_VAL"          ,
     960                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_VAL"          );
     961               COMPONENT_MAP(_component ,src , "in_MEMORY_OUT_"+toString(j)+"_ACK"          ,
     962                                         dest,"out_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_ACK"          );
    855963               if (_param->_have_port_context_id)
    856                PORT_MAP(_component ,src ,"out_MEMORY_OUT_CONTEXT_ID"   ,
    857                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_CONTEXT_ID"   );
     964               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_CONTEXT_ID"   ,
     965                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_CONTEXT_ID"   );
    858966               if (_param->_have_port_front_end_id)
    859                PORT_MAP(_component ,src ,"out_MEMORY_OUT_FRONT_END_ID" ,
    860                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_FRONT_END_ID" );
     967               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_FRONT_END_ID" ,
     968                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_FRONT_END_ID" );
    861969               if (_param->_have_port_ooo_engine_id)
    862                PORT_MAP(_component ,src ,"out_MEMORY_OUT_OOO_ENGINE_ID",
    863                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OOO_ENGINE_ID");
    864                if (_param->_have_port_packet_id)
    865                PORT_MAP(_component ,src ,"out_MEMORY_OUT_PACKET_ID"    ,
    866                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_PACKET_ID"    );
    867 //             PORT_MAP(_component ,src ,"out_MEMORY_OUT_OPERATION"    ,
    868 //                                  dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OPERATION"    );
    869                PORT_MAP(_component ,src ,"out_MEMORY_OUT_TYPE"         ,
    870                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_TYPE"         );
    871                PORT_MAP(_component ,src ,"out_MEMORY_OUT_WRITE_RD"     ,
    872                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RD"     );
    873                PORT_MAP(_component ,src ,"out_MEMORY_OUT_NUM_REG_RD"   ,
    874                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RD"   );
    875                PORT_MAP(_component ,src ,"out_MEMORY_OUT_DATA_RD"      ,
    876                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RD"      );
    877                PORT_MAP(_component ,src ,"out_MEMORY_OUT_WRITE_RE"     ,
    878                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RE"     );
    879                PORT_MAP(_component ,src ,"out_MEMORY_OUT_NUM_REG_RE"   ,
    880                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RE"   );
    881                PORT_MAP(_component ,src ,"out_MEMORY_OUT_DATA_RE"      ,
    882                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RE"      );
    883                PORT_MAP(_component ,src ,"out_MEMORY_OUT_EXCEPTION"    ,
    884                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_EXCEPTION"    );
    885                PORT_MAP(_component ,src ,"out_MEMORY_OUT_NO_SEQUENCE"  ,
    886                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NO_SEQUENCE"  );
    887                PORT_MAP(_component ,src ,"out_MEMORY_OUT_ADDRESS"      ,
    888                                     dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_ADDRESS"      );
     970               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_OOO_ENGINE_ID",
     971                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_OOO_ENGINE_ID");
     972               if (_param->_have_port_rob_ptr  )
     973               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_PACKET_ID"    ,
     974                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_PACKET_ID"    );
     975//             COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_OPERATION"    ,
     976//                                       dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_OPERATION"    );
     977               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_TYPE"         ,
     978                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_TYPE"         );
     979               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_WRITE_RD"     ,
     980                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_WRITE_RD"     );
     981               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_NUM_REG_RD"   ,
     982                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_NUM_REG_RD"   );
     983               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_DATA_RD"      ,
     984                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_DATA_RD"      );
     985               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_WRITE_RE"     ,
     986                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_WRITE_RE"     );
     987               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_NUM_REG_RE"   ,
     988                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_NUM_REG_RE"   );
     989               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_DATA_RE"      ,
     990                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_DATA_RE"      );
     991               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_EXCEPTION"    ,
     992                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_EXCEPTION"    );
     993               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_NO_SEQUENCE"  ,
     994                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_NO_SEQUENCE"  );
     995               COMPONENT_MAP(_component ,src ,"out_MEMORY_OUT_"+toString(j)+"_ADDRESS"      ,
     996                                         dest, "in_EXECUTE_UNIT_OUT_"+toString(i)+"_"+toString(j)+"_ADDRESS"      );
    889997             }
    890 
     998             
    891999             // ~~~~~[ Interface "dcache_req" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     1000             for (uint32_t j=0; j<_param->_nb_cache_port [x]; j++)
    8921001             {
    8931002               dest = _name;
    8941003               
    8951004#ifdef POSITION
    896                _component->interface_map (src ,"dcache_req",
    897                                           dest,"dcache_req_"+toString(i));
    898 #endif
    899                PORT_MAP(_component ,src ,"out_DCACHE_REQ_VAL"       ,dest,"out_DCACHE_REQ_"+toString(i)+"_VAL"       );
    900                PORT_MAP(_component ,src , "in_DCACHE_REQ_ACK"       ,dest, "in_DCACHE_REQ_"+toString(i)+"_ACK"       );
     1005               _component->interface_map (src ,"dcache_req_"+toString(j),
     1006                                          dest,"dcache_req_"+toString(x)+"_"+toString(j));
     1007#endif
     1008               PORT_MAP(_component ,src ,"out_DCACHE_REQ_"+toString(j)+"_VAL"       ,dest,"out_DCACHE_REQ_"+toString(x)+"_"+toString(j)+"_VAL"       );
     1009               PORT_MAP(_component ,src , "in_DCACHE_REQ_"+toString(j)+"_ACK"       ,dest, "in_DCACHE_REQ_"+toString(x)+"_"+toString(j)+"_ACK"       );
    9011010               if (_param->_have_port_dcache_context_id)
    902                PORT_MAP(_component ,src ,"out_DCACHE_REQ_CONTEXT_ID",dest,"out_DCACHE_REQ_"+toString(i)+"_CONTEXT_ID");
    903                PORT_MAP(_component ,src ,"out_DCACHE_REQ_PACKET_ID" ,dest,"out_DCACHE_REQ_"+toString(i)+"_PACKET_ID" );
    904                PORT_MAP(_component ,src ,"out_DCACHE_REQ_ADDRESS"   ,dest,"out_DCACHE_REQ_"+toString(i)+"_ADDRESS"   );
    905                PORT_MAP(_component ,src ,"out_DCACHE_REQ_TYPE"      ,dest,"out_DCACHE_REQ_"+toString(i)+"_TYPE"      );
    906                PORT_MAP(_component ,src ,"out_DCACHE_REQ_WDATA"     ,dest,"out_DCACHE_REQ_"+toString(i)+"_WDATA"     );
     1011               PORT_MAP(_component ,src ,"out_DCACHE_REQ_"+toString(j)+"_CONTEXT_ID",dest,"out_DCACHE_REQ_"+toString(x)+"_"+toString(j)+"_CONTEXT_ID");
     1012               PORT_MAP(_component ,src ,"out_DCACHE_REQ_"+toString(j)+"_PACKET_ID" ,dest,"out_DCACHE_REQ_"+toString(x)+"_"+toString(j)+"_PACKET_ID" );
     1013               PORT_MAP(_component ,src ,"out_DCACHE_REQ_"+toString(j)+"_ADDRESS"   ,dest,"out_DCACHE_REQ_"+toString(x)+"_"+toString(j)+"_ADDRESS"   );
     1014               PORT_MAP(_component ,src ,"out_DCACHE_REQ_"+toString(j)+"_TYPE"      ,dest,"out_DCACHE_REQ_"+toString(x)+"_"+toString(j)+"_TYPE"      );
     1015               PORT_MAP(_component ,src ,"out_DCACHE_REQ_"+toString(j)+"_WDATA"     ,dest,"out_DCACHE_REQ_"+toString(x)+"_"+toString(j)+"_WDATA"     );
    9071016             }
    9081017
    9091018             // ~~~~~[ Interface "dcache_rsp" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     1019             for (uint32_t j=0; j<_param->_nb_cache_port [x]; j++)
    9101020             {
    9111021               dest = _name;
    9121022               
    9131023#ifdef POSITION
    914                _component->interface_map (src ,"dcache_rsp",
    915                                           dest,"dcache_rsp_"+toString(i));
    916 #endif
    917                PORT_MAP(_component ,src , "in_DCACHE_RSP_VAL"       ,dest, "in_DCACHE_RSP_"+toString(i)+"_VAL"       );
    918                PORT_MAP(_component ,src ,"out_DCACHE_RSP_ACK"       ,dest,"out_DCACHE_RSP_"+toString(i)+"_ACK"       );
     1024               _component->interface_map (src ,"dcache_rsp_"+toString(j),
     1025                                          dest,"dcache_rsp_"+toString(x)+"_"+toString(j));
     1026#endif
     1027               PORT_MAP(_component ,src , "in_DCACHE_RSP_"+toString(j)+"_VAL"       ,dest, "in_DCACHE_RSP_"+toString(x)+"_"+toString(j)+"_VAL"       );
     1028               PORT_MAP(_component ,src ,"out_DCACHE_RSP_"+toString(j)+"_ACK"       ,dest,"out_DCACHE_RSP_"+toString(x)+"_"+toString(j)+"_ACK"       );
    9191029               if (_param->_have_port_dcache_context_id)
    920                PORT_MAP(_component ,src , "in_DCACHE_RSP_CONTEXT_ID",dest, "in_DCACHE_RSP_"+toString(i)+"_CONTEXT_ID");
    921                PORT_MAP(_component ,src , "in_DCACHE_RSP_PACKET_ID" ,dest, "in_DCACHE_RSP_"+toString(i)+"_PACKET_ID" );
    922                PORT_MAP(_component ,src , "in_DCACHE_RSP_RDATA"     ,dest, "in_DCACHE_RSP_"+toString(i)+"_RDATA"     );
    923                PORT_MAP(_component ,src , "in_DCACHE_RSP_ERROR"     ,dest, "in_DCACHE_RSP_"+toString(i)+"_ERROR"     );
     1030               PORT_MAP(_component ,src , "in_DCACHE_RSP_"+toString(j)+"_CONTEXT_ID",dest, "in_DCACHE_RSP_"+toString(x)+"_"+toString(j)+"_CONTEXT_ID");
     1031               PORT_MAP(_component ,src , "in_DCACHE_RSP_"+toString(j)+"_PACKET_ID" ,dest, "in_DCACHE_RSP_"+toString(x)+"_"+toString(j)+"_PACKET_ID" );
     1032               PORT_MAP(_component ,src , "in_DCACHE_RSP_"+toString(j)+"_RDATA"     ,dest, "in_DCACHE_RSP_"+toString(x)+"_"+toString(j)+"_RDATA"     );
     1033               PORT_MAP(_component ,src , "in_DCACHE_RSP_"+toString(j)+"_ERROR"     ,dest, "in_DCACHE_RSP_"+toString(x)+"_"+toString(j)+"_ERROR"     );
    9241034             }
    9251035
     
    9371047       {
    9381048         src = _name+"_write_unit_"+toString(i);
    939          std::cout << "Instance : " << src << std::endl;
     1049         log_printf(INFO,Core,FUNCTION,_("Instance : %s"),src.c_str());
    9401050         
    9411051         {
     
    9571067#endif
    9581068           
    959            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_VAL"          ,
    960                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_VAL"          );
    961            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_ACK"          ,
    962                                 dest, "in_WRITE_UNIT_IN_"+toString(i)+"_ACK"          );
     1069           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_VAL"          ,
     1070                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_VAL"          );
     1071           COMPONENT_MAP(_component ,src ,"out_WRITE_UNIT_IN_ACK"          ,
     1072                                     dest, "in_WRITE_UNIT_IN_"+toString(i)+"_ACK"          );
    9631073           if (_param->_have_port_context_id)
    964            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_CONTEXT_ID"   ,
    965                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"   );
     1074           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_CONTEXT_ID"   ,
     1075                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"   );
    9661076           if (_param->_have_port_front_end_id)
    967            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_FRONT_END_ID" ,
    968                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_FRONT_END_ID" );
     1077           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_FRONT_END_ID" ,
     1078                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_FRONT_END_ID" );
    9691079           if (_param->_have_port_ooo_engine_id)
    970            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_OOO_ENGINE_ID",
    971                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID");
    972            if (_param->_have_port_packet_id)
    973            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_PACKET_ID"    ,
    974                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_PACKET_ID"    );
    975 //         PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_OPERATION"    ,
    976 //                              dest,"out_WRITE_UNIT_IN_"+toString(i)+"_OPERATION"    );
    977            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_TYPE"         ,
    978                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_TYPE"         );
    979            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_WRITE_RD"     ,
    980                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_WRITE_RD"     );
    981            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_NUM_REG_RD"   ,
    982                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"   );
    983            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_DATA_RD"      ,
    984                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_DATA_RD"      );
    985            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_WRITE_RE"     ,
    986                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_WRITE_RE"     );
    987            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_NUM_REG_RE"   ,
    988                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"   );
    989            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_DATA_RE"      ,
    990                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_DATA_RE"      );
    991            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_EXCEPTION"    ,
    992                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_EXCEPTION"    );
    993            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_NO_SEQUENCE"  ,
    994                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_NO_SEQUENCE"  );
    995            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_ADDRESS"      ,
    996                                 dest,"out_WRITE_UNIT_IN_"+toString(i)+"_ADDRESS"      );
     1080           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_OOO_ENGINE_ID",
     1081                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID");
     1082           if (_param->_have_port_rob_ptr  )
     1083           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_PACKET_ID"    ,
     1084                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_PACKET_ID"    );
     1085//         COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_OPERATION"    ,
     1086//                                   dest,"out_WRITE_UNIT_IN_"+toString(i)+"_OPERATION"    );
     1087           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_TYPE"         ,
     1088                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_TYPE"         );
     1089           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_WRITE_RD"     ,
     1090                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_WRITE_RD"     );
     1091           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_NUM_REG_RD"   ,
     1092                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"   );
     1093           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_DATA_RD"      ,
     1094                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_DATA_RD"      );
     1095           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_WRITE_RE"     ,
     1096                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_WRITE_RE"     );
     1097           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_NUM_REG_RE"   ,
     1098                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"   );
     1099           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_DATA_RE"      ,
     1100                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_DATA_RE"      );
     1101           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_EXCEPTION"    ,
     1102                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_EXCEPTION"    );
     1103           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_NO_SEQUENCE"  ,
     1104                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_NO_SEQUENCE"  );
     1105           COMPONENT_MAP(_component ,src , "in_WRITE_UNIT_IN_ADDRESS"      ,
     1106                                     dest,"out_WRITE_UNIT_IN_"+toString(i)+"_ADDRESS"      );
    9971107         }
    9981108
     
    10181128           PORT_MAP(_component ,src ,"out_WRITE_UNIT_OUT_OOO_ENGINE_ID",
    10191129                                dest,"out_EXECUTE_LOOP_OUT_"+toString(i)+"_OOO_ENGINE_ID");
    1020            if (_param->_have_port_packet_id)
     1130           if (_param->_have_port_rob_ptr  )
    10211131           PORT_MAP(_component ,src ,"out_WRITE_UNIT_OUT_PACKET_ID"    ,
    10221132                                dest,"out_EXECUTE_LOOP_OUT_"+toString(i)+"_PACKET_ID"    );
     
    10331143           PORT_MAP(_component ,src ,"out_WRITE_UNIT_OUT_ADDRESS"      ,
    10341144                                dest,"out_EXECUTE_LOOP_OUT_"+toString(i)+"_ADDRESS"      );
     1145           PORT_MAP(_component ,src ,"out_WRITE_UNIT_OUT_DATA"         ,
     1146                                dest,"out_EXECUTE_LOOP_OUT_"+toString(i)+"_DATA"         );
    10351147         }
     1148
    10361149         // -----[ Interface "gpr_write" ]-------------------------------------
    10371150         {
    1038            // Port map with "read_unit" is ok!
    1039 
    1040            dest = _name+"_register_unit";
     1151           dest = _name+"_glue";
    10411152#ifdef POSITION
    10421153           _component->interface_map (src ,"gpr_write",
    1043                                       dest,"gpr_write_"+toString(i));
    1044 #endif
    1045 
    1046            PORT_MAP(_component ,src ,"out_GPR_WRITE_0_VAL"          ,
    1047                                 dest, "in_GPR_WRITE_"+toString(i)+"_VAL"          );
    1048            PORT_MAP(_component ,src , "in_GPR_WRITE_0_ACK"          ,
    1049                                 dest,"out_GPR_WRITE_"+toString(i)+"_ACK"          );
    1050            if (_param->_have_port_context_id)
    1051            PORT_MAP(_component ,src ,"out_GPR_WRITE_0_OOO_ENGINE_ID",
    1052                                 dest, "in_GPR_WRITE_"+toString(i)+"_OOO_ENGINE_ID");
    1053            PORT_MAP(_component ,src ,"out_GPR_WRITE_0_NUM_REG"      ,
    1054                                 dest, "in_GPR_WRITE_"+toString(i)+"_NUM_REG"      );
    1055            PORT_MAP(_component ,src ,"out_GPR_WRITE_0_DATA"         ,
    1056                                 dest, "in_GPR_WRITE_"+toString(i)+"_DATA"         );
     1154                                      dest,"gpr_write_write_unit_"+toString(i));
     1155#endif
     1156
     1157           COMPONENT_MAP(_component ,src ,"out_GPR_WRITE_0_VAL"          ,
     1158                                     dest, "in_GPR_WRITE_WRITE_UNIT_"+toString(i)+"_VAL"          );
     1159           COMPONENT_MAP(_component ,src , "in_GPR_WRITE_0_ACK"          ,
     1160                                     dest,"out_GPR_WRITE_WRITE_UNIT_"+toString(i)+"_ACK"          );
     1161           if (_param->_have_port_ooo_engine_id)
     1162           COMPONENT_MAP(_component ,src ,"out_GPR_WRITE_0_OOO_ENGINE_ID",
     1163                                     dest, "in_GPR_WRITE_WRITE_UNIT_"+toString(i)+"_OOO_ENGINE_ID");
     1164           COMPONENT_MAP(_component ,src ,"out_GPR_WRITE_0_NUM_REG"      ,
     1165                                     dest, "in_GPR_WRITE_WRITE_UNIT_"+toString(i)+"_NUM_REG"      );
     1166           COMPONENT_MAP(_component ,src ,"out_GPR_WRITE_0_DATA"         ,
     1167                                     dest, "in_GPR_WRITE_WRITE_UNIT_"+toString(i)+"_DATA"         );
    10571168         }
    10581169
     
    10611172           // Port map with "read_unit" is ok!
    10621173
    1063            dest = _name+"_register_unit";
     1174           dest = _name+"_glue";
    10641175#ifdef POSITION
    10651176           _component->interface_map (src ,"spr_write",
    1066                                       dest,"spr_write_"+toString(i));
    1067 #endif
    1068 
    1069            PORT_MAP(_component ,src ,"out_SPR_WRITE_0_VAL"          ,
    1070                                 dest, "in_SPR_WRITE_"+toString(i)+"_VAL"          );
    1071            PORT_MAP(_component ,src , "in_SPR_WRITE_0_ACK"          ,
    1072                                 dest,"out_SPR_WRITE_"+toString(i)+"_ACK"          );
    1073            if (_param->_have_port_context_id)
    1074            PORT_MAP(_component ,src ,"out_SPR_WRITE_0_OOO_ENGINE_ID",
    1075                                 dest, "in_SPR_WRITE_"+toString(i)+"_OOO_ENGINE_ID");
    1076            PORT_MAP(_component ,src ,"out_SPR_WRITE_0_NUM_REG"      ,
    1077                                 dest, "in_SPR_WRITE_"+toString(i)+"_NUM_REG"      );
    1078            PORT_MAP(_component ,src ,"out_SPR_WRITE_0_DATA"         ,
    1079                                 dest, "in_SPR_WRITE_"+toString(i)+"_DATA"         );
     1177                                      dest,"spr_write_write_unit_"+toString(i));
     1178#endif
     1179
     1180           COMPONENT_MAP(_component ,src ,"out_SPR_WRITE_0_VAL"          ,
     1181                                     dest, "in_SPR_WRITE_WRITE_UNIT_"+toString(i)+"_VAL"          );
     1182           COMPONENT_MAP(_component ,src , "in_SPR_WRITE_0_ACK"          ,
     1183                                     dest,"out_SPR_WRITE_WRITE_UNIT_"+toString(i)+"_ACK"          );
     1184           if (_param->_have_port_ooo_engine_id)
     1185           COMPONENT_MAP(_component ,src ,"out_SPR_WRITE_0_OOO_ENGINE_ID",
     1186                                     dest, "in_SPR_WRITE_WRITE_UNIT_"+toString(i)+"_OOO_ENGINE_ID");
     1187           COMPONENT_MAP(_component ,src ,"out_SPR_WRITE_0_NUM_REG"      ,
     1188                                     dest, "in_SPR_WRITE_WRITE_UNIT_"+toString(i)+"_NUM_REG"      );
     1189           COMPONENT_MAP(_component ,src ,"out_SPR_WRITE_0_DATA"         ,
     1190                                     dest, "in_SPR_WRITE_WRITE_UNIT_"+toString(i)+"_DATA"         );
    10801191         }
    10811192
     
    10911202     {
    10921203       src = _name+"_register_unit";
    1093        std::cout << "Instance : " << src << std::endl;
     1204       log_printf(INFO,Core,FUNCTION,_("Instance : %s"),src.c_str());
    10941205       
    10951206       {
     
    11141225#endif
    11151226       
    1116          PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i  )+"_VAL"          ,dest,"out_GPR_READ_0_VAL"          );
    1117          PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i  )+"_ACK"          ,dest, "in_GPR_READ_0_ACK"          );
    1118          if (_param->_have_port_context_id)
    1119          PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i  )+"_OOO_ENGINE_ID",dest,"out_GPR_READ_0_OOO_ENGINE_ID");
    1120          PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i  )+"_NUM_REG"      ,dest,"out_GPR_READ_0_NUM_REG"      );
    1121          PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i  )+"_DATA"         ,dest, "in_GPR_READ_0_DATA"         );
    1122          PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i  )+"_DATA_VAL"     ,dest, "in_GPR_READ_0_DATA_VAL"     );
    1123 
    1124          PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i+1)+"_VAL"          ,dest,"out_GPR_READ_1_VAL"          );
    1125          PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i+1)+"_ACK"          ,dest, "in_GPR_READ_1_ACK"          );
    1126          if (_param->_have_port_context_id)
    1127          PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i+1)+"_OOO_ENGINE_ID",dest,"out_GPR_READ_1_OOO_ENGINE_ID");
    1128          PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i+1)+"_NUM_REG"      ,dest,"out_GPR_READ_1_NUM_REG"      );
    1129          PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i+1)+"_DATA"         ,dest, "in_GPR_READ_1_DATA"         );
    1130          PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i+1)+"_DATA_VAL"     ,dest, "in_GPR_READ_1_DATA_VAL"     );
     1227//       PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i  )+"_VAL"          ,dest,"out_GPR_READ_0_VAL"          );
     1228//       PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i  )+"_ACK"          ,dest, "in_GPR_READ_0_ACK"          );
     1229//       if (_param->_have_port_context_id)
     1230//       PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i  )+"_OOO_ENGINE_ID",dest,"out_GPR_READ_0_OOO_ENGINE_ID");
     1231//       PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i  )+"_NUM_REG"      ,dest,"out_GPR_READ_0_NUM_REG"      );
     1232//       PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i  )+"_DATA"         ,dest, "in_GPR_READ_0_DATA"         );
     1233//       PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i  )+"_DATA_VAL"     ,dest, "in_GPR_READ_0_DATA_VAL"     );
     1234
     1235//       PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i+1)+"_VAL"          ,dest,"out_GPR_READ_1_VAL"          );
     1236//       PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i+1)+"_ACK"          ,dest, "in_GPR_READ_1_ACK"          );
     1237//       if (_param->_have_port_context_id)
     1238//       PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i+1)+"_OOO_ENGINE_ID",dest,"out_GPR_READ_1_OOO_ENGINE_ID");
     1239//       PORT_MAP(_component ,src , "in_GPR_READ_"+toString(2*i+1)+"_NUM_REG"      ,dest,"out_GPR_READ_1_NUM_REG"      );
     1240//       PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i+1)+"_DATA"         ,dest, "in_GPR_READ_1_DATA"         );
     1241//       PORT_MAP(_component ,src ,"out_GPR_READ_"+toString(2*i+1)+"_DATA_VAL"     ,dest, "in_GPR_READ_1_DATA_VAL"     );
    11311242         }
    11321243
     
    11341245       for (uint32_t i=0; i<_param->_nb_write_unit; i++)
    11351246         {
    1136            dest = _name+"_write_unit_"+toString(i);
    1137 #ifdef POSITION
    1138            _component->interface_map (src ,"gpr_write_"+toString(i)
    1139                                       dest,"gpr_write_0");
    1140 #endif
    1141        
    1142            PORT_MAP(_component ,src , "in_GPR_WRITE_"+toString(i)+"_VAL"          ,dest,"out_GPR_WRITE_0_VAL"          );
    1143            PORT_MAP(_component ,src ,"out_GPR_WRITE_"+toString(i)+"_ACK"          ,dest, "in_GPR_WRITE_0_ACK"          );
    1144            if (_param->_have_port_context_id)
    1145            PORT_MAP(_component ,src , "in_GPR_WRITE_"+toString(i)+"_OOO_ENGINE_ID",dest,"out_GPR_WRITE_0_OOO_ENGINE_ID");
    1146            PORT_MAP(_component ,src , "in_GPR_WRITE_"+toString(i)+"_NUM_REG"      ,dest,"out_GPR_WRITE_0_NUM_REG"      );
    1147            PORT_MAP(_component ,src , "in_GPR_WRITE_"+toString(i)+"_DATA"         ,dest,"out_GPR_WRITE_0_DATA"         );
     1247           dest = _name+"_glue";
     1248#ifdef POSITION
     1249           _component->interface_map (src ,"gpr_write_"+toString(i),
     1250                                      dest,"gpr_write_register_file_"+toString(i));
     1251#endif
     1252       
     1253           COMPONENT_MAP(_component ,src , "in_GPR_WRITE_"+toString(i)+"_VAL"          ,dest,"out_GPR_WRITE_REGISTER_FILE_"+toString(i)+"_VAL"          );
     1254           COMPONENT_MAP(_component ,src ,"out_GPR_WRITE_"+toString(i)+"_ACK"          ,dest, "in_GPR_WRITE_REGISTER_FILE_"+toString(i)+"_ACK"          );
     1255           if (_param->_have_port_ooo_engine_id)
     1256           COMPONENT_MAP(_component ,src , "in_GPR_WRITE_"+toString(i)+"_OOO_ENGINE_ID",dest,"out_GPR_WRITE_REGISTER_FILE_"+toString(i)+"_OOO_ENGINE_ID");
     1257           COMPONENT_MAP(_component ,src , "in_GPR_WRITE_"+toString(i)+"_NUM_REG"      ,dest,"out_GPR_WRITE_REGISTER_FILE_"+toString(i)+"_NUM_REG"      );
     1258           COMPONENT_MAP(_component ,src , "in_GPR_WRITE_"+toString(i)+"_DATA"         ,dest,"out_GPR_WRITE_REGISTER_FILE_"+toString(i)+"_DATA"         );
    11481259         }
    11491260
     
    11571268#endif
    11581269       
    1159            PORT_MAP(_component ,src , "in_SPR_READ_"+toString(i)+"_VAL"          ,dest,"out_SPR_READ_0_VAL"          );
    1160            PORT_MAP(_component ,src ,"out_SPR_READ_"+toString(i)+"_ACK"          ,dest, "in_SPR_READ_0_ACK"          );
    1161            if (_param->_have_port_context_id)
    1162            PORT_MAP(_component ,src , "in_SPR_READ_"+toString(i)+"_OOO_ENGINE_ID",dest,"out_SPR_READ_0_OOO_ENGINE_ID");
    1163            PORT_MAP(_component ,src , "in_SPR_READ_"+toString(i)+"_NUM_REG"      ,dest,"out_SPR_READ_0_NUM_REG"      );
    1164            PORT_MAP(_component ,src ,"out_SPR_READ_"+toString(i)+"_DATA"         ,dest, "in_SPR_READ_0_DATA"         );
    1165            PORT_MAP(_component ,src ,"out_SPR_READ_"+toString(i)+"_DATA_VAL"     ,dest, "in_SPR_READ_0_DATA_VAL"     );
     1270//         PORT_MAP(_component ,src , "in_SPR_READ_"+toString(i)+"_VAL"          ,dest,"out_SPR_READ_0_VAL"          );
     1271//         PORT_MAP(_component ,src ,"out_SPR_READ_"+toString(i)+"_ACK"          ,dest, "in_SPR_READ_0_ACK"          );
     1272//         if (_param->_have_port_context_id)
     1273//         PORT_MAP(_component ,src , "in_SPR_READ_"+toString(i)+"_OOO_ENGINE_ID",dest,"out_SPR_READ_0_OOO_ENGINE_ID");
     1274//         PORT_MAP(_component ,src , "in_SPR_READ_"+toString(i)+"_NUM_REG"      ,dest,"out_SPR_READ_0_NUM_REG"      );
     1275//         PORT_MAP(_component ,src ,"out_SPR_READ_"+toString(i)+"_DATA"         ,dest, "in_SPR_READ_0_DATA"         );
     1276//         PORT_MAP(_component ,src ,"out_SPR_READ_"+toString(i)+"_DATA_VAL"     ,dest, "in_SPR_READ_0_DATA_VAL"     );
    11661277         }
    11671278
     
    11691280       for (uint32_t i=0; i<_param->_nb_write_unit; i++)
    11701281         {
    1171            dest = _name+"_write_unit_"+toString(i);
    1172 #ifdef POSITION
    1173            _component->interface_map (src ,"spr_write_"+toString(i)
    1174                                       dest,"spr_write_0");
    1175 #endif
    1176        
    1177            PORT_MAP(_component ,src , "in_SPR_WRITE_"+toString(i)+"_VAL"          ,dest,"out_SPR_WRITE_0_VAL"          );
    1178            PORT_MAP(_component ,src ,"out_SPR_WRITE_"+toString(i)+"_ACK"          ,dest, "in_SPR_WRITE_0_ACK"          );
    1179            if (_param->_have_port_context_id)
    1180            PORT_MAP(_component ,src , "in_SPR_WRITE_"+toString(i)+"_OOO_ENGINE_ID",dest,"out_SPR_WRITE_0_OOO_ENGINE_ID");
    1181            PORT_MAP(_component ,src , "in_SPR_WRITE_"+toString(i)+"_NUM_REG"      ,dest,"out_SPR_WRITE_0_NUM_REG"      );
    1182            PORT_MAP(_component ,src , "in_SPR_WRITE_"+toString(i)+"_DATA"         ,dest,"out_SPR_WRITE_0_DATA"         );
     1282           dest = _name+"_glue";
     1283#ifdef POSITION
     1284           _component->interface_map (src ,"spr_write_"+toString(i),
     1285                                      dest,"spr_write_register_file_"+toString(i));
     1286#endif
     1287       
     1288           COMPONENT_MAP(_component ,src , "in_SPR_WRITE_"+toString(i)+"_VAL"          ,dest,"out_SPR_WRITE_REGISTER_FILE_"+toString(i)+"_VAL"          );
     1289           COMPONENT_MAP(_component ,src ,"out_SPR_WRITE_"+toString(i)+"_ACK"          ,dest, "in_SPR_WRITE_REGISTER_FILE_"+toString(i)+"_ACK"          );
     1290           if (_param->_have_port_ooo_engine_id)
     1291           COMPONENT_MAP(_component ,src , "in_SPR_WRITE_"+toString(i)+"_OOO_ENGINE_ID",dest,"out_SPR_WRITE_REGISTER_FILE_"+toString(i)+"_OOO_ENGINE_ID");
     1292           COMPONENT_MAP(_component ,src , "in_SPR_WRITE_"+toString(i)+"_NUM_REG"      ,dest,"out_SPR_WRITE_REGISTER_FILE_"+toString(i)+"_NUM_REG"      );
     1293           COMPONENT_MAP(_component ,src , "in_SPR_WRITE_"+toString(i)+"_DATA"         ,dest,"out_SPR_WRITE_REGISTER_FILE_"+toString(i)+"_DATA"         );
    11831294         }
    11841295   
     
    12111322         }
    12121323
    1213        // ~~~~~[ Interface "retire_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    1214        for (uint32_t i=0; i<_param->_nb_ooo_engine; i++)
    1215          {
    1216            uint32_t x=_param->_nb_inst_retire_rob [i];
     1324//        // ~~~~~[ Interface "retire_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     1325//        for (uint32_t i=0; i<_param->_nb_ooo_engine; i++)
     1326//       {
     1327//         uint32_t x=_param->_nb_inst_retire_rob [i];
    12171328           
    1218            for (uint32_t j=0; j<x; j++)
    1219              {
    1220                dest = _name;
    1221 #ifdef POSITION
    1222                _component->interface_map (src ,"retire_rob_"+toString(i)+"_"+toString(j),
    1223                                           dest,"retire_rob_"+toString(i)+"_"+toString(j));
    1224 #endif
    1225 
    1226                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_VAL"           ,
    1227                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_VAL"           );
    1228                PORT_MAP(_component ,src ,"out_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_ACK"           ,
    1229                                     dest,"out_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_ACK"           );
    1230                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_OLD_USE"    ,
    1231                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_OLD_USE"    );
    1232                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_OLD_NUM_REG",
    1233                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_OLD_NUM_REG");
    1234                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_NEW_USE"    ,
    1235                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_NEW_USE"    );
    1236                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_NEW_NUM_REG",
    1237                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_NEW_NUM_REG");
    1238                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_OLD_USE"    ,
    1239                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_OLD_USE"    );
    1240                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_OLD_NUM_REG",
    1241                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_OLD_NUM_REG");
    1242                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_NEW_USE"    ,
    1243                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_NEW_USE"    );
    1244                PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_NEW_NUM_REG",
    1245                                     dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_NEW_NUM_REG");
    1246              }
    1247          }
     1329//         for (uint32_t j=0; j<x; j++)
     1330//           {
     1331//             dest = _name;
     1332// #ifdef POSITION
     1333//             _component->interface_map (src ,"retire_rob_"+toString(i)+"_"+toString(j),
     1334//                                        dest,"retire_rob_"+toString(i)+"_"+toString(j));
     1335// #endif
     1336
     1337//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_VAL"           ,
     1338//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_VAL"           );
     1339//             PORT_MAP(_component ,src ,"out_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_ACK"           ,
     1340//                                  dest,"out_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_ACK"           );
     1341//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_OLD_USE"    ,
     1342//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_OLD_USE"    );
     1343//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_OLD_NUM_REG",
     1344//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_OLD_NUM_REG");
     1345//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_NEW_USE"    ,
     1346//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_NEW_USE"    );
     1347//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_NEW_NUM_REG",
     1348//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RD_NEW_NUM_REG");
     1349//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_OLD_USE"    ,
     1350//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_OLD_USE"    );
     1351//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_OLD_NUM_REG",
     1352//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_OLD_NUM_REG");
     1353//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_NEW_USE"    ,
     1354//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_NEW_USE"    );
     1355//             PORT_MAP(_component ,src , "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_NEW_NUM_REG",
     1356//                                  dest, "in_RETIRE_ROB_"+toString(i)+"_"+toString(j)+"_RE_NEW_NUM_REG");
     1357//           }
     1358//       }
    12481359     }
    12491360
     
    12531364     {
    12541365       src = _name+"_read_unit_to_execution_unit";
    1255        std::cout << "Instance : " << src << std::endl;
     1366       log_printf(INFO,Core,FUNCTION,_("Instance : %s"),src.c_str());
    12561367       
    12571368       {
     
    12771388#endif
    12781389             
    1279              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_VAL"                  ,
    1280                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_VAL"                  );
    1281              PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_ACK"                  ,
    1282                                   dest, "in_READ_UNIT_OUT_"+toString(j               )+"_ACK"                  );
    1283              if (_param->_have_port_context_id)
    1284              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_CONTEXT_ID"           ,
    1285                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_CONTEXT_ID"           );
    1286              if (_param->_have_port_front_end_id)
    1287              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_FRONT_END_ID"         ,
    1288                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_FRONT_END_ID"         );
    1289              if (_param->_have_port_ooo_engine_id)
    1290              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_OOO_ENGINE_ID"        ,
    1291                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_OOO_ENGINE_ID"        );
    1292              if (_param->_have_port_packet_id)
    1293              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_PACKET_ID"            ,
    1294                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_PACKET_ID"            );
    1295              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_OPERATION"            ,
    1296                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_OPERATION"            );
    1297              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_TYPE"                 ,
    1298                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_TYPE"                 );
    1299              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_STORE_QUEUE_PTR_WRITE",
    1300                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_STORE_QUEUE_PTR_WRITE");
    1301              if (_param->_have_port_load_queue_ptr)
    1302              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_LOAD_QUEUE_PTR_WRITE" ,
    1303                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_LOAD_QUEUE_PTR_WRITE" );
    1304              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_HAS_IMMEDIAT"         ,
    1305                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_HAS_IMMEDIAT"         );
    1306              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_IMMEDIAT"             ,
    1307                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_IMMEDIAT"             );
    1308              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RA"              ,
    1309                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RA"              );
    1310              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RB"              ,
    1311                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RB"              );
    1312              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RC"              ,
    1313                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RC"              );
    1314              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_WRITE_RD"             ,
    1315                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_WRITE_RD"             );
    1316              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_NUM_REG_RD"           ,
    1317                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_NUM_REG_RD"           );
    1318              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_WRITE_RE"             ,
    1319                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_WRITE_RE"             );
    1320              PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_NUM_REG_RE"           ,
    1321                                   dest,"out_READ_UNIT_OUT_"+toString(j               )+"_NUM_REG_RE"           );
     1390//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_VAL"                  ,
     1391//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_VAL"                  );
     1392//           PORT_MAP(_component ,src ,"out_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_ACK"                  ,
     1393//                                dest, "in_READ_UNIT_OUT_"+toString(j               )+"_ACK"                  );
     1394//           if (_param->_have_port_context_id)
     1395//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_CONTEXT_ID"           ,
     1396//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_CONTEXT_ID"           );
     1397//           if (_param->_have_port_front_end_id)
     1398//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_FRONT_END_ID"         ,
     1399//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_FRONT_END_ID"         );
     1400//           if (_param->_have_port_ooo_engine_id)
     1401//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_OOO_ENGINE_ID"        ,
     1402//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_OOO_ENGINE_ID"        );
     1403//           if (_param->_have_port_rob_ptr  )
     1404//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_PACKET_ID"            ,
     1405//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_PACKET_ID"            );
     1406//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_OPERATION"            ,
     1407//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_OPERATION"            );
     1408//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_TYPE"                 ,
     1409//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_TYPE"                 );
     1410//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_STORE_QUEUE_PTR_WRITE",
     1411//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_STORE_QUEUE_PTR_WRITE");
     1412//           if (_param->_have_port_load_queue_ptr)
     1413//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_LOAD_QUEUE_PTR_WRITE" ,
     1414//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_LOAD_QUEUE_PTR_WRITE" );
     1415//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_HAS_IMMEDIAT"         ,
     1416//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_HAS_IMMEDIAT"         );
     1417//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_IMMEDIAT"             ,
     1418//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_IMMEDIAT"             );
     1419//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RA"              ,
     1420//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RA"              );
     1421//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RB"              ,
     1422//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RB"              );
     1423//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_DATA_RC"              ,
     1424//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_DATA_RC"              );
     1425//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_WRITE_RD"             ,
     1426//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_WRITE_RD"             );
     1427//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_NUM_REG_RD"           ,
     1428//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_NUM_REG_RD"           );
     1429//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_WRITE_RE"             ,
     1430//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_WRITE_RE"             );
     1431//           PORT_MAP(_component ,src , "in_READ_UNIT_OUT_"+toString(it_read_unit_out)+"_NUM_REG_RE"           ,
     1432//                                dest,"out_READ_UNIT_OUT_"+toString(j               )+"_NUM_REG_RE"           );
    13221433             
    13231434             it_read_unit_out ++;
     
    13381449#endif
    13391450               
    1340                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_VAL"                  ,
    1341                                     dest, "in_EXECUTE_IN_VAL"                  );
    1342                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_IN_"+toString(i)+"_ACK"                  ,
    1343                                     dest,"out_EXECUTE_IN_ACK"                  );
    1344                if (_param->_have_port_context_id)
    1345                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"           ,
    1346                                     dest, "in_EXECUTE_IN_CONTEXT_ID"           );
    1347                if (_param->_have_port_front_end_id)
    1348                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_FRONT_END_ID"         ,
    1349                                     dest, "in_EXECUTE_IN_FRONT_END_ID"         );
    1350                if (_param->_have_port_ooo_engine_id)
    1351                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID"        ,
    1352                                     dest, "in_EXECUTE_IN_OOO_ENGINE_ID"        );
    1353                if (_param->_have_port_packet_id)
    1354                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_PACKET_ID"            ,
    1355                                     dest, "in_EXECUTE_IN_PACKET_ID"            );
    1356                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OPERATION"            ,
    1357                                     dest, "in_EXECUTE_IN_OPERATION"            );
    1358                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_TYPE"                 ,
    1359                                     dest, "in_EXECUTE_IN_TYPE"                 );
    1360                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_STORE_QUEUE_PTR_WRITE",
    1361                                     dest, "in_EXECUTE_IN_STORE_QUEUE_PTR_WRITE");
    1362                if (_param->_have_port_load_queue_ptr)
    1363                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_LOAD_QUEUE_PTR_WRITE" ,
    1364                                     dest, "in_EXECUTE_IN_LOAD_QUEUE_PTR_WRITE" );
    1365                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_HAS_IMMEDIAT"         ,
    1366                                     dest, "in_EXECUTE_IN_HAS_IMMEDIAT"         );
    1367                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_IMMEDIAT"             ,
    1368                                     dest, "in_EXECUTE_IN_IMMEDIAT"             );
    1369                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RA"              ,
    1370                                     dest, "in_EXECUTE_IN_DATA_RA"              );
    1371                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RB"              ,
    1372                                     dest, "in_EXECUTE_IN_DATA_RB"              );
    1373                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RC"              ,
    1374                                     dest, "in_EXECUTE_IN_DATA_RC"              );
    1375                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RD"             ,
    1376                                     dest, "in_EXECUTE_IN_WRITE_RD"             );
    1377                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"           ,
    1378                                     dest, "in_EXECUTE_IN_NUM_REG_RD"           );
    1379                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RE"             ,
    1380                                     dest, "in_EXECUTE_IN_WRITE_RE"             );
    1381                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"           ,
    1382                                     dest, "in_EXECUTE_IN_NUM_REG_RE"           );
     1451//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_VAL"                  ,
     1452//                                  dest, "in_EXECUTE_IN_VAL"                  );
     1453//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_IN_"+toString(i)+"_ACK"                  ,
     1454//                                  dest,"out_EXECUTE_IN_ACK"                  );
     1455//             if (_param->_have_port_context_id)
     1456//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"           ,
     1457//                                  dest, "in_EXECUTE_IN_CONTEXT_ID"           );
     1458//             if (_param->_have_port_front_end_id)
     1459//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_FRONT_END_ID"         ,
     1460//                                  dest, "in_EXECUTE_IN_FRONT_END_ID"         );
     1461//             if (_param->_have_port_ooo_engine_id)
     1462//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID"        ,
     1463//                                  dest, "in_EXECUTE_IN_OOO_ENGINE_ID"        );
     1464//             if (_param->_have_port_rob_ptr  )
     1465//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_PACKET_ID"            ,
     1466//                                  dest, "in_EXECUTE_IN_PACKET_ID"            );
     1467//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OPERATION"            ,
     1468//                                  dest, "in_EXECUTE_IN_OPERATION"            );
     1469//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_TYPE"                 ,
     1470//                                  dest, "in_EXECUTE_IN_TYPE"                 );
     1471//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_STORE_QUEUE_PTR_WRITE",
     1472//                                  dest, "in_EXECUTE_IN_STORE_QUEUE_PTR_WRITE");
     1473//             if (_param->_have_port_load_queue_ptr)
     1474//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_LOAD_QUEUE_PTR_WRITE" ,
     1475//                                  dest, "in_EXECUTE_IN_LOAD_QUEUE_PTR_WRITE" );
     1476//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_HAS_IMMEDIAT"         ,
     1477//                                  dest, "in_EXECUTE_IN_HAS_IMMEDIAT"         );
     1478//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_IMMEDIAT"             ,
     1479//                                  dest, "in_EXECUTE_IN_IMMEDIAT"             );
     1480//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RA"              ,
     1481//                                  dest, "in_EXECUTE_IN_DATA_RA"              );
     1482//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RB"              ,
     1483//                                  dest, "in_EXECUTE_IN_DATA_RB"              );
     1484//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RC"              ,
     1485//                                  dest, "in_EXECUTE_IN_DATA_RC"              );
     1486//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RD"             ,
     1487//                                  dest, "in_EXECUTE_IN_WRITE_RD"             );
     1488//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"           ,
     1489//                                  dest, "in_EXECUTE_IN_NUM_REG_RD"           );
     1490//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RE"             ,
     1491//                                  dest, "in_EXECUTE_IN_WRITE_RE"             );
     1492//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"           ,
     1493//                                  dest, "in_EXECUTE_IN_NUM_REG_RE"           );
    13831494             }
    13841495           else
     
    13911502#endif
    13921503               
    1393                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_VAL"                  ,
    1394                                     dest, "in_MEMORY_IN_VAL"                  );
    1395                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_IN_"+toString(i)+"_ACK"                  ,
    1396                                     dest,"out_MEMORY_IN_ACK"                  );
    1397                if (_param->_have_port_context_id)
    1398                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"           ,
    1399                                     dest, "in_MEMORY_IN_CONTEXT_ID"           );
    1400                if (_param->_have_port_front_end_id)
    1401                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_FRONT_END_ID"         ,
    1402                                     dest, "in_MEMORY_IN_FRONT_END_ID"         );
    1403                if (_param->_have_port_ooo_engine_id)
    1404                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID"        ,
    1405                                     dest, "in_MEMORY_IN_OOO_ENGINE_ID"        );
    1406                if (_param->_have_port_packet_id)
    1407                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_PACKET_ID"            ,
    1408                                     dest, "in_MEMORY_IN_PACKET_ID"            );
    1409                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OPERATION"            ,
    1410                                     dest, "in_MEMORY_IN_OPERATION"            );
    1411                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_TYPE"                 ,
    1412                                     dest, "in_MEMORY_IN_TYPE"                 );
    1413                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_STORE_QUEUE_PTR_WRITE",
    1414                                     dest, "in_MEMORY_IN_STORE_QUEUE_PTR_WRITE");
    1415                if (_param->_have_port_load_queue_ptr)
    1416                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_LOAD_QUEUE_PTR_WRITE" ,
    1417                                     dest, "in_MEMORY_IN_LOAD_QUEUE_PTR_WRITE" );
    1418                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_HAS_IMMEDIAT"         ,
    1419                                     dest, "in_MEMORY_IN_HAS_IMMEDIAT"         );
    1420                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_IMMEDIAT"             ,
    1421                                     dest, "in_MEMORY_IN_IMMEDIAT"             );
    1422                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RA"              ,
    1423                                     dest, "in_MEMORY_IN_DATA_RA"              );
    1424                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RB"              ,
    1425                                     dest, "in_MEMORY_IN_DATA_RB"              );
    1426                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RC"              ,
    1427                                     dest, "in_MEMORY_IN_DATA_RC"              );
    1428                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RD"             ,
    1429                                     dest, "in_MEMORY_IN_WRITE_RD"             );
    1430                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"           ,
    1431                                     dest, "in_MEMORY_IN_NUM_REG_RD"           );
    1432                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RE"             ,
    1433                                     dest, "in_MEMORY_IN_WRITE_RE"             );
    1434                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"           ,
    1435                                     dest, "in_MEMORY_IN_NUM_REG_RE"           );
     1504//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_VAL"                  ,
     1505//                                  dest, "in_MEMORY_IN_VAL"                  );
     1506//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_IN_"+toString(i)+"_ACK"                  ,
     1507//                                  dest,"out_MEMORY_IN_ACK"                  );
     1508//             if (_param->_have_port_context_id)
     1509//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"           ,
     1510//                                  dest, "in_MEMORY_IN_CONTEXT_ID"           );
     1511//             if (_param->_have_port_front_end_id)
     1512//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_FRONT_END_ID"         ,
     1513//                                  dest, "in_MEMORY_IN_FRONT_END_ID"         );
     1514//             if (_param->_have_port_ooo_engine_id)
     1515//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID"        ,
     1516//                                  dest, "in_MEMORY_IN_OOO_ENGINE_ID"        );
     1517//             if (_param->_have_port_rob_ptr  )
     1518//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_PACKET_ID"            ,
     1519//                                  dest, "in_MEMORY_IN_PACKET_ID"            );
     1520//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_OPERATION"            ,
     1521//                                  dest, "in_MEMORY_IN_OPERATION"            );
     1522//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_TYPE"                 ,
     1523//                                  dest, "in_MEMORY_IN_TYPE"                 );
     1524//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_STORE_QUEUE_PTR_WRITE",
     1525//                                  dest, "in_MEMORY_IN_STORE_QUEUE_PTR_WRITE");
     1526//             if (_param->_have_port_load_queue_ptr)
     1527//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_LOAD_QUEUE_PTR_WRITE" ,
     1528//                                  dest, "in_MEMORY_IN_LOAD_QUEUE_PTR_WRITE" );
     1529//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_HAS_IMMEDIAT"         ,
     1530//                                  dest, "in_MEMORY_IN_HAS_IMMEDIAT"         );
     1531//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_IMMEDIAT"             ,
     1532//                                  dest, "in_MEMORY_IN_IMMEDIAT"             );
     1533//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RA"              ,
     1534//                                  dest, "in_MEMORY_IN_DATA_RA"              );
     1535//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RB"              ,
     1536//                                  dest, "in_MEMORY_IN_DATA_RB"              );
     1537//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_DATA_RC"              ,
     1538//                                  dest, "in_MEMORY_IN_DATA_RC"              );
     1539//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RD"             ,
     1540//                                  dest, "in_MEMORY_IN_WRITE_RD"             );
     1541//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"           ,
     1542//                                  dest, "in_MEMORY_IN_NUM_REG_RD"           );
     1543//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_WRITE_RE"             ,
     1544//                                  dest, "in_MEMORY_IN_WRITE_RE"             );
     1545//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"           ,
     1546//                                  dest, "in_MEMORY_IN_NUM_REG_RE"           );
    14361547             }
    14371548         }
     
    14431554     {
    14441555       src = _name+"_execution_unit_to_write_unit";
    1445        std::cout << "Instance : " << src << std::endl;
     1556       log_printf(INFO,Core,FUNCTION,_("Instance : %s"),src.c_str());
    14461557
    14471558       {
     
    14681579                                          dest,"execute_out");
    14691580#endif
    1470                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_VAL"          ,
    1471                                     dest,"out_EXECUTE_OUT_VAL"          );
    1472                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_OUT_"+toString(i)+"_ACK"          ,
    1473                                     dest, "in_EXECUTE_OUT_ACK"          );
    1474                if (_param->_have_port_context_id)
    1475                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_CONTEXT_ID"   ,
    1476                                     dest,"out_EXECUTE_OUT_CONTEXT_ID"   );
    1477                if (_param->_have_port_front_end_id)
    1478                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_FRONT_END_ID" ,
    1479                                     dest,"out_EXECUTE_OUT_FRONT_END_ID" );
    1480                if (_param->_have_port_ooo_engine_id)
    1481                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OOO_ENGINE_ID",
    1482                                     dest,"out_EXECUTE_OUT_OOO_ENGINE_ID");
    1483                if (_param->_have_port_packet_id)
    1484                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_PACKET_ID"    ,
    1485                                     dest,"out_EXECUTE_OUT_PACKET_ID"    );
    1486 //             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OPERATION"    ,
    1487 //                                  dest,"out_EXECUTE_OUT_OPERATION"    );
    1488                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_TYPE"         ,
    1489                                     dest,"out_EXECUTE_OUT_TYPE"         );
    1490                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RD"     ,
    1491                                     dest,"out_EXECUTE_OUT_WRITE_RD"     );
    1492                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RD"   ,
    1493                                     dest,"out_EXECUTE_OUT_NUM_REG_RD"   );
    1494                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RD"      ,
    1495                                     dest,"out_EXECUTE_OUT_DATA_RD"      );
    1496                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RE"     ,
    1497                                     dest,"out_EXECUTE_OUT_WRITE_RE"     );
    1498                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RE"   ,
    1499                                     dest,"out_EXECUTE_OUT_NUM_REG_RE"   );
    1500                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RE"      ,
    1501                                     dest,"out_EXECUTE_OUT_DATA_RE"      );
    1502                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_EXCEPTION"    ,
    1503                                     dest,"out_EXECUTE_OUT_EXCEPTION"    );
    1504                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NO_SEQUENCE"  ,
    1505                                     dest,"out_EXECUTE_OUT_NO_SEQUENCE"  );
    1506                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_ADDRESS"      ,
    1507                                     dest,"out_EXECUTE_OUT_ADDRESS"      );
     1581//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_VAL"          ,
     1582//                                  dest,"out_EXECUTE_OUT_VAL"          );
     1583//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_OUT_"+toString(i)+"_ACK"          ,
     1584//                                  dest, "in_EXECUTE_OUT_ACK"          );
     1585//             if (_param->_have_port_context_id)
     1586//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_CONTEXT_ID"   ,
     1587//                                  dest,"out_EXECUTE_OUT_CONTEXT_ID"   );
     1588//             if (_param->_have_port_front_end_id)
     1589//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_FRONT_END_ID" ,
     1590//                                  dest,"out_EXECUTE_OUT_FRONT_END_ID" );
     1591//             if (_param->_have_port_ooo_engine_id)
     1592//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OOO_ENGINE_ID",
     1593//                                  dest,"out_EXECUTE_OUT_OOO_ENGINE_ID");
     1594//             if (_param->_have_port_rob_ptr  )
     1595//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_PACKET_ID"    ,
     1596//                                  dest,"out_EXECUTE_OUT_PACKET_ID"    );
     1597// //          PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OPERATION"    ,
     1598// //                               dest,"out_EXECUTE_OUT_OPERATION"    );
     1599//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_TYPE"         ,
     1600//                                  dest,"out_EXECUTE_OUT_TYPE"         );
     1601//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RD"     ,
     1602//                                  dest,"out_EXECUTE_OUT_WRITE_RD"     );
     1603//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RD"   ,
     1604//                                  dest,"out_EXECUTE_OUT_NUM_REG_RD"   );
     1605//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RD"      ,
     1606//                                  dest,"out_EXECUTE_OUT_DATA_RD"      );
     1607//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RE"     ,
     1608//                                  dest,"out_EXECUTE_OUT_WRITE_RE"     );
     1609//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RE"   ,
     1610//                                  dest,"out_EXECUTE_OUT_NUM_REG_RE"   );
     1611//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RE"      ,
     1612//                                  dest,"out_EXECUTE_OUT_DATA_RE"      );
     1613//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_EXCEPTION"    ,
     1614//                                  dest,"out_EXECUTE_OUT_EXCEPTION"    );
     1615//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NO_SEQUENCE"  ,
     1616//                                  dest,"out_EXECUTE_OUT_NO_SEQUENCE"  );
     1617//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_ADDRESS"      ,
     1618//                                  dest,"out_EXECUTE_OUT_ADDRESS"      );
    15081619             }
    15091620           else
     
    15151626                                          dest,"memory_out");
    15161627#endif
    1517                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_VAL"          ,
    1518                                     dest,"out_MEMORY_OUT_VAL"          );
    1519                PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_OUT_"+toString(i)+"_ACK"          ,
    1520                                     dest, "in_MEMORY_OUT_ACK"          );
    1521                if (_param->_have_port_context_id)
    1522                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_CONTEXT_ID"   ,
    1523                                     dest,"out_MEMORY_OUT_CONTEXT_ID"   );
    1524                if (_param->_have_port_front_end_id)
    1525                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_FRONT_END_ID" ,
    1526                                     dest,"out_MEMORY_OUT_FRONT_END_ID" );
    1527                if (_param->_have_port_ooo_engine_id)
    1528                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OOO_ENGINE_ID",
    1529                                     dest,"out_MEMORY_OUT_OOO_ENGINE_ID");
    1530                if (_param->_have_port_packet_id)
    1531                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_PACKET_ID"    ,
    1532                                     dest,"out_MEMORY_OUT_PACKET_ID"    );
    1533 //             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OPERATION"    ,
    1534 //                                  dest,"out_MEMORY_OUT_OPERATION"    );
    1535                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_TYPE"         ,
    1536                                     dest,"out_MEMORY_OUT_TYPE"         );
    1537                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RD"     ,
    1538                                     dest,"out_MEMORY_OUT_WRITE_RD"     );
    1539                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RD"   ,
    1540                                     dest,"out_MEMORY_OUT_NUM_REG_RD"   );
    1541                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RD"      ,
    1542                                     dest,"out_MEMORY_OUT_DATA_RD"      );
    1543                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RE"     ,
    1544                                     dest,"out_MEMORY_OUT_WRITE_RE"     );
    1545                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RE"   ,
    1546                                     dest,"out_MEMORY_OUT_NUM_REG_RE"   );
    1547                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RE"      ,
    1548                                     dest,"out_MEMORY_OUT_DATA_RE"      );
    1549                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_EXCEPTION"    ,
    1550                                     dest,"out_MEMORY_OUT_EXCEPTION"    );
    1551                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NO_SEQUENCE"  ,
    1552                                     dest,"out_MEMORY_OUT_NO_SEQUENCE"  );
    1553                PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_ADDRESS"      ,
    1554                                     dest,"out_MEMORY_OUT_ADDRESS"      );
     1628//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_VAL"          ,
     1629//                                  dest,"out_MEMORY_OUT_VAL"          );
     1630//             PORT_MAP(_component ,src ,"out_EXECUTE_UNIT_OUT_"+toString(i)+"_ACK"          ,
     1631//                                  dest, "in_MEMORY_OUT_ACK"          );
     1632//             if (_param->_have_port_context_id)
     1633//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_CONTEXT_ID"   ,
     1634//                                  dest,"out_MEMORY_OUT_CONTEXT_ID"   );
     1635//             if (_param->_have_port_front_end_id)
     1636//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_FRONT_END_ID" ,
     1637//                                  dest,"out_MEMORY_OUT_FRONT_END_ID" );
     1638//             if (_param->_have_port_ooo_engine_id)
     1639//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OOO_ENGINE_ID",
     1640//                                  dest,"out_MEMORY_OUT_OOO_ENGINE_ID");
     1641//             if (_param->_have_port_rob_ptr  )
     1642//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_PACKET_ID"    ,
     1643//                                  dest,"out_MEMORY_OUT_PACKET_ID"    );
     1644// //          PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_OPERATION"    ,
     1645// //                               dest,"out_MEMORY_OUT_OPERATION"    );
     1646//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_TYPE"         ,
     1647//                                  dest,"out_MEMORY_OUT_TYPE"         );
     1648//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RD"     ,
     1649//                                  dest,"out_MEMORY_OUT_WRITE_RD"     );
     1650//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RD"   ,
     1651//                                  dest,"out_MEMORY_OUT_NUM_REG_RD"   );
     1652//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RD"      ,
     1653//                                  dest,"out_MEMORY_OUT_DATA_RD"      );
     1654//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_WRITE_RE"     ,
     1655//                                  dest,"out_MEMORY_OUT_WRITE_RE"     );
     1656//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NUM_REG_RE"   ,
     1657//                                  dest,"out_MEMORY_OUT_NUM_REG_RE"   );
     1658//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_DATA_RE"      ,
     1659//                                  dest,"out_MEMORY_OUT_DATA_RE"      );
     1660//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_EXCEPTION"    ,
     1661//                                  dest,"out_MEMORY_OUT_EXCEPTION"    );
     1662//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_NO_SEQUENCE"  ,
     1663//                                  dest,"out_MEMORY_OUT_NO_SEQUENCE"  );
     1664//             PORT_MAP(_component ,src , "in_EXECUTE_UNIT_OUT_"+toString(i)+"_ADDRESS"      ,
     1665//                                  dest,"out_MEMORY_OUT_ADDRESS"      );
    15551666             }
    15561667         }
     
    15661677#endif
    15671678           
    1568            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_VAL"          ,
    1569                                 dest, "in_WRITE_UNIT_IN_VAL"          );
    1570            PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_"+toString(i)+"_ACK"          ,
    1571                                 dest,"out_WRITE_UNIT_IN_ACK"          );
    1572            if (_param->_have_port_context_id)
    1573            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"   ,
    1574                                 dest, "in_WRITE_UNIT_IN_CONTEXT_ID"   );
    1575            if (_param->_have_port_front_end_id)
    1576            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_FRONT_END_ID" ,
    1577                                 dest, "in_WRITE_UNIT_IN_FRONT_END_ID" );
    1578            if (_param->_have_port_ooo_engine_id)
    1579            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID",
    1580                                 dest, "in_WRITE_UNIT_IN_OOO_ENGINE_ID");
    1581            if (_param->_have_port_packet_id)
    1582            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_PACKET_ID"    ,
    1583                                 dest, "in_WRITE_UNIT_IN_PACKET_ID"    );
    1584 //         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_OPERATION"    ,
    1585 //                              dest, "in_WRITE_UNIT_IN_OPERATION"    );
    1586            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_TYPE"         ,
    1587                                 dest, "in_WRITE_UNIT_IN_TYPE"         );
    1588            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_WRITE_RD"     ,
    1589                                 dest, "in_WRITE_UNIT_IN_WRITE_RD"     );
    1590            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"   ,
    1591                                 dest, "in_WRITE_UNIT_IN_NUM_REG_RD"   );
    1592            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_DATA_RD"      ,
    1593                                 dest, "in_WRITE_UNIT_IN_DATA_RD"      );
    1594            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_WRITE_RE"     ,
    1595                                 dest, "in_WRITE_UNIT_IN_WRITE_RE"     );
    1596            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"   ,
    1597                                 dest, "in_WRITE_UNIT_IN_NUM_REG_RE"   );
    1598            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_DATA_RE"      ,
    1599                                 dest, "in_WRITE_UNIT_IN_DATA_RE"      );
    1600            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_EXCEPTION"    ,
    1601                                 dest, "in_WRITE_UNIT_IN_EXCEPTION"    );
    1602            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_NO_SEQUENCE"  ,
    1603                                 dest, "in_WRITE_UNIT_IN_NO_SEQUENCE"  );
    1604            PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_ADDRESS"      ,
    1605                                 dest, "in_WRITE_UNIT_IN_ADDRESS"      );
     1679//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_VAL"          ,
     1680//                              dest, "in_WRITE_UNIT_IN_VAL"          );
     1681//         PORT_MAP(_component ,src , "in_WRITE_UNIT_IN_"+toString(i)+"_ACK"          ,
     1682//                              dest,"out_WRITE_UNIT_IN_ACK"          );
     1683//         if (_param->_have_port_context_id)
     1684//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_CONTEXT_ID"   ,
     1685//                              dest, "in_WRITE_UNIT_IN_CONTEXT_ID"   );
     1686//         if (_param->_have_port_front_end_id)
     1687//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_FRONT_END_ID" ,
     1688//                              dest, "in_WRITE_UNIT_IN_FRONT_END_ID" );
     1689//         if (_param->_have_port_ooo_engine_id)
     1690//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_OOO_ENGINE_ID",
     1691//                              dest, "in_WRITE_UNIT_IN_OOO_ENGINE_ID");
     1692//         if (_param->_have_port_rob_ptr  )
     1693//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_PACKET_ID"    ,
     1694//                              dest, "in_WRITE_UNIT_IN_PACKET_ID"    );
     1695// //      PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_OPERATION"    ,
     1696// //                           dest, "in_WRITE_UNIT_IN_OPERATION"    );
     1697//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_TYPE"         ,
     1698//                              dest, "in_WRITE_UNIT_IN_TYPE"         );
     1699//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_WRITE_RD"     ,
     1700//                              dest, "in_WRITE_UNIT_IN_WRITE_RD"     );
     1701//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_NUM_REG_RD"   ,
     1702//                              dest, "in_WRITE_UNIT_IN_NUM_REG_RD"   );
     1703//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_DATA_RD"      ,
     1704//                              dest, "in_WRITE_UNIT_IN_DATA_RD"      );
     1705//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_WRITE_RE"     ,
     1706//                              dest, "in_WRITE_UNIT_IN_WRITE_RE"     );
     1707//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_NUM_REG_RE"   ,
     1708//                              dest, "in_WRITE_UNIT_IN_NUM_REG_RE"   );
     1709//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_DATA_RE"      ,
     1710//                              dest, "in_WRITE_UNIT_IN_DATA_RE"      );
     1711//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_EXCEPTION"    ,
     1712//                              dest, "in_WRITE_UNIT_IN_EXCEPTION"    );
     1713//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_NO_SEQUENCE"  ,
     1714//                              dest, "in_WRITE_UNIT_IN_NO_SEQUENCE"  );
     1715//         PORT_MAP(_component ,src ,"out_WRITE_UNIT_IN_"+toString(i)+"_ADDRESS"      ,
     1716//                              dest, "in_WRITE_UNIT_IN_ADDRESS"      );
    16061717         }
    16071718     }
    16081719     
     1720#if DEBUG_Execute_loop == true
    16091721     _component->test_map();
    1610      for (uint32_t i=0; i<_param->_nb_read_unit; i++)
    1611        _component_read_unit [i]->_component->test_map();
    1612      for (uint32_t i=0; i<_param->_nb_functionnal_unit; i++)
    1613        _component_functionnal_unit [i]->_component->test_map();
    1614      for (uint32_t i=0; i<_param->_nb_load_store_unit; i++)
    1615        _component_load_store_unit [i]->_component->test_map();
    1616      for (uint32_t i=0; i<_param->_nb_write_unit; i++)
    1617        _component_write_unit [i]->_component->test_map();
    1618      _component_read_unit_to_execution_unit->_component->test_map();
    1619      _component_execution_unit_to_write_unit->_component->test_map();
    1620      _component_register_unit->_component->test_map();
    1621 
    1622 #ifdef POSITION
    1623     _component->generate_file();
     1722#endif
     1723
     1724#ifdef POSITION
     1725     if (usage_is_set(_usage,USE_POSITION))
     1726       _component->generate_file();
    16241727#endif
    16251728
Note: See TracChangeset for help on using the changeset viewer.