Applications of Binary Decision Diagrams in Logic Synthesis, Verification, and Testing - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Applications of Binary Decision Diagrams in Logic Synthesis, Verification, and Testing

Description:

A Boolean Paradigm in Multi-Valued Logic Synthesis Alan Mishchenko Electrical and Computer Engineering Portland State University Robert K. Brayton – PowerPoint PPT presentation

Number of Views:144
Avg rating:3.0/5.0
Slides: 18
Provided by: Kare4210
Category:

less

Transcript and Presenter's Notes

Title: Applications of Binary Decision Diagrams in Logic Synthesis, Verification, and Testing


1
A Boolean Paradigm in Multi-Valued Logic
Synthesis Alan Mishchenko Electrical and
Computer Engineering Portland State
University Robert K. Brayton Electrical
Engineering and Computer Science University of
California, Berkeley June 5, 2002
2
Overview
  • Motivation
  • Background
  • Optimization Algorithms
  • Node simplification
  • Partial encoding
  • Decomposition
  • Resubstitution
  • Common logic extraction
  • Case study Decomposition and SAT
  • Conclusions

3
Algebraic vs. Boolean Algorithms
  • Most of the currently used logic synthesis
    algorithms are algebraic (do not use Boolean
    identities such as a ? a a and a ? a 0)
  • sub-optimal quality, fast
  • Boolean algorithms are also known but seldom used
  • better quality, slower
  • There is no unified picture of the Boolean
    algorithms for logic synthesis

4
Goals of the Present Work
  • Develop Boolean algorithms working on MV
    relations
  • Explore interdepen-dence and common computational
    core of the Boolean algorithms
  • This study is possible because of the vantage
    point of multi-valued logic optimization

5
Optimization Algorithms
  • Node simplification
  • Partial (value reducing) encoding
  • Decomposition
  • Resubstitution
  • Common logic extraction

6
Node Simplification
  • Compute and use complete flexibility (CF) to
    simplify the node
  • CF in global space R(X, yi) ?Z R(X, yi, Z) ?
    R(X, Z)
  • CF in local space R(Y, yi) ?X M(X, Y) ?
    R(X, yi)
  • Use R(Y, yi) to optimize MV-SOP (heuristic, exact)

7
Partial (Value Reducing) Encoding
  • R2 is a wire, a cube, or a given function
  • Transformation is accepted if
  • ?log2 v2? ?log2 v1? ? ?log2 v?
  • v2 v1? v

8
Decomposition and Encoding
  1. Select bound set XB
  2. Compute the CF of block B1 assuming v1 is the
    product of values in XB (column compatibility is
    not used)
  3. Encode B1 using value-reducing encoding to get B2
  4. Inputs in XC are shared, which leads to
    non-disjoint decomposition

9
Resubstitution
  1. Compute R(Y, y), the complete flexibility of ?
  2. Find node R3(Y3, y3), Y3 ?Y, y3 ? Y
  3. Substitute R3(Y3, y3) into R(Y, y)
    Rs(Ys, y) R(Y, y) ?
    R3(Y3, y3), Ys Y ? y3
  4. Minimize Rs(Ys, y) to get Rr(Yr, y), Yr Ys
  5. Accept transformation if Rr(Yr, y) reduces the
    cost of ?

10
Common Logic Extraction
  1. Get several functionally related nodes
  2. Merge the nodes and derive complete flexibility,
    R?, of the merged node
  3. Look at cofactors appearing at a window of levels
    in the BDD of R?
  4. Find a set of compatible cofactors and express
    them as an MV relation
  5. Try the MV relation as a Boolean divisor of the
    original nodes

11
Case Study Decomposition and SAT
  • Ashenhurst-Curtis decomposition of multi-valued
    relations
  • R(A,B,v) H( G(A,v), B, v )
  • disjoint-support A ? B ?
  • support-reducing log2range(G) ? log2A
  • Multi-valued SAT
  • Multi-valued input, binary output CNF formula
  • Each clause is composed of MV literals
  • An assignment of MV variables satisfies the CNF
    formula, if in each clause, there is at least one
    literal with a value belonging to the assignment

12
SAT Variables
  • n variables ci, 1 ? i ? n, to encode the coloring
    of columns. Value j belongs to the value set of
    variable ci, if the corresponding column, i, can
    be colored with the color j. The range of ci is
    n/2.
  • m variables dij, one for each entry in the table
    that can take more than one value. These
    variables represent subsets of original values
    Sij, which are in agreement with the selected
    decomposition. The range is the range ? of the
    relation.

13
SAT Clauses
  • Containment of the selected values in the
    original values of the cells in the decomposition
    chart
  • dij ?Sij, ?i,j 0 ? i lt n, 0 ? j lt n
  • Coloring is compatible with the selected cell
    values

14
Simplifications of SAT Problem
  • No need to introduce variables dij and ci
  • If a column is incompatible with other columns
  • If two columns can only be compatible with each
    other
  • No need to introduce variable dij
  • If the corresponding cell in the decomposition
    chart has only one value.
  • Using an efficient SAT solver, it may be possible
    to solve the decomposition problem for nodes with
    8-12 input variables

15
Conclusions
  • Boolean paradigm
  • Boolean operations are applied to the MV relation
    representing the complete flexibility of a node
    derived from the network structure
  • An efficient implementation may be possible due
    to common computational cores (BDDs and SAT) and
    recently improved algorithms
  • A more general point of view reveals underlying
    relationships among the procedures

16
Conclusions (continued)
  • A synthesis flow based of these methods may lead
    to the improvements in the optimization quality
    because
  • The use of multi-valued logic leads to searching
    a larger space of solutions.
  • Boolean (not only algebraic) properties of nodes
    are exploited.
  • The complete sets of dont-cares (partial cares)
    give greater flexibility for optimizing the nodes
    of the network.
  • The SAT-based formulation is not limited to one
    particular encoding or coloring.
  • Functional decomposition can be performed
    concurrently with technology mapping (similar to
    Kravets and Sakallah, DAC98).

17
A Boolean Paradigm in Multi-Valued Logic
SynthesisAlan Mishchenko, ECE Dept, Portland
State University Robert K. Brayton, EECS Dept,
UC Berkeley
  • Optimization algorithms considered
  • Node simplification
  • Partial encoding
  • Decomposition
  • Resubstitution
  • Common logic extraction
  • Case study Decomposition and SAT
  • The goal of this work
  • Develop Boolean algorithms working on MV
    relations
  • Explore interdependence and common computational
    core of Boolean algorithms
  • This study is possible because of the vantage
    point of multi-valued logic optimization
Write a Comment
User Comments (0)
About PowerShow.com