Data Sheet
June 2001
DSP16410B Digital Signal Processor
Agere Systems Inc.
Agere Systems—Proprietary
Use pursuant to Company instructions
221
6 Software Architecture
(continued)
6.1 Instruction Set Quick Reference
(continued)
Table 133. F1E Function Statement Syntax
General-Purpose MAC Function Statements—Combine Any Items in Two Columns:
ALU
ADDER
Multipliers
aDE=aSE
±
p0
p0=xh*yh
p0=xh*yh
p0=xh*yl
p0=xh*yh
p0=xl*yh
aDE=aSE
±
p0
±
p1
aDPE=aSPE
±
p1
p1=xl*yl
p1=xl*yh
p1=xh*yl
p1=xl*yl
aDEE=aSEE
±
p0
(no ALU/ACS or ADDER operation)
(no multiply operation)
Additional General-Purpose MAC Function Statements
ADDER
aSE=0
ALU
Multipliers
p1=0
aDE=0
aDE=p0
aDE=p0
nop
p0=0
p0=xh*yh
Special-Purpose MAC Function Statements for Mixed Precision—Combine Any Items in Two Columns:
ALU
ADDER
aDE=p0+(p1>>15)
§
aDEE=aSE+aDPE
aDPE=p0+(p1>>15)
§
(no ALU/ACS or ADDER operation)
Multipliers
p1=xh*(yl>>>1)
p1=xl*(yl>>>1)
(no multiply operation)
p0=xh*yh
p0=xl*yh
Special-Purpose MAC Function Statements for Double Precision
ADDER
aDE=aSE+p0+(p1>>15)
§
aDE=aSE+p0+(p1>>15)
§
aDE=p0+(p1>>15)
§
aDPE=p0+(p1>>15)
§
aDE=(p0>>1)+(p1>>16)
aDPE=(p0>>1)+(p1>>16)
ALU
Multipliers
p1=xh*(yl>>>1)
p0=xh*yh
p0=0
p0=0
p0=(xl>>>1)*yh
p0=(xl>>>1)*yh
p1=(xl>>>1)*yh
p1=(xl>>>1)*yh
p1=xh*yh
p1=xh*yh
aDEE=aSE+aDPE
aDEE=aSE+aDPE
aDE=aSE+(p0>>1)
p0=xh*(yl>>>1)
p0=xh*(yl>>>1)
p1=(xl>>>1)*(yl>>>1)
p1=(xl>>>1)*(yl>>>1)
aDE=(aSE>>14)+p1
aDE=(aSE>>14)+p1
DAU flags are affected by the ALU or ALU/ACS operation (except for the split-mode function which does not affect the flags). If there is no ALU or
ALU/ACS operation, the DAU flags are affected by the ADDER or BMU operation.
If
auc0
[10] (FSAT field) is set, the result of the add/subtract of the first two operands is saturated to 32 bits prior to adding/subtracting the third operand
and the final result is saturated to 32 bits.
§ If
auc0
[9] = 1, the least significant bit of
p1>>15
is cleared.
This is a 16-bit operation. The DAU stores the result in the high half of the destination accumulator and clears the low half.
This split-mode instruction does not affect the DAU flags. Do not set FSAT for this instruction because if FSAT is set, the entire 32 bits are saturated.