Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Don´t Care Minimization of *BMDs: Complexity and Algorithms Christoph Scholl Marc Herbstritt Bernd Becker Institute of Computer Science Albert-Ludwigs-University.

Similar presentations


Presentation on theme: "1 Don´t Care Minimization of *BMDs: Complexity and Algorithms Christoph Scholl Marc Herbstritt Bernd Becker Institute of Computer Science Albert-Ludwigs-University."— Presentation transcript:

1 1 Don´t Care Minimization of *BMDs: Complexity and Algorithms Christoph Scholl Marc Herbstritt Bernd Becker Institute of Computer Science Albert-Ludwigs-University 79110 Freiburg im Breisgau, Germany

2 2 Introduction: Verification based on Decision Diagrams Verification is an important task during the design of Integrated Circuits. To verify combinational circuits: –Transform specification and implementation into canonical representations –Check for equivalence becomes check for equality. Examples for canonical representations: –Binary Decision Diagrams (BDDs) –Binary Moment Diagrams (BMDs) –Multiplicative Binary Moment Diagrams (*BMDs) –...

3 3 BDDs: –directed acyclic graphs to represent Boolean functions –Succesful for verification of adders, control logic,... *BMDs –directed acyclic graphs to represent integer valued functions –Successful for verification of arithmetic circuits like multipliers Introduction: BDDs and *BMDs

4 4 When y is a don´t care, then we are allowed to change the function value g(y) in order to minimize the *BMD for g to reduce memory consumption. Don´t cares are represented by characteristic function dc: dc(y)=1  y cannot be applied here y The Boolean function dc(y) is represented by a BDD. The integer-valued function g(y) for the circuit below the cut is represented by a *BMD. y Motivation for DC-Minimization: Backward Construction Interpret function values as integers, e.g. Don´t cares at this cut are input combinations, which cannot be applied here. (Can be specified or computed by image computations.)

5 5 Problem Formulation Given: *BMD B representing BDD DC representing Find: *BMD B *, such that and B * has minimal number of nodes among all *BMDs fulfilling the same property.

6 6 Decision Diagrams: BMDs, *BMDs (1) Representation for integer-valued functions Iterative positive Davio decomposition: Representation as a directed, acyclic graph: v low(v)high(v)

7 7 Decision Diagrams: BMDs, *BMDs (2) Reduction rules: –eliminate identical subgraphs –eliminate v iff high(v) = 0 *BMDs: More compact than BMDs due to additional reduction rules: –extract multiplicative constants of subfunctions into edge weights v low(v)high(v)

8 8 BMDs and Polynomials Relationship between BMDs and polynomials over X Example: The size of BMD representing f is always less or equal to the size of the polynomial for f.

9 9 Difficulties - Non-locality +k-k+k DC assignment for Decision Diagrams with Davio Decomposition: –Changing the function value for one input vector (don´t care) has not only local effect:

10 10 Method min_polynomial (1) Idea: –Polynomial is lower bound on BMD (and *BMD) size. –Minimize size of polynomial for BMD/*BMD to get a small BMD/*BMD –Use don´cares to change coefficients, such that the number of 0-coefficients is maximized.

11 11 Method min_polynomial (2) dc(0,0)=1 +1 dc(1,1)=1 -7 don´t cares: (0,0),(1,1) Apply reduction rule!

12 12 Method independent_dfs Idea: Perform depth-first traversal of BMD At each node v: –Use don´t cares to assign high(v) to 0  Apply reduction rule to remove v.

13 13 Experimental Results Overview of several Benchmarks (40% don´t cares) –Node reductions by 75% (min_polynomial), 79% (independent_dfs)

14 14 Conclusions / Future Work We presented two methods do minimize *BMD / BMDs using Don´t Cares. Experimental results proved them to be very effective in reducing the size of *BMDs. Modification of independent_dfs to independent_bfs Application of Don´t Care based minimization methods for verification of divider circuits.


Download ppt "1 Don´t Care Minimization of *BMDs: Complexity and Algorithms Christoph Scholl Marc Herbstritt Bernd Becker Institute of Computer Science Albert-Ludwigs-University."

Similar presentations


Ads by Google