TriCore
®
TC1.6P & TC1.6E
32-bit Unified Processor Core
Instruction Set
V1.0 2013-07
User Manual (Volume 2) 3-272
MUL
Multiply
MULS
Multiply, Saturated
Description
Multiply two signed 32-bit integers and put the product into a 32-bit or 64-bit register. The value const9 is sign-
extended before the multiplication is performed. The MULS result is saturated on overflow.
MULD[c], D[a], const9 (RC)
(32 * K9) --> 32 signed
result = D[a] * sign_ext(const9);
D[c] = result[31:0];
MULE[c], D[a], const9 (RC)
(32 * K9) --> 64 signed
result = D[a] * sign_ext(const9);
E[c] = result[63:0];
MULD[c], D[a], D[b] (RR2)
(32 * 32) --> 32 signed
result = D[a] * D[b];
D[c] = result[31:0];
MULE[c], D[a], D[b] (RR2)
(32 * 32) --> 64 signed
result = D[a] * D[b];
E[c] = result[63:0];
MULD[a], D[b] (SRR)
(32 * 32) --> 32 signed
Multiply D[a] by D[b] (two signed 32-bit integers) and put the product into D[a].
31
c
28 27
01
H
21 20
const9
12 11
a
8 7
53
H
0
31
c
28 27
03
H
21 20
const9
12 11
a
8 7
53
H
0
31
c
28 27
0A
H
16 15
b
12 11
a
8 7
73
H
0
31
c
28 27
6A
H
16 15
b
12 11
a
8 7
73
H
0