Efficient Computation of Exact and Simplified Observability Don't care ...

1 downloads 0 Views 2MB Size Report
This work pre5eJlts new algmthms for the extraction of exact and approximate Observability Don't. Care sets (ODC sets) in a combinational multiple-level logic ...
Efficient Computationof Exact and Simplified Observability Don't care Setsfor Multiple-Level CombinationalNetworks Maurizio Damiani and GiovaImi De Micheli

TechnicalReport: CSL - TR - 90 - 424 April 1990 ComputerSystemsLaboratory Departmentsof Electrical Engineeringand ComputerScience StanfordUnivezsity Stanford.CA 943OS-4055

Abstract This work pre5eJltsnew algmthms for the extractionof exact and approximateObservabilityDon't Care sets (ODC sets) in a combinational multiple-level logic ~twork. The P'opo8edalgorithms are efficient becausethey use local information, i.e. the computationof the ODC for a vertex in the network requiresonly the knowledgeof the don't care setsat the adjacentvertices. Two approachesare proposed.The former computesthe exact ODC sets. The latter computesODC subsetsand can be used when partial information on the don't care sets is available. The algorithms for the simplified computationfinds the largest subsetsof the acblaI ODC sets,given the information availableat the adjacentvertices.

Key Words and Pbraas: CombinationalLogic Synthesis,Logic Minimi7.AUon, BooleanNetworks, Don't Care sets,Testing

i

Copyright @ 1990

by MaurizioDamianiandGiovanniDe Micheli

Efficient Computationof Exact and Simplified Observability Don't care Setsfor Multiple-Level CombinationalNetworks

1 Introduction Over the past few years. the problem of computing efficiently and correctly the Observability Don't Care (ODC) leta h.. e~rged .. . centtal one in the synthesisof combinationalnetworks [1], [2]. [3]. The knowledgeof the ODC lets is important in leveral respects,namely: 1) local minimization of fuIx:tiODl in a Boolean network, 2) Iynthesis of 100% testablenetworks. 3) teatpattern ge~ration [4]. Bartlett IX'Oposedin [1] a computation of the ODC sets ~uirlng the representationof the primary output expressionin terms of the network intermediatevariables. Such a representationmay be subject to the explosion in ~ of the relX'e8Cntation.M\D'Ogaproposedin [3] exhaustivesimulations of the circuit for determining the observability don't care setaof vertices with reconvergentfanout. Other authorsJX}intedout that it would be desirableand computationallymuch more efficient to derive the ODC set of a vertex of a Booleannetworkfrom the ODC setaof ita direct fanout vertices [SJ,[7]. They showed.however, that a straightforwardapplicationof this idea could lead to erroneousresults,becauseof the effect of reconvergent fanouL Therefore only approximatesolutionshave beenproposedto computethe ODC sets [7], [8]. In this paperwe show how an exact computationof ODC setsis indeedJX}ssibleby using only local information. We IX'Opose an algorithm for such a computationthat traversesdie ~twork backwardfrom the primary outputsto the primary inputs processingeach vertex only once. Unfortunately this method. leading to an exact comlXltation of the ODC sets, involves implicitly Boolean complementationsand it is consequentlyprone to the well-known phenomenonof "combinational explosion". We thereforeproposetwo other algorithmsfor the computationof subsetsof the acb1alODC sets,still basedon local information. The first algorithm computesan ODC subsetat each vertex of the Boolean network from the ODC subsetsof its direct faoout vertices. The second one computesboth subsetsof the acttla1care and don't care lets from thOle of its faoouL It will be shown that the subsetacomputedby the lecond algorithm include those computedby the first one, thus providing a better aPIX'oximation.

2 Definitions and Notations 2.1 CombinationalBooleanNetworks.

-

In this paper we model multiple-output combinationalcircuits by Boolean networks [I]. A Boolean network N with n input verticesam m OUtlXIt verticesrealizesa fuoctionl:.: B" ~ [I], where B is the Boolean set {O, I}. Underlining is used for denoting vector quantitiesthroughoutthis paper. The ~twork is specified by its acyclic network graph G = (V, E). The elementsof the vertexset V = VI U Va U VO = {v} are in o~-to-o~ corresponderx:e with primary in~ts, logic gates,and primary outputs, respectively.There is a directed edge e from a vertex poto a vertex II if the output of the gate in p.:is connectedto

1

an input of the gate in II. In conb'astto [1], am similarly to [3], we associatea network variable Vi to each edge ei E E. An example of a circuit am of its associatedBoolean network is shown in Fig. (1). A network variable V, is said to be a fanout (faDin)variable of a vertex II E V if ei is an edgewhosetail (head) end-point is II. We associateto each vertex II an expressionI" (fll , J/2,. . " fin) of its fanin edgevariables.The expressionI", desaibing the functionality of the gate in II, specifiesall the fanout variables of II in terms of the fanin variables.

2.2

Observability

don't care sets.

By cutting an edge ei ux1 by consideringYi u a IXimary i~ variable. the MW network Ne Ieallzes a function z:.enentsof Q12Q..1 yields %1%4-

3

Computation

of approximate ODC sets

It is of IX'8cticalinterest to consider the case in which the ODC sets are approximatedby subsets.becauseof their size. Note that excessapp-oximationsof the ODC sets are of no lX'Bcticalvalue for Boolean minimization. Therefore it is useful to derive ODC subsetsat a vertex from the ODC sets of its fanout vertices. Unfortunately. Eq. (7) may not yield an ODC subsetfrom subsetsof the actual ODC setsof each edge variable. For example,in the circuit of Fig. (I), if we assume

(actually a subsetof the U'UeQ12Q.1)' we fux1for QQQ..1 the estimate:

~1

= (~1~4~"'1"'4)

which is no longer a subsetof the true QQQ...

s

Two different approachesfor the computationof ODC subsetsare consideredhere. In particular we show two formulae that can replaceEq. (13) in the previousalgorithm. The first formula computesboth subsetsof the actual care and don't care sets of a vertex from thoseof its fanout variables. The secondone. simpler but less accurate, computesODC subsetsonly. We give first formulae for computing ODC" in the case of two fanout variables. We then {X'esenttheir generalizationto larger fanout.

3.1 Propagation of care and don't care subsets Let 111and 112denote the variables correSlX>ndingto the edges in the fanout of a vertex v. Assume that only subsets

QQQ. i'

~

i

of Q12Qgi '

~

i

are available. Then,

~

and .QQ" computedby:

(170)

and by QQ"

aresubsets of thetrue~

= QQ,IIV2Q~I'1 + QQ"lhQ~Iv, +

+QQQ.IIV2~21'1+ QQQ.11'~llvl andQQ", respectively.

(176)

To verify Eq. (17), it is sufficient to observethat, by expandingEq. (lOa) in sum of productsform,

Similarly, it can be verified from Eq. (lOb) that

QQ"=QQ"IIV2~21S11 Since we assumed QQ.Q.;

~ ~;;

+~IIV2~ISlI QQ.,

+~IVI~IIY2

~ QQ,,;,

+~2IvlQQ"IISl2'

i = 1,2, the relations Ql:[Q" ~ QQ.Q" and QQ" ~

(18b)

~

are immediately verified.

3.2 Computation of don't care subsets only If only subsetof don't care conditions ~i

areavailable,then,QQQ., canbe computedfrom:

~

=Q1[Q.IIV2Q1[Q.21.1 +~111/2Q1[Q.2Ivl (19) To verify Eq. (19) it is sufficient to observethat its right membermatchesthe first elementsin the sum (17a). Therefore~, as computedby Eq. (19), is also containedin QQQ.". Note that the ODC sets computedby Eq. (17a) always include those derived from Eq. (19). Therefore, the propagationof both care and don't care setsprovide a better approximationto the exact ODC sets. The ODC subsetscomputedby Eq. (17a), (17b) and (19) have a local maximality property,in the sensethat no other cube of the cofactorsQQQ.i IOJj' ~ ./OJj appearingin thoseequationscan be p-oved to be always contained in QQQ.".

6

(b)

(0)

Figure 2: Multi-way fork decompositionsof a fanout tree.

3.3 Generalization to larger fanout A vertex v with fanout n > 2 can always be replacedby a multi-way fork of interconnections,as shown in Fig. (2). Eqs. (17) (or, more simply, Eq. (19» could be applied iteratively to this fork. In this way a subsetof ODC" can be obtainedin an O(n) number of applicationsof EQs. (17) or (19).

@Q., = @Q.\[email protected]\[email protected]\312 + @Q.2Iv\Vs@Q.\[email protected]\h+ @Q"\IV23IS@Q"2131\3IS@Q,,S IV\V2+ Q1[Q,2Iv\Vs@Q.\ly2f'sQ:i[Q,s IV\V2 (20) If it is decomposedas in Fig. (2c), we insteadobtain the following expression,different from the previousone: QQQ"

= ~2Iv'VI~,I'2VI~II,2Y'

+~,IV2VI~21,.,yI~II,2Y'+

~2Iv"I~' 1'2YI~IIV2V, +~, IV2VI@Qhl"VI~llv2V, The largestexpressionthat can be obtained,startingfrom the variable don't care subsets,is

fi:t[Q" = @Q.IIVzV,Q~h l'lv,@., 1'1'2 + @.llv,V2Mg., 1'[email protected]'1"+

Mg.2IvIV,Mg.II,2V,Mg.,INI + @.2Iv,VIMg.,I,2VIMg.II,2"+ Mg., IVIV2@Q,11"V2Mg.21"'1 + @Q" IV2VI.@~I"VIMg.II"'2

(22

larger than (or equal to) both estimates(20) am (21). In dle generalcase,by expandingEq. (13) in sum-of-productsform, it is immediateto verify that the product

@.Q,IIVz [email protected],zlvl.V" V.-l'V. . .. QQQ..IV1.V2"",'_1 is certainlycontainedin Ql2Q". Let (it, i2, .. " in) denotea permutationof (1,2,. .. ,n). From the expression (15)of theexactQl2Q" associated to thatpermutation it followsthat

@Q., -'I

lor. "2' ...or. "'.-'2(ilJc... I..".",,'or

is also always contained in QQQ".

...or "'.

...Qj[c... -'.

I"."'2' ... ... "'.-.

Let 'Kn denote the set of alllX>ssible permutations!.

(1,2,...,n).Thesum QQQ.;.11I;11'~""'.;.-!

= (il.~.

(24) ,in) of

is thereforea subsetof QQQ". Similarly to the caseof two fanout variables,it can be shown that IX) other product of the variablesappearing in Eq. (25) can be added,while maintaining the fust memberof Eq. (25) an ODC subset. From the expansionof Eq. (13), all candidate~ involve in fact the complementof at least one fanout variable ODC subset,i.e. an OC superset.If such a JX'OOuct is added,it is no longer possibleto guaranteeQQQ" ~~. Eq. (25) therefore refjj"'""~ntsthe largesttX)ssibleestimate. Unfortunately, its computation requires a f~torial amount of time, and is therefore not awlicablc to large fanouts. Note, however,that for JOOst circuits the number of fanout stemsfor a node is typically small. When subsetsof the tnJe~i setsale also available,then the largestpossiblesubsetsof QQQ". QQ" can be computed as follows. A sum-of products expression of

~.

QQ"can be obtained by expalxiing

the expressions

(13)am (14). By substituting each~; and ~ with QQ;i and Q:iiQ." respectively,an exP'Cssionof ODC and OC subsetsis obtained. Different subsetsare obtainedby repeatingthe sameprocedureusing a permutationof the variables1/11 . . . 11/n. The largestpossiblesubsetis the sum of thesesubsets.

4

Relation to previous works.

Methodsfor computingobservabilitydon't can setshave beenproposedin [8], [3] am [7]. No~ of thesemethods maintainsseparatecomponentsfor the observabilityat different outputs,and thereforemust either make someform of appro~JmatioDlin cue of reconvergentfanout, or abandonthe network b'avenal method. The most "conservative"approachis takenin the P-OgraJn MIS [8]. There, the observabilitydon't care of a gate in a vertex II is computedby assumingthe completeobservabilityof ill fanout gates. The observability 0 DC :f IS of eachfanout variable lIt of II is dius obtainedfrom Eq. (3) by neglectingthe first term of the sum. MIS computes the observability don't care set of II as

+ ODOr, = ODC.+ j; . = aDO. lJ~

n

:):::: 'Ij

(27)

j~lJ~i

-)

which corresponds(with a different formalism) to Eq. (3.1) in [3]. The casesof oot-reconvergentaM reconvcrgent fanout are U'ea1ed separately.In the caseof not reconvergentfanout, the observability of the gate output v is computed(cfr. Eq. (3.4) in [3]) from thoseof the fanout variables'Ii as n

ODC.,=

II ODC"

(28)

i=1 In the case of reconvergentfanout, since the different componentsof the observability are not kept separate, the ~twork traversal I:.radigm must be abandoned. Muroga proposesan approachbased upon two exahustive simulatioM of the circuit, with the reconvergentgate OUtpltstuck-at0 and stuck-at1, respectively.The observability don', care set for the gate is then computedas the set of pimary input configurationsthat producethe sameoutput in the two simulations. In other words, Eq. (1) is solved by "brute force". In [7] ODC subsetsare com~ted as follows. Variablesare associatedto gate outputs rather than edges. Eq. (3) is used to determine the observability of fanin variablesfor each vertex. In ~sence of reconvergentfaoout

8

lines, the obscrvability don't cart sets associatedto each variable are consideredas estimatesof the true ODC of the vertex. Note that, becauseof the different definition of variables, in {X'esenceof reconvergentfanout the observability of a vcrtcx seemsto depeooon itself. Consider,for example,die circuit of Fig. I, and assumethat the gate in u. does not exist. The method finds two estimatesof the observabilityof u 1 as

ODC~. =

Ul

+ Zl;

ODC::.= Ul + Z4

This apparentdependencyis eliminatedby invoking the RESTRICToperationon the expressions0 DC ~1'0 DC'.:. which drops all the cubescontaining UI or VI. The RESTRICT operationon an exp-essionezoprwith respectto a variable var can be defined as follows:

RESTRICT(ezpr, !lor) ~ ezprlvarezprlnP' In the exampleof Fig. 1.

RESTR1cr(O~

Ut)

= ODC~llaIODC~IIU'i= Zt;

RESTRICT(ODC'.:.,uJ= OVC'..'. lu.ODC'.:.IVj = %4.

(31)

RESTRICT is therefore similar to the cofactor operationof Eqs. (8) am (17). Eq. (17) shows, however,that only part of the cubes(containingeither Ul or 11'1) acbJallyneedsto be dro~. The estimatesobtainedafter the applicationof RESTRICT are finally ANDed. In the aboveexample,0 DC". = %1%4. It baabeen proven in [7] that the final result iI a subsetof the true ODC set. The exactresult ii, in the above example, ODCu. = %1+ %4:2 %1%4.

5

Summary

In tbiI paper we have p-elented . novel algorithm fm' the extractionof exxt and approximateOblervabUity Don't Care sets (ODC sets) in a combimtional multilevel logic network. The proposedalgorithms are efficient because they use local information, i.e. the computationof the ODC fm' a vertex requiresonly the knowledgeof the don', cares at the vertex immediatefanout. Two approacheshave been lX'Oposed.The former computesthe exact ODC sets. The latter computesODC subsetsam can be used when parnal information on the don', cares is available.

6 Acknowledgement This researchwas supportedin part by a fellowship of the Rotary Foundationand by AT &; T am DEc, jointly with NSF, under a PYI award IX'Ogram.We also ackoowledgesupportfrom NSF under contract' MIP 8719546. The belpful discussionswith Frederic Mailhot and Michiel Ugthart are here gratefully acknowledged.

References [1] K. A. Bartlett, R. K. Brayton, G. D. Hachtel, R. M. 1acoby,R. Rudell, A. Sangiovanni-Vmcentelli,and A. Wang, " Multilevel Logic Minimization Using Implicit Don't Cares", IEEE Transactionson CADIlCAS, vol. CAD-7, No. 6, pp. 723-739,1une 1988. [2] O. D. Hachtel am M. R. Lighb1Cr," Top-Down Synthesisof Multilevel Logic Networks" Proc. lCCAD 1987, pp. 316-319,S. Clara, Nov. 1987.

9

[3] S. Muroga, Y.Kambayashi,H.Lai and J.Culliney, "The TransductionMethod - Design of Logic Networks Basedon PermissiblePwx:tions ", IEEE Trans. Comp.,vol. 38, No. 10, pp. 1404-1424,1989. [4] D. Bostick, O. D. Hachtel, R. M. Jacoby,M. R. lightner, P. Moceyunas,C. R. Morrison, and D. Ravenscroft, " The Boulder Optimal Logic Design System",Proc. ICCAD 1987, pp. 62-65, S. Clara, Nov. 1987. [5] R. K. Brayton aOOF. Somenzi, "Boolean Relations aOOthe hx:omplete Specificationof Logic Networks" Proc. VLSl '89, pp. 231-240, Munich, August 1989. [6] H. Fujiwara, Logic Design and Design/or Testability,MIT Press,Cambridge, 1985. [7] G. D. Hachtel. R. M. Jacoby,P. H. Moceyunas," On Computingmi Approximating d1eObservabilityDon't

Care Set ", Proceedingson the International Workshopon Logic Synthesis,ResearchTriangle Park, May 1989. [8] R. Brayton, R. Rudell. A. Sangiovanni-Vincentelli,A. WaDI, "MIS: A Multiple-Level Logic Optimization System", /EEE Transactionson CADI/CAS, YoloCAD-6, No.6, pp. 1062-1081,November 1987.

10

Suggest Documents