![Xilinx Virtex-II Pro PPC405 User Manual Download Page 358](http://html1.mh-extra.com/html/xilinx/virtex-ii-pro-ppc405/virtex-ii-pro-ppc405_user-manual_3410279358.webp)
666
March 2002 Release
1-800-255-7778
Virtex-II Pro™ Platform FPGA Documentation
Chapter 11:
Instruction Set
R
macchwu
Multiply Accumulate Cross Halfword to Word Modulo Unsigned
Description
The low-order halfword of
r
A is multiplied by the high-order halfword of
r
B. The
unsigned product is added to the contents of
r
D and the sum is stored as a 33-bit
temporary result. The contents of
r
D are replaced by the low-order 32 bits of the temporary
result. An example of this operation is shown in
Pseudocode
prod
0:31
←
(
r
A)
16:31
×
(
r
B)
0:15
unsigned
temp
0:32
←
prod
0:31
+ (
r
D)
(
r
D)
←
temp
1:32
Registers Altered
•
r
D.
•
CR[CR0]
LT, GT, EQ, SO
if Rc
=
1.
•
XER[SO, OV] if OE
=
1.
Exceptions
•
None.
Compatibility
This instruction is implementation specific and is not guaranteed to be supported by other
PowerPC processors.
macchwu
r
D,
r
A,
r
B
(OE=0, Rc=0)
macchwu.
r
D,
r
A,
r
B
(OE=0, Rc=1)
macchwuo
r
D,
r
A,
r
B
(OE=1, Rc=0)
macchwuo.
r
D,
r
A,
r
B
(OE=1, Rc=1)
XO Instruction Form
4
r
D
r
A
r
B
OE
140
Rc
0
6
1
1
1
6
2
1
2
2
3
1