Describe PipeLining, What is pipelining ans it's working in Computer, pipelines performace

No comments

Question:

Describe PipeLining, What is pipelining ans it's working in Computer.

Solution:

What is pipelining:

In computer architecture, by which different units do the same work of fetching instruction and then completing the process of store the results and the process is called Pipelining.


Pipelinig Stages:

Pipelining has two stages basically. They are:
  1. Fetch Instruction and
  2. Execute Instruction
The first stage fetches an instruction and buffers it.When the second stage is free, the first stage passes it the buffered instruction.While the second stage is executing the instruction, the first stage takes advantage of any unused memory cycles to fetch and buffer the next instruction.


How to speedup in pipelining:

To gain further speedup, the pipeline must have more stages.

Let us consider the following decomposition of the instruction processing.
• Fetch instruction (FI): Read the next expected instruction into a buffer.
• Decode instruction (DI): Determine the opcode and the operand specifiers.
• Calculate operands (CO): Calculate the effective address of each source operand. This may involve displacement, register indirect, indirect, or other forms of address calculation.
• Fetch operands (FO): Fetch each operand from memory. Operands in registers need not be fetched.
• Execute instruction (EI): Perform the indicated operation and store the result, if any, in the specified destination operand location.
• Write operand (WO): Store the result in memory.


Here, the fetch instruction will be fetch an instruction and then it'll send it to the next stage to the DI(Decode instruction). Then it'll be free. So, it'll be able to fetch the next instruction when the previous instruction is being processed. In this way, DI, FO, EI and WO will be ready to start a new work when it becomes free.

By the above way it can be obtained that when the last instruction is fetched, the first instruction result is already stored.

So, we can say that if different functional units perform independent work in a synchronous, simultaneous way, then it is called pipelining.

See an example of non-pipe-lining and pipe-lining 


 
In non pipelining total cycle needs 8 but in pipelining total cycle needs 5 and that's the real work of pipelining .


How pipelining work or execute it's program in processor to speed up the processor:

See the below the six stage of pipelining:

Six-Stage CPU Instruction Pipeline
Six-Stage CPU Instruction Pipeline


What is the performance of PipeLine or How to determine the performance of pipelining:

The cycle time of an instruction pipeline is the time needed to advance a set of instructions one stage
through the pipeline; The cycle time can be determined as,


Where,
ti = time delay of the circuitry in the ith stage of the pipeline
tm = maximum stage delay (delay through stage which experiences the largest delay)
k = number of stages in the instruction pipeline
d = time delay of a latch, needed to advance signals and data from one stage to the next


Now, suppose that n instructions are processed, with no branches. Let Tk,n be the total time required for a pipeline with k stages to execute n instructions.Then,

A total of k cycles are required to complete the execution of the first instruction, and the remaining instructions require cycles,
14 = [6 + (9 - 1)]

Now consider a processor with equivalent functions but no pipeline, and assume that the instruction cycle time kt is The speedup factor for the instruction pipeline compared to execution without the pipeline is defined as,


Where Sk = Speed up factor of pipelining.





Tags: What is pipelining , Computer Organization and Architecture,Describe PipeLining, What is pipelining ans it's working in Computer, pipelines performance, Pipe-Lining performance, What is Pipe-lining, What is Pipe-Line, About Pipe Line in Computer architecture


No comments :

Post a Comment