Boolean Logic

advertisement
b0010
Boolean Logic
ENGR xD52
Eric VanWyk
Fall 2012
Acknowledgements
• Mark L. Chang lecture notes for Computer Architecture
(Olin ENGR3410)
• 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)
Today:
• Review Feedback from last class
• Review HW0
• Finish Boolean Logic
Most Favoritest Processors
• “whatever I have in my laptop”
– Second was “what?”
•
•
•
•
•
•
•
•
Apple A4 – ARM Cortex A8 w/ PowerVR GPU
ARM
Snapdragon / Tegra
Atmega / AVR
AEMB
GPU
The Babbage Engine(s)
Microsoft Word/Food Processor
I want to learn:
•
•
•
•
•
•
•
•
•
•
•
•
•
Why NAND/NOR is ‘universal’
How math happens
How memory is organized, stored, accessed
Assembly / How C becomes Assembly
Data busses, setup / hold times, clocking
How GPUs process triangles
History of Comp Arch
What up with Raspberry Pi?
Verilog / FPGAs
Multi-threading
Peripherals
Fix the K’nex’ulator
Build a computer in Minecraft
Basic Logic Gates
Basic Logic Gates
AND
NAND
OR
NOR
XOR
(exclusive or)
XNOR
NOT
Boolean Equations
• AND:
AB
• OR:
A+B
• NOT:
A̅
A&B
~A
Basic Boolean Identities:
• X+0=
X*1=
• X+1=
X*0=
• X+X=
X*X=
• X + X̅ =
X * X̅ =
• X̅ =
9
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)
10
Advanced Laws
11
Karnaugh Map Review
• Moving one square changes only one input.
• Cover all 1s with boxes.
• Boxes must be power of 2 sized.
• Create Sum of Products
• Boxes can “wrap around” the edges of the map.
– Toroidal mapping
Karnaugh Map Review
AB
A̅ B
A̅ B̅
AB̅
CD
ABCD
A̅ BCD
A̅ B̅CD
AB̅ CD
C̅D
ABC̅D
A̅ BC̅D
A̅ B̅CD
̅
AB̅ CD
̅
C̅D̅
ABC̅D̅
A̅ BC̅D̅
A̅ B̅CD
̅ ̅
AB̅ CD
̅ ̅
CD̅
ABCD̅
A̅ BCD̅
A̅ B̅CD̅
AB̅ CD̅
Karnaugh Map Review
AB
A̅ B
A̅ B̅
AB̅
CD
ABCD
A̅ BCD
A̅ B̅CD
AB̅ CD
C̅D
ABC̅D
A̅ BC̅D
A̅ B̅CD
̅
AB̅ CD
̅
C̅D̅
ABC̅D̅
A̅ BC̅D̅
A̅ B̅CD
̅ ̅
AB̅ CD
̅ ̅
CD̅
ABCD̅
A̅ BCD̅
A̅ B̅CD̅
AB̅ CD̅
Which “advanced” law allows us to combine boxes?
Why Karnaugh?
• “Mechanical” method guaranteed to get
something that works.
• Result is only two layers deep – Fast!
Why not Karnaugh?
• Confusing visually for more than 4 variables
– But it still works if you squint
• Optimizes for speed, not space.
To the Boards!
• F = (X+Y̅+XY̅)(XY+X̅ Z+YZ)
• Evaluate Truth Table
– Pro Tip: Build in Layers
• Simplify with Karnaugh
• Simplify with Boolean Law
DeMorgan’s Law
(X + Y) = X * Y
(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
0
0
1
1
Y
0
1
0
1
X
1
1
0
0
Y
1
0
1
0
X +Y
X•Y
X•Y X +Y
Example:
Z=ABC + ABC + ABC + ABC
Z = (A + B + C) * (A + B + C) * (A + B + C) * (A + B + C)
18
DeMorgan’s Law example
19
The Universal Gates
• Karnaugh maps can frame any boolean
equation in sum of products (OR of ANDs)
• DeMorgan can frame any AND/OR in
NAND/NORs
• NAND and NOR can represent any
combinatorial boolean equation.
Boolean Equations to Circuit Diagrams
21
Download