Ignore:
Timestamp:
Jul 30, 2010, 4:47:27 PM (14 years ago)
Author:
rosiere
Message:
  • Add test for all configuration
  • RAT : add rat scheme (depth_save)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Register_Address_Translation_unit/src/Register_Address_Translation_unit.cpp

    r132 r139  
    7575    if (usage_is_set(_usage,USE_SYSTEMC))
    7676      {
     77        // Function pointer
     78        switch (_param->_rat_scheme)
     79          {
     80          case RAT_NO_SAVE    :
     81            {
     82              // function_constant        = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_no_save_constant       ;
     83              // function_transition      = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_no_save_transition     ;
     84              // function_genMealy_rename = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_no_save_genMealy_rename;
     85
     86              break;
     87            }
     88
     89          case RAT_ONE_SAVE   :
     90            {
     91              function_constant        = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_one_save_constant       ;
     92              function_transition      = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_one_save_transition     ;
     93              function_genMealy_rename = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_one_save_genMealy_rename;
     94
     95              break;
     96            }
     97
     98          case RAT_DEPTH_SAVE :
     99            {
     100              function_constant        = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_depth_save_constant       ;
     101              function_transition      = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_depth_save_transition     ;
     102              function_genMealy_rename = &morpheo::behavioural::core::multi_ooo_engine::ooo_engine::rename_unit::register_translation_unit::register_address_translation_unit::Register_Address_Translation_unit::function_depth_save_genMealy_rename;
     103
     104              break;
     105            }
     106
     107          default             :
     108            {
     109              break;
     110            }
     111          }
     112
    77113#ifdef SYSTEMCASS_SPECIFIC
    78114        constant();
     
    118154                      << (*(in_RENAME_NUM_REG_RD_LOG [i]))
    119155                      << (*(in_RENAME_NUM_REG_RE_LOG [i]));
     156
     157            if (_param->_rat_scheme == RAT_DEPTH_SAVE)
     158            sensitive << (*(in_RENAME_SAVE_RAT       [i]));
    120159          }
    121160        for (uint32_t i=0; i<_param->_nb_front_end; ++i)
     
    124163                      << (*(in_RETIRE_EVENT_STATE [i][j]));
    125164
    126 # ifdef SYSTEMCASS_SPECIFIC
    127         // List dependency information
    128 # endif   
    129 
    130         log_printf(INFO,Register_Address_Translation_unit,FUNCTION,"Method - genMealy_retire");
    131 
    132         SC_METHOD (genMealy_retire);
    133         dont_initialize ();
    134         sensitive << (*(in_CLOCK)).neg() // need internal register
    135                   << (*(in_NRESET));
    136 
    137         for (uint32_t i=0; i<_param->_nb_inst_retire; ++i)
    138           {
    139             if (param->_have_port_front_end_id)
    140             sensitive << (*(in_RETIRE_FRONT_END_ID   [i]));
    141             if (param->_have_port_context_id)
    142             sensitive << (*(in_RETIRE_CONTEXT_ID     [i]));
    143            
    144             sensitive << (*(in_RETIRE_WRITE_RD       [i]))
    145                       << (*(in_RETIRE_WRITE_RE       [i]))
    146                       << (*(in_RETIRE_NUM_REG_RD_LOG [i]))
    147                       << (*(in_RETIRE_NUM_REG_RE_LOG [i]));
    148           }
    149 
    150         for (uint32_t i=0; i<_param->_nb_front_end; ++i)
    151           for (uint32_t j=0; j<_param->_nb_context[i]; ++j)
    152             sensitive << (*(in_RETIRE_EVENT_VAL   [i][j]))
    153                       << (*(in_RETIRE_EVENT_STATE [i][j]));
    154        
    155165# ifdef SYSTEMCASS_SPECIFIC
    156166        // List dependency information
Note: See TracChangeset for help on using the changeset viewer.