• No results found

(

/

(

Il

)

c ,

CI

o

Chapter 5

~

----DELAYS-ffl BICONNECTEb COMPONENTS

(

) - .

__ //~../I' '"

,n (

This chapter is devoted to the problem of computing delays in smaller

r 0 , - -=:-1.

units than the transistor groups defined earlier. The motivation for doing this is the

p~sible speed improvement \hat May result.

This presentation begins with' a definition and description of hiconnected

u '

components, which are the minimal subgroups i.n which delays can be computed. This is followed by a proof that these subgroups are indeed minimal for delay computati n.' Finally, algorithms to separ~te a group i~to biconnected comp~nents and to com ute delays in a group that is partitioned in \J this manner are presented. '

Bicomponents have been used in the context of logie eval tion {Bar8,6].

However, to the best

of

the author's knowledge, their usage in contéXt of delay evaluation is original.

0.1 Biconnected Components

A subgroup in w~ich delay is to be computed must include ail nodes ~d

(J

transistors on any loop since, in the process of delay compùtation, this loop can be . broken a.ri.ywhere ând aIl sçcondary nodes of a ghren node must be in the same delay computation tree. Furthermore, the inclusion of complete loops guarantees that the - LM algorithm,

o~

&DY equivalent algorithm, can be carried through, provided that

}~ ~

. the loa,ding capacitancès are correctly comput~d. - l

, r.. ....

1

. "

J

Cl

o

5.1 Biconnected Componentl

\

1

, ". /

J'igure 5.1 ~omputing delaya in lIubgroupe.

Example 5.1 In Fig. 5.1, once the capacitive loading is computed at nodês A, B

- The graph-theoretical concept that correctly abstracts the idea of complete loops is the biconnected component concept. Let G = (E, V) be a connected graph. A' vertex tJ is an articulation point (also c~lled eut-point) if there exist distinct vertices u and w distinct from v, such that tJ is on every path from u to w. Clearly, the .. emoval

a biconnected subgraph that is not èontained in any larger biconnected subgraph.

Biconnected components are also 'called bicomponents, for short.

l \

The folIowing are som~ facts about bicomponents, given without proof (see

,

.

[Baa78] or [Tut84]). Each edg~ of G is in exactly one bicomponent. Each articulation

l

' " l ,

"

point of ~east two distinct bicomponents. Each bicomponent consista of at ~ least one edge. AlI edges

par~llel

to

a ~ven

edge are in the same bicompontt. If G..,

r-is a 1hen' ail internai nodes~iculation points and aU bicomponents consist of a uni e edge.

; 48

"\

Q

r

shaH prove that bicomponents have this property.

( a proper subset, contradicting the definition of bicomponent. !~r ~r:herefore, G'

contains aIl paths from ai to a;. ~ ."

the bicomponents are the minimal subgraphs of Gin which delays can be computed . ,

independéntly. .

r • '

\.

It remains now to relQ.te the delays computed in eac::h of the bicomponents to the dei a ys of the group. Let B (G) he the set of bicomponents of the graph G

o

o

i

.lgure 5.i \ A graph G with -4 bicom;onents. (a) Gi (h) Ite decompoeition .iD

~nent8i

(c) The bicomponent graph Bic(G).

'ft

bipartition (UI, U2) such that UI

=

B(G) and U't.~ A(G). ~t in Ut is adjacent to "2

in U2 if and only if the bicomponent UI includes the articulation point "2 {Tut84].

:.-, It would be tempting to define Bic( G) so that the articulation points are nodes-::â.nd bicomponents are edges. However, this is not possible Binee a biconnected 1::omponent can be adjacent to an arbitrary number of other bkomponentB through an arbitrary number of articulation points. For example, in Fig. 5:2, the bridge bicomponent cannot be replaced by an e"dge since, as a node of Bic( G), it has an incidence degree of 3.

..

Theorem 2. Bie(G) is a tree ([Tut84J).

( ' i .--Ji!8'

Pro of. : We shan prove' that Bic( G) is connected and that it contains no loops.

First, suppose that it is not connected. Let 0 be one ,of its components (maximally 'connected subgraphs). Let H be the union of bicomponents of G represented by the vertices of UI in C, and K the union of 8011 other bicomponents in G. Sinee each

1

l,

c

c

c

5.2 Delays· in the Bicomponent Graph

. ... ,

articulation point of G is contained in

ai

least one bicomponent of G, each component _ of Bic( G) includes a vertex of Ut. Therefore, since bicomponents of G contain at least

.,. .-v ... \

one e4ge, the subgraphs H' and K contain at least one edge. Further, sinee an edge of Gis in exactly one bicomponent, it must be in exactly one of H or K.

.

Now, sinee Gis conneeted, the subgraph H has a vertex z also contained in K. This must be a common vertex of a bicomponent eo~tained in H and a bicomponent ~ contained in K. But then, the corresponding vertex in U2 is adjacent to a vertex of Ul in C and a , vertex of UI not in C. This contradicts the definition of C as a compon~nt of Bie(G),

ther~fore, Bie(G) is eonnected.

Suppose now that Bic(G) contains a loop. We can then find k

>

2 distinct bicomponents .BII B2,.'" Bk and k distiIÏct articulation points al, a2, .. . , ak such that for each j, ai is corpmon to Bj-l and Bi' where Bo = Bk, Let H be the union of

~ll

the Bi other than Bl' H

~c~nnected

and it contains a path P from al to ak.

The' subgrapli BI UP is a biconnec~d subgraph of G-having BI as a proper subgraph, eontradicting the definition of bicomponent for Bl' Therefore, Bic(G) contains no

loops and so is a. tre~.

Let ba be the bieomponent in G that contains\the source. Consider blJ as the root of Eie(G}. Leaves"of Bic(G) ue bicomponents of G. They cannot be articu-lation points ainee, each articuarticu-lation point is contained in at least two b!F0mponents of G, i.e., nodes of Uz have at least degree 2. .

Related documents