Changeset 108 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Free_List_unit/src/Free_List_unit_transition.cpp
- Timestamp:
- Feb 12, 2009, 12:55:06 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Free_List_unit/src/Free_List_unit_transition.cpp
r106 r108 28 28 if (PORT_READ(in_NRESET) == 0) 29 29 { 30 internal_BANK_PRIORITY = 0;30 reg_BANK_PRIORITY = 0; 31 31 for (uint32_t i=0; i<_param->_nb_bank; i++) 32 32 { … … 59 59 { 60 60 log_printf(TRACE,Free_List_unit,FUNCTION," * PUSH_GPR[%d]",i); 61 log_printf(TRACE,Free_List_unit,FUNCTION," * bank : %d",internal_PUSH_GPR_BANK[i]); 62 log_printf(TRACE,Free_List_unit,FUNCTION," * num_reg : %d",PORT_READ(in_PUSH_GPR_NUM_REG [i])); 61 63 62 _gpr_list [internal_PUSH_GPR_BANK[i]].push_back(//_param->_mask_gpr & 63 PORT_READ(in_PUSH_GPR_NUM_REG [i])); 64 _gpr_list [internal_PUSH_GPR_BANK[i]].push_back(PORT_READ(in_PUSH_GPR_NUM_REG [i])); 64 65 } 65 66 // ================================================== … … 70 71 { 71 72 log_printf(TRACE,Free_List_unit,FUNCTION," * PUSH_SPR[%d]",i); 73 log_printf(TRACE,Free_List_unit,FUNCTION," * bank : %d",internal_PUSH_SPR_BANK[i]); 74 log_printf(TRACE,Free_List_unit,FUNCTION," * num_reg : %d",PORT_READ(in_PUSH_SPR_NUM_REG [i])); 72 75 73 _spr_list [internal_PUSH_SPR_BANK[i]].push_back(//_param->_mask_spr & 74 PORT_READ(in_PUSH_SPR_NUM_REG [i])); 76 _spr_list [internal_PUSH_SPR_BANK[i]].push_back(PORT_READ(in_PUSH_SPR_NUM_REG [i])); 75 77 } 76 78 77 if (_param->_priority == PRIORITY_ROUND_ROBIN)78 internal_BANK_PRIORITY = (internal_BANK_PRIORITY+1)%_param->_nb_bank_by_pop;79 if (_param->_priority == PRIORITY_ROUND_ROBIN) 80 reg_BANK_PRIORITY = (reg_BANK_PRIORITY+1)%_param->_nb_bank_by_pop; 79 81 80 82 #if (DEBUG >= DEBUG_TRACE) and (DEBUG_Free_List_unit == true) … … 83 85 84 86 log_printf(TRACE,Free_List_unit,FUNCTION," * Dump Free List"); 85 86 87 for (uint32_t i=0; i<_param->_nb_bank; ++i) 87 88 { 89 log_printf(TRACE,Free_List_unit,FUNCTION," * GPR [%d] - NB_ELT : %d",i,_gpr_list[i].size()); 90 88 91 uint32_t j=0; 89 for (std::list<Tgeneral_address_t>::iterator it=_gpr_list ->begin();90 it!=_gpr_list ->end();92 for (std::list<Tgeneral_address_t>::iterator it=_gpr_list[i].begin(); 93 it!=_gpr_list[i].end(); 91 94 ) 92 95 { … … 95 98 for (uint32_t x=0; x<limit; x++) 96 99 { 97 if (it==_gpr_list ->end())100 if (it==_gpr_list[i].end()) 98 101 break; 99 102 else … … 108 111 for (uint32_t i=0; i<_param->_nb_bank; ++i) 109 112 { 113 log_printf(TRACE,Free_List_unit,FUNCTION," * SPR [%d] - NB_ELT : %d",i,_spr_list[i].size()); 114 110 115 uint32_t j=0; 111 for (std::list<Tspecial_address_t>::iterator it=_spr_list ->begin();112 it!=_spr_list ->end();116 for (std::list<Tspecial_address_t>::iterator it=_spr_list[i].begin(); 117 it!=_spr_list[i].end(); 113 118 ) 114 119 { … … 117 122 for (uint32_t x=0; x<limit; x++) 118 123 { 119 if (it==_spr_list ->end())124 if (it==_spr_list[i].end()) 120 125 break; 121 126 else … … 132 137 #ifdef DEBUG_TEST 133 138 if (1) 139 for (uint32_t i=0; i<_param->_nb_bank; ++i) 134 140 { 135 for (std::list<Tgeneral_address_t>::iterator it1=_gpr_list ->begin();136 it1!=_gpr_list ->end();141 for (std::list<Tgeneral_address_t>::iterator it1=_gpr_list[i].begin(); 142 it1!=_gpr_list[i].end(); 137 143 ++it1 138 144 ) … … 141 147 142 148 it2 ++; 143 while (it2 != _gpr_list ->end())149 while (it2 != _gpr_list[i].end()) 144 150 { 145 151 if (*it1 == *it2) … … 149 155 } 150 156 151 for (std::list<Tspecial_address_t>::iterator it1=_spr_list ->begin();152 it1!=_spr_list ->end();157 for (std::list<Tspecial_address_t>::iterator it1=_spr_list[i].begin(); 158 it1!=_spr_list[i].end(); 153 159 ++it1 154 160 ) … … 157 163 158 164 it2 ++; 159 while (it2 != _spr_list ->end())165 while (it2 != _spr_list[i].end()) 160 166 { 161 167 if (*it1 == *it2)
Note: See TracChangeset
for help on using the changeset viewer.