beautypg.com

Sadd, Add two signed integers with saturation sadd – Texas Instruments TMS320C67X/C67X+ DSP User Manual

Page 265

background image

Add Two Signed Integers With Saturation

SADD

3-205

Instruction Set

SPRU733

Add Two Signed Integers With Saturation

SADD

Syntax

SADD (.unit) src1, src2, dst

.unit = .L1 or .L2

Compatibility

C62x, C64x, C67x, and C67x+ CPU

Opcode

31

29

28

27

23

22

18

17

13

12

11

5

4

3

2

1

0

creg

z

dst

src2

src1

x

op

1 1 0 s p

3

1

5

5

5

1

7

1

1

Opcode map field used...

For operand type...

Unit

Opfield

src1
src2
dst

sint
xsint
sint

.L1, .L2

001 0011

src1
src2
dst

xsint
slong
slong

.L1, .L2

011 0001

src1
src2
dst

scst5
xsint
sint

.L1, .L2

001 0010

src1
src2
dst

scst5
slong
slong

.L1, .L2

011 0000

Description

src1 is added to src2 and saturated, if an overflow occurs according to the
following rules:

1) If the dst is an int and src1 + src2 > 2

31

− 1, then the result is 2

31

− 1.

2) If the dst is an int and src1 + src2 < −2

31

, then the result is −2

31

.

3) If the dst is a long and src1 + src2 > 2

39

− 1, then the result is 2

39

− 1.

4) If the dst is a long and src1 + src2 < −2

39

, then the result is −2

39

.

The result is placed in dst. If a saturate occurs, the SAT bit in the control status
register (CSR) is set one cycle after dst is written.

Execution

if (cond)

src1 +s src2

dst

else nop