Ignore:
Timestamp:
Jul 30, 2010, 4:47:27 PM (14 years ago)
Author:
rosiere
Message:
  • Add test for all configuration
  • RAT : add rat scheme (depth_save)
Location:
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/include/Decod_queue.h

    r137 r139  
    8282  public    : SC_IN (Tcontrol_t         )  **  in_DECOD_IN_NO_EXECUTE     ;//[nb_inst_decod]
    8383  public    : SC_IN (Tcontrol_t         )  **  in_DECOD_IN_IS_DELAY_SLOT  ;//[nb_inst_decod]
     84  public    : SC_IN (Tcontrol_t         )  **  in_DECOD_IN_SAVE_RAT       ;//[nb_inst_decod]
    8485#ifdef DEBUG
    8586  public    : SC_IN (Tgeneral_data_t    )  **  in_DECOD_IN_ADDRESS        ;//[nb_inst_decod]
     
    115116  public    : SC_OUT(Tcontrol_t         )  ** out_DECOD_OUT_LAST_EVENT    ;//[nb_inst_decod]
    116117  public    : SC_OUT(Tcontrol_t         )  ** out_DECOD_OUT_IS_DELAY_SLOT ;//[nb_inst_decod]
     118  public    : SC_OUT(Tcontrol_t         )  ** out_DECOD_OUT_SAVE_RAT      ;//[nb_inst_decod]
    117119#ifdef DEBUG
    118120  public    : SC_OUT(Tgeneral_data_t    )  ** out_DECOD_OUT_ADDRESS       ;//[nb_inst_decod]
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/include/Types.h

    r137 r139  
    4040  public : Tcontrol_t         * _no_execute     ;
    4141  public : Tcontrol_t         * _is_delay_slot  ;
     42  public : Tcontrol_t         * _save_rat       ;
    4243#ifdef DEBUG
    4344  public : Tgeneral_data_t    * _address        ;
     
    7273      ALLOC1(_no_execute     ,Tcontrol_t         ,_nb_inst);
    7374      ALLOC1(_is_delay_slot  ,Tcontrol_t         ,_nb_inst);
     75      ALLOC1(_save_rat       ,Tcontrol_t         ,_nb_inst);
    7476#ifdef DEBUG
    7577      ALLOC1(_address        ,Tgeneral_data_t    ,_nb_inst);
     
    107109      DELETE1(_no_execute     ,_nb_inst);
    108110      DELETE1(_is_delay_slot  ,_nb_inst);
     111      DELETE1(_save_rat       ,_nb_inst);
    109112#ifdef DEBUG
    110113      DELETE1(_address        ,_nb_inst);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_allocation.cpp

    r137 r139  
    7070      ALLOC1_SIGNAL_IN ( in_DECOD_IN_NO_EXECUTE     ,"no_execute"   ,Tcontrol_t         ,1                                   );
    7171      ALLOC1_SIGNAL_IN ( in_DECOD_IN_IS_DELAY_SLOT  ,"is_delay_slot",Tcontrol_t         ,1                                   );
     72      ALLOC1_SIGNAL_IN ( in_DECOD_IN_SAVE_RAT       ,"save_rat"     ,Tcontrol_t         ,1                                   );
    7273#ifdef DEBUG
    7374      ALLOC1_SIGNAL_IN ( in_DECOD_IN_ADDRESS        ,"address"      ,Tgeneral_data_t    ,_param->_size_instruction_address   );
     
    109110      ALLOC1_SIGNAL_OUT(out_DECOD_OUT_LAST_EVENT     ,"last_event"   ,Tcontrol_t         ,1                                   );
    110111      ALLOC1_SIGNAL_OUT(out_DECOD_OUT_IS_DELAY_SLOT  ,"is_delay_slot",Tcontrol_t         ,1                                   );
     112      ALLOC1_SIGNAL_OUT(out_DECOD_OUT_SAVE_RAT       ,"save_rat"     ,Tcontrol_t         ,1                                   );
    111113#ifdef DEBUG
    112114      ALLOC1_SIGNAL_OUT(out_DECOD_OUT_ADDRESS        ,"address"      ,Tgeneral_data_t    ,_param->_size_instruction_address   );
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_deallocation.cpp

    r137 r139  
    4040        DELETE1_SIGNAL( in_DECOD_IN_NO_EXECUTE     ,_param->_nb_inst_decod,1                                   );
    4141        DELETE1_SIGNAL( in_DECOD_IN_IS_DELAY_SLOT  ,_param->_nb_inst_decod,1                                   );
     42        DELETE1_SIGNAL( in_DECOD_IN_SAVE_RAT       ,_param->_nb_inst_decod,1                                   );
    4243#ifdef DEBUG
    4344        DELETE1_SIGNAL( in_DECOD_IN_ADDRESS        ,_param->_nb_inst_decod,_param->_size_instruction_address   );
     
    7273        DELETE1_SIGNAL(out_DECOD_OUT_LAST_EVENT    ,_param->_nb_inst_decod,1                                   );
    7374        DELETE1_SIGNAL(out_DECOD_OUT_IS_DELAY_SLOT ,_param->_nb_inst_decod,1                                   );
     75        DELETE1_SIGNAL(out_DECOD_OUT_SAVE_RAT      ,_param->_nb_inst_decod,1                                   );
    7476#ifdef DEBUG
    7577        DELETE1_SIGNAL(out_DECOD_OUT_ADDRESS       ,_param->_nb_inst_decod,_param->_size_instruction_address   );
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_function_multi_fifo_genMoore.cpp

    r137 r139  
    6464                PORT_WRITE(out_DECOD_OUT_LAST_EVENT    [i],0);
    6565                PORT_WRITE(out_DECOD_OUT_IS_DELAY_SLOT [i],reg_QUEUE[num_bank].front()->_is_delay_slot [0]);
     66                PORT_WRITE(out_DECOD_OUT_SAVE_RAT      [i],reg_QUEUE[num_bank].front()->_save_rat      [0]);
    6667#ifdef DEBUG
    6768                PORT_WRITE(out_DECOD_OUT_ADDRESS       [i],reg_QUEUE[num_bank].front()->_address       [0]);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_function_multi_fifo_transition.cpp

    r137 r139  
    8181                entry->_no_execute    [0] = PORT_READ(in_DECOD_IN_NO_EXECUTE    [i]);
    8282                entry->_is_delay_slot [0] = PORT_READ(in_DECOD_IN_IS_DELAY_SLOT [i]);
     83                entry->_save_rat      [0] = PORT_READ(in_DECOD_IN_SAVE_RAT      [i]);
    8384#ifdef DEBUG
    8485                entry->_address       [0] = PORT_READ(in_DECOD_IN_ADDRESS       [i]);
     
    186187             it++)
    187188          {
    188             log_printf(TRACE,Decod_queue,FUNCTION,"    * [%.4d][%.4d] %.3d %.2d, %.2d %.3d %.1d %.1d, 0x%.8x (0x%.8x), %.1d 0x%.8x, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d"
     189            log_printf(TRACE,Decod_queue,FUNCTION,"    * [%.4d][%.4d] %.3d %.2d, %.2d %.3d %.1d %.1d %.1d, 0x%.8x (0x%.8x), %.1d 0x%.8x, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d"
    189190                       ,i
    190191                       ,x
     
    195196                       ,(*it)->_no_execute    [0]
    196197                       ,(*it)->_is_delay_slot [0]
     198                       ,(*it)->_save_rat      [0]
    197199                       ,(*it)->_address       [0]
    198200                       ,(*it)->_address       [0]<<2
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_function_one_fifo_genMoore.cpp

    r137 r139  
    6464          PORT_WRITE(out_DECOD_OUT_LAST_EVENT    [i],0);
    6565          PORT_WRITE(out_DECOD_OUT_IS_DELAY_SLOT [i],reg_QUEUE->front()->_is_delay_slot [index]);
     66          PORT_WRITE(out_DECOD_OUT_SAVE_RAT      [i],reg_QUEUE->front()->_save_rat      [index]);
    6667#ifdef DEBUG
    6768          PORT_WRITE(out_DECOD_OUT_ADDRESS       [i],reg_QUEUE->front()->_address       [index]);
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_function_one_fifo_transition.cpp

    r137 r139  
    8484                entry->_no_execute    [i] = PORT_READ(in_DECOD_IN_NO_EXECUTE    [i]);
    8585                entry->_is_delay_slot [i] = PORT_READ(in_DECOD_IN_IS_DELAY_SLOT [i]);
     86                entry->_save_rat      [i] = PORT_READ(in_DECOD_IN_SAVE_RAT      [i]);
    8687#ifdef DEBUG
    8788                entry->_address       [i] = PORT_READ(in_DECOD_IN_ADDRESS       [i]);
     
    196197          {
    197198            if ((*it)->_val [i])
    198               log_printf(TRACE,Decod_queue,FUNCTION,"    * [%.4d][%.4d] %.1d, %.3d %.2d, %.2d %.3d %.1d %.1d, 0x%.8x (0x%.8x), %.1d 0x%.8x, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d"
     199              log_printf(TRACE,Decod_queue,FUNCTION,"    * [%.4d][%.4d] %.1d, %.3d %.2d, %.2d %.3d %.1d %.1d %.1d, 0x%.8x (0x%.8x), %.1d 0x%.8x, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d, %.1d %.2d"
    199200                         ,x
    200201                         ,i
     
    206207                         ,(*it)->_no_execute    [i]
    207208                         ,(*it)->_is_delay_slot [i]
     209                         ,(*it)->_save_rat      [i]
    208210                         ,(*it)->_address       [i]
    209211                         ,(*it)->_address       [i]<<2
Note: See TracChangeset for help on using the changeset viewer.