30
II. Elektronički sklopovi 1 DIGITALNA ELEKTRONIKA II

12 - Sekvencijalna logika

Embed Size (px)

DESCRIPTION

sekvencijalna logika

Citation preview

Page 1: 12 - Sekvencijalna logika

II. Elektronički sklopovi 1

DIGITALNA ELEKTRONIKA II

Page 2: 12 - Sekvencijalna logika

2

Sekvencijalna logika

• Kombinacijska logika: stanja na izlazu određena isključivo trenutnim ulaznim stanjima (dosad pokazano)

• Sekvencijalna (sekvencijska) logika: izlazi nisu određeni samo ulazima već i sekvencom ili slijedom ulaza koji su doveli do trenutnog stanja. Drugim riječima, sklopovi koji koriste ovu logiku zavise o prošlim ulaznim stanjima - imaju svojstva memorije.

Page 3: 12 - Sekvencijalna logika

3

Sekvencijalna logika

Općeniti sekvencijalni sustav:

kombinacijska logika + memorija + povratna veza

sklopovi koji mogu pohraniti binarnu informaciju

Page 4: 12 - Sekvencijalna logika

4

Sekvencijalna logika

• Sekvencijalni sklopovi mogu se podijeliti na sinkrone i asinkrone.

• Kod sinkronih sustava ulazi, izlazi i unutrašnja stanja su uzorkovana u točno određenim vremenskim trenucima, definiranim signalom takta (clock-a).

• Sklopovlje asinkronih sustava u bilo kojem trenutku može promijeniti stanje s obzirom na promjenu stanja na ulazima.

Page 5: 12 - Sekvencijalna logika

5

Sekvencijalna logika

•Jedni od najčešćih sekvencijalnih sklopova: multivibratori.

• Multivibratori su općenito sklopovi koji imaju dva izlaza koji su međusobno komplementarni te nijedan, jedan ili više ulaza.

• Komplementarne izlaze najčešće označavamo sa i (umjesto ponekad se koristi i oznaka Q’ ).

•S obzirom na komplementarnost izlaza, izlazi mogu biti u samo dva moguća stanja (Q=1, Q’=0 ili Q=0, Q’=1). U kojem stanju će se naći, zavisi o stanju ulaza. Ako se izlazi ne mijenjaju dok se ulazi ne mijenjaju, sklop je u stabilnom stanju. No ako se ulazi ne mijenjaju, a izlazi se ipak kasnije “spontano” promijene, sklop je u nestabilnom ili kvazistabilnom stanju.

Q Q Q

Page 6: 12 - Sekvencijalna logika

6

Sekvencijalna logikaRazlikujemo tri osnovne grupe multivibratora:

• Bistabilni multivibrator (bistabil): Oba izlazna stanja su stabilna-sklop ostaje u jednom od moguća dva stanja sve dok ulazni signal ne izazove promjenu (djeluje kao memorijski element)

• Monostabilni multivibrator (monostabil): Jedno stanje je stabilno, a drugo kvazistabilno. Sklop ostaje u stabilnom stanju dok ulaznim signalom ne prouzrokujemo dovođenje sklopa u kvazistabilno stanje. U takvom stanju ostaje određeno vrijeme, a potom se automatski (bez obzira na stanje ulaza) vraća u stabilno stanje.

• Astabilni multivibrator (astabil): Oba stanja su kvazistabilna. Sklop ostaje u svakom od njih određeni vremenski period, a potom automatski prelazi u drugo kvazistabilno stanje – nema ulaza – automatski oscilira sa određenom frekvencijom

Page 7: 12 - Sekvencijalna logika

7

Sekvencijalna logika

Multivibratori se mogu koristiti za generiranje impulsnih signala

• bistabilni multivibrator - naponski skok

• monostabilni multivibrator - pravokutni impuls

• astabilni multivibrator - pravokutni val

Osim toga:

• Monostabili i kao sklopovi za kašnjenje

• Bistabili kao temeljni memorijski sklopovi u digitalnim sustavima.

t

t

t

Page 8: 12 - Sekvencijalna logika

8

Sekvencijalna logika

Bistabil ima dva izlaza, pri čemu jedan uvijek pokazuje komplementarnu vrijednost od drugoga. Bistabil ima dva stabilna stanja i sve dok je priključen na izvor napajanja ne mijenja stanja na svojim izlazima. Iako se u literaturi može pronaći da se za sve bistabile koristi izraz flip-flopovi, točnije ih je podijeliti u dvije skupine:

• Razinom okidani bistabil (latch): Bistabil koji daje odziv na svojim izlazima kod promjene razine ulaznog napona (čim ul. napon dosegne razinu koja se interpretira kao 0 ili 1).

• Bridom okidani bistabil (flip-flop): Ovaj bistabil daje odziv na ulazne promjene samo u vremenskim trenucima promjene posebnog ulaznog signala, tzv. takta (u trenutku brida (promjene) signala takta).

Page 9: 12 - Sekvencijalna logika

9

Razinom okidani bistabili

Temeljni tip bistabila: SR bistabil (SET-RESET) prikazan na slici. Dva ulaza označena su sa S i R, a izlazi sa i Q Q

R

S

Q

Q

S

R Q

Q

a) b)

S R Q n Q n

0 00

00

000

111 1

11

Q n-1 Q n-1 Nema prom jene

RESET

SET

Neodredeno

SR bistabil realiziran pomoću dva NILI sklopa

A B Z1 1 00 1 01 0 00 0 1

NILI tablica istinetočnije: zabranjeno!

Page 10: 12 - Sekvencijalna logika

10

Razinom okidani bistabili (SR bistabil)R=1, S=0 (“Reset” bistabila → Q=0): R

S

Q

Q

A B Z1 1 00 1 01 0 00 0 1

NILI vrata:

R=1 → gornja NILI vrata sigurno imaju 0 na izlazu (Q=0) (pogledati tablicu istine NILI vrata) → donja NILI vrata onda imaju 0 na oba ulaza 0 → Q’=1

Q’S=1 → donja NILI vrata sigurno imaju 0 na izlazu (Q’=0) (pogledati tablicu istine NILI vrata) → gornja NILI vrata onda imaju 0 na oba ulaza 0 → Q=1

R=0, S=1 (“Set” bistabila → Q=1):

R=0, S=0 (“Memorijski mod”):

• Pretpostavimo stanje prije: Q=1, Q’=0: Q=1 → donja NILI vrata imaju 0 na izlazu (Q’=0) → gornja NILI vrata onda imaju 0 na oba ulaza 0 → Q=1 → Q, Q’ ostaju nepromijenjena (kao u prethodnom, n-1 trenutku) i nakon postavljanja oba ulaza na 0

• Pretpostavimo stanje prije: Q=0, Q’=1: Q’=1 → gornja NILI vrata imaju 0 na izlazu (Q=0) → donja NILI vrata onda imaju 0 na oba ulaza 0 → Q’=1 → Q, Q’ ostaju nepromijenjena i nakon postavljanja oba ulaza na 0

Page 11: 12 - Sekvencijalna logika

11

Razinom okidani bistabili (SR bistabil)R=1, S=1 (Zabranjeno stanje!): R

S

Q

Q

A B Z1 1 00 1 01 0 00 0 1

NILI vrata:

Oba NILI vrata sigurno imaju 0 na izlazu (Q=0, Q’=0). S ovim je narušen uvjet da izlazi moraju biti komplementarni, što može dovesti do neodređenog stanja na izlazima:

Q’Pretpostavimo da nakon ovoga R=0, S=0

Pretpostavimo da se prvo gornja NILI vrata postave u 1 (tj. prvo Q=1). U tom trenutku na ulazima donjih vrata više nisu stanja 0 i 0 već 0 i 1, pa se izlaz donjih vrata sada postavi u 0 (Q’=0). Dakle, rezultat je Q=1, Q’=0. Međutim, ako se dogodi da donja NILI vrata prvo dosegnu 1 na svom izlazu, istim mehanizmom se dobije stanje izlaza Q=0, Q’=1.

Zaključak: ako se nakon zabranjenog stanja postavi R=0, S=0 ne zna se u kojem će se od dva moguća stanja naći izlazi → ovo je razlog zašto je R=1, S=1 zabranjeno!

Na početku su oba ulaza ali i oba ulaza na 0. Međutim, kako NILI vrata daju 1 na izlazu ako imaju sve 0 na ulazima, ovo stanje je neodrživo. Stoga oba vrata pokušavaju dati 1 na svojim izlazima. Međutim, uvijek će jedna vrata postići ovo stanje malo prije, ali ne znamo koja (vrata se ne mogu napraviti idealno ista).

Page 12: 12 - Sekvencijalna logika

12

Razinom okidani bistabili (SR bistabil)

• Ovu vrstu bistabila možemo smatrati za jednostavan oblik električne memorije jer sklop “pamti” koji je od dva ulaza posljednji imao vrijednost logičke 1.

S

R

Q

Q

Vremenski dijagram SR bistabila (stanje ulaza S,R i izlaza Q,Q’)

“zapamćena” 1“izbrisana” 1

Page 13: 12 - Sekvencijalna logika

R

S

Q

Q

E

S’

R’

a) b)

Q

Q

QQ

QQ

S

E

R

13

Razinom okidani bistabili (SR bistabil sa E ulazom)

• Često je korisno omogućiti upravljanje radom bistabila na način da signal sa ulaza bude omogućen u nekim trenucima, a onemogućen u drugim.

• Nešto složeniji sklop SR bistabila sa tri ulaza omogućava takvo upravljanje

SR bistabil

Page 14: 12 - Sekvencijalna logika

14

Razinom okidani bistabili (SR bistabil sa E ulazom)

• Ulaz E (Enable) koristi se za omogućavanje ili zabranu djelovanja ulaza na SR bistabil.

• Kad je ulaz E = 0, S’ i R’ su u 0 (sjetimo se tablice istine I vrata), bez obzira na stanja ulaza S i R. Bilo kakve daljnje promjene na S i R ulazima se stoga potpuno ignoriraju (jer “ne dospijevaju” do S’ i R’ ulaza SR bistabila).

R

S

Q

Q

E

S’

R’

a) b)

Q

Q

QQ

QQ

S

E

R

SR bistabil

Page 15: 12 - Sekvencijalna logika

15

Razinom okidani bistabili (SR bistabil sa E ulazom)

• Zbog toga je bistabil stalno u memorijskom modu rada, dakle za E=0 onemogućena je promjena stanja na izlazu (bez obzira na stanje ulaza).

•Kada je ulaz E = 1, stanja se postavljaju ovisno o ulazima S i R na već opisani način za SR bistabil. Ulazi SR bistabila S’ i R’ su isti kao S i R ulazi u sklop. Drugim riječima, ako je E=1, SR bistabil sa E ulazom se ponaša potpuno isto kao SR bistabil.

R

S

Q

Q

E

S’

R’

a) b)

Q

Q

QQ

QQ

S

E

R

SR bistabil

Page 16: 12 - Sekvencijalna logika

16

Razinom okidani bistabili (D bistabil)

Zabranjeno stanje SR bistabila (S = R = 1) izbjegava se zabranom postavljanja oba ulaza u 1. To se postiže D (Data) bistabilom koji je zapravo modificirani SR bistabil sa E ulazom. Jedina modifikacija je dodan inverter (NE vrata) na ulazu. Inverter osigurava da se bit sa ulaza dovodi na S, R ulaze SR bistabila na način da su uvijek komplementarni (D=1→ S=1, R=0; D=0 →S=0, R=1):

D

Q

Q

E

S’

R’

a) b)

Q

Q

QQ

QQ

D

E

a) Jedna od mogućih izvedbi D bistabila; b) Simbol sklopa

SR bistabil sa E ulazomS

R

E

Page 17: 12 - Sekvencijalna logika

17

Razinom okidani bistabili (D bistabil)

• D bistabil ima dva ulaza D i E. Za E = 1, izlaz Q postaje jednak trenutnoj vrijednosti D, a za E = 0, Q zadržava zadnju vrijednost koju je imao. Možemo reći da, nakon E=0 zadnja vrijednost ulaza ostaje zapamćena na izlazu bistabila (Q) bez obzira na daljnje promjene ulaza.

D

E

Q

Nakon ovoga, bistabil “pamti” zadnju vrijednost sa ulaza (u ovom primjeru 1) i “ignorira” daljnje promjene na ulazu

Page 18: 12 - Sekvencijalna logika

18

Razinom okidani bistabili (D bistabil)

Na ovaj način zapravo nam je omogućeno pohranjivanje jednog bita informacije pa se D bistabili uglavnom koriste u grupama kako bi se pohranile čitave riječi

8 D bistabila

E

X 0

X 1

X 2

X 3

X 4

X 5

X 6

X 7 Y 7

Y 6

Y 5

Y 4

Y 3

Y 2

Y 1

Y 0

Za primjer prikazan na slici izlazi Y0 – Y7 su identični ulazima X0 – X7 ukoliko je ulaz E = 1. Postavljanjem ulaza E u 0, izlazi su “zamrznuti” u stanjima kakva su bila u trenutku kada je E postavljen u 0, dakle pohranjuje se neka određena binarna vrijednost (u ovom primjeru 8 bitova tj. 1 byte). Trenutak kada se ulazi žele zapamtiti se bira promjenom E ulaza sa 1 na 0.

Pohranjivanje

8-bitnog podatka s 8 D bistabila

Page 19: 12 - Sekvencijalna logika

19

Bridom okidani bistabili • Često puta se kod digitalnih sklopova pojavljuje potreba za sinkronizacijom rada

većeg broja različitih sklopova i korisno je precizno upravljati trenucima kada sklop može mijenjati stanja. Također, korisno je i da se izlazi mijenjaju samo u točno određenim trenutcima, umjesto u širem intervalu. Bridom okidani bistabili postaju “aktivni” samo u trenutku brida, a ostatak vremena ignoriraju promjene na ulazima.

• Bridom okidani bistabili su sastavljeni od osnovnih razinom upravljanih bistabila, a upravljani su signalom takta kao ulaznim signalom.

• Takt, CK, je signal pravokutnog valnog oblika prikazan na slici:

CK

CK

CK

a)

b)

c)

a) Signal takta;

b) Pozitivni brid;

c) Negativni brid

Page 20: 12 - Sekvencijalna logika

20

Bridom okidani bistabili

a) Simbol SR bistabila okidanog pozitivnim bridom;

b) Simbol SR bistabila okidanog negativnim bridom

S

R

CK

Q

Q

S

R

CK

Q

Q

a) b)

Page 21: 12 - Sekvencijalna logika

21

Bridom okidani bistabili

• Bridom okinuti bistabil uzima uzorke signala s ulaza samo na bridovima signala takta i izlazi se mijenjaju samo kao rezultat pojave brida signala takta.

• Bridom okidan SR bistabil razlikuje se od razinom okidanog SR bistabila po tome što ulazi djeluju na ovaj sklop samo u trenutku pozitivnog, odnosno negativnog brida takta (ovisno o vrsti sklopa). Sve dok se ne dogodi brid signala takta, promjene na ulazima se ignoriraju, pa izlazi ostaju nepromijenjeni.

Page 22: 12 - Sekvencijalna logika

22

Bridom okidani bistabili (SR bistabil okidan pozitivnim bridom)

SR bistabil okidan pozitivnim bridom (simbol pokazan prije) može se realizirati tzv. “master-slave” sklopom:

a) Sklop; b) Tablica istinitosti

S

R

Q

Q

E

S

R

Q

Q

E

Q

Q

S

R

CK

QnCKRS Qn

0 00 11 01 1

0 11 00 0

Qn-1 Qn-1 Nema promjeneRESETSETZabranjeno

a) b)

Page 23: 12 - Sekvencijalna logika

23

Bridom okidani bistabili (SR bistabil okidan pozitivnim bridom)

S

R

Q

Q

E

S

R

Q

Q

E

Q

Q

S

R

CK

QnCKRS Qn

0 00 11 01 1

0 11 00 0

Qn-1 Qn-1 Nema promjeneRESETSETZabranjeno

a) b)

Dok CK=0, E ulaz prvog bistabila (master) je 1 – izlazi (Q, Q) master-a “prate” stanje na ulazu (S,R). No drugi bistabil (slave) ima E=0 (ulazi su mu “isključeni”), pa “ignorira” promjene na svom ulazu (na izlazu ostaje zadnje zapamćeno stanje).

U trenutku kad CK prijeđe iz 0 u 1 (pozitivan brid) , prvo se slave “uključi” (jer mu je sada E=1) i zapamti vrijednosti na svom ulazu (tj. zadnju vrijednost na izlazu master-a). Odmah nakon ovoga (jer postoji (vrlo) malo kašnjenje propagacije signala kroz inverter) E ulaz od mastera se postavi u 0, te se master “isključuje” od ulaza. Nakon ovoga bilo kakve daljnje promjene stanja na ulazu master ignorira.

“master” “slave”

Page 24: 12 - Sekvencijalna logika

24

Bridom okidani bistabili (SR bistabil okidan pozitivnim bridom)

S

R

Q

Q

E

S

R

Q

Q

E

Q

Q

S

R

CK

QnCKRS Qn

0 00 11 01 1

0 11 00 0

Qn-1 Qn-1 Nema promjeneRESETSETZabranjeno

a) b)

Ako CK ostaje u 1, svaka daljnja promjena na ulazu (S,R) ignorirana je od strane master-a (jer mu je E=0) → izlaz master-a se ne mijenja → ulaz slave-a se ne mijenja → izlaz slave-a se ne mijenja (iako mu je E=1, tj. iako je “uključen”)

Kada CK prijeđe iz 1 nazad u 0 (negativni brid), slave se opet “isključuje”, a odmah nakon ovoga master se “uključuje” i počinje pratiti ulaze. No, ovo nema efekta na slave-a, jer je već “isključen” (ima E=0). Rezultat – izlaz ostaje i dalje nepromijenjen.

KRAJNJI REZULTAT: IZLAZI SE MIJENJAJU JEDINO U TRENUTKU POZITIVNOG BRIDA!

“master” “slave”

Page 25: 12 - Sekvencijalna logika

25

Bridom okidani bistabili (SR bistabil okidan pozitivnim bridom)

Vremenski dijagram SR bistabila okidanog pozitivnim bridom

CK

Q

R

S

S = 1R = 0SET

S = 0R = 1

RESET

S = 1R = 0SET

S = 0R = 0

bez prom jene

S = 0R = 1

RESET

Izlaz Q se (zavisno o stanja ulaza) mijenja

samo u trenutku pozitivnog brida ulaza

takta CK. U svim ostalim trenutcima

bistabil je “slijep” za stanja ulaza!

Page 26: 12 - Sekvencijalna logika

26

Bridom okidani bistabili

D bistabil okidan pozitivnim bridom:

a) Simbol; b) Nadomjesna shema; c) Tablica istinitosti

D

CK

Q

Q

a)

CK

S

CK

Q

Q

b)

CK

R

D

c)

D CK Q n Q n

0

1 1

10

0

RESET

SET

Page 27: 12 - Sekvencijalna logika

27

Bridom okidani bistabili

Vremenski dijagram D bistabila okidanog pozitivnim bridom

CK

Q

D

D = 1Q = 1

D = 0Q = 0

D = 0Q = 0

D = 1Q = 1

D = 1Q = 1

Izlaz Q “prati” stanje ulaza D samo u trenutku

pozitivnog brida ulaza CK. U svim ostalim trenutcima bistabil “ignorira” stanje

na ulazu D i Q se ne mijenja, bez obzira na D!

Page 28: 12 - Sekvencijalna logika

28

Već navedeni nedostatak SR bistabila zbog zabranjenog stanja koje nastupa kada su oba ulaza u 1 (S = 1, R = 1) osim korištenja D bistabila može se izbjeći i korištenjem JK bistabila (nazvan po inicijalima njegovog izumitelja Jack Kilby-a).

Ponovimo: kod SR bistabila, imamo tri definirana izlaza:

- Nema promjene; Q = Qn-1 ako su oba ulaza jednaka 0

- RESET (briši); Q = 0 ako je S = 0, R = 1

- SET (postavi); Q = 1 ako je S = 1, R = 0

- No i ZABRANJENO stanje ulaza (S=1, R=1).

Bridom okidani bistabili (JK bistabil)

Page 29: 12 - Sekvencijalna logika

29

Bridom okidani bistabili

• Zabranjeno stanje JK bistabil nema, već umjesto njega ima stanje prebacivanja (TOGGLE).

• Dakle, ako su oba ulaza u 1, onda izlazi jednostavno mijenjaju stanje.

J

K

CK

Q

Q

a) b)

J K Q n Q n

0 00

00

01

11 1

11

Q n-1

Q n-1

Nema promjene

RESET

SET

Prebaci

Q n-1

Q n-1

CK

Simbol (a) i tablica istine (b) bistabila okidanog negativnim bridom

!!!

Page 30: 12 - Sekvencijalna logika

30

JK bistabil može se iskoristiti za realizaciju drugih bistabila kao što su SR, D i T (Toggle) bridom okidani bistabili. Značajke T bistabila:

J

K

CK

Q

Q

a) b)

T Q n Q n

01

Q n-1

Q n-1

Q n-1

Q n-1

CK

T CK

T bistabil okidan pozitivnim bridom: a) Izvedba pomoću JK bistabila; b) Tablica istinitosti

Bridom okidani bistabili (T bistabil)

• J i K ulazi JK bistabila su spojeni kako bi dobili samo jedan ulaz kojeg označavamo sa T (eng. Toggle - prebaci).

• Ako je ulaz T u 0, sklop je u memorijskom modu i zadržava trenutno stanje. Ako je ulaz T = 1, oba ulaza J i K su jednaka 1 i sklop mijenja stanje svakim taktom.

• Često se koristi kao djelilo frekvencije (takt frekvencije f na ulazu pretvara u takt frekvencije f/2 na izlazu) i za brojila