![Xilinx Virtex-II Pro PPC405 Скачать руководство пользователя страница 97](http://html1.mh-extra.com/html/xilinx/virtex-ii-pro-ppc405/virtex-ii-pro-ppc405_user-manual_3410279097.webp)
March 2002 Release
405
Virtex-II Pro™ Platform FPGA Documentation
1-800-255-7778
Multiply-Accumulate Instruction-Set Extensions
R
shows an example of an algebraic-shift
operation. In this example, a shift of
seven bits is performed. Bits shifted out of the least-significant register bit are lost and
vacated bits on the left side are filled with a copy of the original bit 0 (prior to the shift). In
this example, the original value of bit 0 is 0b1.
Multiply-Accumulate Instruction-Set Extensions
The PPC405 supports an
integer
multiply-accumulate
instruction-set extension that provides
functions usable by certain computationally intensive applications, such as those that
implement DSP algorithms. These instructions comply with the architectural requirements
for auxiliary-processor units (APUs) defined by the PowerPC embedded-environment
architecture and the PowerPC Book-E architecture. They are considered implementation-
dependent instructions and are not part of the PowerPC architecture, the PowerPC
embedded-environment architecture, or the PowerPC Book-E architecture. Programs that
use these instructions are not portable to all PowerPC implementations.
The multiply-accumulate instruction-set extensions include multiply-accumulate
instructions, negative multiply-accumulate instructions, and multiply-halfword
instructions.
Modulo and Saturating Arithmetic
The multiply-accumulate and negative multiply-accumulate instructions produce a 33-bit
intermediate result. The method used to store this result in the 32-bit destination register
depends on whether the instruction performs
modulo arithmetic
or
saturating arithmetic
.
With modulo-arithmetic instructions, the most-significant bit in the intermediate result is
discarded and the low-32 bits of this result are stored in the destination register.
With saturating-arithmetic instructions, the low 32-bits of the intermediate result are
stored in the destination register if the intermediate result does not overflow 32-bits.
However, if the intermediate result overflows what is representable in 32-bits, the
Shift-Right-Algebraic Instructions
r
A is loaded with the result of algebraically right-shifting (
r
S) the
number of bits specified by (
r
B).
sraw
Shift Right Algebraic Word
CR0 is
not
updated. XER[CA] is updated to reflect
the result.
r
A,
r
S,
r
B
sraw.
Shift Right Algebraic Word and
Record
CR0 and XER[CA] are updated to reflect the re-
sult.
Table 3-39:
Algebraic-Shift Instructions
(Continued)
Mnemonic
Name
Operation
Operand
Syntax
Figure 3-27:
Algebraic-Shift Example
UG011_19_033101
Shift by 7 bits
r
S
0
31
1000_0111_0110_0101_0100_0011_0010_0001
r
A
0
31
1111_1111_0000_1110_1100_1010_1000_0110
0
31
1111_1111_0000_1110_1100_1010_1000_0110
010_0001
Содержание Virtex-II Pro PPC405
Страница 1: ...R Volume 2 a PPC405 User Manual Virtex II Pro Platform FPGA Developer s Kit March 2002 Release...
Страница 14: ...322 www xilinx com March 2002 Release 1 800 255 7778 Virtex II Pro Platform FPGA Documentation Preface R...
Страница 252: ...560 www xilinx com March 2002 Release 1 800 255 7778 Virtex II Pro Platform FPGA Documentation R...
Страница 260: ...568 www xilinx com March 2002 Release 1 800 255 7778 Virtex II Pro Platform FPGA Documentation R...
Страница 562: ...870 www xilinx com March 2002 Release 1 800 255 7778 Virtex II Pro Platform FPGA Documentation R...