SPECIAL2 011100 |
rs |
rt |
0 00000 |
MADDU 00000 |
MADDU 000001 |
6 |
5 |
5 |
5 |
5 |
6 |
MADDU rs, rt |
SmartMIPS Crypto |
Multiply and Add Unsigned Word to Hi,Lo |
Multiply and Add Unsigned Word to Hi,Lo
To multiply two unsigned words and add the result to ACX, HI, LO.
(LO,HI,ACX) = (GPR[rs] * GPR[rt]) + (LO,HI,ACX)
The 32-bit word value in GPR rs is multiplied by the 32-bit value in GPR rt, treating both operands as unsigned values, to produce a 64-bit result. The product is added to the 72-or-more-bit concatenated value of ACX, HI, and LO, and the carry-extended result is written back into ACX, HI, and LO. No arithmetic exception occurs under any circumstances.
This instruction does not provide the capability of writing directly to a target GPR.
temp = (ACXACXMSB..0 || HI31..0|| LO31..0) + (GPR[rs]31..0* GPR[rt]31..0) ACX = zero_extend(tempACXMSB+64..64) HI = sign_extend(temp63..32) LO = sign_extend(temp31..0)
None