A10.5 CHI transactions

CHI transactions are sent to a specific node in the interconnect based on the following criteria:

  • Type of access.
  • Address of the access.
  • Settings of the System Address Map.

Addresses that map to an HN-F node can be marked as cacheable memory in the page tables, and can take part in the cache coherency protocol. Addresses that map to an HN-I or MN must be marked as device or non-cacheable memory.

Table A10-5 CHI transaction IDs

Transaction ID Description
000nnxxx

Transaction from core nn. Can be a:

  • Read transaction.
  • Write transaction.
  • Cache maintenance transaction.
  • DVM transaction.
  • Barrier transaction.
001001xx Transaction from the ACP interface. Can be a read or write.
00101110 Barrier generated in response to a DVM sync snoop from the interconnect.
0100xxxx Eviction from L1 or L2 cache. The number of IDs used depends on the configuration.

Table A10-6 CHI transactions

Transaction Operation
ReadNoSnp Non-cacheable loads or instruction fetches. Linefills of non-shareable cache lines into L1 or L2.
ReadOnce Cacheable loads that are not allocating into the cache, or cacheable instruction fetches when there is no L2 cache.
ReadClean Not used.
ReadShared L1 Data linefills started by a load instruction, or L2 linefills started by an instruction fetch.
ReadUnique L1 Data linefills started by a store instruction.
CleanUnique Store instructions that hit in the cache but the line is not in a unique coherence state.
MakeUnique Store instructions of a full cache line of data, that miss in the caches, and are allocating into the L2 cache.
CleanShared Cache maintenance instructions.
CleanInvalid Cache maintenance instructions.
MakeInvalid Cache maintenance instructions.
DVMOp TLB and instruction cache maintenance instructions.
EOBarrier DMB instructions.
ECBarrier DSB instructions. DVM sync snoops received from the interconnect.
WriteNoSnpPtl Non-cacheable store instructions.
WriteNoSnpFull Non-cacheable store instructions, or evictions of non-shareable cache lines from the L1 and L2 cache.
WriteUniqueFull Cacheable writes of a full cache line, that are not allocating into L1 or L2 caches, for example streaming writes.
WriteUniquePtl Cacheable writes of less than a full cache line that are not allocating into L1 or L2.
WriteBackFull Evictions of dirty lines from the L1 or L2 cache.
WriteBackPtl Not used.
WriteCleanFull Evictions of dirty lines from the L2 cache, when the line is still present in an L1 cache. Some cache maintenance instructions.
WriteCleanPtl Not used.
WriteEvictFull Evictions of unique clean lines, when configured in the L2ACTLR.
Evict Evictions of clean lines, when configured in the L2ACTLR.

External memory accesses generate the following transactions in an implementation configured with a CHI master interface.

Table A10-7 CHI transactions

Attributes   CHI transaction
Memory type Shareability SnpAttr Load Store Load exclusive Store exclusive
Device - Non-snoopable ReadNoSnp WriteNoSnp

ReadNoSnp and Excl set to HIGH

WriteNoSnp and Excl set to HIGH

Normal, inner Non-cacheable, outer Non-cacheable

Non-shared Non-snoopable ReadNoSnp WriteNoSnp

ReadNoSnp and Excl set to HIGH

WriteNoSnp and Excl set to HIGH
Inner-shared
Outer-shared

Normal, inner Non-cacheable, outer Write-Back or Write-Through, or Normal, inner Write-Through, outer Write-Back, Write-Through or Non-cacheable, or Normal inner Write-Back outer Non-cacheable or Write-Through

Non-shared Non-snoopable ReadNoSnp WriteNoSnp

ReadNoSnp

ReadNoSnp

Inner-shared Non-snoopable ReadNoSnp WriteNoSnp ReadNoSnp with Excl set to HIGH WriteNoSnp with Excl set to HIGH
Outer-shared Non-snoopable
Normal, inner Write-Back, outer Write-Back Non-shared Non-snoopable ReadNoSnp WriteNoSnp

ReadNoSnp

WriteNoSnp

Inner-shared Inner snoopable ReadShared

ReadUnique, CleanUnique, or MakeUnique if allocating into the cache, then a WriteBackFull when the line is evicted.

WriteUniqueFull or WriteUniquePtl if not allocating into the cache.

ReadShared with Excl set to HIGH CleanUnique with Excl set to HIGH if required, then a WriteBackFull when the line is evicted
Outer-shared Outer snoopable
Non-ConfidentialPDF file icon PDF versionARM 100241_0001_00_en
Copyright © 2016, 2017 ARM Limited or its affiliates. All rights reserved.