Pipeline processing-parallel computer architecture , Computer Engineering

Assignment Help:

Pipeline Processing

Pipelining is a process to realize, overlapped parallelism in the proposed answer of a problem, on a digital computer in an economical way. To understand the concept of pipelining, we need to understand first the concept of assembly lines in an automated production plant where items are assembled from separate parts (stages) and output of one stage becomes the input to different stage. Taking the analogy of assembly lines, pipelining is the method to introduce temporal parallelism in computer operations. Assembly line is the pipeline and the separate parts of the assembly line are different stages through which operands of an operation are passed.

To introduce pipelining in a processor P, the following steps given below:

  • Sub-divide the input process into a sequence of subtasks. These subtasks will make phases of pipeline, which are also called as segments.
  • Each phase Si of the pipeline according to the subtask will execute some operation on a distinct set of operands.
  • When phase Si has completed its operation, results are gone to the next stage Si+1 for the next operation.
  • The phase Si takes a new set of input from earlier stage Si-1.

In this way, parallelism in a pipelined processor can be achieved like that m independent operation can be present simultaneously in m segments as shown given below:-

                                                       945_Pipeline Processing.png

The phases or section are executed as pure combinational circuits performing logic or arithmetic operations over the data streams flowing through the pipe. Latches are used to divide the phases, which are quick registers to hold intermediate results among the phases as shown in Figure. Each phase Si consists of a processing circuit Ci and a latch Li .  The last output is stored in output register R. The flow of data vary from one stage to another is controlled by a common clock. Therefore, in every clock period, one stage transmits results to another stage.

                                                  438_Pipeline Processing 1.png


Related Discussions:- Pipeline processing-parallel computer architecture

Floating-point processing and instruction encoding, write a program that e...

write a program that evaluate the following arithmetic expression: ((A+B) /C) * ((D-A)+E) assign test value to the variable and display the resulting value.

How to add noise to an image in matlab, The function noise.m, now installed...

The function noise.m, now installed on ashland too, adds Gaussian, salt, uniform and pepper, additive or multiplicative noise to an image

Nor gate, The NOR gate. The NOR gate is equivalent to an OR gate follow...

The NOR gate. The NOR gate is equivalent to an OR gate followed by a NOT gate so that the output is at logic level 0 when any of the inputs are high otherwise it is at logic le

Two ways of constructing a larger module to mount flash chip, What are the ...

What are the two ways of constructing a larger module to mount flash chips on a small card? The two ways are:- a) Flash cards b) Flash drivers.

Illustrate about fat structure, Q. Illustrate about FAT structure? DOS ...

Q. Illustrate about FAT structure? DOS file system maintains a table of pointers known as FAT (File allocation table) that comprises an array of 16-bit values. There is one ent

What is a javabean, JavaBeans are reusable software components written in t...

JavaBeans are reusable software components written in the Java programming language, designed to be influenced visually by a software development environment, like JBuilder or Visu

Explain the matlab language, This is a high-level matrix/array language wit...

This is a high-level matrix/array language with control flow statements, functions, data structures, input/output, and object-oriented programming features. It permits both "progra

Discuss the 5-level switching hierarchy recommended by ccitt, Discuss the 5...

Discuss the 5-level switching hierarchy recommended by CCITT. Hierarchical networks are able of handling heavy traffic where needed, and at similar time use minimal number of t

Functions employed for messaging passing, Q. Functions employed for messagi...

Q. Functions employed for messaging passing? The functions employed for messaging passing are: int MPI_Send(void *msgaddr, int count, MPI_Datatype datatype, int dest, int ta

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd