Changeset 88 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/src/Register_unit_Glue_genMealy_insert.cpp
- Timestamp:
- Dec 10, 2008, 7:31:39 PM (16 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_genMealy_insert.cpp
r81 r88 23 23 void Register_unit_Glue::genMealy_insert (void) 24 24 { 25 log_printf(FUNC,Register_unit_Glue,FUNCTION,"Begin"); 25 log_begin(Register_unit_Glue,FUNCTION); 26 log_function(Register_unit_Glue,FUNCTION,_name.c_str()); 26 27 27 28 for (uint32_t i=0; i<_param->_nb_ooo_engine; i++) 28 { 29 uint32_t x=_param->_nb_inst_insert_rob [i]; 29 for (uint32_t j=0; j<_param->_nb_inst_insert_rob [i]; j++) 30 { 31 Tcontrol_t val = PORT_READ(in_INSERT_ROB_VAL [i][j]); 32 Tcontrol_t gpr_use = PORT_READ(in_INSERT_ROB_RD_USE [i][j]); 33 Tcontrol_t spr_use = PORT_READ(in_INSERT_ROB_RE_USE [i][j]); 34 Tcontrol_t gpr_status_ack = PORT_READ(in_INSERT_ROB_GPR_STATUS_ACK [i][j]); 35 Tcontrol_t spr_status_ack = PORT_READ(in_INSERT_ROB_SPR_STATUS_ACK [i][j]); 36 37 Tcontrol_t ack = (gpr_status_ack and 38 spr_status_ack); 39 Tcontrol_t gpr_status_val = (val and 40 gpr_use and 41 spr_status_ack); 42 Tcontrol_t spr_status_val = (val and 43 spr_use and 44 gpr_status_ack); 30 45 31 for (uint32_t j=0; j<x; j++) 32 { 33 Tcontrol_t val = PORT_READ(in_INSERT_ROB_VAL [i][j]); 34 Tcontrol_t gpr_use = PORT_READ(in_INSERT_ROB_RD_USE [i][j]); 35 Tcontrol_t spr_use = PORT_READ(in_INSERT_ROB_RE_USE [i][j]); 36 Tcontrol_t gpr_ack = PORT_READ(in_INSERT_ROB_GPR_STATUS_ACK [i][j]); 37 Tcontrol_t spr_ack = PORT_READ(in_INSERT_ROB_SPR_STATUS_ACK [i][j]); 38 39 PORT_WRITE(out_INSERT_ROB_ACK [i][j], gpr_ack and spr_ack); 40 PORT_WRITE(out_INSERT_ROB_GPR_STATUS_VAL [i][j], val and gpr_use and spr_ack); 41 PORT_WRITE(out_INSERT_ROB_SPR_STATUS_VAL [i][j], val and spr_use and gpr_ack); 42 } 43 } 46 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * insert_rob [%d][%d]",i,j); 47 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * val (r) : %d",val ); 48 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * ack (w) : %d",ack ); 49 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * gpr_use (rd) (r) : %d",gpr_use ); 50 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * gpr_status_val (w) : %d",gpr_status_val); 51 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * gpr_status_ack (r) : %d",gpr_status_ack); 52 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * spr_use (re) (r) : %d",spr_use ); 53 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * spr_status_val (w) : %d",spr_status_val); 54 log_printf(TRACE,OOO_Engine_Glue,FUNCTION," * spr_status_ack (r) : %d",spr_status_ack); 44 55 45 log_printf(FUNC,Register_unit_Glue,FUNCTION,"End"); 56 PORT_WRITE(out_INSERT_ROB_ACK [i][j], ack ); 57 PORT_WRITE(out_INSERT_ROB_GPR_STATUS_VAL [i][j], gpr_status_val); 58 PORT_WRITE(out_INSERT_ROB_SPR_STATUS_VAL [i][j], spr_status_val); 59 60 } 61 62 log_end(Register_unit_Glue,FUNCTION); 46 63 }; 47 64
Note: See TracChangeset
for help on using the changeset viewer.