Advanced Computer Architecture
Arithmetic Pipelining
Mr. Susanta Kumar Sahoo
Department of CSE & A
ACA- Lecture
Arithmetic Pipelines:
Fixed Point Addition Pipeline:
ACA- Lecture
ACA- Lecture
Fixed Point Multiplication Pipeline:
• A pipelined multiplier based on the digit products can be designed
using digit product generation logic and the digit adders.
Example:
25 * 35 = 875
Now for binary multiplication:
A = a1 a0
B = b1 b0
ACA- Lecture
Multiplier Based on Digit Products:
ACA- Lecture
Floating Point Multiplication Pipeline:
FP multiplication involves the following three major steps:
1. Multiplication of fractions.
2. Addition of exponents.
3. Normalization of the result.
• Since fractions and exponents are fixed-point numbers, the steps 1 & 2 can
be implemented using the principles discussed before. Normalization step
can be implemented as given in the floating point addition.
Floating Point Division Pipeline:
• Division operation appears less frequently in computer programs
compared to addition subtraction and multiplication and hence separate
pipeline unit for the division is seldom implemented. It is common to
schedule the division using adder and multiplier pipelines.
2 ACA- Lecture
= ACA- Lecture
> ACA- Lecture
Recurrence Computations:
• The recurrence formula expresses how to compute a sequence of numbers
(Vector X) from another sequence of numbers (Vector A). A pipeline to
compute the vector X should ideally take one element of A and produce one
element of X, as illustrated in this example:
Xi = ai + Xi 1
Xi 1 = ai 1 + Xi 2
Xi = ai + ai 1 + Xi 2
Xi = ai + ai 1 + ai 2 + ai 3 + Xi 4
Xi = bi + Xi 4
bi = ai + ai 1 + ai 2 + ai 3
? ACA- Lecture
• This pipeline computes b’s using only TWO pipes and third pipe
computes the X’s.
• This pipeline has 12 stages and computes one X every clock cycle with
each new value provided on the input
F ACA- Lecture
Example: the instruction cycle can be implemented as a sequence of
a basic steps;
ACA- Lecture
• The instructions may be classified into groups such that a group represents
the similarity in the use of stages by all the instructions in the group. It is
easy to characterize the groups from the overall function they present. The
following groups are:
Group 1: add like instructions. Group 2: branch instructions.
ACA- Lecture
Group 3: register to register Group 4: store instructions.
instructions.
ACA- Lecture
Pipeline Instruction Processing: Some Issues
ACA- Lecture