Beruflich Dokumente
Kultur Dokumente
Equivalence of Functions
Equivalence of two functions defined under Negation of input variables Permutation of input variables Negation of output
g (X) = f ( (X) ) maps each xi to itself or its complement f = x1 + x2 + x3 and g = x1 + x2 + x3 maps x1 x1 x2 x2 x3 x3 g (X) = f ( (X) )
Ex.
Ex.
Negation of Output
Ex.
f = x1 + x2 and g = x1 x2 g (X) = f (X)
Equivalence of Functions
NPN-equivalent : equivalent under input Negation, input Permutation, output Negation NP-equivalent : equivalent under input Negation, input Permutation P- equivalent : equivalent under input Permutation
Boolean Matching
Technology Mapping matching of complex gates, e.g. ACT2 exploiting implicit dont care Logic Verification input correspondence is not given
Boolean Matching
2n n! 2 mappings
Pruning search space Signature of function Signature of variable Signatures invariant to input permutation / input negation / output negation Signature used as necessary condition for equivalence
Not Matched
Equal? Yes
Not Matched
Signatures of Functions
Unateness Property
Matched functions having the same number of unate variables Speed-up of phase assignment transforming negative unate variables to positive ones by adding inverters all unate variables being positive unate phase assignment required for binate variables only Speed-up of permutation unate variables not being associated to binate variables
Symmetry Property
Symmetry class : a set of variables that are interchangeable without affecting the logic functionality Matched functions having the same symmetry classes Variables in different symmetry sets not being associated
Size of On_set
the number of minterms for which a function f evaluates to 1 (denoted as onsize(f) ) matched functions having the same size of on_set computed on Ordered Binary Decision Diagram
Signature of Variables
Cofactor signature Cofactor statistics and Component signature Single fault propagation weight signature (SFP) and Partner patterns
Cofactor Signature
: 0-branch : 1-branch
xt fxt
A sorted list of onsize (xt xj fxtxj) for all xt in the input set f
xt xj
xt xj fxtxj
( onsize (xt fxt fxt), onsize (xt fxt fxt), onsize (fxt fxt) )
xt
xt
xt
xt
Structural Equivalence
x0 y1
x1
x2 0 1
y2
y0 1 0
(1) Graph isomorphism (2) One to one correspondence of labels of nonterminal nodes of two graphs (3) For all nonterminal nodes, all corresponding branches having the same value or all corresponding branches having complemented value
x1
x2 0 (a) BDDf
y1
y1
y2
y2
y0 1 0
(b) BDDg
(c) BDDg
Structure Equivalence of BDDf of (a) and BDDg of (c) Top-Down transformation Bottom-up transformation