2 Computation Units
2.5.1
ALU Operation
The ALU takes one or two input operands, called the X input and the Y
input, which can be any data registers in the register file. It usually returns
one result; in add/subtract operations it returns two results, and in
compare operations it returns no result (only flags are updated). ALU
results can be returned to any location in the register file.
Input operands are transferred from the register file during the first half of
the cycle. Results are transferred to the register file during the second half
of the cycle. Thus the ALU can read and write the same register file
location in a single cycle.
If the ALU operation is fixed-point, the X input and Y input are each
treated as a 32-bit fixed-point operand. The upper 32 bits from the source
location in the register file are transferred. For fixed-point operations, the
result(s) are always 32-bit fixed-point values. Some floating-point
operations (LOGB, MANT and FIX) can also yield fixed-point results.
Fixed-point results are transferred to the upper 32 bits of register file. The
lower eight bits of the register file destination are cleared.
The format of fixed-point operands and results depends on the operation.
In most arithmetic operations, there is no need to distinguish between
integer and fractional formats. Fixed-point inputs to operations such as
scaling a floating-point value are treated as integers. For purposes of
determining status such as overflow, fixed-point arithmetic operands and
results are treated as twos-complement numbers.
2.5.2
ALU Operating Modes
The ALU is affected by three bits in the MODE1 register; the ALU
saturation bit affects ALU operations that yield fixed-point results, and the
rounding mode and rounding boundary bits affect floating-point
operations in both the ALU and multiplier.
MODE1
Bit
Name
13
ALUSAT
15
TRUNC
16
RND32
2 – 6
www.BDTIC.com/ADI
Function
1=Enable ALU saturation (full scale in fixed-point)
0=Disable ALU saturation
1=Truncation; 0=Round to nearest
1=Round to 32 bits; 0=Round to 40 bits
Need help?
Do you have a question about the ADSP-2106x SHARC and is the answer not in the manual?
Questions and answers