Buffer Insertion Basics - Computer Engineering & Systems Group ...
Buffer Insertion Basics - Computer Engineering & Systems Group ...
Buffer Insertion Basics - Computer Engineering & Systems Group ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
5.5 Implicit Representation<br />
Van Ginnken’s algorithm uses explicit representation to store slack and capacitance values, and<br />
therefore it takes O(bn) time when adding a wire. It is possible to use implicit representation to<br />
avoid explicit updating of candidates.<br />
In the implicit representation, C(v,α) and Q(v,α) are not explicitly stored for each candidate.<br />
Instead, each candidate contains 5 fields: q, c, qa, ca and ra 2 . When qa, ca and ra are all 0, q<br />
and c give Q(v,α) and C(v,α), respectively. When a wire is added, only qa, ca and ra in the root<br />
of the tree ( [39]) or as global variables themselves ( [41]) are updated. Intuitively, qa represents<br />
extra wire delay, ca represents extra wire capacitance and ra represents extra wire resistance.<br />
It takes only O(1) time to add a wire with the implicit representation [39, 41]. For example,<br />
in [41], when we reach an edge e with resistance R(e) and C(e), qa, ra and ca are updated to<br />
reflect new values of Q and C of all previous candidates in O(1) time, without actually touching<br />
any candidate:<br />
qa = qa + R(e) · C(e)/2 + R(e) · ca,<br />
ca = ca + C(e),<br />
ra = ra + R(e).<br />
2 In [41], only 2 fields, q and c, are necessary for each candidate. qa, ca and ra are global variables for each 2-pin<br />
segment.<br />
37