Sunteți pe pagina 1din 8

ALD-Spring 2009

ALD-Spring 2009

Outline of the course

Advanced Logic Design

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.

Post theorem of functional competences


Boolean Expressions:
Shannon expansion theorem Reed-Muller expressions Kronecker expressions Walsh transform

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

Transparency No. 1-1

Transparency No. 1-9

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%

Transparency No. 1-10

Transparency No. 1-11

ALD-Spring 2009

ALD-Spring 2009

RELATIONS Algebraic Fundamentals of Logic Design


1. Direct Product: Cartesian direct product, denoted by D = A B , is the set that consists of all the ordered pair ( ai , b j ) elements: ai A = {a1 ,..., an }, b j B = {b1 ,..., bm }: Example:
A = {0,1}, B = { , 2}; 1 A B = {(0,1), (0, 2 ), (1,1), (1, 2 )};
D = {(a1 , b1 ),..., (a1 , bm ),..., (an , b1 ),...(an , bm )}.

Sets Relations Partial ordering Lattice Boolean Algebras

A 2 = A A = {(0,0 ), (0,1), (1,0 ), (1,1)}.

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}.

Transparency No. 1-12

Transparency No. 1-13

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

A relation is a total order relation of a set A if


For all x, y A, xRy or R is represented as x R

yRx

Minimal (Maximal) element in ordered set If for each a A , there exists a0 A, such that

0110 0100 0010

a0 R a (or a0 R a ) then a0 is the minimum (maximum) element of A.


Transparency No. 1-14 Transparency No. 1-15

ALD-Spring 2009

ALD-Spring 2009

LATTICE
Least upper bound, Greatest lower bound
Let

A, R

be an ordered set, and let B a subset of A.

An element

a A

is an upper bound of B, if

b R a

holds for each

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)

Transparency No. 1-16

Transparency No. 1-17

ALD-Spring 2009

ALD-Spring 2009

Examples of distributive (left) and non-distributive (right) lattices

POSTULATES OF BOOLEAN ALGEBRA


Identities: Commutative laws: Distributive laws: Complements:
a 0 = a, a 1 = a; a b = b a, a b = b a; a (b c ) = (a b ) (a c ), a (b c ) = (a b ) (a c ); a a = 1, a a = 0.

Ordered set Lattice Didtributive lattice Boolean algebra

a (b c) = (a b) (a c)

a (b c) (a b) (a c)

Relation of algebraic systems.


Transparency No. 1-18 Transparency No. 1-19

ALD-Spring 2009

ALD-Spring 2009

ISOMORPHIC BOOLEAN ALGEBRA


(1,1,1,1)

MODELS OF BOOLEAN ALGEBRA

(1,1,1,0) (1,1,0,1) (1,0,1,1)

(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

Hasse diagram of P({0,1,2})

Hasse diagram of A(30)

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

Transparency No. 1-20

ALD-Spring 2009

ALD-Spring 2009

Logic functions. Basic Definitions.

Functions of one variable

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 )

Functions FJ(X) F0(X) F1(X) F2(X) F3(X) 1 0 0 1 1

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

Functions of two variables


x0 x1 F0(X) F1(X) F2(X) F3(X) F4(X) F5(X) F6(X) F7(X) F8(X) F9(X) F10(X) F11(X) F12(X) F13(X) F14(X) F15(X)
xxxxxxxxxxxxxxxxxxx

BOOLEAN ALGEBRA OF THE BOOLEAN FUNCTIONS


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

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

1 minterms x'y' 0 minterms

x'y

xy xy'

Transparency No. 1-24

Transparency No. 1-25

ALD-Spring 2009

ALD-Spring 2009

BOOLEAN ALGEBRA OF THE BOOLEAN FUNCTIONS


4 minterms F13 3 minterms F15

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 )}

if j is number of the function Fj(X) then :


Transparency No. 1-26

F j ( X ) = F 2n
2
Transparency No. 1-27

1 j

(X )

ALD-Spring 2009

ALD-Spring 2009

Graphical representation of the sets of variables value (n=2)

F11(X) and F13(X)


x1 1 2 3

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

Some properties of the functions of two variables


X 0 + X 0 X 1 = X 0 (1 + X 1 ) = X 0

(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

Transparency No. 1-30

Transparency No. 1-31

ALD-Spring 2009

ALD-Spring 2009

Functions of many variables


Representation of the functions by arithmetic operations sum of products representation

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

Example : for n=3

Every function of n variables can be represented by arithmetic n-power polynomial

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

Transparency No. 1-32

ALD-Spring 2009

ALD-Spring 2009

Functions of many variables


sum of products representation

Functions of 3 variables
x2
xxxxxxxxxxxx

If function of n variables F(X) is defined as set of values F() then: n

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

Transparency No. 1-34

Transparency No. 1-35

ALD-Spring 2009

ALD-Spring 2009

Functions of many variables


product of sums representation

Functions of many variables


product of sums representation

Define:

0 X = 1

if if

X = X

If function of n variables F(X) is defined as set of values F() then: = 2 n 1


F (X ) =

&
=0

[ F ( ) + X

X = xnn11 + ... + x11 + x00 .


Example : n=3
1 1 X 5 = x2 + x10 + x0 = x2 + x1 + x0 1 X 6 = x2 + x11 + x00 = x2 + x1 + x0

Inversion of the function:

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

Each function can be represented as:

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 )

Transparency No. 1-38

S-ar putea să vă placă și