Changeset 111 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src
- Timestamp:
- Feb 27, 2009, 7:37:40 PM (15 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src
- Files:
-
- 6 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue.cpp
r101 r111 76 76 if (usage_is_set(_usage,USE_SYSTEMC)) 77 77 { 78 // Function pointer 79 switch (_param->_queue_scheme) 80 { 81 case DECOD_QUEUE_SCHEME_ONE_FIFO : 82 { 83 function_transition = &morpheo::behavioural::core::multi_front_end::front_end::decod_unit::decod_queue::Decod_queue::function_one_fifo_transition ; 84 function_genMoore = &morpheo::behavioural::core::multi_front_end::front_end::decod_unit::decod_queue::Decod_queue::function_one_fifo_genMoore ; 85 function_genMealy_decod_out = &morpheo::behavioural::core::multi_front_end::front_end::decod_unit::decod_queue::Decod_queue::function_one_fifo_genMealy_decod_out; 86 87 break; 88 } 89 case DECOD_QUEUE_SCHEME_MULTI_FIFO : 90 { 91 function_transition = &morpheo::behavioural::core::multi_front_end::front_end::decod_unit::decod_queue::Decod_queue::function_multi_fifo_transition ; 92 function_genMoore = &morpheo::behavioural::core::multi_front_end::front_end::decod_unit::decod_queue::Decod_queue::function_multi_fifo_genMoore ; 93 function_genMealy_decod_out = &morpheo::behavioural::core::multi_front_end::front_end::decod_unit::decod_queue::Decod_queue::function_multi_fifo_genMealy_decod_out; 94 95 break; 96 } 97 default : 98 { 99 break; 100 } 101 } 102 78 103 log_printf(INFO,Decod_queue,FUNCTION,_("Method - transition")); 79 104 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_allocation.cpp
r108 r111 138 138 { 139 139 // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 140 reg_QUEUE = new std::list<decod_queue_entry_t*>; 140 switch (_param->_queue_scheme) 141 { 142 case DECOD_QUEUE_SCHEME_ONE_FIFO : reg_QUEUE = new std::list<decod_queue_entry_t*>; break; 143 case DECOD_QUEUE_SCHEME_MULTI_FIFO : ALLOC1(reg_QUEUE,std::list<decod_queue_entry_t*>,_param->_nb_bank); break; 144 } 141 145 reg_NB_INST = new uint32_t [_param->_nb_context]; 142 146 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_deallocation.cpp
r108 r111 90 90 91 91 // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 92 delete reg_QUEUE; 92 switch (_param->_queue_scheme) 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 } 93 97 delete [] reg_NB_INST; 94 98 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_genMealy_decod_out.cpp
r108 r111 25 25 log_function(Decod_queue,FUNCTION,_name.c_str()); 26 26 27 Tcontrol_t val [_param->_nb_inst_decod]; 28 for (uint32_t i=0; i<_param->_nb_inst_decod; i++) 29 { 30 val [i] = 0; 31 internal_DECOD_OUT_VAL [i] = 0; 32 internal_DECOD_OUT_ACK [i] = 0; 33 } 34 35 if (not reg_QUEUE->empty()) 36 for (uint32_t i=0; i<_param->_nb_inst_decod; i++) 37 { 38 uint32_t index = reg_LAST_SLOT + i; 39 40 // Stop 41 if (index >= _param->_nb_inst_decod) 42 break; 43 44 if (reg_QUEUE->front()->_val [index]) 45 { 46 log_printf(TRACE,Decod_queue,FUNCTION,_(" * Queue is not empty, slot [%d] is valid."),i); 47 48 Tcontext_t context = reg_QUEUE->front()->_context_id [index]; 49 Tdepth_t depth = reg_QUEUE->front()->_depth [index]; 50 Tdepth_t depth_min = (_param->_have_port_depth)?PORT_READ(in_DEPTH_MIN [context]):0; 51 Tdepth_t depth_max = (_param->_have_port_depth)?PORT_READ(in_DEPTH_MAX [context]):0; 52 Tcontrol_t depth_full = PORT_READ(in_DEPTH_FULL[context]); 53 54 // is a valid instruction ? 55 // If DEPTH_CURRENT : 56 // equal at DEPTH_MIN -> not speculative 57 // not include ]DEPTH_MIN:DEPTH_MAX] -> previous branch miss 58 // include ]DEPTH_MIN:DEPTH_MAX] -> speculative 59 60 // All case 61 // ....... min ...X... max ....... OK 62 // ....... min ....... max ...X... KO 63 // ...X... min ....... max ....... KO 64 // ....... max ....... min ...X... OK 65 // ...X... max ....... min ....... OK 66 // ....... max ...X... min ....... KO 67 68 Tcontrol_t is_valid = ((depth == depth_min) or 69 depth_full or 70 ((depth_min <= depth_max)? 71 ((depth >= depth_min) and (depth <=depth_max)): 72 ((depth >= depth_min) or (depth <=depth_max)))); 73 //Tcontrol_t is_valid = ((depth == depth_min) or 74 // ((depth_min < depth_max)? 75 // (depth<=depth_max): 76 // ((depth > depth_min) or (depth <= depth_max)))); 77 //Tcontrol_t is_valid = depth <= depth_max; 78 79 log_printf(TRACE,Decod_queue,FUNCTION," * is_valid : %d",is_valid); 80 log_printf(TRACE,Decod_queue,FUNCTION," * context : %d",context); 81 log_printf(TRACE,Decod_queue,FUNCTION," * depth : %d",depth); 82 log_printf(TRACE,Decod_queue,FUNCTION," * depth_min : %d",depth_min); 83 log_printf(TRACE,Decod_queue,FUNCTION," * depth_max : %d",depth_max); 84 log_printf(TRACE,Decod_queue,FUNCTION," * depth_full : %d",depth_full); 85 #ifdef DEBUG 86 log_printf(TRACE,Decod_queue,FUNCTION," * address : 0x%x (0x%x)",reg_QUEUE->front()->_address [index],reg_QUEUE->front()->_address [index]<<2); 87 #endif 88 log_printf(TRACE,Decod_queue,FUNCTION," * address_next : 0x%x (0x%x)",reg_QUEUE->front()->_address_next[index],reg_QUEUE->front()->_address_next[index]<<2); 89 internal_DECOD_OUT_VAL [index] = 1; // in all case, val is set (entry is not empty, and instruction is valid) 90 if (is_valid) 91 { 92 val [i] = 1; 93 internal_DECOD_OUT_ACK [index] = PORT_READ(in_DECOD_OUT_ACK [i]); 94 } 95 else 96 { 97 // Consume the instruction (to erase) 98 internal_DECOD_OUT_ACK [index] = 1; 99 } 100 } 101 } 102 103 for (uint32_t i=0; i<_param->_nb_inst_decod; i++) 104 { 105 log_printf(TRACE,Decod_queue,FUNCTION," * DECOD_OUT_VAL : %d",val [i]); 106 107 PORT_WRITE(out_DECOD_OUT_VAL [i],val [i]); 108 } 27 (this->*function_genMealy_decod_out) (); 109 28 110 29 log_end(Decod_queue,FUNCTION); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_genMoore.cpp
r109 r111 25 25 log_function(Decod_queue,FUNCTION,_name.c_str()); 26 26 27 //-------------------------------------------------------------------- 28 //-----[ DECOD_IN ]--------------------------------------------------- 29 //-------------------------------------------------------------------- 30 { 31 Tcontrol_t ack = reg_QUEUE->size() < _param->_size_queue; 32 33 for (uint32_t i=0; i<_param->_nb_inst_decod; i++) 34 { 35 internal_DECOD_IN_ACK [i] = ack; 36 PORT_WRITE(out_DECOD_IN_ACK [i],ack); 37 } 38 } 39 40 //-------------------------------------------------------------------- 41 //-----[ DECOD_OUT ]-------------------------------------------------- 42 //-------------------------------------------------------------------- 43 if (not reg_QUEUE->empty()) 44 for (uint32_t i=0; i<_param->_nb_inst_decod; i++) 45 { 46 uint32_t index = reg_LAST_SLOT + i; 47 48 // Stop 49 if (index >= _param->_nb_inst_decod) 50 break; 51 52 if (_param->_have_port_context_id) 53 PORT_WRITE(out_DECOD_OUT_CONTEXT_ID [i],reg_QUEUE->front()->_context_id [index]); 54 if (_param->_have_port_depth) 55 PORT_WRITE(out_DECOD_OUT_DEPTH [i],reg_QUEUE->front()->_depth [index]); 56 PORT_WRITE(out_DECOD_OUT_TYPE [i],reg_QUEUE->front()->_type [index]); 57 PORT_WRITE(out_DECOD_OUT_OPERATION [i],reg_QUEUE->front()->_operation [index]); 58 PORT_WRITE(out_DECOD_OUT_NO_EXECUTE [i],reg_QUEUE->front()->_no_execute [index]); 59 PORT_WRITE(out_DECOD_OUT_IS_DELAY_SLOT [i],reg_QUEUE->front()->_is_delay_slot [index]); 60 #ifdef DEBUG 61 PORT_WRITE(out_DECOD_OUT_ADDRESS [i],reg_QUEUE->front()->_address [index]); 62 #endif 63 PORT_WRITE(out_DECOD_OUT_ADDRESS_NEXT [i],reg_QUEUE->front()->_address_next [index]); 64 PORT_WRITE(out_DECOD_OUT_HAS_IMMEDIAT [i],reg_QUEUE->front()->_has_immediat [index]); 65 PORT_WRITE(out_DECOD_OUT_IMMEDIAT [i],reg_QUEUE->front()->_immediat [index]); 66 PORT_WRITE(out_DECOD_OUT_READ_RA [i],reg_QUEUE->front()->_read_ra [index]); 67 PORT_WRITE(out_DECOD_OUT_NUM_REG_RA [i],reg_QUEUE->front()->_num_reg_ra [index]); 68 PORT_WRITE(out_DECOD_OUT_READ_RB [i],reg_QUEUE->front()->_read_rb [index]); 69 PORT_WRITE(out_DECOD_OUT_NUM_REG_RB [i],reg_QUEUE->front()->_num_reg_rb [index]); 70 PORT_WRITE(out_DECOD_OUT_READ_RC [i],reg_QUEUE->front()->_read_rc [index]); 71 PORT_WRITE(out_DECOD_OUT_NUM_REG_RC [i],reg_QUEUE->front()->_num_reg_rc [index]); 72 PORT_WRITE(out_DECOD_OUT_WRITE_RD [i],reg_QUEUE->front()->_write_rd [index]); 73 PORT_WRITE(out_DECOD_OUT_NUM_REG_RD [i],reg_QUEUE->front()->_num_reg_rd [index]); 74 PORT_WRITE(out_DECOD_OUT_WRITE_RE [i],reg_QUEUE->front()->_write_re [index]); 75 PORT_WRITE(out_DECOD_OUT_NUM_REG_RE [i],reg_QUEUE->front()->_num_reg_re [index]); 76 PORT_WRITE(out_DECOD_OUT_EXCEPTION_USE [i],reg_QUEUE->front()->_exception_use [index]); 77 PORT_WRITE(out_DECOD_OUT_EXCEPTION [i],reg_QUEUE->front()->_exception [index]); 78 } 79 80 //-------------------------------------------------------------------- 81 //-----[ NB_INST ]---------------------------------------------------- 82 //-------------------------------------------------------------------- 83 for (uint32_t i=0; i<_param->_nb_context; i++) 84 PORT_WRITE(out_NB_INST_ALL [i], reg_NB_INST [i]); 27 (this->*function_genMoore) (); 85 28 86 29 log_end(Decod_queue,FUNCTION); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Decod_queue_transition.cpp
r110 r111 25 25 log_function(Decod_queue,FUNCTION,_name.c_str()); 26 26 27 if (PORT_READ(in_NRESET) == 0) 28 { 29 reg_QUEUE->clear(); 30 31 for (uint32_t i=0; i<_param->_nb_context; i++) 32 reg_NB_INST [i]=0; 33 34 reg_LAST_SLOT = 0; 35 } 36 else 37 { 38 //-------------------------------------------------------------------- 39 //-----[ DECOD_IN ]--------------------------------------------------- 40 //-------------------------------------------------------------------- 41 decod_queue_entry_t * entry = NULL; 42 for (uint32_t i=0; i<_param->_nb_inst_decod; i++) 43 { 44 if (PORT_READ(in_DECOD_IN_VAL [i]) and internal_DECOD_IN_ACK[i]) 45 { 46 log_printf(TRACE,Decod_queue,FUNCTION,_(" * DECOD_IN [%d]"),i); 47 48 if (entry == NULL) 49 { 50 // Once creation and insert in queue 51 entry = new decod_queue_entry_t (_param->_nb_inst_decod); 52 reg_QUEUE->push_back(entry); 53 54 #ifdef STATISTICS 55 if (usage_is_set(_usage,USE_STATISTICS)) 56 (*_stat_sum_transaction_decod_in) ++; 57 #endif 58 } 59 60 #ifdef STATISTICS 61 if (usage_is_set(_usage,USE_STATISTICS)) 62 (*_stat_sum_inst_enable) ++; 63 #endif 64 65 Tcontext_t context = (_param->_have_port_context_id)?PORT_READ(in_DECOD_IN_CONTEXT_ID [i]):0; 66 67 log_printf(TRACE,Decod_queue,FUNCTION,_(" * context : %d"),context); 68 69 entry->_val [i] = 1; 70 entry->_context_id [i] = context; 71 entry->_depth [i] = (_param->_have_port_depth)?PORT_READ(in_DECOD_IN_DEPTH [i]):0; 72 entry->_type [i] = PORT_READ(in_DECOD_IN_TYPE [i]); 73 entry->_operation [i] = PORT_READ(in_DECOD_IN_OPERATION [i]); 74 entry->_no_execute [i] = PORT_READ(in_DECOD_IN_NO_EXECUTE [i]); 75 entry->_is_delay_slot [i] = PORT_READ(in_DECOD_IN_IS_DELAY_SLOT [i]); 76 #ifdef DEBUG 77 entry->_address [i] = PORT_READ(in_DECOD_IN_ADDRESS [i]); 78 #endif 79 entry->_address_next [i] = PORT_READ(in_DECOD_IN_ADDRESS_NEXT [i]); 80 entry->_has_immediat [i] = PORT_READ(in_DECOD_IN_HAS_IMMEDIAT [i]); 81 entry->_immediat [i] = PORT_READ(in_DECOD_IN_IMMEDIAT [i]); 82 entry->_read_ra [i] = PORT_READ(in_DECOD_IN_READ_RA [i]); 83 entry->_num_reg_ra [i] = PORT_READ(in_DECOD_IN_NUM_REG_RA [i]); 84 entry->_read_rb [i] = PORT_READ(in_DECOD_IN_READ_RB [i]); 85 entry->_num_reg_rb [i] = PORT_READ(in_DECOD_IN_NUM_REG_RB [i]); 86 entry->_read_rc [i] = PORT_READ(in_DECOD_IN_READ_RC [i]); 87 entry->_num_reg_rc [i] = PORT_READ(in_DECOD_IN_NUM_REG_RC [i]); 88 entry->_write_rd [i] = PORT_READ(in_DECOD_IN_WRITE_RD [i]); 89 entry->_num_reg_rd [i] = PORT_READ(in_DECOD_IN_NUM_REG_RD [i]); 90 entry->_write_re [i] = PORT_READ(in_DECOD_IN_WRITE_RE [i]); 91 entry->_num_reg_re [i] = PORT_READ(in_DECOD_IN_NUM_REG_RE [i]); 92 entry->_exception_use [i] = PORT_READ(in_DECOD_IN_EXCEPTION_USE [i]); 93 entry->_exception [i] = PORT_READ(in_DECOD_IN_EXCEPTION [i]); 94 95 reg_NB_INST [context] ++; 96 97 log_printf(TRACE,Decod_queue,FUNCTION,_(" * nb_inst : %d"),reg_NB_INST [context]); 98 log_printf(TRACE,Decod_queue,FUNCTION,_(" * PUSH queue")); 99 } 100 } 101 102 //-------------------------------------------------------------------- 103 //-----[ DECOD_OUT ]-------------------------------------------------- 104 //-------------------------------------------------------------------- 105 if (not reg_QUEUE->empty()) 106 { 107 bool find = false; 108 109 for (uint32_t i=0; i<_param->_nb_inst_decod; i++) 110 { 111 // Test transaction : if ok then invalid slot 112 // In order by rename logic 113 if (internal_DECOD_OUT_VAL [i] and internal_DECOD_OUT_ACK[i]) 114 { 115 log_printf(TRACE,Decod_queue,FUNCTION,_(" * DECOD_OUT [%d]"),i); 116 117 #ifdef DEBUG_TEST 118 if (reg_LAST_SLOT != i) 119 throw ERRORMORPHEO(FUNCTION,toString(_("reg_LAST_SLOT (%d) is different at decod_out port (%d)."),reg_LAST_SLOT,i)); 120 #endif 121 reg_LAST_SLOT ++; 122 123 reg_QUEUE->front()->_val [i] = 0; 124 125 Tcontext_t context = reg_QUEUE->front()->_context_id [i]; 126 log_printf(TRACE,Decod_queue,FUNCTION,_(" * context : %d"),context); 127 128 reg_NB_INST [context] --; 129 log_printf(TRACE,Decod_queue,FUNCTION,_(" * nb_inst : %d"),reg_NB_INST [context]); 130 } 131 // Test if slot is (again) valid, if yes, then have less one instruction in the entry 132 find |= reg_QUEUE->front()->_val [i]; 133 } 134 135 // test if can free the entry : test if have consume all entry 136 if (not find) // no valid instruction in current slot 137 { 138 log_printf(TRACE,Decod_queue,FUNCTION,_(" * POP queue")); 139 140 // can pop the slot 141 delete reg_QUEUE->front(); 142 reg_QUEUE->pop_front(); 143 144 reg_LAST_SLOT = 0; 145 } 146 } 147 } 148 149 #if defined(DEBUG) and defined(DEBUG_Decod_queue) and (DEBUG >= DEBUG_TRACE) 150 log_printf(TRACE,Decod_queue,FUNCTION," * Dump decod_queue"); 151 log_printf(TRACE,Decod_queue,FUNCTION," * reg_LAST_SLOT : %d",reg_LAST_SLOT); 152 uint32_t x=0; 153 for (std::list<decod_queue_entry_t*>::iterator it=reg_QUEUE->begin(); 154 it!=reg_QUEUE->end(); 155 it++) 156 { 157 for (uint32_t i=0; i<_param->_nb_inst_decod; i++) 158 { 159 if ((*it)->_val [i]) 160 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" 161 ,x 162 ,i 163 ,(*it)->_val [i] 164 ,(*it)->_context_id [i] 165 ,(*it)->_depth [i] 166 ,(*it)->_type [i] 167 ,(*it)->_operation [i] 168 ,(*it)->_no_execute [i] 169 ,(*it)->_is_delay_slot [i] 170 ,(*it)->_address [i] 171 ,(*it)->_address [i]<<2 172 ,(*it)->_has_immediat [i] 173 ,(*it)->_immediat [i] 174 ,(*it)->_read_ra [i] 175 ,(*it)->_num_reg_ra [i] 176 ,(*it)->_read_rb [i] 177 ,(*it)->_num_reg_rb [i] 178 ,(*it)->_read_rc [i] 179 ,(*it)->_num_reg_rc [i] 180 ,(*it)->_write_rd [i] 181 ,(*it)->_num_reg_rd [i] 182 ,(*it)->_write_re [i] 183 ,(*it)->_num_reg_re [i] 184 ,(*it)->_exception_use [i] 185 ,(*it)->_exception [i] 186 ); 187 else 188 log_printf(TRACE,Decod_queue,FUNCTION," * [%.4d][%.4d] %d" 189 ,x 190 ,i 191 ,(*it)->_val [i] 192 ); 193 194 } 195 x++; 196 } 197 #endif 198 199 #ifdef STATISTICS 200 if (usage_is_set(_usage,USE_STATISTICS)) 201 { 202 *(_stat_use_queue) += reg_QUEUE->size(); 203 for (uint32_t i=0; i<_param->_nb_context; i++) 204 *(_stat_nb_inst [i]) += reg_NB_INST [i]; 205 } 206 #endif 27 (this->*function_transition) (); 207 28 208 29 #if defined(STATISTICS) or defined(VHDL_TESTBENCH) -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Parameters.cpp
r109 r111 20 20 #undef FUNCTION 21 21 #define FUNCTION "Decod_queue::Parameters" 22 Parameters::Parameters (uint32_t nb_context , 23 uint32_t nb_inst_decod , 24 uint32_t size_queue , 25 uint32_t size_general_data , 26 uint32_t * nb_branch_speculated, 27 bool is_toplevel ) 22 Parameters::Parameters (uint32_t nb_context , 23 uint32_t nb_inst_decod , 24 uint32_t size_queue , 25 Tdecod_queue_scheme_t queue_scheme , 26 uint32_t size_general_data , 27 uint32_t * nb_branch_speculated, 28 bool is_toplevel) 28 29 { 29 30 log_begin(Decod_queue,FUNCTION); … … 32 33 _nb_inst_decod = nb_inst_decod ; 33 34 _size_queue = size_queue/nb_inst_decod; 34 // _size_general_data = size_general_data ; 35 _nb_branch_speculated = nb_branch_speculated; 36 _nb_instruction_in_queue = size_queue; 37 35 _queue_scheme = queue_scheme ; 36 // _size_general_data = size_general_data ; 37 _nb_branch_speculated = nb_branch_speculated ; 38 _nb_instruction_in_queue = size_queue ; 39 40 _nb_bank = nb_inst_decod ; 41 38 42 test(); 39 43 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Parameters_msg_error.cpp
r109 r111 30 30 test.error("Size of decod queue must be a multiple of nb_instruction.\n"); 31 31 32 switch (_queue_scheme) 33 { 34 case DECOD_QUEUE_SCHEME_ONE_FIFO : 35 case DECOD_QUEUE_SCHEME_MULTI_FIFO : 36 { 37 break; 38 } 39 default : 40 { 41 test.error(toString(_("Decod queue scheme '%s' is not supported. Please wait a next revision.\n"),toString(_queue_scheme).c_str())); 42 break; 43 } 44 } 45 32 46 log_end(Decod_queue,FUNCTION); 33 47 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod_queue/src/Parameters_print.cpp
r82 r111 30 30 xml.singleton_begin("nb_inst_decod "); xml.attribut("value",toString(_nb_inst_decod )); xml.singleton_end(); 31 31 xml.singleton_begin("size_queue "); xml.attribut("value",toString(_size_queue )); xml.singleton_end(); 32 xml.singleton_begin("queue_scheme "); xml.attribut("value",toString(_queue_scheme )); xml.singleton_end(); 32 33 xml.singleton_begin("size_general_data "); xml.attribut("value",toString(_size_general_data)); xml.singleton_end(); 33 34 for (uint32_t i=0;i<_nb_context; i++)
Note: See TracChangeset
for help on using the changeset viewer.