Ignore:
Timestamp:
Mar 18, 2009, 11:36:26 PM (15 years ago)
Author:
rosiere
Message:

1) Stat_list : fix retire old and new register bug
2) Stat_list : remove read_counter and valid flag, because validation of destination is in retire step (not in commit step)
3) Model : add class Model (cf Morpheo.sim)
4) Allocation : alloc_interface_begin and alloc_interface_end to delete temporary array.
5) Script : add distexe.sh
6) Add Comparator, Multiplier, Divider. But this component are not implemented
7) Software : add Dhrystone

File:
1 edited

Legend:

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

    r111 r112  
    4545                                                         ,IN
    4646                                                         ,SOUTH,
    47                                                          "Generalist interface"
     47                                                         _("Generalist interface")
    4848#endif
    4949                                                         );
     
    5656    {
    5757      {
    58         ALLOC1_INTERFACE("predict",IN,SOUTH,"Interface with ifetch unit",_param->_nb_context);
     58        ALLOC1_INTERFACE_BEGIN("predict",IN,SOUTH,_("Interface with ifetch unit"),_param->_nb_context);
    5959       
    6060        ALLOC1_VALACK_IN ( in_PREDICT_VAL                        ,VAL);
     
    6868        ALLOC1_SIGNAL_OUT(out_PREDICT_BRANCH_STATE               ,"branch_state"               ,Tbranch_state_t    ,_param->_size_branch_state);
    6969        ALLOC1_SIGNAL_OUT(out_PREDICT_BRANCH_UPDATE_PREDICTION_ID,"branch_update_prediction_id",Tprediction_ptr_t  ,_param->_size_depth);
     70
     71        ALLOC1_INTERFACE_END(_param->_nb_context);
    7072      }
    7173      {
    72         ALLOC2_INTERFACE("predict",IN,SOUTH,"Interface with ifetch unit",_param->_nb_context,_param->_nb_instruction[it1]);
     74        ALLOC2_INTERFACE_BEGIN("predict",IN,SOUTH,_("Interface with ifetch unit"),_param->_nb_context,_param->_nb_instruction[it1]);
     75
    7376        _ALLOC2_SIGNAL_OUT(out_PREDICT_INSTRUCTION_ENABLE         ,"instruction_enable"         ,Tcontrol_t         ,1,_param->_nb_context,_param->_nb_instruction[it1]);
     77
     78        ALLOC2_INTERFACE_END(_param->_nb_context,_param->_nb_instruction[it1]);
    7479      }
    7580    }
     
    7883    {
    7984      {
    80         ALLOC2_INTERFACE("decod",IN,SOUTH,"Interface with decod unit",_param->_nb_decod_unit,_param->_nb_inst_decod[it1]);
     85        ALLOC2_INTERFACE_BEGIN("decod",IN,SOUTH,_("Interface with decod unit"),_param->_nb_decod_unit,_param->_nb_inst_decod[it1]);
    8186       
    8287        _ALLOC2_VALACK_IN ( in_DECOD_VAL                        ,VAL,_param->_nb_decod_unit,_param->_nb_inst_decod[it1]);
     
    9196        _ALLOC2_SIGNAL_IN ( in_DECOD_ADDRESS_DEST               ,"address_dest"               ,Taddress_t         ,_param->_size_address         ,_param->_nb_decod_unit,_param->_nb_inst_decod[it1]);
    9297        _ALLOC2_SIGNAL_OUT(out_DECOD_CAN_CONTINUE               ,"can_continue"               ,Tcontrol_t         ,1                             ,_param->_nb_decod_unit,_param->_nb_inst_decod[it1]);
     98
     99
     100        ALLOC2_INTERFACE_END(_param->_nb_decod_unit,_param->_nb_inst_decod[it1]);
    93101      }
    94102    }
     
    96104    // ~~~~~[ Interface : "branch_complete" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    97105    {
    98       ALLOC1_INTERFACE("branch_complete", IN,SOUTH, "branch_complete", _param->_nb_inst_branch_complete);
     106      ALLOC1_INTERFACE_BEGIN("branch_complete", IN,SOUTH, _("branch_complete"), _param->_nb_inst_branch_complete);
    99107     
    100108      ALLOC1_VALACK_IN ( in_BRANCH_COMPLETE_VAL            ,VAL);
     
    108116//       ALLOC1_SIGNAL_OUT(out_BRANCH_COMPLETE_ADDRESS_SRC    ,"address_src"    ,Taddress_t,_param->_size_address);
    109117//       ALLOC1_SIGNAL_OUT(out_BRANCH_COMPLETE_ADDRESS_DEST   ,"address_dest"   ,Taddress_t,_param->_size_address);
     118
     119      ALLOC1_INTERFACE_END(_param->_nb_inst_branch_complete);
    110120    }
    111121
    112122    // ~~~~~[ Interface : "branch_event" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    113123    {
    114       ALLOC1_INTERFACE("branch_event", IN,SOUTH, "branch_event", _param->_nb_context);
     124      ALLOC1_INTERFACE_BEGIN("branch_event", IN,SOUTH, _("branch_event"), _param->_nb_context);
    115125     
    116126      ALLOC1_VALACK_OUT(out_BRANCH_EVENT_VAL              ,VAL);
     
    122132      ALLOC1_SIGNAL_OUT(out_BRANCH_EVENT_ADDRESS_DEST_VAL ,"address_dest_val",Tcontrol_t,1);
    123133      ALLOC1_SIGNAL_OUT(out_BRANCH_EVENT_ADDRESS_DEST     ,"address_dest"    ,Taddress_t,_param->_size_address);
     134
     135      ALLOC1_INTERFACE_END(_param->_nb_context);
    124136    }
    125137
    126138    // ~~~~~[ Interface : "depth" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
    127139    {
    128       ALLOC1_INTERFACE("depth",OUT,SOUTH,"Interface with depth",_param->_nb_context);
     140      ALLOC1_INTERFACE_BEGIN("depth",OUT,SOUTH,_("Interface with depth"),_param->_nb_context);
    129141
    130142      ALLOC1_SIGNAL_OUT(out_DEPTH_VAL          ,"val"          ,Tcontrol_t,1);
     
    133145      ALLOC1_SIGNAL_OUT(out_DEPTH_MAX          ,"max"          ,Tdepth_t  ,_param->_size_depth);
    134146      ALLOC1_SIGNAL_OUT(out_DEPTH_FULL         ,"full"         ,Tcontrol_t,1);
     147
     148      ALLOC1_INTERFACE_END(_param->_nb_context);
    135149    }
    136150
    137151    // ~~~~~[ Interface : "event" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    138152    {
    139       ALLOC1_INTERFACE("event", IN,SOUTH,"event", _param->_nb_context);
     153      ALLOC1_INTERFACE_BEGIN("event", IN,SOUTH,_("event"), _param->_nb_context);
    140154
    141155      ALLOC1_VALACK_IN ( in_EVENT_VAL    ,VAL);
     
    143157      ALLOC1_SIGNAL_IN ( in_EVENT_TYPE   ,"type" ,Tevent_type_t ,_param->_size_event_type );
    144158      ALLOC1_SIGNAL_IN ( in_EVENT_DEPTH  ,"depth",Tdepth_t      ,_param->_size_depth      );
     159
     160      ALLOC1_INTERFACE_END(_param->_nb_context);
    145161    }
    146162
     
    421437          COMPONENT_MAP(_component,src , "in_UPDATE_"+toString(i)+    "_DIRECTION",
    422438                                   dest,"out_UPDATE_"+toString(i)+    "_DIRECTION_GOOD");
    423          
     439          COMPONENT_MAP(_component,src , "in_UPDATE_"+toString(i)+    "_PREDICTION_IFETCH",
     440                                   dest,"out_UPDATE_"+toString(i)+    "_PREDICTION_IFETCH");
    424441        }
    425442    }
     
    532549                                   dest,"out_UPDATE_"+toString(i)+    "_MISS_PREDICTION"  );
    533550          COMPONENT_MAP(_component,src , "in_UPDATE_"+toString(i)+    "_PREDICTION_IFETCH",
    534                                    dest,"out_UPDATE_"+toString(i)+"_RAS_PREDICTION_IFETCH");
     551                                   dest,"out_UPDATE_"+toString(i)+    "_PREDICTION_IFETCH");
    535552        }
    536553    }
     
    656673          //in_UPDATE_UPT_RAS_FLUSH             - component_map return_address_stack
    657674          //in_UPDATE_UPT_RAS_INDEX             - component_map return_address_stack
    658           //in_UPDATE_UPT_RAS_PREDICTION_IFETCH - component_map return_address_stack
     675          //in_UPDATE_UPT_PREDICTION_IFETCH     - component_map return_address_stack, direction
    659676        }
    660677
Note: See TracChangeset for help on using the changeset viewer.