Preview of “L02 FSM.pptx” · Introduc)on*to*Structured*VLSI*Design* 3Finite*State*Machines...

4
Introduc)on to Structured VLSI Design 3Finite State Machines Joachim Rodrigues Lund University / EITF35/ Joachim Rodrigues 2012 Overview State Machines Moore Mealy Exercise The following slides should fresh up your memory Detailed informa)on on FSM’s is available in a sample book chapter on the course homepage. Lund University / EITF35/ Joachim Rodrigues 2012 Overview on FSM • Contain random logic in next1state logic • Used mainly used as a controller in a large system • Moore vs Mealy output Lund University / EITF35/ Joachim Rodrigues 2012 Representa)on of FSMs • State diagram

Transcript of Preview of “L02 FSM.pptx” · Introduc)on*to*Structured*VLSI*Design* 3Finite*State*Machines...

Page 1: Preview of “L02 FSM.pptx” · Introduc)on*to*Structured*VLSI*Design* 3Finite*State*Machines Joachim Rodrigues Lund University / EITF35/ Joachim Rodrigues 2012 Overview* ... 01/1

Introduc)on*to*Structured*VLSI*Design*3Finite*State*Machines

Joachim Rodrigues

Lund University / EITF35/ Joachim Rodrigues 2012

Overview*

•  State*Machines*•  Moore*•  Mealy*

•  Exercise*

•  The*following*slides*should*fresh*up*your*memory*

•  Detailed*informa)on*on*FSM’s*is*available*in*a*sample*book*chapter*on*the*course*homepage.*

Lund University / EITF35/ Joachim Rodrigues 2012

Overview*on*FSM*

•  Contain(�random�(logic(in(next1state(logic(•  Used(mainly(used(as(a(controller(in(a(large(system(•  Moore(vs(Mealy(output((((

Lund University / EITF35/ Joachim Rodrigues 2012

Representa)on*of*FSMs*

•  State(diagram((

Page 2: Preview of “L02 FSM.pptx” · Introduc)on*to*Structured*VLSI*Design* 3Finite*State*Machines Joachim Rodrigues Lund University / EITF35/ Joachim Rodrigues 2012 Overview* ... 01/1

Lund University / EITF35/ Joachim Rodrigues 2012

Moor*vs.*Mealy*

•  A(Moore(machine(produces(glitch(free(outputs.(

•  The(outputs(from(a(Moore(machine(are(available(to(its(environment(for(almost(a(clock(cycle,(and(in(some(situaBons(this(may(allow(using(a(faster(cock.(

•  In(some(situaBons(a(Mealy(machine(can(be(specified(and(implemented(using(less(states(because(it(is(capable(of(producing(different(outputs(in(a(given(state.(

•  In(some(situaBons(a(system(using(a(Mealy(machine(can(be(faster(because(an(output(may(be(produced(immediately(instead(of(at(the(next(clock(Bck.(

Lund University / EITF35/ Joachim Rodrigues 2012

Moore*vs.*Mealy*

•  Moore(

–  Out(=( ( (F(Current(state)(

–  Next(state(=(F(Inputs,(current(state)(

S1 Y=0

A1

A2 Y

S4 Y=1

S2 Y=0

10

01

S3 Y=1

11

A1 A2 = 00

Lund University / EITF35/ Joachim Rodrigues 2012

Moore*vs.*Mealy*

•  Mealy(

–  Out(=( ( (F(Inputs,(Current(state)(

–  Next(state(=(F(Inputs,(Current(state)(

S1 A1

A2 Y

S4

S2 10/0

01/1

00/0

S3 11/1

10/0

11/1

01/1 A1 A2 / Y

Lund University / EITF35/ Joachim Rodrigues 2012

Moore*

FSM1 FSM2 R

A

S0 A=0

R=0 S1

A=1 R=1

R=1

R=0

• …(a(Moore(machine(is(not(able(to(produce(A1>1(unBl(the(next(clock(when(it(enters(s1(

Will be entered with next clock cycle

Page 3: Preview of “L02 FSM.pptx” · Introduc)on*to*Structured*VLSI*Design* 3Finite*State*Machines Joachim Rodrigues Lund University / EITF35/ Joachim Rodrigues 2012 Overview* ... 01/1

Lund University / EITF35/ Joachim Rodrigues 2012

Mealy*

FSM1 FSM2 R

A

S0 R=0/A=0

S1 R=1/A=1

R=1/A=1

R=0/A=0

• When(in(s0,(a(Mealy(machine(may(produce(A1>1(immediately(in(response(to(R1>1(

Lund University / EITF35/ Joachim Rodrigues 2012

•  Pushing:(*({(A;(B;(B;(A(}(=>(Open(

(

•  Draw(a(state(graph(for(the(Lock1FSM((10min)(

A*small*exercise*/problem*

Lock FSM

Clk

A

B Open 0

1

Lund University / EITF35/ Joachim Rodrigues 2012

Edge*Detec)on*

•  A*circuit*to*detect*the*rising*edge*of*a*slow*�strobe�*input*and*generate*a*�short�*(*about**13clock*period)*output*pulse.*

*•  All*FSMs*realize*an*edge*

detec)on.*•  The*”output”*signal*

differs!*

Lund University / EITF35/ Joachim Rodrigues 2012

Timing*Diagram*

Page 4: Preview of “L02 FSM.pptx” · Introduc)on*to*Structured*VLSI*Design* 3Finite*State*Machines Joachim Rodrigues Lund University / EITF35/ Joachim Rodrigues 2012 Overview* ... 01/1

Lund University / EITF35/ Joachim Rodrigues 2012

• Mealy(machine(uses(fewer(states(• Mealy(machine(responds(faster(• Mealy(machine(may(be(transparent(to(glitches(

• Which(one(is(be]er?(–  Types(of(control(signal(

•  Edge(sensiBve(–  E.g.,(enable(signal(of(counter(–  Both(can(be(used(but(Mealy(is(faster(

–  Level(sensiBve(•  E.g.,(write(enable(signal(of(SRAM(• Moore(is(preferred(

Comparison(

Lund University / EITF35/ Joachim Rodrigues 2012

FSM*Exercise*(”Homework”)*

Marge(wants(to(install(an(alarm(that(triggers(as(soon(as(somebody(enters(the(kitchen.(The(alarm(should(have(several(alert(levels.((

•  level0:(Neither(Homer(nor(Bart(is(in(the(kitchen(•  level1:(Bart(but(not(Homer(is(in(the(kitchen(•  level2:(Homer(but(not(Bart(is(in(the(kitchen(•  level3:(Homer(and(Bart(are(in(the(kitchen(

To*detect*who*enters*or*leaves*the*kitchen*2*sensors*g1*and*g0*are*installed*in*the*door*frame*as*depicted.*The*sensors*emit*a*�1�*as*soon*as*their*reflec)on*is*interrupted.*If*Bart*enters*the*kitchen*only*g0*will*emit*a*�1�.*Homer*is*always*leaning*forward*when*he*is*entering*the*kitchen,*and,*thus,*g1*will*always*be*interrupted*before*g0.*Once*they*have*decided*to*go*into*the*kitchen*they*will*go*through*the*door.*However,*if*they*are*in*the*kitchen*they*always*can*leave,*e.g.,*level3*changes*to*level2.*The*size*of*Homers*hips*and*belly*prevent*them*from*entering*the*kitchen*simultaneously.**The*clock*frequency*is*1MHz.*

Lund University / EITF35/ Joachim Rodrigues 2012

?(