Instruction pipelines, Computer Engineering

Assignment Help:

Instruction Pipelines

As discussed previous, the stream of instructions in the instruction implementation cycle, can be realized through a pipeline where overlapped implementation of different operations are performed. The process of implenting the instruction involves the following main steps:

  • Fetch the instruction by the main memory
  • Decode the instruction
  • Fetch the operand
  • Implement the decoded instruction

These four steps become the candidates for phases for the pipeline, which we state as instruction pipeline (It is given in Figure).

                                                471_Instruction Pipelines.png

                                                          Figure: Instruction Pipeline

While, in the pipelined implementation, there is overlapped implementation of operations, the four phases of the instruction pipeline will work in the overlapped manner. Firstly, the instruction address is fetched from the memory to the first phase of the pipeline. The first phase fetches the instruction and provides its output to the second phase. Whereas, the second phase of the pipeline is decoding the instruction, the first phase gets another input and provides the next instruction. When the first instructions have been decoded in the second phase, then its output is fed to the third phase. When the third phase is fetching the operand for the first instruction, then the second phase gets the second instruction and the first phase gets input for another instruction and so on. In this manner, the pipeline is implementing the instruction in an overlapped way increasing the speed of execution and throughput.

The situation of these overlapped operations in the instruction pipeline can be demonstrated through the space-time diagram. In Figure, firstly we show the space-time diagram for non-overlapped implementation in a sequential environment and then for the overlapped pipelined environment. It is clear from the two diagrams that in non-overlapped implementation, results are achieved only after 4 cycles while in overlapped pipelined implementation, after 4 cycles, we are receiving output after every cycle. Soon in the instruction pipeline, the instruction cycle has been deduced to ¼ of the sequential implementation.

                                      879_Space-time diagram for Non-pipelined Processor.png

                                                Space-time diagram for Non-pipelined Processor

                                    967_Space-time diagram for Overlapped Instruction pipelined Processor.png

                                              Space-time diagram for Overlapped Instruction pipelined Processor


Related Discussions:- Instruction pipelines

Explain about the various uses of artificial intelligence, Discuss the use ...

Discuss the use of Artificial intelligence techniques in E-Commerce applications. Explain about the various uses of Artificial Intelligence in Medicine field. Justify it with pr

Explain difference between macro call and macro expansion, Explain differen...

Explain difference between macro call and macro expansion. Macro expansion: While a macro name is used along with a set of actual parameters this is replaced through a code g

Enumerate about the decimal arithmetic unit, Enumerate about the Decimal Ar...

Enumerate about the Decimal Arithmetic Unit The user of the computer input data in decimal numbers and receives output in the decimal form. But a CPU with ALU can perform arith

What is path testing, Explain path testing.   Path Testing: Testing in ...

Explain path testing.   Path Testing: Testing in which all paths in the program source code are tested at least once. Path testing has been one of the first test methods, and e

What is an orthogonal base class in c++, If two base classes have no overla...

If two base classes have no overlapping methods or data they are said to be independent of, or orthogonal to each other. Orthogonal in the sense means that two classes function in

Virtual memory - computer architecture, Virtual memory: Virtual memory...

Virtual memory: Virtual memory is a technique which realized an application program the idea that it has contiguous working memory (an address space), whereas in fact it may b

Explain the uses of keyboards, Explain the uses of Keyboards An alphanu...

Explain the uses of Keyboards An alphanumeric keyboard for a graphics system is used primarily as a device for entering text strings. Keyboards can also be provided with featur

State briefly about the register transfer, State briefly about the  Regist...

State briefly about the  Register Transfer A micro operation is a basic operation performed on information stored in one or more registers. The result of operation may replace

How would you implement inheritance using vb.net/c#, How would you implemen...

How would you implement inheritance using VB.NET/C#? When we set out to execute a class using inheritance, we must first start with an existing class from which we will derive

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