TriCore
®
TC1.6P & TC1.6E
32-bit Unified Processor Core
Instruction Set
V1.0 2013-07
User Manual (Volume 2) 3-280
MUL.U
Multiply Unsigned
MULS.U
Multiply Unsigned, Saturated
Description
Multiply two unsigned 32-bit integers and put the product into a 32-bit or 64-bit register. The value const9
(instruction format RC) is zero-extended before the multiplication is performed. The MULS.U result is saturated on
overflow.
MUL.UE[c], D[a], const9 (RC)
(32 * K9) --> 64 unsigned
result = D[a] * zero_ext(const9); // unsigned
E[c] = result[63:0];
MUL.UE[c], D[a], D[b] (RR2)
(32 * 32) --> 64 unsigned
result = D[a] * D[b]; // unsigned
E[c] = result[63:0];
MULS.UD[c], D[a], const9 (RC)
(32 * K9) --> 32 unsigned saturated
result = D[a] * zero_ext(const9); // unsigned
D[c] = suov(result, 32);
MULS.UD[c], D[a], D[b] (RR2)
(32 * 32) --> 32 unsigned saturated
result = D[a] * D[b]; // unsigned
D[c] = suov(result, 32);
Status Flags
C Not set by this instruction.
31
c
28 27
02
H
21 20
const9
12 11
a
8 7
53
H
0
31
c
28 27
68
H
16 15
b
12 11
a
8 7
73
H
0
31
c
28 27
04
H
21 20
const9
12 11
a
8 7
53
H
0
31
c
28 27
88
H
16 15
b
12 11
a
8 7
73
H
0