Ignore:
Timestamp:
Feb 19, 2009, 5:31:47 PM (15 years ago)
Author:
rosiere
Message:

1) OOO_egine : add stat to depiste low perf source
2) Commit : add stat
3) LSU_Pointer : retire - always ack (else combinatory loop). insert - max nb_inst_memory
4) TopLevel? : add debug_idle_time to stop combinatory loop.
5) Issue_queue : add reexecute_queue, new implementation (routage after issue_queue)
6) Decod / Predictor : add "can_continue"

File:
1 edited

Legend:

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

    r88 r110  
    9595# endif   
    9696
    97         log_printf(INFO,Issue_queue,FUNCTION,_("<%s> : Method - genMealy"),_name.c_str());
    98 
    99         SC_METHOD (genMealy);
    100         dont_initialize ();
    101         sensitive << (*(in_CLOCK)).neg(); // need internal register
    102         for (uint32_t i=0; i<_param->_nb_inst_reexecute; i++)
    103           sensitive << (*(in_REEXECUTE_VAL  [i]))
    104                     << (*(in_REEXECUTE_TYPE [i]));
    105         for (uint32_t i=0; i<_param->_nb_rename_unit; i++)
    106           for (uint32_t j=0; j<_param->_nb_inst_rename[i]; j++)
    107             sensitive // << (*(in_ISSUE_IN_VAL  [i][j]))
    108                       << (*(in_ISSUE_IN_TYPE [i][j]));
    109        
    110 # ifdef SYSTEMCASS_SPECIFIC
    111         // List dependency information
    112         for (uint32_t i=0; i<_param->_nb_inst_reexecute; i++)
    113           for (uint32_t x=0; x<_param->_nb_inst_reexecute; x++)
    114             {
    115               (*(out_REEXECUTE_ACK [i])) (*(in_REEXECUTE_VAL  [x]));
    116               (*(out_REEXECUTE_ACK [i])) (*(in_REEXECUTE_TYPE [x]));
    117             }
    118 
    119         for (uint32_t i=0; i<_param->_nb_rename_unit; i++)
    120           for (uint32_t j=0; j<_param->_nb_inst_rename[i]; j++)
    121             {
    122               for (uint32_t x=0; x<_param->_nb_inst_reexecute; x++)
    123                 {
    124                   (*(out_ISSUE_IN_ACK [i][j])) (*(in_REEXECUTE_VAL  [x]));
    125                   (*(out_ISSUE_IN_ACK [i][j])) (*(in_REEXECUTE_TYPE [x]));
    126                 }
    127 
    128               for (uint32_t x=0; x<_param->_nb_rename_unit; x++)
    129                 for (uint32_t y=0; y<_param->_nb_inst_rename[x]; y++)
    130                   {
    131                     (*(out_ISSUE_IN_ACK [i][j])) (*(in_ISSUE_IN_VAL  [x][y]));
    132                     (*(out_ISSUE_IN_ACK [i][j])) (*(in_ISSUE_IN_TYPE [x][y]));
    133                   }
    134             }
    135 # endif   
    136        
    13797#endif
    13898      }
Note: See TracChangeset for help on using the changeset viewer.