What do you mean by instruction pipelining, Computer Engineering

Assignment Help:

After considering instruction execution let's now describe a concept which is very popular in any CPU implementation. This conception is instruction pipeline. 

To extract better performance as said earlier instruction execution can be done through instruction pipeline. The instruction pipelining includes decomposing of an instruction execution to some pipeline stages. Some of the common pipeline phases can be instruction fetch (IF), instruction decode (ID), operand fetch (OF), execute (EX), store results (SR).  An instruction pipe caninclude any combination of such stages. A main design decision here is that instruction stages must be of equal execution time.

A pipeline allows overlapped execution of instructions. So during the course of execution of an instruction, following can be a scenario of execution.

2046_What do you mean by INSTRUCTION PIPELINING.png

                                                    Figure: Instruction Pipeline                            

Please note following observations about above figure:

  • Pipeline stages are just like steps. So a step of the pipeline is to be complete in a time slot. Size of the time slot will be administered by the stage taking maximum time. So if the time taken in different stages is almost similar we get the best results.
  • First instruction execution is completed on completion of 5th time slot thoughsubsequently in every time slot the next instruction gets executed. Thus in ideal conditions one instruction is executed in pipeline in each time slot.
  • Please note that after 5th time slot and afterwards the pipe is full. In the 5th time slot the phases of execution of five instructions are:

SR (instruction 1) (Requires memory reference),

EX (instruction 2) (No memory reference),

OF (instruction 3) (Requires memory reference),

ID (instruction 4) (No memory reference),

IF (instruction 5) (Requires memory reference),

The Pipelining Problems:

  • On the 5th time slot and afterwards there can be a memory or register conflict in the instructions which are performing memory and register references that is various phases may refer to same memory/registers location. This will yield in slower execution instruction pipeline which is one of the higher number instruction has to wait till lower number instructions completed effectively pushing whole pipelining by one time slot.
  • Another significant situation in Instruction Pipeline can be the branch instruction. Presume that instruction 2 is a conditional branch instruction then by the time the decision to take branch is taken (at time interval 5) three more instructions have already been fetched. So if the branch is to be taken then whole pipeline is to be emptied first. So in such cases pipeline can't run at full load.

 


Related Discussions:- What do you mean by instruction pipelining

Hazard (computer architecture), Hazard (computer architecture): In the...

Hazard (computer architecture): In the computer architecture, a hazard is a possible problem that can occurs in a pipelined processor. It concern to the possibility of erroneo

Differentiate between unit testing and integration testing, Unit testing an...

Unit testing and integration testing: Unit testing focuses on the least element of software design by the module. Unit test is conducted on every of the modules to uncover er

Explain auto increment and auto decrement mode, Explain Auto increment and ...

Explain Auto increment and Auto decrement mode  The register is incremented or decremented after (or before) its value is used to access memory.  The address stored in the regi

What is vertical organization and horizontal organization, What is vertical...

What is vertical organization and horizontal organization? Highly encoded schemes that use compact codes to state only a small number of control functions in every microinstruc

What is bea weblogic?, Ans) BEA Web Logic is a J2EE application server and ...

Ans) BEA Web Logic is a J2EE application server and also an HTTP web server by BEA Systems of San Jose, California, for UNIX, Linux, Microsoft Windows, and other platforms. Web Log

How can we decrement and increment operations, How can we decrement and in...

How can we decrement and increment  operations We  can  implement decrement  and increment  operations  by  using  a  combinational circuit  or  binary  down/up counters.  In

Construct the finite automata, Give the regular expression of the set of al...

Give the regular expression of the set of all even strings over the alphabet {a, b} along with at least one of the two substrings aa or bb. As well construct the finite automata wh

Use of delay loops, A very useful application of assembly is to generate de...

A very useful application of assembly is to generate delay loops. These loops are used for waiting for some time before execution of subsequent instruction. However how to find

Static or dynamic - artificial intelligence, Static or Dynamic - artificial...

Static or Dynamic - artificial intelligence An environment is static if it doesn't change while an agent's program is making the decision about how to act. When programming ag

Explain standard streams and file streams, a. Explain Standard Streams and ...

a. Explain Standard Streams and file streams. Differentiate among two types of stream. b. Write a program in C++ that inputs characters from the keyboard and prints them in reve

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