This section describes the trace sources.
ALLOC_LINEFILL
The system allocated a complete line fill into the RAMs. This happens when the cache has to read the data for a line fill from potentially upstream or downstream. Fields:
ENTRY_INDEX
unsigned int
- The entry index the line has been loaded into.
MASTER_ID
unsigned int
- The master ID for the associated transaction.
MEMORY_ATTRIBUTES
unsigned int
- The memory attributes used for the allocation. bits[3:0] are the inner ACACHE, bits[7:4] are the outer ACACHE, bits[9:8] are ADOMAIN, bits[12:10] are APROT, the rest are undocumented.
NS_ADDR
unsigned int
- The security world and address of the first byte of the line, the MSB encodes the NS bit.
ALLOC_WRITE
The system allocated a complete line write into the RAMs. This happens when the cache receives a complete cache line write. It need not read from anywhere. Fields:
ENTRY_INDEX
unsigned int
- The entry index the line has been written into.
MEMORY_ATTRIBUTES
unsigned int
- The memory attributes used for the allocation. bits[3:0] are the inner ACACHE, bits[7:4] are the outer ACACHE, bits[9:8] are ADOMAIN, bits[12:10] are APROT, the rest are undocumented.
NS_ADDR
unsigned int
- The security world and address of the first byte of the line, the MSB encodes the NS bit.
ATOMIC_SLAVE_ACCESS
Information on the atomic operation at slave side. Fields:
ACCESS_RESULT
enum
- Result of atomic access
COMPARE_VALUE
unsigned int
- Value to be compared with memory by CAS
LOAD_VALUE
unsigned int
- Value to be loaded from memory as a result of atomic operation
MASTER
unsigned int
- ID of master which initiated the transaction
NS
bool
- Transaction is Non-Secure
OPERAND_VALUE
unsigned int
- Incoming operand value provided by core
OPERATION
enum
- Type of atomic operation
PADDR
unsigned int
- Physical address
STORE_VALUE
unsigned int
- Value to be stored to memory as a result of atomic operation
ArchMsg.Error.cached_attributes_mismatch
Attributes differ between page and line in cache from same page. Fields:
LINEATTR
unsigned int
- Attributes of the cache allocated lines
LINES
unsigned int
- Number of cache lines already allocated
NS_ADDR
unsigned int
- The security world and address of the first byte of the page, the MSB encodes the NS bit.
TXATTR
unsigned int
- Attributes of the transaction
ArchMsg.Error.cached_attributes_mismatch#lineinfo
Information about allocated lines in page. Fields:
PADDR
unsigned int
- address of this cache line
TAG
unsigned int
- tag data of this cache line
ArchMsg.Warning.ns_s_dirty_hit
Cache hit at S and NS versions of the same physical address. Fields:
INDEX0
unsigned int
- The cache line index of the affected cache line
INDEX1
unsigned int
- The cache line index of the other regime cache line
PADDR
unsigned int
- The address of the affected cache line
TAG0
unsigned int
- The tag data of the affected cache line
TAG1
unsigned int
- The tag data of the other regime cache line
CACHE_READ_HIT
Read access cache hit. Note that this trace source causes a large slowdown in the simulation. Fields:
IS_PRELOAD
enum
- Is the access a preload
IS_SHARED
enum
- Is the access shared
LATENCY
unsigned int
- Cache latency in ticks per access
MASTER_ID
unsigned int
- Indicates the master associated with this monitor
CACHE_READ_MISS
Read access cache miss and cache miss latency. Fields:
IS_PRELOAD
enum
- Is the access a preload
IS_SHARED
enum
- Is the access shared
LATENCY
unsigned int
- Cache miss latency in ticks per access
MASTER_ID
unsigned int
- Indicates the master associated with this monitor
CACHE_WRITE_HIT
Write access cache hit. Note that this trace source causes a large slowdown in the simulation. Fields:
IS_PRELOAD
enum
- Is the access a preload
IS_SHARED
enum
- Is the access shared
LATENCY
unsigned int
- Cache latency in ticks per access
MASTER_ID
unsigned int
- Indicates the master associated with this monitor
CACHE_WRITE_MISS
Write access cache miss and cache miss latency. Fields:
IS_PRELOAD
enum
- Is the access a preload
IS_SHARED
enum
- Is the access shared
LATENCY
unsigned int
- Cache miss latency in ticks per access
MASTER_ID
unsigned int
- Indicates the master associated with this monitor
ENTRY_BECOMES_INVALID
An entry is now invalid. The cause could be any reason. Fields:
ENTRY_INDEX
unsigned int
- The entry index that has become invalid.
ENTRY_SET_DIRTY
Entry change, clean/dirty. Fields:
ENTRY_INDEX
unsigned int
- The entry index that has become clean or dirty.
STATUS
unsigned int
- True if the line was made dirty
ERROR_MIXED_ATTRIBUTES_LINE
Mismatched line and transaction attributes. Fields:
ENTRY_INDEX
unsigned int
- The entry index that has collided.
NS_ADDR
unsigned int
- The security world and address of the first byte of the line, the MSB encodes the NS bit.
ERROR_MIXED_ATTRIBUTES_PAGE
Attributes differ between page and lines in cache from the same page. Fields:
NS_ADDR
unsigned int
- The security world and address of the first byte of the page, the MSB encodes the NS bit.
EVICTION
A line was evicted from the cache. Fields:
ADDRESS
unsigned int
- Base address of the victim cache line
CLEAN
bool
- If true the cache retained the cache line after writing the dirty data
ENTRY_INDEX
unsigned int
- The entry index of the victim
NON_SECURE
bool
- If true the victim was NonSecure
IMPRECISE_ABORT
An operation produced an imprecise abort. Usually this is a WriteBack/WriteClean operation receiving an error response. Fields:
ADDRESS
unsigned int
- Address of the transaction that imprecise aborted.
DECERR
bool
- True if this is a DECERR response.
DOWNSTREAM_PORT_INDEX
unsigned int
- The downstream port index that received the imprecise abort
NS
bool
- The NS state of the transaction (true is non-secure)
MAINTENANCE_CLEAN_SET_WAY
A cache maintenance by set-way operation occurred, possibly the 'clean' part of a clean-and-invalidate operation. Fields:
ENTRY_INDEX
unsigned int
- The entry index the set-way operation has mapped to.
IS_NON_SECURE
bool
- If the invalidate operation is a non-secure (and so only affects non-secure lines), or secure (and so affects both).
STATE
enum
- Line transformation incurred
MAINTENANCE_INVALIDATE_ALL
A cache maintenance invalidate-all operation occurred. Fields:
IS_NON_SECURE
bool
- If the invalidate operation is a non-secure (and so only affects non-secure lines), or secure (and so affects both).
MAINTENANCE_INV_SET_WAY
A cache maintenance by set-way operation occurred, possibly the 'invalidate' part of a clean-and-invalidate operation. Fields:
ENTRY_INDEX
unsigned int
- The entry index the set-way operation has mapped to.
IS_NON_SECURE
bool
- If the invalidate operation is a non-secure (and so only affects non-secure lines), or secure (and so affects both).
STATE
enum
- Line transformation incurred
change_dvm_disabled_ports
This reports a bitmap of which ports are disabled to receive DVM messages. Fields:
new_bitmap
unsigned int
- The new bitmap of disabled ports
new_bitmap_list
unsigned int
- A list of port numbers that were disabled.
old_bitmap
unsigned int
- The old bitmap of disabled ports
old_bitmap_list
unsigned int
- A list of port numbers that were disabled.
change_upstream_disabled_ports
This reports a bitmap of which upstream ports of the cache are _disabled_ and so we won't sends snoop requests to them. Fields:
new_bitmap
unsigned int
- The bitmap of the first 32 upstream ports that are disabled.
new_bitmap_list
unsigned int
- A list of port numbers that were disabled.
old_bitmap
unsigned int
- The bitmap of the first 32 upstream ports that are disabled.
old_bitmap_list
unsigned int
- A list of port numbers that were disabled.
entry_after_far_atomic
A cache line has had a far atomic applied to it. Fields:
atomic_operation
enum
- The operation that operated on this line.
be
bool
- The far atomic's big-endian flag.
data
unsigned int
- The data in the cache line.
entry_begin_address
unsigned int
- The start address of the entry.
entry_index
unsigned int
- The entry index in the cache.
incoming_data
unsigned int
- The incoming data from the far atomic. For CAS operations then this
is compare-value and then the replacement-value
master_id
unsigned int
- The master ID for the associated transaction
ns
enum
- The security state of the line
prior_data
unsigned int
- The data that will be returned as the 'prior' data of the far atomic.
trans_begin_address
unsigned int
- The start address of the transaction.
entry_after_read
A cache line has been read. Fields:
ace_operation
enum
- The ACE operation that operated on this line.
data
unsigned int
- The data in the cache line.
dirty
bool
- Is the line ACE-dirty.
entry_begin_address
unsigned int
- The start address of the entry.
entry_index
unsigned int
- The entry index in the cache.
ns
enum
- The security state of the line
snoop
bool
- This transaction is a snoop transaction
trans_begin_address
unsigned int
- The start address of the transaction.
unique
bool
- Is the line ACE-unique.
entry_after_write
A cache line has been written. Fields:
ace_operation
enum
- The ACE operation that operated on this line.
data
unsigned int
- The data in the cache line.
entry_begin_address
unsigned int
- The start address of the entry.
entry_index
unsigned int
- The entry index in the cache.
ns
enum
- The security state of the line
trans_begin_address
unsigned int
- The start address of the transaction.