Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Sequential Circuits
Computer Engineering
2016
87
Sequential Circuits
Saving 1 Bit
Overview
Saving 1 Bit
Computer Engineering
2016
88
Sequential Circuits
Saving 1 Bit
Computer Engineering
2016
89
Sequential Circuits
Saving 1 Bit
Computer Engineering
2016
90
Sequential Circuits
Saving 1 Bit
Sequential Circuits
Q(R, S) = (S (R (S (R (S . . . ?
so how does it work?
Computer Engineering
2016
91
Sequential Circuits
Saving 1 Bit
Storing 0
Q = (0 1) = 0
Q = (0 0) = 1
Storing 1
Q = (0 0) = 1
Q = (0 1) = 0
Computer Engineering
2016
92
Sequential Circuits
Saving 1 Bit
Set
Reset
Computer Engineering
2016
93
Sequential Circuits
Saving 1 Bit
State Table
State Table for a Latch
S
0
0
1
1
0
0
1
1
R
0
1
0
1
0
1
0
1
Q(t)
0
0
0
0
1
1
1
1
Q(t + 1)
0
0
1
1
0
1
(characteristic table)
undefined.
Computer Engineering
2016
94
Sequential Circuits
Overview
Computer Engineering
2016
95
Sequential Circuits
Timing
timing
Computer Engineering
2016
96
Sequential Circuits
Gate Delay
other factors.
Computer Engineering
2016
97
Sequential Circuits
tPHL
x y
Computer Engineering
2016
98
Sequential Circuits
Logic Glitches
For a short moment, a circuit may have a wrong output because of
propagation delay
Circuit for x y
x
y
inputs change from both 0 to
both 1. The output should
always be 0.
inv
and
Computer Engineering
2016
99
Sequential Circuits
Handling Glitches
Computer Engineering
2016
100
Sequential Circuits
Handling Glitches
Computer Engineering
2016
100
Sequential Circuits
Clocks
a clock is a special signal that toggles its value between 0 and 1 n
5.2 GHz
Clock Signal
clk
Computer Engineering
2016
101
Sequential Circuits
Clock Signal
falling
clk
high
Computer Engineering
low
2016
102
Sequential Circuits
Overview
Computer Engineering
2016
103
Sequential Circuits
Clocked SR-Latch
Now we use a clock to control writing to a latch
Clocked SR-Latch
Computer Engineering
2016
104
Sequential Circuits
D-Latch
We can improve this design
The problematic case when both inputs are 1 should not occur
Solution: We use one input called D (data) to set or reset the latch.
Clocked D-Latch
Computer Engineering
2016
105
Sequential Circuits
Edge-Triggering a Latch
Computer Engineering
2016
106
Sequential Circuits
Pulse Generator
Circuit and Timing Diagram
clock
output
the NOT-gate has a short delay tP
Computer Engineering
2016
107
Sequential Circuits
D-Flip-Flop
If we combine this pulse generator with a clocked D-latch, we get the
following circuit:
D-Flip-Flop
Computer Engineering
2016
108
Sequential Circuits
D-Flip-Flop Behaviour
The content of the D-input is saved when the clock goes from 0 to 1
this is called the rising edge of the clock signal
the flip-flop is set synchronously
Timing Diagram
clock
D
Q
Computer Engineering
2016
109
Sequential Circuits
Asynchronous Set/Reset
Some flip-flops also allow asynchronous (re-)set
In this case they have extra inputs that change without depending on
the clock
Computer Engineering
2016
110
Sequential Circuits
Symbols
From now on we will use symbols for latches and flipflops. The clock input
is denoted by a triangle.
SR-Latch
clocked SR-Latch
D-FF async.SR
D-FF in Logisim
Computer Engineering
D-FlipFlop
2016
111
Sequential Circuits
Building a Register
To get bigger memory we can simply combine flipflops
The circuit we get this way is called a register
4-Bit Register
Computer Engineering
2016
112
Sequential Circuits
Building RAM
our memory chip would need at least 2 pins for every bit.
So we need a clever way to put those flip-flops together
Computer Engineering
2016
113
Sequential Circuits
We put the same input to all flip-flops, they are only written when
selected
Computer Engineering
2016
114
Sequential Circuits
Inputs needed:
1 data in
2 address bits (choose which flip-flop to read or write)
3 read bit (do we want to read or write?)
4 chip select (tell the chip if we want to use it)
Outputs needed:
data out
Computer Engineering
2016
115
Sequential Circuits
Computer Engineering
2016
116
Sequential Circuits
RAM: Addressing
Computer Engineering
2016
117
Sequential Circuits
Computer Engineering
2016
118
Sequential Circuits
Controlled Buffer
Computer Engineering
2016
119
Sequential Circuits
A Complete 44 RAM
Example RAM
Computer Engineering
2016
120
Sequential Circuits
44 RAM: Observations
When RD is 1, the RAM is read, when its 0 the data input is written
to activate the output lines, OE (output enable) has to be set to 1
only the row of flip-flops activated by the two address bits can be
accessed
Computer Engineering
2016
121