Ignore:
Timestamp:
Dec 10, 2008, 7:31:39 PM (15 years ago)
Author:
rosiere
Message:

Almost complete design
with Test and test platform

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Branch_Target_Buffer/Branch_Target_Buffer_Register/src/Branch_Target_Buffer_Register.cpp

    r82 r88  
    3939    log_printf(FUNC,Branch_Target_Buffer_Register,FUNCTION,"Begin");
    4040
     41#if DEBUG_Branch_Target_Buffer_Register == true
     42    log_printf(INFO,Branch_Target_Buffer_Register,FUNCTION,_("<%s> Parameters"),_name.c_str());
     43
     44    std::cout << *param << std::endl;
     45#endif   
     46
    4147    log_printf(INFO,Branch_Target_Buffer_Register,FUNCTION,"Allocation");
    4248
     
    4854
    4955#ifdef STATISTICS
    50     if (_usage & USE_STATISTICS)
     56    if (usage_is_set(_usage,USE_STATISTICS))
    5157      {
    5258        log_printf(INFO,Branch_Target_Buffer_Register,FUNCTION,"Allocation of statistics");
     
    5763
    5864#ifdef VHDL
    59     if (_usage & USE_VHDL)
     65    if (usage_is_set(_usage,USE_VHDL))
    6066      {
    6167        // generate the vhdl
     
    6773
    6874#ifdef SYSTEMC
    69     if (_usage & USE_SYSTEMC)
     75    if (usage_is_set(_usage,USE_SYSTEMC))
    7076      {
    7177        // Constant
     
    108114          }
    109115
    110 # ifdef SYSTEMCASS_SPECIFIC
    111         // List dependency information
    112         for (uint32_t i=0; i<_param->_nb_inst_predict; i++)
    113           for (uint32_t j=0; j<_param->_associativity; j++)
    114             {
    115               (*(out_PREDICT_HIT          [i][j])) (*(in_PREDICT_ADDRESS    [i]));
    116               if (_param->_have_port_context_id)
    117               (*(out_PREDICT_HIT          [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
    118 
    119               (*(out_PREDICT_ADDRESS_SRC  [i][j])) (*(in_PREDICT_ADDRESS    [i]));
    120               if (_param->_have_port_context_id)
    121               (*(out_PREDICT_ADDRESS_SRC  [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
    122 
    123               (*(out_PREDICT_ADDRESS_DEST [i][j])) (*(in_PREDICT_ADDRESS    [i]));
    124               if (_param->_have_port_context_id)
    125               (*(out_PREDICT_ADDRESS_DEST [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
    126 
    127               (*(out_PREDICT_CONDITION    [i][j])) (*(in_PREDICT_ADDRESS    [i]));
    128               if (_param->_have_port_context_id)
    129               (*(out_PREDICT_CONDITION    [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
    130 
    131               (*(out_PREDICT_LAST_TAKE    [i][j])) (*(in_PREDICT_ADDRESS    [i]));
    132               if (_param->_have_port_context_id)
    133               (*(out_PREDICT_LAST_TAKE    [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
    134 
    135               (*(out_PREDICT_IS_ACCURATE  [i][j])) (*(in_PREDICT_ADDRESS    [i]));
    136               if (_param->_have_port_context_id)
    137               (*(out_PREDICT_IS_ACCURATE  [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
    138           }
    139 # endif
     116// # ifdef SYSTEMCASS_SPECIFIC
     117//      // List dependency information
     118//      for (uint32_t i=0; i<_param->_nb_inst_predict; i++)
     119//        for (uint32_t j=0; j<_param->_associativity; j++)
     120//          {
     121//            (*(out_PREDICT_HIT          [i][j])) (*(in_PREDICT_ADDRESS    [i]));
     122//            if (_param->_have_port_context_id)
     123//            (*(out_PREDICT_HIT          [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
     124
     125//            (*(out_PREDICT_ADDRESS_SRC  [i][j])) (*(in_PREDICT_ADDRESS    [i]));
     126//            if (_param->_have_port_context_id)
     127//            (*(out_PREDICT_ADDRESS_SRC  [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
     128
     129//            (*(out_PREDICT_ADDRESS_DEST [i][j])) (*(in_PREDICT_ADDRESS    [i]));
     130//            if (_param->_have_port_context_id)
     131//            (*(out_PREDICT_ADDRESS_DEST [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
     132
     133//            (*(out_PREDICT_CONDITION    [i][j])) (*(in_PREDICT_ADDRESS    [i]));
     134//            if (_param->_have_port_context_id)
     135//            (*(out_PREDICT_CONDITION    [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
     136
     137//            (*(out_PREDICT_LAST_TAKE    [i][j])) (*(in_PREDICT_ADDRESS    [i]));
     138//            if (_param->_have_port_context_id)
     139//            (*(out_PREDICT_LAST_TAKE    [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
     140
     141//            (*(out_PREDICT_IS_ACCURATE  [i][j])) (*(in_PREDICT_ADDRESS    [i]));
     142//            if (_param->_have_port_context_id)
     143//            (*(out_PREDICT_IS_ACCURATE  [i][j])) (*(in_PREDICT_CONTEXT_ID [i]));
     144//        }
     145// # endif
    140146
    141147        if (_param->_have_port_victim)
     
    215221
    216222#ifdef STATISTICS
    217     if (_usage & USE_STATISTICS)
     223    if (usage_is_set(_usage,USE_STATISTICS))
    218224      {
    219225        statistics_deallocation();
Note: See TracChangeset for help on using the changeset viewer.