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)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/src/Decod_genMealy.cpp

    r137 r139  
    5959        internal_CONTEXT_ADDRESS_PREVIOUS [i] = reg_CONTEXT_ADDRESS_PREVIOUS [i];
    6060        internal_CONTEXT_IS_DELAY_SLOT    [i] = reg_CONTEXT_IS_DELAY_SLOT    [i];
     61//      internal_CONTEXT_SAVE_RAT         [i] = reg_CONTEXT_SAVE_RAT         [i];
    6162       
    6263        can_continue                      [i] = PORT_READ(in_CONTEXT_DECOD_ENABLE [i]);
     
    169170                // Depth current. If have decod a branch and i can continue : depth = depth_next
    170171                Tdepth_t     depth     = (_param->_have_port_depth)?PORT_READ(in_CONTEXT_DEPTH [x]):0;
     172                // Tcontrol_t   save_rat  = internal_CONTEXT_SAVE_RAT [x];
     173                Tcontrol_t   no_execute = _decod_instruction->_no_execute;
    171174
    172175                if ((_param->_nb_branch_speculated[x] > 0) and have_decod_branch [x])
     
    182185                PORT_WRITE(out_DECOD_TYPE          [i], type);
    183186                PORT_WRITE(out_DECOD_OPERATION     [i], _decod_instruction->_operation     );
    184                 PORT_WRITE(out_DECOD_NO_EXECUTE    [i], _decod_instruction->_no_execute    );
     187                PORT_WRITE(out_DECOD_NO_EXECUTE    [i], no_execute);
    185188                PORT_WRITE(out_DECOD_IS_DELAY_SLOT [i], _decod_instruction->_is_delay_slot );
     189                // PORT_WRITE(out_DECOD_SAVE_RAT      [i], save_rat);
     190                PORT_WRITE(out_DECOD_SAVE_RAT      [i], ((type == TYPE_BRANCH) and not no_execute));
    186191#ifdef DEBUG
    187192                PORT_WRITE(out_DECOD_ADDRESS       [i], addr);
     
    288293                    internal_CONTEXT_ADDRESS_PREVIOUS [x] = addr;
    289294                    internal_CONTEXT_IS_DELAY_SLOT    [x] = (type == TYPE_BRANCH); // next is a delay slot if current have branch type
     295                    // internal_CONTEXT_SAVE_RAT         [x] = ((type == TYPE_BRANCH) and not no_execute);
    290296                  }
    291297
Note: See TracChangeset for help on using the changeset viewer.