Ignore:
Timestamp:
Jun 8, 2009, 10:43:30 PM (15 years ago)
Author:
rosiere
Message:

1) Fix performance
2) add auto generation to SPECINT2000
3) add reset in genMoore and genMealy

Location:
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Prediction_unit_Glue/src
Files:
4 edited

Legend:

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

    r110 r123  
    4040    usage_environment(_usage);
    4141
    42 #if DEBUG_Prediction_unit_Glue == true
    43     log_printf(INFO,Prediction_unit_Glue,FUNCTION,_("<%s> Parameters"),_name.c_str());
    44 
    45     std::cout << *param << std::endl;
    46 #endif   
     42// #if DEBUG_Prediction_unit_Glue == true
     43//     log_printf(INFO,Prediction_unit_Glue,FUNCTION,_("<%s> Parameters"),_name.c_str());
     44
     45//     std::cout << *param << std::endl;
     46// #endif   
    4747
    4848    log_printf(INFO,Prediction_unit_Glue,FUNCTION,"Allocation");
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Prediction_unit_Glue/src/Prediction_unit_Glue_genMealy_decod.cpp

    r110 r123  
    290290          PORT_WRITE(out_DECOD_ACK [i][j], ack[j]);
    291291      }
     292    else
     293      {
     294        // Reset
     295        for (uint32_t i=0; i<_param->_nb_inst_branch_decod; i++)
     296          {
     297            PORT_WRITE(out_DECOD_BTB_VAL [i], 0);
     298            PORT_WRITE(out_DECOD_RAS_VAL [i], 0);
     299            PORT_WRITE(out_DECOD_UPT_VAL [i], 0);
     300          }
     301       
     302        for (uint32_t i=0; i<_param->_nb_decod_unit; i++)
     303          for (uint32_t j=0; j<_param->_nb_inst_decod[i]; j++)
     304            PORT_WRITE(out_DECOD_ACK [i][j], 0);
     305      }
    292306    log_end(Prediction_unit_Glue,FUNCTION);
    293307  };
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Prediction_unit_Glue/src/Prediction_unit_Glue_genMealy_predict.cpp

    r111 r123  
    420420      PORT_WRITE(out_PREDICT_ACK[i],ack[i]);
    421421      }
     422    else
     423      {
     424        // RESET
     425        for (uint32_t i=0; i<_param->_nb_inst_branch_predict; i++)
     426          {
     427            PORT_WRITE(out_PREDICT_BTB_VAL [i], 0);
     428            PORT_WRITE(out_PREDICT_DIR_VAL [i], 0);
     429            PORT_WRITE(out_PREDICT_RAS_VAL [i], 0);
     430            PORT_WRITE(out_PREDICT_UPT_VAL [i], 0);
     431          }
     432        for (uint32_t i=0; i<_param->_nb_context; i++)
     433          PORT_WRITE(out_PREDICT_ACK[i],0);
     434      }
    422435
    423436    log_end(Prediction_unit_Glue,FUNCTION);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Prediction_unit_Glue/src/Prediction_unit_Glue_genMealy_update.cpp

    r98 r123  
    2525    log_function(Prediction_unit_Glue,FUNCTION,_name.c_str());
    2626
     27    if (PORT_READ(in_NRESET))
     28      {
    2729    for (uint32_t i=0; i<_param->_nb_inst_branch_update; i++)
    2830      {
     
    8890        PORT_WRITE(out_UPDATE_UPT_ACK [i], upt_ack);
    8991      }
     92      }
     93    else
     94      {
     95        // RESET
     96        for (uint32_t i=0; i<_param->_nb_inst_branch_update; i++)
     97          {
     98            PORT_WRITE(out_UPDATE_BTB_VAL [i], 0);
     99            PORT_WRITE(out_UPDATE_DIR_VAL [i], 0);
     100            PORT_WRITE(out_UPDATE_RAS_VAL [i], 0);
     101            PORT_WRITE(out_UPDATE_UPT_ACK [i], 0);
     102          }
     103      }
    90104
    91105    log_end(Prediction_unit_Glue,FUNCTION);
Note: See TracChangeset for help on using the changeset viewer.