Changeset 88 for trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include
- Timestamp:
- Dec 10, 2008, 7:31:39 PM (16 years ago)
- Location:
- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Decod.h
r86 r88 13 13 #endif 14 14 15 #include <iostream>16 #include <list>17 15 #include "Common/include/ToString.h" 18 16 #include "Common/include/Debug.h" … … 29 27 #endif 30 28 #include "Behavioural/include/Usage.h" 29 30 #include "Behavioural/Generic/Priority/include/Priority.h" 31 32 #include <iostream> 33 #include <list> 31 34 32 35 namespace morpheo { … … 75 78 public : SC_IN (Tbranch_state_t ) ** in_IFETCH_BRANCH_STATE ;//[nb_context] 76 79 public : SC_IN (Tprediction_ptr_t ) ** in_IFETCH_BRANCH_UPDATE_PREDICTION_ID ;//[nb_context] 77 80 public : SC_IN (Texception_t ) ** in_IFETCH_EXCEPTION ;//[nb_context] 78 81 // ~~~~~[ Interface : "decod" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 79 82 public : SC_OUT(Tcontrol_t ) ** out_DECOD_VAL ;//[nb_inst_decod] … … 83 86 public : SC_OUT(Ttype_t ) ** out_DECOD_TYPE ;//[nb_inst_decod] 84 87 public : SC_OUT(Toperation_t ) ** out_DECOD_OPERATION ;//[nb_inst_decod] 88 public : SC_OUT(Tcontrol_t ) ** out_DECOD_NO_EXECUTE ;//[nb_inst_decod] 85 89 public : SC_OUT(Tcontrol_t ) ** out_DECOD_IS_DELAY_SLOT ;//[nb_inst_decod] 86 90 public : SC_OUT(Tgeneral_data_t ) ** out_DECOD_ADDRESS ;//[nb_inst_decod] … … 98 102 public : SC_OUT(Tspecial_address_t ) ** out_DECOD_NUM_REG_RE ;//[nb_inst_decod] 99 103 public : SC_OUT(Texception_t ) ** out_DECOD_EXCEPTION_USE ;//[nb_inst_decod] 104 public : SC_OUT(Texception_t ) ** out_DECOD_EXCEPTION ;//[nb_inst_decod] 100 105 101 106 // ~~~~~[ Interface : "predict" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ … … 121 126 public : SC_IN (Tcontrol_t ) * in_CONTEXT_EVENT_ACK ; 122 127 public : SC_OUT(Tcontext_t ) * out_CONTEXT_EVENT_CONTEXT_ID ; 128 public : SC_OUT(Tdepth_t ) * out_CONTEXT_EVENT_DEPTH ; 123 129 public : SC_OUT(Tevent_type_t ) * out_CONTEXT_EVENT_TYPE ; 124 130 public : SC_OUT(Tcontrol_t ) * out_CONTEXT_EVENT_IS_DELAY_SLOT ; … … 127 133 128 134 // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 private : generic::priority::Priority * _priority; 129 136 130 137 // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 131 private : uint32_t reg_CONTEXT_PRIORITY;132 138 private : Tgeneral_data_t * reg_CONTEXT_ADDRESS_PREVIOUS ; //[nb_context] 133 139 private : Tcontrol_t * reg_CONTEXT_IS_DELAY_SLOT ; //[nb_context] … … 136 142 private : Tcontrol_t * internal_CONTEXT_IS_DELAY_SLOT ; //[nb_context] 137 143 144 private : Tcontrol_t * internal_DECOD_VAL ; //[nb_inst_decod] 138 145 // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 139 146 private : decod_instruction_t * _decod_instruction; … … 141 148 private : function_decod_t **** _function_decod ; //[nb_context][type][opcod] 142 149 private : function_decod_t **** _function_custom ; //[nb_context][type][opcod] 143 private : std::list<select_t> select;144 150 #endif 145 151 -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Parameters.h
r86 r88 29 29 public : uint32_t * _nb_inst_fetch ; //[nb_context] 30 30 public : uint32_t _nb_inst_decod ; 31 32 public : uint32_t _nb_branch_speculated ;33 public : uint32_t _size_branch_update_prediction; 31 //public : uint32_t _size_general_data ; 32 public : uint32_t * _nb_branch_speculated ; //[nb_context] 33 //public : uint32_t * _size_branch_update_prediction; //[nb_context] 34 34 public : uint32_t _nb_context_select ; 35 35 public : Tpriority_t _priority ; 36 36 public : Tload_balancing_t _load_balancing ; 37 37 public : bool ** _instruction_implemeted ; //[nb_context][nb_instruction] 38 public : morpheo::behavioural::custom::custom_information_t (*_get_custom_information) ( uint32_t);38 public : morpheo::behavioural::custom::custom_information_t (*_get_custom_information) (void); 39 39 40 public : uint32_t _max_nb_inst_fetch ; 41 42 public : uint32_t _size_address_inst ; 43 public : uint32_t _size_context_id ; 44 public : uint32_t _size_depth ; 45 public : uint32_t _size_inst_ifetch_ptr ; 46 47 public : bool _have_port_context_id ; 48 public : bool _have_port_depth ; 49 public : bool _have_port_branch_update_prediction_id; 50 public : bool _have_port_inst_ifetch_ptr ; 40 public : uint32_t _max_nb_inst_fetch; 41 //public : uint32_t _size_address_inst; 51 42 52 43 //-----[ methods ]----------------------------------------------------------- … … 55 46 uint32_t * nb_inst_fetch , 56 47 uint32_t nb_inst_decod , 48 uint32_t * nb_branch_speculated , 49 // uint32_t * size_branch_update_prediction, 50 uint32_t nb_context_select , 57 51 uint32_t size_general_data , 58 uint32_t nb_branch_speculated ,59 uint32_t size_branch_update_prediction,60 uint32_t nb_context_select ,61 52 Tpriority_t priority , 62 53 Tload_balancing_t load_balancing , 63 54 bool ** instruction_implemeted , 64 morpheo::behavioural::custom::custom_information_t (*get_custom_information) (uint32_t)); 55 morpheo::behavioural::custom::custom_information_t (*get_custom_information) (void), 56 bool is_toplevel=false 57 ); 65 58 66 59 // public : Parameters (Parameters & param) ; 67 60 public : ~Parameters () ; 61 62 public : void copy (void); 68 63 69 64 public : Parameters_test msg_error (void); -
trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Types.h
r81 r88 19 19 namespace decod { 20 20 21 class select_t22 {23 public : uint32_t _context ;24 public : uint32_t _inst_fetch;25 26 public : select_t (uint32_t context,27 uint32_t inst_fetch)28 {29 _context = context ;30 _inst_fetch = inst_fetch;31 }32 };33 34 21 35 22 }; // end namespace decod
Note: See TracChangeset
for help on using the changeset viewer.