EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential...

46
EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS
  • date post

    22-Dec-2015
  • Category

    Documents

  • view

    219
  • download

    1

Transcript of EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential...

Page 1: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

EE365Adv. Digital Circuit Design

Clarkson University

Lecture #10

Latches, Flip Flops & Sequential PALS

Page 2: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Topics

• Basic Definitions

• Latches

• Edge-Triggered Flip-Flops

• Timing Requirements

Rissacher EE365Lect #10

Page 3: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Sequential Circuits

• Output depends on current input and past history of inputs.

• “State” embodies all the information about the past needed to predict current output based on current input.– State variables, one or more bits of

information.

Rissacher EE365Lect #10

Page 4: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Describing Sequential Circuits

• State table– For each current-state,

specify next-states as function of inputs

– For each current-state, specify outputs as function of inputs

Rissacher EE365Lect #10

Page 5: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Describing Sequential Circuits

• State diagram– Graphical version of state table

Rissacher EE365Lect #10

Page 6: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Clock signals

• Very important with most sequential circuits– State variables change state at clock edge.

Rissacher EE365Lect #10

Page 7: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Bistable element• The simplest sequential circuit

• Two states– One state variable, say, Q

HIGH LOW

LOW HIGH

Rissacher EE365Lect #10

Page 8: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Bistable element• The simplest sequential circuit

• Two states– One state variable, say, Q

LOW HIGH

HIGH LOW

Rissacher EE365Lect #10

Page 9: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Analog analysis• Assume pure CMOS thresholds, 5V rail

• Theoretical threshold center is 2.5 V

Rissacher EE365Lect #10

Page 10: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Analog analysis

• Assume pure CMOS thresholds, 5V rail

• Theoretical threshold center is 2.5 V2.5 V 2.5 V

2.5 V 2.5 V

Rissacher EE365Lect #10

Page 11: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Analog analysis

• Assume pure CMOS thresholds, 5V rail

• Theoretical threshold center is 2.5 V

2.5 V

2.5 V 2.5 V

2.0 V

2.0 V 4.8 V

2.5 V2.51 V4.8 V 0.0 V

0.0 V 5.0 V

Rissacher EE365Lect #10

Page 12: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Metastability

• Metastability is inherent in any bistable circuit

• Two stable points, one metastable point

Rissacher EE365Lect #10

Page 13: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Another look at metastability

Rissacher EE365Lect #10

Page 14: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

“sube y baja” behavior

Rissacher EE365Lect #10

Page 15: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Why all the harping on metastability?

• All real systems are subject to it– Problems are caused by “asynchronous inputs” that

do not meet flip-flop setup and hold times.– Details in Chapter-7 flip-flop descriptions and in

Section 8.9– Especially severe in high-speed systems– since clock periods are so short, “metastability

resolution time” can be longer than one clock period.

• Many digital designers, products, and companies have been burned by this phenomenom.

Rissacher EE365Lect #10

Page 16: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Back to the bistable….

• How to control it?– Screwdriver– Control inputs

• S-R latch

Rissacher EE365Lect #10

Page 17: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

S-R latch operation

Metastability is possibleif S and R are negatedsimultaneously.

(try it in Foundation)

Rissacher EE365Lect #10

Page 18: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

S-R latch timing parameters

• Propagation delay

• Minimum pulse width

Rissacher EE365Lect #10

Page 19: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

S-R latch symbols

Rissacher EE365Lect #10

Page 20: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

S-R latch using NAND gates

Rissacher EE365Lect #10

Page 21: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

S-R latch with enable

Rissacher EE365Lect #10

Page 22: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

D latch

Rissacher EE365Lect #10

Page 23: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

D-latch operation

Rissacher EE365Lect #10

Page 24: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

D-latch timing parameters• Propagation delay (from C or D)

• Setup time (D before C edge)

• Hold time (D after C edge)

Rissacher EE365Lect #10

Page 25: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Edge-triggered D flip-flop behavior

Rissacher EE365Lect #10

Page 26: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

D flip-flop timing parameters• Propagation delay (from CLK)

• Setup time (D before CLK)

• Hold time (D after CLK)

Rissacher EE365Lect #10

Page 27: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

TTL edge-triggered D circuit• Preset and

clear inputs– like S-R

latch

• 3 feedback loops– interesting

analysis

• Light loading on D and C

Rissacher EE365Lect #10

Page 28: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

CMOS edge-triggered D circuit• Two feedback loops (master and slave latches)• Uses transmission gates in feedback loops• Interesting analysis method (Sec. 7.9)

Rissacher EE365Lect #10

Page 29: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Other D flip-flop variations

• Negative-edge triggered

• Clock enable

• Scan

Rissacher EE365Lect #10

Page 30: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Scan flip-flops -- for testing

• TE = 0 ==> normal operation• TE = 1 ==> test operation

– All of the flip-flops are hooked together in a daisy chain from external test input TI.

– Load up (“scan in”) a test pattern, do one normal operation, shift out (“scan out”) result on TO.

Rissacher EE365Lect #10

Page 31: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

J-K flip-flops

• Not used much anymore

Rissacher EE365Lect #10

Page 32: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

T flip-flops

• Important for counters

Rissacher EE365Lect #10

Page 33: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

In Class Practice Problem

The characteristic Equation for a D latch is:

Q* = D

Write the Characteristic Equation for an S-R latch

Rissacher EE365Lect #10

Page 34: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

In Class Practice Problem

The characteristic Equation for an S-R latch is:

Q* = S + R’ • Q

Rissacher EE365Lect #10

Page 35: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

In Class Practice Problem #2

Write characteristic equations for each of the following:

• J-K flip flop• T flip flop• T flip flop with enable

Rissacher EE365Lect #10

Page 36: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

In Class Practice Problem #2

Rissacher EE365Lect #10

J-K flip flop:

T flip flop:

Page 37: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

In Class Practice Problem #2

Write characteristic equations for each of the following:

• J-K flip flop– Q* = J • Q’ + K’ • Q

• T flip flop– Q* = Q’

• T flip flop with enable– Q* = EN • Q’ + EN’ • Q

Rissacher EE365Lect #10

Page 38: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

• SSI LATCHES and Flip-Flops

Rissacher EE365Lect #10

Page 39: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Sequential PALs

• 16R8

Rissacher EE365Lect #10

Page 40: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

One output of 16R8

• 8 product terms to D input of flip-flop– positive edge triggered, common clock for all

• Q output is fed back into AND array– needed for state machines and other applications

• Common 3-state enable for all output pins

Rissacher EE365Lect #10

Page 41: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

PAL16R6

• Six registered outputs

• Two combinational outputs (like the 16L8’s)

Rissacher EE365Lect #10

Page 42: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

GAL16V8

• Each output is programmable as combinational or registered

• Also has programmable output polarity

Rissacher EE365Lect #10

Page 43: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

GAL16V8 output logic macrocell

Rissacher EE365Lect #10

Page 44: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

GAL22V10

• More inputs

• More product terms

• More flexibility

Rissacher EE365Lect #10

Page 45: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

GAL22V10 output logic macrocell

Rissacher EE365Lect #10

Page 46: EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.

Next time

• State Machine Types

• State machine Design

Rissacher EE365Lect #10