Exceptions
Unimplemented instruction
Instruction Type
R
Instruction Fields
A
= Register index of operand rA
B
= Register index of operand rB
C
= Register index of operand rC
Bit Fields
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
A
B
C
0x1f
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
0x1f
0
0x3a
8.5.67. mulxsu
Instruction
multiply extended signed/unsigned
Operation
rC ← ((signed) rA) x ((unsigned) rB))
63..32
Assembler Syntax
mulxsu rC, rA, rB
Example
mulxsu r6, r7, r8
Description
Treating rA as a signed integer and rB as an unsigned
integer,
mulxsu
multiplies rA times rB, and stores the 32
high-order bits of the product to rC.
Nios II processors that do not implement the
mulxsu
instruction cause an unimplemented instruction exception.
Usage
mulxsu
can be used as part of the calculation of a 128-bit
product of two 64-bit signed integers. Given two 64-bit
integers, each contained in a pair of 32-bit registers, (S1 :
U1) and (S2 : U2), their 128-bit product is: (U1 x U2) +
((S1 x U2) << 32) + ((U1 x S2) << 32) + ((S1 x S2) <<
64). The
mulxsu
and
mul
instructions are used to calculate
the two 64-bit products S1 x U2 and U1 x S2.
Exceptions
Unimplemented instruction
Instruction Type
R
Instruction Fields
A
= Register index of operand rA
B
= Register index of operand rB
C
= Register index of operand rC
Bit Fields
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
A
B
C
0x17
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
0x17
0
0x3a
8.5.68. mulxuu
Instruction
multiply extended unsigned/unsigned
Operation
rC ← ((unsigned) rA) x ((unsigned) rB))
63..32
continued...
8. Instruction Set Reference
NII-PRG | 2018.04.18
Nios II Processor Reference Guide
215