Download presentation
Presentation is loading. Please wait.
Published byMoses Goodwin Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.