Ignore:
Timestamp:
Jan 21, 2009, 10:53:13 PM (15 years ago)
Author:
rosiere
Message:

Fix Bug :
1) Load Store Unit : check big endian
2) Commit unit & RAT : add retire_event interface

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_genMealy_retire.cpp

    r88 r104  
    4343
    4444        // init -> need't restore old value
    45         Tcontrol_t     retire_restore_rd_phy_old = false;
    46         Tcontrol_t     retire_restore_re_phy_old = false;
    47         Tevent_state_t event_state               = PORT_READ(in_RETIRE_EVENT_STATE [i]);
     45        Tcontrol_t retire_restore_rd_phy_old = false;
     46        Tcontrol_t retire_restore_re_phy_old = false;
     47
     48        Tcontext_t front_end_id = (_param->_have_port_front_end_id)?PORT_READ(in_RETIRE_FRONT_END_ID [i]):0;
     49        Tcontext_t context_id   = (_param->_have_port_context_id  )?PORT_READ(in_RETIRE_CONTEXT_ID   [i]):0;
    4850
    4951        // Test if event -> need restore ?
    50         if (event_state != EVENT_STATE_NO_EVENT)
     52        if (PORT_READ(in_RETIRE_EVENT_STATE [front_end_id][context_id]) != EVENT_STATE_NO_EVENT)
    5153          {
    52             Tcontext_t front_end_id = (_param->_have_port_front_end_id)?PORT_READ(in_RETIRE_FRONT_END_ID [i]):0;
    53             Tcontext_t context_id   = (_param->_have_port_context_id  )?PORT_READ(in_RETIRE_CONTEXT_ID   [i]):0;
    54 
    5554            log_printf(TRACE,Register_Address_Translation_unit,FUNCTION,"    * Have event");
    5655            log_printf(TRACE,Register_Address_Translation_unit,FUNCTION,"    * front_end_id         : %d",front_end_id);
    5756            log_printf(TRACE,Register_Address_Translation_unit,FUNCTION,"    * context_id           : %d",context_id  );
    5857                       
    59             // Test if event have just occure -> reset update_table
    60             if (event_state == EVENT_STATE_EVENT)
    61               {
    62                 // Reset update_table
    63                 for (uint32_t j=0; j<_param->_nb_general_register_logic; j++)
    64                   internal_rat_gpr_update_table[front_end_id][context_id][j] = 0;
    65                 for (uint32_t j=0; j<_param->_nb_special_register_logic; j++)
    66                   internal_rat_spr_update_table[front_end_id][context_id][j] = 0;
    67               }
    68            
    6958            // Test and update update table
    7059            if (PORT_READ(in_RETIRE_WRITE_RD [i]))
Note: See TracChangeset for help on using the changeset viewer.