Chapter 3 PDOARST Algorithm
3.1 Steiner–Tree Delay Analysis
An important relation between radius (path length from driver to sink) and cir-cuit delay is observed. This relation is commonly observed in Steiner tree construction with as well as without obstacles. Figure 3-1 and 3-2 show that the fact that a long radius of a sink infers its large delay holds for both MST and SPT. It is mostly caused by the increasing number of sub-tress connecting to the large-radius path, which in-creases the downstream capacitance on this path and then the path delay. Hence, bounding the longest radius requires pre-routing these large-radius sinks. Besides, the topologies of the sub-trees subsequently growing starting at the paths, says Pds, from the driver to the large-radius sinks have to be well controlled. From the above obser-vation, the ideal tree topology from the driver to a large-radius sink should be a trian-gle, as shown in Figure 3-3. A short sub-tree in the figure means it has less number of nodes than that of large sub-tree. Thus the sub-trees connecting a path in Pds at the position near the driver are allowed to have longer wire length than that of the sub-trees connecting a path in Pds at the position near the sink.
Rule 1. Reduce the wire length of the sub-trees connecting a path in Pds at the position near the sink.
Figure 3- 1: Relation between radius and delay in SPT. The bolded rectangle nodes on left-upper side of two figures are the drivers. The circled and bold nodes on right-lower side of the left fig-ure are the sinks whose radiuses are longer than 80% of the worst radius in SPT. The circled and bold nodes on right-lower side of the right figure are the sinks whose delays are larger than 95%
of the worst delay in SPT.
Figure 3- 2: Relation between radius and delay in MST. The bolded rectangle nodes on left-upper side of two figures are the drivers. The circled and bold nodes on right-lower side of the left fig-ure are the sinks whose radiuses are longer than 80% of the worst radius in MST. The circled
and bold nodes on right-lower side of the right figure are the sinks whose delays are larger than 95% of the worst delay in MST.
Figure 3- 3: The topology of the proposed timing-driven Steiner tree.
Along the above observation, the following important thing is how to select a sink whose radius is so large as to deserve to be well controlled. Four definitions helpful to identify large-radius sinks are proposed in the following.
Definition: Criticality threshold factor. The Criticality threshold factor (CTF) of a SPT is defined as the ratio of its average sink delay to its worst sink delay.
Definition: Critical radius. The critical radius of a SPT is to multiply the criticality threshold factor by the maximum radius of the SPT.
Definition: Critical sink. A sink is said to be critical if its radius is larger than the critical radius.
Definition: Critical trunk. Critical trunk is the path on the SPT from the driver to a critical sink.
In the proposed approach, the performance-driven Steiner tree construction is first to identify an SPT on the constructed OASG. Criticality threshold factor is then used to represent the delay characteristics of the SPT and determine the number of critical trunks to constrain the delay of critical sinks. The delay analysis on the varia-tion of the criticality threshold factor is as follows.
(1) If criticality threshold factor approaches 1, the average sink delay is almost the same as the worst sink delay, i.e., the variation of all sinks’ delays is little. The number of critical trunks needed to be pre-routed is also few, and then total wire length can be used to measure circuit performance. In this case, minimization of total wire length is the most important thing, and pre-routing critical trunks does not favor circuit performance too much because the usage of critical trunks defi-nitely increases the total wire length. Figure 3-4 displays the result of ex-press-trunk growth when the criticality threshold factor is set to be 0.854.
Figure 3- 4: An example of the critical-trunk growth (gray and bold lines) under the situation of criticality threshold factor to be 0.854. The bold node on upper side is the driver.
(2) If the criticality threshold factor is close to 0, then the average sink delay gets much smaller than the worst sink delay. Since the variation of all sinks’ delays is significant, we need to pre-route many critical sinks to reduce the longest radius and then the maximum delay, which is usually generated by the sinks with large radius. Figure 3-5 shows the result of critical-trunk growth when the criticality threshold factor is set to be 0.473.
In summary, an SPT with large criticality threshold factor owns a nature tree to-pology suited to performance-driven Steiner tree, so it only requires little modification to reduce the worst sink delay. On the contrary, a SPT with small criticality threshold factor infers a poor tree topology for performance-driven Steiner tree.
Figure 3- 5: An example of critical-trunk growth (gray and bold lines) under the situation of criticality threshold factor to be 0.473. The bold node on right-lower side is driver.