Please note: We are aware of an issue affecting replies on the Arm Community forums, which may not be loading as expected.

We apologize for any inconvenience and appreciate your patience while we investigate and work to resolve the issue.

Thank you for your understanding.


This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Cortex-A53 PMU: Read Allocate Mode Event Definition (BUS_ACCESS erratum work-around)

Hello everyone,

I am trying to count bus accesses from all 4 cores simultaneously. Since the BUS_ACCESS (0x19) event is not counted properly, I tried to approximate the count by adding other events.

Adding non-cacheable external memory accesses (0xC1), L2-cache refills (0x17) and L2-cache write-backs (0x18) nearly got me there, but in my 1-core test setup, this sum was still approx. 8% *lower* than the bus access count, so I was still missing something.

Here, in an official ARM documentation article, it is stated for the A53 that "BUS_ACCESS = Cacheable Traffic + Non-cacheable Traffic + Write streaming". The count I am missing should be the last summand, since those writes in read allocate mode are neither non-cacheable nor write-backs.

In the same article, the counter 0xC5 is referenced in relation to the Write streaming. The only information I could find on this event is the event name "Read allocate mode" in DDI0500J. However, the graph for this event looks really weird and does not seem to be what I need at all.

Is there any way to find more detailed information on this and other "implementation-defined" events for the A53? The name by itself is only moderatly helpful.

Thanks in advance