You are on page 1of 38

ELX 304 Electronic System Design

Part 1 Lesson 2
Design With Inputs

PowerPoint Slides
by Dr. Chow Li Sze

Last Updated:11/21/15

LMS SEGi education group

Aims

Designed several synchronous circuits with input(s).

Gained expertise in constructing state diagrams.

Last Updated:11/21/15

LMS SEGi education group

Flip-Flop State Diagram

D Flip-Flop

q* denote next state.

J-K Flip Flop

Last Updated:11/21/15

LMS SEGi education group

Flip-Flop State Diagram

S-R Flip Flop

T Flip Flop

Last Updated:11/21/15

LMS SEGi education group

General Design with a single input


Step 1: Problem statement: Pattern Generator

The problem is to generate a pattern as shown below.

If the input, X is a logic 0, then the pattern to be generated is in 6


steps.

If X=1, then a shortened pattern is produced, but the change can


only be initiated starting from the state whose output is 000.

A B C D E
F

A B C D E
F

6
steps
Last Updated:11/21/15

LMS SEGi education group

A B E
F

A B E
F

4
steps
5

Step 2: State diagram


input

x
=

Last Updated:11/21/15

LMS SEGi education group

Step 2: State diagram

In this example, there is one input (X), there will be 2 arrows


leaving each state.
In general, if there are n inputs, there will be 2n arrows leaving
each state.

Question:
If a state does not have any arrows leading to it, what is that
mean?
Answer:
That state represents an initial condition.

Last Updated:11/21/15

LMS SEGi education group

Step 3: State table


There are 2 next state for each present state

Notes: The State Table from Slide 8-13 doesnt match the corrected State
diagram in Slide 6 as in the UOS lecture notes. But they were used for
demonstration of the method.

Last Updated:11/21/15

LMS SEGi education group

Step 4: Flip-flops
Step 5: State Assignment

There are 6 states, so we need 3 flip-flops.


Lets choose J-K flip-flops.
We cannot make the state assignments the same as the
outputs, because the outputs of different states are the same!
We can choose the following state assignment:

Last Updated:11/21/15

A = 000
B = 001
C = 010
D = 011
E = 100
F = 101

LMS SEGi education group

Step 6: Excitation table

Last Updated:11/21/15

LMS SEGi education group

10

Change Table

Step 6: Excitation table


Use the Change Table to fill up the Excitation Table:

Last Updated:11/21/15

LMS SEGi education group

11

Step 7: Karnaugh Maps


inpu
t

J c = Kc = 1
Last Updated:11/21/15

LMS SEGi education group

12

Step 7: Karnaugh Maps


We require output maps for Z1Z2Z3 which depends only on the
PRESENT STATE.

Last Updated:11/21/15

LMS SEGi education group

13

Practice
Try it yourself for the Step 8: Circuit Diagram

Last Updated:11/21/15

LMS SEGi education group

14

Example 2: Pattern Detector

Problem Statement:

Last Updated:11/21/15

Design a synchronous circuit which will give a logic 1 for one


clock period when the following pattern is detected in a series
data stream .0 1 1 0
The final 0 can be the first 0 in the next pattern.
Use JK Flip-flops.
Typical sequence:

LMS SEGi education group

15

State Diagram
Start at some known situation: the
input is 0 and so is the output
(State A).
If the input stays at 0, then there is
no reason not to stay at state A.
But if the input changes to 1, then
we want to remember this, so we go
to state B, and the output is still 0.
If we now get a second 1, then we go to state C.
C effectively is a memory that we have detected 0 1 1.
If we now get a 0 input, this is the sequence we want so we go to
state D which has an output 1.

Last Updated:11/21/15

LMS SEGi education group

16

State Diagram
We now have to decide what happens
if the inputs dont follow the pattern we
want to detect.
In state B if we get a logic 0, we should
go back to A.
In state C if we get a logic 1, we have
to go to a new state E, because we
have now detected 3 logic 1s. We
then stay there until a logic 0 is
detected, when we go back to A, which
can be the start of a new sequence.

Last Updated:11/21/15

LMS SEGi education group

17

State Assignment
Finally, when we are in state D, a logic
0 should take us back to A, but a logic
1 will take us to state B (because B is
remembering 01).

There are 5 states, so 3 Flip-flops and a 3-bit state assignment is


needed.
We will choose A = 000, B = 001, C = 010, D = 011 and E = 100,
labelling the Flip-flop outputs as Q1Q2Q3 respectively.

Last Updated:11/21/15

LMS SEGi education group

18

Practice
Try it yourself to develop the:

State Table

Excitation Table

K-maps
Answer:

Last Updated:11/21/15

LMS SEGi education group

19

Example 3: Multiple Input

For a problem with 2 inputs, there will be 4 arrows leaving each


state!
Problem Statement:
A circuit has two inputs: X and Y.
The system must detect if both inputs are 0 or both inputs are 1
for three or more consecutive clock pulses.
The output must stay as logic 1 for as long as the sequence of
1s or 0 s is detected.
Use D Type Flip-flops.
Typical Sequence:

Last Updated:11/21/15

LMS SEGi education group

20

State Diagram

Last Updated:11/21/15

LMS SEGi education group

21

State Table

There are 7 states so we need 3 Flip-flops.


Since we have two inputs we shall need 5 variable K-maps!

Last Updated:11/21/15

LMS SEGi education group

22

State Assignment

There is clearly some symmetry between states BCD and EFG, so


we should make their state assignments follow a similar pattern.

We shall try the following:


A = 000, B = 001, C = 010, D = 011,
E = 101, F = 110, G = 111

State 100 is not used, because we want to match the above pattern.

D type Flip-flops were chosen because that will make the Excitation
Table simpler (although the resulting logic is likely to be more
complex overall).

Last Updated:11/21/15

LMS SEGi education group

23

Excitation Table
A

Last Updated:11/21/15

LMS SEGi education group

B
A
E
A
C
A
E
A
D
A
E
A
D
A
E
A
B
A
F
A
B
A
G
A
B
A
G
A
24

K-maps

The following 5 variable maps are each basically two 4-variable,


differing in the Q1 bit the left hand map is where Q1 = 0.
2
inputs

State 100 is not


used

Follow the order for input


XY

Last Updated:11/21/15

LMS SEGi education group

25

K-maps

Note that the dont care entries have been chosen to generate
symmetrical functions.

Last Updated:11/21/15

LMS SEGi education group

26

K-maps

symmetrical functions

Last Updated:11/21/15

LMS SEGi education group

27

K-maps

The output, Z, depends only on the states:

State 100 is not


used

Last Updated:11/21/15

LMS SEGi education group

28

Circuit
Diagram

Last Updated:11/21/15

LMS SEGi education group

29

Unwanted State

In every case, we go back to an appropriate state.

Last Updated:11/21/15

LMS SEGi education group

30

Summary
In this lesson, we have learned:

Synchronous design for one or two inputs for a range of


problems.

Developing state diagrams from a word specification.

There is no definitive solution, but there is an optimum State


Diagram.
Notes: The choices we make may not be wrong, but they may not
be optimum. The optimum may not in fact be achievable in any
sensible time.

Last Updated:11/21/15

LMS SEGi education group

31

Tutorial

Last Updated:11/21/15

LMS SEGi education group

32

Tutorial Q.3
Design a circuit which will produce the following repeated three
output pattern under the control of two inputs X and Y as defined
below:

Last Updated:11/21/15

LMS SEGi education group

33

Answer Q.3

Last Updated:11/21/15

LMS SEGi education group

34

Tutorial Q.4
Design a circuit which will detect the pattern .1011 in a serial
input. The final logic 1 in a detected pattern may form the first 1 in
the next pattern. When a pattern is detected the output must stay at
logic 1 for 2 clock periods.

Last Updated:11/21/15

LMS SEGi education group

35

Answer Q.4

Last Updated:11/21/15

LMS SEGi education group

36

Tutorial Q.5
Design a circuit which will give an output if a 3 bit serial word
contains an odd number of logic 1s. The output is only 1 at the
end of the word. Assume that the words have been synchronised
externally, so that we start with the first bit of the word and not
halfway though a word.

Last Updated:11/21/15

LMS SEGi education group

37

Answer Q.5

Last Updated:11/21/15

LMS SEGi education group

38