Changeset 61 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/src/Register_unit_Glue.cpp
- Timestamp:
- Dec 4, 2007, 1:26:55 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/src/Register_unit_Glue.cpp
r60 r61 66 66 PORT_WRITE(out_CONST_1 ,1); 67 67 68 //#if defined(STATISTICS) or defined(VHDL_TESTBENCH)69 70 68 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - transition"); 71 69 … … 73 71 dont_initialize (); 74 72 sensitive_pos << *(in_CLOCK); 75 //#endif76 73 77 74 #ifdef SYSTEMCASS_SPECIFIC … … 83 80 SC_METHOD (genMealy_gpr_read); 84 81 dont_initialize (); 85 sensitive_neg << *(in_CLOCK);82 // sensitive_neg << *(in_CLOCK); 86 83 for (uint32_t j=0; j<_param->_nb_gpr_read; j++) 87 84 { 88 sensitive << *(in_GPR_READ_VAL [j]);89 85 if (_param->_have_port_ooo_engine_id == true) 90 86 sensitive << *(in_GPR_READ_OOO_ENGINE_ID [j]); … … 96 92 << *(in_GPR_READ_STATUS_DATA_VAL [i][j]); 97 93 } 98 //#endif99 94 100 95 #ifdef SYSTEMCASS_SPECIFIC … … 114 109 (*(out_GPR_READ_DATA [j])) (*( in_GPR_READ_REGISTERFILE_DATA [i][j])); 115 110 (*(out_GPR_READ_DATA_VAL [j])) (*( in_GPR_READ_STATUS_DATA_VAL [i][j])); 116 111 } 112 } 113 #endif 114 115 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_gpr_read_status"); 116 117 SC_METHOD (genMealy_gpr_read_status); 118 dont_initialize (); 119 // sensitive_neg << *(in_CLOCK); 120 for (uint32_t j=0; j<_param->_nb_gpr_read; j++) 121 { 122 sensitive << *(in_GPR_READ_VAL [j]); 123 if (_param->_have_port_ooo_engine_id == true) 124 sensitive << *(in_GPR_READ_OOO_ENGINE_ID [j]); 125 126 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 127 sensitive << *(in_GPR_READ_REGISTERFILE_ACK [i][j]); 128 } 129 130 #ifdef SYSTEMCASS_SPECIFIC 131 // List dependency information 132 for (uint32_t j=0; j<_param->_nb_gpr_read; j++) 133 { 134 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 135 { 136 (*(out_GPR_READ_STATUS_VAL [i][j])) (*( in_GPR_READ_VAL [j])); 137 (*(out_GPR_READ_STATUS_VAL [i][j])) (*( in_GPR_READ_REGISTERFILE_ACK [i][j])); 138 if (_param->_have_port_ooo_engine_id == true) 139 (*(out_GPR_READ_STATUS_VAL [i][j])) (*( in_GPR_READ_OOO_ENGINE_ID [j])); 140 } 141 } 142 #endif 143 144 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_gpr_read_registerfile"); 145 146 SC_METHOD (genMealy_gpr_read_registerfile); 147 dont_initialize (); 148 // sensitive_neg << *(in_CLOCK); 149 for (uint32_t j=0; j<_param->_nb_gpr_read; j++) 150 { 151 sensitive << *(in_GPR_READ_VAL [j]); 152 if (_param->_have_port_ooo_engine_id == true) 153 sensitive << *(in_GPR_READ_OOO_ENGINE_ID [j]); 154 155 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 156 sensitive << *(in_GPR_READ_STATUS_ACK [i][j]); 157 } 158 159 #ifdef SYSTEMCASS_SPECIFIC 160 // List dependency information 161 for (uint32_t j=0; j<_param->_nb_gpr_read; j++) 162 { 163 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 164 { 117 165 (*(out_GPR_READ_REGISTERFILE_VAL [i][j])) (*( in_GPR_READ_VAL [j])); 118 166 (*(out_GPR_READ_REGISTERFILE_VAL [i][j])) (*( in_GPR_READ_STATUS_ACK [i][j])); 119 167 if (_param->_have_port_ooo_engine_id == true) 120 168 (*(out_GPR_READ_REGISTERFILE_VAL [i][j])) (*( in_GPR_READ_OOO_ENGINE_ID [j])); 121 122 (*(out_GPR_READ_STATUS_VAL [i][j])) (*( in_GPR_READ_VAL [j]));123 (*(out_GPR_READ_STATUS_VAL [i][j])) (*( in_GPR_READ_REGISTERFILE_ACK [i][j]));124 if (_param->_have_port_ooo_engine_id == true)125 (*(out_GPR_READ_STATUS_VAL [i][j])) (*( in_GPR_READ_OOO_ENGINE_ID [j]));126 169 } 127 170 } … … 132 175 SC_METHOD (genMealy_gpr_write); 133 176 dont_initialize (); 134 sensitive_neg << *(in_CLOCK);177 // sensitive_neg << *(in_CLOCK); 135 178 for (uint32_t j=0; j<_param->_nb_gpr_write; j++) 136 179 { 137 sensitive << *(in_GPR_WRITE_VAL [j]);138 180 if (_param->_have_port_ooo_engine_id == true) 139 181 sensitive << *(in_GPR_WRITE_OOO_ENGINE_ID [j]); … … 143 185 << *(in_GPR_WRITE_STATUS_ACK [i][j]); 144 186 } 145 //#endif146 187 147 188 #ifdef SYSTEMCASS_SPECIFIC … … 156 197 (*(out_GPR_WRITE_ACK [j])) (*( in_GPR_WRITE_REGISTERFILE_ACK [i][j])); 157 198 (*(out_GPR_WRITE_ACK [j])) (*( in_GPR_WRITE_STATUS_ACK [i][j])); 158 199 } 200 } 201 #endif 202 203 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_gpr_write_status"); 204 205 SC_METHOD (genMealy_gpr_write_status); 206 dont_initialize (); 207 // sensitive_neg << *(in_CLOCK); 208 for (uint32_t j=0; j<_param->_nb_gpr_write; j++) 209 { 210 sensitive << *(in_GPR_WRITE_VAL [j]); 211 if (_param->_have_port_ooo_engine_id == true) 212 sensitive << *(in_GPR_WRITE_OOO_ENGINE_ID [j]); 213 214 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 215 sensitive << *(in_GPR_WRITE_REGISTERFILE_ACK [i][j]); 216 } 217 218 #ifdef SYSTEMCASS_SPECIFIC 219 // List dependency information 220 for (uint32_t j=0; j<_param->_nb_gpr_write; j++) 221 { 222 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 223 { 224 (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_VAL [j])); 225 (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_REGISTERFILE_ACK [i][j])); 226 if (_param->_have_port_ooo_engine_id == true) 227 (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_OOO_ENGINE_ID [j])); 228 } 229 } 230 #endif 231 232 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_gpr_write_registerfile"); 233 234 SC_METHOD (genMealy_gpr_write_registerfile); 235 dont_initialize (); 236 // sensitive_neg << *(in_CLOCK); 237 for (uint32_t j=0; j<_param->_nb_gpr_write; j++) 238 { 239 sensitive << *(in_GPR_WRITE_VAL [j]); 240 if (_param->_have_port_ooo_engine_id == true) 241 sensitive << *(in_GPR_WRITE_OOO_ENGINE_ID [j]); 242 243 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 244 sensitive << *(in_GPR_WRITE_STATUS_ACK [i][j]); 245 } 246 247 #ifdef SYSTEMCASS_SPECIFIC 248 // List dependency information 249 for (uint32_t j=0; j<_param->_nb_gpr_write; j++) 250 { 251 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 252 { 159 253 (*(out_GPR_WRITE_REGISTERFILE_VAL [i][j])) (*( in_GPR_WRITE_VAL [j])); 160 254 (*(out_GPR_WRITE_REGISTERFILE_VAL [i][j])) (*( in_GPR_WRITE_STATUS_ACK [i][j])); 161 255 if (_param->_have_port_ooo_engine_id == true) 162 256 (*(out_GPR_WRITE_REGISTERFILE_VAL [i][j])) (*( in_GPR_WRITE_OOO_ENGINE_ID [j])); 163 164 (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_VAL [j])); 165 (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_REGISTERFILE_ACK [i][j])); 166 if (_param->_have_port_ooo_engine_id == true) 167 (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_OOO_ENGINE_ID [j])); 168 } 169 } 170 #endif 171 172 // log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_gpr_write_status"); 173 174 // SC_METHOD (genMealy_gpr_write_status); 175 // dont_initialize (); 176 // sensitive_neg << *(in_CLOCK); 177 // for (uint32_t j=0; j<_param->_nb_gpr_write; j++) 178 // { 179 // sensitive << *(in_GPR_WRITE_VAL [j]); 180 // if (_param->_have_port_ooo_engine_id == true) 181 // sensitive << *(in_GPR_WRITE_OOO_ENGINE_ID [j]); 182 183 // for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 184 // sensitive << *(in_GPR_WRITE_REGISTERFILE_ACK [i][j]); 185 // } 186 // //#endif 187 188 // #ifdef SYSTEMCASS_SPECIFIC 189 // // List dependency information 190 // for (uint32_t j=0; j<_param->_nb_gpr_write; j++) 191 // { 192 // for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 193 // { 194 // (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_VAL [j])); 195 // (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_REGISTERFILE_ACK [i][j])); 196 // if (_param->_have_port_ooo_engine_id == true) 197 // (*(out_GPR_WRITE_STATUS_VAL [i][j])) (*( in_GPR_WRITE_OOO_ENGINE_ID [j])); 198 // } 199 // } 200 // #endif 257 } 258 } 259 #endif 201 260 202 261 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_spr_read"); … … 204 263 SC_METHOD (genMealy_spr_read); 205 264 dont_initialize (); 206 sensitive_neg << *(in_CLOCK);265 // sensitive_neg << *(in_CLOCK); 207 266 for (uint32_t j=0; j<_param->_nb_spr_read; j++) 208 267 { 209 sensitive << *(in_SPR_READ_VAL [j]);210 268 if (_param->_have_port_ooo_engine_id == true) 211 269 sensitive << *(in_SPR_READ_OOO_ENGINE_ID [j]); … … 217 275 << *(in_SPR_READ_STATUS_DATA_VAL [i][j]); 218 276 } 219 //#endif220 277 221 278 #ifdef SYSTEMCASS_SPECIFIC … … 235 292 (*(out_SPR_READ_DATA [j])) (*( in_SPR_READ_REGISTERFILE_DATA [i][j])); 236 293 (*(out_SPR_READ_DATA_VAL [j])) (*( in_SPR_READ_STATUS_DATA_VAL [i][j])); 237 294 } 295 } 296 #endif 297 298 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_spr_read_status"); 299 300 SC_METHOD (genMealy_spr_read_status); 301 dont_initialize (); 302 // sensitive_neg << *(in_CLOCK); 303 for (uint32_t j=0; j<_param->_nb_spr_read; j++) 304 { 305 sensitive << *(in_SPR_READ_VAL [j]); 306 if (_param->_have_port_ooo_engine_id == true) 307 sensitive << *(in_SPR_READ_OOO_ENGINE_ID [j]); 308 309 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 310 sensitive << *(in_SPR_READ_REGISTERFILE_ACK [i][j]); 311 } 312 313 #ifdef SYSTEMCASS_SPECIFIC 314 // List dependency information 315 for (uint32_t j=0; j<_param->_nb_spr_read; j++) 316 { 317 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 318 { 319 (*(out_SPR_READ_STATUS_VAL [i][j])) (*( in_SPR_READ_VAL [j])); 320 (*(out_SPR_READ_STATUS_VAL [i][j])) (*( in_SPR_READ_REGISTERFILE_ACK [i][j])); 321 if (_param->_have_port_ooo_engine_id == true) 322 (*(out_SPR_READ_STATUS_VAL [i][j])) (*( in_SPR_READ_OOO_ENGINE_ID [j])); 323 } 324 } 325 #endif 326 327 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_spr_read_registerfile"); 328 329 SC_METHOD (genMealy_spr_read_registerfile); 330 dont_initialize (); 331 // sensitive_neg << *(in_CLOCK); 332 for (uint32_t j=0; j<_param->_nb_spr_read; j++) 333 { 334 sensitive << *(in_SPR_READ_VAL [j]); 335 if (_param->_have_port_ooo_engine_id == true) 336 sensitive << *(in_SPR_READ_OOO_ENGINE_ID [j]); 337 338 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 339 sensitive << *(in_SPR_READ_STATUS_ACK [i][j]); 340 } 341 342 #ifdef SYSTEMCASS_SPECIFIC 343 // List dependency information 344 for (uint32_t j=0; j<_param->_nb_spr_read; j++) 345 { 346 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 347 { 238 348 (*(out_SPR_READ_REGISTERFILE_VAL [i][j])) (*( in_SPR_READ_VAL [j])); 239 349 (*(out_SPR_READ_REGISTERFILE_VAL [i][j])) (*( in_SPR_READ_STATUS_ACK [i][j])); 240 350 if (_param->_have_port_ooo_engine_id == true) 241 351 (*(out_SPR_READ_REGISTERFILE_VAL [i][j])) (*( in_SPR_READ_OOO_ENGINE_ID [j])); 242 243 (*(out_SPR_READ_STATUS_VAL [i][j])) (*( in_SPR_READ_VAL [j]));244 (*(out_SPR_READ_STATUS_VAL [i][j])) (*( in_SPR_READ_REGISTERFILE_ACK [i][j]));245 if (_param->_have_port_ooo_engine_id == true)246 (*(out_SPR_READ_STATUS_VAL [i][j])) (*( in_SPR_READ_OOO_ENGINE_ID [j]));247 352 } 248 353 } … … 253 358 SC_METHOD (genMealy_spr_write); 254 359 dont_initialize (); 255 sensitive_neg << *(in_CLOCK);360 // sensitive_neg << *(in_CLOCK); 256 361 for (uint32_t j=0; j<_param->_nb_spr_write; j++) 257 362 { 258 sensitive << *(in_SPR_WRITE_VAL [j]);259 363 if (_param->_have_port_ooo_engine_id == true) 260 364 sensitive << *(in_SPR_WRITE_OOO_ENGINE_ID [j]); … … 264 368 << *(in_SPR_WRITE_STATUS_ACK [i][j]); 265 369 } 266 //#endif267 370 268 371 #ifdef SYSTEMCASS_SPECIFIC … … 277 380 (*(out_SPR_WRITE_ACK [j])) (*( in_SPR_WRITE_REGISTERFILE_ACK [i][j])); 278 381 (*(out_SPR_WRITE_ACK [j])) (*( in_SPR_WRITE_STATUS_ACK [i][j])); 279 382 } 383 } 384 #endif 385 386 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_spr_write_status"); 387 388 SC_METHOD (genMealy_spr_write_status); 389 dont_initialize (); 390 // sensitive_neg << *(in_CLOCK); 391 for (uint32_t j=0; j<_param->_nb_spr_write; j++) 392 { 393 sensitive << *(in_SPR_WRITE_VAL [j]); 394 if (_param->_have_port_ooo_engine_id == true) 395 sensitive << *(in_SPR_WRITE_OOO_ENGINE_ID [j]); 396 397 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 398 sensitive << *(in_SPR_WRITE_REGISTERFILE_ACK [i][j]); 399 } 400 401 #ifdef SYSTEMCASS_SPECIFIC 402 // List dependency information 403 for (uint32_t j=0; j<_param->_nb_spr_write; j++) 404 { 405 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 406 { 407 (*(out_SPR_WRITE_STATUS_VAL [i][j])) (*( in_SPR_WRITE_VAL [j])); 408 (*(out_SPR_WRITE_STATUS_VAL [i][j])) (*( in_SPR_WRITE_REGISTERFILE_ACK [i][j])); 409 if (_param->_have_port_ooo_engine_id == true) 410 (*(out_SPR_WRITE_STATUS_VAL [i][j])) (*( in_SPR_WRITE_OOO_ENGINE_ID [j])); 411 } 412 } 413 #endif 414 415 log_printf(INFO,Register_unit_Glue,FUNCTION,"Method - genMealy_spr_write_registerfile"); 416 417 SC_METHOD (genMealy_spr_write_registerfile); 418 dont_initialize (); 419 // sensitive_neg << *(in_CLOCK); 420 for (uint32_t j=0; j<_param->_nb_spr_write; j++) 421 { 422 sensitive << *(in_SPR_WRITE_VAL [j]); 423 if (_param->_have_port_ooo_engine_id == true) 424 sensitive << *(in_SPR_WRITE_OOO_ENGINE_ID [j]); 425 426 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 427 sensitive << *(in_SPR_WRITE_STATUS_ACK [i][j]); 428 } 429 430 #ifdef SYSTEMCASS_SPECIFIC 431 // List dependency information 432 for (uint32_t j=0; j<_param->_nb_spr_write; j++) 433 { 434 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 435 { 280 436 (*(out_SPR_WRITE_REGISTERFILE_VAL [i][j])) (*( in_SPR_WRITE_VAL [j])); 281 437 (*(out_SPR_WRITE_REGISTERFILE_VAL [i][j])) (*( in_SPR_WRITE_STATUS_ACK [i][j])); 282 438 if (_param->_have_port_ooo_engine_id == true) 283 439 (*(out_SPR_WRITE_REGISTERFILE_VAL [i][j])) (*( in_SPR_WRITE_OOO_ENGINE_ID [j])); 284 285 (*(out_SPR_WRITE_STATUS_VAL [i][j])) (*( in_SPR_WRITE_VAL [j]));286 (*(out_SPR_WRITE_STATUS_VAL [i][j])) (*( in_SPR_WRITE_REGISTERFILE_ACK [i][j]));287 if (_param->_have_port_ooo_engine_id == true)288 (*(out_SPR_WRITE_STATUS_VAL [i][j])) (*( in_SPR_WRITE_OOO_ENGINE_ID [j]));289 440 } 290 441 } … … 295 446 SC_METHOD (genMealy_insert); 296 447 dont_initialize (); 297 sensitive_neg << *(in_CLOCK);448 // sensitive_neg << *(in_CLOCK); 298 449 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 299 450 { … … 331 482 SC_METHOD (genMealy_retire); 332 483 dont_initialize (); 333 sensitive_neg << *(in_CLOCK);484 // sensitive_neg << *(in_CLOCK); 334 485 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 335 486 { … … 416 567 }; // end namespace behavioural 417 568 }; // end namespace morpheo 569 570 571
Note: See TracChangeset
for help on using the changeset viewer.