Ignore:
Timestamp:
May 26, 2009, 9:01:47 PM (15 years ago)
Author:
rosiere
Message:

1) Context_state : Add statistics
2) Add configuration with multi front_end
3) Add optionnal pid at log filename

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Context_State/src/Context_State_transition.cpp

    r119 r120  
    678678      }
    679679
     680
     681#ifdef STATISTICS
     682    if (usage_is_set(_usage,USE_STATISTICS))
     683      for (uint32_t i=0; i<_param->_nb_context; ++i)
     684        switch(reg_STATE[i])
     685          {
     686          case CONTEXT_STATE_OK                                 : (*_stat_nb_cycle_state_ok                      [i])++; break;
     687
     688          case CONTEXT_STATE_KO_EXCEP                           :
     689          case CONTEXT_STATE_KO_EXCEP_ADDR                      :
     690          case CONTEXT_STATE_KO_EXCEP_SPR                       : (*_stat_nb_cycle_state_ko_excep                [i])++; break;
     691
     692          case CONTEXT_STATE_KO_MISS_BRANCH_WAIT_UPDATE         :
     693          case CONTEXT_STATE_KO_MISS_BRANCH_ADDR                :
     694          case CONTEXT_STATE_KO_MISS_BRANCH_WAITEND             : (*_stat_nb_cycle_state_ko_miss_branch          [i])++; break;
     695
     696          case CONTEXT_STATE_KO_MISS_LOAD_ADDR                  :
     697          case CONTEXT_STATE_KO_MISS_LOAD_WAITEND               : (*_stat_nb_cycle_state_ko_miss_load            [i])++; break;
     698
     699          case CONTEXT_STATE_KO_MISS_LOAD_AND_BRANCH_WAIT_UPDATE:
     700          case CONTEXT_STATE_KO_MISS_LOAD_AND_BRANCH_ADDR       :
     701          case CONTEXT_STATE_KO_MISS_LOAD_AND_BRANCH_WAITEND    : (*_stat_nb_cycle_state_ko_miss_load_and_branch [i])++; break;
     702
     703//        case CONTEXT_STATE_KO_MSYNC                           :
     704//        case CONTEXT_STATE_KO_MSYNC_ISSUE                     :
     705          case CONTEXT_STATE_KO_MSYNC_EXEC                      : (*_stat_nb_cycle_state_ko_msync                [i])++; break;
     706
     707//        case CONTEXT_STATE_KO_PSYNC                           :
     708          case CONTEXT_STATE_KO_PSYNC_FLUSH                     :
     709          case CONTEXT_STATE_KO_PSYNC_ADDR                      : (*_stat_nb_cycle_state_ko_psync                [i])++; break;
     710
     711//        case CONTEXT_STATE_KO_CSYNC                           :
     712          case CONTEXT_STATE_KO_CSYNC_FLUSH                     :
     713          case CONTEXT_STATE_KO_CSYNC_ADDR                      : (*_stat_nb_cycle_state_ko_csync                [i])++; break;
     714
     715//        case CONTEXT_STATE_KO_SPR                             :
     716//        case CONTEXT_STATE_KO_SPR_ISSUE                       :
     717          case CONTEXT_STATE_KO_SPR_EXEC                        : (*_stat_nb_cycle_state_ko_spr                  [i])++; break;
     718          }
     719#endif
     720
     721
     722
    680723#if DEBUG >= DEBUG_TRACE
    681724    for (uint32_t i=0; i<_param->_nb_context; i++)
Note: See TracChangeset for help on using the changeset viewer.