question archive A research paper/article on the history and use of pipelining in computer architecture
Subject:Computer SciencePrice:9.82 Bought3
A research paper/article on the history and use of pipelining in computer architecture. I have a presentation on this.
The answer and explanation for this question are in the explanation section.
Step-by-step explanation
History and use of pipelining in computer architecture.
Pipelining is the accumulation of processor instructions in a pipeline where instructions are stored and executed orderly. The concept of pipelining came into use in computers back in 1959, with IBM (7030) being considered the first machine to use this. As the years progressed, the use of pipelining grew, and in the 1980's RISC machines were made with the ease of pipelining in mind. These RISC machines revolutionalized pipelining so much with the concepts of delayed load and delayed branches being used to a great extent. The evolution continued with the MIPS architecture allowing for pipelining to be visible to the compiler, with a single instruction containing multiple operations.
Instructions in a pipeline can overlap at execution time. The pipeline is divided into several stages where instructions enter the pipeline from one end and exit from another. The two broad categories of pipelining are arithmetic pipelining and Instruction pipelining. The former is mostly used for arithmetic operations on floating-point numbers and multiplication of fixed-point numbers. Instruction pipelining allows for a stream of tasks to be conducted by overlapping fetch, decode, and execute phases of an instruction cycle, leading to a significant increase in a computer's output.
An instruction pipeline reads instructions from memory while previous instructions are being processed. In other parts of the pipeline, orders are being carried out. As a result, we can run numerous instructions at the same time. The pipeline will be more efficient if the instruction cycle is separated into equal-length chunks.
Pipelining's key benefit is that it keeps all parts of the processor busy and enhances productive work that can be done in a given amount of time. It also increases the throughput of the instructions by reducing the processor's cycle time. Pipelining can enable complex tasks more cost-effectively than installing sophisticated circuitry, such as for numerical calculations, by simplifying each dependent step.
The pipeline architecture has two disadvantages. The first is the issue of complexity. The second is when the pipeline stalls when it cannot run at maximum speed for an extended period.