35 #ifndef ARM_TRC_MEM_ACC_CACHE_H_INCLUDED 36 #define ARM_TRC_MEM_ACC_CACHE_H_INCLUDED 41 #define MEM_ACC_CACHE_PAGE_SIZE 256 42 #define MEM_ACC_CACHE_MRU_SIZE 12 62 const bool enabled()
const {
return m_bCacheEnabled; };
68 void logAndClearCounts();
71 bool blockInCache(
const ocsd_vaddr_t address,
const uint32_t reqBytes);
72 bool blockInPage(
const ocsd_vaddr_t address,
const uint32_t reqBytes);
73 void logMsg(
const std::string &szMsg);
77 int m_mru_next_new = 0;
78 bool m_bCacheEnabled =
false;
81 uint32_t m_misses = 0;
94 m_mru[i].valid_len = 0;
100 inline bool TrcMemAccCache::blockInPage(
const ocsd_vaddr_t address,
const uint32_t reqBytes)
102 if ((m_mru[m_mru_idx].
st_addr <= address) &&
103 m_mru[m_mru_idx].
st_addr + m_mru[m_mru_idx].
valid_len >= (address + reqBytes))
108 inline bool TrcMemAccCache::blockInCache(
const ocsd_vaddr_t address,
const uint32_t reqBytes)
113 if (blockInPage(address, reqBytes))
127 m_mru[i].valid_len = 0;
128 m_mru[i].st_addr = 0;
134 #endif // ARM_TRC_MEM_ACC_CACHE_H_INCLUDED
#define MEM_ACC_CACHE_MRU_SIZE
const bool enabled() const
struct cache_block cache_block_t
enum _ocsd_mem_space_acc_t ocsd_mem_space_acc_t
Error logging interface.This class provides a standard interface to the decoder error logger for all ...
Memory range to access by trace decoder.
void enableCaching(bool bEnable)
#define MEM_ACC_CACHE_PAGE_SIZE
OpenCSD : Standard Types used in the library interfaces.
uint8_t data[MEM_ACC_CACHE_PAGE_SIZE]