- Timestamp:
- Dec 10, 2008, 7:31:39 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Types.h
r81 r88 25 25 typedef uint8_t Tcounter_t; // universal counter 26 26 typedef uint8_t Tptr_t; // universal pointer 27 27 typedef uint32_t Tspr_t; 28 typedef uint16_t Tspr_address_t; 29 28 30 //typedef uint32_t Tdestination1_t; 29 31 //typedef uint32_t Tdestination2_t; … … 69 71 typedef enum 70 72 { 73 ORBIS32, 74 ORBIS64, 75 ORFPX32, 76 ORFPX64, 77 ORVDX64 78 } ISA; 79 80 typedef enum 81 { 71 82 PRIORITY_STATIC, 72 83 PRIORITY_ROUND_ROBIN … … 93 104 PREDICTOR_NEVER_TAKE , // Branch is never Take 94 105 PREDICTOR_ALWAYS_TAKE , // Branch is always Take 95 PREDICTOR_STATIC , // If the ad ress of destination is previous, then the branch is take106 PREDICTOR_STATIC , // If the address of destination is previous, then the branch is take 96 107 PREDICTOR_LAST_TAKE , // The direction is as the last time (if is the first time : static) 97 108 PREDICTOR_COUNTER , // Counter table … … 99 110 PREDICTOR_GLOBAL , // Counter bank indexed with history table 100 111 PREDICTOR_META , // A meta_predictor choose between 2 predictor : the local or the global 101 PREDICTOR_CUSTOM // Not epredefined scheme112 PREDICTOR_CUSTOM // Not predefined scheme 102 113 } Tpredictor_t; 114 115 //--------------------------------------------------[ instruction ]----- 116 class instruction_t 117 { 118 public : 119 Ttype_t _type ; 120 Toperation_t _operation ; 121 ISA _isa_subset; 122 uint8_t _isa_class ; 123 124 instruction_t (Ttype_t type , 125 Toperation_t operation , 126 ISA isa_subset, 127 uint8_t isa_class ) 128 { 129 _type = type ; 130 _operation = operation ; 131 _isa_subset = isa_subset; 132 _isa_class = isa_class ; 133 } 134 }; 135 136 instruction_t instruction_information (uint32_t instruction); 137 uint32_t instruction_size_data (uint32_t instruction); 103 138 104 139 //----------------------------------------------[ spr_mode_access ]----- … … 122 157 switch (x) 123 158 { 124 case TYPE_ALU : return "ALU" ; break; 125 case TYPE_SHIFT : return "SHIFT" ; break; 126 case TYPE_MOVE : return "MOVE" ; break; 127 case TYPE_TEST : return "TEST" ; break; 128 case TYPE_MUL_DIV : return "MUL_DIV"; break; 129 case TYPE_EXTEND : return "EXTEND" ; break; 130 case TYPE_FIND : return "FIND" ; break; 131 case TYPE_SPECIAL : return "SPECIAL"; break; 132 case TYPE_CUSTOM : return "CUSTOM" ; break; 133 case TYPE_BRANCH : return "BRANCH" ; break; 134 case TYPE_MEMORY : return "MEMORY" ; break; 135 default : return "" ; break; 159 case TYPE_ALU : return "ALU" ; break; 160 case TYPE_SHIFT : return "SHIFT" ; break; 161 case TYPE_MOVE : return "MOVE" ; break; 162 case TYPE_TEST : return "TEST" ; break; 163 case TYPE_MUL : return "MUL" ; break; 164 case TYPE_DIV : return "DIV" ; break; 165 case TYPE_EXTEND : return "EXTEND" ; break; 166 case TYPE_FIND : return "FIND" ; break; 167 case TYPE_SPECIAL : return "SPECIAL" ; break; 168 case TYPE_CUSTOM : return "CUSTOM" ; break; 169 case TYPE_BRANCH : return "BRANCH" ; break; 170 case TYPE_MEMORY : return "MEMORY" ; break; 171 default : return "Unknow type"; break; 136 172 } 137 173 };
Note: See TracChangeset
for help on using the changeset viewer.