1 / 27

VTŠ Novi Sad Elektronika 2 - Digitalna elektronika

VTŠ Novi Sad Elektronika 2 - Digitalna elektronika. IMPLEMENTACIJA SEKVENCIJALN E LOGIKE. dr Zoran Mitrović. Implementacija sekvencijalne logike. Se kv en cijalna kola Osnovni sekvencijalni elementi Kombinaciona logika Model i za predstavljanje sekvencijalnih kola

helmut
Download Presentation

VTŠ Novi Sad Elektronika 2 - Digitalna elektronika

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. VTŠ Novi SadElektronika 2 - Digitalna elektronika IMPLEMENTACIJA SEKVENCIJALNE LOGIKE dr Zoran Mitrović

  2. Implementacija sekvencijalne logike • Sekvencijalnakola • Osnovni sekvencijalni elementi • Kombinaciona logika • Modelizapredstavljanje sekvencijalnih kola • Metoda konačnih stanja (Finite-state machines) • Predstavljanje memorije (stanja) • Promene stanja (tranzicije) • Osnovna sekvencijalna kola • Pomerački registri • Brojači • Procedura projektovanja • Dijagrami stanja • Tabela tranzicija • Funkcije sledećeg stanja VTŠ Novi Sad Elektronika 2 - Digitalna elektronika2

  3. CombinationalLogic Ulazi Izlazi Ulazi stanja Izlazi stanja Elementi memorije Elementi stanja • Podeliti kolo na kombinacionu logiku i stanje • Lokalizovatipetlje povratne sprege iobezbediti da je olakšano da se raskinu • Implementacija elemenata memorije vodi do različitih formi sekvencijalne logike VTŠ Novi Sad Elektronika 2 - Digitalna elektronika3

  4. Takt Forme sekvencijalne logike • Asinhrona sekvencijalna logika – promene stanja se dešavaju kad se menjaju stanja ulaza (elementi mogu da budu obične šice ili elementi kašnjenja) • Sinhrona sekvencijalna logika – promene stanja se dešavaju u definisanim koracima kroz memorijske elemente (koristeći periodični talasni oblik - takt) VTŠ Novi Sad Elektronika 2 - Digitalna elektronika4

  5. 010 111 001 In = 1 In = 0 In = 0 100 110 In = 1 Prikaz “mašine” konačnih stanja • Stanja: definisana mogućim vrednostima u sekvencijalnim memorijskim elementima • Tranzicija: promena stanja • Takt: dozvoljavakad stanje može da se promeni kontrolom memorijskih elemenata • Sekvencijalnalogika • Sekvencijalni prolazak kroz niz stanja • Bazirana na sekvenci vrednosti ulaznih signala • Periodi takta definišu elemente sekvence VTŠ Novi Sad Elektronika 2 - Digitalna elektronika5

  6. GREŠKA zatvoreno nije jednako& novi nije jednako & novi nije jednako & novi S3 S1 S2 OTVORENO zatvoreno mux=C1 zatvoreno mux=C2 zatvoreno mux=C3 reset otvoreno jednako& novi jednako& novi jednako& novi nije novi nije novi nije novi Primer dijagrama “mašine” konačnih stanja • Kombinaciona brava sa početka kursa VTŠ Novi Sad Elektronika 2 - Digitalna elektronika6

  7. OUT1 OUT2 OUT3 D Q D Q D Q IN CLK 110 100 1 0 1 1 1 010 101 111 000 1 1 0 1 0 0 001 011 1 0 0 0 0 Može li bilo koji sekvencijalni sistem da se predstavi dijagramom stanja? • Pomerački registar • Ulazna vrednost predstavljenana tranzicionim lukovima • Izlazna vrednost prikazanaunutar čvora stanja VTŠ Novi Sad Elektronika 2 - Digitalna elektronika7

  8. 010 011 001 000 100 3-bitni brojač na gore 110 101 111 Brojači su proste “mašine” konačnih stanja • Brojači • Prolaze kroz dobro definisanu sekvencu stanja kao odgovor na enable • Mnogo tipova brojača: binarni, BCD, sa grejovim kodom • 3-bitni brojač na gore: 000, 001, 010, 011, 100, 101, 110, 111, 000, ... • 3-bitni brojač na dole: 111, 110, 101, 100, 011, 010, 001, 000, 111, ... VTŠ Novi Sad Elektronika 2 - Digitalna elektronika8

  9. OUT1 OUT2 OUT3 D Q D Q D Q CLK "1" Kako pretvaramo dijagram stanja u logiku? • Brojač • Tri flip-flopapamte stanje • Logika za izračunavanjesledećeg stanja • Takt kontroliše kad može da se promeni stanje flip-flop-a • Sačekati dovoljno dugo da kombinaciona logika izračuna novu vrednost • Ne sme se čekati predugo – niske performanse VTŠ Novi Sad Elektronika 2 - Digitalna elektronika9

  10. Procedura projektovanja “mašine” konačnih stanja • Počinje se od brojača • Prosto, jer je izlaz samo stanje • Prosto, jer izbor sledećeg stanja ne zavisi od ulaza • Dijagram stanja -> tabela prelaza iz stanja u stanje • Tabularna forma dijagrama stanja • Nalik na kombinacionu tabelu • Kodiranje stanja • Odluka o prikazu stanja • Za brojače je to prosto: samo njegova vrednost • Implementacija • Flip-flop za svaki bit stanja • Kombinaciona logika bazirana na kodiranju VTŠ Novi Sad Elektronika 2 - Digitalna elektronika10

  11. tekuće stanjesledeće state0 000 001 11 001 010 22 010 011 33 011 100 44 100 101 55 101 110 66 110 111 77 111 000 0 010 011 001 000 100 3-bitni brojač na gore 110 101 111 Procedura projektovanja “mašine” konačnih stanja: dijagram stanja -> tabela prelaza iz stanja u stanje • Tabularna formadijagrama stanja • Nalik na kombinacionu tabelu (specifirati izlaze za sve ulazne kombinacije) • Kodiranje stanja: prosto za brojače – samo se koristi vrednost VTŠ Novi Sad Elektronika 2 - Digitalna elektronika11

  12. C3 C3 C3 0 1 1 0 1 1 0 0 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 1 C1 C1 C1 C2 C2 C2 C3 C2 C1 N3 N2 N10 0 0 0 0 10 0 1 0 1 00 1 0 0 1 10 1 1 1 0 01 0 0 1 0 11 0 1 1 1 01 1 0 1 1 11 1 1 0 0 0 N3 N1 N2 Implementacija • D flip-flop za svaki bit stanja • Kombinaciona logikabazirana na kodiranju notacija koja pokazuje koja funkcija predstavlja ulaz u D-FF N1 := C1' N2 := C1C2' + C1'C2 := C1 xor C2 N3 := C1C2C3' + C1'C3 + C2'C3 := C1C2C3' + (C1' + C2')C3 := (C1C2) xor C3 VTŠ Novi Sad Elektronika 2 - Digitalna elektronika12

  13. D Q Q Implementacija (nastavak) • Programabilniblok za građenje sekvencijalne logike • Makro-ćelija: FF + logika • D-FF • Sposobnost logike u dva nivoa, nalik na PAL (npr., 8 proizvodnih izraza) VTŠ Novi Sad Elektronika 2 - Digitalna elektronika13

  14. In C1 C2 C3 N1 N2 N30 0 0 0 0 0 00 0 0 1 0 0 00 0 1 0 0 0 10 0 1 1 0 0 10 1 0 0 0 1 00 1 0 1 0 1 00 1 1 0 0 1 10 1 1 1 0 1 11 0 0 0 1 0 01 0 0 1 1 0 01 0 1 0 1 0 11 0 1 1 1 0 11 1 0 0 1 1 01 1 0 1 1 1 01 1 1 0 1 1 11 1 1 1 1 1 1In C1 C2 C3 N1 N2 N30 0 0 0 0 0 00 0 0 1 0 0 00 0 1 0 0 0 10 0 1 1 0 0 10 1 0 0 0 1 00 1 0 1 0 1 00 1 1 0 0 1 10 1 1 1 0 1 11 0 0 0 1 0 01 0 0 1 1 0 01 0 1 0 1 0 11 0 1 1 1 0 11 1 0 0 1 1 01 1 0 1 1 1 01 1 1 0 1 1 11 1 1 1 1 1 1 OUT1 OUT2 OUT3 D Q D Q D Q IN CLK 110 100 1 0 1 1 1 010 101 111 1 000 1 0 1 0 0 001 011 1 0 0 0 0 Još jedan primer • Pomerački registar • Ulaz određuje sledeće stanje N1 := In N2 := C1 N3 := C2 VTŠ Novi Sad Elektronika 2 - Digitalna elektronika14

  15. 000 110 010 101 Trenutno stanjeSledeće stanje C B A C+ B+ A+ 0 00 0 1 0 0 0 1 – – – 0 1 0 0 1 1 0 1 1 1 0 1 1 0 0 – – – 1 0 11 1 0 1 1 0 0 0 0 1 1 1 – – – 011 Primer kompleksnijeg brojača • Kompleksni brojač • Ponavlja pet stanja u sekvenci • Nije prikaz binarnih brojeva • Korak 1: Nacrtati dijagram tranzicije stanja • Brojačka sekvenca: 000, 010, 011, 101, 110 • Korak 2: Nacrtati tabelu tranzicije stanja iz dijagrama tranzicije stanja primetiti stanja nije-važno koja su ustvari nekorišćeni kodovi stanja VTŠ Novi Sad Elektronika 2 - Digitalna elektronika15

  16. C C C 1 1 X 0 0 0 X 1 0 1 X 1 0 X X 0 0 X X 1 0 X X 1 A A A B B B A+ C+ B+ Primer kompleksnijeg brojača (nastavak) • Korak 3: K-mapezafunkciju sledećeg stanja C+ := A B+ := B' + A'C' A+ := BC' VTŠ Novi Sad Elektronika 2 - Digitalna elektronika16

  17. C C C 0 0 1 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0 1 1 0 1 0 1 A A A B B B 111 001 000 110 100 010 101 011 Sadašnje Sledeće C B A C+ B+ A+ 0 0 0 0 1 0 0 0 1 1 1 0 0 1 0 0 1 1 0 1 1 1 0 1 1 0 0 0 1 0 1 0 1 1 1 0 1 1 0 0 0 0 1 1 1 1 0 0 B+ C+ A+ Primer kompleksnijeg brojača (nastavak) • Uključiti i stanja nije-važno u tabelu tranzicija, da se definiše način kako se brojač vraća u projektovani sled VTŠ Novi Sad Elektronika 2 - Digitalna elektronika17

  18. 111 001 000 110 100 010 101 implementacija na prethodnom slajdu 011 111 001 000 110 100 010 101 011 Samo-startujući brojači • Početna stanja • Prilikom uključenja brojač može da bude i u nekorišćenom ili u ne-validnom stanju • Projektant mora da obezbedi da brojač radi i kad uđe u ne-validno stanje • Rešenje sa samo-startovanjem • Projektovati brojač tako da ne-validna stanja prelaze u validna • Može da se ograniči rad sa stanjima nije-važno VTŠ Novi Sad Elektronika 2 - Digitalna elektronika18

  19. izlaznalogika Izlazi Ulazi sledeće stanjelogika Sledeće stanje Sadašnje stanje Model stanja (State Machine) • Vrednosti koje se čuvaju u registrima predstavljaju stanje kola • Kombinaciona logika računa: • Sledeće stanje • Funkcija sadašnjeg stanja i ulaza • Izlaze • Funkcija sadašnjeg stanja i ulaza (Mealy-jeva“mašina”) • Funkcija samo sadašnjeg stanja (Moore-ova “mašina”) VTŠ Novi Sad Elektronika 2 - Digitalna elektronika19

  20. izlazna logika Izlazi Ulazi logika sledećeg stanja Sledeće stanje Sledeće stanje Stanje Sadašnje stanje 0 1 2 3 4 5 Takt Model stanja (nastavak) • Stanja: S1, S2, ..., Sk • Ulazi: I1, I2, ..., Im • Izlazi: O1, O2, ..., On • Funkcija tranzicije: Fs(Si, Ij) • Izlazna funkcija: Fo(Si) or Fo(Si, Ij) VTŠ Novi Sad Elektronika 2 - Digitalna elektronika20

  21. Primer: Automat za prodaju • Izbaciti proizvod nakon što je ubačeno 15 dinara • Jedan prorez za ubacivanje novca, samo metalni 5 i 10 dinara • Nema vraćanja novca Reset N mehanizam za izbacivanjeproizvoda VendingMachineFSM Otvaranje Senzornovčića D Takt VTŠ Novi Sad Elektronika 2 - Digitalna elektronika21

  22. Reset S0 N D S1 S2 N D N D S3 S4 [otvoreno] S5 [otvoreno] S6 [otvoreno] N S7 [otvoreno] Primer: Automat za prodaju (nastavak) • Pogodan prikaz • Proučiti tipične ulazne sekvence: • 3 novčića od 5 din • 5 din, zatim 10 din • 10 din, zatim 5 din • 2 novčića od 10 din • Nacrtati dijagram stanja: • Ulazi: N (5 din), D (10 din), reset • Izlaz: otvaranje vratanaca • Pretpostavke: • Pretpostavimo da su u jednom ciklusu prihvaćeni N i D • Svako stanje ima petlju za N = D = 0 (nema novčića) VTŠ Novi Sad Elektronika 2 - Digitalna elektronika22

  23. sadašnjeulazi sledećiizlazstanje D N otvaranje 0 din 0 0 0 din 0 0 1 5 din 0 1 0 10 din 0 1 1 – – 5 din 0 0 5 din 0 0 1 10 din 0 1 0 15 din 0 1 1 – –10 din 0 0 10 din 0 0 1 15 din 0 1 0 15 din 0 1 1 – –15 din – – 15 din 1 Reset 0 din N 5 din D N 10 din D N + D 15din [otvaranje] tabela simboličkih stanja Primer: Automat za prodaju (nastavak) • Minimizirati broj stanja – koristiti definisano stanje kad god je moguće VTŠ Novi Sad Elektronika 2 - Digitalna elektronika23

  24. Primer: Automat za prodaju (nastavak) • Jedinstveno kodiranje stanja sadašnje ulazi sledeće izlaz stanje stanje Q1 Q0 D N D1 D0 otvaranje 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 1 – – – 0 1 0 0 0 1 0 0 1 1 0 0 1 0 1 1 0 1 1 – – – 1 0 0 0 1 0 0 0 1 1 1 0 1 0 1 1 0 1 1 – – – 1 1 – – 1 1 1 VTŠ Novi Sad Elektronika 2 - Digitalna elektronika24

  25. Q1 Q1 Q1 Open D1 D0 0 1 1 0 1 0 1 1 X X X X 0 1 1 1 0 0 1 0 0 0 1 0 X X X X 0 0 1 0 0 0 1 1 0 1 1 1 X X X X 1 1 1 1 N N N D D D Q0 Q0 Q0 Primer: Automat za prodaju (nastavak) • Mapiranje u logiku D1 = Q1 + D + Q0 N D0 = Q0’ N + Q0 N’ + Q1 N + Q1 D OPEN = Q1 Q0 VTŠ Novi Sad Elektronika 2 - Digitalna elektronika25

  26. Primer: Automat za prodaju (nastavak) • Kodiranje za slučaj da je samo jedan ulaz aktivan sadašnje ulazi sledeće izlaz stanje stanjeQ3 Q2 Q1 Q0 D N D3 D2 D1 D0 otvaranje 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 1 - - - - - 0 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0 1 1 - - - - - 0 1 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 - - - - - 1 0 0 0 - - 1 0 0 0 1 D0 = Q0 D’ N’ D1 = Q0 N + Q1 D’ N’ D2 = Q0 D + Q1 N + Q2 D’ N’ D3 = Q1 D + Q2 D + Q2 N + Q3 OPEN = Q3 VTŠ Novi Sad Elektronika 2 - Digitalna elektronika26

  27. X’ 00[0] X’ X X 10 [0] 01[1] X’ X’ 11[0] X X Jedna implementacija detektora ivice • "Ad hoc" rešenje - nije minimalno, ali je jeftino i brzo VTŠ Novi Sad Elektronika 2 - Digitalna elektronika27

More Related