Ignore:
Timestamp:
Feb 27, 2009, 7:37:40 PM (15 years ago)
Author:
rosiere
Message:

1) Decod_queue : multi implementation (one_fifo, multi_fifo)
2) Issue_queue : multi implementation (in_order, out_of_order)
3) Direction : Add Meta predictor
4) Context_State : re add Branch_complete, More priority to Load miss (is not speculative)
5) Return_Address_Stack : update reg_PREDICT pointer on decod miss prediction
6) UPT : Fix bug in multi event
7) Prediction_glue : in read_stack case, insert in UPT pc_next
8) Rename select : when rob have an event (need flush), read_r{a,b,c} and write_r{d,e} is set at 0

File:
1 edited

Legend:

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

    r110 r111  
    7272    if (usage_is_set(_usage,USE_SYSTEMC))
    7373      {
     74        // Constants :
     75        for (uint32_t i=0; i<_param->_nb_inst_predict; ++i)
     76          {
     77            internal_PREDICT_ACK [i] = 1;
     78            PORT_WRITE(out_PREDICT_ACK [i], internal_PREDICT_ACK [i]);
     79          }
     80        for (uint32_t i=0; i<_param->_nb_inst_update; ++i)
     81          {
     82            internal_UPDATE_ACK [i] = 1;
     83            PORT_WRITE(out_UPDATE_ACK [i], internal_UPDATE_ACK [i]);
     84          }
     85       
     86
    7487        log_printf(INFO,Two_Level_Branch_Predictor,FUNCTION,_("<%s> : Method - transition"),_name.c_str());
    7588
     
    8295# endif   
    8396
    84 //      log_printf(INFO,Two_Level_Branch_Predictor,FUNCTION,_("<%s> : Method - genMoore"),_name.c_str());
     97        log_printf(INFO,Two_Level_Branch_Predictor,FUNCTION,_("<%s> : Method - genMealy_predict"),_name.c_str());
    8598
    86 //      SC_METHOD (genMoore);
    87 //      dont_initialize ();
    88 //      sensitive << (*(in_CLOCK)).neg(); // need internal register
    89        
    90 // # ifdef SYSTEMCASS_SPECIFIC
    91 //      // List dependency information
    92 // # endif   
     99        SC_METHOD (genMealy_predict);
     100        dont_initialize ();
     101        sensitive << (*(in_CLOCK)).neg(); // need internal register
     102
     103        for (uint32_t i=0; i<_param->_nb_inst_predict; ++i)
     104          sensitive
     105//             << (*(in_PREDICT_VAL     [i]))
     106            << (*(in_PREDICT_ADDRESS [i]));
     107               
     108# ifdef SYSTEMCASS_SPECIFIC
     109        // List dependency information
     110# endif   
    93111       
    94112#endif
Note: See TracChangeset for help on using the changeset viewer.