05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Application Level Memory Model<br />

Example A3-1 Use of shareability attributes<br />

In a VMSA implementation, a particular sub-system with two clusters of processors has the requirement<br />

that:<br />

in each cluster, the data or unified caches of the processors in the cluster are transparent for all data<br />

accesses with the Inner Shareable attribute<br />

however, between the two clusters, the caches:<br />

— are not transparent for data accesses that have only the Inner Shareable attribute<br />

— are transparent for data accesses that have the Outer Shareable attribute.<br />

In this system, each cluster is in a different shareability domain for the Inner Shareable attribute, but all<br />

components of the sub-system are in the same shareability domain for the Outer Shareable attribute.<br />

A system might implement two such sub-systems. If the data or unified caches of one subsystem are not<br />

transparent to the accesses from the other subsystem, this system has two Outer Shareable shareability<br />

domains.<br />

Having two levels of shareability attribute means you can reduce the performance <strong>and</strong> power overhead for<br />

shared memory regions that do not need to be part of the Outer Shareable shareability domain.<br />

Whether an <strong>ARM</strong>v7 implementation supports the Outer Shareable attribute is IMPLEMENTATION DEFINED.<br />

If the Outer Shareable attribute is supported, its significance in the implementation is IMPLEMENTATION<br />

DEFINED.<br />

For Shareable Normal memory, the Load-Exclusive <strong>and</strong> Store-Exclusive synchronization primitives take<br />

account of the possibility of accesses by more than one observer in the same Shareability domain.<br />

Note<br />

The Shareable concept enables system designers to specify the locations in Normal memory that must have<br />

coherency requirements. However, to facilitate porting of software, software developers must not assume<br />

that specifying a memory region as Non-shareable permits software to make assumptions about the<br />

incoherency of memory locations between different processors in a shared memory system. Such<br />

assumptions are not portable between different multiprocessing implementations that make use of the<br />

Shareable concept. Any multiprocessing implementation might implement caches that, inherently, are<br />

shared between different processing elements.<br />

<strong>ARM</strong> DDI 0406B Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. A3-31

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!