Ignore:
Timestamp:
Jun 3, 2009, 10:15:51 AM (15 years ago)
Author:
rosiere
Message:

Modif for performance :
1) Load Store Unit : store send request to valid exeception
2) Commit_unit : retire can bypass store
3) Commit_unit : add stat to manage store instruction
4) Load Store Unit and Load Store Pointer Manager : add store_queue_ptr_read
5) Fix lot of bug

File:
1 edited

Legend:

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

    r117 r122  
    5353                                                     PORT_READ(in_REEXECUTE_TYPE                  [i]),
    5454                                                     PORT_READ(in_REEXECUTE_STORE_QUEUE_PTR_WRITE [i]),
     55                                                     PORT_READ(in_REEXECUTE_STORE_QUEUE_PTR_READ  [i]),
     56                                                     PORT_READ(in_REEXECUTE_STORE_QUEUE_EMPTY     [i]),
    5557                 (_param->_have_port_load_queue_ptr)?PORT_READ(in_REEXECUTE_LOAD_QUEUE_PTR_WRITE  [i]):0,
    5658                                                     PORT_READ(in_REEXECUTE_HAS_IMMEDIAT          [i]),
     
    119121        for (std::list<entry_t*>::iterator it=_issue_queue[i].begin();it!=_issue_queue[i].end(); ++it)
    120122          {
    121             log_printf(TRACE,Issue_queue,FUNCTION,"      [%.4d] %.2d %.2d %.4d, %.2d %.3d, %.2d %.2d, %.1d %.8x, %.1d %.4d, %.1d %.4d, %.1d %.4d, %.1d %.4d, %.1d %.4d",
     123            log_printf(TRACE,Issue_queue,FUNCTION,"      [%.4d] %.2d %.2d %.4d, %.2d %.3d, %.2d %.2d %.1d %.2d, %.1d %.8x, %.1d %.4d, %.1d %.4d, %.1d %.4d, %.1d %.4d, %.1d %.4d",
    122124                       j,
    123125                       
     
    130132                       
    131133                       (*it)->_store_queue_ptr_write,
     134                       (*it)->_store_queue_ptr_read ,
     135                       (*it)->_store_queue_empty    ,
    132136                       (*it)->_load_queue_ptr_write ,
    133137                       
     
    161165      for (std::list<entry_t*>::iterator it=_reexecute_queue.begin();it!=_reexecute_queue.end(); ++it)
    162166        {
    163           log_printf(TRACE,Issue_queue,FUNCTION,"      [%.4d] %.2d %.2d %.4d, %.2d %.3d, %.2d %.2d, %.1d %.8x, %.1d %.4d, %.1d %.4d, %.1d %.4d, %.1d %.4d, %.1d %.4d",
     167          log_printf(TRACE,Issue_queue,FUNCTION,"      [%.4d] %.2d %.2d %.4d, %.2d %.3d, %.2d %.2d %.1d %.2d, %.1d %.8x, %.1d %.4d, %.1d %.4d, %.1d %.4d, %.1d %.4d, %.1d %.4d",
    164168                     i,
    165169                     
     
    172176                     
    173177                     (*it)->_store_queue_ptr_write,
     178                     (*it)->_store_queue_ptr_read ,
     179                     (*it)->_store_queue_empty    ,
    174180                     (*it)->_load_queue_ptr_write ,
    175181                     
Note: See TracChangeset for help on using the changeset viewer.