Page 1126 - The Mechatronics Handbook
P. 1126

for computation and memory access, and pipeline registers. One must understand the concept of pipe-
                                 lining in order to understand the data paths of today’s microprocessors.
                                 Pipelining
                                 In the 1970s, only supercomputers and mainframe computers were pipelined. Today, most commercial
                                 microprocessors are pipelined. In fact, pipelining has been a major reason why microprocessors today
                                 outperform supercomputers built less than 10 years ago. Pipelining is a technique to coordinate parallel
                                                     2
                                 processing of operations.  This technique has been used in assembly lines of major industries for more
                                 than a century. The idea is to have a line of workers specializing in different pieces of work required to
                                 finish a product. A conveying belt carries each product through the line of workers. Each worker will do
                                 a small piece of work on each product. Each product is finished after it is processed by all the workers
                                 in the assembly line.
                                   The obvious advantage of pipelining is to allow one worker to immediately start working on a new
                                 product after finishing the work on a current product. The same methodology is applied to instruction
                                 processing in microprocessors. Figure 42.4(a) shows an example five-stage pipeline dividing instruction
                                 execution into Fetch (F), Decode (D), Execute (E), Memory (M), and Write-back (W) operations, each
                                 requiring various stage-specific logic. Between each stage is a stage register (SR) used to hold the
                                 instruction information necessary to control the instruction. A very basic principle of pipelining is that
                                 the work performed by each stage must take about the same amount of time. Otherwise, the efficiency
                                 will be significantly reduced because one stage becomes a bottleneck of the entire pipeline. Similarly, the
                                 time duration of the slowest pipeline stage determines the overall clock frequency of the processor. Due
                                 to this constraint and the characteristics of memory speeds, the five-stage pipeline model often requires
                                 some of the principle five stages to be divided into smaller stages. For instance, the memory stage may
                                 be divided into three stages, allowing memory accesses to be pipelined and the overall processor clock
                                 speed to be a function of a fraction of the memory access latency.




































                                 FIGURE 42.4  Pipeline architecture: (a) machine, (b) overlapping instructions.


                                 ©2002 CRC Press LLC
   1121   1122   1123   1124   1125   1126   1127   1128   1129   1130   1131