1.The opcode of the instructions should be ldda, ldxa, lddfa, stda, stxa, or

stdfa. Otherwise, a data_access_exception exception with D-SFSR.FT= 0816 (Invalid ASI) is generated.

2.No operand address translation is performed for these instructions.

3.VA<2:0> of all of the operand address should be 0. Otherwise, a mem_address_not_aligned exception is generated.

4.The don’t-care bits (designated “—” in the format) in the VA of the load or store alternate can be of any value. It is recommended that software use zero for these bits in the operand address of the instruction.

5.The don’t-care bits (designated “—” in the format) in DATA are read as zero and ignored on write.

6.The instruction operations are not affected by PSTATE.CLE. They are always treated as big-endian.

7.The instructions are all strongly ordered regardless of load or store and the memory model. Therefore, no speculative executions are performed.

Multiple Asynchronous Fault Address Registers are maintained in hardware, one for each major source of asynchronous errors. These ASIs are described in ASI_ASYNC_FAULT_STATUS (ASI_AFSR) on page 174. The following subsections describe all other cache-related ASIs in detail.

M.3.1 Flush Level-1 Instruction Cache

(ASI_FLUSH_L1I)

[1]

Register Name:

ASI_FLUSH_L1I

[2]

ASI:

6716

[3]

VA:

Any

[4]

RW

Supervisor write

ASI_FLUSH_L1I flushes and invalidates the entire level-1 instruction cache. VA can be any value. A write to this ASI with any VA and any data causes flushing and invalidation.

Release 1.0, 1 July 2002

F. Chapter M Cache Organization 129

Page 140
Image 140
Fujitsu Fujitsu SPARC64 V manual Flush Level-1 Instruction Cache, ASIFLUSHL1I