Synchronous Sequential Circuits
Synchronous Sequential Circuits
Introduction
System
Data
Reg File
Control
Logic
Reg
SM1
SM2
SM3
Since now what we have done is how to build a circuit that does an especial task for us, not important when the task was done, Data-path, But now we want to focus on when the task will be done, Controller. We start our discussion with a sequence detector. So the steps will be
Problem Description State assignment Excitation table State diagram Transition table Karaugh map State table Flip-flop type Circuit
Huffman Model
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
PI
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.
Comb.
PO
Seq.
C1
clock
Sequence 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.
x
110
c To do our circuit design of this problem we start from its state diagram. We may even not know how many states we need When doing our the design of sequential but In we work our way through different synchronous sequential circuits such as circuits we consider the clock pulse to be states.
that of this problem, anything happening implicit and no gating must be done on this when the clock is in its active state. signal.
Moore Machine
This The problem same method can be can the be same applied as to looking our problem, for a special where
sequence ofis shops when walking along a 1road. Consider seeing a 0 seeing a grocery store and a is a book shop. Thus aslooking we saw above a 0 first must not our you are for 2 seeing book shops followed bychange a grocery store. state Now and so if we on. seeApplying a grocery this store method first we to simply our problem ignore it (meaning gives the that following we stay state in our diagram initial state), but seeing a book shop we will need to remember that we have passed the first In our flow of design the only part that shop we were looking in mechanical that special sequence (meaning doesnt actually for involve steps is the drawing of the problems state diagram. that we change to a new state).
0 1 1 1 0
a 0
b 0
0
c 0
1
d 1
00use. flop we want to aBut it can a be b 0 explicitly. Because of the 4 states we have we will need implied from the fact 01 b(referring a that c Huffman 0 2 feedback lines to the transition we have referred to a next model) means 2 flip flops with one table and thisstate. d c 0 11 c clock on them. 10 d
+ +
+ (next state)
excitation table on a Karnaugh Map for D1 and D0 move what weve had so far to a Karnaugh Map.
x 0 1 1 Q+=D If we choose a D flip 1 0 1 0 0flop 00 0 x
x
D1
Combinational
Out-put(w) v1
1 1 1 1
00 0
0 1 1 0
01 0
11 0
x
clock
00
01 11
clock
00
v0
01
11
0
0
+ v0 0
1 01
00
D0
0 0
11 1
10 v1
clock
11
v0
10 w
0 10 0
v1
10
00 Huffman01 Model
1
w
0 = x
w = 1 .0
1 = x.0 + 1 .0
Mealy Machine
If we relax timing issues a little in our design, another sate
machine that can be more minimal can be used. In this machine called the Mealy Machine, the output is dependent on input changes and thus is no longer synchronized to the clock. The following is the Mealy machine for the 011 detector. The output changes to 1 as soon as the 0 of the sequence is seen.
0
0/0
1 0
1 0
1/0
1 0
1/0
x
D 1
1
00 01 11 10
00 01
00 01 11 10
c
0 0 1
1/0
0 0 0
v1
0a 1 0 1
0/0
0b 1 0
0/1
00 00 a
01 01 b 11 11 c
00 a
00 a
01 b
11 cD
0
0
0
0
v0
11 10
0 1
0 0
w
0 = x
1 = x.0
w = .1
00 a 11 c clock + +
out-put
In some cases, relaxing time issues of the problem and using Mealy machines can help a lot in less hardware use.
The contribution of the input signal to the output in Mealy machines means less precision because any hazard on the input (noise, hazards from the levels before etc) can easily propagate onto the output. Because of such problems, Mealy machines can be never used in very precise designs.
10
as well
a a a a b b c c d a a a
clock
x x
w (Moore machine)
x
w (Mealy machine)