FINAL Presentation
FINAL Presentation
SHREYA – 22X046
SHREENITHI- 22X045
SRI HARINI- 22X050
NIVIKA- 22X028
RIVENTHIGA- 22X038
AGENDA
Parallel Processing
Pipelining
Arithmetic Pipeline
Instruction Pipeline
RISC Pipeline
PARALLEL
PROCESSING
Parallel processing is a term used to denote a large
class of techniques that are used to provide simultaneous
data-processing tasks for the purpose of increasing the
computational speed of a computer system .
Instead of processing each instruction sequentially
as in a convention computer, a parallel processing system
is able to perform concurrent data processing to archieve
faster execution time.
One type of parallel processing that does not fit Flynn’s classification is
Pipelining
Under this parallel processing there are 3 main topics they are
as follows
1. Pipeline processing
2. Vector processing
3. Array processors
• The behaviour of the pipeline can be illustrated with a space- time diagram. This is a diagram that
shows the segment utilization as a function of time. The horizontal axis displays the time in clock
cycles and the vertical axis gives the segment number.
• There are various reasons why the pipeline cannot operate at its maximum theoretical rate.
Different segments may take different times to complete their suboperation. The clock cycle must
be chosen to equal the time delay of the segment with the maximum propagation time.
SPACE – TIME DIAGRAM FOR PIPELINE
Two types of pipeline :
1. ARITHMETIC PIPELINE
2. INSTRUCTION PIPELINE
ARITHMETIC PIPELINE
Pipeline arithmetic units are found in very high speed computers. They are used to
implement floating-point
Operations, multiplication of fixed –point numbers, and similar computations
encountered in scientific problems.
X=A*2^a
Y=B*2^b
ARITHMETIC PIPELINE
The floating- point addition and subtraction can be performed in four segments. The
registers labeled R are placed between the segments to store intermediate results.
This causes the instruction fetch and execute phases to overlap and perform
simultaneous operations.
In that case the pipeline must be emptied and all the instructions that have been
read from memory after the branch instruction must be discarded.
Calculate the
Fetch the instruction Decode the effective address & Execute the Store the result in the
from memory instruction fetch operands from instruction proper place
memory
4 SEGMENT INSTRUCTION PIPELINE
•
CONFLICTS
In general, There are three major difficulties that cause the instruction
pipeline to deviate from its normal operation.
RESOURCE CONFLICTS caused by access to memory by two segments at
the same time, Most of these conflicts can be resolved by using separate
instruction and data memories
DATA DEPENDENCY conflicts arise when an instruction depends on the
result of a previous instruction, but this result is not yet available
BRANCH DIFFICULTIES arise from branch and other instructions that
change the value of PC.
CONFLICTS
DATA DEPENDENCY OPERAND FORWARDING
HARDWARE INTERLOCKS DELAYED LOAD
DELAYED BRANCH
• The method used in most • The complier for a • Load from memory to R1
RISC processors is to rely processor that uses delayed • Increment R2
on the complier redefine branched is designed to
• Add R3 to R4
the branches so that they analyze the instructions
effect at the proper time in before and after the branch • Subtract R5 from R6
the pipeline. This method is and rearrange the program • Branch to address X
referred to as Delayed sequence by inserting
branch useful instructions in the
delay steps
QUESTIONS
1. WHICH GENERATION INTRODUCED THE
CONCEPT OF PARALLEL PROCESSING ?
2. WHAT ARE FIVE SEQUENCE STEPS IN
PIPELINING ?
3. WHAT ARE TWO TYPES OF PIPELINING ?
4. WHAT IS PIPELINING EFFICIENCY ?
QUESTIONS