INF2270. Sekvensiell Logikk

Like dokumenter
IN1020. Sekvensiell Logikk

INF1400. Sekvensiell logikk del 1

INF1400. Sekvensiell logikk del 1

Forelesning 7. Tilstandsmaskin

Forelesning 6. Sekvensiell logikk

Kapittel 5 Tilstandsmaskin

INF1400. Tilstandsmaskin

INF1400. Tilstandsmaskin

Låsekretser (latch er) SR latch bygget med NOR S R latch bygget med NAND D latch. Master-slave D flip-flop JK flip-flop T flip-flop

Repetisjon digital-teknikk. teknikk,, INF2270

Dagens temaer. Sekvensiell logikk: Kretser med minne. D-flipflop: Forbedring av RS-latch

Dagens temaer. temaer hentes fra kapittel 3 i Computer Organisation. av sekvensielle kretser. and Architecture. Tilstandsdiagram.

Repetisjon. Sentrale temaer i kurset som er relevante for eksamen (Eksamen kan inneholde stoff som ikke er nevnt her)

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er

UNIVERSITETET I OSLO

En mengde andre typer som DVD, CD, FPGA, Flash, (E)PROM etc. (Kommer. Hukommelse finnes i mange varianter avhengig av hva de skal brukes til:

Løsningsforslag INF1400 H04

Dagens tema. Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er. Tellere og registre

UNIVERSITETET I OSLO

Dagens temaer. Architecture INF ! Dagens temaer hentes fra kapittel 3 i Computer Organisation and

LØSNINGSFORSLAG 2006

Dagens tema. Dagens temaer hentes fra kapittel 3 i læreboken. Repetisjon, design av digitale kretser. Kort om 2-komplements form

Dagens temaer. Dagens temaer hentes fra kapittel 3 i læreboken. Oppbygging av flip-flop er og latcher. Kort om 2-komplements form

INF3340/4340. Synkrone design Tilstandsmaskiner

Oppsummering digital-teknikk, teknikk, INF2270

INF3340. Tilstandsmaskiner

INF3340/4431. Tilstandsmaskiner

UNIVERSITETET I OSLO

INF1400. Karnaughdiagram

UNIVERSITETET I OSLO

VLSI (Very-Large-Scale-Integrated- Circuits) it Mer enn porter på samme. LSI (Large-Scale-Integrated-Circuits)

UNIVERSITETET I OSLO

INF1400 Kap4rest Kombinatorisk Logikk

Øving 7: Løsningsforslag (frivillig)

Det matematisk-naturvitenskapelige fakultet

IN1020. Logiske porter om forenkling til ALU

Oppgave 1 (Flanke- og nivåstyrte vipper)

INF1400. Digital teknologi. Joakim Myrvoll 2014

Dagens temaer. Architecture INF ! Dagens temaer hentes fra kapittel 3 i Computer Organisation and. ! Kort repetisjon fra forrige gang

INF1400. Kombinatorisk Logikk

Løsningsforslag i digitalteknikkoppgaver INF2270 uke 5 (29/1-4/2 2006)

TFE4101 Krets- og Digitalteknikk Høst 2016

UNIVERSITETET I OSLO

7. Hvilket alternativ (A, B eller C) representerer hexadesimaltallet B737 (16) på oktal form?

Notater: INF2270. Veronika Heimsbakk 10. juni 2014

Forelesning 9. Registre, tellere og minne

INF1400. Kombinatorisk Logikk

Forelesning 5. Diverse komponenter/større system

Forelesning 4. Binær adder m.m.

INF2270. Boolsk Algebra og kombinatorisk logikk

Synkron logikk. Sekvensiell logikk; to typer:

Dagens temaer. Dagens temaer er hentet fra P&P kapittel 3. Motivet for å bruke binær representasjon. Boolsk algebra: Definisjoner og regler

ITPE2400/DATS2400: Datamaskinarkitektur

VHDL En kjapp introduksjon VHDL. Oversikt. VHDL versus C(++)/Java

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK. Lørdag 5. juni Tid kl. 09:00 13:00. Digital sensorveiledning

5 E, B (16) , 1011 (2) Danner grupper a' fire bit , (2) Danner grupper a' tre bit 1 3 6, 5 4 (8)

Digitalstyring sammendrag

Hva gikk vi gjennom forrige uke? Omid Mirmotahari 3

MIK 200 Anvendt signalbehandling, Lab. 5, brytere, lysdioder og logikk.

Kontinuasjonseksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK

SIE 4005, 2/10 (2. Forelesn.)

Kontinuasjonseksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK. Fredag 25. mai Tid. Kl LØSNINGSFORSLAG

INF 3430/4430. Viktige momenter i syntese og for valg av teknologi

MAX MIN RESET. 7 Data Inn Data Ut. Load

4 kombinatorisk logikk, løsning

Forelesning 3. Karnaughdiagram

Ferdighetsmål: Kunne forenkle boolske uttrykk Kunne implementere flerinputs-porter med bare 2-inputs porter

Tilstandsmaskiner (FSM) Kapittel 5

Datamaskiner og operativsystemer =>Datamaskinorganisering og arkitektur

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK

Oppsummering av digitalteknikkdelen

INF2270. Datamaskin Arkitektur

Løsningsforslag til eksamen i INF2270

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK. Fredag 25. mai Tid. Kl LØSNINGSFORSLAG

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK Fredag 21. mai 2004 Tid. Kl

Del 10: Sekvensielle kretser YNGVAR BERG

Løsningsforslag til regneøving 6. a) Bruk boolsk algebra til å forkorte følgende uttrykk [1] Fjerner 0 uttrykk, og får: [4]

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Kort repetisjon fra forrige gang. Kombinatorisk logikk

SIE 4005, 9/10 (4. Forelesn.)

EKSAMEN. Informasjon om eksamen. Emnekode og -navn: ITD13012 Datateknikk. Dato og tid: timer. Fagansvarlig: Robert Roppestad

SIE 4005, 8/10 (3. Forelesn.)

EKSAMEN I FAG TFE4101 KRETS- OG DIGITALTEKNIKK, LF DIGITALTEKNIKKDELEN AV EKSAMEN (VERSJON 1)

EKSAMEN Emnekode: ITD13012

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK

EKSAMEN (Del 1, høsten 2015)

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK

EKSAMEN I FAG TFE4101 KRETS- OG DIGITALTEKNIKK

Institiutt for informatikk og e-læring, NTNU Kontrollenheten Geir Ove Rosvold 4. januar 2016 Opphavsrett: Forfatter og Stiftelsen TISIP

INF3430/4430. Kombinatoriske og sekvensielle byggeblokker implementert i VHDL :57

- - I Aile trykte og skrevne. samt kalkulator

INF2270. Datamaskin Arkitektur

Høgskoleni østfold EKSAMEN. Dato: Eksamenstid: kl til kl. 1200

TELE2010A Digital Systemkonstruksjon

Fys 3270/4270 høsten Laboppgave 2: Grunnleggende VHDL programmering. Styring av testkortets IO enheter.

Lab 6 Klokkegenerator, tellerkretser og digital-analog omformer

Eksamensoppgave i TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK

INF3430. VHDL byggeblokker og testbenker forts.

Transkript:

INF227 Sekvensiell Logikk

Hovedpunkter Definisjoner Portforsinkelse Shift register Praktiske Eksempler Latch SR D Flip-Flop D JK T Tilstandsmaskiner Tilstandsdiagrammer Reduksjon av tilstand Ubrukte tilstander Eksempler Omid Mirmotahari 2

Definisjoner Kombinatorisk logikk Utgangsverdiene er entydig gitt av nåværende kombinasjon av inngangsverdier. Sekvensiell logikk Inneholder hukommelse (låsekretser). Utgangsverdiene er gitt av nåværende kombination av inngangsverdier, samt sekvensen (tidligere inngangs-/utgangsverdier) Omid Mirmotahari 3

Sekvensiell Logikk Omid Mirmotahari 4

I synkrone sekvensielle kretser skjer endringen(e) i output samtidig med endringen i et klokkesignal. I asynkrone sekvensielle kretser skjer endringen(e) i output uten noe klokkesignal. Nesten alle kretser er synkrone. Et klokkesignal er et digitalt signal som veksler mellom og med fast takt. Klokkeperiode Stigende flanke Fallende flanke Omid Mirmotahari 5

Synkron logikk I større digitale system har man behov for å synkronisere dataflyten. Til dette bruker vi et globalt klokkesignal Uten global synkroniskering ville det vært total kaos Omid Mirmotahari 6

Den omvendte av klokkeperioden kalles (klokke)frekvensen, altså frekvens = klokkeperioden Ønsker så høy klokkefrekvens som mulig, fordi hver enkelt operasjon da bruker så kort tid som mulig. Maksimal klokkefrekvens bestemmes av flere faktorer, blant annet: Lengde på signalveiene Last Forsinkelse gjennom porter (delay) Teknologi. NB: Hastighet er ikke direkte proporsjonal med klokkefrekvens. Omid Mirmotahari 7

Portforsinkelse / tidsforsinkelse a b F a b F Omid Mirmotahari 8

Logisk dybde Logisk dybde: Antall porter et signal passerer fra inngang til utgang. Ved å redusere logisk dybde reduseres forsinkelsen gjennom kretsen. Eksempel: a b E c F Omid Mirmotahari 9

Internt i en CPU trengs en fleksibel type lagercelle som kan lagre et bit. Data in Clock Load -bits lagercelle Data out Som regel trenger man å lagre hele byte, halvord eller ord, og gjøre samme operasjon på alle bitene. Load-signalet bestemmer om ny verdi skal lastes inn eller ikke. Ved å sette sammen -bits celler i parallell, får man et register. Hvis man i tillegg kan laste data over i nabocellen, kalles det et skiftregister. Omid Mirmotahari

Shiftregister - enkel Data Data out in Data in Clock Load Shift enable Shift left Data in Clock Load Shift enable Shift left bit Kontroll logikk bit Kontroll logikk Data out Data out Load Omid Mirmotahari Shift Enable Shift Left X X Ingen endring X Data out := Data in Shift right Shift left

Praktiske eksempler Logikk som behandler signaler fra fysiske sensorer: IR-lys Varmefølende persondetektor IR sensor / Reset S R Låse krets Q / 24V relé Alarm sirene Når IR-lyset varierer mottat logikken et ras av kortvarige er pulser (msek). Logikken skal sette sirenen permanent på første mottatte puls. Omid Mirmotahari 2

Praktiske eksempler Logikk som behandler signaler fra fysiske sensorer: Laserbasert tyveridetektor Laser Lysbrudd Lys sensor / Reset S R Låse krets Q / 24V relé Alarm sirene Når laserlyset blir brutt mottar logikken en eller flere er pulser. Logikken skal sette sirenen permanent på første mottatte puls. Omid Mirmotahari 3

Praktiske eksempler Kontaktprelling fra mekanisk bryter. Mekaniske brytere gir ikke rene logiske nivå ut i overgangsfasen. Slike signaler må ofte renses ved bruk av låsekretser. Typisk spenningsforløp Omid Mirmotahari 4

SR-latch funksjonell beskrivelse ) Kretsen skal sette Q til hvis den får på inngang S. Når inngang S går tilbake til skal Q forbli på S R Q 2) Kretsen skal resette Q til når den får på inngang R. Når inngang R går tilbake til skal Q forbli på 3) Tilstanden på både S og R brukes normalt ikke SR S R Q låst Omid Mirmotahari 5

SR-latch funksjonell beskrivelse S (set) R (reset) Q Spenning S R Q SR S R Q låst Tid Omid Mirmotahari 6

SR-latch Portimplementasjon NOR S Q Øvre NOR S Q Q Nedre NOR Q R Q R Q *Signalet Q er ikke invertert av Q for tilstand S=, R= Omid Mirmotahari 7

SR-latch Analyse Tilstand S=, R=: En NOR port med fast inn på en av inngangene er ekvivalent med NOT S= Q R= Q = Q SR S R Q Øvre NOR S Q Q Nedre NOR Q R Q Q Ser bort i fra tilstand S= og R= Omid Mirmotahari 8

SR-latch Analyse Tilstand S=, R=: En NOR port med fast inn på en av inngangene gir alltid ut S= Q R= Q = Q SR S R Q Øvre NOR S Q Q Nedre NOR Q R Q Q= Omid Mirmotahari 9

D-Latch Dataflyten gjennom en D-latch kontrolleres av et klokkesignal ) Slipper gjennom et digital signal så lenge klokkeinngangen er (transparent) 2) I det øyeblikket klokkeinngangen går fra til låser utgangen seg på sin nåværende verdi. Forandringer på inngangen vil ikke påvirke utgangsverdien så lenge klokkesignalet er D Clk Q Omid Mirmotahari 2

D-Latch Clk = : kretsen slipper gjennom signalet Clk = : kretsen holder (låser) utgangssignalet D Q Clk D Clk Q Logisk verdi på D i det øyeblikk Clk går i fra til bestemmer verdien som holdes på Q Omid Mirmotahari 2

Flip-flop Flip-Flop er kommer i to varianter: Positiv flanketrigget Negativ flanketrigget På en positiv flanketrigget Flip-Flop kan utgangen kun skifte verdi i det øyeblikk klokkesignalet går fra til. Hakk, indikerer flanketrigget D Clk Q På en negativ flanketrigget Flip-Flop kan utgangen kun skifte verdi i det øyeblikk klokkesignalet går fra til. D Clk Q Omid Mirmotahari 22

D-Flip-Flop En D latch er transparent for Clk= D Q Clk D Clk Q En positiv flanketrigget D flip-flop sampler verdien på D i det øyeblikk Clk går fra til (positiv flanke). Denne verdien holdes fast på utgangen helt til neste positive flanke D Q Clk D Clk Omid Mirmotahari 23 Q

Karakteristisk tabell/ligning For flip-flop er kan man generelt beskrive neste utgangsverdi Q(t+) som funksjon av nåværende inngangsverdi(er), og nåværende utgangsverdi Q(t) Karakteristisk tabell for D flip-flop D Clk D Clk Q Q D Q(t+) Karakteristisk ligning for D flip-flop Q(t+) = D Omid Mirmotahari 24

D-Flip-Flop En positiv flanketrigget D flip-flop kan lages av to D-latcher (Master-Slave) Master Slave D D Clk Q D2 Clk2 Q2 Q = D Clk D Clk Q Q Clk Under Clk= er første D latch (master) transparent Under Clk= er siste D latch (slave) transparent Omid Mirmotahari 25

D-Flip-Flop kompakt versjon Omid Mirmotahari 26

D-Flip-Flop, eksempel En rippeladder vil i et kort tidsrom gi gal sum ut. Styring av signalflyt med D flip-flops kamuflerer dette Clk A 3 Clk B 3 Clk A 2 Clk B 2 Clk A Clk B Clk A Clk B D FF D FF D FF D FF D FF D FF D FF D FF Clk D FF C 4 Fulladder C 3 C 2 Fulladder Fulladder Halvadde r Clk Clk Clk Clk D FF D FF D FF D FF C C 4 S 3 S 2 S S På positiv Clk flanke kommer nye data inn til adderen. I samme øyeblikk leses forrige (stabiliserte) sum ut. Omid Mirmotahari 27

D-Flip-Flop, eksempel Seriell adder Fulladder 2 8

JK Flip-Flop Kretsoppbygging Grafisk symbol Q Q Omid Mirmotahari 29

JK Flip-Flop En JK flip-flop har følgende egenskaper J=, K=: Utgang låst Q J=, K=: Resetter utgang til J=, K=: Setter utgang til J=, K=: Inverterer utgang Q Q Utgangen kan kun forandre verdi på stigende klokkeflanke En JK flip-flop er den mest generelle flip-floppen vi har J K Q Q(t+) Q(t) Q (t) Omid Mirmotahari 3 Q(t+) = JQ (t) + K Q(t)

T Flip-Flop Kretsoppbygging Grafisk symbol Q Q Q Q Omid Mirmotahari 3

T Flip-Flop En T flip-flop har følgende egenskaper T=, Utgang låst T=, Inverterer utgang Q Q Utgangen kan kun forandre verdi på stigende klokkeflanke Det er lett å lage tellere av T flip-flop er T Q(t+) = T Q(t) Q Q Q(t+) Q(t) Q (t) Omid Mirmotahari 32

Tilstandsmaskin En tilstandsmaskin er et sekvensielt system som gjennomløper et sett med tilstander styrt av verdiene på inngangssignalene Tilstanden systemet befinner seg i, pluss evt. inngangsverdier bestemmer utgangsverdiene Tilstandsmaskins-konseptet gir en enkel og oversiktlig måte å designe avanserte system på Omid Mirmotahari 33

Tilstandsmaskin Generell tilstandsmaskin basert på D flip-flops N-stk flip-flops gir 2 N forskjellige tilstander Utgangssignalene er en funksjon av nåværende tilstand pluss evt. inngangsverdier Omid Mirmotahari 34

Tilstandsdiagram Tilstandsdiagram = grafisk illustrasjon av egenskapene til en tilstandsmaskin Eksempel nr.: Inngangsverdi x som medfører ny tilstand, samt utgangsverdi y for opprinnelig tilstand med inngangsverdi x x / y Tilstand Q A Q B / / / / / / / / Omid Mirmotahari 35

Tilstandstabell Tilstandstabell = sannhetstabell for tilstandsmaskin Eksempel nr.: En inngang, en utgang og 2 stk. D flip-flops Nåværende tilstand Inngang Neste tilstand Q A Q B Utgang for nåværende tilstand Q A Q B x y Omid Mirmotahari 36

Eksempel nr. x D A Q A Q A Tilstandsmaskin der utgang y er en funksjon av tilstanden gitt av verdiene til Q A og Q B, samt inngangen x clk D B Q B Q B y Omid Mirmotahari 37

Eksempel nr.2 x y D A Q A To innganger x og y, en utgang som bare er gitt av tilstanden Q A Nåværende tilstand Innganger x y Q A clk Neste tilstand Q A Utgang for nåværende tilstand Q A Omid Mirmotahari 38

Eksempel nr.2 Tilstandsdiagram, /, /, / Liste av inngangskombinasjoner som gir ny tilstand / utgangsverdi for nåværende tilstand*, / *Merk at i dette tilfelle er utgangsverdien kun avhengig av tilstanden (uavhengig av inngangsverdiene) Omid Mirmotahari 39

Eksempel nr.3 design av sekvensdetektor Ønsker å lage en krets som finner ut om det har forekommet tre eller flere ere etter hverandre i en klokket bit-sekvens x Klokket bit-sekvens: Binært signal som kun kan skifte verdi synkront med et klokkesignal Klokkesignal x Utgang Omid Mirmotahari 4

Eksempel nr.3 design av sekvensdetektor Tilstandsdiagram Velger å ha 4 tilstander. Lar hver tilstand symbolisere antall ere som ligger etter hverandre i bit-sekvensen. / / / / Inngang: bit-sekvens x Utgang: gitt av tilstanden, for tilstand -2, for tilstand 3 / / / / Omid Mirmotahari 4

Eksempel nr.3 Bruker D flip-flops Utgang for D A og D B settes til de Nåværende tilstand Neste nåværende verdiene man ønsker at Q A Inngang tilstand tilstand og Q B skal ha i neste tilstand Q A Q B x y Q A Q B D A = Q A Q B x + Q A Q B x + Q A Q B x D B = Q A Q B x + Q A Q B x + Q A Q B x y = Q A Q B Omid Mirmotahari 42

Eksempel nr.3 Forenkler uttrykkene med Karnaugh-diagram x D A Q A D A = Q A x + Q B x D B Q B D B = Q A x + Q B x y = Q A Q B clk Q B y Omid Mirmotahari 43

Reduksjon av tilstander En tilstandsmaskin gir oss en eller flere utgangssignal som funksjon av en eller flere inngangssignal Hvordan dette implementeres internt i maskinen er uinteressant sett utenifra I noen tilfeller kan man fjerne tilstander (forenkle designet) uten å påvirke inngangs/utgangs-funksjonene Omid Mirmotahari 44

Reduksjon av tilstander Hvis to tilstander har samme utgangssignal, samt leder til de samme nye tilstandene gitt like inngangsverdier, er de to opprinnelige tilstandene like. En tilstand som er lik en annen tilstand kan fjernes. Omid Mirmotahari 45

Reduksjon av tilstander Eksempel: Tilstand G er lik tilstand E Nåværende tilstand Inngang Neste tilstand Utgang A B A B B C B D C A C D D E D F E E A F F F G G G F A F Omid Mirmotahari 46

Reduksjon av tilstander Eksempel: Fjerner tilstand G. Erstatter hopp til G med hopp til E Nåværende tilstand Inngang Neste tilstand Utgang A B A B B C B D C A C D D E D F E E F F A F E F Omid Mirmotahari 47

Reduksjon av tilstander Eksempel: Nå er tilstand F lik tilstand D Fjerner tilstand F Nåværende tilstand Inngang Neste tilstand Utgang A B A B B C B D C A C D D E D F E E F F A F E F Omid Mirmotahari 48

Reduksjon av tilstander Eksempel: Har fjernet tilstand F Nåværende tilstand Inngang Neste tilstand Utgang A B A B B C B D C A C D D E D D E E A D Omid Mirmotahari 49

Tilordning av tilstandskoder I en tilstandsmaskin med M tilstander må hver tilstand tilordnes en kode basert på minimum N bit der 2 N M Kompleksiteten til den kombinatoriske delen avhenger av valg av tilstandskode Anbefalt strategi for valg av kode: prøv-og-feil i tilstandsdiagrammet / / Tilstand nr. Kode: / Tilstand nr.2 Kode: Omid Mirmotahari 5

Ubrukte tilstander I en tilstandsmaskin med N flip-flopper vil det alltid finnes 2 N tilstander. Designer man for M tilstander der M < 2 N vil det finnes ubrukte tilstander. / Problem: Under oppstart (power up) har man ikke full kontroll på hvilken tilstand man havner i først. Havner man i en ubrukt tilstand som ikke leder videre til de ønskede tilstandene vil systemet bli låst. Løsning: Design systemet slik at alle ubrukte tilstander leder videre til en ønsket tilstand. / /,/ / / / / Omid Mirmotahari 5

Generell designprosedyre basert på D flip-flops ) Definer tilstandene, inngangene og utgangene 2) Velg tilstandskoder, og tegn tilstandsdiagram 3) Tegn tilstandstabell 4) Reduser antall tilstander hvis nødvendig 5) Bytt tilstandskoder hvis nødvendig for å forenkle 6) Finn de kombinatoriske funksjonene 7) Sjekk at ubrukte tilstander leder til ønskede tilstander 8) Tegn opp kretsen Omid Mirmotahari 52

Design eksempel nr.4 Designer en teller som teller sekvensen 5,4,3,2,,. Etter skal telleren gjenta sekvensen (telle rundt). Telleren skal kunne resettes til 5 med ett reset signal. ) Velger en tilstand for hvert tall ut. Systemet har reset inngang, og trenger 3 utganger for å representere tallene 5 til. 2) Velger tilstandskoder som direkte representerer tallene ut. Tallene ut blir gitt av tilstandene Omid Mirmotahari 53

Eksempel nr.4 2) Tegner tilstandsdiagram / / / / /,/ / / / / / Registrerer at vi har to ubrukte tilstander Omid Mirmotahari 54

Eksempel Nåværende tilstand / utgang Q A Q B Q C Inngang R Neste tilstand Q A Q B Q C nr.4 3) Tegner tilstandstabell 4) Ingen reduksjonsmulighet 5) Velger å ikke bytte tilstandskoder da utgangene i såfall må omformes Ubrukte tilstander X X X X X X X X X X X X Omid Mirmotahari 55

Eksempel nr.4 6) Setter inn i karnaughdiagram og finner forenklede funksjoner D A Q C R Q A Q B x x x x D B Q C R Q A Q B x x x x D C Q C R Q A Q B x x x x D A = R + Q A Q B Q C + Q A Q C D B = Q B Q C R + Q A Q C R D C = Q C + R Omid Mirmotahari 56

Eksempel nr.4 6) Sjekker at ubrukte tilstander leder til ønskede tilstander ok Nåværende tilstand / utgang Inngang Q A Q B Q C R Neste tilstand Q A Q B Q C D A = R + Q A Q B Q C + Q A Q C D B = Q B Q C R + Q A Q C R D C = Q C + R Omid Mirmotahari 57

Eksempel nr.4 6) Alle ubrukte tilstander leder til ønskede tilstander, viser med diagram / / / / /,/ / / / / / / / / / Omid Mirmotahari 58

Eksempel nr.4 Q A Q B Q B Q A Q C D A Q A R Q clk A 7) Tegner opp krets Q A, Q B og Q C blir tellerens utganger Q B Q C R Q A Q C R clk D B Q B Q B Telleren resettes ved å sette R= Q C R D C Q C clk Q C Omid Mirmotahari 59

Eksempel nr.5 - trafikklys Ønsker å bruker tilstandsmaskin for å styre trafikklys Krysset har to vanlige trafikklys A og B. Disse styres med de binære signalene R A, G A, Gr A samt R B, G B, Gr B. Setter man G A til lyser det grønt i lys A osv. For å generere lyssekvensene bruker vi en repeterende bit-sekvens s som vist under. Avstanden mellom er pulsene gir intervallene mellom skifte fra grønt i lys A til grønt i lys B og motsatt. Klokkesignal Bit-sekvens s Omid Mirmotahari 6 periode

Eksempel nr.5 - trafikklys Systemet har en induktiv sensor i bakken som registrerer biler den ene veien. Bil over sensoren gir I= ellers har vi I= R A / G A / Gr A R B / G B / Gr B Vi ønsker at bil registrert av sensoren skal gi grønt lys i A så fort som mulig R B / G B / Gr B R A / G A / Gr A Induktiv sløyfe I Omid Mirmotahari 6

Eksempel nr.5,2) Velger følgende forenklede tilstander: - Grønt lys i A, rødt lys i B - Gult lys i A og B. Skifter mot grønt lys i B. - Rødt lys A, grønt lys i B - Gult lys i A og B. Skifter mot grønt lys i A. Innganger: s, I Utganger: R A, G A, Gr A, R B, G B, Gr B Lar utgangene kun være en funksjon av tilstanden Omid Mirmotahari 62

Eksempel nr.5 x = Omid Mirmotahari 63

Eksempel nr.5 /,, / 2) Tilstandsdiagram XX / XX / X don t care si / R A G A Gr A R B G B Gr B / X / Omid Mirmotahari 64

Nåværende tilstand Innganger 6) Finner kombinatoriske Q A Q B s I funksjoner D A = Q A Q B D B = Q A Q B I + Q B si R A = Q A Q B G A = Q B Gr A = Q A Q B R B = Gr A G B = G A Gr B = R A Neste tilstand Q A Q B R A G A Gr A R B G B Gr B Utganger Omid Mirmotahari 65

Eksempel nr.5 Q A Q B D A Q A 7) Tegner opp krets clk Q A D A = Q A Q B D B = Q A Q B I + Q B si R A = Q A Q B Q A Q B I Q B s I clk D B Q B Q B G A = Q B Gr A = Q A Q B R B = Gr A G B = G A Gr B = R A Q A Q B Q A Q B QB R A Gr B Gr A R B G A G B Omid Mirmotahari 66