Changeset 611 for branches/RWT/modules/vci_mem_cache/include
- Timestamp:
- Dec 31, 2013, 12:53:47 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/RWT/modules/vci_mem_cache/include/soclib/mem_cache.h
r604 r611 28 28 #define MEM_CACHE_REGS_H 29 29 30 enum SoclibMemCacheFunc 31 { 32 MEMC_CONFIG = 0, 33 MEMC_INSTRM = 1, 34 MEMC_RERROR = 2, 35 36 MEMC_FUNC_SPAN = 0x200 37 }; 38 30 39 enum SoclibMemCacheConfigRegs 31 40 { … … 43 52 MEMC_CMD_SYNC 44 53 }; 54 55 /////////////////////////////////////////////////////////// 56 // Decoding CONFIG interface commands // 57 // // 58 // VCI ADDRESS // 59 // ================================================ // 60 // GLOBAL | LOCAL | ... | FUNC_IDX | REGS_IDX | 00 // 61 // IDX | IDX | | (3 bits) | (7 bits) | // 62 // ================================================ // 63 // // 64 // For instrumentation: FUNC_IDX = 0b001 // 65 // // 66 // REGS_IDX // 67 // ============================================ // 68 // Z | Y | X | W // 69 // (1 bit) | (2 bits) | (3 bits) | (1 bit) // 70 // ============================================ // 71 // // 72 // For configuration: FUNC_IDX = 0b000 // 73 // // 74 // REGS_IDX // 75 // ============================================ // 76 // RESERVED | X | // 77 // (4 bits) | (3 bits) | // 78 // ============================================ // 79 // // 80 // X : REGISTER INDEX // 81 // // 82 // For WRITE MISS error signaling: FUNC = 0x010 // 83 // // 84 // REGS_IDX // 85 // ============================================ // 86 // RESERVED | X | // 87 // (4 bits) | (3 bits) | // 88 // ============================================ // 89 // // 90 // X : REGISTER INDEX // 91 // // 92 /////////////////////////////////////////////////////////// 93 94 enum SoclibMemCacheInstrRegs { 95 /////////////////////////////////////////////////////// 96 // DIRECT instrumentation registers // 97 /////////////////////////////////////////////////////// 98 99 // LOCAL 100 101 MEMC_LOCAL_READ_LO = 0x00, 102 MEMC_LOCAL_READ_HI = 0x01, 103 MEMC_LOCAL_WRITE_LO = 0x02, 104 MEMC_LOCAL_WRITE_HI = 0x03, 105 MEMC_LOCAL_LL_LO = 0x04, 106 MEMC_LOCAL_LL_HI = 0x05, 107 MEMC_LOCAL_SC_LO = 0x06, 108 MEMC_LOCAL_SC_HI = 0x07, 109 MEMC_LOCAL_CAS_LO = 0x08, 110 MEMC_LOCAL_CAS_HI = 0x09, 111 112 // REMOTE 113 114 MEMC_REMOTE_READ_LO = 0x10, 115 MEMC_REMOTE_READ_HI = 0x11, 116 MEMC_REMOTE_WRITE_LO = 0x12, 117 MEMC_REMOTE_WRITE_HI = 0x13, 118 MEMC_REMOTE_LL_LO = 0x14, 119 MEMC_REMOTE_LL_HI = 0x15, 120 MEMC_REMOTE_SC_LO = 0x16, 121 MEMC_REMOTE_SC_HI = 0x17, 122 MEMC_REMOTE_CAS_LO = 0x18, 123 MEMC_REMOTE_CAS_HI = 0x19, 124 125 // COST 126 127 MEMC_COST_READ_LO = 0x20, 128 MEMC_COST_READ_HI = 0x21, 129 MEMC_COST_WRITE_LO = 0x22, 130 MEMC_COST_WRITE_HI = 0x23, 131 MEMC_COST_LL_LO = 0x24, 132 MEMC_COST_LL_HI = 0x25, 133 MEMC_COST_SC_LO = 0x26, 134 MEMC_COST_SC_HI = 0x27, 135 MEMC_COST_CAS_LO = 0x28, 136 MEMC_COST_CAS_HI = 0x29, 137 138 /////////////////////////////////////////////////////// 139 // COHERENCE instrumentation registers // 140 /////////////////////////////////////////////////////// 141 142 // LOCAL 143 144 MEMC_LOCAL_MUPDATE_LO = 0x40, 145 MEMC_LOCAL_MUPDATE_HI = 0x41, 146 MEMC_LOCAL_MINVAL_LO = 0x42, 147 MEMC_LOCAL_MINVAL_HI = 0x43, 148 MEMC_LOCAL_CLEANUP_LO = 0x44, 149 MEMC_LOCAL_CLEANUP_HI = 0x45, 150 151 // REMOTE 152 153 MEMC_REMOTE_MUPDATE_LO = 0x50, 154 MEMC_REMOTE_MUPDATE_HI = 0x51, 155 MEMC_REMOTE_MINVAL_LO = 0x52, 156 MEMC_REMOTE_MINVAL_HI = 0x53, 157 MEMC_REMOTE_CLEANUP_LO = 0x54, 158 MEMC_REMOTE_CLEANUP_HI = 0x55, 159 160 // COST 161 162 MEMC_COST_MUPDATE_LO = 0x60, 163 MEMC_COST_MUPDATE_HI = 0x61, 164 MEMC_COST_MINVAL_LO = 0x62, 165 MEMC_COST_MINVAL_HI = 0x63, 166 MEMC_COST_CLEANUP_LO = 0x64, 167 MEMC_COST_CLEANUP_HI = 0x65, 168 169 // TOTAL 170 171 MEMC_TOTAL_MUPDATE_LO = 0x68, 172 MEMC_TOTAL_MUPDATE_HI = 0x69, 173 MEMC_TOTAL_MINVAL_LO = 0x6A, 174 MEMC_TOTAL_MINVAL_HI = 0x6B, 175 MEMC_TOTAL_BINVAL_LO = 0x6C, 176 MEMC_TOTAL_BINVAL_HI = 0x6D, 177 }; 178 179 enum SoclibMemCacheRerrorRegs 180 { 181 MEMC_RERROR_ADDR_LO = 0, 182 MEMC_RERROR_ADDR_HI, 183 MEMC_RERROR_SRCID, 184 MEMC_RERROR_IRQ_RESET, 185 MEMC_RERROR_IRQ_ENABLE 186 }; 187 188 #define MEMC_REG(func,idx) ((func<<7)|idx) 45 189 46 190 #endif /* MEM_CACHE_REGS_H */
Note: See TracChangeset
for help on using the changeset viewer.