Convert Single-Precision Floating-Point Value to Double-Precision Floating-Point Value
SPDP
4-71
TMS320C67x Floating-Point Instruction Set
Syntax
SPDP (.unit)
src2, dst
.unit = .S1 or .S2
Opcode map field used...
For operand type...
Unit
src2
dst
xsp
dp
.S1, .S2
Opcode
31
29 28 27
23 22
18 17
creg
z
dst
13 12
5
4
3
2
1
0
0 0 0 0 1 0
0
0
0
s
p
3
5
5
5
6
6
1
11
x
0 0 0 0 0
src2
Description
The single-precision value in
src2 is converted to a double-precision value and
placed in
dst.
Execution
if (cond)
dp(
src2)
→
dst
else
nop
Notes:
1) If
src2 is SNaN, NaN_out is placed in dst and the INVAL and NAN2 bits
are set.
2) If
src2 is QNaN, NaN_out is placed in dst and the NAN2 bit is set.
3) If
src2 is a signed denormalized number, signed 0 is placed in dst and
the INEX and DEN2 bits are set.
4) If
src2 is signed infinity, INFO bit is set.
5) No overflow or underflow can occur.
Pipeline
Stage
E1
E2
Read
src2
Written
dst_l
dst_h
Unit in use
.S
If
dst is used as the source for the ADDDP, CMPEQDP, CMPLTDP,
CMPGTDP, MPYDP, or SUBDP instruction, the number of delay slots can be
reduced by one, because these instructions read the lower word of the DP
source one cycle before the upper word of the DP source.
Pipeline