0
8.2kviews
What is instruction pipelining? What are advantages of pipelining?
1 Answer
2
58views

Instruction Pipelining:

  • During program execution instruction passes through a sequence of processing steps.
  • An instruction pipelines is a multi-instruction pipeline design to speed up system performance by overlapping processing of instructions.

There are two types of Executions:

  • Sequential Execution
  • Pipelined Execution

1) Sequential Execution:

  • In this type of execution, the instructions are executed in a sequence.
  • When one instruction is completely executed then only the next instruction is fetched from the memory.

enter image description here

Pipelined Execution:

  • Pipelined Processing can happen in both the instruction stream as well as in data stream an instruction pipeline reads consecutive instruction from memory while previous instructions are executed an instruction execution in pipelined system is as follows:

    • Instruction Fetch
    • Instruction Decode
    • Address Generation of Operand
    • Operand Fetch
    • Instruction Execution
    • Writing back the result
    • Update the program counter

There are some difficulties which prevents the instruction pipelines from executing at its maximum rate

  • Different Stages of pipeline can take different time to execute.
  • Some instruction may skip some of the stages.
  • Two or more stages required memory access at same time.
  • Instruction decoding can be combined with calculation of address.
  • If we assume that the result of an instruction is stored in CPU register then instruction execution and storing of result can be combined in any stage.

By assuming the instruction pipelining can be reduced into five stages:

  • IF (Instruction Fetch)
  • DA (Decode & Calculating Address)
  • OF (Operand Fetch)
  • OF (Operand Fetch)
  • EXE (Execute & Write Back Result)

enter image description here

Please log in to add an answer.