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

Why is cloud computing important, Why is Cloud Computing important? The...

Why is Cloud Computing important? There are many implication of cloud technology, for both developers and end users. For developers, cloud computing gives increased amounts of

Operation of micro controller, Consider the hardware design as shown. Withi...

Consider the hardware design as shown. Within the target system the EPROM would contain the hex data as shown below   Address  Assembly code   8000             86   8001

Register data type as sequential element, Reg data type as Sequential eleme...

Reg data type as Sequential element module reg_seq_example( clk, reset, d, q); input clk, reset, d; output q; reg q; wire clk, reset, d; always @ (posedge clk or

We cannot use append structures why, If a table that is to be extended cont...

If a table that is to be extended contains a long field, we cannot use append structures why? Long fields in a table must always be located in the last, as the last field of th

Illustrate cache dram, Q. Illustrate Cache DRAM? Cache DRAM (CDRAM) wh...

Q. Illustrate Cache DRAM? Cache DRAM (CDRAM) which is developed by Mitsubishi integrates a tiny SRAM cache (16Kb) on a generic DRAM chip. SRAM on the CDRAM can be used in two

Call the user methods by creating the object, Make a class library and desc...

Make a class library and describe class 'User'. In User class describe the public, protected and Friend functions. Make a console application andadd a reference to this library and

What is batch processing, What is Batch processing In this process, a n...

What is Batch processing In this process, a number of tasks (or jobs) are all collected together over a set period of time. They are then all loaded into the computer system (i

Why is xml such an important development, It takes away two constraints whi...

It takes away two constraints which were holding back Web developments: 1. Dependence on a one, inflexible document type (HTML) which was being much abused for tasks it was neve

Computer systems architecture, Assume that you are working in a software co...

Assume that you are working in a software company as a programmer and a bank is your company's client. The Bank is a most popular and one of the leading banks in Malaysia. Your

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