Single-Precision Floating-Point Reciprocal Approximation

 

RCPSP

 

 

 

Single-Precision Floating-Point Reciprocal Approximation

 

 

 

 

 

RCPSP

 

 

 

 

 

 

 

Syntax

 

 

 

 

RCPSP (.unit) src2, dst

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.unit = .S1 or .S2

 

 

 

 

 

 

 

 

 

 

 

Compatibility

 

 

C67x and C67x+ CPU

 

 

 

 

 

 

 

 

 

 

 

Opcode

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

29

28

27

23

22

18

17

13

12

11

6

5

4

3

2

1

0

creg

z

dst

src2

0 0 0 0 0 x 1 1 1 1 0 1 1

0

0 0 s p

3 15511 1

Opcode map field used...

For operand type...

Unit

 

 

 

src2

xsp

.S1, .S2

dst

sp

 

 

 

 

Description

The single-precision floating-point reciprocal approximation value of src2 is

 

placed in dst.

 

The RCPSP instruction provides the correct exponent, and the mantissa is

 

accurate to the eighth binary position (therefore, mantissa error is less

 

than 2−8). This estimate can be used as a seed value for an algorithm to

 

compute the reciprocal to greater accuracy.

 

The Newton-Rhapson algorithm can further extend the mantissa’s precision:

 

x[n + 1] = x[n](2 − v x[n])

 

where v = the number whose reciprocal is to be found.

 

x[0], the seed value for the algorithm, is given by RCPSP. For each iteration,

 

the accuracy doubles. Thus, with one iteration, accuracy is 16 bits in the

 

mantissa; with the second iteration, the accuracy is the full 23 bits.

Execution

if (cond)

rcp(src2) dst

 

else

nop

SPRU733

Instruction Set

3-199

Page 259
Image 259
Texas Instruments TMS320C67X/C67X+ DSP manual Single-Precision Floating-Point Reciprocal Approximation, Rcpsp