Title: New Canonical Form for Fast Boolean Matching in Logic Synthesis and Verification
1New Canonical Form for Fast Boolean Matching in
Logic Synthesis and Verification
- Afshin Abdollahi and Massoud Pedram
- Department of Electrical Engineering
- University of Southern California
- Los Angeles CA
2Introduction
- Boolean Matching
- Functional equivalence under permutation and
complementation of inputs - Applications
- Logic verification
- LUT-based FPGA synthesis
- Technology Mapping
- Clustering
- Boolean Matching
- Covering
3Boolean Matching (Example)
x1
x2
x3
x4
N P
4Equivalence Classes
Boolean functions of n variables
5Prior Work (Canonical Form)
- Burch and Long, 1992
- Canonical form for complementation only
- Semi-Canonical form for complementation and
permutation - Debnath and Sasao and
- Ciric and Sechen
- Canonical form for matching under permutation
only - Hinsberger and Kolla, 1998 and
- Debnath and Sasao, 2004
- Canonical form for functions of up to seven
variables under both complementation and
permutation
T
,
6Signatures
x2
x3
x1
f
00110011
01010101
00001111
10010110
1st - sig
2nd - sig
7Symmetry Classes
8NP Representative of a class
(i)
(ii)
Theorem
(i), (ii) holds for fi
9NP Representative of a class
10CP - Transformation
11CP - Transformation
12Grouping the Symmetry Classes
13Resolving Groups
14Resolving Groups
15Resolving Groups
16Algorithm Summary
Given
Form groups of symmetry classes
Use 2nd signatures to resolve groups
Recursively resolve the remaining groups
Theorem Function F (X ) produced by the above
algorithm is the canonical form of function f (X
).
17Example
f
4
? 2
18Experimental Results
- A library including a large number of cells
- Generated large number of Boolean functions
19Experimental Results
Run-Time (micro-seconds)
Prior work
Debnath and Sasao, 2004
Worst case
Average
Number of Inputs
20Conclusions
- Presented a canonical form for general Boolean
Matching problem under input variable
complementation and permutation - Applicable to Boolean functions with large number
of inputs - Handles simple symmetries efficiently
- Utilizes 1st, 2nd or higher-order signatures
exactly when they are needed - Future work
- Classification of Boolean functions into those
that need - only 1st and 2nd signatures
- Higher-order signatures
- Capture higher-order symmetry relations
21(No Transcript)
22Prior Work
- Hinsberger and Kolla, 1998
- Debnath and Sasao, 2004
T
,