dcbst

Data Cache Block Store

dcbst RA, RB

Writes the cache block to main memory if it is modified (Clean), but keeps it in the cache.

Encoding

Binary Layout
31
0:5
/
6:10
RA
11:15
RB
16:20
54
21:30
/
31
 
Format X-form
Opcode 0x7C00006C
Extension Base

Operands

  • RA
    Base Address
  • RB
    Index Address

Example

dcbst 0, r3

// Ensure RAM has latest data for r3.

Related

More in Base

Reference

Description

Writes a cache block containing the byte addressed by RA+RB to main memory if the block is modified, then keeps the block in the cache in a clean state. This instruction is used to synchronize cache contents with memory without invalidating the cache line. No condition registers or status fields are affected.

Operation

EA ← (RA) + (RB)
CacheBlock ← CacheBlock at EA
if CacheBlock.Modified then
  WriteToMemory(CacheBlock)
  CacheBlock.Modified ← 0
end if

Extended Mnemonics

Extended Mnemonic
dcbstps

The source lists these forms without stating the instruction each one stands for.

Programming Note

Data Cache Block Store to Persistent Storage is encoded as a variant of Data Cache Block Flush. The extended mnemonic (dcbstps) indicates the intended function.