(Two-Level) Logic Synthesis: Implicants and Prime Implicants
(Two-Level) Logic Synthesis: Implicants and Prime Implicants
Jan Reineke
Universität des Saarlandes
0111 1111
Implicants:
• all marked nodes,
1101 • all edges whose nodes all are marked,
0101
• all surfaces whose nodes all are marked,
0110
• all 3-dimensional subcubes
1110
whose nodes all are marked.
0100
1100
In general:
0010 Implicants are those subcubes
1010 whose nodes all are marked.
0011 1011
1000
0000
0001 1001
0111 1111
0001 1001
0111 1111
0001 1001
0111 1111
0001 1001
Lemma:
All monomials of a polynomial p of f are implicants of f.
Definition:
A minimal polynomial p of a Boolean function f
is a polynomial of f of minimal cost, i.e., a polynomial of f,
s.t., cost(p) ≤ cost(p') for all (other) polynomials p' of f.
Lemma 2:
If m×x and m×x' are implicants of f, then so is m.
Proof
As m×x and m×x' are implicants of f, by definition of implicants, we
have f ≥ y(m×x) and f ≥ y(m×x').
Thus, we also have f ≥ y(m×x)+y(m×x')
f ≥ y(m×x)+y(m×x')
= y(m)×y(x)+y(m)×y(x') (Definition of y)
= y(m)×(y(x)+y(x')) (Distributivity)
= y(m)×(y(x)+¬y(x)) (Definition of y)
= y(m) (Complements)
Characterization of implicants
Theorem (Implicants):
A monomial m is an implicant of f if and only if, either
• m is a minterm of f, or
• m×x and m×x' are implicants of f
for a variable x that does not occur in m.
Thus:
m Î Implicant(f) Û
[m Î Minterm(f)] Ú [m×x, m×x' Î Implicant(f)]
Proof
Follows directly from Lemma 1 and Lemma 2.