< previous page page_72 next page >

Page 72
Considering pipeline interruption, the performance of the processor is:
0072-01.gif
The throughput (G) can be defined as:
0072-02.gif
If we find
0072-03.gif
we can find Sopt, the optimum number of pipeline segments [77]:
0072-04.gif
Once an initial S has been determined, the total instruction execution latency Tinstr) is:
0072-05.gif
Finally, we compute the throughput performance G in (million) instructions per second.
Suppose T = 120ns and b = 0.2, C = 5ns, k = 0.1. Then Sopt = 10 stages. Figure 2.11 illustrates the effect of pipeline disruptions b on Sopt for these machine parameters.
Of course, Sopt as determined is simplisticfunctional units cannot be arbitrarily divided, integer cycle boundaries must be observed, etc. Still, determining Sopt as before can serve as a design starting point or as an important check on an otherwise empirically optimized design.
The preceding discussion considers a number of pipeline segments S on the basis of performance. Each time a new pipeline segment is introduced, additional cost is added which is not factored into the analysis. Each new segment requires additional registers and clocking hardware. Because of this, the optimum number of pipeline segments (Sopt) ought to be thought of as a probable upper limit to the number of useful pipeline segments that a particular processor can employ. At the very early stages of any design, when only the estimates for the delay through the various units are known, the initial partitioning of actions into pipeline stages might begin as follows:

 
< previous page page_72 next page >