- Timestamp:
- Jan 19, 2008, 12:09:01 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Behavioural/include/Constants.h
r62 r71 11 11 12 12 //-------------------------------------------------------[ Memory ]----- 13 #define OPERATION_MEMORY_LOAD 0x0 // 000_0000 13 14 #define OPERATION_MEMORY_LOAD_8_Z 0x0 // 000_0000 14 15 #define OPERATION_MEMORY_LOAD_16_Z 0x20 // 010_0000 … … 55 56 (x == OPERATION_MEMORY_STORE_HEAD_KO)) 56 57 58 #define is_operation_memory_load_signed(x) \ 59 ((x == OPERATION_MEMORY_LOAD_8_S ) or \ 60 (x == OPERATION_MEMORY_LOAD_16_S) or \ 61 (x == OPERATION_MEMORY_LOAD_32_S) or \ 62 (x == OPERATION_MEMORY_LOAD_64_S) ) 63 57 64 #define MEMORY_ACCESS_8 0x0 58 65 #define MEMORY_ACCESS_16 0x1 … … 60 67 #define MEMORY_ACCESS_64 0x3 61 68 69 #define MEMORY_SIZE_8 8 70 #define MEMORY_SIZE_16 16 71 #define MEMORY_SIZE_32 32 72 #define MEMORY_SIZE_64 64 73 62 74 #define MASK_MEMORY_ACCESS_8 0x0 63 75 #define MASK_MEMORY_ACCESS_16 0x1 64 76 #define MASK_MEMORY_ACCESS_32 0x3 65 77 #define MASK_MEMORY_ACCESS_64 0x7 78 79 #define memory_size(x) \ 80 (((x==OPERATION_MEMORY_LOAD_16_Z)or \ 81 (x==OPERATION_MEMORY_LOAD_16_S)or \ 82 (x==OPERATION_MEMORY_STORE_16 ))?MEMORY_SIZE_16: \ 83 (((x==OPERATION_MEMORY_LOAD_32_Z)or \ 84 (x==OPERATION_MEMORY_LOAD_32_S)or \ 85 (x==OPERATION_MEMORY_STORE_32 ))?MEMORY_SIZE_32: \ 86 (((x==OPERATION_MEMORY_LOAD_64_Z)or \ 87 (x==OPERATION_MEMORY_LOAD_64_S)or \ 88 (x==OPERATION_MEMORY_STORE_64 ))?MEMORY_SIZE_64:MEMORY_SIZE_8))) 66 89 67 90 #define memory_access(x) \ … … 86 109 (x==OPERATION_MEMORY_LOAD_64_S)or \ 87 110 (x==OPERATION_MEMORY_STORE_64 ))?MASK_MEMORY_ACCESS_64:MASK_MEMORY_ACCESS_8))) 88 89 111 90 112 //====================================================[ Exception ]===== … … 131 153 #define EXCEPTION_MEMORY_BUS_ERROR 0x4 // Access at a invalid physical address 132 154 #define EXCEPTION_MEMORY_MISS_SPECULATION 0x5 // Load miss speculation 155 #define EXCEPTION_MEMORY_LOAD_SPECULATIVE 0x6 // The load is speculative : write in register file, but don't commit 133 156 134 157 //==================================================[ dcache_type ]===== 135 # define DCACHE_LOAD 0x0 // 0000 136 # define DCACHE_LOCK 0x1 // 0001 137 # define DCACHE_INVALIDATE 0x2 // 0010 138 # define DCACHE_PREFETCH 0x3 // 0011 139 //#define DCACHE_ 0x4 // 0100 140 //#define DCACHE_ 0x5 // 0101 141 # define DCACHE_FLUSH 0x6 // 0110 142 # define DCACHE_SYNCHRONIZATION 0x7 // 0111 143 144 # define DCACHE_STORE_8 0x8 // 1000 145 # define DCACHE_STORE_16 0x9 // 1001 146 # define DCACHE_STORE_32 0xa // 1010 147 # define DCACHE_STORE_64 0xb // 1011 148 //#define DCACHE_ 0xc // 1100 149 //#define DCACHE_ 0xd // 1101 150 //#define DCACHE_ 0xe // 1110 151 //#define DCACHE_ 0xf // 1111 158 # define DCACHE_LOAD 0x0 // 0000 159 # define DCACHE_LOCK 0x1 // 0001 160 # define DCACHE_INVALIDATE 0x2 // 0010 161 # define DCACHE_PREFETCH 0x3 // 0011 162 //#define DCACHE_ 0x4 // 0100 163 //#define DCACHE_ 0x5 // 0101 164 # define DCACHE_FLUSH 0x6 // 0110 165 # define DCACHE_SYNCHRONIZATION 0x7 // 0111 166 # define DCACHE_STORE_8 0x8 // 1000 167 # define DCACHE_STORE_16 0x9 // 1001 168 # define DCACHE_STORE_32 0xa // 1010 169 # define DCACHE_STORE_64 0xb // 1011 170 //#define DCACHE_ 0xc // 1100 171 //#define DCACHE_ 0xd // 1101 172 //#define DCACHE_ 0xe // 1110 173 //#define DCACHE_ 0xf // 1111 152 174 153 175
Note: See TracChangeset
for help on using the changeset viewer.