< previous page page_73 next page >

Page 73
0073-01.gif
Figure 2.11
Effect of fraction of pipeline
interruptions (b) on optimum number of
pipeline segments (S
opt).
1. Estimate b from instruction set and machine organization characteristics and k from technology considerations, usually k < .1; in the absence of detailed information use k = 0.05.
2. Using path delay data, determine T. Find C based on clock design and register delay.
3. Compute Sopt. Try various smaller values of S, and hence larger Dt, to find the cycle time that minimizes the quantization effects discussed in the next section.
d87111c01013bcda00bb8640fdff6754.gif
The following study uses what we have learned so far to create an allocation of actions to pipeline segments.
Study 2.1 Optimum Pipelining
In a certain processor, each instruction requires a number of actions. These actions and their corresponding delays are listed in table 2.1. The delays listed are the nominal values before taking into account any side effects of clock skew and pipeline stage partitioning.
Assume that each pipeline segment requires a clock overhead of 4ns and a skew factor k = 0.05; also, the unit delays can be combined into pipeline stages, but can be subdivided into smaller stages only in the case of I-decode (max of 2 6-ns segments) and Execute (into 3 segments, partitioned 7, 7 and 8ns).
1. Compute the optimum number of segments (Sopt), assuming a branch frequency b = 0.2.
d87111c01013bcda00bb8640fdff6754.gif
First, we compute T, the sum of all execution phase times.
T
=
4 + 6 + 10 + 3 + 12 + 9 + 3 + 6 + 10 + 3 + 22 + 2
=
90 ns.

 
< previous page page_73 next page >