Chapter 2. Programming Model
2-85
AltiVec VEA Instructions
This section briey summarizes the user-level cache management instructions deTned by
the AltiVec VEA. See Chapter 4, òAddressing Mode and Instruction Set Summary,ó in
The
Programming Environments Manual
for more information about supervisor-level cache,
segment register manipulation, and TLB management instructions.
The AltiVec architecture speciTes the data stream touch instructions
dst(t)
,
dstst(t)
, and it
speciTes two data stream stop (
dss(all)
) instructions. The MPC7400 implements all of
them. The term
dst
x
used below refers to all of the stream touch instructions.
The instructions summarized in this section provide user-level programs the ability to
manage on-chip caches, see Chapter 5, òCache Model and Memory Coherency,ó in
The
Programming Environments Manual
for more information about cache topics.
Bandwidth between the processor and memory is managed explicitly by the programmer
through the use of cache management instructions. These instructions provide a way for
software to communicate to the cache hardware how it should prefetch and prioritize the
writeback of data. The principal instruction for this purpose is a software directed cache
prefetch instruction called Data Stream Touch (
dst
). Other related instructions are provided
for complete control of the software directed cache prefetch mechanism.
Table 2-80 summarizes the directed prefetch cache instructions defined by the AltiVec
VEA. Note that these instructions are accessible to user-level programs.
For detailed information for how to use these instruction, see Section 7.1.2.3, òData Stream
Touch Instructions.ó
2.6.2 AltiVec Instructions with SpeciTc Implementations for
the MPC7400
Instructions which are implementation speciTc for MPC7400 are described in this section.
2.6.2.1 Least-Recently-Used Instructions
The AltiVec architecture speciTes Load Vector Indexed LRU (
lvxl
) and Store Vector
Indexed LRU (
stvxl
) instructions. The architecture suggests that these instructions differ
from regular AltiVec load and store instructions in that they leave cache entries in a
Table 2-80. AltiVec User-Level Cache Instructions
Name
Mnemonic
Syntax
Implementation Notes
Data Stream Touch (non-transient)
dst
r
A,
r
B,STRM
Data Stream Touch Transient
dstt
r
A,
r
B,STRM
Used for last access
Data Stream Touch for Store
dstst
r
A,
r
B,STRM
Not recommended for use in MPC7400
Data Stream Touch for Store Transient
dststt
r
A,
r
B,STRM,
Not recommended for use in MPC7400
Data Stream Stop (one stream)
dss
STRM
Data Stream Stop All
dssall
STRM