vanr.prof.dr.lejla banjanović- mehmedović · akose izlazzadnjeg flip-flop-a vraća naserijskiulaz...

36
Sekvencijalna kola Registri. Brojači. Vanr.prof.dr.Lejla Banjanović- Mehmedović

Upload: others

Post on 08-Jun-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Sekvencijalna kolaSekvencijalna kola

Registri. Brojači.

Vanr.prof.dr.Lejla Banjanović-Mehmedović

Page 2: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Registri� Flip-flopovi pamte malu količinu podataka, 1 bit. Kada

se koristi n flip-flopova za sortiranje n-bita, koriste se registri.

� Globalno, registri su sekvencijalne mreže koje služe � Globalno, registri su sekvencijalne mreže koje služe za privremeno pamćenje male količine podataka.

� Upis i čitanje podataka se vrši serijski (bit po bit) iliparalelno (svaki bit istovremeno).

� Postoje stacionarni i shift registri. Pored pamćenja, shift registri su u stanju i da pomjeraju podatke bit pobit.

PLS_10 Sekvencijalna kola

Page 3: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Obični (stacionarni)registri

PLS_10 Sekvencijalna kola

Logička šema stacionarnog registra kapaciteta n bita

Page 4: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Obični (stacionarni)registri

� Za pamćenje se koriste D flip-flop-ovi kojima se upravljazajedničkim takt (CLK) signalom.

� Upis se vrši paralelno pri silaznoj ivici takt signala.

� Sadržaj flip-flop-ova se može anulirati pomoću asinhronih� Sadržaj flip-flop-ova se može anulirati pomoću asinhronihreset ulaza koji su povezani na CLR signal.

� Čitanje podataka sa izlaza je uvjek moguće, osim jednogkratkog vremenskog intervala poslije upisa, dok izlazi flip-flop-ova ne stignu u novo stabilno stanje.

PLS_10 Sekvencijalna kola

Page 5: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Verilog kod n-bitnog registra

PLS_10 Sekvencijalna kola

Page 6: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Pomjerački (shift) registri� Kod shift registara moguće je prenijeti sadržaj elementarnih

memorija u susjednu memorijsku lokaciju pri aktivnoj ivicitakt signala.

� Pomjeranje se može vršiti ili u lijevom ili u desnom smjerudok kod univerzalnih pomjeračkih registara smjerdok kod univerzalnih pomjeračkih registara smjerpomjeranja se može zadati odgovarajućim upravljačkimsignalom.

� Pri pomjeranju sadržaj prethodnog memorijskog elementase upisuje u naredni, dok sadržaj zadnjeg memorijskogelementa se gubi. Kod složenih pomjeračkih registara, pored serijskog, postoji i mogućnost paralelnog upisa ičitanja.

PLS_10 Sekvencijalna kola

Page 7: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Jednostavni šift registar

� Šiftanje udesno sadržaja, korištenjem

In ulaza.

� Za implementaciju shift

PLS_10 Sekvencijalna kola

� Za implementaciju shift registara, neophodno je korištenje ili trigerovanja na ivicu (edge-triggered) ili master-slave flip-flop-ova.

Page 8: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Dvosmjerni pomjerački (shift) registri

PLS_10 Sekvencijalna kola

Logička šema dvosmjernog pomjeračkog registra

Page 9: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Dvosmjerni pomjerački (shift) registri

� Smjer pomjeranja se bira pomoću signala.

� RIN predstavlja serijski ulaz pri pomjeranju udesno, dok pripomjeranju ulijevo funkciju serijskog ulaza obavlja signal LIN.

/L R

LIN.

� Serijski izlaz je QA ili QD u zavisnosti od smjera pomjeranja.

� Takt (CLK) signal, čija je funkcija sinhronizacija pomjeranjapodataka, je zajednički za sve flip-flop-ove.

PLS_10 Sekvencijalna kola

Page 10: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Šift registri sa paralelnim ulazima� Često neophodan paralelni

transfer podataka u računarima...

� Upravljački signal se koristi da selektuje mod operacija.

PLS_10 Sekvencijalna kola

� Shift/Load = 0, kolo radi kao

šift registar

� Shift/Load = 1, paralelni

ulazni podaci napunjeni u

registar .

� U oba slučaja, akcije se

dešavaju na pozitivnu ivicu

kloka.

Page 11: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Verilog kod šift registara sa paralelnim ulazom

PLS_10 Sekvencijalna kola

Page 12: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Brojači � Primjena:

� Za brojanje i djeljenje broja impulsa

� Za formiranje upravljačkih signala

� Za generisanje referentnog napona kod A/D konverzije� Za generisanje referentnog napona kod A/D konverzije

PLS_10 Sekvencijalna kola

Page 13: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Brojači

� Registri koji pod uticajem upravljačkih impulsaprolaze kroz unaprijed određena stanja se nazivajubrojačima.

� Upravljački signali mogu da potiću iz izvora takt signala iliiz bilo kog drugog kola koje je u stanju da generiše digitalneiz bilo kog drugog kola koje je u stanju da generiše digitalnesignale.

� Impulsi su obično periodični, ali brojači mogu da rade ipod uticajem impulsa koji se pojavljuju u slučajnimvremenskim trenucima.

PLS_10 Sekvencijalna kola

Page 14: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Brojači� Pored memorijskih elemenata brojači obično sadrže i

ulaznu kombinacionu mrežu koja obezbjeđujeodgovarajuće promjene stanja u registru koji je centralnidio brojača (određuje način brojanja). dio brojača (određuje način brojanja).

� Redoslijed stanja brojača može da bude jednak redoslijedubinarnih brojeva (binarni brojač), ali po potrebi je moguće formirati i proizvoljan redoslijed.

� Broj različitih stanja kod brojača se naziva moduobrojača. U opštem slučaju, pomoću n memorijskihelemenata moguće je realizovati brojač modula 2n

PLS_10 Sekvencijalna kola

Page 15: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Brojači� Izlazna kombinaciona mreža koja je svojstvena

sekvencijalnim mrežama ne postoji kod brojača. Izlazimemorijskih elemenata su ujedno i izlazi brojača.

� Brojače je moguće svrstati u dvije kategorije: � Brojače je moguće svrstati u dvije kategorije:

� asinhroni (serijski) i

� sinhroni (paralelni) brojači.

PLS_10 Sekvencijalna kola

Page 16: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Asinhroni (serijski) brojači� Pri realizaciji asinhronih brojača , flip-flop-ovi nemaju zajednički

upravljački signal, nego se izlaz prethodnog flip-flop-a veže na takt ulaz narednog flip-flop-a. Na ovaj način se kompleksnostulazne kombinacione mreže značajno smanjuje ili čak postaje suvišan.

� Najjednostavnija struktura asinhronog brojača se dobija kaskadnom � Najjednostavnija struktura asinhronog brojača se dobija kaskadnom vezom flip-flop-ova. Upravljački signal se dovodi na takt ulaz prvog memorijskog elementa, a izlazi pojedinih flip-flop-ova se povezuju na takt ulaze narednih flip-flop-ova.

� Ako je potrebno, početno stanje brojača je moguće podesiti reset (CLR) signalom koji se istovremeno dovodi na asihnrone reset ulaze svih flip-flop-ova.

PLS_10 Sekvencijalna kola

Page 17: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Asinhroni (serijski) brojači� Na vremenskim dijagramima su zanemarena kašnjenja flip flop-ova.

Zbog kaskadne veze, pojedina stanja se pojavljuju sa određenim vremenom kašnjenja u odnosu na upravljački signal. Ako se snimaju stanja pojedinih flip-flop-ova za vrijeme prelaznog procesa, dobijeni rezultat će najverovatnije biti pogrešan.rezultat će najverovatnije biti pogrešan.

� Sa jedne strane, rješenje ovog problema se sastoji u ograničavanju frekvencije takt signala (to obezbjeđuje dovoljno vremena za izčezavanje hazardnih pojava), dok sa druge strane, izčitavanjevrijednosti je potrebno vršiti neposredno prije pojave narednog upravljačkog signala. Kada se asinhroni brojač koristi kao djelitelj frekvencije (npr. samo izlaz Q2 se vodi dalje), frekvencija takt signala je ograničena samo sa vremenom kašnjenja prvog flip-flop-a.

PLS_10 Sekvencijalna kola

Page 18: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

3-bitni brojač unaprijed� T ulaz svakog flip-flopa je

povezan na konstantu 1 –stanje svakog flip-flopa se aktivira na pozitivnu ivicu svakog kloka.

PLS_10 Sekvencijalna kola

svakog kloka.

� Cilj ovog kola – brojanje impulsa na primarnom ulazu Clock.

� Moduo brojanja je 8 zaslučaj tri memorijskaelementa; sekvenca Q2Q1Q0

� Asinhrona priroda (kašnjenje)

Page 19: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

3-bitni brojač unazad

� Brojači koji brojeunazad imaju početnostanje koje odgovaranajvećoj brojnojvrednosti odnosno kada

PLS_10 Sekvencijalna kola

vrednosti odnosno kadasu svi flip-flopovisetovani.

Page 20: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Asinhorni vs. Sinhroni brojači� Asinhroni brojači - dosta spori za veći broj bita; veća

kašnjenja.

� Preporuka: sinhroni brojač sa T flip-flopom

PLS_10 Sekvencijalna kola

Page 21: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

4-bitni sinhroni brojač unaprijed

� Moduo-16 brojačunaprijed

� Dodata AND kola ucilju istog kašnjenja

PLS_10 Sekvencijalna kola

cilju istog kašnjenjaza svaki flip-flopnakon aktivne iviceClock signala.

� Sinhrona varijanta

Page 22: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

4-bitni sinhroni brojač unaprijed sa Enable i Clear signalom

� Brojač počinje sa 0 (Clear signal)

� Brojanje kada je Enable =1

PLS_10 Sekvencijalna kola

Dodatak Enable and Clear capability

Page 23: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

4-bitni brojač sa D flip-flopovima

PLS_10 Sekvencijalna kola

� D-flip-flop i XOR gajtovi formiraju funkcionalnost T-flip-flopa.

� Istovjetne sheme.

Page 24: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

4-bitni brojač sa paralelnim ulazom

� 2-ulazni multiplexer jeinsertovan prije svakog D ulaza.

� Jedan ulaz – normalno brojanje; drugi – podatak

PLS_10 Sekvencijalna kola

brojanje; drugi – podatak direktno punjiv u flip-flop.

� Load = 0 brojanje

� Load = 1 nova inicijalna vrijednost D3D2D1D0 se puni u brojač

Page 25: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

CPLD implementacija

PLS_10 Sekvencijalna kola

Page 26: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Verilog kod 4-bitnog brojača unaprijed

PLS_10 Sekvencijalna kola

Page 27: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Verilog kod brojača unaprijed sa paralelnim ulazom

PLS_10 Sekvencijalna kola

Page 28: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Verilog kod brojača unazad sa paralelnim ulazom

PLS_10 Sekvencijalna kola

Page 29: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Obostrani brojači mogu brojati i unaprijed i unazad (počemu su i dobili naziv).

Dvosmjerni brojači

PLS_10 Sekvencijalna kola

Page 30: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

� Kada brojač broji unaprijed, kontrolni priključak K sepostavlja na visok nivo, tj. K = 1, i preko gornjih logičkihkola obezbjeđuje se potrebna veza za brojanje unaprijed.

� U tom slučaju je izlaz invertora =1, što blokira sva kolaK

Dvosmjerni brojači

� U tom slučaju je izlaz invertora =1, što blokira sva kolavezana za komplementarne izlaze flip-flopova,čime se eliminiše mogućnost brojanja unazad.

� Kada želimo da brojimo unazad, kontrolni priključak sepostavlja na nizak nivo odnosno K = 0, =1 a prekodonjih logičkih kola se obezbjeđuje potrebna veza zabrojanje unazad.

K

PLS_10 Sekvencijalna kola

K

Page 31: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Verilog kod UP/down brojača

PLS_10 Sekvencijalna kola

Page 32: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Kružni registri (kružni brojači)

PLS_10 Sekvencijalna kola

Logička šema n-bitnog kružnog registra (brojača)

4-bitni kružni brojač

Page 33: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Kružni registri (kružni brojači)� Spajanjem izlaza pomjeračkog registra na sopstveni

serijski ulaz se dobija kružni registar.

� Podatak koji je jednom upisan u registar će kružiti sve dok je takt signal prisutan na njegovom upravljačkom ulazu. je takt signal prisutan na njegovom upravljačkom ulazu.

� Kako ovaj registar u normalnom režimu rada ne posjeduje ulaz za podatke i po svojoj prirodi generiše ponavljajuće sekvence, ovo kolo se još naziva i kružni brojač.

PLS_10 Sekvencijalna kola

Page 34: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Kružni registri (kružni brojači)

� U praktičnim primjenama za kružni tok podataka potrebno je izvršiti upis odgovarajućeg sadržaja u brojač. Ovo se obično vrši paralelno. Najčešće se samo jedan flip-flop setuje i u ostale se upisuje logička nula ili obrnuto. setuje i u ostale se upisuje logička nula ili obrnuto.

� Postoje i takva rješenja kod kojih su stanja flip-flop-ova nakon uključenja proizvoljna, ali poslije nekoliko periodatakt signala samo jedan flip-flop ostaje u setovanom stanju dok su svi ostali resetovani. Nakon prelaznog režima rad takvog kružnog brojača je pravilan.

PLS_10 Sekvencijalna kola

Page 35: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Džonsonov kružni registar (brojač)

PLS_10 Sekvencijalna kola

a). Logička šema Džonsonovog kružnog registra (brojača) i b).odgovarajuća tabela stanja.

Page 36: Vanr.prof.dr.Lejla Banjanović- Mehmedović · Akose izlazzadnjeg flip-flop-a vraća naserijskiulaz kružnogbrojača u invertovanomobliku dobijase Džonsonovkružniregistar(brojač)

Džonsonov kružni registar (brojač)

� Ako se izlaz zadnjeg flip-flop-a vraća na serijski ulazkružnog brojača u invertovanom obliku dobija se Džonsonov kružni registar (brojač). Nule i jedinice u normalnom režimu rada kruže prema redoslijedu (dat u tabeli).tabeli).

� U slučaju n flip-flop-ova, sekvenca istih brojeva se ponavljaposlije 2n perioda takt signala. Brojač će ući u pravilanrežim rada i ako se svi flip-flop-ovi resetuju u trenutkuuključenja.

� Ako se to propusti, moguće je da kolo na izlazu generiše pogrešne vrijednosti. Raznim povratnim spregama je moguće obezbjediti pravilno funkcionisanje kola.

PLS_10 Sekvencijalna kola