beautypg.com

1 overview, 4 sparc v9 memory model, 5 mode control – FUJITSU Implementation Supplement Fujitsu SPARC64 V User Manual

Page 53: 6 synchronizing instruction and data memory, Overview 42 sparc v9 memory model 42

background image

42

SPARC JPS1 Implementation Supplement: Fujitsu SPARC64 V • Release 1.0, 1 July 2002

8.1

Overview

Note –

The words “hardware memory model” denote the underlying hardware

memory models as differentiated from the “SPARC V9 memory model,” which is the
memory model the programmer selects in

PSTATE.MM

.

SPARC64 V supports only one mode of memory handling to guarantee correct
operation under any of the three SPARC V9 memory ordering models (impl. dep.
#113):

Total Store Order

— All loads are ordered with respect to loads, and all stores are

ordered with respect to loads and stores. This behavior is a superset of the
requirements for the SPARC V9 memory models TSO, PSO, and RMO. When

PSTATE.MM

selects TSO or PSO, SPARC64 V operates in this mode. Since

programs written for PSO (or RMO) will always work if run under Total Store
Order, this behavior is safe but does not take advantage of the reduced restrictions
of PSO.

8.4

SPARC V9 Memory Model

Please refer to Section 8.4 of Commonality.

In addition, this section describes SPARC64 V-specific details about the processor/
memory interface model.

8.4.5

Mode Control

SPARC64 V implements Total Store Ordering for all

PSTATE.MM

. Writing 11

2

into

PSTATE.MM

also causes the machine to use TSO (impl. dep. #119). However, the

encoding 11

2

should not be used, since future version of SPARC64 V may use this

encoding for a new memory model.

8.4.6

Synchronizing Instruction and Data Memory

All caches in a SPARC64 V-based system (uniprocessor or multiprocessor) have a
unified cache consistency protocol and implement strong coherence between
instruction and data caches. Writes to any data cache cause invalidations to the