CEN214_Asynchronous Circuit.pdf

85
 Asynchronou s Sequential L ogic Chapter 9

Transcript of CEN214_Asynchronous Circuit.pdf

Page 1: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 1/85

 Asynchronous Sequential Logic

Chapter 9

Page 2: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 2/85

Digital Circuits 2

9.1 Introduction

Synchronous sequential circuits Flip-flops share a single clock

Asynchronous sequential circuits

Page 3: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 3/85

Digital Circuits 3

Fig. 9.1Block diagram ofan asynchronoussequential circuit

Block Diagram of an AsynchronousSequential Circuit

Page 4: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 4/85

Digital Circuits 4

no clock pulse

Memory elements in asynchronous circuits are either

unclocked flip-flops or time delay elements

In a gate-type circuit, the propagation delay thatexists in the combinational circuit path from input to

output provides sufficient delay along the feedback

loop so that no specific delay elements are actually

inserted in the feedback path

difficult to design: Timing problems involved in the

feedback path

 Asynchronous Sequential Circuit

Page 5: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 5/85

Digital Circuits 5

must attain a stable state before the input is changedto a new value

Because of delays in the wires and the gates, it is

impossible to have two or more input variables

change at exactly the same instant of time without anuncertainty as to which one changes first.

Therefore, simultaneous changes of two or more

variables are usually prohibited.

This restrictions means that only one input variable

can change at any one time and the time between

two input changes must be longer than the time it

takes the circuit to reach a stable state.

 Asynchronous Sequential Circuit

Page 6: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 6/85

Digital Circuits 6

9-2 Analysis Procedure

The procedure:

Determine all feedback loops

 Assign Yi's (excitation variables), yi's (the

secondary variables)

Derive the Boolean functions of all Yi's

Plot each Y function in a map

Construct the state table

Circle the stable states

Page 7: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 7/85Digital Circuits 7

the excitation variables: Y1 and Y2

Y1 = xy1+ x'y2

Y2 = xy1' + x'y2

Fig. 9.2Example of anasynchronoussequential circuit

Example:

Page 8: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 8/85Digital Circuits 8

the y variables for the rows

the external variable for the columns

Circle the stable states

Y = y

Fig. 9.3

Maps andtransitiontable for thecircuit of Fig.9.2

Maps and Transition Table

Page 9: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 9/85Digital Circuits 9

State Transition Table

Page 10: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 10/85Digital Circuits 10

The difference:

synchronous design: state transition happens only

when the triggering edge of the clock

asynchronous design: the internal state can

change immediately after a change in the input

The total state of the asynchronous circuit

Combine internal state with the input value

y: the present state Y: the next state

Page 11: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 11/85Digital Circuits 11

a state transition table with its internal state being

symbolized with letters

Fig. 9-4(a) is called a primitive flow table because

it has only one stable state in each row

Fig. 9.4Example of flow

tables

Flow Table

Page 12: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 12/85Digital Circuits 12

state assignment derive the logic diagram

Fig. 9.5Derivation of acircuit specifiedby the flow tableof Fig. 9.4(b)

Example:

Page 13: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 13/85Digital Circuits 13

When two or more binary state variables

change value

00 11

00 10 11 or 00 01 11

 A noncritical race

if they reach the same final state

otherwise, a critical state

Race Conditions

Page 14: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 14/85

Digital Circuits 14

Fig. 9.6Examples of non-

critical races

Noncritical Race

Page 15: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 15/85

Digital Circuits 15

Fig. 9.7

Examples of critical races

Critical Race

Page 16: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 16/85

Digital Circuits 16

Races may be avoided

race-free assignment: Section (9-6)

Proper binary assignment to the state variables.

The state variable must be assigned binary numbers

such that only one state can change at any one time

insert intermediate unstable states with a unique

state-variable change. It is said to have a cycle.

 A cycle a unique sequence of unstable states

Races

Page 17: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 17/85

Digital Circuits 17

a unique sequence of unstable states

Fig. 9.8

Examples of cycles

Cycle

Page 18: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 18/85

Digital Circuits 18

 A square waveform generator?

Fig. 9.9Example of anunstable circuit

Stability Considerations

 Y = (x1y)’x2

 Y = x1’x2 +y’x2

Page 19: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 19/85

Digital Circuits 19

Stability Considerations

Note that column 11 has no stable states.

This mean that with inputs x1x2 fixed at 11,the value of Y and y are never the same.

5 ns 5 ns1

1

10 ns10 ns

Frequency = 1 / 20ns = 50 MHz

Page 20: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 20/85

Digital Circuits 20

9-3 Circuits with Latches

 Asynchronous sequential circuits were known and used before synchronous design

the use of SR latches in asynchronous circuits

produces a more orderly pattern

reduce the circuit complexity

Page 21: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 21/85

Digital Circuits 21

SR Latch - Two Cross-Coupled NOR Gates

Fig. 9.10

SR  latch with NOR gates

Page 22: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 22/85

Digital Circuits 22

Y = ((S+y)'+R)' = (S+y)R' = SR'+R'y

the state transition table

an unpredictable result when SR: 11 00

SR = 0 in operation

SR' + SR = S(R'+R) = S

  Y = S + R'y when SR = 0

two cross-coupled NAND gate

S'R' = 0 Y = (S(Ry)')' = S'+ Ry when S'R' = 0

S'R' latch

SR Latch

Page 23: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 23/85

Digital Circuits 23

Fig. 9.11

SR  latch with NAND gates

SR Latch - Two Cross-Coupled NAND Gates

Page 24: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 24/85

Digital Circuits 24

 Analysis Example:

Fig. 9.12

Examples ofa circuit withSR  latch

Page 25: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 25/85

Digital Circuits 25

Label each latch output with Yi and its external

feedback path with yi

Derive the Boolean functions for the Si and Ri

S1 = x1y2

R1 = x'1x'2

S2 = x1x2

R2 = x'2y1

Check whether SR=0 for each NOR latch or

whether S'R'=0 for each NAND latch S1R1 = x1y2x'1x'2 = 0

S2R2 = x1x2x'2y1 = 0

 Analysis Example (Continued):

Page 26: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 26/85

Digital Circuits 26

Evaluate Y = S +R'y for each NOR latch

or Y = S' + Ry for each NAND latch  Y1 = x1y2 + (x1+x2)y1 = x1y2+x1y1+x2y1

 Y2 = x1x2 + (x2+y'1)y2 = x1x2+x2y2+y'1y2

Construct the state transition table

Circle all stable statesRace example:

Let initial state is

y1y2x1x2=1101

input x2

is changed to 0

if Y1 change to 0 before Y2

then y1y2x1x2=0100

instead of 0000

Fig. 9.13

Transition table for the circuit of Fig. 9.12

 Analysis Example (Continued):

Page 27: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 27/85

Digital Circuits 27

 Analysis Procedure

Page 28: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 28/85

Digital Circuits 28

Latch Excitation Table

For SR  latch:

0

Page 29: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 29/85

Digital Circuits 29

Fig. 9.14Derivation of alatch circuitfrom a

transition table

Implementation Example

Page 30: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 30/85

Digital Circuits 30

Determine the Boolean functions for the S

and R inputs of each latch Given a transition table

From maps: the simplified Boolean functions are

NOR latch

NAND latch

Implementation Example

General Procedure for Implementing a

Page 31: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 31/85

Digital Circuits 31

Derive a pair of maps for Si and Ri

Derive the simplified Boolean functions for

each Si and Ri

DO NOT make Siand R

iequal to 1 in the

same minterm square

Draw the logic diagram

for NAND latches, use the complemented values

of those Si and Ri

General Procedure for Implementing aCircuit with SR Latches

Page 32: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 32/85

Digital Circuits 32

Remove the series of pulses that result form

a contact bounce and produce a single

smooth transition of the binary signal

TTL: input = logic-1 when open

Fig. 9.15Debounce circuit

Debounce Circuit

Page 33: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 33/85

Digital Circuits 33

9-4 Design Procedure

Design specifications a gated latch

two inputs, G (gate) and D (data)

one output, Q

G = 1: Q follows D

G = 0 : Q remains unchanged

Page 34: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 34/85

Digital Circuits 34

 All the total states

combinations of the inputs and internal states

simultaneous transitions of two input variables are

not allowed

Design Procedure

Page 35: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 35/85

Digital Circuits 35

Primitive flow table

dash marks in each row that differs in two or morevariables from the input variables associated withthe stable state

don't care condition for the next state and output

Fig. 9.16Primitive flow table

Design Procedure

Page 36: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 36/85

Digital Circuits 36

Reduction of the primitive flow table two or more rows in the primitive flow table can be

merged if there are non-conflicting states and

outputs in each of the columns

Design Procedure

Page 37: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 37/85

Digital Circuits 37

Fig. 9.17

Reduction of the primitive flow table

Design Procedure

Page 38: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 38/85

Digital Circuits 38

Transition table and logic diagram

State assignment discussed in details in Sec. 9-6

a:0, b:1

Fig. 9.18Transition table and output map for gated latch

Design Procedure

Page 39: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 39/85

Digital Circuits 39

the output

logic diagram

Fig. 9.19Gated-latch logic diagram

Design Procedure

Page 40: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 40/85

Digital Circuits 40

Fig. 9.20

Circuit with SR  latch

Design Procedure

SR latch implementation

Page 41: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 41/85

Digital Circuits 41

Fig. 9.21 Assigning output valuesto unstable states

Design Procedure

 Assign outputs to unstable states

the unstable states have unspecified output values no momentary false outputs occur when the circuit

switches between stable states

00: 0

1 1: 1

0 1, 1 0: -

0

0

1

1

Page 42: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 42/85

Digital Circuits 42

The procedure for making the assignment to

outputs associated with unstable states canbe summarized follows:

Design Procedure

Page 43: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 43/85

Digital Circuits 43

Summary a primitive flow table

state reduction

state assignment

output assignment

Simplify the Boolean functions of the excitation

and output variables and draw the logic diagram

Design Procedure

Page 44: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 44/85

Digital Circuits 44

9-5 Reduction of State and Flow Tables

Equivalent states

for each input, two states give exactly the same

output and go to the same next states or to

equivalent next states

Page 45: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 45/85

Digital Circuits 45

(a,b) are equivalent if (c,d) are equivalent

(a,b) imply (c,d) (c,d) imply (a,b)

both pairs are equivalent

Reduction of State and Flow Tables

Page 46: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 46/85

Digital Circuits 46

The checking of each pair of states for

possible equivalence

Reduction of State and Flow Tables

Page 47: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 47/85

Digital Circuits 47

Fig. 9.22Implication table

Reduction of State and Flow Tables

Page 48: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 48/85

Digital Circuits 48

the equivalent states (a,b), (d,e), (d,g), (e,g)

the reduced states (a,b), (c), (d,e,g), (f)

the state table

Reduction of State and Flow Tables

a

b

c

d

e

f g

(f)(d,e,g)(c)(a,b)Compatibles

-(d,e)-(d,e)Implied states

(a,b), (c), (d,e,g), (f)

- cover all the states- closed

d i f d l bl

Page 49: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 49/85

Digital Circuits 49

Merging of the Flow Table

consider the don't-care conditions

combinations of inputs or input sequences may

never occur 

two incompletely specified states that can be

combined are said to be compatible

for each possible input they have the same output

whenever specified and their next states are

compatible whenever they are specified

determine all compatible pairs

find the maximal compatibles

find a minimal closed covering

Reduction of State and Flow Tables

d i f S d l bl

Page 50: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 50/85

Digital Circuits 50

Compatible pairs

(a,b) (a,c) (a,d) (b,e) (b,f) (c,d) (e,f)

Fig. 9.23Flow and

implication tables

Reduction of State and Flow Tables

R d i f S d Fl T bl

Page 51: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 51/85

Digital Circuits 51

Maximal Compatibles

a group of compatibles that contains all thepossible combinations of compatible states

Merger Diagram

Fig. 9.24

Merger diagram

Reduction of State and Flow Tables

R d ti f St t d Fl T bl

Page 52: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 52/85

Digital Circuits 52

An isolated dot: a state that is not compatible to

any other state A line: a compatible pair 

A triangle: a compatible with three states

An n-state compatible: an n-sided polygon with

all its diagonals connected

Fig. 9.24

Merger diagram

Reduction of State and Flow Tables

R d ti f St t d Fl T bl

Page 53: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 53/85

Digital Circuits 53

Closed covering condition

cover all the states

closed

no implied states or the implied states are included within

the set

(a,c,d) (b,e,f) cover all the states

no implied states

Reduction of State and Flow Tables

a

bc

d

e

(b,e,f)(a,c,d)(a,b)Compatibles

---Implied states

R d ti f St t d Fl T bl

Page 54: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 54/85

Digital Circuits 54

Fig. 9.25Choosing a set ofcompatibles

Reduction of State and Flow Tables

Primitive flow table is not shownanother example

R d ti f St t d Fl T bl

Page 55: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 55/85

Digital Circuits 55

(a,b) (c,d,e)

cover all the states but not closed

(b,c) are implied but not included

(a,d) (b,c) (c,d,e) cover all the states

closed

implied states: (b,c) (d,e) (a,d)

the same state can be repeated more than once

The original flow table (not shown) can be reduced

from five rows to three rows by merging rows a

and b, b and c, and c, d, and e.

Reduction of State and Flow Tables

9 6 R F St t A i t

Page 56: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 56/85

Digital Circuits 56

9-6 Race-Free State Assignment

To avoid critical races

only one variable changes at any given time Three-row flow-table example

flow-table and transition diagram example

Fig. 9.26

Three-row flow-table example

R F St t A i t

Page 57: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 57/85

Digital Circuits 57

an extra row is added

no stable state in row d

Fig. 9.27

Flow-table with an extra row

Race-Free State Assignment

Race Free State Assignment

Page 58: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 58/85

Digital Circuits 58

Fig. 9.28

Flow-table with an extra row

Race-Free State Assignment

Transition Table:

Race Free State Assignment

Page 59: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 59/85

Digital Circuits 59

Four-row flow-table example

flow-table and transition diagram

Fig. 9.29

Four-row flow-table example

Race-Free State Assignment

Race Free State Assignment

Page 60: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 60/85

Digital Circuits 60

add extra rows

Fig. 9.30Choosing extra rows for the flow table

Race-Free State Assignment

Race Free State Assignment

Page 61: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 61/85

Digital Circuits 61

State b is assigned to 001 (randomly).

State b is adjacent to the other three original

states (a, c, d).

Transition a(000) d(101) directed thru e.

Transition c(011) a(000) directed thru g.

Transition d(101) c(011) directed thru f.

Race-Free State Assignment

Race Free State Assignment

Page 62: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 62/85

Digital Circuits 62

The modified flow table

Fig. 9.31State assignment tomodified flow table

Race-Free State Assignment

Race Free State Assignment

Page 63: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 63/85

Digital Circuits 63

less efficient

multiple equivalent

states for each

state

Fig. 9.32Multiple-row assignment

Race-Free State Assignment

Multiple-row method

Race Free State Assignment

Page 64: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 64/85

Digital Circuits 64

The expanded table is formed by replacing each row of the

original table with two rows.

For example, row b is replaced by rows b1 and b2.

Stable state b is entered in columns 00 and 11 in both b1 and b2.

 After all the stable states have been entered, the unstablestates are filled in by reference to the binary assignment

When choosing the next state for a given present state, a state

which is adjacent to the present state is selected from the map.

Race-Free State Assignment

Multiple-row method

9 7 Hazards

Page 65: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 65/85

Digital Circuits 65

9-7 Hazards

Unwanted switching transients at the output

different paths exhibit different propagation delays

temporary false-output value in combinational

circuits

may result in a transition to a wrong stable state in

asynchronous sequential circuits

Hazards

Page 66: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 66/85

Digital Circuits 66

Hazards in combinational circuits

examples

Fig. 9.33Circuits with hazards

Hazards

Hazards

Page 67: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 67/85

Digital Circuits 67

static 1-hazard (sum of products)

the removal of static 1-hazard guarantees that no static0-hazards or dynamic hazards

Fig. 9.34Types of hazards

Hazards

Hazards

Page 68: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 68/85

Digital Circuits 68

static 0-hazard (product of sum)

Y = (x1+x2')(x2+x3)

The remedy

the circuit moves from one product term to another 

additional redundant gate

Fig. 9.35Maps illustrating a hazard and its removal

Hazards

Hazards

Page 69: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 69/85

Digital Circuits 69

Hazard-free circuit

Fig. 9.36Hazard-free circuit

Hazards

Hazards

Page 70: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 70/85

Digital Circuits 70

Hazards in sequential circuits in general, no problem for synchronous design an asynchronous example

Fig. 9.37

Hazard in aasynchronoussequentialcircuit

Hazards

#1

#2

Hazards

Page 71: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 71/85

Digital Circuits 71

Because of hazard, output Y may go to 0 momentarily.

If the false signal feed back into the AND gate #2 before the output of the

inverter goes to 1, the output of gate 2 will remain at 0 and the circuit will

switch to the incorrect total stable state 010.

The malfunction can be eliminated by adding an extra gate.

Hazards

#1

#2

1 0

010

01

0

111 110111 010

Hazards

Page 72: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 72/85

Digital Circuits 72

Implementation with SR latches a momentary 0 signal at the S or R inputs of NOR

latch has no effect

a momentary 1 signal at the S or R inputs of

NAND latch has no effect

Hazards

Hazards

Page 73: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 73/85

Digital Circuits 73

Implementation with SR latches

Fig. 9.38

Latch implementation

Hazards

Hazards

Page 74: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 74/85

Digital Circuits 74

Implementation with SR latches

For NAND SR latch:

Hazards

Hazards

Page 75: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 75/85

Digital Circuits 75

Essential Hazards

asynchronous sequential circuits

unequal delays along two or more paths that

originate from the same input

cannot be corrected by adding redundant

gates

the delay of feedback loops > delays of other

signals that originate from the input terminals

Hazards

9.8 Design Example

Page 76: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 76/85

Digital Circuits 76

Summary of design procedure State the design spec.

Derive the primitive flow table

Reduce the flow table by merging the rows

Race-free state assignment Obtain the transition table and output map

Obtain the logic diagram using SR latches

9.8 Design Example

Design Specification

Page 77: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 77/85

Digital Circuits 77

Design Specification

Primitive Flow table

Page 78: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 78/85

Digital Circuits 78

Primitive Flow table

Fig. 9.39

Primitive flow table

Merging of the Flow Table

Page 79: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 79/85

Digital Circuits 79

Merging of the Flow Table

Fig. 9.40Implication table

  Compatible pairs:

  Maximal compatible set:

Merging of the Flow Table

Page 80: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 80/85

Digital Circuits 80

Merging of the Flow Table

Fig. 9.41Merger diagram

(d,e,f)(c,h)(b,g,h)(a,f)Compatibles----Implied states

(a,f), (b,g,h), (c,h), (d,e,f)- cover all the states- closed

Closure Table

Merging of the Flow Table

Page 81: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 81/85

Digital Circuits 81

Merging of the Flow Table

Fig. 9.42Reduced flow table

State Assignment and Transition Table

Page 82: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 82/85

Digital Circuits 82

a e ss g e a d a s o a e

Fig. 9.43Transition diagram

State Assignment and Transition Table

Page 83: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 83/85

Digital Circuits 83

g

Fig. 9.44Transition table and output map

1

1

0

0

Logic Diagram

Page 84: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 84/85

Digital Circuits 84

Fig. 9.45Maps for latchinputs

g g

Logic Diagram

Page 85: CEN214_Asynchronous Circuit.pdf

7/23/2019 CEN214_Asynchronous Circuit.pdf

http://slidepdf.com/reader/full/cen214asynchronous-circuitpdf 85/85

Fig. 9.46Logic diagram of negative-edge triggered T flip flop

g g