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

How a pointer variable declared in c, How a pointer variable declared in C ...

How a pointer variable declared in C ? Why is it sometimes desirable to pass a pointer to a function as an argument? A pointer is a variable which contains the address in memor

Illustrate working of t flip-flop, Q. Illustrate working of T Flip-Flop? ...

Q. Illustrate working of T Flip-Flop? T (Toggle) flip-flop is attained from JK flip-flop by combining inputs J and K together. The implementation of T flip-flop is displayed in

How would you kill a process, How would you kill a process? The "kill" ...

How would you kill a process? The "kill" command takes the PID as one argument; this signifies which process to terminate. The PID of a process can be got using "ps" command

Determine the statement for array, Q. Determine the statement for array? ...

Q. Determine the statement for array? Determine the statement ALIGN A[i] WITH B[i] This statement aligns every A[i] with B[i] as displayed in Figure below. Figure

Explain cell spacing and cell padding, Q. Explain Cell Spacing and Cell Pad...

Q. Explain Cell Spacing and Cell Padding? Couple of attributes known as CELLSPACING and CELLPADDING. Both are part of tag. CELLPADDING is the amount of space between

What is the maximum number of fragments, What is the maximum number of frag...

What is the maximum number of fragments that can result from a single IP Datagram? Explain. To fragment a datagram for transmission across a network, a router utilizes the netw

#title., Ask queCreate a telephone directory. The heading should be 16-poi...

Ask queCreate a telephone directory. The heading should be 16-point Arial Font in bold The rest of the document should use 10-point font size Otherheadingsshould use 10-point Cour

Determine the define byte - assembler directives, Determine the Define Byte...

Determine the Define Byte - Assembler directives DB (Define Byte): DB directive defines a byte-type variable (i.e. a variable that occupies one byte of memory space). In a give

Types of messages, Q. Types of messages? The messages can be of many ty...

Q. Types of messages? The messages can be of many types.  A specific field of all messages may be reserved to signify message type.  The message passing primitives are like thi

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