


Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
Lecture 4 of cse370 covers the concepts of logic gates and truth tables, implementing logic functions, and canonical forms. Students learn how to go back and forth between truth tables, boolean expressions, and logic gates, as well as minimizing boolean expressions and drawing logic gates. The lecture also covers the implementation of a 1-bit binary adder and the optimization of logic designs.
What you will learn
Typology: Lecture notes
1 / 4
This page cannot be seen from the preview
Don't miss anything!
CSE370, Lecture 4 1
n HW1 due Wednesday at start of class n Office Hours: Me: 12:20-1:00 CSE 668 plus one later this week TAs: Today at 3:30, tomorrow at 12:30 & 2:30 in CSE 220 n Lab2 going on this week
n Axioms n Useful laws and theorems n Simplifying Boolean expressions
n Logic gates and truth tables in detail n Implementing logic functions n Canonical forms
CSE370, Lecture 4 2
u Logic Gates and Truth Tables n Now you know 0’s and 1’s and the basic Boolean algebra, now you are ready to go back and forth between truth table, Boolean expression, and logic gates. This ability to go back and forth is an extremely useful skill designing and optimizing computer hardware.
u Implementing Logic Functions n Now with these basic tools you learned, you can “implement” logic functions. We use Boolean algebra to implement logic functions that are used in the computers. And these logic functions are used by computer programs you write.
u Canonical forms n There are many forms to expression one Boolean function. It is good to have one standard way. A canonical form is the standard form for Boolean expressions. It has a nice property that allows you to go back and forth between truth table/expressions/gates easily.
CSE370, Lecture 4 3
CSE370, Lecture 4 4
X Y Z 0 0 1 0 1 1 1 0 1 1 1 0
X Y Z
X Y Z 0 0 1 0 1 0 1 0 0 1 1 0
Z
X Y
X Y Z 0 0 0 0 1 1 1 0 1 1 1 0
X Y Z
X Y Z 0 0 1 0 1 0 1 0 0 1 1 1
Z
X Y
F
A B C D A B C
F
n Write the Boolean expression n Minimize the Boolean expression n Draw as gates n Example:
A B C F 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1
CSE370, Lecture 4 7
n Inputs: A, B, Carry-in n Outputs: Sum, Carry-out
A B Cin Cout Sum 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Cout = A'BCin + AB'Cin + ABCin' + ABCin
Both Sum and Cout can be minimized.
Sum = A'B'Cin + A'BCin' + AB'Cin' + ABCin
Cin Cout
Adder Sum
CSE370, Lecture 4 8
Before Boolean minimization Sum = A'B'Cin + A'BCin'
After Boolean minimization Sum = (A⊕B) ⊕ Cin
CSE370, Lecture 4 9
Before Boolean minimization Cout = A'BCin + AB'Cin
After Boolean minimization Cout = BCin + ACin + AB
CSE370, Lecture 4 10
Cin Cout
Sum 1
Sum
Cin Cout
1-Bit Adder
Sum 2
0 Cin^ Cout
Overflow
n Reduce the number of gates? n Reduce the number of gate inputs? n Reduce number of chips and/or wire?
n Logic minimization: Reduce number of gates and complexity n Logic optimization: Maximize speed and/or minimize power n CAD tools
CSE370, Lecture 4 19
CSE370, Lecture 4 20
n Use maxterms that aren’t in minterm expansion
n Use minterms that aren’t in maxterm expansion
n Use minterms that don’t appear
n Use maxterms that don’t appear
CSE370, Lecture 4 21
n F' = A'B'C' + A'BC' + AB'C'
n (F')' = (A'B'C' + A'BC' + AB'C')' n F = (A+B+C)(A+B'+C)(A'+B+C)
n F' = (A+B+C')(A+B'+C')(A'+B+C')(A'+B'+C)(A'+B'+C')
n (F')' = ((A+B+C')(A+B'+C')(A'+B+C')(A'+B'+C)(A'+B'+C'))' n F = A'B'C + A'BC + AB'C + ABC' + ABC