Presentation is loading. Please wait.

Presentation is loading. Please wait.

Minimization of P-Circuits using Boolean Relations Anna Bernasconi University of Pisa Valentina Ciriani and Gabriella Trucco University of Milano Tiziano.

Similar presentations


Presentation on theme: "Minimization of P-Circuits using Boolean Relations Anna Bernasconi University of Pisa Valentina Ciriani and Gabriella Trucco University of Milano Tiziano."— Presentation transcript:

1 Minimization of P-Circuits using Boolean Relations Anna Bernasconi University of Pisa Valentina Ciriani and Gabriella Trucco University of Milano Tiziano Villa University of Verona

2 OutlineOutline  Scenario: logic synthesis with critical signals  Problem definition  P-circuits  Boolean relations  Synthesis of P-circuits with Boolean relations  Experimental results

3 ScenarioScenario  Logic synthesis  In presence of critical signals that should be moved toward the output  Application objectives:  To decrease power consumption:  signals with high switching activity  To decrease circuit delay:  signals with high delay

4 Problem Restructuring (or synthesis) of a circuit in order to move critical signals near to the output:while  minimizing the circuit area  keeping the number of levels bounded  performing an efficient minimization (using Boolean relations)

5 Simple solution: Shannon  Shannon decomposition  x is the critical signal  f x=0 and f x=1 do not depend on x  x is near to the output x f x=1 f x=0

6 Problem of Shannon approach x 3 x 4 x 1 x 2 00 01 11 10 00 01 11 10 1 1 1 1 0 0 0 1 0 1 0 0 1 0 1 0 x 3 x 4 x 1 = 0 0 1 00 01 11 10 1 1 0 0 0 0 1 0 x 3 x 4 x 1 = 1 0 1 00 01 11 10 1 1 1 0 0 0 1 0 x2x2 x2x2 two cubes It is not synthesis oriented

7 (x,p)-Decomposition(x,p)-Decomposition  let p be a function non depending on x  and do not depend on x x f x=p p

8 Problem of the approach x 3 x 4 x 1 x 2 00 01 11 10 00 01 11 10 1 1 0 0 1 0 0 0 1 * 1 1 0 1 0 1 x 3 x 4 x 1 = x 2 0 1 00 01 11 10 1 0 1 1 1 1 0 1 x 3 x 4 x 1 = x 2 0 1 00 01 11 10 0 0 0 0 0 1 * 1 x2x2 x2x2 It is not area oriented Let x = x 1 and p = x 2

9 The idea  try not to split the cubes  idea: the crossing cubes that do not depend on x are not projected  problem: how to identify the points that may form crossing cubes that do not depend on x? They are in the intersection:

10 ExampleExample x 3 x 4 0 1 00 01 11 10 0 0 0 1 1 1 0 x 3 x 4 0 1 00 01 11 10 1 0 1 1 1 0 0 0 x2x2 x2x2 1 x 3 x 4 0 1 00 01 11 10 0 0 0 1 1 0 0 x2x2 0 Intersection x 1 = 0 x 1 = 1 x 3 x 4 x 1 x 2 00 01 11 10 00 01 11 10 0 0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 We can remove the points of the intersection x = x 1 and p = 0

11 Example x 3 x 4 0 1 00 01 11 10 0 0 0 0 0 1 0 x 3 x 4 0 1 00 01 11 10 1 0 1 0 0 0 0 0 x2x2 x2x2 1 x 3 x 4 0 1 00 01 11 10 0 0 0 1 1 0 0 x2x2 0 Intersection x 1 = 0 x 1 = 1 x 3 x 4 x 1 x 2 00 01 11 10 00 01 11 10 0 * 1 0 0 1 1 1 1 1 0 1 0 0 0 1 We can remove the points of the intersection But some cubes could be split!

12 Example x 3 x 4 0 1 00 01 11 10 0 0 0 * * 1 0 x 3 x 4 0 1 00 01 11 10 1 0 1 * * 0 0 0 x2x2 x2x2 1 x 3 x 4 0 1 00 01 11 10 0 0 0 1 1 0 0 x2x2 0 Intersection x 1 = 0 x 1 = 1 x 3 x 4 x 1 x 2 00 01 11 10 00 01 11 10 0 * 1 0 0 1 1 1 1 1 0 1 0 0 0 1 We insert don’t cares instead at the points of the intersection

13 Example x 3 x 4 0 1 00 01 11 10 0 0 0 * * 1 0 x 3 x 4 0 1 00 01 11 10 1 0 1 * * 0 0 0 x2x2 x2x2 1 x 3 x 4 0 1 00 01 11 10 0 0 0 1 1 0 0 x2x2 0 Intersection x 1 = 0 x 1 = 1 x 3 x 4 x 1 x 2 00 01 11 10 00 01 11 10 0 * 1 0 0 1 1 1 1 1 0 1 0 0 0 1 The cubes are not split

14 Example x 3 x 4 0 1 00 01 11 10 0 0 0 1 0 1 0 x 3 x 4 0 1 00 01 11 10 1 0 1 1 1 0 0 0 x2x2 x2x2 1 x 3 x 4 0 1 00 01 11 10 0 0 0 1 1 0 0 x2x2 0 Intersection x 1 = 0 x 1 = 1 x 3 x 4 x 1 x 2 00 01 11 10 00 01 11 10 0 * 1 0 0 1 1 1 1 1 0 1 0 0 0 1 The cubes are not split

15 Example x 3 x 4 0 1 00 01 11 10 0 0 0 1 0 1 0 x 3 x 4 0 1 00 01 11 10 1 0 1 1 1 0 0 0 x2x2 x2x2 1 x 3 x 4 0 1 00 01 11 10 0 0 0 * 1 0 0 x2x2 0 Intersection x 1 = 0 x 1 = 1 x 3 x 4 x 1 x 2 00 01 11 10 00 01 11 10 0 * 1 0 0 1 1 1 1 1 0 1 0 0 0 1 Before minimizing the intersection, we set as don’t cares the points that are covered in both spaces The cubes are not split

16 P-circuit of a completely specified Boolean function f  Let P-circuit P(f) is:  A P-circuit P(f) is:where

17 P-circuitsP-circuits  The intersection does not depend on x optimal P-circuit P*(f)  An optimal P-circuit P*(f) for the function f is a P-circuit with minimum cost that can be synthesized for f

18 P-circuit of an incompletely specified Boolean function f  Let f = {f on, f dc }, with f on ∩ f dc = ∅ ;  Define P-circuit P(f) is:  A P-circuit P(f) is:where

19 Boolean Relations  A Boolean relation is a one-to-many multi- output Boolean mapping R : {0,1} n ➝ {0,1} m  A point in the input set {0,1} n can be associated with several points in the output set {0,1} m, which cannot always be represented using don’t cares

20 Boolean Relations  The set of multi-output functions compatible with a Boolean relation R is defined as F(R) = { f | f ⊆ R and f is a function}.  The solution of a Boolean relation R is a multi- output Boolean function f ∈ F(R)  The function f is an optimal solution of R according to a given cost function c, if for all f′ ∈ F(R), c(f) ≤ c(f′)

21 Minimization of P-circuits using Boolean Relation  P-circuit minimization:  find the sets f =, f ≠, f I leading to a P-circuit of minimal cost  This problem can be formalized and efficiently solved using Boolean relations  We define a relation R s.t.  F(R) corresponds exactly to the set of all possible P-circuits for f  an optimal solution of R is an optimal P-circuit P ∗ (f) for f

22  f: {0,1} n → {0,1} R f : {0,1} n−1 → {0,1} 3  Input set: space spanned by all the variables but the critical signal x i  Output set: all possible tuples of functions f =, f ≠, f I defining a P-circuit for f Minimization of P-circuits using Boolean Relation

23 P-circuit minimization selecting among all possible functions compatible with R f,each corresponding to a tuple f =, f ≠, f I, the one whose overall SOP representation is minimal Minimization of P-circuits using Boolean Relation

24 Incompletely Specified Functions

25 Experimental results  ESPRESSO benchmark suite  Linux Intel Core i7, 3.40 GHz CPU, 8GB RAM  CUDD library for OBDDs to represent functions  BREL (Bañeres, Cortadella, and Kishinevsky, 2009) for the synthesis of Boolean relations  Multioutput benchmarks have been synthesized minimizing each single output independently from the others

26 Experimental results  μ L and μ BDD :  refer to P-circuits synthesized with cost function μ L that minimizes the number of literals  and μ BDD that minimizes the size of the BDDs used for representing the relations  modeling the P-circuit minimization problem using Boolean relations pays significantly:  P-circuit μ L and P-circuit μ BDD turned out to be more compact than the corresponding P-circuits proposed BCVT2009 in about 92% and 78% of our experiments, respectively

27 Experimental results

28 ConclusionsConclusions  We showed that to explore all possible P-circuit solutions one must cast the problem as the minimization of a Boolean relation  In the experiments we report major improvements with respect to the previously published results  Future work:  investigate the impact of using more general cofactoring functions  address simultaneously multi-ouput functions trading-off quality of results vs. scalability


Download ppt "Minimization of P-Circuits using Boolean Relations Anna Bernasconi University of Pisa Valentina Ciriani and Gabriella Trucco University of Milano Tiziano."

Similar presentations


Ads by Google