52
Vector Unit Instructions
Packed
Packed loads and stores move memory bytes to or from short elements of the
VU register, which are aligned to shorts. They are useful for accessing one,
two, or four channel byte image data for VU processing as shorts, such as for
VU multiplies.
When only some bits of a slice receive data from memory the remaining bits
in the slice get zeros.
lpv/spv
(pack) moves 8 consecutive bytes to or from a memory.
luv/suv
(unsigned pack) is similar to
lpv/spv
, except the memory byte
MSB is aligned to bit 14 of the VU short for unsigned data.
lhv/shv
(half) moves every other memory byte, and the selection of odd or
even bytes is controlled by the memory byte address.
lfv/sfv
(fourth) moves every fourth memory byte, and the selection of
which bytes is controlled by the memory byte address. Since fourth only
access four bytes within a memory word,
element
specifies whether the low
or high four shorts of the VU register are accessed.
Packed loads and stores are illustrated in Figure 3-3.
Summary of Contents for Ultra64
Page 2: ...2 ...
Page 10: ...10 ...
Page 12: ...12 Figure 6 2 buildtask Operation 137 ...
Page 14: ...14 ...
Page 80: ...80 Vector Unit Instructions vmadm dres_int dres_int vconst 3 vmadn dres_frac vconst vconst 0 ...
Page 104: ...104 RSP Coprocessor 0 ...
Page 150: ...150 Advanced Information ...
Page 155: ...Revision 1 0 155 ...
Page 248: ...248 Exceptions None ...
Page 251: ...Revision 1 0 251 Exceptions None ...
Page 254: ...254 Exceptions None ...
Page 257: ...Revision 1 0 257 Exceptions None ...
Page 293: ...Revision 1 0 293 Exceptions None ...
Page 316: ...316 Exceptions None ...