Instruction Model
e200z3 Power Architecture Core Reference Manual, Rev. 2
Freescale Semiconductor
3-7
3.10.4 Volatile Context Save/Restore APU (e200z335 only)
The e200z335 implements the EIS Volatile Context Save/Restore APU to support the capability to
quickly save and restore volatile register context on entry into an interrupt handler. To support this
functionality, a new set of instructions is defined as part of the APU.
•
e_ldmvgprw, e_stmvgprw - load/store multiple volatile gprs (r0, r3:r12)
•
e_ldmvsprw, e_stmvsprw - load/store multiple volatile sprs (CR, LR, CTR, and XER)
•
e_ldmvsrrw, e_stmvsrrw - load/store multiple volatile srrs (SRR0, SRR1)
•
e_ldmvcsrrw, e_stmvcsrrw - load/store multiple volatile csrrs (CSRR0, CSRR1)
•
e_ldmvdsrrw, e_stmvdsrrw - load/store multiple volatile dsrrs (DSRR0, DSRR1)
These instructions are available in VLE instruction pages to perform a multiple register load or store to a
word aligned memory address.
3.10.5
SPE APU Instructions
SPE APU instructions treat 64-bit GPRs as a vector of two 32-bit elements. (Some instructions also read
or write 16-bit elements.) The SPE APU supports a number of forms of multiply and multiply-accumulate
operations, and of add and subtract to accumulator operations. The SPE supports signed and unsigned
forms, and optional fractional forms. For these instructions, the fractional form does not apply to unsigned
forms because integer and fractional forms are identical for unsigned operands.
shows how SPE APU vector multiply instruction mnemonics are structured.
defines mnemonic extensions for these instructions.
Table 3-5. SPE APU Vector Multiply Instruction Mnemonic Structure
Prefix
Multiply Element
Data Type Element
Accumulate Element
evm
ho
he
hog
heg
wh
wl
whg
wlg
w
half odd (16x16
→
32)
half even (16x16
→
32)
half odd guarded (16x16
→
32)
half even guarded (16x16
→
32)
word high (32x32
→
32)
word low (32x32
→
32)
word high guarded (32x32
→
32)
word low guarded (32x32
→
32)
word (32x32
→
64)
usi
umi
ssi
ssf
1
smi
smf
1
Low word versions of signed saturate and signed modulo fractional instructions are not supported. Attempting to execute
an opcode corresponding to these instructions causes boundedly undefined results.
unsigned saturate integer
unsigned modulo integer
signed saturate integer
signed saturate fractional
signed modulo integer
signed modulo fractional
a
aa
an
aaw
anw
write to ACC
write to ACC & added ACC
write to ACC & negate ACC
write to ACC & ACC in words
write to ACC & negate ACC in words
Содержание e200z3
Страница 1: ...e200z3 Power Architecture Core Reference Manual Supports e200z3 e200z335 e200z3coreRM Rev 2 06 2008 ...
Страница 32: ...e200z3 Power Architecture Core Reference Manual Rev 2 xii Freescale Semiconductor ...
Страница 50: ...Register Model e200z3 Power Architecture Core Reference Manual Rev 2 2 2 Freescale Semiconductor ...
Страница 238: ...Memory Management Unit e200z3 Power Architecture Core Reference Manual Rev 2 5 16 Freescale Semiconductor ...
Страница 332: ...Power Management e200z3 Power Architecture Core Reference Manual Rev 2 8 4 Freescale Semiconductor ...
Страница 424: ...Revision History e200z3 Power Architecture Core Reference Manual Rev 2 A 2 Freescale Semiconductor ...