Download - 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006
![Page 1: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/1.jpg)
01Introduction to Digital Logic
ENGR 3410 – Computer ArchitectureMark L. Chang
Fall 2006
![Page 2: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/2.jpg)
2
Acknowledgements
• Patterson & Hennessy: Book & Lecture Notes• Patterson’s 1997 course notes (U.C. Berkeley CS 152, 1997)• Tom Fountain 2000 course notes (Stanford EE182)• Michael Wahl 2000 lecture notes (U. of Siegen CS 3339)• Ben Dugan 2001 lecture notes (UW-CSE 378)• Professor Scott Hauck lecture notes (UW EE 471)• Mark L. Chang lecture notes for Digital Logic (NWU B01)
![Page 3: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/3.jpg)
3
Example: Car Electronics• Door ajar light (driver door, passenger door):
• High-beam indicator (lights, high beam selected):
![Page 4: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/4.jpg)
4
Example: Car Electronics (cont.)• Seat Belt Light (driver belt in):
• Seat Belt Light (driver belt in, passenger belt in, passenger present):
![Page 5: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/5.jpg)
5
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 6: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/6.jpg)
6
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 7: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/7.jpg)
7
• Analog systems:slight error in input yields large error in output
• Digital systems:more accurate and reliablereadily 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
![Page 8: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/8.jpg)
8
Binary/Boolean Logic
• Two discrete values: 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 9: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/9.jpg)
9
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 10: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/10.jpg)
10
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 11: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/11.jpg)
11
“Black Box” Design & Truth Tables• Given an idea of a desired circuit, implement it
– Example: Odd parity - inputs: A, B, C, output: Out
![Page 12: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/12.jpg)
12
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 13: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/13.jpg)
13
Boolean Equations
Boolean Algebravalues: 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 14: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/14.jpg)
14
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 15: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/15.jpg)
15
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 16: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/16.jpg)
16
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 17: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/17.jpg)
17
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 18: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/18.jpg)
18
Basic Boolean Identities:
• X + 0 = X * 1 =
• X + 1 = X * 0 =
• X + X = X * X =
• X + X = X * X =
• X =
![Page 19: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/19.jpg)
19
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 20: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/20.jpg)
20
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 21: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/21.jpg)
21
Advanced Laws
X+XY =
XY + XY =
X+XY =
X(X+Y) =
(X+Y)(X+Y) =
X(X+Y) =
![Page 22: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/22.jpg)
22
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 23: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/23.jpg)
23
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 24: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/24.jpg)
24
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 25: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/25.jpg)
25
DeMorgan’s Law example
If F = (XY+Z)(Y+XZ)(XY+Z),
F =
![Page 26: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/26.jpg)
26
NAND and NOR Gates• NAND Gate: NOT(AND(A, B))
• NOR Gate: NOT(OR(A, B))
•
0 0 1 1
X Y
0 1 0 1
1 1 1 0
X NAND Y
X Y
0 0 1 1
0 1 0 1
1 0 0 0
X NOR Y
![Page 27: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/27.jpg)
27
NAND and NOR Gates• NAND and NOR gates are universal
– can implement all the basic gates (AND, OR, NOT)
NAND NOR
NOT
AND
OR
![Page 28: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/28.jpg)
28
Bubble Manipulation• Bubble Matching
• DeMorgan’s Law
![Page 29: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/29.jpg)
29
XOR and XNOR Gates
• XOR Gate: Z=1 if X is different from Y
• XNOR Gate: Z=1 if X is the same as Y
X Y Z0 0 00 1 11 0 11 1 0
X Y Z0 0 10 1 01 0 01 1 1
XY Z
ZXY
![Page 30: 01 Introduction to Digital Logic ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006](https://reader035.vdocument.in/reader035/viewer/2022062620/551a690a550346b52d8b4c15/html5/thumbnails/30.jpg)
30
Boolean Equations to Circuit Diagrams
F = XYZ + XY + XYZ
F = XY + X(WZ + WZ)