Finite State Machines
Terugblik: Set-Reset latch 1 q q 1 reset
State Diagrams
State diagrams State
State diagrams Transition State
State diagram SR-Latch Ingangen SR Vorige Toestand q Nieuwe toestand 01 10 11 Q = {01,10} verzameling toestanden SR = {01,10,11} invoeralfabet 01є Q is de initiële toestand δ = is de overgangsfunctie
State diagram SR-Latch Ingangen SR Vorige Toestand q Nieuwe toestand 01 10 11 Q = {01,10} verzameling toestanden SR = {01,10,11} invoeralfabet 01є Q is de initiële toestand δ = is de overgangsfunctie
State diagram SR-Latch Ingangen Vorige toestand Nieuwe toestand strijdig 00 11 10 01 ?? Q = {01,10,11} verzameling toestanden SR = {00, 01,10,11} invoeralfabet 01є Q is de initiële toestand
Finite State Machines Schakeling bestaat uit: Next state: combinatorische schakeling Current state: sequentiële schakeling Output function: combinatorische schakeling
Finite State Machines Twee typen FSM: Moore machine: ingangen beïnvloeden uitgangen na klokpuls Mealy machine: ingangen beïnvloeden uitgangen direct We behandelen alleen Moore machines
Drie voorbeelden Verkeerslicht Branch predictor Lichtzoeker
Voorbeeld verkeerslicht NScar EWcar Current State NS q Next State NS Q = δ(NScar,EWcar,q) 01 10 1 Q = {01,10} verzameling toestanden NScarEWcar = {00,01,10,11} invoeralfabet 01 є Q is de initiële toestand (NSrood, EWgroen) δ = is de overgangsfunctie = uitvoerfunctie
State diagram verkeerslicht NScar EWcar Current State Next State NS nNS 01 10 1 State diagram SR-flipflop Q = {01,10} verzameling toestanden SR = {00,01,10,11} invoeralfabet Opdracht: teken state diagram verkeerslicht
State diagram
Verkeerslicht NScar EWcar Current State NSlight Next State nNS 01 10 1
Oplossing verkeerslicht Moore machine
Voorbeeld verkeerslicht
Branch Predictor
Branch Predictor Opdracht: vul tabel verder in Taken Current state Linker bit van diagram is B Next state T B N nB nN 1 Tabel Branch Predictor Opdracht: vul tabel verder in
Tabel Branch Predictor Taken Current state Next state T B N nB nN 1 Tabel Branch Predictor Opdracht: geef de Boole-uitdrukking voor nB en voor nN
Tabel Branch Predictor Taken Current state Next state T B N nB nN 1 Tabel Branch Predictor Opdracht: vereenvoudig deze uitdrukking
Branch Predictor Opdracht: implementeer de Branch Predictor volgens het model van Moore
Oplossing Branch Predictor Moore machine
Opdracht: ga na dat bovenstaand diagram de werking van de Branch Predictor weergeeft
Lichtvolger lichtgevoelige diodes comparator Figuur 9.8 Sensorsysteem + lichtgevoelige diodes comparator Vuit V+ V- Figuur 9.8 Sensorsysteem
Lichtvolger
Lichtvolger spoel nr stap nr 1 2 3 4 on off On 5 = 1 6 = 2 Opdracht: teken state diagram lichtvolger
Lichtvolger spoel nr 1 2 3 4 ⇩ on off 5 = 1 6 = 2 Draai-richting Linksom spoel nr stap nr 1 2 3 4 ⇩ on off 5 = 1 6 = 2
Ontwerp lichtvolger volgens Moore Hoeveel bits heeft de current state? Antwoord 2 Output function heeft 2 ingangen en 4 uitgangen! Vul tabel 2 bladz. 91 in. Laat S1 overeenkomen met spoel1 en S0 met spoel 2 Oplossing verschijnt volgende week dinsdag.
Ontwerp lichtvolger Hoeveel bits heeft de current state? Antwoord 2 Output function heeft 2 ingangen en 4 uitgangen! Vul tabel 2 bladz. 91 in.