FF and L
FF and L
FF and L
http://www.comp.nus.edu.sg/~cs1104
Edge-Triggered Flip-flops
S-R Flip-flop
D Flip-flop
J-K Flip-flop
T Flip-flop
Asynchronous Inputs
CS1104-11
Introduction
A sequential circuit consists of a feedback path, and
employs some memory elements.
Combinational
outputs
Memory outputs
Combinational
logic
Memory
elements
External inputs
Introduction
Introduction
There are two types of sequential circuits:
synchronous: outputs change only at specific time
asynchronous: outputs change at any time
Introduction
Memory Elements
Memory element: a device which can remember
value indefinitely, or change value on command
from its inputs.
Q
Memory
element
command
stored value
Characteristic table:
CS1104-11
Command
(at time t)
Q(t)
Q(t+1)
Set
Reset
Memorise /
No Change
0
1
0
1
Memory Elements
Memory Elements
Memory element with clock. Flip-flops are memory
elements that change state on clock signals.
Memory
element
command
stored value
clock
Positive edges
CS1104-11
Negative edges
Memory Elements
Memory Elements
Two types of triggering/activation:
pulse-triggered
edge-triggered
Pulse-triggered
latches
ON = 1, OFF = 0
Edge-triggered
flip-flops
positive edge-triggered (ON = from 0 to 1; OFF = other
time)
negative edge-triggered (ON = from 1 to 0; OFF = other
time)
CS1104-11
Memory Elements
S-R Latch
Complementary outputs: Q and Q'.
When Q is HIGH, the latch is in SET state.
When Q is LOW, the latch is in RESET state.
For active-HIGH input S-R latch (also known as NOR
gate latch),
R=HIGH (and S=LOW) RESET state
S=HIGH (and R=LOW) SET state
both inputs LOW no change
both inputs HIGH Q and Q' both LOW (invalid)!
CS1104-11
S-R Latch
S-R Latch
For active-LOW input S'-R' latch (also known as NAND
gate latch),
R'=LOW (and S'=HIGH) RESET state
S'=LOW (and R'=HIGH) SET state
both inputs HIGH no change
both inputs LOW Q and Q' both HIGH (invalid)!
CS1104-11
S-R Latch
S-R Latch
Characteristics table for active-high input S-R latch:
S
Q'
NC
NC
1
0
1
0
1
1
1
0
0
0
1
0
No change. Latch
remained in present state.
Latch SET.
Latch RESET.
Invalid condition.
Q'
R'
Q'
NC
NC
0
1
0
1
0
0
1
0
1
0
1
1
CS1104-11
No change. Latch
remained in present state.
Latch SET.
Latch RESET.
Invalid condition.
S-R Latch
Q'
10
S-R Latch
Active-HIGH input S-R latch
10 100 R
Q 11000
10 001 S
Q' 0 0 1 1 0
S
1
0
0
0
1
R
0
0
1
0
1
Q Q'
1 0
initial
1 0 (afer S=1, R=0)
0 1
0 1 (after S=0, R=1)
0 0
invalid!
Q
Q'
S'
R'
CS1104-11
Q
Q'
S-R Latch
S' R'
1 0
1 1
0 1
1 1
0 0
Q Q'
0 1
initial
0 1 (afer S'=1, R'=0)
1 0
1 0 (after S'=0, R'=1)
1 1
invalid!
11
EN
EN
Q'
Q'
CS1104-11
12
Q(t+1)
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
1
indeterminate
1
0
1
indeterminate
CS1104-11
S R
0
0
1
1
0
1
0
1
Q(t+1)
No change
Q(t)
0
Reset
1
Set
indeterminate
Q(t+1) = S + R'.Q
S.R = 0
13
Gated D Latch
Make R input equal to S' gated D latch.
D latch eliminates the undesirable condition of invalid
state in the S-R latch.
D
EN
EN
Q'
CS1104-11
Gated D Latch
Q'
14
Gated D Latch
When EN is HIGH,
D=HIGH latch is SET
D=LOW latch is RESET
Characteristic table:
EN
Q(t+1)
1
1
0
0
1
X
0
1
Q(t)
Reset
Set
No change
CS1104-11
Gated D Latch
15
CS1104-11
Gated D Latch
16
Edge-Triggered Flip-flops
Flip-flops: synchronous bistable devices
Output changes state at a specified point on a
triggering input called the clock.
CS1104-11
Negative edges
Edge-Triggered Flip-flops
17
Edge-Triggered Flip-flops
S-R, D and J-K edge-triggered flip-flops. Note the >
symbol at the clock input.
S
C
R
C
Q'
C
Q'
Q'
C
R
C
Q'
C
Q'
Q'
Edge-Triggered Flip-flops
18
S-R Flip-flop
S-R flip-flop: on the triggering edge of the clock pulse,
CLK
Q(t+1)
Comments
0
0
1
1
0
1
0
1
Q(t)
0
1
?
No change
Reset
Set
Invalid
SR Flip-flop
19
S-R Flip-flop
It comprises 3 parts:
a basic NAND latch
a pulse-steering circuit
a pulse transition detector (or edge detector) circuit
CS1104-11
SR Flip-flop
20
S-R Flip-flop
The pulse transition detector.
S
Pulse
transition
detector
CLK
Q'
CLK'
CLK
CLK'
CLK*
CLK*
CLK
CLK
CLK'
CLK'
CLK*
CLK*
Positive-going transition
(rising edge)
CS1104-11
CLK
Negative-going transition
(falling edge)
SR Flip-flop
21
D Flip-flop
D flip-flop: single input D (data)
D=HIGH SET state
D=LOW RESET state
C
R
CLK
Q(t+1)
1
0
1
0
Comments
Set
Reset
Q'
= clock transition LOW to HIGH
D Flip-flop
22
D Flip-flop
Application: Parallel data transfer.
To transfer logic-circuit outputs X, Y, Z to flip-flops Q1,
Q2 and Q3 for storage.
D
CLK
X
Combinational
logic circuit
CLK
D
Transfer
CLK
Q1 = X*
Q'
Q
Q2 = Y*
Q'
Q
Q3 = Z*
Q'
D Flip-flop
23
J-K Flip-flop
J-K flip-flop: Q and Q' are fed back to the pulsesteering NAND gates.
No invalid state.
Include a toggle state.
J=HIGH (and K=LOW) SET state
K=HIGH (and J=LOW) RESET state
both inputs LOW no change
both inputs HIGH toggle
CS1104-11
J-K Flip-Ffop
24
J-K Flip-flop
J-K flip-flop.
J
Q
Pulse
transition
detector
CLK
Q'
Characteristic table.
J
CLK
Q(t+1)
Comments
0
0
1
1
0
1
0
1
Q(t)
0
1
Q(t)'
No change
Reset
Set
Toggle
J-K Flip-flop
J K
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Q(t+1)
0
0
1
1
1
0
1
0
25
T Flip-flop
T flip-flop: single-input version of the J-K flip flop,
formed by tying both inputs together.
T
Pulse
transition
detector
CLK
CLK
Q'
Q'
Characteristic table.
T
CLK
Q(t+1)
Comments
Q T
0
1
Q(t)
Q(t)'
No change
Toggle
0
0
1
1
0
1
0
1
Q(t+1)
0
1
1
0
T Flip-flop
26
T Flip-flop
Application: Frequency division.
High
High
J
CLK
High
CLK
K
CLK
CLK
QA
QA
QB
QB
T Flip-flop
27
Asynchronous Inputs
S-R, D and J-K inputs are synchronous inputs, as
CS1104-11
Asynchronous Inputs
28
Asynchronous Inputs
A J-K flip-flop with active-LOW preset and clear inputs.
PRE
PRE
J
CLK
Q'
Q
Pulse
transition
detector
Q'
K
CLR
CLR
CLK
PRE
CLR
J = K = HIGH
CS1104-11
Preset
Asynchronous Inputs
Toggle
Clear
29
End of segment