Mpydp – Texas Instruments TMS320C67X/C67X+ DSP User Manual
Page 205
Multiply Two Double-Precision Floating-Point Values
MPYDP
3-145
Instruction Set
SPRU733
Multiply Two Double-Precision Floating-Point Values
MPYDP
Syntax
MPYDP (.unit) src1, src2, dst
.unit = .M1 or .M2
Compatibility
C67x and C67x+ CPU
Opcode
31
29
28
27
23
22
18
17
13
12
11
7
6
5
4
3
2
1
0
creg
z
dst
src2
src1
x 0 1 1 1 0 0 0 0 0 0 s p
3
1
5
5
5
1
1
1
Opcode map field used...
For operand type...
Unit
src1
src2
dst
dp
dp
dp
.M1, .M2
Description
The src1 operand is multiplied by the src2 operand. The result is placed in dst.
Execution
if (cond)
src1 src2 → dst
else
nop
Notes:
1) If one source is SNaN or QNaN, the result is a signed NaN_out. If either
source is SNaN, the INVAL bit is set also. The sign of NaN_out is the
exclusive-OR of the input signs.
2) Signed infinity multiplied by signed infinity or a normalized number (other
than signed 0) returns signed infinity. Signed infinity multiplied by
signed 0 returns a signed NaN_out and sets the INVAL bit.
3) If one or both sources are signed 0, the result is signed 0 unless the other
source is NaN or signed infinity, in which case the result is signed
NaN_out.
4) A denormalized source is treated as signed 0 and the DENn bit is set.
The INEX bit is set except when the other source is signed infinity, signed
NaN, or signed 0. Therefore, a signed infinity multiplied by a denormal-
ized number gives a signed NaN_out and sets the INVAL bit.
5) If rounding is performed, the INEX bit is set.