Changeset 112 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Return_Address_Stack/src
- Timestamp:
- Mar 18, 2009, 11:36:26 PM (15 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Return_Address_Stack/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Return_Address_Stack/src/Return_Address_Stack_allocation.cpp
r100 r112 46 46 ,IN 47 47 ,SOUTH, 48 "Generalist interface"48 _("Generalist interface") 49 49 #endif 50 50 ); … … 56 56 // ~~~~~[ Interface : "predict" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 57 57 { 58 ALLOC1_INTERFACE ("predict", IN, SOUTH, "predict's interface", _param->_nb_inst_predict);58 ALLOC1_INTERFACE_BEGIN("predict", IN, SOUTH, _("predict's interface"), _param->_nb_inst_predict); 59 59 60 60 ALLOC1_VALACK_IN ( in_PREDICT_VAL ,VAL); … … 66 66 ALLOC1_SIGNAL_OUT(out_PREDICT_ADDRESS_POP ,"address_pop" ,Taddress_t,_param->_size_instruction_address); 67 67 ALLOC1_SIGNAL_OUT(out_PREDICT_INDEX ,"index" ,Tptr_t ,_param->_size_index); 68 69 ALLOC1_INTERFACE_END(_param->_nb_inst_predict); 68 70 } 69 71 70 72 // ~~~~~[ Interface : "decod" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 71 73 { 72 ALLOC1_INTERFACE ("decod", IN, SOUTH, "decod's interface", _param->_nb_inst_decod);74 ALLOC1_INTERFACE_BEGIN("decod", IN, SOUTH, _("decod's interface"), _param->_nb_inst_decod); 73 75 74 76 ALLOC1_VALACK_IN ( in_DECOD_VAL ,VAL); … … 81 83 ALLOC1_SIGNAL_OUT(out_DECOD_INDEX ,"index" ,Tptr_t ,_param->_size_index); 82 84 ALLOC1_SIGNAL_IN ( in_DECOD_MISS_PREDICTION,"miss_prediction",Tcontrol_t,1); 85 86 ALLOC1_INTERFACE_END(_param->_nb_inst_decod); 83 87 } 84 88 85 89 // ~~~~~[ Interface : "update" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 86 90 { 87 ALLOC1_INTERFACE ("update", IN, SOUTH, "update's interface", _param->_nb_inst_update);91 ALLOC1_INTERFACE_BEGIN("update", IN, SOUTH, _("update's interface"), _param->_nb_inst_update); 88 92 89 93 ALLOC1_VALACK_IN ( in_UPDATE_VAL ,VAL); … … 96 100 ALLOC1_SIGNAL_IN ( in_UPDATE_MISS_PREDICTION ,"miss_prediction" ,Tcontrol_t,1); 97 101 ALLOC1_SIGNAL_IN ( in_UPDATE_PREDICTION_IFETCH,"prediction_ifetch",Tcontrol_t,1); 102 103 ALLOC1_INTERFACE_END(_param->_nb_inst_update); 98 104 } 99 105 … … 101 107 { 102 108 // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 109 ALLOC2(reg_stack ,ras_entry_t,_param->_nb_context,_param->_size_queue [it1]); 103 110 104 reg_stack = new ras_entry_t * [_param->_nb_context];105 for (uint32_t i=0; i<_param->_nb_context; i++) 106 reg_stack [i] = new ras_entry_t [_param->_size_queue [i]];111 ALLOC1(reg_TOP ,Tptr_t ,_param->_nb_context); 112 // ALLOC1(reg_BOTTOM ,Tptr_t ,_param->_nb_context); 113 ALLOC1(reg_NB_ELT ,Tptr_t ,_param->_nb_context); 107 114 108 reg_TOP = new Tptr_t [_param->_nb_context];109 // reg_BOTTOM = new Tptr_t [_param->_nb_context];110 reg_NB_ELT = new Tptr_t [_param->_nb_context];115 ALLOC1(reg_PREDICT_TOP ,Tptr_t ,_param->_nb_context); 116 // ALLOC1(reg_PREDICT_BOTTOM ,Tptr_t ,_param->_nb_context); 117 ALLOC1(reg_PREDICT_NB_ELT ,Tptr_t ,_param->_nb_context); 111 118 112 reg_PREDICT_TOP = new Tptr_t [_param->_nb_context]; 113 // reg_PREDICT_BOTTOM = new Tptr_t [_param->_nb_context]; 114 reg_PREDICT_NB_ELT = new Tptr_t [_param->_nb_context]; 115 116 internal_PREDICT_ACK = new Tcontrol_t [_param->_nb_inst_predict]; 117 internal_PREDICT_HIT = new Tcontrol_t [_param->_nb_inst_predict]; 118 internal_DECOD_ACK = new Tcontrol_t [_param->_nb_inst_decod ]; 119 internal_DECOD_HIT = new Tcontrol_t [_param->_nb_inst_decod ]; 120 internal_UPDATE_ACK = new Tcontrol_t [_param->_nb_inst_update ]; 119 ALLOC1(internal_PREDICT_ACK ,Tcontrol_t ,_param->_nb_inst_predict); 120 ALLOC1(internal_PREDICT_HIT ,Tcontrol_t ,_param->_nb_inst_predict); 121 ALLOC1(internal_DECOD_ACK ,Tcontrol_t ,_param->_nb_inst_decod ); 122 ALLOC1(internal_DECOD_HIT ,Tcontrol_t ,_param->_nb_inst_decod ); 123 ALLOC1(internal_UPDATE_ACK ,Tcontrol_t ,_param->_nb_inst_update ); 121 124 } 122 125 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Return_Address_Stack/src/Return_Address_Stack_deallocation.cpp
r100 r112 59 59 60 60 // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 61 62 for (uint32_t i=0; i<_param->_nb_context; i++) 63 delete [] reg_stack [i]; 64 delete [] reg_stack; 65 delete [] reg_TOP; 66 // delete [] reg_BOTTOM; 67 delete [] reg_NB_ELT; 68 delete [] reg_PREDICT_TOP; 69 // delete [] reg_PREDICT_BOTTOM; 70 delete [] reg_PREDICT_NB_ELT; 71 72 delete [] internal_PREDICT_ACK; 73 delete [] internal_PREDICT_HIT; 74 delete [] internal_DECOD_ACK; 75 delete [] internal_DECOD_HIT; 76 delete [] internal_UPDATE_ACK; 61 DELETE2(reg_stack ,_param->_nb_context,_param->_size_queue [it1]); 62 63 DELETE1(reg_TOP ,_param->_nb_context); 64 // DELETE1(reg_BOTTOM ,_param->_nb_context); 65 DELETE1(reg_NB_ELT ,_param->_nb_context); 66 67 DELETE1(reg_PREDICT_TOP ,_param->_nb_context); 68 // DELETE1(reg_PREDICT_BOTTOM ,_param->_nb_context); 69 DELETE1(reg_PREDICT_NB_ELT ,_param->_nb_context); 70 71 DELETE1(internal_PREDICT_ACK ,_param->_nb_inst_predict); 72 DELETE1(internal_PREDICT_HIT ,_param->_nb_inst_predict); 73 DELETE1(internal_DECOD_ACK ,_param->_nb_inst_decod ); 74 DELETE1(internal_DECOD_HIT ,_param->_nb_inst_decod ); 75 DELETE1(internal_UPDATE_ACK ,_param->_nb_inst_update ); 77 76 } 78 77
Note: See TracChangeset
for help on using the changeset viewer.