Changeset 112 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src
- Timestamp:
- Mar 18, 2009, 11:36:26 PM (15 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit_allocation.cpp
r101 r112 58 58 // ~~~~~[ Interface : "spr_access" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 59 59 { 60 ALLOC1_INTERFACE ("spr_access",IN,WEST, _("Access from reexecute_unit"), _param->_nb_inst_reexecute);60 ALLOC1_INTERFACE_BEGIN("spr_access",IN,WEST, _("Access from reexecute_unit"), _param->_nb_inst_reexecute); 61 61 62 62 ALLOC1_VALACK_IN ( in_SPR_ACCESS_VAL ,VAL); … … 70 70 ALLOC1_SIGNAL_OUT(out_SPR_ACCESS_RDATA ,"rdata" ,Tspr_t ,_param->_size_spr); 71 71 ALLOC1_SIGNAL_OUT(out_SPR_ACCESS_INVALID ,"invalid" ,Tcontrol_t ,1); 72 73 ALLOC1_INTERFACE_END(_param->_nb_inst_reexecute); 72 74 } 73 75 74 76 // ~~~~~[ Interface : "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 75 77 { 76 ALLOC2_INTERFACE ("spr_read",OUT,WEST, _("Output for a spr bit field."), _param->_nb_front_end, _param->_nb_context[it1]);78 ALLOC2_INTERFACE_BEGIN("spr_read",OUT,WEST, _("Output for a spr bit field."), _param->_nb_front_end, _param->_nb_context[it1]); 77 79 78 80 _ALLOC2_SIGNAL_OUT(out_SPR_READ_SR ,"sr",Tspr_t,_param->_size_spr, _param->_nb_front_end, _param->_nb_context[it1]); 81 82 ALLOC2_INTERFACE_END(_param->_nb_front_end, _param->_nb_context[it1]); 79 83 } 80 84 81 85 // ~~~~~[ Interface : "spr_commit" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 82 86 { 83 ALLOC2_INTERFACE ("spr_commit",IN,WEST, _("Commit instruction to change SR's flags."), _param->_nb_front_end, _param->_nb_context[it1]);87 ALLOC2_INTERFACE_BEGIN("spr_commit",IN,WEST, _("Commit instruction to change SR's flags."), _param->_nb_front_end, _param->_nb_context[it1]); 84 88 85 89 _ALLOC2_VALACK_IN ( in_SPR_COMMIT_VAL ,VAL,_param->_nb_front_end, _param->_nb_context[it1]); … … 91 95 _ALLOC2_SIGNAL_IN ( in_SPR_COMMIT_SR_OV_VAL ,"sr_ov_val" ,Tcontrol_t ,1,_param->_nb_front_end, _param->_nb_context[it1]); 92 96 _ALLOC2_SIGNAL_IN ( in_SPR_COMMIT_SR_OV ,"sr_ov" ,Tcontrol_t ,1,_param->_nb_front_end, _param->_nb_context[it1]); 97 98 ALLOC2_INTERFACE_END(_param->_nb_front_end, _param->_nb_context[it1]); 93 99 } 94 100 95 101 // ~~~~~[ Interface "spr_event" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 96 102 { 97 ALLOC2_INTERFACE ("spr_event",IN,WEST, _("Event change a lot of exception."), _param->_nb_front_end, _param->_nb_context[it1]);103 ALLOC2_INTERFACE_BEGIN("spr_event",IN,WEST, _("Event change a lot of exception."), _param->_nb_front_end, _param->_nb_context[it1]); 98 104 99 105 _ALLOC2_VALACK_IN ( in_SPR_EVENT_VAL ,VAL,_param->_nb_front_end, _param->_nb_context[it1]); … … 104 110 _ALLOC2_SIGNAL_IN ( in_SPR_EVENT_SR_DSX ,"SR_DSX" ,Tcontrol_t ,1 ,_param->_nb_front_end, _param->_nb_context[it1]); 105 111 _ALLOC2_SIGNAL_IN ( in_SPR_EVENT_SR_TO_ESR ,"SR_TO_ESR" ,Tcontrol_t ,1 ,_param->_nb_front_end, _param->_nb_context[it1]); 112 113 ALLOC2_INTERFACE_END(_param->_nb_front_end, _param->_nb_context[it1]); 106 114 } 107 115 … … 109 117 { 110 118 // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 111 internal_SPR_ACCESS_ACK = new Tcontrol_t [_param->_nb_inst_reexecute]; 112 internal_SPR_COMMIT_ACK = new Tcontrol_t * [_param->_nb_front_end]; 113 internal_SPR_EVENT_ACK = new Tcontrol_t * [_param->_nb_front_end]; 114 for (uint32_t i=0; i<_param->_nb_front_end; i++) 115 { 116 internal_SPR_COMMIT_ACK [i] = new Tcontrol_t [_param->_nb_context [i]]; 117 internal_SPR_EVENT_ACK [i] = new Tcontrol_t [_param->_nb_context [i]]; 118 } 119 ALLOC1(internal_SPR_ACCESS_ACK ,Tcontrol_t,_param->_nb_inst_reexecute); 120 ALLOC2(internal_SPR_COMMIT_ACK ,Tcontrol_t,_param->_nb_front_end,_param->_nb_context [it1]); 121 ALLOC2(internal_SPR_EVENT_ACK ,Tcontrol_t,_param->_nb_front_end,_param->_nb_context [it1]); 119 122 } 120 123 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Special_Register_unit/src/Special_Register_unit_deallocation.cpp
r98 r112 59 59 60 60 // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 61 delete [] internal_SPR_ACCESS_ACK; 62 for (uint32_t i=0; i<_param->_nb_front_end; i++) 63 { 64 delete [] internal_SPR_COMMIT_ACK [i]; 65 delete [] internal_SPR_EVENT_ACK [i]; 66 } 67 delete [] internal_SPR_COMMIT_ACK; 68 delete [] internal_SPR_EVENT_ACK; 61 DELETE1(internal_SPR_ACCESS_ACK ,_param->_nb_inst_reexecute); 62 DELETE2(internal_SPR_COMMIT_ACK ,_param->_nb_front_end,_param->_nb_context [it1]); 63 DELETE2(internal_SPR_EVENT_ACK ,_param->_nb_front_end,_param->_nb_context [it1]); 69 64 } 70 65
Note: See TracChangeset
for help on using the changeset viewer.