Title: ECE 4110: Sequential Logic Design
1ECE 4110 Sequential Logic Design
2ECE 4110 Sequential Logic Design
- Lecture 1
- Agenda
- Course Logistics
- Course Content
- Digital Review
- Announcements
- Welcome
- Homework 1 assigned
3Course Overview
- Instructor Omar Elkeelany
- Office 331 Brown Hall Phone
(931)-372-3677 Email oelkeelany_at_tntehc.edu
Web http//iweb.tntehc.edu/oelkeelany - Time / Location Lecture MWF 1010am
1105am BN 321
4Course Overview
- Textbook Digital Design Principles and
Practices", 4th Addition John F. Wakerly,
Prentice Hall, 2006 - Website http//iweb.tntech.edu/oelkeelany/4110F10
- all handouts, homework assignments are ONLINE
- it is your responsibility to download assignments
5Course Overview
- Office Hours 331 Brown Hall MWF, 800am
900am - Also available by email appointment
- Pre-requisites ECE2110 / ECE3160
- Grading Homework/VHDL and Quizzes 20
- Combo System project 20
- Exam 1 20 Exam 2
20 - Final Exam 20
- - Homework Assignments are due at the
beginning of class. - - No Late homework will be accepted.
- - No make up exams will be given, unless
pre-execuesd before the test. - Plan on being available on the exam dates.
- Term paper assignment will be given for 5110
graduate level.
6Course Overview
- Where does this course fit into the Electrical
Engineering curriculum?
7Course Overview
- Where does this course fit into the Computer
Engineering curriculum?
8Course Content
- What is this course?- In ECE2110 you learned
- basic combinational logic design - basic
sequential logic design- In ECE3160 you
learned - how to implement logic circuits
using off-the-shelf parts- ECE4110 is a
follow-on course that looks at - Large scale
digital designs - Performance of digital
circuitry - Programmable Logic
9Course Content
- What does "Large" mean?
- - Large means that you can't do it by hand. We
need a way to design and simulate Millions of
gates- K-maps for a Pentium would take too much
paper
10Course Content
- We will learn VHDL in order to describe large
digital designs - VHDL is a text based
Hardware Description Language - We can
simulate our digital designs created in VHDL
11Course Content
- We can also prototype our designs using an FPGA
- FPGA Field Programmable Gate Array - An
FPGA is a programmable logic device - In this
course, - we will implement our designs and test them in
FPGA hardware
12Course Content
- What topics will be covered? 1) VHDL
(Exam 1 Topics) - 2) Medium Scale Combinational Logic Devices
- 3) More Complex Finite State Machines (Exam
2 Topics) 4) Computer Systems 5) FPGA Timing
and Implementation - For the 5110 level, a special assignment is to
Write an original research paper on a topic
related to those in this course, such as - Modern programmable logic devices, survey,
features, comparisons, usage, etc.. - Hardware description languages survey,
comparisons, usage, IP, etc. - Sequential Logic Design methods
-
13Digital Review
- Combinational Logic
- Combinational Logic Gates
- - Output depends on the logic value of the
inputs - - no storage
-
-
14Digital Review
- NOT out in in f(in) in in
- OR out ab f(a,b) ab
- AND out ab f(a,b) ab
-
15Digital Review
- XOR out a?b f(a,b) a?b
- NOR out ab f(a,b) ab
- NAND out ab f(a,b) ab
-
16Digital Review
- XNOR out a?b f(a,b) a?b
-
- Also remember about XOR Gates
- f(a,b) a?b (ab ba)
- Also remember the priority of logic operations
(without parenthesis) is - NOT, AND, OR
17Digital Review
- DeMorgans Theorems
- Inverting the output of any gate results in the
same function as the opposite gate (AND/OR) with
inverted inputs
18Digital Review
- DeMorgans Theorems
- Graphically breaking the bar changes the logic
function (AND-OR) under the break
out ab
1) Break bar
out ab
2) Change to under break
out ab
19Digital Review
- Boolean Expressions Using SOP
- Logic functions can be described using a Sum of
Products techniques - Sum of Products (SOP) is the summation of all
minterms resulting in the truth table - A minterm is the expression for an input
configuration which yields a TRUE output - A minterm expression is the ANDing of the input
"1" signal configuration
Truth Table a b out 0 0 0 0 1 1 minterm m1
ab 1 0 1 minterm m2 ab 1 1 0
SOP Expression f(a,b) ab ab Note
un-minimized Boolean expression
20Digital Review
- Boolean Expressions Using POS
- Logic functions can be described using a Product
of Sums techniques - Product of Sums (POS) is the multiplication of
all maxterms resulting in the truth table - A maxterm is the expression for an input
configuration which yields a FALSE output - A maxterm expression is the ORing of the input
"0" signal configuration
Truth Table a b out 0 0 0 maxterm m0 ab
(input configuration of 0's) 0 1 1 1 0 1 1 1 0
maxterm m3 a'b' (input configuration of 0's)
POS Expression f(a,b) (ab) (a'b')
21Digital Review
- Boolean Expressions Using SOP POS
- SOP and POS functions are equivalent
SOP Expression f(a,b) ab ab
is equal to POS Expression f(a,b) (ab)
(a'b')
22Digital Review
- Karnaugh Maps
- K-maps provide a graphical method to find SOP/POS
expressions - K-maps also provide a graphical method to perform
logic minimization - K-map SOP Process 1) Circle minterms to
create SOP - 2) Circle in Horizontal Vertical manner
- 3) Circle in groups with powers of 2
(1,2,4,8,)
Truth Table a b out 0 0 0 0 1 1 1 0 1 1 1 1
No dependency on b, minterm a
No dependency on a, minterm b
SOP expression f(a,b) a b
23Digital Review
- Karnaugh Maps
- K-maps provide a graphical method to find SOP/POS
expressions - K-maps also provide a graphical method to perform
logic minimization - K-map POS Process 1) Circle maxterms to
create SOP - 2) Circle in Horizontal Vertical manner
- 3) Circle in groups with powers of 2
(1,2,4,8,)
Truth Table a b out 0 0 0 0 1 1 1 0 1 1 1 1
Dependency on a' and b', maxterm ab
POS expression f(a,b) a b
24Digital Review
- Sequential Logic
- - Concept of Storage Element
- - With Storage, logic functions can depend on
current past values of inputs - - Sequential State Machines can be created
- D-Flip-Flop
- - on timing event (i.e., edge of clock input), D
input goes to Q output
CLK
D
Q
tc2q
25Digital Review
- State Machines
- - Moore Outputs depend on present state
- - Mealy Outputs depend on present state and
current inputs
26Digital Review
- State Machine Example Design a 2-bit Gray Code
Counter
1) Number of States? 4 2) Number of bits to
encode states? 2n4, n2 3) Moore or Mealy?
Moore For this counter, we can make the outputs
be the state codes
27Digital Review
- State Machine Example Design a 2-bit Gray Code
Counter
STATE Current Next Acur Bcur Anxt Bnxt 0
0 0 1 0 1 1 1 1 1 1 0 1
0 0 0
Anxt Logic
Bnxt Logic
Bcur 0 1
Bcur 0 1
Acur 0 1
Acur 0 1
0
1
1
1
0
1
0
0
Anxt Bcur
Bnxt Acur
A
counter output
B
A
B
CLK