Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the definition of outer and inner in ARMv7?

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.

like image 605
jaeyong Avatar asked Mar 11 '14 05:03

jaeyong


1 Answers

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.
like image 88
auselen Avatar answered Nov 14 '22 13:11

auselen