ALD-Spring 2009
Introduction Logic Functions and their representations. Classification of logic Functions. NPN classification Classes of Logic functions:
Monotonic, linear, self-dual and symmetric functions and their properties.
Prof. Ilya Levin, Dr. Osnat Keren E-mail: levinil@eng.biu.ac.il, kereno@eng.biu.ac.il Spring 2011
Threshold and Majority Logic. Functional Decomposition Fault Tolerant Design. On-line checking. Self-checking Checkers
ALD-Spring 2009
ALD-Spring 2009
Grading Policy Textbooks Main: T. Sasao, Switching Theory for Logic Synthesis, Kluwer Academic Publishers, Feb. 1999/ ISBN: 0-7923-8456-3. J.T. Astola and R.S. Stankovic, Fundamentals of Switching Theory and Logic Design: A Hands on Approach, Springer-Verlag New York, 2006 Additional: G. Hachtel and F. Somenzi, Logic Synthesis and Verification Algorithms, Kluwer Academic Publishers, 3rd ed., 2000. Lala, P., Self-checking and Fault-Tolerant Digital Design, Morgan Kaufmann Publishers, San-Francisco / San-Diego / New-York/ Boston/ London/ Sydney/ Tokyo, 2000.
Homework ~4 assignments Assignments due in class on due date Homework assignments will be posted on the web. Grading Homework 5% Quiz 10% Final exam 85%
ALD-Spring 2009
ALD-Spring 2009
2. Binary Relation: A subset R A B is a Binary relation R from A to B . If (ai , bi ) R then ai and b j are in the relation and we write a iRb j. 3. Inverse Relation: Inverse relation R 1 is defined as relation B A : R 1 = {(b j , ai ) | (ai , b j ) R}.
ALD-Spring 2009
ALD-Spring 2009
Partially Ordered Set (POSET) A relation R is a partial order relation of a set A (from A to A), if it has the following properties for any element x,y,z in A:
Reflexive (xRx) Antisymmetric (xRy and yRx imply x=y) Transitive (xRy and yRz imply xRz).
HASSE DIAGRAM
Let a,b A, a R b and there is no element c A, such that a R c and c R b, then on the diagram b is above a, and connected to a with a line: b
|
Example: a Two-variable vectors a = a1 , a 2 ,..., a k and b = b1 , b2 ,..., bk connected by the relation a R b, if and only if ai bi for all i=1, 2, , k. Let A = { 0111, 1110, 0110, 0100, 0010}, the relation R on the Hasse diagram looks as follows:
0111 1110
yRx
Minimal (Maximal) element in ordered set If for each a A , there exists a0 A, such that
ALD-Spring 2009
ALD-Spring 2009
LATTICE
Least upper bound, Greatest lower bound
Let
A, R
An element
a A
is an upper bound of B, if
b R a
b B b B
is
The lattice is an algebraic system A,, with two binary operations and , and arbitrary elements a, b, c in A satisfy the following four axioms (1) (4):
.
If there is a minimum element in the set of the upper bounds of B, then it is the least upper bound of B. An element a A is an lower bound of B, if a R b holds for each If there is a minimum element in the set of the upper bounds of B, then it is the greatest lower bound of B. The least upper bound and the greatest lower bound of two elements denoted as a b and a b .
(1) Idempotent laws: (2) Commutative laws: (3) Associative laws: (4) Absorption laws:
a a = a, a a = a
a b = b a, a b = b a a ( b c ) = ( a b ) c, a ( b c ) = ( a b ) c a (a b ) = a, a (a b ) = a
{a, b}
Distributive Lattice
A lattice that satisfies the distributive low is called a distributive lattice
a (b c ) = ( a b ) ( a c ) a (b c) = (a b) (a c)
ALD-Spring 2009
ALD-Spring 2009
a (b c) = (a b) (a c)
a (b c) (a b) (a c)
ALD-Spring 2009
ALD-Spring 2009
(0,1,1,1)
(1,1,0,0)
(1,0,1,0)
(1,0,0,1)
(0,1,1,0)
(0,1,0,1)
(0,0,1,1)
(0,1,0,0) (1,0,0,0)
(0,0,1,0) (0,0,0,1)
(0,0,0,0)
Hasse diagram of B3
Two Boolean algebras A,,,,0 A ,1 A and B,,,,0 B ,1B are isomorphic if there is the mapping f : A B, such that 1) for arbitrary a, b A, f (a b) = f (a ) f (b), f (a b) = f (a) f (b) , and f (a) = f (a) , and 2) f (0 A ) = 0 B , f (1 A ) = 1B hold.
Transparency No. 1-21
ALD-Spring 2009
ALD-Spring 2009
Variables:
xi
i = 0, 1, ...n 1
Value of Variables: Set of Variables (Vector): Set of Values (Vector): Number of the Set For n variables Example:
n = 3; = {1, 1, 0} ;
i = [ 0,1]
X = {xn 1 ,...., x0 } , ( n-dimension )
X 0 0 1 0 1 Constant 0
Content of the function F0(X)=0 Inversion (Negation) - F1(X) = Variable F2(X)=X Constant 1 F3(X)=1
= {n1 ,...., 0 }
N () = 2 j
j j =0 n 1
0 N () 2 n 1
Enumeration of the functions : J = 2 0 F (0) + 21 F (1)
N ( ) = 2 0 0 + 21 1 + 2 2 1 = 6;
x 0 = 0 ; x 1 = 1; x 2 = 1 .
Transparency No. 1-22 Transparency No. 1-23
ALD-Spring 2009
ALD-Spring 2009
xxxxxxxxxxxx
1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
xxxxxxxxxxxx
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
xxxxxxxxxxxx
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
xxxxxxxxxxxx
0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Content of the functions Constant 0 Piers Arrow (NOR) x0 x1 x0 AND Not x1 Not x1 Not x0 AND x1 Not x0 Sum by Modulo 2 x0 x1 Shaffer Touch (NAND) x0|x1 x0 AND x1 x0&x1 (x0x1) Equivalence x0~x1 x0 Implication x1 x0 x1 Implication x0 x1 OR x0 + x1 (x0 v x1) Constant 1
1 4 minterms
3 minterms
x'+y
x'+y'
x+y'
x+y
2 minterms
x'
xy+x'y'
y'
xy'+x'y
x'y
xy xy'
ALD-Spring 2009
ALD-Spring 2009
Logic functions. Basic Definitions (cont) Number of the function is calculated as: j =
2 n 1
N ()=0
N ()
F ( )
F7
F11
F14
2 minterms
F5
F9
F3
F12
F6
F10
Relationships between vectors : Let X = {xn 1 ,..., x0 } X = {xn 1 ,..., x0 } = {n 1 ,..., 0 } = { ,..., } n 1 0 then
= 1 ;
n 1 i =0
= {1 n 1 ,..., 1 0 }
i n 1 i =0 n 1 i =0
1 minterms F1 0 minterms
F4
F8
F2
N () = 2 (1 i ) = 2i 2i i = 2n 1 N ()
F0
Function is a vector :
F ( X ) = {F ( 2n 1 ),..., F (0 )}
F j ( X ) = F 2n
2
Transparency No. 1-27
1 j
(X )
ALD-Spring 2009
ALD-Spring 2009
F11 ( X ) = x1 x0 = x0 + x1 ; x 0 = x ; x 1 = 1; 1 x = x; 0 x = 1; x x = x ; x x = 1; x x = x;
Variables negation = picture reflection
3
F8 ( X ) = x0 x1 = min( x0 , x1 );
x1 1 2 0 0
0 0
1 1 x0
3
x1 1 2
1 1 x0
0
Transparency No. 1-28
F13 ( X ) = x0 x1 = x0 + x1 ; x0 x1 = x1 x0 ;
1 1 x0
Transparency No. 1-29
ALD-Spring 2009
ALD-Spring 2009
(absorption)
X 0 X1 = X 0 + X1
X 0 X1 + X 0 X1 = X 0 ( X1 + X1 ) = X 0
(gluing)
X 0 + X1 = X 0 X1
ALD-Spring 2009
ALD-Spring 2009
A B, A + B, A B.
X 0 X1 = X 0 X1 X 0 X1 = X 0 X 0 X1 X 0 X1 = X 0 + X1 X 0 X1 X 0 X1 = X 0 + X1 2 X 0 X1
Define:
1 X = 0 X =
if if
X = X x = j j
iff fo r a ll j : = x n 1 .... x 1 x 0 X n 1 1 0
1 X 5 = x1 x10 x0 = x2 x1 x0 2 1 0 X 6 = x1 x1 x0 = x2 x1 x0 2
Transparency No. 1-33
ALD-Spring 2009
ALD-Spring 2009
Functions of 3 variables
x2
xxxxxxxxxxxx
x1
xxxxxxxxxxxx
x0
xxxxxxxxxxxx x
X0
xxxxxxxxxxxx
X1
xxxxxxxxxxxx
X2
xxxxxxxxxxxx
X3
xxxxxxxxxxxx
X4
xxxxxxxxxxxx
X5
xxxxxxxxxxxx
X6
xxxxxxxxxxxx
X7
xxxxxxxxxxxx
F(X)
F (X ) =
2 1 =0
F ( ) X
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1
0 1 0 0 0 1 0 1
Example: Let a function of 3 variable be defined as: F(1)=F(5)=F(7)=1 F(0)=F(2)=F(3)=F(4)=F(6)=0 Then F(X)=X1+X5+X7
ALD-Spring 2009
ALD-Spring 2009
Define:
0 X = 1
if if
X = X
&
=0
[ F ( ) + X
F( X ) =
= 2 n 1 =0
&
[ F () + X ] =
= 2 n 1 =0
F () X
Example: Let function of 3 variable be defined as: F(1)=F(5)=F(7)=1 and F(0)=F(2)=F(3)=F(4)=F(6)=0 then
F(X ) = X 0 X 2 X 3 X 4 X 6
Transparency No. 1-36 Transparency No. 1-37
ALD-Spring 2009
Representation of functions
F ( X ) = 1 ( X ) + 2 ( X ) or F ( X ) = 1 ( X ) 2 ( X )
De Morgan Theorem:
F ( X ) = 1 ( X ) 2 ( X ) = 1 ( X ) + 2 ( X )