Ignore:
Timestamp:
Dec 31, 2008, 11:18:08 AM (15 years ago)
Author:
rosiere
Message:

1) Fix bug (read unit, RAT -> write in R0, SPR desallocation ...)
2) Change VHDL Execute_queue -> use Generic/Queue?
3) Complete document on VHDL generation
4) Add soc test

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_Glue/src/Branch_Target_Buffer_Glue_genMealy_update.cpp

    r81 r98  
    2222  void Branch_Target_Buffer_Glue::genMealy_update (void)
    2323  {
    24     log_printf(FUNC,Branch_Target_Buffer_Glue,FUNCTION,"Begin");
     24    log_begin(Branch_Target_Buffer_Glue,FUNCTION);
     25    log_function(Branch_Target_Buffer_Glue,FUNCTION,_name.c_str());
    2526
    2627    for (uint32_t i=0; i<_param->_nb_inst_update; i++)
    2728      {
    28         Tcontrol_t val          = PORT_READ(in_UPDATE_VAL          [i]);
    29         Tcontrol_t register_ack = PORT_READ(in_UPDATE_REGISTER_ACK [i]);
    30         Tcontrol_t victim_ack   = (_param->_have_port_victim)?PORT_READ(in_UPDATE_VICTIM_ACK [i]):true;
     29        log_printf(TRACE,Branch_Target_Buffer_Glue,FUNCTION,"  * UPDATE [%d]",i);
     30
     31        Tcontrol_t      val          = PORT_READ(in_UPDATE_VAL          [i]);
     32        Tcontrol_t      register_ack = PORT_READ(in_UPDATE_REGISTER_ACK [i]);
     33        Tcontrol_t      victim_ack   = (_param->_have_port_victim)?PORT_READ(in_UPDATE_VICTIM_ACK [i]):true;
     34
     35        log_printf(TRACE,Branch_Target_Buffer_Glue,FUNCTION,"    * val          : %d",val         );
     36        log_printf(TRACE,Branch_Target_Buffer_Glue,FUNCTION,"    * register_ack : %d",register_ack);
     37        log_printf(TRACE,Branch_Target_Buffer_Glue,FUNCTION,"    * victim_ack   : %d",victim_ack  );
    3138       
    3239        PORT_WRITE(out_UPDATE_ACK            [i],         register_ack and victim_ack);
     
    3744        PORT_WRITE(out_UPDATE_VICTIM_VAL     [i], val and register_ack );
    3845        if (not _param->_is_full_associative)
    39         PORT_WRITE(out_UPDATE_VICTIM_ADDRESS [i], (PORT_READ(in_UPDATE_ADDRESS_SRC [i]) >> _param->_shift_bank)&_param->_mask_bank);
     46          {
     47        Tgeneral_data_t address_src  = PORT_READ(in_UPDATE_ADDRESS_SRC  [i]);
     48        log_printf(TRACE,Branch_Target_Buffer_Glue,FUNCTION,"    * address_src  : %.8x",address_src);
     49
     50        PORT_WRITE(out_UPDATE_VICTIM_ADDRESS [i], (address_src >> _param->_shift_bank)&_param->_mask_bank);
     51          }
    4052          }
    4153      }
    4254
    43     log_printf(FUNC,Branch_Target_Buffer_Glue,FUNCTION,"End");
     55    log_end(Branch_Target_Buffer_Glue,FUNCTION);
    4456  };
    4557
Note: See TracChangeset for help on using the changeset viewer.