Title: Digital Logic Design
1Digital Logic Design
- Lecture 18
- University of Tehran
2Outline
- Other Kinds of Flip Flops
- Dynamic Logic
- Sequential Circuit Design
- Designing a 110 Detector
3Other Kinds of Flip Flops
- Last session we saw a D flip flop with a master
slave structure, now lets see a SR flip flop
with the same master slave structure as before.
The same differences between the D latches and
master slave D flip flops can be observed between
the corresponding SR latches and SR flip flops,
this difference being the isolation of data in
flip flops.
4Other Kinds of Flip Flops (continued)
- The problem we had with SR latches still exists
in SR flip flops, that is we cant have activity
on both S and R lines at the same time. When
either of these 2 components is working properly
the output lines should have complemented values,
that is when line 1 is set to be high, line 2
must be low and vice versa.
5Other Kinds of Flip Flops (continued)
- The mentioned problem can be solved by adding the
red feedback lines to the circuit, thus disabling
the set line when the circuit is in its set state
and disabling the reset line when the circuit is
in a reset state. Doing this will not effect
ordinary functionality of our circuit as it
doesnt change our ability in changing states.
6Other Kinds of Flip Flops (continued)
- This representation, shows an altered form of the
SR flip flop called a JK Flip Flop and can be
represented in the following forms
7Other Kinds of Flip Flops (continued)
- Quote Structures that work on the clock pulse,
such as JK flip flop are called pulse triggered.
Structures that work with the rising or falling
edge of the clock are called edge triggered,
which work slightly faster than the pulse
triggered structures but are less reliable. - Note When we look at a pulse triggered and
falling edge triggered on an oscilloscope
alongside one another, they dont differ much on
timing manners but their structures are
completely different.
8Other Kinds of Flip Flops (continued)
- In the shown JK flip flop, if we connect the J
and K inputs to each other, we have a toggle flip
flop that keeps its output when clocked on a low
input and toggles the output when clocked on a
high input.
9Other Kinds of Flip Flops (continued)
- Flip flops can always be made from each other
using some discrete logic, for instance consider
the following example. Making a JK flip flop
from a D flip flop
10Dynamic Logic
- The basis of this sequential logic is of the
following shape, instead of the cross coupled
gates we have seen so far - This structure which is called a half register
stores the data inputted from the NMOS input as
capacity charge in the inverter when the clock
rises to 1, and will keep the data until the
capacitors charge starts to fade.
11Dynamic Logic (continued)
- Using the half register shown, we have the
Dynamic D type master slave flip flop as shown in
the figure - When c is 1, data is stored in the first
inverter structure and when it goes 0, data is
stored in the second.
12Dynamic Logic (continued)
- The main problem in these structures in that its
data can quickly fade, and will need refreshing
to keep its amount (that is when it is not
clocked with new data for a while). This
refreshing is done by feedbacking the output to
the input as seen in red.
13Dynamic Logic (continued)
- Quote The transistors controlled by signal E
is driven by the pull up on the levels that come
before this structure. - Another point that must be taken to mind is that
we use non-overlapping signals c1 and c2, instead
of c and c for control signals to avoid any
transparency that may occur otherwise. This
structure is called a 2 phase non-overlapping
clock structure.
14Sequential Circuit Design
- We have seen basic discrete components in
sequential design that are gates and flip flops.
In sequential circuits, there are certain models
that are usually followed. The model we will be
using in which everything happening is
synchronized to a clock that is implicitly part
of our circuit is called the Huffman Model as
seen in the following figure
15Sequential Circuit Design (continued)
- Each sequential circuit that you will see has a
combinational part and a register part where the
register part feedbacks its output to the
combinational part. What we need to be able to
design such circuits with practical speed is a
straight forward method. - We saw that a flip flop (the main part in the
register section of our model) has different
representation, them being transition table,
characteristic equation, excitation table, state
diagram. Among these different representations,
the state diagram is the nearest to our way of
thought.
16Sequential Circuit Design (continued)
- Using the state diagram as a basis to build on,
from now on, the design flow will run from the
problem description to state diagrams, a
transition table and finally the circuit
itself.
17Designing a 110 Detector
- As our first design we will see a 110 detector
that will give a high output whenever clocked
with such a sequence on its input. - Obviously such a circuit is sequential because
its output relies on a series of certain inputs
in its history.
18Designing a 110 Detector (continued)
- Note In synchronous sequential circuits such as
that of this problem, anything happening when the
clock is in its active state. - Note When doing our design of sequential
circuits we consider the clock pulse to be
implicit and no gating must be done on this
signal. - To do our circuit design of this problem we start
from its state diagram. We may even not know how
many states we need but we work our way through
the different states.
19Designing a 110 Detector (continued)
- This problem can be the same as looking for a
special sequence of shops when walking along a
road. Consider you are looking for 2 book shops
followed by a grocery store. Now if we see a
grocery store first we simply ignore it (meaning
that we stay in our initial state), but seeing a
book shop we will need to remember that we have
passed the first shop we were looking for in that
special sequence (meaning that we change to a new
state).
20Designing a 110 Detector (continued)
- The same method can be applied to our problem,
where seeing a 0 is seeing a grocery store and a
1 is a book shop. Thus as we saw above seeing a
0 first must not change our state and so on.
Applying this method to our problem gives the
following state diagram
21Designing a 110 Detector (continued)
- In our flow of design the only part that doesnt
actually involve mechanical steps is the drawing
of the problems state diagram. The rest that we
see next session is just a series of straight
forward steps that can be done by hand or using
simulation tools.