Changeset 112 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/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/Decod_unit/Decod_queue/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_allocation.cpp
r111 r112 57 57 // ~~~~~[ Interface : "decod_in" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 58 58 { 59 ALLOC1_INTERFACE ("decod_in",IN ,WEST,"Input of decod_queue", _param->_nb_inst_decod);59 ALLOC1_INTERFACE_BEGIN("decod_in",IN ,WEST,_("Input of decod_queue"), _param->_nb_inst_decod); 60 60 61 61 ALLOC1_VALACK_IN ( in_DECOD_IN_VAL ,VAL); … … 85 85 ALLOC1_SIGNAL_IN ( in_DECOD_IN_EXCEPTION_USE ,"exception_use",Texception_t ,_param->_size_exception_use ); 86 86 ALLOC1_SIGNAL_IN ( in_DECOD_IN_EXCEPTION ,"exception" ,Texception_t ,_param->_size_exception_decod ); 87 88 ALLOC1_INTERFACE_END(_param->_nb_inst_decod); 87 89 } 88 90 89 91 // ~~~~~[ Interface : "decod_out" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 90 92 { 91 ALLOC1_INTERFACE ("decod_out",OUT,EAST,"Output of decod_queue", _param->_nb_inst_decod);93 ALLOC1_INTERFACE_BEGIN("decod_out",OUT,EAST,_("Output of decod_queue"), _param->_nb_inst_decod); 92 94 93 95 ALLOC1_VALACK_OUT(out_DECOD_OUT_VAL ,VAL); … … 117 119 ALLOC1_SIGNAL_OUT(out_DECOD_OUT_EXCEPTION_USE ,"exception_use",Texception_t ,_param->_size_exception_use ); 118 120 ALLOC1_SIGNAL_OUT(out_DECOD_OUT_EXCEPTION ,"exception" ,Texception_t ,_param->_size_exception_decod ); 121 122 ALLOC1_INTERFACE_END(_param->_nb_inst_decod); 119 123 } 120 124 121 125 // ~~~~~[ Interface : "depth" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 122 126 { 123 ALLOC1_INTERFACE ("depth",IN ,NORTH,"Depth", _param->_nb_context);127 ALLOC1_INTERFACE_BEGIN("depth",IN ,NORTH,_("Depth"), _param->_nb_context); 124 128 125 129 ALLOC1_SIGNAL_IN ( in_DEPTH_MIN ,"min" ,Tdepth_t ,_param->_size_depth); 126 130 ALLOC1_SIGNAL_IN ( in_DEPTH_MAX ,"max" ,Tdepth_t ,_param->_size_depth); 127 131 ALLOC1_SIGNAL_IN ( in_DEPTH_FULL ,"full" ,Tcontrol_t ,1); 132 133 ALLOC1_INTERFACE_END(_param->_nb_context); 128 134 } 129 135 130 136 // ~~~~~[ Interface : "nb_inst" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 131 137 { 132 ALLOC1_INTERFACE ("nb_inst",OUT,NORTH,"Instruction's number", _param->_nb_context);138 ALLOC1_INTERFACE_BEGIN("nb_inst",OUT,NORTH,_("Instruction's number"), _param->_nb_context); 133 139 134 140 ALLOC1_SIGNAL_OUT(out_NB_INST_ALL ,"all" ,Tcontext_t ,_param->_size_nb_inst_decod); 141 142 ALLOC1_INTERFACE_END(_param->_nb_context); 135 143 } 136 144 … … 140 148 switch (_param->_queue_scheme) 141 149 { 142 case DECOD_QUEUE_SCHEME_ONE_FIFO : reg_QUEUE = new std::list<decod_queue_entry_t*>; break;150 case DECOD_QUEUE_SCHEME_ONE_FIFO : ALLOC0(reg_QUEUE,std::list<decod_queue_entry_t*>); break; 143 151 case DECOD_QUEUE_SCHEME_MULTI_FIFO : ALLOC1(reg_QUEUE,std::list<decod_queue_entry_t*>,_param->_nb_bank); break; 144 152 } 145 reg_NB_INST = new uint32_t [_param->_nb_context]; 153 154 ALLOC1(reg_NB_INST,uint32_t,_param->_nb_context); 146 155 147 156 // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 148 internal_DECOD_IN_ACK = new Tcontrol_t [_param->_nb_inst_decod];149 internal_DECOD_OUT_VAL = new Tcontrol_t [_param->_nb_inst_decod];150 internal_DECOD_OUT_ACK = new Tcontrol_t [_param->_nb_inst_decod];157 ALLOC1(internal_DECOD_IN_ACK ,Tcontrol_t,_param->_nb_inst_decod); 158 ALLOC1(internal_DECOD_OUT_VAL,Tcontrol_t,_param->_nb_inst_decod); 159 ALLOC1(internal_DECOD_OUT_ACK,Tcontrol_t,_param->_nb_inst_decod); 151 160 } 152 161 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_deallocation.cpp
r111 r112 92 92 switch (_param->_queue_scheme) 93 93 { 94 case DECOD_QUEUE_SCHEME_ONE_FIFO : delete reg_QUEUE; break; 95 case DECOD_QUEUE_SCHEME_MULTI_FIFO : DELETE1(reg_QUEUE,_param->_nb_bank); break; 96 } 97 delete [] reg_NB_INST; 94 case DECOD_QUEUE_SCHEME_ONE_FIFO : 95 { 96 while (not reg_QUEUE->empty()) 97 { 98 delete reg_QUEUE->front(); 99 reg_QUEUE->pop_front(); 100 } 101 102 DELETE0(reg_QUEUE); 103 break; 104 } 105 case DECOD_QUEUE_SCHEME_MULTI_FIFO : 106 { 107 for (uint32_t i=0; i<_param->_nb_bank; ++i) 108 while (not reg_QUEUE[i].empty()) 109 { 110 delete reg_QUEUE[i].front(); 111 reg_QUEUE[i].pop_front(); 112 } 113 114 DELETE1(reg_QUEUE,_param->_nb_bank); break; 115 } 116 } 117 118 DELETE1(reg_NB_INST ,_param->_nb_context); 98 119 99 120 // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 100 delete [] internal_DECOD_IN_ACK;101 delete [] internal_DECOD_OUT_VAL;102 delete [] internal_DECOD_OUT_ACK;121 DELETE1(internal_DECOD_IN_ACK ,_param->_nb_inst_decod); 122 DELETE1(internal_DECOD_OUT_VAL,_param->_nb_inst_decod); 123 DELETE1(internal_DECOD_OUT_ACK,_param->_nb_inst_decod); 103 124 } 104 125 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_function_multi_fifo_transition.cpp
r111 r112 28 28 { 29 29 for (uint32_t i=0; i<_param->_nb_bank; ++i) 30 reg_QUEUE[i].clear(); 30 while (not reg_QUEUE[i].empty()) 31 { 32 delete reg_QUEUE[i].front(); 33 reg_QUEUE[i].pop_front(); 34 } 31 35 32 36 for (uint32_t i=0; i<_param->_nb_context; i++) -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_function_one_fifo_transition.cpp
r111 r112 27 27 if (PORT_READ(in_NRESET) == 0) 28 28 { 29 reg_QUEUE->clear(); 29 while (not reg_QUEUE->empty()) 30 { 31 delete reg_QUEUE->front(); 32 reg_QUEUE->pop_front(); 33 } 30 34 31 35 for (uint32_t i=0; i<_param->_nb_context; i++)
Note: See TracChangeset
for help on using the changeset viewer.