B01: Introduction to Digital Logic Design

29
B01: Introduction to Digital Logic Design Instructor: Katherine Compton Tech L470 (moving to L458 around 7/1) <[email protected]>, (847)491-2083 Office Hours: by appointment TA: Probably not. Book: Randy H. Katz’s Contemporary Logic Design

description

B01: Introduction to Digital Logic Design. Instructor: Katherine Compton Tech L470 (moving to L458 around 7/1) , (847)491-2083 Office Hours: by appointment TA: Probably not. Book: Randy H. Katz’s Contemporary Logic Design. Grading. 20% - Homeworks 25% - Tutorials & Labs - PowerPoint PPT Presentation

Transcript of B01: Introduction to Digital Logic Design

Page 1: B01:  Introduction to Digital Logic Design

1

B01: Introduction to Digital Logic Design

Instructor: Katherine ComptonTech L470 (moving to L458 around 7/1)<[email protected]>, (847)491-2083Office Hours: by appointment

TA: Probably not.

Book: Randy H. Katz’s Contemporary Logic Design

Page 2: B01:  Introduction to Digital Logic Design

2

Grading

20% - Homeworks 25% - Tutorials & Labs 25% - Midterm Exam 30% - Final Exam Homework is due at the beginning of class on the

specified date. Late penalties:

<24 hours: -15% <48 hours: -30% <72 hours: -60% >72 hours: not accepted

Page 3: B01:  Introduction to Digital Logic Design

3

Joint Work Policy

All work done for the class must be a student’s own, original work.

Everyone must do their own work separately. You cannot work together on the specifics of

homeworks or labs. You also cannot use answers from previous years

or answer keys.

Any students caught using someone else’s work will receive a 0 for that assignment/lab/exam.

Page 4: B01:  Introduction to Digital Logic Design

4

Class & Lab Meetings

Lectures: TTh 6:30-9:30PM Labs : Must sign up for a weekly time slot

Sign-up sheet will go up on door of L470 on Wednesday

Sign up by next class time!

Will have open labs (help sessions), time to be announced later.

Page 5: B01:  Introduction to Digital Logic Design

5

Motivation

Electronics an increasing part of our lives Computers & the Internet Car electronics Robots Electrical Appliances Telephones

Class covers digital logic design & implementation

Page 6: B01:  Introduction to Digital Logic Design

6

Example: Car Electronics

Brake Light (foot brake, parking brake):

High-beam indicator (lights, high beam selected):

Page 7: B01:  Introduction to Digital Logic Design

7

Example: Car Electronics (cont.)

Seat Belt Light (driver belt in):

Seat Belt Light (driver belt in, passenger belt in, passenger present):

Page 8: B01:  Introduction to Digital Logic Design

8

Basic Logic Gates AND: If A and B are True, then Out is True

OR: If A or B is True, or both, then Out is True

Inverter (NOT): If A is False, then Out is True

AB Out

Out

Out

AB

A

Page 9: B01:  Introduction to Digital Logic Design

9

TTL Logic (Transistor-transistor Logic)

Vdd (TRUE)

GND (False)

Page 10: B01:  Introduction to Digital Logic Design

10

Digital vs. Analog

Analog: values vary over a broad range continuously

Digital: only assumes discrete values

+5

V

–5

T ime

+5

V

–5

1 0 1

T ime

Page 11: B01:  Introduction to Digital Logic Design

11

Analog systems: slight error in input yields large error in output

Digital systems more accurate and reliable Readily available as self-contained, easy to cascade

building blocks Computers use digital circuits internally Interface circuits (i.e., sensors & actuators) often

analog

Advantages of Digital Circuits

This course is about logic design, not system design (processor architecture), not circuit design (transistor level)

Page 12: B01:  Introduction to Digital Logic Design

12

Binary/Boolean Logic

• Two discrete values (TTL): yes, on, 5 volts, TRUE, "1" no, off, 0 volts, FALSE, "0"

• Advantage of binary systems: rigorous mathematical foundation based on logic

the three preconditions must be true to imply the conclusion

IF the garage door is openAND the car is runningTHEN the car can be backed out of the garage

IF the garage door is openAND the car is runningTHEN the car can be backed out of the garage

both the door must be open and the carrunning before I canback out

IF passenger is in the carAND passenger belt is inAND driver belt is inTHEN we can turn off the fasten seat belt light

IF passenger is in the carAND passenger belt is inAND driver belt is inTHEN we can turn off the fasten seat belt light

Page 13: B01:  Introduction to Digital Logic Design

13

Combinational vs. Sequential Logic

No feedback among inputs and outputs. Outputs are a function of the inputs only.

Network implemented from logic gates.The presence of feedback distinguishes between sequentialand combinational networks.

---

X1X2

Xn

Logic

Network

Z1Z2

Zm

---

Sequential logic

---

X1X2

Xn

Logic

Network

Z1Z2

Zm

---

Combinational logic

Page 14: B01:  Introduction to Digital Logic Design

14

Black Box (Majority)

Given a design problem, first determine the function

Consider the unknown combination circuit a “black box”

A B C

Out

Truth Table

Page 15: B01:  Introduction to Digital Logic Design

15

“Black Box” Design & Truth Tables

Given an idea of a desired circuit, implement it Example: Odd parity - inputs: A, B, C, output: Out

Page 16: B01:  Introduction to Digital Logic Design

16

Truth Tables

Algebra: variables, values, operations

In Boolean algebra, the values are the symbols 0 and 1 If a logic statement is false, it has value 0 If a logic statement is true, it has value 1

Operations: AND, OR, NOT

0 0 1 1

X Y X AND Y

0 1 0 1

0 0 0 1

X Y X OR Y

0 0 1 1

0 1 0 1

0 1 1 1

X NOT X

0 1

1 0

Page 17: B01:  Introduction to Digital Logic Design

17

Boolean EquationsBoolean Algebra

values: 0, 1variables: A, B, C, . . ., X, Y, Zoperations: NOT, AND, OR, . . .

NOT X is written as XX AND Y is written as X & Y, or sometimes X YX OR Y is written as X + Y

A

0011

B

0101

Sum

0110

Carry

0001

Sum = A B + A B

Carry = A B

OR'd together product terms for each truth table

row where the function is 1

if input variable is 0, it appears in complemented form;

if 1, it appears uncomplemented

Deriving Boolean equations from truth tables:

Page 18: B01:  Introduction to Digital Logic Design

18

Boolean Algebra

A

00001111

B

00110011

Cin

01010101

Sum

01101001

Cout

00010111

Another example:

Sum = A B Cin + A B Cin + A B Cin + A B Cin

Cout = A B Cin + A B Cin + A B Cin + A B Cin

Page 19: B01:  Introduction to Digital Logic Design

19

Boolean Algebra

Reducing the complexity of Boolean equations

Laws of Boolean algebra can be applied to full adder's carry out function to derive the following simplified expression:

Cout = A Cin + B Cin + A B

Verify equivalence with the original Carry Out truth table:

place a 1 in each truth table row where the product term is true

each product term in the above equation covers exactly two rows in the truth table; several rows are "covered" by more than one term

A 0 0 0 0 1 1 1 1

C in 0 1 0 1 0 1 0 1

B 0 0 1 1 0 0 1 1

C out 0 0 0 1 0 1 1 1

B C in

A C in

A B

Page 20: B01:  Introduction to Digital Logic Design

20

Representations of Boolean Functions

Boolean Function: F = X + YZ

Truth Table:

X Y Z F0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

Circuit Diagram:

Page 21: B01:  Introduction to Digital Logic Design

21

Why Boolean Algebra/Logic Minimization?

Logic Minimization: reduce complexity of the gate level implementation

• reduce number of literals (gate inputs)

• reduce number of gates

• reduce number of levels of gates

fewer inputs implies faster gates in some technologies

fan-ins (number of gate inputs) are limited in some technologies

fewer levels of gates implies reduced signal propagation delays

number of gates (or gate packages) influences manufacturing costs

Page 22: B01:  Introduction to Digital Logic Design

22

Basic Boolean Identities:

X + 0 = X * 1 =

X + 1 = X * 0 =

X + X = X * X =

X + X = X * X =

X =

Page 23: B01:  Introduction to Digital Logic Design

23

Basic Laws

Commutative Law:

X + Y = Y + X XY = YX

Associative Law:

X+(Y+Z) = (X+Y)+Z X(YZ)=(XY)Z

Distributive Law:

X(Y+Z) = XY + XZ X+YZ = (X+Y)(X+Z)

Page 24: B01:  Introduction to Digital Logic Design

24

Boolean Manipulations

Boolean Function: F = XYZ + XY + XYZ

Truth Table:

X Y Z F0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

Reduce Function:

Page 25: B01:  Introduction to Digital Logic Design

25

Advanced Laws (Absorbtion)

X+XY = XY + XY = X+XY = X(X+Y) = (X+Y)(X+Y) = X(X+Y) =

Page 26: B01:  Introduction to Digital Logic Design

26

Boolean Manipulations (cont.)

Boolean Function: F = XYZ + XZ

Truth Table:

X Y Z F0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

Reduce Function:

Page 27: B01:  Introduction to Digital Logic Design

27

Boolean Manipulations (cont.)

Boolean Function: F = (X+Y+XY)(XY+XZ+YZ)

Truth Table:

X Y Z F0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

Reduce Function:

Page 28: B01:  Introduction to Digital Logic Design

28

DeMorgan’s Law

(X + Y) = X * Y

(X * Y) = X + Y

Example:Z = A B C + A B C + A B C + A B C

Z = (A + B + C) * (A + B + C) * (A + B + C) * (A + B + C)

DeMorgan's Law can be used to convert AND/OR expressionsto OR/AND expressions

DeMorgan's Law can be used to convert AND/OR expressionsto OR/AND expressions

X 0 0 1 1

Y 0 1 0 1

X 1 1 0 0

Y 1 0 1 0

X + Y X•Y

X 0 0 1 1

Y 0 1 0 1

X 1 1 0 0

Y 1 0 1 0

X + Y X•Y

Page 29: B01:  Introduction to Digital Logic Design

29

DeMorgan’s Law example

If F = (XY+Z)(Y+XZ)(XY+Z),

F =