12
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 8, AUGUST2003 1005 Three-Level Logic Minimization Based on Function Regularities Anna Bernasconi, Valentina Ciriani, Student Member, IEEE, Fabrizio Luccio, Fellow, IEEE, and Linda Pagli Abstract—We exploit the “regularity” of Boolean functions with the purpose of decreasing the time for constructing minimal three- level expressions, in the sum of pseudoproducts (SPP) form re- cently developed. The regularity of a Boolean function of vari- ables can be expressed by an autosymmetry degree (with ). means no regularity, that is we are not able to provide any advantage over standard synthesis. For the function is said to be autosymmetric, and a new function depending on variables only, called the restriction of , is identified in time polynomial in the number of points of . The relation between and is discussed in depth to show how a minimal SPP form for can be build in linear time from a minimal SPP form for . The concept of autosymmetry is then extended to functions with don’t care conditions, and the SPP minimization technique is duly extended to such functions. A large set of experimental results is presented, showing that 61% of the outputs for the functions in the classical ESPRESSO benchmark suite are autosymmetric. The min- imization time for such functions is critically reduced, and cases otherwise intractable are solved. The quality of the corresponding circuits, measured with some well established cost functions, is also improved. Finally, we discuss the role and meaning of autosym- metric functions, and why a great amount of functions of practical interest fall in this class. Index Terms—Circuit optimization, circuit synthesis, logic design. I. INTRODUCTION T HE DESIGN flow of logic circuits always includes a phase of Boolean function synthesis. In this phase, reduced, and possibly minimal, algebraic forms are determined for the functions, in order to reduce the final size of the corresponding circuits. The standard synthesis is performed with sum of products (SOP) minimization procedures, leading to two level circuits. More-than-two level minimization is much harder, but the size of the circuits can significantly decrease. In many cases three- level logic is a good tradeoff among circuit speed, circuit size, and the time needed for the minimization procedure. In any case algorithms for exact minimization have exponential complexity, hence the time to attain minimal forms becomes huge for in- creasing size of the input. Two level minimization is well developed, see any of the clas- sical references, e.g., [16], or the more recent [26], [6], [21]. Techniques for three level minimization have generally been Manuscript received June 14, 2002; revised October 7, 2003. This paper was presented in part at the ACM-IEEE 39th DAC (2002) under the title “Fast Three- Level Logic Minimization Based on Autosymmetry.” This paper was recom- mended by Guest Editor D. T. Blaauw. The authors are with Dipartimento di Informatica, Università di Pisa, 56127 Pisa, Italy (e-mail: [email protected]; [email protected]; [email protected]; [email protected]). Digital Object Identifier 10.1109/TCAD.2003.814950 given for specific algebraic expressions. A relevant three-level minimization algorithm was given in [20] for networks of the form where and are SOP forms and denotes a binary operation. The case of AND (called AND-OR-AND) is described in [11]. The case of EXOR (called EX-SOP) has been widely studied (see for details [24], [22], [12], [7]–[9], [13]). For example, is an EX-SOP form. Indeed many practical functions (e.g., arithmetic functions) have a more concise expression if we allow the use of EXORs other than classical AND and OR gates. Another well known advantage of EXOR gates is their excellent testability. An EX-SOP three-level network is one of the simplest EXOR of sum of product architecture, since it contains only a single two-input EXOR gate. An algorithm for exact minimization of EX-SOP networks is described in [7], limited to functions with up to five variables. Some interesting heuristics are described in [9], [13]. An estimation metric which measures whether an input function is suitable for EX-SOP minimization is also de- veloped in [13]. A different three-level form called sum of pseudoproducts (or SPP) was introduced in [19]. SPP expressions can be seen as a direct generalization of SOP expressions using EXOR gates. An SPP form consists of the OR of pseudoproducts, where a pseudoproduct is the AND of EXOR factors. For example, is an SPP form. Experimental results show that the average size of SPP forms is approximately half the size of the corresponding SOP, and SPP forms are also smaller than EX-SOP [3]. As a limit case each EXOR factor reduces to a single literal in SPP, and the SOP and SPP forms coincide. In this work, we focus to SPP minimization. Initially this can be seen as a generalization of SOP minimization, and in fact an extension of the Quine-McCluskey algorithm was given in [19] for SPP. In particular the pseudoproducts to be considered can be limited to the subclass of prime pseudoproducts, that play the same role of prime implicants in SOP. The algorithm for SPP, however, was more cumbersome than the former, thus failing in practice in minimizing very large functions. A deeper understanding of the problem, together with the use of ad-hoc data structures, has allowed to widely extend the set of functions practically tractable [3]. Still a number of standard benchmark functions can be hardly handled with this technique. The aim of this paper is to exploit the “regularity” of any given Boolean function, in order to decrease the time needed for its logical synthesis. Function regularities have been exploited in different contests [2], [17], [18]. Our main results are: 1) the regularity of a Boolean function of variables can be expressed by an autosymmetry degree (with ), which is computed in time polynomial in 0278-0070/03$17.00 © 2003 IEEE Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Three-level logic minimization based on function

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Three-level logic minimization based on function

IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 8, AUGUST 2003 1005

Three-Level Logic Minimization Based onFunction Regularities

Anna Bernasconi, Valentina Ciriani, Student Member, IEEE, Fabrizio Luccio, Fellow, IEEE, and Linda Pagli

Abstract—We exploit the “regularity” of Boolean functions withthe purpose of decreasing the time for constructing minimal three-level expressions, in the sum of pseudoproducts (SPP) form re-cently developed. The regularity of a Boolean function of vari-ables can be expressed by anautosymmetry degree(with 0

). = 0 means no regularity, that is we are not able to provideany advantage over standard synthesis. For 1 the function

is said to beautosymmetric, and a new function dependingon variables only, called therestriction of , is identified intime polynomial in the number of points of . The relation between

and is discussed in depth to show how a minimal SPP formfor can be build in linear time from a minimal SPP form for .The concept of autosymmetry is then extended to functions withdon’t care conditions, and the SPP minimization technique is dulyextended to such functions. A large set of experimental results ispresented, showing that 61% of the outputs for the functions in theclassical ESPRESSObenchmark suite are autosymmetric. The min-imization time for such functions is critically reduced, and casesotherwise intractable are solved. The quality of the correspondingcircuits, measured with some well established cost functions, is alsoimproved. Finally, we discuss the role and meaning of autosym-metric functions, and why a great amount of functions of practicalinterest fall in this class.

Index Terms—Circuit optimization, circuit synthesis, logicdesign.

I. INTRODUCTION

T HE DESIGN flow of logic circuits always includesa phase of Boolean function synthesis. In this phase,

reduced, and possibly minimal, algebraic forms are determinedfor the functions, in order to reduce the final size of thecorresponding circuits.

The standard synthesis is performed with sum of products(SOP) minimization procedures, leading to two level circuits.More-than-two level minimization is much harder, but the sizeof the circuits can significantly decrease. In many cases three-level logic is a good tradeoff among circuit speed, circuit size,and the time needed for the minimization procedure. In any casealgorithms for exact minimization have exponential complexity,hence the time to attain minimal forms becomes huge for in-creasing size of the input.

Two level minimization is well developed, see any of the clas-sical references, e.g., [16], or the more recent [26], [6], [21].Techniques for three level minimization have generally been

Manuscript received June 14, 2002; revised October 7, 2003. This paper waspresented in part at the ACM-IEEE 39th DAC (2002) under the title “Fast Three-Level Logic Minimization Based on Autosymmetry.” This paper was recom-mended by Guest Editor D. T. Blaauw.

The authors are with Dipartimento di Informatica, Università di Pisa, 56127Pisa, Italy (e-mail: [email protected]; [email protected]; [email protected];[email protected]).

Digital Object Identifier 10.1109/TCAD.2003.814950

given for specific algebraic expressions. A relevant three-levelminimization algorithm was given in [20] for networks of theform where and are SOP forms anddenotesa binary operation. The case of AND (calledAND-OR-AND)is described in [11]. The case of EXOR (calledEX-SOP)has been widely studied (see for details [24], [22], [12], [7]–[9],[13]). For example, is anEX-SOP form. Indeed many practical functions (e.g., arithmeticfunctions) have a more concise expression if we allow the useof EXORs other than classicalAND andOR gates. Another wellknown advantage of EXOR gates is their excellent testability.An EX-SOP three-level network is one of the simplest EXORof sum of product architecture, since it contains only a singletwo-input EXOR gate. An algorithm for exact minimization ofEX-SOP networks is described in [7], limited to functions withup to five variables. Some interesting heuristics are describedin [9], [13]. An estimation metric which measures whether aninput function is suitable for EX-SOP minimization is also de-veloped in [13].

A different three-level form called sum of pseudoproducts (orSPP) was introduced in [19]. SPP expressions can be seen asa direct generalization of SOP expressions using EXOR gates.An SPP form consists of theOR of pseudoproducts, where apseudoproduct is theAND of EXOR factors. For example,

is an SPP form.Experimental results show that the average size of SPP forms isapproximately half the size of the corresponding SOP, and SPPforms are also smaller than EX-SOP [3]. As a limit case eachEXOR factor reduces to a single literal in SPP, and the SOP andSPP forms coincide.

In this work, we focus to SPP minimization. Initially this canbe seen as a generalization of SOP minimization, and in factan extension of the Quine-McCluskey algorithm was given in[19] for SPP. In particular the pseudoproducts to be consideredcan be limited to the subclass ofprime pseudoproducts, thatplay the same role of prime implicants in SOP. The algorithmfor SPP, however, was more cumbersome than the former, thusfailing in practice in minimizing very large functions. A deeperunderstanding of the problem, together with the use of ad-hocdata structures, has allowed to widely extend the set of functionspractically tractable [3]. Still a number of standard benchmarkfunctions can be hardly handled with this technique.

The aim of this paper is to exploit the “regularity” of any givenBoolean function, in order to decrease the time needed for itslogical synthesis. Function regularities have been exploited indifferent contests [2], [17], [18].

Our main results are: 1) the regularity of a Boolean functionof variables can be expressed by anautosymmetry degree(with ), which is computed in time polynomial in

0278-0070/03$17.00 © 2003 IEEE

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 2: Three-level logic minimization based on function

1006 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 8, AUGUST 2003

Fig. 1. SPP synthesis of an autosymmetric functionf through the SPPsynthesis of its restrictionf .

the number of points of ; 2) means no regularity, thatis we are not able to provide any advantage over standard syn-thesis; for the function is said to beautosymmetric,and a new function , called therestrictionof , is identifiedin polynomial time. In a sense is “equivalent” to, but smallerthan , and depends on variables only. The relation be-tween and is discussed in depth, to show how a minimalSPP form for can be build in linear time from a minimal SPPform for ; 3) the concept of autosymmetry is extended to func-tions with don’t care conditions, and SPP minimization tech-nique is duly extended to such functions; 4) a large set of exper-imental results is presented, showing that 61% of the outputs forthe functions in the classical ESPRESSObenchmark suite are au-tosymmetric: the SPP minimization time for them is criticallyreduced, and cases otherwise intractable are solved. Indeed, al-though autosymmetric functions form a subset of all possibleBoolean functions, a great amount of standard functions of prac-tical interest fall in this class. In the last section, we speculate onthe possible causes of this fact to substantiate the interest of ourwork. Note that an autosymmetric functiondepends in generalon all the input variables, however we shall be able to study

in a dimensional space; i.e.,is in general non degen-erated, whereas all degenerated functions are autosymmetric.

In Section II, we show with an example, the main idea of ourminimization method. In Section III, we recall the basic defi-nitions and results of SPP theory, and present a companion al-gebraic formulation later exploited for testing autosymmetry. InSection IV, we discuss the properties of autosymmetric func-tions, and how the problem of determining their minimal SPPforms can be studied on a reduced number of variables. In Sec-tion V, we show how autosymmetry can be tested in polyno-mial time, and derive a new minimization algorithm that in-cludes such a test in the initial phase. In Section VI, we ex-tend the notion of autosymmetry to functions with don’t care set,showing the theoretical and practical consequences of such anextension. In Section VII, we present a large set of experimentalresults which validate the proposed approach, also proving thatthe number of benchmarks practically tractable is significantlyincreased. A discussion on the role of autosymmetry, and whyit deserves great attention, is finally developed in Section VIII.

II. EXAMPLE

Fig. 1 shows the minimization strategy for an autosymmetricfunction . First we detect, in time polynomial in the numberof points of , the autosymmetry degree(as explained in Sec-tion IV), and if we derive its restriction and linearsubstitutions (Section IV-B). Second, we minimize in SPPframework; this task usually requires time exponential in the

Fig. 2. A 2-autosymmetric functionf , in a Karnaugh map (on the left) offour variables. The corresponding reduced functionf , which depends on thevariablesx andx , and the linear substitutions are on the right.

number of variables of . Finally, we derive the minimal SPPnetwork for from the one of and the linear substitutions, asexplain in Section V. This final task can be performed in lineartime.

To better explain our minimization method, let us apply it tothe function of Fig. 2. A minimal SOP form for is

, while its minimal SPPform is . First, we can observe that the min-imal SPP form is much more compact than the SOP expression.However, SPP synthesis is more expensive, than the SOP mini-mization, in computational time. To overcome this problem, wecan exploit the regularities, if any, of the function. Consider theKarnaugh map on the left side of Fig. 2. The four subspaces ofthe points within the dotted lines present a sort of symmetry:they are rotations of the Karnaugh map on the right side, whichrepresent the function called.

Starting from the two input variables function, we couldderive many four input variables functions by combinations ofdifferent rotations of . We, thus, need an additional informa-tion to reconstruct the starting function. This information isprovided by the linear substitutions given in Fig. 2.

The function could then be studied through the smallerfunction . Given an SPP minimal form for and the linearsubstitutions, we can finally generate a minimal SPP form for.

Following our example, a minimal SPP form foris .The substitutions , give a minimalSPP form for : . Obviously, the minimizationtime for is much smaller. Fortunately, as we shall show in thispaper, deriving and the linear substitutions is an easy task.

III. U NDERLYING THEORY

SPP theory was posed in [19] and extended in [3]. We re-port here some basic definitions and properties together withnew results needed to developing the theory of autosymmetry.We work in a Boolean space described by variables

, where each point is represented as a binaryvector of bits. A set of points can be arranged in amatrix whose rows correspond to the points and whose columnscorrespond to the variables. Fig. 3 represents a set of eight pointsin a space of six variables. A Boolean function

can be specified with an algebraic expression where thevariables are connected through Boolean operators, or as theset of points for which . denotes the number of suchpoints.

Let be a (Boolean) vector; be the element-wise comple-mentation of ; and denote or . Theconstantvectors0 and1 are made up of all 0s or all 1s, respectively. Vectoris the

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 3: Three-level logic minimization based on function

BERNASCONIet al.: THREE-LEVEL LOGIC MINIMIZATION BASED ON FUNCTION REGULARITIES 1007

Fig. 3. A canonical matrix representing a pseudocubeP in f0; 1g . Thecanonical columns arec , c , andc .

concatenation of and . A vector of elements, ,is normal if , or and with (hence )normal. For instance, is normal since with

, which is in turn normal. All the columns in the matrixof Fig. 3 are normal vectors.

A matrix with rows isnormal if all its rows are dif-ferent and all its columns are normal. A normal matrix iscanon-ical if its rows, interpreted as binary numbers, are arranged inincreasing order (the matrix of Fig. 3 is canonical). A normalvector is -canonical, , if it is composed of an al-ternating sequence of groups of 0s and 1s. In Fig. 3, is2-canonical, is 1-canonical, and is 0-canonical. A canon-ical matrix contains columns of increasingindexes, called thecanonical columnsof , such that is thelowest index column that is ( )-canonical for

. The other columns are thenoncanonicalones. Note thatdifferent ( )-canonical columns can coexist in a canon-ical matrix, but only the one of lowest index is called canonical.If represents a set of points in a Boolean space, with column

corresponding to variable , canonical and noncanonicalcolumns correspond tocanonicalandnoncanonical variables,respectively. For example, consider the matrix in Fig. 3. Thecanonical columns are , which is 2-canonical, , which is1-canonical, and , which is 0-canonical. The correspondingcanonical variables are , , and , respectively. Observethat these variables assume all the possible combinations ofvalues. We have

Definition 1 (From [19]): A pseudocube of degree is a setof points whose matrix is canonical up to a row permutation.The matrix of Fig. 3 represents a pseudocube ofpoints in

. The function with value 1 in the points of a pseudocube(i.e., the characteristic function of) is calledpseudoproduct,

and can be expressed as a product of EXOR factors in severaldifferent forms, one of which is called thecanonical expression(briefly CEX) of . For the pseudocube of Fig. 3 we have:

(1)

Refer to [19] for the nontrivial rule for generating . In-tuitively, in Fig. 3 the column is the EXOR between columns

and , therefore, ( ) is true. Analogously, isalways different from the EXOR between columnsand ,therefore, ( ) is true.

We now simply recall that each EXOR factor of the expres-sion contains exactly one noncanonical variable in directed orcomplemented form, namely the one with greatest index (,

, and in the example), and each noncanonical variable ap-

pears in exactly one EXOR factor; all the other variables in theexpression are canonical (, , and in the example) andappear in direct form; and some canonical variables may notappear in the expression. Note that the minimal SOP form forthe above function (1) is

much larger than .A cube in is a special case of pseudocube where

the noncanonical columns are constant. In this case each EXOR

factor in reduces to a single noncanonical variable,the canonical variables do not appear, and the whole expressionreduces to the well knownproductexpression, e.g., used for im-plicants in SOP forms.

A general property of the algebraic representation of pseu-docubes is given in the following theorem.

Theorem 1: In a Boolean space : a) the EXOR factorof any subset of variables (directed or complemented) representsa pseudocube of degree ; b) the product of arbitraryEXOR factors represents either an empty set or a pseudocube ofdegree .

Point a) of the theorem can be easily proved by induction onthe number of variables in the EXOR factor. Point b) then fol-lows from a theorem of [19] which states that the intersectionof two pseudocubes of degrees, is either empty, or is a pseu-docube of degree .

For the example of Fig. 3, the EXOR factors, ,and in (1) represent three pseudocubes ofpointseach, and their product represents the given pseudocubeofpoints. Note now that an equality of the form

satisfied by all the points of a pseudocubecan be equivalently written as a system oflinear equations:

, that is, an instance of a general linearsystem , with , , is a

matrix of coefficients 0, 1, and the sum is substituted withEXOR. In fact, if contains a complemented variable,this variable can be changed to and the new expression for

be put equal to 0 instead of 1. As known [5], [1] theabove system specifies anaffine subspaceof the linear space

.Example 1: The CEX expression

corresponds to the system:

which represents the affine space composed of the points in thematrix of Fig. 3.

From the existence of for any pseudocube , andfrom Theorem 1, we have Corollary 1.

Corollary 1: In a Boolean space there is a one-to-onecorrespondence between affine subspaces and pseudocubes.

This corollary allows to inherit all the properties of affinesubspaces into pseudocube theory. In particular, a pseudocubecontaining the point (vector)0corresponds to alinearsubspace.More details on this result can be found in [4].

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 4: Three-level logic minimization based on function

1008 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 8, AUGUST 2003

The structureof a pseudocube , denoted by , iswithout complementations [3]. For the pseudocube

of Fig. 3, we have: .Let us now extend the symbol to denote the element-wiseEXOR between two vectors. Then is the vector obtainedfrom complementing in it the elements corresponding to the 1sof . For a vector and a subset , let

. For example, ifand , then . We haveTheorem 2.

Theorem 2: For any pseudocube and any vector, the subset is a pseudocube with

.Proof: Given a set , the set is the set of points

obtained complementing in all the points ofthe bits corre-sponding to the 1s of . Furthermore, complementing a bit inall the points of a pseudocube corresponds to substituting aliteral with its complementation in the CEX expression. By def-inition of structure the thesis follows.

Finally, recall that an arbitrary function can be expressed asan OR of pseudoproducts, giving rise to an SPP form [19].For example, adding two rows (points) and

to the matrix of Fig. 3 we have a new functionformed as the union of two partially overlapping pseudocubes:namely (already studied), and associated to the rows, ,

, . Note that is in fact a cube, with .In conclusion can be expressed in SPP form as

The minimal SOP form for contains 40 literals, while the SPPexpression for contains 11 literals. Passingfrom SOP to SPP, however, implies passing from a two-level to athree-level circuit. This fact has always to be taken into accountand will not be further repeated.

IV. A UTOSYMMETRIC FUNCTIONS

A. Definitions and Characterization

The class ofautosymmetric functionsintroduced in [19]seems to be particularly suitable for SPP minimization. Thepresent work addresses these functions, for which we give analternative definition.

Definition 2: A Boolean function in is closedunder , with , if for each ,if and only if .

Example 2: The function is closedunder 011. Indeed , ,

and .Each function is obviously closed under the zero vector0.

Consider now the set of all the vectorssuch that is closedunder . We have:

Proposition 1: The set : is closed under is alinear subspace of .

Proof: We first observe that if a function is closed undertwo different vectors , it is also closed under

. Indeed, if and only if(since is closed under ) if and only if (since is

closed under ). Combining in EXOR, in all possible ways,linearly independent vectors , we form a subspace

of vectors that is closed under, and contains the vector0generated as , see for example, [5]. Therefore, the setis a linear subspace of .

The set is called thelinear spaceof . Note that hasdimension . By Corollary 1, is a pseudocube,and we shall refer to and .

Definition 3: A Boolean function is -autosymmetric, orequivalently hasautosymmetry degree, , if itslinear space has dimension . If , will be simplycalledautosymmetric.

Example 3: The function in Fig. 2 is 2-autosymmetric andits linear space is {0000, 0011, 1001, 1010}. Indeed, isclosed under all the vectors in .

Theorem 3: Let be a -autosymmetric function. Thereexist vectors , with , such that

(2)

and for each, , , .Proof: Let be any vector in . By Definition 2,

. Consider the set , where denotesthe set difference. If , then and isa pseudocube of degreewith . Otherwise, letbe any vector of . Again by Definition 2, .Observe that (by contradiction: let

, then , with; then , that is

which is a contradiction). Therefore, we have:, and using the same

argument on the set the theoremeasily follows.

From the proof above we see that the number of points ofa -autosymmetric function is a multiple of . Indeed, eachaffine subspace contains points. Recalling thatis a pseudocube, and by Theorems 2 and 3 we immediately have:

Corollary 2: A -autosymmetric function is a disjointunion of pseudocubes of degree all havingthe same structure , and the same canonical variablesof .

This corollary has an immediate consequence. For any au-tosymmetric function we can extend the definition of canon-ical and noncanonical variables from pseudocubes to the func-tion itself. Namely, the canonical (respectively: noncanonical)variables of are designated as thecanonical(respectively:noncanonical) variablesof .

Example 4: Consider the linear space of function inFig. 2. We can arrange its vectors in the matrix:

The canonical variables of and are and .An other important consequence of Theorem 3 is the fol-

lowing:

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 5: Three-level logic minimization based on function

BERNASCONIet al.: THREE-LEVEL LOGIC MINIMIZATION BASED ON FUNCTION REGULARITIES 1009

Corollary 3: The vectors , of Theorem 3 can bechosen as the points ofwhere all the canonical variables havevalue 0.

Proof: Note that the points of each pseudocubecontain all the combinations of values of the canonical

variables, hence in exactly one of these points all such valuesare 0. Therefore, in the proof of Theorem 3 we can choose thevectors with all the canonical variables set to 0.

Note that the choice of , in Corollary 3 is not uni-vocal.

Example 5: Consider the function

It can be easily verified that the linear space ofis, where each vector can be ob-

tained as the EXOR of other two.is then 2-autosymmetric. Wehave , where , , and

, , , are the canonical and noncanonical variables, respec-tively. From Corollary 3 we have , ,

, hence:.

From the above properties of autosymmetric functions we ob-serve that: 1) any function is at least 0-autosymmetric, since isclosed under0; 2) a function is ( )-autosymmetric if andonly if it is a pseudocube of degree ; 3) a function is -au-tosymmetric if and only if it is a constant; 4) pseudocubes ofdegree are the only -autosymmetric functions with only oneterm in the union of expression (2). We also have:

Theorem 4: The overall number of autosymmetric functionsis .

Proof: We first count the number of functions that are atleast -autosymmetric, for a given. Recall that a pseudocubeis an affine space, and a-autosymmetric function is a disjointunion of affine spaces over the same linear spaceof dimen-sion (see Theorem 3). There are ways of choosing a-di-mensional linear subspace () of , where denotesthe Gaussian factor:

Once we have fixed the linear subspace, we must choose asubset of different affine spaces over, whose union definesa function that is at least-autosymmetric. The different affinespaces over are in number. Therefore, the overallnumber of functions that are at least-autosymmetric is

. For the Gaussian factor is equal to ( ),and the thesis follows.

B. The Restriction of an Autosymmetric Function

We now show how any -autosymmetric function can bestudied through a simpler function .

Definition 4: For a ( )-autosymmetric function , therestriction consists of the points of contained in thesubspace where all the canonical variables ofhavevalue 0.

Note that depends only on the noncanonical vari-ables of . Once has been computed (see next section), thecanonical variables of are known, and can be immediatelydetermined applying Definition 4. For instance, for the function

with of Example 5, depends on the noncanonicalvariables , , . To build we take the subset {00001,00100, 00 110} of the points of for which the canonical vari-ables , have value 0, and then project these points onto the

subspace relative to , , , where we have; or, equivalently, is

.The importance of the restriction stems from the fact that the

SPP-minimal form of any -autosymmetric function can beeasily derived from the SPP-minimal form of, and finding thelatter is easier because it depends on less variables and containsless points. (In the example abovedepends on five variablesand has 12 points while depends on three variables and hasonly three points). An important result of [19] is extended asfollows.

Lemma 1: A -autosymmetric function and its restrictionhave the same number of pseudoproducts in their minimal

SPP forms.Proof: We show that there is a one-to-one correspondence

between prime pseudoproducts ofand prime pseudoproductsof its restriction . a) Each prime pseudoproduct ofcor-responds to a prime pseudoproduct of. In fact, each pseu-docube associated to a prime pseudoproductof is dividedinto equal pseudocubes lying in the subspaces where thecanonical variables of assume all the possible values. Thepseudocube lying in the subspace where the canonical variablesare set to zero corresponds to a prime pseudoproduct of. In-deed, it is easy to verify by contradiction that the nonprimalityof this pseudoproduct would imply the nonprimality of. b)Each prime pseudoproduct of corresponds to a prime pseudo-product of . In fact, is the projection of onto the subspacewhere all the canonical variables are set to zero, and for eachprime pseudoproduct of , there exists an equivalent pseudo-product in all the other subspaces corresponding to all the otherpossible settings of the canonical variables of. Since all thesepseudoproducts have the same structure, they can be unified toform a prime pseudoproduct of. The thesis follows immedi-ately from this one-to-one correspondence.

Based on Lemma 1, we can prove a stronger property, namelya minimal form for can be easily derived from a minimal formfor . Let be the noncanonical variables of

, and let , where is the EXORfactor containing , (recall that eachnoncanonical variable appears in exactly one EXOR factor, andeach EXOR factor contains exactly one noncanonical variable).We have Theorem 5.

Theorem 5: If is a minimal SPP form for , thenthe form obtained by substituting in eachvariable with the EXOR factor is a minimal SPP formfor .

Proof: By Lemma 1, the number of pseudoproducts inis minimum, then we have only to prove that this form

covers exactly all the points of. When we transform into, we select the vector with all canonical variables set to

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 6: Three-level logic minimization based on function

1010 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 8, AUGUST 2003

zero from each affine subspace . Call the vectorwithout the canonical variables, i.e., its projection onto a

subspace . When we apply the linear substitutions, we force any pseudo-

product that covers in to cover all the points inin , and the thesis immediately follows.

Note that the resulting expression may be reduced using someproperties of EXOR, in particular and .

Example 6: The function in Fig. 2 can be reduced to thefunction . Its linear space has structure ,which implies the substitutions and .A minimal SPP expression of is . By Theorem 5, aminimal SPP expression for is

Another example of minimization of an autosymmetric func-tion will be given in Section V.

C. Relation With Different Notions of Symmetry

A Boolean function is generally called symmetric if is in-variant under any permutation of its variables (see for example[16]). This property is actually unrelated to autosymmetry. Asknown, the total number of symmetric functions is , muchsmaller than the one of autosymmetric functions (see Theorem4); still symmetric functions do not form a subset of the au-tosymmetric ones. In fact, a symmetric function may be au-tosymmetric (e.g., the parity function), but there are symmetricfunctions that are not autosymmetric (e.g., any symmetric func-tion with an odd number of points). The concept of symmetryhas been extensively used for functions classification, and foreasing the minimization process in some cases. However sym-metric functions are not as common as autosymmetric ones inpractical applications, and do not seem to yield as remarkableadvantages as the latter ones in the synthesis process.

Another approach introduced in [18] under the name ofsupport-reducing decompositionis worth mentioning here.On one hand, the underlying concept at the base of sup-port-reducing decomposition can be seen as an extensionof the one of autosymmetry already introduced in [19], be-cause is aimed at specifying a function as

,with . On the other hand the work is directed at selectingthe functions from a predefined library set, so that finding aminimal form for becomes library dependent.

Much more interesting, instead, seem to be the similar-ities between the class of autosymmetric functions and thewell studied class of self–dual functions [25], [10]. A com-pletely specified Boolean function is self–dual if for all

, , where is the function whoseone-set is the off-set of and . For example,the function is self–dual, be-cause , ,

, and . The relationbetween autosymmetric and self–dual functions is betterunderstood generalizing the latter notion in the following.

Definition 5: A Boolean function in is dual-closedunder , with , if for each ,if and only if .

Note that a self–dual function is dual-closed under the vector1. As the set is a linear subspace of (Proposition 1),we have a similar property for self–dual functions in Proposition2.

Proposition 2: The set : is dual-closed underis anaffine subspaceof .

Proof: We will show that is closed under the EXOR ofan odd number of its vectors, as this implies thatis an affinesubspace of by a classical linear algebra result. In fact,suppose that is dual closed under, and . Then we have:

, andthe thesis follows.

Definition 6: A Boolean function is -self–dual,, if its affine space has dimension .Observe that a -self–dual function has exactly points

in its one-set.Example 7: The function is

2-self–dual and its affine space is .For instance, , ,

, and .The most relevant relation between-autosymmetric func-

tions and -self–dual functions is given in the following.Theorem 6: If is -self–dual, then is -autosymmetric.

Proof: Let . We show that is closed under allvectors in . Indeed, for all and for all

, we have: . Sinceis an affine space and , the set is a linear

space. Therefore, , and the dimensions of andare equal to .

Finally, note that the concept of self–duality has never beenapplied to express functions in reduced algebraic forms.

V. MINIMIZATION ALGORITHM

In the previous section, we have shown that each Booleanfunction is -autosymmetric, for . For minimizationpurposes we have an increasing advantage for increasing,as minimizing a -autosymmetric function with variables and

points reduces to minimizing a different function withvariables and points. Even for we have to cover onlyone half of the original points.

Fortunately, for a given function , finding the associatedlinear space and computing the autosymmetry degreeisan easy task, because the required algorithm is polynomial inthe number of variables and in the number of points of.

We now give some intuition behind the computation of.By Definition 2, a function is closed under if for anythere exists such that . Thus, for all , thereexists a vector such that we can expressas .In other words, must be searched within the vectors of the set

. More precisely, we have Theorem 7.Theorem 7: Let be a Boolean function. Then

.Proof: Let . Then

, , .

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 7: Three-level logic minimization based on function

BERNASCONIet al.: THREE-LEVEL LOGIC MINIMIZATION BASED ON FUNCTION REGULARITIES 1011

Based on Theorem 7, we state Algorithm 1.

Algorithm 1: Construction of (buildand find the autosymmetry degree of agiven function )1) for all build the set ;2) build the set ;3) compute .

The time complexity of Algorithm 1 is , because wemust build a set for all , and the construction of eachsuch a set requires time.

Any SPP minimization algorithm can be easily extended forexploiting autosymmetry. For a given functionwe first com-pute and with Algorithm 1. If (i.e., is not au-tosymmetric) we proceed with regular minimization, otherwisewe compute the restriction of , minimize it, and finally de-rive a minimal form from . We propose thefollowing (for autosymmetry) minimization algorithm.

Algorithm 2: A-Minimization (build aminimum SPP form of a given function )1) build and compute the value of by

Algorithm 1;2) if then

a) minimize with any SPP synthesisalgorithm

3) elsea) determine the canonical variables

of and compute the restric-tion as indicated inSection IV;

b) compute ;c) compute the minimal form

for with any SPP synthesisalgorithm;

d) build SPP( ) by substituting ineach noncanonical vari-

able with the EXOR factorof .

By the theory developed in the previous section, Algorithm 2is correct. Note that the algorithm builds an SPP form minimalwith respect to the number of pseudoproducts. To obtain theminimal SPP form with respect to the number of literals we mustslightly rearrange steps3(c) and 3(d), executing the substitu-tions of all for in the prime pseudoproducts of, beforeselecting such pseudoproducts in the set covering problem im-plicit in the minimization algorithm.

Example 8: Minimization of the function of Example 5,using Algorithm 2.

• Derive and by Algorithm 1. For this purpose, for allcompute the set . For example, for the point

00 100 we obtain the set:

Fig. 4. In the Karnaugh map on the left, each point ofO [D is representedwith a letter. Points in the same affine space are represented by the same letter.The central and the right maps representf and its restrictionf , respectively.

The intersection of all the sets gives the linear space. We then have

.• Since we proceed with theelsebranch of Algo-

rithm 2. has noncanonical variables, , , henceis restricted to these variables and we have:

.• The minimization problem now consists of finding a min-

imal SPP cover of the points of . Applying the algo-rithm of [3] we have the minimal form

.• Compute: .• Derive the minimal SPP form for by substituting ,

and in with the EXOR factors of ,respectively ( ), and ( ). We obtain

,with some immediate algebraic simplifications, e.g., in thefirst term of we have:

. In the last term of wehave:

VI. I NCOMPLETELY SPECIFIEDAUTOSYMMETRIC FUNCTIONS

Let us now discuss how to extend the notion of autosym-metry to functions with don’t care points (denoted by). Foran incompletely specified Boolean function

, the sets of points on which takes value 0, or 1, or, are respectively called thezero-set , theone-set , and

thedon’t-care-set .Definition 7: An incompletely specified function is -au-

tosymmetricif the completely specified function withis -autosymmetric.

The restriction of an incompletely specified autosym-metric function is in general incompletely specified. Fordefining the one-set and don’t-care-set of, let us first discussan example.

Example 9: Consider the function represented in the cen-tral map of Fig. 4. The map on the left shows the points of

marked with letters, with the points in the same affinespace marked with the same letter. Ifcontains an affine space

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 8: Three-level logic minimization based on function

1012 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 8, AUGUST 2003

TABLE IDISTRIBUTION OFk-AUTOSYMMETRIC FUNCTIONS IN THE ESPRESSOBENCHMARK SUITE.#funct IS THE TOTAL NUMBER OF FUNCTIONS (SINGLE OUTPUTS)

FORANY VALUE OF k, AND %funct IS THECORRESPONDINGPERCENTAGE. THE NEXT THREEROWSREPORT THENUMBER OFk-AUTOSYMMETRIC FUNCTIONS:1) SYNTHESIZED WITH THE NEW ALGORITHM A AND WITH THE PREVIOUSBEST ALGORITHM C (#AC); 2) SYNTHESIZED WITH A ONLY (#A), SINCE C DID

NOT TERMINATE; 3) NOT SYNTHESIZED AT ALL SINCE BOTH ALGORITHMS DID NOT TERMINATE (# ).T AND T ARE THEAVERAGE CPU TIMES T , T IN

SECONDS, REQUIRED BY THE TWO ALGORITHMS ON THESAME FUNCTION ON A PENTIUM III 450 MACHINE.T =T IS THEAVERAGE OF THERATIO T =T ,FOR THE546 FUNCTIONS OFROW#AC (k = 0 TO 8).k=n IS THEAVERAGE OF THERATIO k=n, WHEREn IS THENUMBER OFINPUT VARIABLES

whose points belong to (e.g., the points markedB), the cor-responding point of belongs to . If all the points of anaffine space belong to (e.g., the points marked A), the cor-responding point of belongs to . For an affine space com-posed of points from both and (e.g., the points markedC), the corresponding point of must be in , since thepoints in its affine space that are in must be covered inthe final solution. Therefore, in Fig. 4 the affine space corre-sponding to C maps to an element of .

Formally, let denote the set of points in projectedonto the subspace where all the canonical variablesof have value 0. We pose the following definition.

Definition 8: For a ( )-autosymmetric incompletelyspecified function , therestriction is the incompletely spec-ified function such that: a) is the set of points forwhich the affine space associated toin is contained inand b) .

We can now generalize Theorem 5 to incompletely specifiedautosymmetric functions.

Theorem 8: Let and be as in Definition 8. Ifis a minimal SPP form for , the form obtained from

by substituting each variable with the EXORfactor is a minimal SPP form for .

Proof: For any vector we denote byits projection in the space where all the canonicalvariables of are set to 0. Let and . Bycontradiction, suppose thatis not covered by any minimal SPPform for . Of course any minimal SPP form for covers .By Definition 8 we know that there exists at least a pointin theaffine space containing (i.e., ) such that .Let be a pseudocube coveringin a minimal SPP form for .We can replace, in such form, with a pseudoproduct coveringnot only but all (i.e., the affine space containing both

and ). We have obtained a minimal SPP form forcovering, thereby contradicting the initial hypothesis.Although the given generalization of autosymmetry to func-

tions with don’t cares may appear quite restrictive, our exper-imental results show that more than 40% of the outputs forthe incompletely specified functions in the classical ESPRESSO

benchmark suite are autosymmetric (see next section). Indeed,Definition 7 is just a possible one, as it takesall the don’t cares

of as points of the function to be actually synthesized. Thischoice guarantees the minimality of the SPP form for, givena minimal SPP form for (Theorem 8).

VII. EXPERIMENTAL RESULTS

The new minimization Algorithm 2, also called AlgorithmA(for autosymmetry), has been tested on a large set of functionstaken from the ESPRESSObenchmark suite [27]. The differentoutputs for each function have been synthesized separately. Theperformance of AlgorithmAhas been compared with the perfor-mance of the best previous algorithm, that is the one proposed in[3], in the following indicated as AlgorithmC (after Ciriani). Infact, the minimization of function in Algorithm A [step 3(c)]has been implemented with AlgorithmC. The input of both al-gorithms is the on-set and don’t care-set of the functions.

For all the functions considered we have computed the valuesof the autosymmetry degreewith Algorithm 1, obtaining theresults shown in the first two rows of Table I for completelyspecified functions, and in Table II for functions with don’tcares. Surprisingly the overall percentage of autosymmetriccompletely specified functions ( ) is over the 61%(Table I); while more than 40% of the functions with don’tcare set are autosymmetric according to Definition 7 (Table II).We have then attempted to run AlgorithmsA andC for all thecompletely specified functions of our test set, recording theCPU times whenever the computation terminated in less than172 800 seconds (2 days) on a Pentium III 450 machine. Resultson program termination are given in rows , of Table I.

We have found out that the autosymmetry property drasti-cally reduces the minimization time, as reported in rowof Table I that shows the average reduction of computing timeusing AlgorithmA (time ) instead ofC (time ), for all thebenchmark functions for which both algorithms terminated (i.e.,for the 546 functions of row ). Note how the improve-ment introduced by the new algorithm drastically increases forincreasing . For , instead, we have ,and actually the ratio is slightly greater than 1 for eachsuch a function. This is because AlgorithmA computes inany case, then calls AlgorithmC. The resulting slowdown ishowever always negligible because is computed in polyno-mial time by Algorithm 1 (see Section V), while AlgorithmC is

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 9: Three-level logic minimization based on function

BERNASCONIet al.: THREE-LEVEL LOGIC MINIMIZATION BASED ON FUNCTION REGULARITIES 1013

TABLE IIDISTRIBUTION OFk-AUTOSYMMETRIC FUNCTIONS WITH A DON’T CARE SET, IN THE ESPRESSOBENCHMARK SUITE. #funct IS THE TOTAL NUMBER OF

FUNCTIONS (SINGLE OUTPUTS) FOR ANY VALUE OF k, AND #funct IS THE CORRESPONDINGPERCENTAGE

TABLE IIIDETAILED RESULTS FOR ASUBSET OFAUTOSYMMETRIC FUNCTIONS. COLUMNS jf j, n, k AND k=n REPORT THENUMBER OFPOINTS OF THEFUNCTION, AND THE

VALUES OFn, k, AND k=n, RESPECTIVELY. COLUMNST AND T REPORTCPU TIMES AS IN TABLE I (A STAR INDICATES NON TERMINATION AFTER172 800SECONDS). THE LAST COLUMN REPORTS THERATIO T =T . THE RESULTSARE RELATIVE TO SINGLE OUTPUTS. #L AND #PP REPORT THENUMBERS OF

LITERALS, AND OF PRIME PSEUDOPRODUCTS, IN THE MINIMAL EXPRESSION

TABLE IVDETAILED RESULTS FOR ASUBSET OFBENCHMARK CIRCUITS. COLUMNS n, #O,Avg(k) AND Avg(k)=n REPORT THENUMBER OF INPUT VARIABLES, THE

NUMBER OF OUTPUTS, THE AVERAGE AUTOSYMMETRY DEGREE OF THESINGLE OUTPUTS, AND ITS RATIO WITH n, RESPECTIVELY. COLUMNST ,T , AND

T =T , REPORTTOTAL CPU TIMES IN SECONDS, AND THEIR RATIO, FOR THECOMPUTATION OF ALL OUTPUTS(FOR *’ S SEE TABLE III )

exponential in nature. For all the functions in the table the formsobtained with AlgorithmsA andC coincide. Table III shows theCPU times for a small subset of the above functions with ,and other relevant minimization parameters for them. Note thatTables I–III show results for single outputs of different bench-mark circuits. Table IV, instead, shows experimental results forwhole benchmark circuits, with reference to all their outputs.

We now compare the cost of the solutions generated with ouralgorithm with the once of two level SOP minimization and ofthe widely studied EX-SOP three-level logic synthesis [7], [12],[13]. To this end, we count the number of literals and gates (AND

and EXOR) of an expression. In the multilevel contest the costfunction is the number of literals in each different gate (see [14],[15]). For example, we represent the multilevel network of ex-pression with the four equations

(each equation corresponds to a gate) and we count the 10 lit-erals on the right hand sides of the equations. The problem isthat, in many technologies, EXOR andOR (or AND) gates havedifferent costs. In [15] the authors consider a 2-input EXORgate as . Thus, the cost in literals of an2-input EXOR gate is 4, while the cost of the 2-inputOR andAND gates is 2. This corresponds also to the number of transis-tors used for the CMOS technology mapping (i.e., 4 transistorsfor AND/OR gates and 8 transistors for the EXOR gate). In gen-eral the associative property of the EXOR operator allows tosee a -input EXOR gate as the composition of , 2-inputEXOR gates. For example, , and

. There-fore, we can use a cost function , where a -input EXOR gatecosts , and a -inputOR/AND gate costs . This functioncorresponds to the CMOS cost described in [14], where the ex-pression of the previous example has cost . In [14], adifferent cost function is also proposed for FPGA [23] realiza-

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 10: Three-level logic minimization based on function

1014 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 8, AUGUST 2003

TABLE VCMOSAND FPGA COSTS FORSOME BENCHMARK FUNCTIONS IN THESPP, SOP,AND EX-SOP SYNTHESIS. � AND � ARE THECMOSAND FPGA COSTS FOR

THE SPP NETWORK, RESPECTIVELY. � IS THE CMOS COST FOR THESOP NETWORK, AND ITS FPGA COST IS� = � . � IS THE CMOS COST FOR THE

EX-SOP NETWORK, AND ITS FPGA CIOST IS� = � � 2.#E IS THE NUMBER OF DIFFERENTEXOR GATES IN THE SPP FORM

tion, where -input EXOR gates and-inputAND/ORgates havethe same cost. We call this cost . The results of comparingSPP, SOP, and EX-SOP expressions with this measures are re-ported in Tables V and VI.

Note that minimization of multiple output circuits has beencarried out individually for each output. Such outputs may notbe function of all input variables (i.e., the corresponding func-tions are degenerated). In our method, such irrelevant variablesare not eliminated beforehand, since they are discovered duringthe evaluation of autosymmetry at no additional cost. Doing this,the degenerated functions are brought into the class of autosym-metric ones. Note that this is not a disadvantage of our approachif compared with others, as none of the minimization methodsin current use detects the irrelevant variables in a preliminaryphase.

VIII. A D ISCUSSION ONAUTOSYMMETRY

To understand the role of autosymmetric functions, we mustcompare them with the set of all possible functions. The totalnumber of Boolean functions of variables is , cor-responding to all the ways a subset of points can be chosen in

. This is a huge number, however, due to the randomnessof the above generating process very many of such functions donot correspond to any significant circuit. Autosymmetric func-tions are just a subset of the above. The autosymmetric functionsare in number (see Theorem 4). Therefore,for increasing , autosymmetric functions constitute a vanishingfraction of all the functions, as goes to zero for goingto infinity. Still the question remains on how many significantfunctions are autosymmetric.

A key observation is that most of the major benchmark func-tions are indeed autosymmetric, as shown in the previous sec-tion. The more so when is small and the values of andare not too distant. The reason, we might argue, is that a func-tion encoding a real life problem must exhibit a regular structurethat can be reflected in some degree of autosymmetry. In fact,also “degenerated” functions that do not depend on all the vari-ables are autosymmetric, although the converse is not true ingeneral. Although some degenerated functions are encounteredin the major benchmarks, this property is not immediately evi-dent and has not been directly used in the standard minimizationprocesses.

TABLE VIMINIMIZATION TIMES (IN SECONDS) FOR SOME BENCHMARK FUNCTIONS IN

THE SPP, SOP,AND EX-SOP FORMS. SPP EXPERIMENTSWEREPERFORMED

ON A SINGLE 450 MHZ CPU WITH 128 MB MEMORY. EXPERIMENTAL TIMES

FOR SOPAND EX-SOP WEREOBTAINED WITH A SUN ULTRA 60 OPERATING

ON TWO 360 MHZ CPUS AND 768 MB MEMORY

Another important observation is that regularity may alsoallow to define an autosymmetric functionindependently onthe number of variables, and then to state a rule for deriving aminimal form for valid for any . Well known functions as,for example, the ones counting the parity ofbits, or givingthe next-state values for an bits Gray code, can be easilyexpressed in minimal form for an arbitrary number of variablesjust because they are autosymmetric (for the parity see [19]; forGray codes elementary considerations suffice).

The relation between autosymmetric functions and functionswhich are simply symmetric might be better investigated (seeSection IV-C). No interesting results seem to emerge from theanalysis conducted as far. We simply note that the total numberof symmetric functions is , but symmetric func-tions do not form a subset of the autosymmetric ones, as alreadyobserved.

The introduction of the restriction for a -autosymmetricfunction leads to consider the nature of Boolean functionsunder a new light. We can state that theinformation contentof is represented by together with the linear transforma-tion (Section IV), so thatthe core of the synthesis problem is the minimization of(Section V). This suggests a formal generalization. For a givenfunction we can define theautosym-metry class as the class of all the autosymmetric functions

, , such that . Since the infor-mation content of any given functioncan be easily found, anda minimal SPP form for can then be derived from ,minimizing the function corresponds to minimize the entireclass . Exploiting the full potential of such an approachis currently a matter of study.

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 11: Three-level logic minimization based on function

BERNASCONIet al.: THREE-LEVEL LOGIC MINIMIZATION BASED ON FUNCTION REGULARITIES 1015

IX. CONCLUSION

In this paper, we have introduced the autosymmetry degreeof a Boolean function of variables. The value of is a

measure of the regularity of. This approach supplies a newtool for efficient minimization. For a new function of

variables has been defined. is called the restriction ofand can be built in polynomial time.The importance of has been demonstrated in connection

with the construction of minimal three-level SPP expressions.In fact, it has been shown how a minimal SPP expression forcan be built in linear time from a minimal SPP expression for

, and how this induces a drastic reduction of the minimizationtime. This advantage increases with the value of, since de-pends on variables only, and has a number of input pointsequal to the number of points of divided by . Our experi-ments have confirmed the foreseen time reduction, and have alsoshown that a great number of functions of practical importanceare indeed autosymmetric, thus validating the overall interest ofour approach.

Our minimization algorithm would probably be greatly im-proved if formulated on BDD’s as its applicability is presentlylimited by the size of the input. This promising approach is cur-rently under investigation, and constitutes a challenging openproblem.

Also some more work is needed in the treatment of don’tcare conditions. In fact our present definition of autosymmetryfor an incompletely specified function is rather restrictive, asit takes all the don’t cares of as points of the function tobe actually synthesized. Another approach would be selectingonly a subsetof don’t cares of as points of the function, inorder to maximize the autosymmetry degree and reduce the sizeof the final circuit. Thus far we have been unable to propose apolynomial time algorithm for such a selection.

ACKNOWLEDGMENT

The authors would like to thank T. Villa and E. Bozzo formany important discussions on the subject of this paper.

REFERENCES

[1] A. Aleksanyan, “Realization of boolean functions by disjunctions ofproducts of linear forms” (in Russian),Dokl. Akad. Nauk SSSR, vol. 304,no. 4, pp. 781–784, 1989. Translation inSoviet Math. Dokl., vol. 39(1),1989.

[2] F. A. Aloul, A. Ramani, I. Markov, and K. Sakallah, “Solving difficultSAT instances in the presence of symmetry,” inACM/IEEE 39th DesignAutomation Conf. (DAC), 2002, pp. 731–736.

[3] V. Ciriani, “Logic minimization using exclusive OR gates,” inACM/IEEE 38th Design Automation Conf. (DAC), 2001, pp. 115–120.

[4] , “A New Approach to Three-Level Logic Synthesis,” Universityof Pisa, Computer Science Dept., Rep. TR-02–03, 2002.

[5] P. Cohn,Algebra. New York: Wiley, 1981, vol. 1.[6] O. Coudert, “Two-level logic minimization: An overview,”INTEGRA-

TION, vol. 17, pp. 97–140, 1994.[7] D. Debnath and T. Sasao, “Minimization of AND-OR-EXOR three-level

networks with AND gate sharing,”IEICE Trans. Inform. and Syst., vol.E80-D(10), pp. 1001–1008, 1997.

[8] , “A heuristic algorithm to design AND-OR-EXOR three-level net-works,” in Asia and South Pacific Design Automation Conf., 1998, pp.69–74.

[9] , “Multiple-valued minimization to optimize PLA’s with outputEXOR gates,” inIEEE Int. Symp. Multiple-Valued Logic, 1999, pp.99–104.

[10] C. Domingo, “Polynomial time algorithms for some self-duality prob-lems,” presented at the CIAC: Italian Conf. on Algorithms and Com-plexity, 1997.

[11] E. Dubrova and P. Ellervee, “A fast algorithm for three-level logic opti-mization,” in Int. Workshop on Logic Synthesis, 1999, pp. 251–254.

[12] E. Dubrova, D. Miller, and J. Muzio, “AOXMIN: A three-level heuristicAND-OR-XOR minimizer for boolean functions,” in3rd Int. Workshopon the Applications of the Reed–Muller Expansion in Circuit Design,1997, pp. 209–218.

[13] , “AOXMIN-MV: A heuristic algorithm for AND-OR-XOR mini-mization,” in4th Int. Workshop on the Applications of the Reed MullerExpansion in Circuit Design, 1999, pp. 37–54.

[14] M. Eggerstedt, N. Hendrich, and K. Von der Heide, “Minimization ofparity-checked fault-secure AND/EXOR networks,” inIFIP WG 10.2Workshop on Applications of the Reed–Muller Expansion in Circuit De-sign, 1993, pp. 142–146.

[15] G. D. Hachtel and F. Somenzi,Logic Synthesis and Verification Algo-rithms. New York: Kluwer Academic, 1996.

[16] Z. Kohavi, Switching and Finite Automata Theory. New York: Mc-Graw Hill, 1970.

[17] V. Kravets and K. Sakallah, “Generalized symmetries of boolean func-tions,” in International Conf. Computer-Aided Design (ICCAD), 2000,pp. 526–532.

[18] , “Constructive library-aware synthesis using symmetries,” inDe-sign, Automation and Test in Europe Conf. and Exhibition (DATE), 2001,pp. 208–213.

[19] F. Luccio and L. Pagli, “On a new boolean function with applications,”IEEE Trans. Comput., vol. 48, pp. 296–310, Mar. 1999.

[20] A. Malik, D. Harrison, and R. Brayton, “Three-level decomposition withapplication to PLD’s,” inIEEE Int. Conf. Computer Design: VLSI inComputer and Processors, ICCD ’91, 1991, pp. 628–633.

[21] P. McGeer, J. Sanghavi, R. Brayton, and A. Sangiovanni-Vincentelli,“ESPRESSO-SIGNATURE: A new exact minimizer for logic functions,”IEEE Trans. VLSI Syst., vol. 1, pp. 432–440, Aug. 1993.

[22] M. Perkowski, “A new representation of strongly unspecified switchingfunctions and its application to multi-level AND/OR/EXOR synthesis,”in IFIP WG 10.5 Workshop on Applications of the Reed–Muller Expan-sion, 1995, pp. 143–151.

[23] J. Rose, A. E. Gamal, and A. Sangiovanni-Vincentelli, “Architecture offield-programmable gate arrays,”Proc. IEEE, vol. 81, pp. 1013–1029,July 1993.

[24] T. Sasao, “A design method for AND-OR-EXOR three level networks,”in Int. Workshop on Logic Synthesis, 1995, pp. 8:11–8:20.

[25] , Switching Theory for Logic Synthesis. New York: Kluwer Aca-demic, 1999.

[26] T. Villa, T. Kam, R. Brayton, and A. Sangiovanni-Vincentelli,Synthesisof Finite State Machines: Logic Optimization. New York: Kluwer Aca-demic, 1997.

[27] S. Yang. (1991) Synthesis on Optimization Benchmarks. User guide,Microelectronic Center of North Carolina. [Online]. Available:ftp://ftp.sunsite.org.uk/computing/general/espresso.tar.Z

Anna Bernasconi received the Laurea degree inphysics from University of Pavia, Italy, in 1992, andthe Ph.D. in computer science from University ofPisa, Italy, in 1998.

She is currently an associated researcher with theDepartment of Informatics of the University of Pisa.Her interests include algorithms and complexity,Boolean function complexity, as well as logicsynthesis and VLSI design.

Valentina Ciriani (S’01) received the Laurea degreein computer sciences from University of Pisa, Italy,in 1998. She is working toward the Ph.D. degree atthe University of Pisa, where she is a recipient ofthe Italian Government Scholarship since November1998.

Her interests include logic synthesis and VLSI de-sign, as well as algorithms and data structures. She isa student member of the ACM.

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.

Page 12: Three-level logic minimization based on function

1016 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 8, AUGUST 2003

Fabrizio Luccio (M’66–SM’78–F’83) received theDr.Ing. degree in electrical engineering from the Po-litecnico di Milano, Italy, in 1962, and the Libera Do-cenza in electronic computers in 1968.

He started his research activity at Olivetti andthe Politecnico di Milano. In 1966, he became StaffMember at M.I.T., Cambridge, MA, on ProjectMAC, then Professor at the University of SouthernCalifornia, Los Angelges, CA, and later at New YorkUniversity, New York, pursuing research in logicalnetwork synthesis. In 1971, he returned to Italy as

Professor of Informatics at the University of Pisa. He spent sabbatical periodsas a Visiting Professor in the U.S., Canada, and Singapore, and was a VisitingScientist at IBM research in the U.S.., and at NTT Laboratories, Japan. Hisinterests are in algorithm design, and in the relationship between computationalmodels and realistic circuits.

Linda Pagli received the Laurea degree in informa-tion sciences from University of Pisa, Italy, in 1973.

She is currently a professor of computer scienceat the University of Pisa. After receiving her degree,she was associated researcher with the Departmentof Informatics of the University of Pisa, startingher research activity in data structures and, then, inVLSI computation. In 1987, she was appointed toProfessor of Computer Science at the University ofSalerno, Italy, returning to Pisa three years later. Shehas been Visiting Professor at Carleton University,

Ottawa, Canada. Her current research interests are in the bases of computationand design and analisys of algorithms. She has pursued intense activities inhigher education in favor of developing countries. In this framework, she hasbeen a Professor at the National University of Somalia for an extensive periodof time.

Authorized licensed use limited to: Baylor University. Downloaded on June 19, 2009 at 11:19 from IEEE Xplore. Restrictions apply.