A.30 load quadword, atomic [physical, Load quadword, atomic [physical] 54, Format (3) ldda description – FUJITSU Implementation Supplement Fujitsu SPARC64 V User Manual

Page 65

Advertising
background image

54

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

A.30

Load Quadword, Atomic [Physical]

The Load Quadword ASIs in this section are specific to SPARC64 V, as an extension
to SPARC JPS1.

Format (3) LDDA

Description

ASIs 34

16

and 3C

16

are used with the

LDDA

instruction to atomically read a 128-bit

data item, using physical addressing. The data are placed in an even/odd pair of 64-
bit registers. The lowest-address 64 bits are placed in the even-numbered register;
the highest-address 64 bits are placed in the odd-numbered register. The reference is
made from the nucleus context.

In addition to the usual traps for

LDDA

using a privileged ASI, a

data_access_exception

exception occurs for a noncacheable access or for the use of the

quadword-load ASIs with any instruction other than

LDDA

. A

mem_address_not_aligned

exception is generated if the access is not aligned on a 16-

byte boundary.

ASIs 34

16

and 3C

16

are supported in SPARC64 V in addition to those for Load

Quadword Atomic for virtually addressed data (ASIs 24

16

and 2C

16

).

The memory access for a load quad instruction with

ASI_QUAD_LDD_PHYS{_L}

behaves as if the following

TTE

is set:

opcode

imm_asi

ASI value

operation

LDDA

ASI_QUAD_LDD_PHYS

34

16

128-bit atomic load, physically
addressed

LDDA

ASI_QUAD_LDD_PHYS_L

3C

16

128-bit atomic load, little-endian,
physically addressed

Assembly Language Syntax

ldda

[reg_addr] imm_asi, reg

rd

ldda

[reg_plus_imm]

%asi

, reg

rd

31

24

0

25

30 29

19 18

14 13

5

4

rd

11

010011

simm_13

rs1

i=1

rd

11

010011

imm_asi

rs1

rs2

i=0

Advertising