7

I'm reading ARMv7 architecture reference manual and there are the following keywords:

  • outer cacheable
  • inner cacheable
  • outer sharable
  • inner sharable

It looks like that outer/inner cacheable means that a region of memory can be cached in L1 (inner) or L2 (outer).

What I don't understand is the sharability.

According to the manual, it says inner is sharable inside a cluster and outer is sharable among clusters.

Here, what does cluster mean? It looks like a group of cores, but I'm failed to find exact reference about these.

Any help would be appreciated.

jaeyong
  • 8,951
  • 14
  • 50
  • 63

2 Answers2

3

You should read more at Cortex A Series programmer's guide, chapter 10.7 Memory Attributes (free book from arm) however, here is an excerpt:

cluster: a multiple core Cortex-A15 processor and a multiple core Cortex-A7 processor.

Chapter 9 also talks about caches, which might clarify terms for you even further. From another ARM blog post:

You will also notice that what we call the devices has changed. The terms CPU and processor were ambiguous so:

  • Processor now only refers to the marketed device, such as the Cortex®-A15 processor,
  • Core refers to a single implementation of a processor. This was sometimes called a CPU in the past.
  • Clusters are groups of multiple cores sharing an L2 cache
  • A big.LITTLE system typically refers to two clusters of cores, although it could be a single big core and a cluster of several LITTLE cores.
auselen
  • 27,577
  • 7
  • 73
  • 114
-2

"Inner" and "Outer" are "shareability domains". Though it's not guaranteed, generally "Inner" is the L1 cache and "Outer" is the L2 cache.

mgalgs
  • 15,671
  • 11
  • 61
  • 74