master/slave flip flops - new mexico's flagship university...

42
MSFF Page 1 ECE 238L © 2006 MSFF Master/Slave Flip Flops

Upload: vuongtuong

Post on 27-May-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 1

ECE 238L © 2006

MSFF

Master/Slave Flip Flops

Page 2: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 2

ECE 238L © 2006

A Master/Slave Flip Flop (D Type)

Gated D latch(master) Gated D latch (slave)

D Q

Gate

D Q

Gate

D

GATE

QQ1

Either:The master is loading (the master in on)

orThe slave is loading (the slave is on)

But never both at the same time…

Page 3: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 3

ECE 238L © 2006

DFF Timing

Gate

Q1

MasterLoads

SlaveLoads

D

Q

MasterLoads

MasterLoads

SlaveLoads

SlaveLoads

time

D Q

Gate

D Q

Gate

D

GATE

QQ1

Page 4: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 4

ECE 238L © 2006

Output Changes in Response to Falling Clock

CLK

Q1

MasterLoads

MasterLoads

MasterLoads

SlaveLoads

SlaveLoads

SlaveLoads

D

Q

time

D Q

Gate

D Q

Gate

D

GATE

QQ1

Page 5: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 5

ECE 238L © 2006

DFF Detailed SchematicD

CLK

Q

Q’

Master latch (D)

Slave latch (SR)Usually call the gate “CLK”

Page 6: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 6

ECE 238L © 2006

A Falling Edge Triggered DFFD

CLK

Q

Q’

D

CLK

QD Q

Edge-triggered

Falling edge triggered

Page 7: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 7

ECE 238L © 2006

Oscillator (Toggle Circuit) Operation

Q

CLK

CLK

time

QD D Q

Page 8: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 8

ECE 238L © 2006

Rising Edge Triggered DFF Schematic

D

CLK

Q

Q’

D QD

CLKEdge-triggered

Q

Rising edge triggered

Page 9: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 9

ECE 238L © 2006

Oscillator (Toggle Circuit) Operation

Q

CLK

time

CLK

QD D Q

Page 10: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 10

ECE 238L © 2006

D Flip Flop Transition Table

D Q Q+

0 0 00 1 01 0 11 1 1

Q+ = D

No clock shown since it is edge triggered (assumed)

Page 11: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 11

ECE 238L © 2006

Falling vs. Rising Edge Triggered

D Q D QD

CLK CLK

Qfall Qrise

CLK

D

Qrise

Qfall

Page 12: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 12

ECE 238L © 2006

Alternative Flip Flops

TJK

Page 13: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 13

ECE 238L © 2006

Toggle Flip Flop

T Q Q+

0 0 00 1 11 0 11 1 0

NoAction

Toggle

T Q

CLK

QT

Q+ = T’•Q + T•Q’ = T + Q

Clock edge is assumedin this transition table…

Page 14: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 14

ECE 238L © 2006

Toggle Flip Flop

T Q Q+

0 0 00 1 11 0 11 1 0

NoAction

Toggle

T Q

CLK

QT

Q+ = T’•Q + T•Q’ = T + Q

D QT

Q

CLK

An oscillator with an enableinput (T)

Page 15: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 15

ECE 238L © 2006

Toggle Flip Flop

QT

CLK

Page 16: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 16

ECE 238L © 2006

JK Flip Flop

J K Q Q+

0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 0

No Change

Reset

Set

Toggle

J QK

CLK

QJK

Q+ = K’•Q + J•Q’Kind of a cross betweena SR FF and a T FF

Page 17: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 17

ECE 238L © 2006

JK Flip Flop

Q

J

CLK

K

Page 18: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 18

ECE 238L © 2006

Why Alternative FF’s?

• With discrete parts (TTL family)– JK or T FF’s could reduce gate count for

the input forming logic – Extensively used

• With VLSI IC’s and FPGA’s– JK or T FF’s must be built from

DFF+gates– Larger, slower than a DFF– Not used

Page 19: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 19

ECE 238L © 2006

Flip Flops With Additional Control Inputs

Page 20: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 20

ECE 238L © 2006

D

CLK

Q

Q’

What is this?

???

Page 21: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 21

ECE 238L © 2006

D

CLK

Q

Q’

What is this?

Enable

A falling edge triggered, D-type FF with enable

Master only loads when CLK=Enable=‘1’

Page 22: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 22

ECE 238L © 2006

D

CLK

Q

Q’

What is this?

???

Page 23: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 23

ECE 238L © 2006

D

CLK

Q

Q’

What is this?

Set

A falling edge triggered, D-type FF with an asynchronous set

If Set=1 then Q=>1, regardless of CLK or D

Page 24: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 24

ECE 238L © 2006

D

CLK

Q

Q’

What is this?

???

Page 25: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 25

ECE 238L © 2006

D

CLK

Q

Q’

What is this?

A falling edge triggered, D-type FF with a synchronous set

If Set=1 then Q=>1 on the next falling edge of the clock, regardless of D

Set

Page 26: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 26

ECE 238L © 2006

Flip Flops With Additional Control Inputs

• A variety of FF’s have been made over the years

• They contain combinations of these inputs:– Enable– Set– Reset

• The Set and Reset can be either:– Asynchronous (independent of CLK)– Synchronous (work only on CLK edge)

Page 27: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 27

ECE 238L © 2006

Flip Flop Timing Characteristics

Page 28: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 28

ECE 238L © 2006

Clock-to-Q Time (tCLK Q)

D

CLK

Q

Q’

tCLK Q = tNOT + tAND + 2 x tNOR

The output does not change instantaneously…

Why 2 x tNOR?

Page 29: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 29

ECE 238L © 2006

tCLK Q

CLK

D

Q

tCLK Qtime

Page 30: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 30

ECE 238L © 2006

Setup Time (tsetup)D

CLK

Q

Q’

tsetup = tNOT + tAND + 2 x tNOR

The input has to get there early enoughto set the master latch before

the clock turns off…

Page 31: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 31

ECE 238L © 2006

tsetup

CLK

D

Q

tsetup

time

Page 32: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 32

ECE 238L © 2006

D

CLK

Q

Q’

Same setup time as before

Clock is delayed through the NOT gate

Rising Edge FF Setup Time (tSETUP)

Page 33: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 33

ECE 238L © 2006

CLK

D

Q

tsetup-old

time

Page 34: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 34

ECE 238L © 2006

CLK

D

Q

time

CLKdly

tnot tsetup-old

tsetup-old

Page 35: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 35

ECE 238L © 2006

CLK

D

Q

time

CLKdly

tnot

Dnew

tsetup-old

tsetup-old

Page 36: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 36

ECE 238L © 2006

CLK

D

Q

time

CLKdly

Dnew

tsetup

tsetup-old

Page 37: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 37

ECE 238L © 2006

Falling Edge Hold Time (thold)

D

CLK

Q

Q’

thold = 0ns (AND gates turn off immediately)

You have to keep the old D value there until the ANDgates are shut off… (but no longer)

Page 38: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 38

ECE 238L © 2006

Rising Edge Hold Time (thold)D

CLK

Q

Q’

thold = tNOT

You have to keep the old D value there until the ANDgates are shut off…

Page 39: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 39

ECE 238L © 2006

thold

CLK

D

Q

thold = tNOT

time

Clock edge AND gate turns off, D can now change

Page 40: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 40

ECE 238L © 2006

Flip Flop Timing

CLK

D

Q

tsetup

thold

tCLK Qtime

Page 41: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 41

ECE 238L © 2006

Timing of a Synchronous System

CLK

D Q

CLK

D QInputFormingLogic

InputFormingLogic

time

Q D

CLK

Q

D

tCLK Q tIFL tSETUP

tCYCLE >= tCLK Q + tIFL + tSETUP

Page 42: Master/Slave Flip Flops - New Mexico's Flagship University ...zbaker/ece238/labs/lab5/05.5lab.pdf · Master/Slave Flip Flops. MSFF Page 2 ... Oscillator (Toggle Circuit) Operation

MSFFPage 42

ECE 238L © 2006

D QD QD Q

Example of a Synchronous System

D Q+1

Circuit

4

CLK

4 4CNT = 0000

0001001000110100…11110000…One transition per clock edge…