Download as pdf or txt
Download as pdf or txt
You are on page 1of 75

Komponentedigitalnihsistema

materijalzapripremuispitaizpredmetaArhitekturemikrosistema
Predmetninastavnik:G.Lj.orevi
Elektronskifakultet,Ni,2012.

Komponente uigitalnih sistema

2




Sadraj
1 Kombinacione komponente ............................................................................................... 4
1.1 Sabira sa rednim prenosom ...................................................................................... 5
1.2 Sabira/oduzima ....................................................................................................... 6
1.3 Logika jedinica ......................................................................................................... 6
1.4 Aritmetiko-logika jedinica ...................................................................................... 8
1.5 Dekoder .................................................................................................................... 11
1.2 Multiplekser ............................................................................................................. 15
1.3 Demultiplekser ......................................................................................................... 19
1.4 Koder ........................................................................................................................ 20
1.4.1 Binarni koderi .................................................................................................. 20
1.4.2 Prioritetni koder ............................................................................................... 21
1.5 Komparator ............................................................................................................... 24
1.5.1 Iterativna komparatorska mrea ...................................................................... 26
1.5.2 Hijerarhijske komparatorske mree ................................................................ 27
1.6 Kombinacioni pomerai i rotatori ............................................................................ 28
1.6.1 Barel pomera ................................................................................................. 30
1.7 ROM ......................................................................................................................... 31
1.8 PLA .......................................................................................................................... 32
2 Sekvencijalne komponente .............................................................................................. 35
2.1 Le kola i flip-flopovi .............................................................................................. 35
2.1.1 Le kola ........................................................................................................... 36
2.1.1.1 SR le ..................................................................................................... 36
2.1.1.2 SR le sa dozvolom ................................................................................ 37
2.1.1.3 D le ....................................................................................................... 37
2.1.1.4 Flip-flopovi ............................................................................................. 38
2.1.1.5 Tipovi flip-flopova ................................................................................. 42
2.2 Registarske komponente .......................................................................................... 45
2.2.1 Pomeraki registar ......................................................................................... 46
2.2.2 Binarni broja ................................................................................................ 48
Komponente uigitalnih sistema

S

2.2.3 Obostrani broja ............................................................................................ 48
2.2.4 BCD broja .................................................................................................... 50
2.2.5 Registarski fajl ............................................................................................... 51
2.2.6 RAM .............................................................................................................. 53
2.2.7 Stek ................................................................................................................ 57
2.2.8 FIFO .............................................................................................................. 61
2.3 Konani automati ..................................................................................................... 65
2.4 Staza podataka .......................................................................................................... 67
2.4.1 Paralelna staza podataka ........................................................................................ 72
3 Pitanja ...................................................................................................................... 75


Komponente uigitalnih sistema

4

Sloeni digitalni sistemi se projektuju tako to se najpre ukupna funkcija sistema razloi na vie
podfunkcija. Zatim se podfunkcije realizuju u vidu jednostavnijih digitalnih modula, ijim se
povezivanjemkonstruieeljenisistem.Iakojeunekimsluajevimaneophodnoprojektovatimodule
za neke specifine funkcije, ipak, najee, u praksi, sloeniji digitalni sistemi se mogu realizovati
korienjem standardnih modula ili komponenti. Standardne komponente obavljaju funkcije za koje
je uoeno da su korisne za veliki broj razliitih primena, a dostupne su u vidu integrisanih kola ili
bibliotekihkomponentiikaotakvespremnezadirektnuugradnjuusistemkojiseprojektuje.
Veina digitalnih sistema, ukljuujui i raunare, projektovana je da obrauje ili transformie
podatke. Ove transformacije mogu biti razliitih tipova, ukljuujui aritmetike i logike operacije,
kodiranje i dekodiranje podataka i reorganizaciju podataka. U optem sluaju, navedene
transformacije podataka se obavljaju pomou kombinacionih komponenti. Osnovna osobina
kombinacionih kola jeste injenica da se njihove izlazne vrednosti izraunavaju iskljuivo na osnovu
trenutnihulaznihvrednosti.Nakonsvakepromeneulaznihvrednosti,naizlazusejavljajunoveizlazne
vrednosti sa kanjenjem t
p
koje je neophodno da bi se izraunao novi rezultat. Kombinaciono kolo
nijeustanjudazapamtiprethodnerezultate,idaondatuinformaciju,zajednosatekuimulazom,
koristizaodreivanjenovogizlaza.
Zarazlikuodkombinacionih,sekvencijalnekomponentesadrememorijskeelemente,kaotosule
kolaiflipflopovi.Kaoposledicatoga,izlaznevrednostisekvencijalnihkomponentizavisenesamood
trenutnih ve i od prethodnih ulaznih vrednosti. Spektar sekvencijalne komponenti se protee od
bazinih memorijskih elemenata, kao to su le kola i flipflopovi, preko standardnih registarskih
komponenti,kaotosuprihvatni,pomerakiibrojakiregistri,isloenijihmemorijskihstruktura,kao
to su RAM, FIFO, stek, do staza podataka i upravljakih jedinca koje su u mogunosti da izvravaju
sloenealgoritme.
U ovom poglavlju, korienjem tehnika za logiko projektovanje, opisanih u poglavlju 2, bie
pokazano kao se projektuju generike kombinacione i sekvencijalne komponente sa registarskog
nivoaapstrakcije.
1 Kombinacione komponente
Kombinacionekomponentesekoristeza:transformacijupodataka,povezivanje,konverzijupodataka
i upravljanje. Konkretno, kombinacione komponente za transformaciju podataka obavljaju: (1)
aritmetike operacije (sabiranje, oduzimanje, mnoenje i deljenje), (2) logike operacije (AND, OR,
XOR ikomplement), (3)operacijeporeenja(veeili jednako,manje)i(4)operacijeza manipulaciju
nad bitovima (pomeranje, rotiranje, izdvajanje i umetanje bitova). Kombinacione komponente za
povezivanje su multiplekseri i magistrale, a koriste se za povezivanje aritmetikih i memorijskih
komponenti. Komponente za konverziju podataka, kao to su koderi i dekoderi, se koriste za
Komponente uigitalnih sistema

S

konverzijupodatkaizjednogunekidrugikod.Konano,univerzalnekombinacionekomponente,kao
to su ROM memorije i programabilna logika polja (PLD) prevashodno se koriste za projektovanje
upravljakihjedinica.
1.1 Sabira sa rednim prenosom
Sabira je kombinaciona komponenta koja se koristi za obavljanje operacije sabiranja binarnih
brojeva.Dvabinarnabroja,kaotosux=x
n1
x
0
iy=y
n1
y
0
,sabirajusetakotosenazbirsvakog
parbitax
i
iy
i
dodabitprenosac
i
kojijeprenesenizprethodnebitpozicije.Sabiranjemtribita,x
i
,y
i
i
c
i
, za svaku bitpoziciju i, 0in1, generie se bit sume s
i
i bit prenosa c
i+1
. Procedura sabiranja na
nivoujednebitpozicijeopisanajetabelomistinitostisaSl.11(a).
PolazeiodtabeleistinitostisaSl.11(a),auzpomoKarnoovihmapasaSl.11(b),moemoizvesti
logike jednaine na osnovu kojih projektujemo logiku emu jednobitnog sabiraa (Sl. 11(c)).
Jednobitnisabira,kojisabiradvajednobitnaoperandax
i
iy
i
,ibitulaznogprenosac
i
,poznatjepod
nazivompotpunisabira(FAFullAdder).

(a) (b) (c) (e)

(d)
Sl.11.Sabirasarednimprenosom:(a)tabelaistinitostipotpunogsabiraa;(b)Karnoovemape;(c)ematski
prikazpotpunogsabiraa;(d)struktura8bitnogsabiraa;(e)grafikisimbolbinarnogsabiraa.
Binarnisabiraseformirarednimpovezivanjempotpunihsabiraa,takotoseizlazniprenossvakog
potpunogsabiraakoristikaoulazniprenoszapotpunisabirakojizauzimaprvunarednubitpoziciju
vee teine. Na primer, 8bitni sabira se sastoji odosam potpunih sabiraa koji su povezani kao na
Sl. 11(d). U optem sluaju, nbitni sabira, iji je grafiki simbol prikazan na Sl. 11(e), moe se

1
1 1 1
00 01 11 10
0
1
x
i
y
i
c
i
c
i
= x
i
y
i
+ c
i
(x
i
y
i
)
FA
x
7
y
7
s
7
FA
x
6
y
6
s
6
c
7
c
out
FA
x
5
y
5
s
5
c
6
FA
x
4
y
4
s
4
c
5
FA
x
3
y
3
s
3
FA
x
2
y
2
s
2
c
3
FA
x
1
y
1
s
1
c
2
FA
x
0
y
0
s
0
c
1
c
0
c
4
Komponente uigitalnih sistema

6

konstruisati na ovaj nain. Kao to se moe lako zakljuiti, najdue kanjenje u sabirau sa rednim
prenosom odreeno je putanjom od ulaznog prenosa c
0
, ili bitpozicije najmanje teine x
0
i y
0
, do
izlaznog prenosa c
out
. Drugim reima, svaka promena nekog od bita c
0
, x
0
ili y
0
, mora da se prenese
krozsvepotpunesabirae,kakobiseizraunalisviizlaznibitovi.
1.2 Sabira/oduzima
Oduzimanjebinarnihbrojevaseobavljasabiranjemumanjenikaipotpunogkomplementaumanjioca.
Potpunikomplementsedobijatakotose,najpre,svakibitumanjiocakomplementira,azatimdoda
1. Dodavanje 1ce se ostvaruje tako to se prilikom sabiranja umanjenika i komplementiranog
umanjiocaulazniprenossabiraa,c
0
,postavina1.Buduidaseoduzimanjerealizujeprekosabiranja,
pogodnojekonstruisatifunkcionalnujedinicukojaeobavljatiobeoperacije,sabiranjeioduzimanje.

(a) (b)

(c)
Sl.12.Sabira/oduzima:(a)tabelaistinitosti;(b)grafikisimbol;(c)struktura8bitnogsabiraa/oduzimaa.
Sabira/oduzimaimadvaulaza,A=a
n1
a
0
iB=b
n1
b
0
,jedanizlazF=f
n1
f
0
ijedanselekcioni
signal, S. Kada je S=0, sabira/oduzima obavlja sabiranje, a kada je S=1 oduzimanje. Funkcionalna
tabela sabiraa/oduzimaa prikazana je na Sl. 12(a), a grafiki simbol na Sl. 12(b). Konano, kao
primer, na Sl. 12(c) je prikazana struktura 8bitnog sabiraa/oduzimaa. Kod ovog reenja,
komplementiranjeulazaBrealizujesekaoXORoperacijaizmeuSiB.Naime,SXORB=B,akovai
S=0,odnosnoSXORB=B

,akovaiS=1.
1.3 Logika jedinica
Uoptenogovorei,logikajedinicanamomoguavadaobavimojednuodnekolikologikihoperacija
nad dva nbitna operanda X=x
n1
x
0
i Y=y
n1
y
0
. Binarne logike operacije se primenjuju na
viebitne operande tako to se logika operacije primeni na svaki par odgovarajuih bitova dva
operanda. Na primer, logiko AND primenjeno na dva 4bitna operanda 1010 i 1100, daje 4bitni
rezultat1000.Drugimreima,uvekkadajeizabranafunkcijaf
i
,logikajedinicaeizraunatirezultat:
FA
a
7
b
7
f
7
FA
a6 b6
f
6
c7 cout
FA
a
5
b
5
f
5
c6
FA
a
4
b
4
f
4
c5
FA
a
3
b
3
f
3
FA
a
2
b
2
f
2
c
3
FA
a
1
b
1
f
1
c
2
FA
a
0 b
0
f
0
c
1
c
0 c
4
S
Komponente uigitalnih sistema

7

S=f
i
(X,Y)=f
i
(x
n1
,y
n1
)f
i
(x
0
,y
0
)
Budui da logika jedinica, koja je sposobna da izrauna svih 16 logikih operacija koje koriste dva
operanda, i nije tako sloena, iskoristiemo takvu jednu jedinicu kako bi smo demonstrirali optu
proceduruzaprojektovanjebilokojelogikejedinice.
Na Sl. 13(a) prikazano je svih 16 logikih operacija koje koriste dve promenljive. Poto je broj
operacija 16, za izbor jedne od njih, potrebne su etiri binarne promenljive, S
3
, S
2
, S
1
i S
0
. Kodiranje
selekcionihulazajetakvodajeS
i
=1,0i3,akoisamoakojemintermm
i
uizabranojfunkcijejednak
m
i
=1.Naprimer,ORfunkcija,izraenakaologikasumamintermaimaoblikf
14
=m
3
+m
2
+m
1
,toznai
dajenjenkdS
3
S
2
S
1
S
0
=1110.Uoimodaselekcionepromenljiveinterpretiranekaobinarnibrojimaju
vrednost jednaku indeksu izabrane operacije. Drugim reima, za operaciju f
14
vrednost S
3
S
2
S
1
S
0
je
jednaka1110toodgovarabinarnojreprezentacijibroja14.
Potosvakaselekcionapromenjivakontroliejedanminterm,logikafunkcijakojaodgovaralogikoj
jedinicizajednubitpozicijujeoblika:
s

= S
0
m
0
+S
1
m
1
+ S
2
m
2
+S
3
m
3
= S
0
x

+ S
1
x

+ S
2
x

+ S
3
x

Struktura logike jedinice za jednu bitpoziciju prikazan je na Sl. 13(b), dok je na Sl. 13(c) prikazan
grafiki simbol nbitne logike jedinice. U optem sluaju, bilo koja nbitna logika jedinica imae n
identinih segmenata, koji istovremeno obavljaju istu operaciju nad parovima odgovarajuih bitova
dvanbitnaoperanda.NaSl.13(d)prikazanjeprimer8bitnelogikejedinice.
(a) (b)
(c) (d)
Sl.13.Logikajedinica:(a)funkcijeoddvepromenljive;(b)realizacijelogikejedinice;(c)grafikisimbol;(d)
8bitnalogikajedinica.
Komponente uigitalnih sistema

8

1.4 Aritmetiko-logika jedinica
Aritmetikologika jedinica (ili ALU prema engleskom nazivu Arithmetic and Logic Unit) je
viefunkcionalno kombinaciono kolo koje moe da obavi bilo koju od vie razliitih aritmetikih i
logikih operacija nad parom bbitnih operanada. Pri tom, jedna od raspoloivih operacija bira se
prekoskupaselekcionihulaza.BrojisloenostoperacijapodranihodstraneALUmodulasupitanje
izboraprojektantaimoguznaajnodavarirajuodALUdoALUmodula.Tipinearitmetikeoperacije,
koje se sreu kod veine ALU modula, obino su zasnovane na sabiranju, kao na primer, sabiranje,
oduzimanje, inkrementriranje i dekrementiranje. Inkrementiranje je operacija sabiranja sa 1, a
dekrementiranje oduzimanja za 1. Meutim, postoje i ALU moduli koji su u stanju da obavljaju i
sloenijearitmetikeoperacije,kaotosumnoenje,deljenje,stepenovanje,pomeranje,poreenjei
dr.TipinelogikeoperacijesuAND,OR,komplement,XOR.
Postoje dva glavna razloga za projektovanje ALU jedinica u obliku standardnih modula. Prvo,
dostupnostuniverzalniharitmetikihmodulaomoguavadaseistimodulkoristiumnogimrazliitim
primenama, ime se smanjuje broj razliitih modula koji se koriste u projektovanju. Drugo, ALU
moduli se mogu efikasno koristiti u sistemima, kao to je procesor, kod kojih operacija koju treba
obavitiudatomtrenutkubiradinamiki,odstraneupravljakejediniceprocesora.
Uovomodeljkubieizloenpostupakprojektovanjejednekonkretne4bitneALUjedinice.Sobzirom
da su aritmetike operacija zasnovane na sabiranju, ALU se moe projektovati tako to e se
modifikovati ulazi binarnog sabiraa. Logika koja obavlja ovu modifikaciju, a tie se aritmetikih
operacija, zove se aritmetiki ekspander (AE), dok se ona koja se koristi za logike operacije zove
logikiekspander(LE).Ekspanderisupovezanisunaulazsabiraa,nanainkakojetoprikazanonaSl.
14.UnastavkuebitiizloenaproceduraprojektovanjaekspanderaAEiLEnaprimeruALUjedinice
kojaobavljaetiriaritmetikeietirilogikeoperacije.
Najpre, neophodan je ulaz za izbor reima rada, M, koji e birati izmeu aritmetikih ili logikih
operacija,takodapriM=1,ALUobavljaaritmetike,apriM=0logikeoperacije.Takoe,potrebnesu
dvaulaznasignalazaizboroperacije,S
1
iS
0
,kojie,uzavisnostiodvrednostiulazaM,biratijednuod
etiriaritmetikeilietirilogikeoperacija,nanainkakojetodefinisanofunkcionalnomtabelomsa
Sl.15(a),zaaritmetike,itabelomsaSl.15(b)zalogikeoperacije.

Sl.14.4bitnisabirauspojusaaritmetikim(AE)ilogikim(LE)ekspanderima.
Komponente uigitalnih sistema

9

M S
1
S
0
b
i
y
i

1 0 0 0 1
1 0 0 1 1
1 0 1 0 0
1 0 1 1 1
M S
1
S
0
Imefunkcije F X Y c
0
1 1 0 0 1
1 0 0 Dekrement A1 A svejedinice 0 1 1 0 1 0
1 0 1 Sabiranje A+B A B 0 1 1 1 0 0
1 1 0 Oduzimanje A+B'+1 A B' 1 1 1 1 1 0
1 1 1 Inkrement A+1 A svenule 1 0 X X X 0
(a) (b)

(c) (d)
Sl.15.Aritmetikiekspander:(a)funkcionalnatabela;(b)tabelaistinitosti;(c)Karnoovamapa;(d)struktura.
Ufunkcionalnojtabelisa Sl.15(a), za svakuaritmetikuoperaciju,navedene suvrednostizlazaALU
jedinice, F, kao i vrednosti ulaza sabiraa, X i Y, i ulaznog prenosa c
0
koje su neophodne da bi se na
izlazu sabiraa generisala odgovarajua vrednost F. Shodno ovoj tabeli, na ulaz X sabiraa uvek se
dovodi operand A, dok su na ulazu Y, u zavisnosti od izabrane operacije prisutne: sve jedinice,
operand B, komplement operanda B, ili sve nule. Vrednosti ulaza Y se generiu uz pomo AE
ekspandera, ija je tabela istinitosti prikazan na Sl. 15(b). Ova tabela je dobijena na osnovu
funkcionalne tabele sa Sl. 15(a) tako to je kolona Y zamenjena kolonama b
i
i y
i
. Na Sl. 15(c)
prikazana je Karnoova mapa AE ekspandera, na osnovu koje sledi: y

= HS

1
b

+ HS

0
b

. Konano,
strukturaAEekspanderaprikazanajenaSl.15(d).
M S
1
S
0
Imefunkcije F X Y c
0
M S
1
S
0
x
i
0 0 0 Komplement A' A' 0 0 0 0 0 a
i
'
0 0 1 AND AANDB AANDB 0 0 0 0 1 a
i
b
i
0 1 0 Identitet A A 0 0 0 1 0 a
i
0 1 1 OR AORB AORB 0 0 0 1 1 a
i
+b
i
1 X X a
i
(a) (b)
b
i
S
0
S
1
M
y
i
AE
Komponente uigitalnih sistema

1u

(c) (d)
Sl.16.Logikiekspander:(a)funkcionalnatabela;(b)tabelaistinitosti;(c)Karnoovamapa;(d)struktura.
Projektovanje logikog ekspandera, takoe, poinje funkcionalnom tabelom koja definie logike
operacije,akojajeprikazananaSl.16(a).Kaotosemoezakljuitianalizomovetabele,ulaziYic
0

sabiraa su uvek postavljeni na vrednost 0 za bilo koju logiku operaciju, dok se na ulaz X postavlja
rezultat logike jednaine koja odgovara izabranoj logikoj operaciji. Na osnovu funkcionalne tabele
saSl.16(a),umogunostismodaformiramotabeluistinitostilogikogekspandera,kojajeprikazana
na Sl. 16(b). Na osnovu odgovarajue Karnoove mape Sl. 16(c), sledi logiki izraz za jednu bit
pozicijulogikogekspandera:
y

= H

1
S

0
o

+ H

S
1
S
0
b

+ S
0
o

+S
1
o

+Ho

Kombinaciona mrea logikog ekspandera koja sledi na osnovu dobijenog izraza prikazana je na Sl.
16(d).
Nakon obavljenog projektovanja aritmetikog i logikog ekspandera, ALU jedinica formira se
povezivanjemAEiLEekspanderasabinarnimsabiraem,nanainkaotojeprikazanonaSl.17(a).
Uoimo da se kod ALU jedinice, logike operacije obavljaju u logikim ekspanderima, a da potpuni
sabirai (FA) proputaju na izlaz F rezultat LE ekspandera bez ikakve promene. Drugim reima,
prilikom obavljanja logikih operacija potpuni sabirai se koriste kao veze sa fiksnim propagacionim
kanjenjem.
Uoimo,takoe,daprilikomizvrenjaaritmetikihoperacijanadneoznaenimbrojnimvrednostima,
signal izlaznog prenosa iz pozicije najvee teine ukazuje na prekoraenje. Za sluaj aritmetikih
operacija nad oznaenim brojevima (predstavljenim u obliku potpunog komplementa), uslov
prekoraenja je drugaiji i formira se kao XOR operacija izlaznih prenosa iz dve bitpozicije najvee
teine.Akojeneophodno,4bitnaALUjedinicasaSl.17(a)semoeproiritinanbitnuALUjedinicu,
korienjem nbitnog sabiraa u spoju sa n aritmetikih i n logikih ekspandera. Grafiki simbol
ovakveALUjediniceprikazanjenaSl.17(b).VeinaALUjedinica,kojesekoristeupraksi,konstruiu
se na opisani nain, osim to se razlikuju po tipu i broju aritmetikih i logikih operacija koje
podravaju.
Komponente uigitalnih sistema

11

(a)
(b)
Sl.17.ALUmodul:(a)4bitnaALU;(b)grafikisimbol.
1.5 Dekoder
Dekoderi su digitalna kola koja se koriste za dekodiranje kodiranih informacija. Binarni dekoder,
predstavljennaSl.18,jedigitalnokolosanulazazabinarnokodiranipodataki2
n
binarnihizlaza,pri
emu svakom izlazu odgovara jedna kombinacija n logikih vrednosti na ulazu. Dodatni ulaz za
dozvolurada,E,upravljaizlazomdekoderanasledeinain:akojeE=0,tadanijedanizlazdekodera
nijeaktivan;akojeE=1,aktivanjesamoizlazy
i
,gdejeiceobrojjednakbinarnojvrednostiulazaw
n1
,
..., w
1
, w
0
. (Ime ulaza E potie od engleske rei Enable koja znai dozvola). Ovo kolo se zove binarni
dekodernu2
n
ilintoulaznibinarnidekoder.

Sl.18.Binarnidekodernu2
n
.
Na Sl. 19 je prikazan binarni dekoder 1u2. Grafiki simbol ovog dekodera se moe videti na Sl.
19(a),atabelaistinitostinaSl.19(b).Dekoder1u2imajedanulazazapodatakw
0
,ulazzadozvolu
rada E i dva izlaza y
1
i y
0
. Sve dok je E=1, vai: y
0
=1 za w
0
=0 ili y
1
=1 za w
0
=1. Logike jednaine koje
definiudekoder1u2suoblika:
y
0
= E w
0

y
1
= E w
0

Logikaemadekodera1u2prikazanajeSl.19(c).
ALU
A B
F
S0
S1
M
Cout
prekoraenje
Komponente uigitalnih sistema

12

(a)(b)(c)
Sl.19.Dekoder1u2:(a)grafikisimbol;(b)tabelaistinitosti;(c)logikamrea.
Dekoder 2u4 je predstavljen na Sl. 110. Uoimo da dekoder 2u4 ima dva ulaza za podatak, w
1
i
w
0
,ulazzadozvolurada,E,ietiriizlaza,y
0
,...,y
3
.Kaotojeveobjanjeno,funkcijaovogkolajeda
dekodirabinarnibrojpostavljennaulazimaw
1
iw
0
ipostavi1naizlazijijeindeksjednaktombroju.
Ponaanjedekodera2u4definisanojesledeimsistemomlogikihjednaina:
y
0
= E w
1
w
0

y
1
= E w
1
w
0

y
2
= E w
1
w
0

y
3
= E w
1
w
0

(a)(b)(c)
Sl.110.Dekoder2u4:(a)grafikisimbol;(b)tabelaistinitosti;(c)logikamrea.
Uoptemsluaju,dekodernu2
n
moesekonstruisatinaosnovusistemalogikihjednaina:
y
i
=Em
i
,i=0,...,2
n
, (1.1)
gdejem
i
itimintermnulaznihpromenljivihw
n1
,....,w
0
.
Naizlazudekodera,poduslovomdajenjegovraddozvoljen,postojisamojednajedinica.Zaizlazna
komejeprisutnajedinicakaemodajeaktivan.Ovovaizadekoderesaaktivnimvisokimnaponskim
nivoomnaizlazu.Meutim,uupotrebisuidekoderskakolasaaktivnimniskimnaponskimnivoomna
izlazu.Kodtakvihdekodera,nulajeprisutnanajednomizlazu,kojijeizabranbinarnomkombinacijom
naulazu,doksunasvimostalimizlazimaprisutnejedince.Grafikisimboldekodera2u4saaktivnim
niskim naponskim nivoom na izlazu prikazan je na Sl. 111(a). Uoimo da je aktivan nizak naponski
nivo naznaen kruiima na izlaznim prikljucima dekodera. Tabela istinitosti ovog dekodera je
prikazana na Sl. 111(b), a logika mrea na Sl. 111(c). Uoimo da je logika mrea, po strukturi,
identinaonojsaSl.111(c),stomrazlikomtosesadaumestoANDkoristeNANDkola.

Sl.111.Dekoder2u4saaktivnimniskimnaponskimnivoomnaizlazu.
Komponente uigitalnih sistema

1S



Pr.11.Sintezalogikihfunkcijanabazidekodera
Shodno jednaini (1.1), dekoder nu2
n
se ponaa kao generator minterma od n promenljivih. Kada je rad
dekodera dozvoljen, svaki izlaz dekodera se aktivira tano jednom vrstom tabele istinitosti od n promenljivih.
Ako je logika funkcija zadata u obliku tabele istinitosti ili skupom decimalnih indeksa, tada se ona moe
direktnorealizovatipomoudekoderauvidukanonikesumeproizvoda.
Naprimer,razmotrimofunkcijufzadatuskupomdecimalnihindeksa .Karnoovamapafunkcijef
prikazana je na Sl. 112(a), a realizacija ove funkcije u obliku minimalne sumeproizvoda na Sl. 112(b). Ista
funkcijasemoerealizovati pomoudekodera3u8,kojigeneriesve moguemintermeodtripromenljive,i
jednogORkola,kojesumiramintermefunkcijef,kaotojeprikazanonaSl.112(c).Naovajnain,korienjem
dekoderaodgovarajueveliine,moguejerealizovatiproizvoljnulogikufunkciju.
(a)(b)(c)
Sl.112Sintezafunkcije :(a)Karnoovamapa;(b)logikamrea;(c)realizacijapomoudekodera
3u8.
Iako je opisana tehnika sinteze gotovo trivijalna, ona postaje izrazito neefikasna u sluajevima kada je broj
promenljivih vei od nekoliko. Broj minterma, a time i sloenost dekodera, raste eksponencijalno sa
poveanjem broja promenljivih, tako da e za tipinu funkciju od veeg broj promenljivih, od svih generisani
minterma biti iskorien tek mali deo. Meutim, ima punog smisla koristiti dekoder za realizaciju sistema
logikihfunkcija,sobziromnamogunostdaseistimintermikoristekodvierazliitihlogikihfunkcija.
Danassedekoderiretkokoristezasintezulogikihfunkcijananainkojijeopisanuovomprimeru.Meutim,
izloeni koncept sinteze, zasnovan na sumiranju generisanih minterma, ili u optem sluaju, sumiranju
generisanih produktnih lanova, predstavlja osnovu programabilnih logikih kola, kao to su ROM, PLA i PAL
strukture.

1.1.1 Dekoderske mree
Shodnojednaini(1.1)binarnidekodernu2
n
semoerealizovatipomou2
n
ntoulaznih ANDkola.
Meutim, sa poveanjem n, ukupan broj AND kola i broj ulaza u AND kola postaju ograniavajui
faktor, tako da se dekoderi sa veim brojem ulaza obino realizuju u vidu dekoderskih mrea
sainjenih od vie manjih dekodera. Razmotriemo dve tehnike konstrukcije dekoderskih mrea:
koincidentnodekodiranjeihijerarhijskodekodiranje.
Koincidentno dekodiranje. U cilju ilustracije koncepta koincidentnog dekodiranja, razmotrimo
realizaciju 8ulaznog binarnog dekodera, tj. dekodera 8u256, pomou 4ulaznih binarnih dekodera
(Sl.113(a)).NekasuW=w
7
w
6
...w
0
osamulaza,aY=y
255
y
254
...y
0
256izlazadekoderskemree8u256.
Najpre,podelimoulazeudvegrupe:W
H
=w
7
w
6
w
5
w
4
iW
L
=w
3
w
2
w
1
w
0
.Zarealizacijudekoderskemree
koristimodvadekodera4u16,kaonaSl.113.GrupaulazaW
H
sedekodirapomoujednog,agrupa
ulazaW
L
pomoudrugog4ulaznogdekodera.NekasuH=h
15
h
14
...h
0
iL=l
15
l
14
...l
0
16tobitniizlazidva

) 5 , 3 , 2 , 0 (

) 5 , 3 , 2 , 0 (
Komponente uigitalnih sistema

14

4bitnadekodera.Izlazidekoderskemree8u256formirajusepomou2562ulaznihANDkola,tako
tosesvakoANDkolopovezujesajednimparomsignala(h
i
,l
j
).Izlazuy
k
odgovaraizlazANDkolaiji
suulazih
i
il
j
,priemuvai:k=2
4
i+j.Naprimer,izlazy
36
odgovaraANDkoluijisuulazih
2
il
4
,s
obziromdavai:36=2
4
2+4.Uoimodajeulazzadozvoluradadekoderskemree,E,povezansa
odgovarajuim ulazom jednog od dekodera 4u16, dok je ulaz za dozvolu rada drugog dekodera
postavljenna1.AkojeE=1,tadasusviizlaziizjednogdekoderajednaki0,touslovljavay
i
=0zasvako
i.
U optem sluaju, nto ulazni koincidentni dekoder se realizuje pomou dva n/2 ulazna binarna
dekoderai2
n
2ulaznihANDkola,nanainkakojetoprikazanonaSl.113(b).

(a) (b)
Sl.113.Koincidentnodekodiranje:(a)8ulaznikoincidentnidekoder;(b)ntoulaznikoincidentnidekoder
Hijerarhijskodekodiranje.Drugatehnikazakonstrukcijuveihdekoderajehijerarhijskodekodiranje.
Radiilustracijeovetehnikerazmotrimorealizacijubinarnogdekodera4u16pomoudekodera2u
4.Kaoikodkoincidentnogdekodiranja,ulazidekoderskemree,W=w
3
w
2
w
1
w
0
,sedeleudvegrupe:
W
H
=w
3
w
2
iW
L
=w
1
w
0
.Naosnovuovepodele,moemorealizovatidvonivovskumreukojasesastojiiz
jednogdekodera2u4uprvomietiridekodera2u4udrugomnivou,kaotojetoprikazanonaSl.
114(a). Grupa ulaza W
H
se dekodira u prvom, a grupa ulaza W
L
u drugom nivou. esnaest izlaza
dekoderske mreejerasporeenou4grupeodpo4izlaza,gdesesvakagrupagenerie naizlazima
jednogdekoderasadrugognivoa.Principradajesledei:DekodiranjemulazaW
H
,dekoderasaprvog
nivoa,dozvoljavaseradtanojednogdekoderasadrugognivoa,kojidekodiranjemulazaW
L
aktivira
jedan od svojih izlaza. Na primer, ako je W=0110, tada je W
H
=01, a W
L
=10. To znai da e dekoder
DEC dozvoliti rad dekoderu DEC1 koji s obzirom na W
L
=10 aktivira svoj izlaz sa indeksom 2, to
odgovaraizlazudekoderskemreey
4x1+2
=y
6
.Uoimodajeulazzadozvoluradadekoderskemree,E,
povezan sa odgovarajuim ulazom dekodera sa prvog nivoa. Ako je E=0, tada su svi izlazi dekodera
DECpostavljenina0.Toznaidajeradsvihdekoderasadrugognivoazabranjen,paidasunasvim
izlazimadekoderskemreeprisutnenule.
U optem sluaju, nto ulazni dekoder se moe realizovati u vidu dvonivolske dekoderske mree sa
jednim(n/2)ulaznimdekoderomuprvomi2
n/2
(n/2)ulaznihdekoderaudrugomnivou.

E
w
3
y
0
y
2
y
15
w
2
w
1
w
0
.
.
.
.
.
.
w
3
w
2
w
1
w
0
E
E
w
3
y
0
y
4
y
15
w
2
w
1
w
0
.
.
.
.
.
.
w
7
w
6
w
5
w
4
1
y
0
y
36
y
255
.
.
.
.
.
.
Komponente uigitalnih sistema

1S

(a) (b)
Sl.114.Hijerarhijskodekodiranje:(a)4ulaznihijerarhijskidekoder;(b)3ulaznihijerarhijskidekoder3u8.
Hijerarhijska dekoderska mrea moe imati vie od dva nivoa. Na primer, ako za projektovanje
koristimodekodere1u2,dekoderska mreanu2
n
sadrae2
n
1dekodera2u1,rasporeenih u n
nivoa tako da se na svakom nivo dekodira jedan ulazni bit. Drugim reima, ulaz najvee teine
dekodira se jednim dekoderom 1u2 u prvom nivou, sledei ulaz manje teine dekodira se sa dva
dekodera 1u2 u drugom nivou, i tako redom, sve do ulaza najmanje teine koji se dekodira sa n/2
dekodera1u2uposlednjem,ntomnivou.Izlazidekoderasaodreenognivoasekoristekaosignali
dozvoledvadekoderasasledeegnivoa.Znai,nasvakomsledeemnivou,brojdekoderaebitidva
puta vei u odnosu na prethodni nivo. Kao primer opisanog postupka konstrukcije dekodera nu2
n
,
naSl.114(b)jeprikazandekoder3u8realizovannabazidekodera1u2.
U optem sluaju, nto ulazni dekoder se moe realizovati u obliku hijerarhijske mree kulaznih
dekoderarasporeenihurnivoa,priemuvain=rk.nulazadekoderskemreesedelinargrupaod
pokulaza,priemusesvakatakvagrupadekodiranajednomnivou.Prvinovosadrijedandekoder,
a broj dekodera u svakom sledeem nivou je 2
k
puta vei od broj dekodera u prethodnom nivou.
Ukupanbrojkulaznihdekoderapotrebnihzarealizacijuntoulaznedekoderskemreeiznosi:
1+2
k
+2
2k
+...+2
(r1)k
=(2
n
1)/(2
k
1)
Naprimer,zan=12ik=4,brojnivoajer=3,abroj4ulaznihdekodera(2
12
1)/(2
4
1)=273.
1.2 Multiplekser
Multiplekser,estouoznaciMUX,jedigitalnipreklopniktj.kolokojeomoguavadasejedanodn
izvorapodatakalogikipoveunazajednikoodredite.Multiplekserimaveibrojulazazapodatke,
jedan ili vie selekcionih ulaza i jedan izlaz. Vrednost selekcionih ulaza odreuje (tj. bira) jedan od
ulazazapodatkeijasevrednost,udatomtrenutku,prenosinaizlaz.
E
w
0
y
0
y
1
E
w
0
y
0
y
1
E
w
0
y
0
y
1
E
w
0
y
0
y
1
E
w
0
y
0
y
1
E
w
0
y
0
y
1
E
w
0
y
0
y
1
w
0
w
1
w
2
E
y
0
y
1
y
2
y
3
y
4
y
5
y
6
y
7
Komponente uigitalnih sistema

16

(a)

(b)

(c)

(d)

(e)
Sl.115Multiplekser2u1:(a)grafikisimbol;(b)analogijasaelektromehanikimpreklopnikom;(c)tabela
istinitosti;(d)logikamrea;(e)realizacijapomoutransmisionihgejtova.
NaSl.115(a)jeprikazangrafikisimbolmultipleksera2u1.Akojes=0,izlazmultiplekserabief=w
0
;
akojes=1,izlazmultiplekserajef=w
1
.Multiplekser2u1jepofunkcijianaloganelektromehanikom
dvopoloajnom prekidau sa Sl. 115(b), kod koga signal s upravlja poloajem preklopnika. Funkcija
multipleksera 2u1 opisana je tabelom istinitosti sa Sl. 115(c), na osnovu koje lako moemo izvesti
logikiizrazoblikasumaproizvoda:f=s`w
0
+sw
1
.OvomizrazuodgovaralogikamreasaSl.115(d).
NaSl.115(e)jeprikazanokakosemultiplekser2u1moerealizovatipomoutransmisionihgejtova.
NaSl.116(a)jeprikazanjedanveimultiplekser,saetiriulazazapodatke,w
0
,,w
3
idvaselekciona
ulazas
1
is
0
.KaotosemoevidetiiztabeleistinitostisaSl.116(b),kombinacijaselekcionihulaza(s
1
,
s
0
), interpretirana kao binarna celobrojna vrednost i, za prosleivanje na izlaz f bira ulaz w
i
.
Multiplekseru4u1odgovarasledeilogikiizrazoblikasumaproizvoda:
= s
1
s
0
w
0
+s
1
s
0
w
1
+s
1
s
0
w
2
+ s
1
s
0
w
3

OvomizrazuodgovaralogikamreasaSl.116(c).

(a)

(b) (c)
Sl.116Multiplekser4u1:(a)grafikisimbol;(b)tabelaistinitosti;(c)logikamrea.


Pr.12.Krozbar
Na Sl. 117(a) prikazano je kolo sa dva ulaza, x
1
i x
2
, i dva izlaza, y
1
i y
2
. Kao to je naznaeno isprekidanim
linijama,koloobezbeujekontrolisanuvezuizmeuulaznihiizlaznihprikljuaka,tj.omoguavadabilokojiulaz
moebitipovezannabilokojiizlaz.Uoptemsluaju,koloovogtipa,sanulazaikizlaza,ijajejedinafunkcija
daobezbedispregubilokojiulazsabilokojimizlazom,zovesekrozbarprekidanxk.Akopostojedvaulazaidva
izlaza,radiseokrozbarprekidau2x2.
Na Sl. 117(b) je prikazana realizacija krozbar prekidaa 2x2 pomou multipleksera 2u1. Selekcioni ulazi oba
multipleksera povezana su na ulazni signal s. Ako je s=0, krozbar povezuje x
1
na y
1
i x
2
na y
2
; za s=1, veze su
ukrtenepodataksaulazax
1
sprovodisenaizlazy
2
,apodataksaulazax
2
naizlazy
1
.Krozbarprekidainalaze
primenusvudatamogdejeneophodnopovezatidvaskupaveza,priemusenainspregemenjasvremenana
vreme.
s
w0
f
w1
0
1
Komponente uigitalnih sistema

17


Sl.117Jednaprimenamultipleksera.

Korienjemistogprincipa,moguejerealizovatiiveemultipleksere.Obino,brojulazazapodatke,
n, je stepen broja 2. Multiplekser nu1 zahteva |log
2
n] selekcionih ulaza. Vei multiplekseri se
takoe mogu realizovati pomou vie manjih multipleksera. Na primer, multiplekser nu1, gde je n
stepenbroja2,moesekonstruisatipomoun1multipleksera2u1rasporeenihu|log
2
n]nivoa.
Svaki od n/2 multiplekser sa prvog nivoa bira izmeu dva izvora podataka, dok svaki od n/4
multiplekser sa drugog nivoa bira izmeu dva multiplekserska izlaza sa prvog nivoa. Drugim reima,
nasvakomnivou,nakonprvog,svakimultipleksersekoristizaizborizmeudvaizlazagenerisanaod
stranemultiplekserasaprethodnognivoa.Konkretno,zarealizacijumultipleksera8u1potrebnasu
81=7 multipleksera 2u1, a broj nivoa je 3. Na Sl. 118(a) je prikazana tabela istinitosti, a na Sl.
118(b)realizacijamultipleksera8u1pomoumultipleksera2u1.

Sl.118Multiplekser8u1:(a)tabelaistinitosti:(b)struktura.
Na Sl. 119(a) prikazan je grafiki simbol multipleksera 2xmum. Ovaj simbol na kompaktan nain
predstavlja strukturu od m paralelno povezanih multipleksera sa Sl. 119(b). Pomou multipleksera
2xmumomoguenjeizborjednogoddvambitnapodatka.Uoptemsluaju,multiplekserkxmum
sastojiseizmmultiplekseraku1sazajednikimselekcionimulazima.
Komponente uigitalnih sistema

18

(a)(b)
Sl.119Multiplekser2xmum:(a)grafikisimbol;(b)struktura.
1.2.1 Alternativne realizacije multipleksera
Dekoderilogikakola.Multiplekser8u1semoerealizovatiinanainkojijeprikazannaSl.120.
Za dekodovanje selekcionih signal koristi se dekoder 3u8. Iako ovo reenje izgleda jednostavno,
ono, meutim, nije lako proirljivo. Drugim reima, broj i veliina logikih kola u dekoderu, kao i
veliinaizlaznihORkolarastesapoveanjembrojaulazaumultiplekser.Sobziromdaselogikakola
sa velikim brojem ulaza realizuju kao stabla logikih kola sa manjim brojem ulaza, sloenost i
kanjenjeseznaajnopoveavaju.Iztograzloga,reenjesaSl.120sekoristesamozamalevrednosti
n, dok se multiplekseri za vee n konstruiu ranije opisanom metodom, tj. korienjem vie nivoa
multipleksera2u1ili4u1.

(a)

(b)
Sl.120Alternativnoreenjemultipleksera8u1:(a)tabelaistinitosti;(b)realizacijanabazidekodera.
Magistrala. U prethodnom odeljku opisana je konstrukcija multipleksera pomou logikih kola. Iako
je takav tip multipleksera u irokoj primeni, upotreba multipleksera sa velikim brojem ulaza moe
predstavljatiproblemondakadvelikibrojvezamorabitidovedendojednogmestausistemu,tamo
gde je postavljen multiplekser. Na sreu, za ovaj problem postoji jedno elegantno reenje, koje se
Komponente uigitalnih sistema

19

zove magistrala. Za konstrukciju magistrale koristi se trostatiki bafer koja, kao elektronska
komponenta, moe imati tri razliita stanja na izlazu: 0, 1 i Z. Vrednost Z predstavlja stanje visoke
impedanse,kojesekodsvihpraktinihprimenamoesmatratiprekidomveze.

(a)

(b)

(c)
Sl.121Realizacijamagistrale:(a)trostatikibafer;(b)dvoulaznamagistrala;(c)etvoroulaznamagistrala.
KaotosemoevidetisaSl.121(a),trostatikibaferimalinijupodatakaD,linijudozvole,E,iizlaznu
liniju, Y. Uvek kada je E=1, vrednost na izlazu je identina ulazu, Y=D. Suprotno, za E=0, izlaz je u
stanju visoke impedanse, Y=Z, bez obzira na vrednost koja je prisutna na ulaznoj liniji podataka.
Drugimreima,zaE=1trostatikibaferseponaakaozatvoren,azaE=0kaootvorenprekida.
Magistralu ini skup trostatikih bafera, od kojih svaki slui za spregu jednog izvora podataka na
zajedniku magistralu. Poto u jednom vremenu najvie jedan izvor moe pobuivati magistralu, jer
bi u suprotnom dolo do konflikta na magistrali, neophodno je obezbediti da u svakom trenutku
najviejedantrostatikibaferbudeaktivan(tj.E=1).
Poto ima n ulaza podataka, ali u svakom trenutku dozvoljava prenos samo jednog podatka na
zajedniku magistralu, magistrala je, po funkciji, ekvivalentna multiplekseru. Na primer dvoulazna
magistrala,prikazananaSl.121(b)imadvelinijepodatakaD
0
iD
1
ijednuadresnuliniju,S,takodaje
zaS=0,YjednakoD
0
,dokjezaS=1,YjednakoD
1
.Uoimodajetabelaistinitostidvoulaznemagistrale
identina tabeli istinitosti dvoulaznog multipleksera. Primenom istog principa, moemo konstruisati
magistralesaveimbrojemulaza,kaotojeetvoroulaznamagistralasaSl.121(c).Kaotosemoe
videti, ova magistrala sadri dekoder 2u4 koji konvertuje dve adresne linije S
1
i S
0
u etiri linije za
dozvoluodkojihsvakaupravljajednimodetiritrostatikabaferakojipobuujumagistralu.
U optem sluaju, magistrale se lako realizuju i lako modifikuju, onda kada je se javi potreba da se
doda novi izvor podataka ili obrie stari. Iz tog razloga, magistrale se esto koriste za povezivanje
veeg broja izvora podataka na zajedniku liniju, bilo da se radi o integrisanom kolu ili tampanoj
ploi. Izuzetak ine FPGA kola, iz razloga to, po pravilu, sadre mali broj ugraenih trostatikih
bafera.
1.3 Demultiplekser
Kaotojereenouodeljku1.2,multiplekserjedigitalnokolosajednimizlazom,nulazazapodatkei
|log
2
n] selekcionih ulaza. Namena multipleksera je da multipleksera n ulaza za podatke preko
jedinstvenogizlazazapodatak,podkontrolomselekcionihulaza.Kolokojeobavljasuprotnufunkciju
Komponente uigitalnih sistema

2u

vrednost sa jedinstvenog ulaza za podatak prosleuje na jedan od vie izlaza za podatke, zove se
demultiplekser.
NaSl.122(a)jeprikazangrafikisimboldemultipleksera4u1.Kaotosevidiiztabeleistinitostisa
Sl.122(b),binarnakombinacijavrednostiselekcionihulazas
1
is
2
birajedanodetiriizlaza,y
0
,...,y
3
,
na koji se prenosi vrednost jedinstvenog ulaza za podatak, d. Demultiplekser 1u4 se moe
realizovati pomou dekodera 2u4, kao to je prikazano na Sl. 122(c). U ovom sluaju, ulaz E
dekodera se koristi kao ulaz za podatak demultipleksera, dok su izlazi dekodera izlazi za podatke
demultipleksera.Binarnakombinacijaw
1
w
0
odreujeizlazkojiebitipostavljennavrednostE.Akoje
E=0,tadaesviizlazidekoderabiti0,ukljuujuiiizlazkojijeizabrankombinacijomw
1
w
0
;akojeE=1,
tadakombinacijaw
1
w
0
postavlja1naodgovarajuiizlaz.Dakle,uvekvaiy(w
1
w
0
)=E.

(a)(b)(c)
Sl.122Demultiplekser1u4:(a)grafikisimbol;(b)tabelaistinitosti;(c)dekoder2u4kaodemultiplekser
1u4.


Pr.13.Vremenskimultipleks
Par multiplekserdemultiplekser se moe koristiti za prenos informacije od n izvora do n odredita preko
jedinstvenekomunikacionelinije,kaotojetozasluajn=8,prikazanonaSl.123.Multiplekserbirajedanodn
izvora i prenosi podatak tog izvora na komunikacionu liniju. Na drugom kraju linije, demultiplekser usmerava
primljeni podatak ka jednom od n odredita. Izbor para izvorodredite obavlja se preko selekcionih ulaza
multipleksera i demultipleksera. Ovakav nain prenosa informacija zove se vremenski multipleks. Uz
ogranienje da u bilo kom trenutku moe postojati direktna sprega samo jednog para izvorodredite,
vremenski multipleks omoguava znaajno smanjenje broja potrebnih prenosnih linija, to moe predstavljati
znaajnuutedu,naroitoakojerastojanjeizmeuizvoriiodreditapodatakaveliko.

Sl.123Principvremenskogmultipleksa.


1.4 Koder
Koderjedigitalnokolokojeimasuprotnufunkcijuoddekodera.Namenakoderajedakodiraulaznu
informacijuukompaktanoblik.
1.4.1 Binarni koderi
Binarni koder 2
n
un (Sl. 124) kodira (transformie) informaciju od 2
n
bita u nbitnu kodnu re. Sa
ogranienjem da u bilo kom trenutku samo jedan od 2
n
ulaza moe imati vrednost 1, na izlazu
Komponente uigitalnih sistema

21

binarnogkoderageneriesenbitnibinarnibrojkojiukazujenaindeksulazaijajevrednostjednaka
1.NaSl.124(a)jeprikazanatabelaistinitostikodera4u2.Tabelaistinitostijenepotpuna,jersadri
samo one slogove koji su dozvoljeni na ulazu binarnog kodera. Za sve ostale slogove, odziv kodera
nijedefinisan.Uoimodaizlazy
0
imavrednost1akojew
1
=1iliw
3
=1.Slino,izlazy
1
imavrednost1,
akojew
2
=1iliw
3
=1.Naosnovuovogzapaanjamoemokonstruisatilogikumreubinarnogkodera
4u2prikazanunaSl.124(b).Uoptemsluaju,binarnikoder2
n
unsemoerealizovati pomoun
(2
n
1)to ulaznih OR kola. Svako OR kolo postavlja jedan izlaz. Ulaz w
i
je povezan sa jtim OR kolom
akojtibitubinarnojreprezentacijiindeksaiimavrednost1.

(a)

(b)(c)
Sl.124Binarnikoder:(a)binarnikoder2
n
un;(b)binarnikoder4u2tabelaistinitosti;(c)binarnikoder4
u2realizacija;


Pr.14.Jednaprimenakodera
NaSl.125jeprikazanosmopoloajnimehanikipreklopnik.Preklopnikima8izlazakojiukodu1od8kodiraju
poloaj klizaa. U ovoj primeni, binarni koder 8u3 se koristi za kodiranje poloaj klizaa u oblik trobitnog
binarnogbroja.

Sl.125Primenabinarnogkodera.


1.4.2 Prioritetni koder
Kod binarnog kodera opisanog u prethodnom odeljku postoji ogranienje da u bilo kom trenutku
najvie jedan ulaz sme biti aktivan. Ako se ovo ogranienje ne potuje, tj. u sluajevima kada je
aktivno vie od jednog ulaza, izlaz kodera bie pogrean. Meutim, u mnogim primenama ovo
ogranienjesenemoenametnuti.Tada,umestokoderatrebakoristitiprioritetnikoder.
Kodprioritetnogkodera,svakomulazujedodeljenprioritet,aizlazkodera,interpretirankaobinarni
broj, ukazuje na indeks aktivnog ulaza najvieg prioriteta. Za sve vreme dok je aktivan ulaz visokog
prioriteta, svi ulazi nieg prioriteta se ignoriu. Na Sl. 126 je prikazana tabela istinitosti prioritetnog
kodera 4u2, pod pretpostavkom da ulaz w
3
ima najvii, a w
0
najnii prioritet. Izlazi y
1
i y
0

predstavljaju binarni broj koji identifikuje ulaz najvieg prioriteta koji ima vrednost 1. Poto je
moguedanijedanulaznemavrednost1,predvienjejojedan,dodatniizlaz,zkojitrebadaukae
naovusituaciju.Naime,akojebaremjedanulazjednak1,tadavaiz=1;inae,akonijedanulaznije
jednak1,vaiz=0.
Komponente uigitalnih sistema

22

Sl.126Tabelaistinitostiprioritetnogkodera4u2.
Rad prioritetnog kodera se najlake moe razumeti ako najpre razmotrimo poslednju vrstu u tabeli
istinitosti. Ova vrsta kazuje da ako je w
3
=1, izlaz se postavlja na y
1
y
0
=11. Poto ulaz w
3
ima najvii
prioritet, vrednosti ulaza w
2
, w
1
i w
0
nisu od znaaja. Da bi se ukazalo na injenicu da su njihove
vrednosti irelevantne, promenljive w
2
, w
1
i w
0
su oznaene simbolom X u tabeli istinitosti.
Pretposlednjavrstautabeliistinitostikazujedasezaw
2
=1izlazipostavljajunay
1
y
0
=10,alisamoako
pri tome vai w
3
=0. Slino, ulaz w
1
uslovljava da izlaz bude postavljen na y
1
y
0
=01, ali samo ako vai
w
3
=w
2
=0. Konano, ulaz w
0
se kodira na izlazu binarnom kombinacijom y
1
y
0
=00, ali samo pod
uslovomdajew
0
jediniaktivanulaz.


Pr.15.Selekcijaprekidnihsignalapomouprioritetnogkodera
U ovoj primeni, prioritetni koder se koristi za izbor jednog od vie dogaaja koji se mogu desiti u isto vreme.
Izabrani dogaaj se predstavlja (kodira) binarnim brojem. Na primer, kod raunarskih sistema, razliiti
periferijskiureajiobraajuseprocesoru,putemprekidnihsignala,zahtevimazaopsluivanjem.Sobziromda
vieovakvihzahtevamoebitiaktivnouistovreme,neophodnojeizabratijedankojiebitiopsluen.Kaotoje
prikazanonaSl.127,prioritetnikodersekoristizaidentifikacijuaktivnogprekidnogsignalanajviegprioriteta.

Sl.127Primenaprioritetnogkoderazaizborsignalaprekida.

Sl.128Realizacijaprioritetnogkodera.
Prioritetnikoder2
n
unsemoerealizovatikombinovanjemdvamodulakaonaSl.128.Prvimodulje
kolozarazreavanjeprioriteta,kojemenjana0sveulazeijajevrednost1,osimonogijijeprioritet
w
0
w1
y0
Ureaj A
Ureaj B
Ureaj C
Ureaj D
w2
w3
Najnii
prioritet
Najvii
prioritet
y1
Procesor
z
Zahtev je
prisutan
Kod zahteva
najvieg prioriteta
Prekidni
signali
Komponente uigitalnih sistema

2S

najvii. Drugi modul je standardni binarni koder. Modul za razreavanje prioriteta definisan je
sledeimskupomlogikihjednaina:
x

= w
2
n
-1
w
2
n
-2
w
i-1
w

, i = u,1, 2
n
-1
Prethodniizrazkaedaaktivanulazw
i
zadravavrednost1(tj.postavlja1naizlazux
i
)samoakosusvi
ulaziviegprioritetajednaki0.

(a)(b)
Sl.129Modulzarazreavanjeprioriteta:(a)paralelnarealizacija;(b)iterativnarealizacija.
Modul za razreavanje prioriteta se moe realizovati u obliku logike mree sa Sl. 129(a). Kod ove
realizacije,izlazx
i
segeneriepomouANDkolasa2
n
iulaza.Ovakvoreenjejeadekvatnozamodule
sa malim brojem ulaza, ali je nepraktino za vee module budui da zahteva AND kola sa velikim
brojemulaza.NaSl.129(b)jeprikazanaiterativnaimplementacijaistogkola,kojajepogodnazavei
broj ulaza, mada ispoljava vee kanjenje. Ovo reenje je zasnovano na umnoavanju elija
definisanihlogikimjednainama:
c
2
n
-1
= u,x

= c

,c
-1
= c

+ w

Prosto,w
i
=1postavljac
i1
na1,toiskljuujesveulazeniegprioriteta.
1.4.2.1 Hijerarhijska realizacija prioritetnog kodera
Na Sl. 130(a) je prikazan princip realizacije prioritetnog kodera 2
n
un pomou dva duplo manja
prioritetna kodera tipa 2
n1
u(n1). 2
n1
viih ulaza, w
2
n
-1
w
2
n-1 , se kodira pomou prioritetnog
kodera H, a 2
n1
niih, w
2
n-1
-1
w
0
, pomou koder L. Izlaz najvee teine, x
2
n
-1
, rezultujueg
prioritetnog kodera treba da ima vrednost 1 ako je na ulazima prioritetnog kodera H prisutna bar
jednajedinica.Tosepostiepomoukodera2u1naijeulazesedovodezizlaziprioritetnihkodera
H i L. Ako vai x
2
n
-1
= 1, tada vrednosti za preostalih 2
n
1 izlaza, x
2
n
-2
x
0
, treba uzeti sa izlaza
prioritetnog kodera H. U suprotnom, ako vai x
2
n
-1
= u, tj. ako na ulazima w
2
n
-1
w
2
n-1 nije
prisutnanijednajedinica,vrednostizaizlazex
2
n
-2
x
0
trebauzetisaizlazaprioritetnogkoderaL.To
sepostiepomoumultiplekserakojimseupravljasignalomx
2
n
-1
.
Na Sl. 130(b) je prikazano kako se primenom opisanog principa realizuje prioritetni koder 4u2
pomou kodera 2u1. Primetimo da su u prvom nivou upotrebljeni binarni koderi budui da je
binarni koder 2u1 identian po funkciji prioritetnom koderu 2u1. Prioritetni koder 4u2,
realizovan na ovaj nain, moe se upotrebiti za realizaciju prioritetnog kodera 8u3, kao na Sl.
130(c). Dakle, polazei od kodera 2u1, u mogunosti smo da rekurzivno primenom principa sa Sl.
130(a)realizujemoprioritetnikoderproizvoljneveliine.
Komponente uigitalnih sistema

24

(a)

(b)

(c)
Sl.130.Hijerarhijskarealizacijaprioritetnogkodera:(a)princip;(b)prioritetnikoder4u2pomoukodera2
u1;(c)prioritetnikoder8u3pomouprioritetnihkodera4u2.
1.5 Komparator
Veina programskih jezika poseduje relacione operatore koji nam omoguavaju da ispitamo izvesne
uslove kako bi smo odredili kada odreene akcije treba preduzeti. Kod programskih jezika, uslovi se
predstavljaju u obliku relacije izmeu dva entiteta, X i Y, koji mogu biti konstante, promenljive ili
aritmetikiizrazi.Relacioniizraziseformirajuuzpomotriosnovnarelacionaoperatora:vee(X>Y),
jednako (X=Y) i manje (X<Y). Takoe, za svaki od ovih operatora postoji komplementarni operator.
Operator vee ili jednako (XY) je komplement od manje, manje ili jednako (XY) je
komplement od vee, dok je razliito (XY) komplement od jednako. Rezultat bilo kog od
navedenihoperatorajelogikapromenljivakojamoeimativrednost0(netano)ili1(tano).
Za izraunavanje relacionih operatora koriste se digitalna kola koja se zovu komparatori magnitude
ilisamokomparatori.Iakojemogueprojektovatikomparatorzabilokojioperator,uovomodeljku
pokazaemokaoseprojektujeuniverzalnikomparator,kojijesemoekoristitizaizraunavanjebilo
kog od navedenih operatora. U optem sluaju, nbitni univerzalni komparator (Sl. 131) poredi dva
pozitivna binarna broja X=x
n1
,,x
0
i Y=y
n1
,,y
0
i generie tri binarna rezultata, G, E i L, koji imaju
sledeeznaenje:AkojeizlazG=1,tadajeX>Y;E=1ukazujenaX=Y,aL=1naX<Y.
Komponente uigitalnih sistema

2S

Sl.131ntobitniuniverzalnikomparatormagnitude.
Logika mrea komparatora se moe sintetizovati na osnovu tabele istinitosti u kojoj bi za svaku
kombinacijunbitnihoperandaXiYbilenavedenevrednostiizlazaG,EiL.Meutim,takvatabelabi
bilaprevievelika,akizarelativnomalon.Zatojeboljipristupdaseuciljurealizacijekomparatora
razmatrajupojedinaniparoviodgovarajuihbitovadvaoperanda.Razmotrimokonstrukciju4bitnog
komparatora.
NekasuX=x
3
x
2
x
1
x
0
iY=y
3
y
2
y
1
y
0
.Definiimoskupinternihsignalai
3
,i
2
,i
1
ii
0
.Signali
k
jejednak1akosu
bitovi sa indeksom k operanada X i Y meusobno jednaki. Jednakost dva bita se ispituje logikim
kolom XNOR, tj. i
k
= x
k
y
k
(operacija XNOR se oznaava znakom ). Dva binarna broja su
jednakaakoimajuistebitove.Dakle,
E=i
3
i
2
i
1
i
0

Izraz za izlaz G se moe izvesti tako to e se bitovi operanada X i Y ispitivati u redosledu poev od
bitanajveedobitanajmanjeteine.Prvabitpozicijaknakojojsebitovix
k
iy
k
razlikujuodrediedali
je X vee ili manje od Y. Pri tom, ako vai x
k
=0 i y
k
=1, tada je X<Y; ako je x
k
=1 i y
k
=0, tada vai X<Y.
Dakle,izlazGdefinisanjesledeimlogikimizrazom:
0 = x
3
y
3
+ i
3
x
2
y
2
+ i
3
i
2
x
1
y
1
+ i
3
i
2
i
1
x
0
y
0

Izlaz L se moe odrediti na osnovu sline formule u kojoj bi umesto bitova operanda Y
komplementiralibitoveoperandaX.Meutim,postojiilakinain.Naime,XjemanjeodYakoXiY
nisunijednakinitijeXveaodY,tj.
I = E + 0

Logika mrea koja realizuje etvorobitni univerzalni komparator prikazana je na Sl. 132. Opisana
procedurasemoeprimenitizakonstrukcijeuniverzalnogkomparatorazaproizvoljnon.

Sl.132Logikamrea4bitnoguniverzalnogkomparatora.


Pr.16.Realizacijakomparatorapomoubinarnogsabiraa
Na Sl. 133 je prikazano kako se 4bitni univerzalni komparator moe realizovati pomou 4bitnog sabiraa.
OdnosizmeudvabrojaXiYmoeseodreditiakosebrojevinajpreoduzmu,azatimispitavrednostrezultat.
Oduzimanje XY se realizuje kao sabiranje broja X i potpunog komplementa broja Y. Kod oduzimanja
Komponente uigitalnih sistema

26

neoznaenihbinarnihbrojevavaipravilodajeizlazniprenosizsabiraa,c
4
,jednak0akojerazlikanegativna,
odnosno 1 ako je razlika nula ili pozitivna. Drugim reima, c
4
=0 ukazuje na X<Y, a c
4
=1 na XY. Ovo pravilo se
lakomoeproveritinasledeimkonkretnimprimerima:

UslovXYsemoerazloitinadvauslovaX>YiX=Yakosedodatnodetektujekadajerezultatoduzimanja0.Za
detekcijuuslovasvenulemoeseiskoristiti4ulaznoNORkolo,kaotojeprikazanonaSl.133.Dakle,akoje
razlika 0, brojevi su jednaki; ako je c
4
=0, tada je X manje od Y, a ako razlika nije jednaka nuli i c
4
=1, tada je X
veeodY.

Sl.133Realizacijauniverzalnogkomparatorapomoubinarnogsabiraa.
1.5.1 Iterativna komparatorska mrea
Razmotrimokonstrukciju16bitnogkomparatoranaosnovu4bitnihkomparatorskihmodula.Zaovu
namenu,ulazni16bitnioperandiX=x
15
x
14
...x
0
iY=y
15
y
14
...y
0
serazlaunapoetiri4bitnavektora:
X
()
= (x
4+3
, x
4+2
, x
4+1
, x
4
), i = u, ,S,

()
= (y
4+3
, y
4+2
, y
4+1
, y
4
), i = u, ,S
koji se koriste kao ulazi u pojedinane 4bitne komparatorske module. Poreenje se obavlja
sukcesivno (tj. iterativno), poev od bitvektora najmanje teine, X
(0)
i Y
(0)
, a rezultat poreenja,
izraen promenljivama G, E i L se prenosi u naredni stepen. Ako su bitvektori X
(i)
i Y
(i)
jednaki,
preuzimaserezultatizprethodnogstepena;akoseX
(i)
iY
(i)
razlikuju,rezultatprethodnogstepenase
zanemaruje, a stepen i dalje prosleuje rezultat svog poreenja. Izlazi G, E i L iz poslednjeg modula
(i=3) su u isto vreme i izlazi celokupne komparatorske mree. Da bi se omoguila sprega
komparatorskih modula, neophodno je strukturu 4bitnog univerzalnog komparatora sa Sl. 132
proiritisatriulaznasignalaprenosa,kaonaSl.134.AkovaiX=Y,tadasenaizlazmodulaprosleuju
vrednosti sa ulaza G
ul
, E
ul
i L
ul
; u suprotnom, ako vai XY, na izlaz modula se prenose vrednosti sa
izlaza internog 4bitnog komparatora. Na Sl. 135 je prikazana struktura 16bitnog iterativnog
komparatoramagnitude,realizovanogpomou4bitnihkomparatorskihmodulasaSl.135.
Opisani postupak se moe primeniti za konstrukciju iterativnog komparatora sa proizvoljno velikim
brojem bitova. Meutim, kao i kod sabiraa sa rednim prenosom, sa poveanjem broj spregnutih
bazinihmodulapropagacionokanjenjekomparatorskemreelinearnoraste.
Komponente uigitalnih sistema

27

Sl.1344bitnikomparatorsaugraenimsignalimaulaznogprenosa.

Sl.13516bitnaiterativnakomparatorskamrea.
1.5.2 Hijerarhijske komparatorske mree
Bra struktura za poreenje veih brojeva se moe realizovati ako se umesto iterativne koristi
hijerarhijska mrea komparatora. Razmotrimo ponovo konstrukciju 16bitnog komparatora na
osnovu4bitnihkomparatorskihmodula,alitakodasadakomparatoribudupovezaniuhijerarhijsku
strukturu,kaotojeonasaSl.136.Svakiodetirikomparatorasaprvognivoa,K0doK3poredidva
bitvektoraodetiribita.Izlaziizprvognivoasekoristekaoulaziukomparatorsadrugognivoa,K4,
nasledeinain:SviizlaziGizkomparatorasaprvognivoainebitvektorgkojijepovezannagrupu
ulazaxkomparatoraK4.Slino,bitvektorl,kogainesviizlaziLizprvognivoa,povezanjenagrupu
ulazaykomparatoraK4.

Sl.13616bitnihijerarhijskikomparator.
Da mrea sa Sl. 136 zaista realizuje funkciju 16bitnog komparatora, moe se pokazati sledeom
analizom.Naosnovudefinicijeuniverzalnogkomparatora,izlazihijerarhijskemreekomparatorasu:
4
-
b
i
t
n
i

k
o
m
p
a
r
a
t
o
r
Komponente uigitalnih sistema

28

>
=
inace
l g je ako
G
0
1

=
=
inace
l g je ako
E
0
1

<
=
inace
l g je ako
L
0
1

gdesugilcelibrojevipredstavljeniistoimenimbitvektorima.
Sobziromdasugilizlaziizprvognivoakomparatora,nijemoguedaobabitag
i
il
i
,i=0,...,3,uisto
vremeimajuvrednost1.Shodnotome,g>lznaidaje1sanajveomteinomuvektorugteaod1
najveeteineuvektorul,toodgovarasluajevimakadajeX>Y.Slino,g<lslediizX<Y.Sluajg=lse
javljasamoakovaig=l=0,toznaidavaiX=Y.Dakle,mreasaSl.136 realizujefunkcijuporeenja
brojevaXiY.


Pr.17.8bitniuniverzalnikomparator
Na Sl. 137 je prikazano kako se pomou dva 4bitna univerzalna komparatora i dodatnih logikih kola moe
realizovati8bitniuniverzalnikomparator.OperandeXiYmoemonapisatiuobliku:
X=X
H
2
4
+X
L

Y=Y
H
2
4
+Y
L

gdesuX
H
=x
7
x
6
x
5
x
4
,X
L
=x
3
x
2
x
1
x
0
,Y
H
=y
7
y
6
y
5
y
4
iY
L
=y
3
y
2
y
1
y
0
vieinietetradebrojevaXiY.Najpre,dva4bitna
komparatora nezavisno porede vie i nie tetradebrojeva X i Y, a zatimse na osnovunjihovih izlazaodreuje
konanirezultat.BrojeviXi YsujednakaakovaiX
H
=Y
H
iX
L
=Y
L
.XjeveeodYakovaiX
H
>Y
H
iliako suX
H
i Y
H

jednakiipritomeX
L
>Y
L
.Konano,XjemanjeodYakojeviatetradabrojaXmanjaodvietetradebrojaYili
akosuvietetradedvabrojajednakeipritomeniatetradabrojaXmanjaodnietetradebrojaY.

Sl.137Realizacija8bitnogkomparatorapomou4bitnihkomparatora.


1.6 Kombinacioni pomerai i rotatori
Operacije pomeranja i rotiranja esto se koriste za pakovanje i raspakovanje cifara i karaktera,
izdvajanjeiumetanjebitpolja,kaoizarealizacijuaritmetikihoperacijezaradupokretnomzarezu.
Naprimer,svakiprocesorposedujebaremnekolikoinstrukcijaza1bitnopomeranjeirotiranjeulevo
i udesno. Operacije pomeranja mogu se obavljati u logikom ili aritmetikom reimu. Pri logikom
pomeranju,bitvektorsepomerazambitpozicijaulevoiliudesno.Kaorezultatoveoperacije,mbita
sa jedne strane vektora se izbacuje, a m novih bita se ubacuje sa druge strane vektora. Pri
aritmetikompomeranju,pretpostavljasedabitvektorkojisepomerapredstavljabinarnibroj,tako
da pomeranje za m pozicija udesno ima isti efekat kao deljenje broja sa 2
m
, dok je pomeranje za m
pozicija ulevo isto to i mnoenje sa 2
m
. Ako bitvektor predstavlja brojnu vrednost u formatu
Komponente uigitalnih sistema

29

potpunog komplementa, tada se prilikom pomeranja udesno, u vektor, sa leve strane, ubacuje m
kopijabitaznaka.Zasluajpomeranjaulevo,uvektorse,sadesnestane,ubacujemnula.Dodatno,
nakonpomeranjaulevo,napozicijubitanajveeteinetrebapostavitivrednostkojajejednakabitu
znakapolaznerei.Prioperacijirotiranja,bitovisenegube,jersebitkojiizaesajednestranerei,
vraauresadrugestrane.
Zarealizacijuoperacijapomeranjairotiranja,koristesedigitalnekomponentekojesezovupomerai
irotatori.Ovekomponentesekonstruiupomoumultipleksera.Naprimer,naSl.138(a)jeprikazan
grafiki simbol 8bitnog univerzalnog pomeraa/rotatora, koji moe da obavlja logiko pomeranje ili
rotiranjezajednubitpozicijuulevoiliudesno.Koloima8bitniulazzapodatakD=d
7
...d
0
,8bitniizlaz
zapodatakY=y
7
...y
0
,itriselekcionelinije,S
2
,S
1
iS
0
,prekokojihsevriizboreljeneoperacije.Ulazdl
definie bitvrednost koja se prilikom pomeranja udesno postavlja na krajni levi izlaz, y
7
, dok ulaz dl
definie vrednost koja se postavlja na krajnji desni izlaz, y
0
, prilikom pomeranja ulevo. Shodno
funkcionalnoj tabeli sa Sl. 138(b), kada je S
2
=0, ulazni podatak se prenosi na izlaz bez ikakve
promene. Ako je S
2
=1, nad ulaznim podatkom se obavlja operacija pomeranja ili rotiranja. Smer
pomeranja, odnosno rotiranja, zavisi od vrednosti S
1
: za S
1
=0 podatak se pomera ulevo, a za S
0
=1
udesno. Konano, S
0
slui za izbor izmeu pomeranja i rotiranja, tako da pri S
0
=0 pomera/rotator
radikaopomera,apriS
0
=1kaorotator.NaSl.138(c)suilustrovanirazliitireimiradauniverzalnog
pomeraa/rotatora.

(a)

(b)

(c)
Sl.138Univerzalnipomera/rotator:(a)grafikisimbol;(b)funkcionalnatabela;(c)reimirada.
NaSl.139jeprikazanarealizacija8bitnoguniverzalnogpomeraa/rotatora.Kaotosemoevideti,
pomera/rotator je realizovan tako to je za svaku bitpoziciju iskorien jedan multipleksera 4u1.
Ulazimultiplekserasutakorasporeenidamultiplekserkojizauzimapozicijui,moedabiraizmeu
Komponente uigitalnih sistema

Su

ulazih bitova i1, i i i+1. Dodatno, pomera/rotator ima dva multipleksera 2u1, koji slue za izbor
krajnjeglevogilikrajnjegdesnogbita.

Sl.139Realizacija8bitnoguniverzalnogpomeraa/rotatorasaSl.138pomoumultipleksera.
1.6.1 Barel pomera
Pomera/rotator opisan u prethodnom odeljku ima mogunost pomeranja ili rotiranja za jednu bit
pozicijuulevoiliudesno.Toznaidaakojepotrebnoobavitipomeranjeilirotiranjezavieodjedne
bitpozicije,podatakbimoraobitiproputenkrozpomera/rotatorveibrojputa.Drugimreima,na
ovakvomtipupomeraa,operacijapomeranjazaproizvoljanbrojpozicijaseizvravasporo.Dabise
izbeglo ovo veliko kanjenje, kod sistema gde se zahtevaju visoke performanse, koristi se barel
pomera, koji je tako projektovan da moe obaviti pomeranje za proizvoljan broj pozicija. nbitni
pomera ovog tipa, gde je n=2
m
, sadri m=log
2
n nivoa multipleksera rasporeenih tako da iti nivo
multipleksera(0im1)obavljapomeranjeza2
i
pozicijaakojeselekcionalinijaovognivoaS
i
=1.Ako
jeS
i
=0,podatakprolazikrozitinivonepromenjen.Drugimreima,akoelimodapomerimopodatak
zaBpozicija,gdejeBbinarnibrojb
m1
...b
0
,tadajepotrebnopostavitiS
i
=b
i
,za0im1.

Sl.1408bitnibarelrotatorudesno:(a)tabelaistinitosti;(b)struktura.
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
S
0
S
1
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
1 0
mux
S
2
d
7
d
6
d
4
d
5
d
3
d
2
d
0
d
1
y
7
y
6
y
4
y
5
y
3
y
2
y
0 y
1
Komponente uigitalnih sistema

S1

Na Sl. 140 je prikazano jedno mogue reenje barel pomeraa, kod koga je, u cilju
pojednostavljenja,brojfunkcijasvedensamonajednu,rotiranjeudesno.Kaotosemoevideti,ovaj
8bitnibarelrotatorrealizovanjesatrinivoamultipleksera2u1,kojisekontroliusatriselekcione
linije,S
0
,S
1
iS
0
,nasledeinain:kadajeS
0
=1,prvinivoobavljarotiranjezajednubitpoziciju;kadaje
S
1
=1druginivoobavljarotiranjezadve,akadajeS
2
=1treinivoobavljarotiranjezaetiribitpozicije.
Zakonstrukcijusloenijihpomeraa/rotatora,kojimoguobavljativeibrojrazliitihoperacija,koristi
se u sutini isti postupak, s tim da je neophodan vei broj multipleksera sa veim brojem ulaza za
podatke.
1.7 ROM
ROMmemorija(ReadOnlyMemoryROM)semoerazumetikaouniverzalnilogikielementkoji,u
isto vreme, moe da realizuje vei broj razliitih logikih funkcija definisanih nad istim skupom
promenljivih. Uopteno govorei, ROM sadri n rei duine m bita i oznaava se kao m x n ROM.
ROM, takoe, ima log
2
n adresnih linija koje se koriste za adresiranje svake od njenih n rei. Znai,
mxnROMjeustanjudarealizujemproizvoljnihlogikihfunkcijaodlog
2
npromenljivih.
PrenegotopreemonarazmatranestruktureROMmemorijeuveemodvanovagrafikasimbola
kojireprezentujuprogramabilnevarijanteANDiORlogikihkola.KaotosemoevidetiutabelisaSl.
141, ulazne linije logikog kola zamenjene su jedinstvenom linijom koja je preseena sa nekoliko
ulaznihlinija.Usvakompresekunacrtanjecrnikvadratkojiukazujenapostojanjevezeizmeuulazai
logikogkola.Ovavezasemoeostvaritinadvanaina:utokufabrikacijekomponente,kadasedve
linije fiziki spajaju uvek kada je takva veza potrebna, ili nakon fabrikacije, kada se svuda tamo gde
veze ne treba da postoje pregore topljivi osigura ugraeni u presecima naznaenim u grafikom
simbolu. ROM sa osiguraima se zove programabilni ROM ili PROM (Programmable ROM). PROM je
veomapraktinakomponenta,sobziromdasemoeproizvoditiuvelikimserijama,atekkasnije,pre
ugradnjeuciljnisistemprilagodikonkretnojprimeni(tj.programirati).
Kombinacionisimbol Programabilnisimbol



Sl.141ProgramabilnisimboliANDiORkola.
Kaotojevereeno,tipinanxmROMiliPROMimak=log
2
nadresnihlinijaoznaenihkaoA
k1
,...,A
0
,
kao i m izlaznih linija oznaenih kao F
m1
,...,F
0
. ROM memorija sadri adresni dekoder kun i m
programabilnihORkola.Naprimer,naSl.142jeprikazan16x4ROMkodkogadekoder4u16slui
za izbor jedne od 16 rei. Unutar programabilnog OR polja, vrednost svakog bita u svakoj rei je
odreena postojanjem ili nepostojanjem veze izmeu horizontalnih i vertikalnih linija: poto crni
kvadrat u preseku ukazuje postojanje veze (nepregoreni osigura), a na Sl. 142 nema ni jednog
kvadrata,sadrajprikazaneROMmemorijejesvenule.
Komponente uigitalnih sistema

S2


Sl.14216x4ROM.

Pr.18.RealizacijalogikihfunkcijapomouROMa
Na Sl. 143 je pokazano kako se 16x4 ROM moe iskoristiti za realizaciju sabiraa/oduzimaa za jednu bit
poziciju. Kao to se moe videti na Sl. 143(a), ulazi kola su: jedna selekciona linija S, koja odreuje da li se
obavlja sabiranje ili oduzimanje, dva jednobitna operanda a
i
i b
i
, i prenos iz prethodne bitpozicije, c
i
. Kolo
generiebitsume/razlikef
i
iizlazniprenosc
i+1
.TabelaistinitostiovogkolaprikazanajenaSl.143(b),dokjena
Sl. 143(c) prikazana realizacija pomou ROMa. Uoimo da su 1ce iz izlaznih kolona tabele istinitosti
konvertovane u odgovarajue veze unutar OR polja ROMa. Ulazne linije S, a
i
, b
i
i c
i
su preslikani na adresne
linijeA
3
,A
2
,A
1
iA
0
,doksuizlaznelinijepreslikanenaF
1
iF
0
.

(a)

(b) (c)
Sl.14316x4ROMprogramirankaosabira/oduzimazajednubitpoziciju;(a)sabira/oduzimazajednu
bitpoziciju;(b)tabelaistinitosti;(c)emaprogramiranjaROMmemorije.


U Pr. 18, vano je uoiti da rei ROM memorije sa adresama 0000 i 1010 nisu potrebne (ostaju
neprogramirane). Zbor ovakvog neracionalnog korienja raspoloivih rei, realizacija funkcija sa
milim brojem 1ca pomou ROMa je veoma skupa. Sa druge strane, budui da poseduje znaajno
veu gustinu bitova u poreenju sa RAM memorijom (tj. zauzima manju povrinu na ipu), ROM
memorijapredstavljaodlinoreenjezauvanjekonstantnihpodataka.Iztograzloga,ROMmemorije
seestokoristezagenerisanjeupravljakihsignalakodupravljakihjedinicastandardnihprocesorai
aplikacionospecifinih koprocesora. Uz to, ROM memorije su postojane, tj. ne gube memorisani
sadraj nakon iskljuenja napajanja i zbog toga se koriste za smetanje programa kod
mikroraunarskihsistema.
1.8 PLA
UprethodnojsekcijijenapomenutodaROMpredstavljaizrazitoneefikasnoreenjekadasekoristiza
realizaciju retkih funkcija, tj. funkcija sa malim brojem 1ca, jer e u takvim situacijama mnoge rei
Komponente uigitalnih sistema

SS

ROMaimativrednost0,todovodidoneracionalnogkorienjapovrineipa.Programabilnalogika
polja (PLA Programmable Logic Arrays) su razvijena upravo iz potrebe minimiziranja ovog
nepotrebnog gubitka. PLA se razlikuju od ROMa po nainu realizacije adresnog dekodera: umesto
potpunog dekodera, kao to je to sluaj kod ROMa, PLA koristi programabilni dekoder, koji se zove
AND polje, i koji se moe programirati tako da dekodira samo one rei koje imaju sadraj razliit od
nule.Uzto,PLAmoeimatiiprogramabilnoizlaznopoljekojesekoristiondakadapostojipotrebada
sekomplementiraizlaznavrednost.IzlaznopoljemoedapoboljaefikasnostPLAstrukturejerprua
veufleksibilnostprilikomrealizacijeproizvoljnihfunkcija.Naprimer,akofunkcijaimasamonekoliko
nula, AND i OR polja mogu biti programirana tako da realizuju komplement date funkcije, to e
zahtevati samo nekoliko rei, a da se onda komplementiranjem u izlaznom polju dobije eljena
funkcija.

Sl.144PLAstruktura
Popravilu,PLAsekarakteriebrojemrei,n,ibrojemizlaza,m.Uzto,potobrojadresnihlinijanee
biti jednak log
2
n, prilikom specifikacije PLA strukture, potrebno je navesti i broj ulaza ili adresnih
ulaza,k.Znai,knmPLAimae:kadresnihlinijaA
k1
,...,A
0
,nrei,gdesvakarepredstavljajedan
minterm adresnih ulaza, i m izlaza, F
m1
,...,F
0
. Takva jedna PLA struktura moe da realizuje m
proizvoljnihlogikihfunkcijakpromenljivihsvedokjeukupanbrojrazliitihANDlanovauskupuod
mfunkcijamanjiilijednakm.
Na Sl. 144 prikazana je struktura 484 PLA polja. Kao to se moe videti, PLA sa slike ima etiri
ulazaA
3
,A
2
,A
1
iA
0
,etiriizlazaF
3
,F
2
,F
1
iF
0
,i8ANDlanovailirei.KodovogPLApolja,svakiAND
lan moe da sadri do etiri literala (promenljivih ili njihovih komplemenata), svaka izlazna funkcija
moe imati do osam AND lanova, a svaki izlaz moe biti generisan u svojoj pravoj ili
komplementarnojformi.
Fleksibilnost PLA strukture priblina je fleksibilnosti ROM memorije uz dodatnu prednost u pogledu
veeefikasnostiprilikomrealizacijeproizvoljnelogike.Shodnotome,PLAsemnogoeenegoROM
Komponente uigitalnih sistema

S4

koristi za realizaciju upravljakih jedinica, dok se ROM ee primenjuje za uvanje tabela
koeficijenata,programa,testvektoraidrugihproizvoljnih,fiksnihpodataka.


Pr.19.RealizacijalogikihfunkcijapomouPLA
NaSl.145pokazanojekakose4x8x4PLAmoeiskoristitizarealizacijufunkcijac
i+1
is
i
potpunogsabiraa.
Treba uoiti da se ovo PLA polje ne moe iskoristiti za realizaciju sabiraa/oduzimaa za jednu bitpoziciju (Sl.
143(a)) zato to ovo kolo zahteva ukupno 13 AND lanova, osam za funkciju f
i
i pet za funkciju c
i+1
, to
prevazilazigranicuodosamANDlanovaraspoloivihu4x8x4PLApolju.
U cilju realizacije potpunog sabiraa, ulazi x
i
, y
i
i c
i
su dodeljeni adresnim linijama A
2
, A
1
i A
0
, a izlazi c
i+1
i f
i

izlazimaPLApoljaF
1
iF
0
.TabelaistinitostiiodgovarajueKarnoovemapeprikazanesunaSl.145(a)i(b),dok
jelogikaemaPLApolja,ukojojsunaznaenesvepotrebneveze,datanaSl.145(c).

(a)

(b) (c)
Sl.145RealizacijapotpunogsabiraapomouPLApolja:(a)tabelaistinitosti;(b)Karnoovemape;(c)ema
programiranjaPLApolja.



Komponente uigitalnih sistema

SS

2 Sekvencijalne komponente
Kombinaciona kola, koja su razmatrana u prethodnom poglavlju, imaju osobinu da vrednost svakog
njihovog izlaza zavisi iskljuivo od vrednosti signala trenutno prisutnih na njihovim ulazima. Osim
kombinacionih,postojijojednairokaklasadigitalnihkola,kodkojihvrednostiizlazazavisenesamo
od trenutnih vrednosti ulaza, ve i od ranijeg ponaanja kola. Ovakva kola sadre memorijske
elemente koji zadravaju, tj. memoriu vrednosti logikih signala. Kae se da ukupni sadraj svih
memorijskihelemenataujednomsekvencijalnomkolupredstavljastanjetogkola.Kadasepromene
vrednostiulaza,koloiliostaneuistom(tj.tekuem)stanju,ilipromenisvojestanje.Vremenom,kao
posledicapromenaulaza,koloprolazikrozsekvencustanja.Kolokojaseponaajunaovajnainzovu
sesekvencijalnakola.
Sekvencijalna kola mogu biti sinhrona ili asinhrona. Asinhrona sekvencijalna kola menjaju svoje
stanjeuvekkadasedesipromenaulaznihvrednosti,doksinhronasekvencijalnakolamenjajusvoje
stanje i izlazne vrednosti samo u fiksnim vremenskim trenucima, koji su odreeni rastuom ili
opadajuom ivicom taktnog signala. Na Sl. 21 je prikazan vremenski dijagram tipinog taktnog
signala.Taktniperiodjevremenskiintervalizmeudveuzastopnepromenetaktnogsignalauistom
smeru, tj. izmeu dve rastue ili izmeu dve opadajue ivice taktnog signala. Reciprona vrednost
taktnog perioda je taktna frekvencija. irina taktnog impulsa je vreme u toku koga je vrednost
taktnogsignalajednaka1.Faktorpopunetaktnogsignalajekolinikirinetaktnogimpulsaitaktnog
perioda.

Sl.21Taktnisignal.
2.1 Le kola i flip-flopovi
1

Elementkojizadrava,tj.pamtiuspostavljenostanjeipoprestankudejstvapobudnihsignalakojisu
ihprouzrokovali,nazivasememorijskielement.Osnovnakarakteristikamemorijskihelemenatajeste
postojanje stabilnih stanja u kojima mogu ostati neogranieno vreme i koja se mogu menjati pod
uticajemulaznihsignala.Udigitalnojtehnicikaomemorijskielementikoristesebistabilanakolakoja
imajudvastabilnastanja.Bistabilnokolomoedamemorieinformacijuodjednogbita.Dvaosnovna
tipabistabilnihkolasu:lekolaiflipflopovi.

1
Sekcija posveena le kolima i flip-flopovima uvrtena je iz razloga kompletnosti izlaganja. Pretpostavka je da
su studenti upoznati sa ovom materijom kroz kurseve koji tretiraju osnove digitalne elektronike.
Pojednostavljeno reeno, ovu sekciju nije potrebno uiti za ispit, ali je svakako neophodno znati osnovne
konfiguracije le kola i flip-flopova, razliku izmeu leeva i flip-flopova i tipove flip-flopova.
Komponente uigitalnih sistema

S6

2.1.1 Le kola
2.1.1.1 SR le
SRlejenajjednostavnijimemorijskielementkojisekoristizaprojektovanjedigitalnihsistema.SRle
ine dva unakrsno spregnuta NOR kola. Kao to se moe videti na Sl. 22(a), SR le ima dva ulazna
signala: signal za setovanje, S, i signal za resetovanje, R i dva izlazna signala: Q i Q. SR le ima dva
stanja: kada je Q=1 (Q=0), SR le je u setovanom stanju; kada je Q=0 (Q=1), le je u resetovanom
stanju.Svedoksuobaulaznasignala,SiR,jednaka0,SRleostajeuistomstanju.Naprimer,akoje
Q=1,izlazgornjegNORkolabie0,tozajednosaR=0driizlazdonjegNORkolana1.Slino,akoje
Q=0, izlaz gornjeg NOR kola bie jednak 1, to zajedno sa R=0, dri 0 na izlazu donjeg NOR kola.
Meutim,akoulazS(ulazR)postanejednak1,SRleprelaziusetovanostanje(resetovanostanje).

(a) (b)
Sl.22.le(realizacijapomouNORkola):(a)logikaema;(b)tabelaistinitosti.
Ako oba ulazna signala, S i R, u isto vreme postanu jednaka 1, oba izlazna signala Q i Q postae
jednaka0.Akose,zatim,jedanodulaznihsignaladeaktiviraranije,SRleepreiustanjeodreeno
signalomkojijedeaktivirankasnije.ProblemkojijekarakteristianzaSRlenastajeusituacijikadase
oba ulazna signala, S i R, deaktiviraju u isto vreme, s obzirom na to to se u tom sluaju ne moe
predvidetiizlazlea.Akoseobaulaznasignaladeaktivirajutanouistovreme,izlaziobaNORkola,u
isto vreme, postae 1, to e, zbog povratnih veza usloviti da, nakon nekog kraeg kanjenja, oba
izlaza ponovo postanu 0; 0, vraena ulaze NOR kola inicira promenu izlaza na 1, i tako dalje do u
beskonanost. Dakle, pod ovim uslovima, SR le poinje da osciluje. Ovakav tip oscilacija se zove
kritina trka (race condition) i javlja se pod uslovom da oba logika kola imaju identino kanjenje.
Meutim ako kanjenja NOR gejtova nisu ista, jedno od NOR kola bie bre i prvo e postavi 1 na
svomizlazitouvremenu dokje naizlazudrugoglogikogkolajouvek0,kojae tu iostatizbog1
koja se upravo pojavila na povratnoj vezi. Meutim, bez obzira to pri ovim uslovima oscilacije na
javljaju,idaljemoemosmatratidajenovostanjeleanakonistovremenogdeaktiviranjaobaulazna
signalanedefinisano,sobziromdanemoemoznatikojijeoddvaNORgejtabri.
Dabisespreiloopisanonedeterministikoponaanje,moramoobezbeditidasignaliSiRnikadane
budu deaktivirani u isto vreme. Naalost, ovaj zahtev je teko ostvariti zbog nepoznatog kanjenja
logikihmreakojageneriuvrednostisignalaSiR.Zbogtoga,kadakoristimoSRleeve,moramose
dratistroegograniena:signaliSiRnikadanesmejubitiaktiviraniuistovreme.
Na osnovu sprovedene analize SR lea u mogunosti smo da formiramo tabelu istinitosti koja e
opisivatiponaanjeSRlea(Sl.22(b)).Zasvakukombinacijuulaznivrednosti,SiR,itekuegstanja
Q,ovatabeladefinierezultujueizlaznevrednosti,Q(next)iQ(next).
Q
Q
S
R
Komponente uigitalnih sistema

S7


(a) (b)
Sl.23.SRle(realizacijapomouNANDkola):(a)logikaema;(b)tabelaistinitosti.
SR le se, takoe, moe realizovati pomou NAND kola. U ovom sluaju, ulazni signali S i R su
normalnojednaki1,apostavljanjeSiliRna0setuje,odnosno,resetujele,tojeupravosuprotnou
odnosunarealizacijukojakoristiNORkola,gdepostavljanjeSiliRna1uzrokujesetovanje,odnosno,
resetovanjelea.RealizacijaSRleanabaziNANDkolaprikazanajenaSl.23.
2.1.1.2 SR le sa dozvolom
SRlesadozvolomjeslianSRleu,stomrazlikomtoposedujetrei,upravljakiulaznisignal,C,koji
dozvoljavailizabranjujedejstvosignalaSiR(Sl.24).ToznaidakadajeC=1,SRlesadozvolomse
ponaa identino SR leu. Meutim, kada je C=0, setovanje ili resetovanje lea je zabranjeno i kolo
ostaje u istom stanju, bez obzira na eventualne promene vrednosti ulaznih signala S i R. Drugim
reima, sve dok je C=1, le reaguje na promene ulaznih signala. Onog trenutka kada C postane
jednako0,trenutnostanjeleasezamrzava,svedotrenutkakadaCponovopostane1,aondale
nastavljanormalnodafunkcionie.

(a) (b) (c)
Sl.24.SRlesadozvolom:(a)grafikisimbol;(b)logikaema;(c)tabelaistinitosti.
UradusaSRleomsadozvolomneophodnojevoditiraunaosledeemogranienju:ulaznisignaliSi
R se ne smeju menjati u vremenskom intervalu u okolini opadajue ivice signala C. Ovaj vremenski
interval poine u trenutku t
setup
pre i traje do vremena t
hold
nakon opadajue ivice signala C. Ukoliko
ovoogranienenijeobezbeenomoedoidonedetirministikogponaanjalea.
S obzirom da je u veini primena upravljaki signal C povezan sa sistemskim taktnom, SR le sa
dozvolomseestonazivataktovaniSRle.
2.1.1.3 D le
ProjektantikojikoristeSRleeve morajuvoditiraunadaulaziS iRnikadauistovremenepostanu
jednaki 1. Ovo ogranienje se moe izbei korienjem D lea, koji ima samo jedan ulaz (Sl. 25(a)).
KaotojeprikazanonaSl.25(b),DlesadozvolomsekonstruienabaziSRleatakotoseulazD
veena ulaz S,aDnaulazR SR lea.Povezivanjem DiDnaulazeSiRobezbeenojeSi Rnikada
Q
Q
S
R
C S R Q Q(next)
0 X X 0 0
0 X X 1 1
1 0 0 0 0
1 0 0 1 1
1 0 1 X 0
1 1 0 X 1
1 1 1 X ND
Komponente uigitalnih sistema

S8

neebitijednaki1uistovreme.Dle,takoe,imaulazC,kojidozvoljavaradDlea,nasliannain
kaotojetobiosluajkodSRleasadozvolom.KadajeC=1,izlazQsepostavljanavrednostkojaje
prisutna na ulazu D. Suprotno, kada je C=0, izlaz Q zadrava poslednju vrednost koju je ulaz D imao
preopadajueivicesignalaC.Drugimreima,svedokjeC=1,QpratipromeneulazaD.Kaesedaje
letransparentan.UtrenutkukadaCpostanejednako0,tekuestanjeleasezamrzava.Kaeseda
jelezakljuan.KaoikodSRleasadozvolom,postojiogranienjedaulazDnesmedamenjasvoju
vrednostuvremenut
setup
preit
hold
nakonopadajueivicesignalaC.

(a) (b) (c)
Sl.25.Dlesadozvolom:(a)grafikisimbol;(b)logikaema;(c)tabelaistinitosti.
2.1.1.4 Flip-flopovi
Kaotojeveobjanjeno,leevisadozvolompredstavljajujednostavnememorijskeelementekojisu
aktivni,tj.ijijeraddozvoljen,zasvevremedokjevrednostupravljakogsignalaC=1.Ovakvakolase
estonazivajuleeviosetljivinanivo,sobziromdasuaktivnizasvevremedokjesignalCnavisokom
naponskomnivou.Aktivanlejetransparentan,usmisludasebilokojapromenanaulazu(S,RiliD)
utie na izlaz, naravno, sa izvesnim kanjenjem. Leevi osetljivi na nivo se ponaaju kao memorijski
elementi tek nakon opadajue ivice upravljakog signala, C, kada zadravaju stanje postavljeno
poslednjompromenomulaznevrednostikojasedesilapreopadajueivicesignalaC.
Projektanti moraju biti veoma obazrivi kada koriste leeve osetljive na nivo, poto dugi vremenski
intervali tokom kojih je le transparentan ponekada mogu omoguiti neeljenim informacijama da
uuule.Naprimer,razmotrimo3bitnipomerakiregistarkojeginetriDleasadozvolom,kao
to je prikazano na Sl. 26(a). U prikazanoj strukturi, ulazni signal X je povezan na ulaz D prvog lea.
Izlaz, Q
1
, prvog lea je povezan na ulaz D drugog lea, a izlaz, Q
2
, dugog lea na ulaz D treeg lea.
Upravljaki ulaz C je povezan na sistemski takt Clk koji sinhronizuje rad svih leeva. Idealno, ovaj
pomerakiregistarbitrebalodaradinasledeinain:utokusvakogtaktnogimpulsa,vrednostXse
upisujeuprvile,vrednostprvogleasepremetaudrugi,avrednostdrugogleautrei.
Meutim,kaotosemoevidetinavremenskomdijagramusaSl.26(b),pomeranjeinformacije,koje
sezaistadeava,neodgovaraoekivanom.Naprimer,pretpostavimodasusvileeviuresetovanom
stanju(Q
1
=Q
2
=Q
3
=0)idautokuprvogtaktnogimpulsaulaznisignalXimavrednost1,adajenakon
toganjegovavrednost0.Drugimreima,sadrajpomerakogregistarabitrebalodapoevod000,a
nakon prvog, drugog i treeg taktnog impulsa redom dobija vrednosti 100, 010 i 001. Meutim, u
realnostideavasenetodrugo:poevodsadraja000,nakonprvogtaktnogim
pulsa,sadrajpomerakogregistarasemenjana111,dabinakondrugogponovopostao000,aova
vrednost se zadrava i posle treeg taktnog impulsa. Drugim reima, pomeraki registar se ponaa
kaojedanDlekojiusvakomtaktnomciklusumemorievrednostulaznogsignalaX.
Komponente uigitalnih sistema

S9

(a)

(b)
Sl.26.NeispravnopomeranjeupomerakomregistrusaDleevima;(a)logikaema;(b)vremenski
dijagram.
RazlogzaopisanoponaanjepomerakogregistrasainjenogodDleevaleiuinjenicidasuleevi
osetljivi na nivo transparentni za sve vreme trajanja taktnog impulsa. Ukoliko je trajanje taktnog
impulsadovoljnodugo,ulaznipodatakXimadovoljnovremenadaproekrozsveleeveuniziijavi
se na izlazu pomerakog registra. Onog trenutka kada prestane dejstvo taktnog impulsa, svi leevi
memoriuistuvrednost,tj.X.
Jedna ideja za reenje opisanog problema bila bi da se skrati trajanje taktnog impulsa do iznosa
propagacionog kanjenja kroz jedan le. Meutim, kanjenja prilikom setovanja i resetovanja lea
nisuista,atoznaidataktkojipriupisu1ispravnopobuujele,nebiimaodovoljnuirinupriupisu
0, ili obrnuto. Takoe, zbog varijacija u procesu fabrikacije, proizvoai leeva ne mogu garantovati
tane vrednosti kanjenja. U tom smislu, deklarisana kanjenja predstavljaju oekivane vrednosti za
realnakanjenjakojapodleunormalnojraspodeli.
Imajuiuvidunavedenaogranienja,postojedvamoguareenjanaegproblema:masterslaveflip
flopiliflipflopsaivinimokidanjem.
Masterslaveflipflopserealizuje pomoudvalea,odkojihsejedanzove master,adrugislave(tj.
slejv). Kao to je prikazano na Sl. 27(a), ulaz u master lea je ujedno i ulaz flipflopa, dok je ulaz u
slave le izlaz iz master lea. Izlaz slavelea je ujedno i izlaz flipflopa. Unutar flipflopa, oba lea se
pobuujuistimtaktnimsignalom,Clk,stomrazlikomtojemasterledozvoljenkadajetaktnisignal
jednak0,aslavelekadajetaktnisignaljednak1.
Prednostkorienjaovakvihflipflopovajeoigledna:sobziromdamasterislaveleevinikadauisto
vreme nisu dozvoljeni, masterslave flipflop nikada nije transparentan. Kada je Clk=0, dozvoljen je
samomasterle,anjegovsadrajseprenosiuslaveletekkadataktnisignalpostane1.Uoimoda
prelazaktaktnogsignalaClknavrednost1,zakljuavamasterle,takodasenjegovsadrajviene
moemenjati.
Komponente uigitalnih sistema

4u

(a)

(b)
Sl.27.Masterslaveflipflop;(a)logikaema;(b)vremenskidijagram.
Ponaanje masterslave flipflopa opisano je vremenskim dijagramima sa Sl. 27(b). Vremenski
dijagramisunacrtanipodpretpostavkomdajepropagacionokanjenjekrozDleprisetovanju4.0ns,
odnosno 3.0ns, pri resetovanju. Ulaz D postaje 1 u trenutku t
0
. Master le prihvata ovu promenu, s
obzirom da je njegov C ulaz jednak 1, i postavlja Q
m
=1 u t
0
+4.0ns. Meutim, sve dok je Clk=0, ova
promena ne prolazi kroz slave le. U t
1
Clk postaje 1, slave le postaje transparentan i u t
1
+4.0ns na
izlazu slave lea, Q
s
, postavlja se 1. Kada ulaz D, u t
3
, ponovo postane 0, master le prihvata novu
vrednost,aliseonaneprenosikrozslavelesvedot
4
+3.0ns.Ut
5
ulazDsemenjana1,alimasterle
neprihvataovupromenusvedot
6
kadaClkpostaje0.Znai,Q
m
dobijavrednost1ut
6
+5.0ns.Uoimo
da je kanjenje poveano za 1.0ns zbog invertora koji pobuuje ulaz C master lea. Nakon to u t
7

slave le postane dozvoljen, na izlaz Q


s
se postavlja 1 u t
7
+4.0ns. Slinu promenu ulaza D na 0 u t
8

masterleneregistrujesvedot
9
+4.0nsionaseneprenosikrozslavelesvedoktaktnisignalponovo
nepostane1.
Kao to je pokazano na Sl. 27, vrednost ulaza D se unosi u master le pre rastue ivice taktnog
signala,aprenosiuslaveleneposrednonakonisterastueivice.Zasvepraktineprimene,moemo
smatratidasevrednostulazaDupisujeuflipfloputrenutkudelovanjarastueivicetaktnogsignala.
Ako ponovo konstruiemo 3bitni pomeraki registar, ali sada umesto D leeva upotrebimo master
slave flipflopove, dobiemo logiku emu prikazanu na Sl. 28(a) kojoj odgovaraju vremenski
dijagramisaSl.28(b).UoimodaovinovivremenskidijagramisadreistitaktnisignalClkiistiulazni
signalXkaoivremenskidijagramisaSl.27(b),alisuproirenitakodazasvakiflipflopukljuujudva
talasnaoblika:izlazeizmasterislaveleeva,Q
im
iQ
is
,1i3.
Kaotovremenskidijagrampokazuje,nakontoseut
0
ulaznisignalXpromenina1,samoemaster
leprvogflipflopabitisetovan(Q
1m
=1),ut
0
+4.0ns.Zatim,nakontoseut
1
taktnisignalpromenina
1,slavelesesetujeut
1
+4.0ns.Samonetomalokasnije,nakontoseut
2
taktnisignalvratina0,u
t
2
=5.0nssetujesemasterledrugogflipflopa(Q
2m
=1).Uoimodakadaseut
3
ulaznisignalXvratina
0, master le prvog flipflopa se setuje (Q
1m
=0). Nakon sledee rastue ivice takta, u t
3
+3.0ns Q
1s
se
Komponente uigitalnih sistema

41

vraa na 0, dok se u t
4
+4.0ns Q
2m
postavlja na 1. Slino, trea ivica taktnog signala resetuje Q
2m
i
setujeQ
3m
.

(a)

(b)
Sl.28.Pomerakiregistarrealizovanmasterslaveflipflopovima;(a)logikaema;(b)vremenskidijagram.
Kao to se moe videti, pomeraki registar konstruisan pomou masterslave flipflopova se ponaa
ba kao to treba: sa svakom rastuom ivicom taktnog signala pomera upisani sadraj za jednu
pozicijuudesno.Znai,svakomtaktnomciklusuodgovarajednostanjepomerakogregistra,koja(za
sekvencu vrednosti ulaznog signala sa Sl. 28(b)) se poev od stanja 000, menjaju u redosledu 100,
010,001,dabise,posletoga,registravratioustanje000.
FlipflopsaivinimokidanjemrealizujesepomoutriSRlea:setle,resetleiizlaznile,kaotose
moevidetinaSl.29(a).UtrenutkudelovanjarastueivicetaktnogsignalaClk,promenasignalaClk
sepamtiusetleu,akojeD=1,odnosnouresetle,akojeD=0.Drugimreima,signaliAiBregistruju
promene ulaza D sve dok je Clk=0. Nain rada flipflopa sa ivinim okidanjem detaljno je objanjen
vremenskimdijagramomsaSl.29(b).Dflipflopsaivinimokidanjemjenajeekorienioblikflip
flopa.
Clk
X
Q1m
Q1s
Q2m
Q2s
Q3m
Q3s
t0 t1 t2 t3 t4 t5 t6
t7
4.0
4.0
5.0
4.0
5.0
4.0
3.0
3.0
4.0
3.0
4.0
Komponente uigitalnih sistema

42

(a) (b)
Sl.29.Flipflopsaivinimokidanjem:(a)logikaema;(b)vremenskidijagram.
Pretpostavimo da propagaciono kanjenje svih NAND kola ugraenih u flipflop sa Sl. 29(a) iznosi
1.4ns.DokjeClk=0,obasignalaSiRsujednaka1,todriizlaznileutekuemstanju.Kadaseut
0
D
promeni,Bidena0ut
0
+1,4nsaAna1ut
0
+2.8ns.IzlazQostajenepromenjensvedokseut
1
Clkne
promeni na 1, to u t
1
+1.4ns postavlja S=0, a u t
1
+2.8ns Q=1. Kada se u t
2
Clk vrati na 0, S se u
t
2
+1.4ns vraa na 1, a Q zadrava tekue stanje, tj. 1. nakon to u t
3
D postane 0, B postaje 1 u
t
3
+1.4ns,aApostaje0ut
3
+2.8ns.
NakonrastueivicesignalaClkut
4
,Rsemenjana0ut
4
+1.4ns,aQna0ut
4
+4.2ns.PromenaulazaD
u t
5
se ne registruje sve do opadajue ivice signala Clk u t
6
, a onda se, u t
6
+1.4ns, R vraa na 1, u
t
6
+2.8ns B postaje 1 i u t
6
+4.3ns A postaje 1. Nakon rastue ivice signala Clk, i postavljanja S na 0 u
t
7
+1.4ns,ut
7
+2.8nsQsepostavljana1.
Uoimo, ponovo, da se naknadne promene ulaza D u t
8
ne prenose na izlaz Q, ali se zato unose u
reset le kada u t
8
+1.4ns B postane 1 i u set le kada u t
8
+2.8ns A postane 0. Ako se nakon t
8
D ne
promeni, vrednost izlaza Q postae 0 sa sledeom rastuom ivicom signala Clk. Meutim, ako se
poslet
8
,aprerastueivicesignalaClk,Dpromeni,vrednostisignalaAiBeregistrovatiovupromenu
iproslediejenaizlazQutrenutkudelovanjasledeerastueivicesignalaClk.
2.1.1.5 Tipovi flip-flopova
Postoji nekoliko tipova flipflopova koji se razlikuju po funkciji i nainu konstrukcije. Opte
karakteristike svih flipflopova su sledee: (a) flipflop menja stanje sa rastuom (ili opadajuom)
ivicom taktnog signala; (b) ulazi podataka moraju biti stabilni u vremenu t
setup
pre i vremenu t
hold

nakonaktivneivicetaktnogsignala.
Uprimenisuetiriosnovnatipaflipflopova:SR,JK,DiT,kojiserazlikujupobrojuulazainainuna
koji flipflop reaguje na ulazne vrednosti. Flipflop se opisuje grafikim simbolom, tabelom prelaza,
prenosnom funkcijom i tabelom pobude. Tabela sa Sl. 210 sadri definicije etiri tipa flipflopova.
Grafiki simbol pokazuje broj i tipove ulaza i izlaza. Svi flipflopovi imaju izlazne signale Q i Q.
Clk
D
Q
Q
A
S
R
B
Set le
Reset le
Izlazni le
Komponente uigitalnih sistema

4S

Vrednost na izlazu Q (pravi izlaz flipflopa) ukazuje na tekue stanje flipflopa. Komplementarna
vrednostizlazaQprisutnajeizlazuQ.Takoe,sviflipflopoviposedujuulazzataktnisignal.Trougao
na ulazu na takt ukazuje da se flipflop taktuje rastuom ivicom taktnog signala. Dodatni krui na
ulazuzataktukazivaobinataktovanjeopadajuomivicom.
Tip flip-flopa Simbol Tabela prelaza Prenosna funkcija
SR


Q(next) = S + RQ
sa ogranienjem SR=0
JK


Q(next) = JQ + KQ
D

Q(next) = D
T

Q(next) = TQ + TQ
Sl.210.Tipoviflipflopova.
Svakiflipflopimajedanilidvaulazapodataka.RSflipflopimadvaulaza,S(Set)iR(Reset)koji,kada
suaktivni,setuju,odnosnoresetujuflipflop.Drugimreima,akoumomenturastueivicetaktavai
S=1iR=0,izlazflipflopaQsepostavljana1;zaS=0iR=1izlazsepostavljana0.SlinoRSflipflopu,JK
flipflop,takoe,imadvaulaza,JiK,koji,kadasuaktivni,setujuiliresetujuflipflop.Dodatno,kada
suobaulazaJiKaktivnauistovreme,JKflipflopmenja(tj.komplementira)svojestanje.Dflipflop
ima jedan ulaz, D (Data), koji setuje flipflop ako je1, odnosnoresetuje flipflop ako je 0.T flipflop
imajedanulazT(Toggle),koji,kadajeaktivan,menja(tj.komplementira)stanjeflipflopa.
U drugoj koloni tabele sa Sl. 210 date su tabele prelaza, koje predstavljaju skraenu formu tabele
istinitosti.Utabeliprelaza,zasvakukombinacijuulaznihvrednostiisvakotekuestanjeflipflopa,tj.
stanjeprerastueivicetaktnogsignala,navedenojesledeestanjeflipflopa,tj.stanjeukojeflipflop
prelazi nakon rastue ivice taktnog signala. Tekue stanje flipflopa oznaeno je sa Q, a sledee sa
Q(next).Tabelaprelazasekoristiprilikomanalizesekvencijalnogkola,kadasuvrednosniulazauflip
flop poznate, a mi elimo da odredimo stanje flipflopa nakon rastue ivice taktnog signala. Na bazi
tabeleprelazamoguseizvestiprenosnefunkcijeflipflopova,kojesuprikazaneutreojkolonitabele
saSl.210.
Pored grafikih simbola, tabela i funkcija, flipflopovi se mogu jednoznano opisati i dijagramom
stanja, kod koga je svako stanje prikazano krugom, a prelaz izmeu stanja linijom (tj. granom) koja
imastrelicunastraniodredinogstanja.OvakavnainopisafiliflopovaprikazanjeutabelisaSl.211.
Uoimodasusvakojgraniugrafustanjapridruenevrednostiulaznihsignalakojiuslovljavajuprelaz
izjednogudrugostanje.Takoe,trebauoitidaistostanjemoebitiiizvoriodrediteprelaza.Poto
S Q
R Q
J Q
K Q
D Q
Q
T Q
Q
Komponente uigitalnih sistema

44

se prelazi deavaju u trenutku delovanja ivice taktnog signala, svako stanje se moe tretirati kao
vremenskiintervalizmeudverastueivicetaktnogsignala.
Tip flip-flopa Dijagram stanja
SR

JK

D

T

Sl.211.Dijagramistanjarazliitihtipovaflipflopova.
IztabelesaSl.211vidimodadijagramistanjasvihflipflopovaimajuistibrojstanjaiistibrojprelaza.
FlipflopjeustanjusetkadajeQ=1,odnosno,ustanjuresetkadajeQ=0.Uzto,svakiflipflopmoe
da pree iz jednog u drugo stanje ili da ostane u istom stanju. Jedina razlika izmeu etiri tipa flip
flopova je u vrednostima ulaznih signala koji iniciraju prelaze. Dijagrami stanja se esto koriste za
vizuelniprikazradaflipflopova,kaoidrugih,mnogosloenijihsekvencijalnihkola.

(a) (b) (c) (d)


Sl.212.flipflopovasaasinhronimulazima:(a)SRflipflop;(b)JKflipflop;(c)Dflipflop;(d)Tflipflop.
Svaki flipflop je obino dostupan u dve varijante: sa ili bez ulaza za direktno (tj. asinhrono)
postavljanje, koji se koriste za setovanje (ulaz SET) i resetovanje (ulaz CLR) flipflopa nezavisno od
takta i ostalih ulaza. Ovi ulazi se koriste za postavljanje flipflopa u poznato poetno (tj. inicijalno)
stanje.Naprimer,stanjeukojeeseflipflopspontanopostavitinakontojeukljuenonapajanjene
moe se predvideti. Zato je neophodno da se pre poetka normalnog, sinhronog rada, flipflop
postavi u odgovarajue poetno stanje posredstvom asinhronih ulaza. Ulazi SET i CLR se zovu
asinhronizatotonezaviseodtaktnogsignalaizbogtogaimajuprioritetnadsvimostalimsinhronim
ulazima. Drugim reima, dok je asinhroni ulaz aktivan, vrednosti ostalih ulaza flipflopa se ignoriu.
Dejstvoasinhronogulazapoinjeonogtrenutkakadasenaulazdovedeaktivannaponskinivo(0ili1),
Komponente uigitalnih sistema

4S

i traje sve dok se ulaz ne deaktivira. Ako flipflop poseduje oba asinhrona ulaza, SET i CLR, njihovo
istovremeno dejstvo nije dozvoljeno. Na Sl. 212 su prikazani grafiki simboli flipflopova sa ulazima
za direktno postavljanje sa aktivnim niskom naponskim nivoom, to je naznaeno kruiima na
odgovarajuim ulazima. Kod asinhronih ulaza sa aktivnim visokim naponskim nivoom, kruii bi bili
izostavljeni.
2.2 Registarske komponente
Registarjememorijskakomponentakojasesastojiodnflipflopovasazajednikimtaktnimsignalom.
Sinhronizovano sa aktivnom (rastuom ili opadajuom) ivicom taktnog signala, u svaki flipflop
upisujesejedanbitinformacije.Usvomosnovnomobliku,poredtaktnogsignala,registarimanulaza
inizlaza.NaSl.213prikazanjeprimer4bitnogregistra.Grafikisimbol4bitnogregistradatjenaSl.
213(a), dok je na Sl. 213(b) prikazana njegova unutranja struktura, koju ine etiri paralelno
povezanaDflipflopa.

(a)

(b)
Sl.213.4bitniregistar:(a)grafikisimbol;(b)unutranjastruktura
Funkcionalnost osnovne varijante registra, prikazane na Sl. 213, moe se proiriti dodavanjem
razliitih upravljakih signala. Na primer, ako registar treba biti resetovan ili setovan nezavisno od
taktnog signala, bilo pri ukljuenju napajanja, bilo pri pojavi nekih specifinih dogaaja, mogu se
dodati signali za asinhrono resetovanje i setovanje. Takvo jedno proirenje se postie zamenom
jednostavnihflipflopovasaSl.213(b),flipflopovimasaulazimazadirektnopostavljanje,kaotoje
prikazanonaSl.214(b).
KaotosevidinaSl.214,kratkotrajnimaktiviranjemsignalaRstsadrajregistrasebrieiliresetuje,
tj. postavlja na sve nule. Slino, registar se setuje, tj. njegov sadraj postaviti na sve jedinice,
kratkotrajnimaktiviranjemsignalaSet.(SobziromdajeaktivninivosignalaRstiSetnizak,aktiviranje
jednog od ova dva signala znai postavljanje 0 na odgovarajui ulaz). Ulazi Rst i Set su nezavisni od
taktnogsignalaiimajuprioritetnadnjim.Toznaidaakojeutrenutkupojaverastueivicetaktnog
signala,SetiliRstjednak0,ulazIseignorie,aregistarsesetuje,odnosnoresetuje.
Kod obe varijante registra, prikazane na Sl. 213 i Sl. 214, novi podatak se automatski upisuje u
registar sa svakom rastuom ivicom takta. Meutim, kod mnogih digitalnih sistema, podatak koji je
upisanuregistarostajeuregistrunekolikotaktnihciklusaprenegotoseupienovipodatak.Iztog
razloga, mogunost kontrole upisa predstavlja korisnu funkciju registra. Kontrola upisa se postie
korienjemupravljakogsignalaEnable(En)kojikadaje1dozvoljavaupisnovogpodatkauregistar.
Ovakavtipregistrasezoveregistarsadozvolom.
Komponente uigitalnih sistema

46

(a)

(b)
Sl.214.4bitniregistarsaasinhronimresetovanjemisetovanjem:(a)grafikisimbol;(b)unutranja
struktura.

(a)

(b) (c)
Sl.215Registarsadozvolom:(a)grafikisimbol;(b)tabelaoperacija;(c)unutranjastruktura.
NaSl.215suprikazanigrafikisimbol,tabelaoperacijaiunutranjastrukturaregistarsadozvolom.
Registarsadrimultipleksere2u1kojiomoguavajuizborizmeuulaznogpodatkaipodatkakojeje
veuregistru.SignalEnupravljamultiplekserimanatakavnaindakadajeEn=1,uregistarseupisuje
novi, tj. ulazni podatak. U suprotnom, ako je En=0, podatak koji je prethodno upisan u registar se
vraa na ulaze flipflopova i sa sledeom rastuom ivicom takta ponovo upisuje u registar dakle,
sadrajregistraostajeneizmenjen.
2.2.1 Pomeraki registar
Na primeru registra sa dozvolom pokazano je kako se postavljanjem multipleksera ispred ulaza flip
flopova moe kontrolisati upis u registar. Sledei slinu logiku, multiplekseri se mogu iskoristiti i za
pomeranje podatka zapamenog u registru. Ovakav tip registra se zove pomeraki registar i
omoguava pomeranje upisanog sadraja za jednu bitpoziciju. U osnovnoj varijanti, pomeraki
registarposedujeupravljakisignalShiftkojikadajejednak1postavljaregistarureimpomeranja.
NaSl.216jeprikazanprimer4bitnogpomerakogregistra.Serijskiulaz,I
L
,sekoristizaunosnovog
1bitnog podatka u krajnji levi flipflop registara. Pomeraki registar, kao to je registar sa Sl. 216,
tipinosekoristizakonverzijuinformacijeizserijskoguparalelnioblik.Iztograzloga,ovakavregistar
sezoveipomerakiregistarsaserijskimulazomiparalelnimizlazom(SIPOSerialIn,ParallelOut).
Komponente uigitalnih sistema

47

(a)

(b)

(c)
Sl.216etvorobitnipomerakiregistarsaserijskimulazomiparalelnimizlazom:(a)grafikisimbol;(b)
tabelaoperacija;(c)unutranjastruktura.
Korienjem multipleksera 4u1, umesto multipleksera 2u1, mogue je kombinovati funkcije
pomeranja i paralelnog upisa. Na primer, pomeraki registar sa Sl. 217 ima mogunost kako
pomeranjamemorisanogsadrajatakoiupisanovogpodatka.Takoe,ovajregistarmoedaobavlja
pomeranjeuobasmera.Pripomeranjuulevo1bitnipodataksaulazaI
R
(serijskiulazsadesnestrane)
seupisujenakrajnjudesnupoziciju,doksepripomeranjuudesno,nakrajnjulevupozicijuupisuje1
bitnipodataksaulazaI
L
(serijskiulazsalevestrane).NaSl.217(a)i(b)suprikazanigrafikisimboli
tabela operacija, dok se na Sl. 217(c) moe videti unutranja struktura ovog multifunkcionalnog
registra.

(a)

(b) (c)
Sl.217.4bitnipomerakiregistarsaparalelnimupisom:(a)grafikisimbol;(b)tabelaoperacija;(c)
unutranjastruktura.
Registar sa Sl. 217 ine etiri razreda, gde svaki razred odgovara jednoj bitpoziciji i sastoji se od
jednogflipflopaimultipleksera4u1.Postojetritiparazreda,kojiseneznatnorazlikujuustrukturi:
krajnji levi, krajnji desni i srednji. Srednji razredi se obino projektuju prvi, poto je njihova funkcija
najoiglednija.Naprimer,jednaineulazaflipflopovazasvakiodtritiparazreda,dobijenenaosnovu
tabeleoperacijasaSl.217(c)imajusledeioblik:

0
= S

1
S

0
+S

1
S
0
I
0
+ S
1
S

0
I
R
+S
1
S
0

= S

1
S

+ S

1
S
0
I

+ S
1
S

-1
+ S
1
S
0

+1
, 1 i 2

3
= S

1
S

3
+S

1
S
0
I
3
+ S
1
S

2
+ S
1
S
0
I
L

D3 Q3 D2 Q2 D1 Q1 D0 Q0
Q3 Q2
Q1 Q0
Clk
S1
IL
3 2 1 0
mux
3 2 1 0
mux
3 2 1 0
mux
3 2 1 0
mux
S0
I3
I2 I1 I0
IR
Komponente uigitalnih sistema

48

Pomeraki registar sa paralelnim upisom moe se koristiti za konverziju informacija iz serijskog u
paralelni oblik i obrnuto, sa opcijom da prilikom paralelnoserijske konverzije prvo generie bit
najmanjeilibitnajveeteine.Registriovogtipa,estosekoristezakonverzijuraunarskihpodataka
u serijski oblik pogodan za komunikaciju i rekonstrukciju serijski prenetih podataka u cilju obrade
unutarraunara.
2.2.2 Binarni broja
Binarnibrojajeposebnavrstaregistarakojisadriinkrementer,toomoguavabrojanje.Naprimer,
na Sl. 218 je prikazan 4bitni binarni broja koji ima dva upravljaka signala: signal dozvole (E), koji
kada je 1 omoguava brojanje i signal Rst koji resetuje broja, tj. postavlja ga u stanje 0. Grafiki
simbol4bitnogbinarnogbrojaaprikazanjenaSl.218(a),atabelaoperacijanaSl.218(b).Shodno
Sl.218(d)inkrementersesastojiodnizapolusabiraa(halfadderHA)rasporeenihtakodasudva
ulazapolusabiraanabitpozicijiipovezaninaizlazitogflipflopaQ
i
iizlazniprenospolusabiraasa
pozicijei1,C
i
.UoimodaenovavrednostflipflopaD
i
biti1akovaidajebiloQ
i
biloC
i
,alineoba,
jednako1.Suprotnotome,izlazC
i+1
biejednak1samoakosuQ
i
iC
i
obajednaki1.Tabelaistinitosti
polusabiraadatajenaSl.218(c).PolazeiodovetabeledolazimodosledeihjednainezaD
i
iC
i+1
:


C
+1
=


SvedokjesignalEjednak1,brojaebrojatinaviepomodulu16,dodajui1nasvojtekuisadraj
sasvakomrastuomivicomtaktnogsignala.

(a)

(b)

(c)

(d)
Sl.218.4bitnibinarnibroja:(a)grafikisimbol;(b)tabelaoperacija;(c)tabelaistinitosti;(d)unutranja
struktura.
2.2.3 Obostrani broja
Obostrani broja, tj. broja koji moe brojati i navie i nanie, konstruie se tako to se u brojau
navie polusabirai zamene polusabiraima/oduzimaima (halfadder/substractor HAS). HAS
moduli,podkontrolomsignalazaizborsmerabrojanja,obavljajuinkrementiranjeilidekrementiranje.
Komponente uigitalnih sistema

49

Naprimer,naSl.219jeprikazanobostranibrojakojiunajveemdelunalikujebrojaunaviesaSl.
218stomrazlikomtoposedujedodatniupravljakiulaz,D.Kaotojeukazanotabelomoperacijasa
Sl. 219(b), svrha ovog dodatnog ulaza je postavljanje brojaa u reim brojanja navie, kada je
njegovavrednost0,odnosnoureimbrojanjananie,kadajenjegovavrednost1.Naosnovutabela
istinitostipolusabiraima/oduzimaimasaSl.219(c)moemoizvestisledeejednainezaD
i
iC
i+1
:


C
+1
=


Kao to vidimo na Sl. 219(d), svaki polusabira/oduzima se sastoji od jednog XOR kola povezanog
naulazflipflopa,kaoidvaANDijednogORkolakojasekoristezapropagacijuizlaznogprenosa.
Vano je uoiti da obostrani broja sa Sl. 219 uvek poinje brojanje od 0. Meutim, u mnogim
primenama korisno je imati mogunost postavljanja brojaa na vrednost razliitu od nule, a zatim
nastaviti sa brojanjem, navie ili nanie. Ovakav tip brojaa se zove broja sa paralelnim upisom, a
konstruie se kombinovanjem inkrementera /dekrementera i registra sa dozvolom. Kao to je
prikazano na Sl. 220, broja sa paralelnim upisom ima tri upravljaka signala: E, D i Load. Signal E
omoguava brojanje u smeru koji je odreen signalom D. Signal Load, uvek kada je 1, zabranjuje
brojanjeiupisujeuregistarpodataksaulazaI.AkovaiLoad=0,brojaseponaanaidentiannain
kao obostrani broja sa Sl. 219. Tabela operacija i unutranja struktura obostranog brojaa sa
paralelnimupisomprikazanisunaSl.220(b)i(c).

(a)

(b)

(c)

(d)
Sl.219.4bitniobostranibroja:(a)grafikisimbol;(b)tabelaoperacija;(c)tabelaistinitostipolu
sabiraa/oduzimaa;(d)unutranjastruktura.
C3 C2
Clk
D3 Q3
Q3
'
D2 Q2
Q2
'
D1 Q1
Q1
'
D0 Q0
Q0
'
HAS HAS HAS HAS
Q3 Q2 Q1 Q0
Izlazni
prenos
C0 C1
Rst
E
D
Komponente uigitalnih sistema

Su

(a)

(b)

(c)
Sl.220.4bitniobostranibrojasaparalelnimupisom:(a)grafikisimbol;(b)tabelaoperacija;(c)unutranja
struktura.
2.2.4 BCD broja
Broja sa paralelnim upisom moe biti iskorien za konstrukciju drugih tipova brojaa. Jedna takva
primenajeBCDbrojakojibrojinasledeinain:0,1,2,4,5,6,7,8,9,0,...Kaotojepokazanona
Sl.221(a),BCDbrojasemoekonstruisatitakotoesedetektovatikadabrojastigneustanje9,a
onda,usledeemtaktnomciklusu,umestoprelazaustanje10,ubrojaupisati0.Detekcijestanje9
ostvarena je uz pomo AND kola iji je izlaz jednak 1 kada je sadraj brojaa 1001 (tj. decimalno 9).
IzlazANDkolajepovezansaulazomLoadbrojaa,toomoguavadasesasledeomrastuomivicom
taktnogsignalaubrojaupie0.
Obostrani BCD broja se konstruie na slian nain. U smeru navie, u broja treba upisati 0 uvek
kada njegovo stanje postane 9, dok u smeru nanie u broja treba upisati 9 kada njegovo stanje
postane0.KaotojeprikazanonaSl.221(b),zaizborizmeuupisa0ili9koristisemultiplekser,dok
sedetekcijastanja0i9vriuzpomoANDORmree.

(a)

(b)
Sl.221.BCDbrojai:(a)BCDbrojanavie;(b)obostraniBCDbroja.
D I3 I2 I1 I0
E Obostrani broja
Load Q3 Q2 Q1 Q0
mux
1 0 0 1 0 0 0 0
0 1
0
9
clk
E
D
Q3 Q2 Q1 Q0
Komponente uigitalnih sistema

S1

Nasliannainprojektujusebrojaikojipoinjubrojanjeizbilokogstanjaibrojeugotovobilokom
redosledu.Meutim,uoimodasvakopojedinanoiskakanjeizprirodnesekvencebrojanjazahteva
ugradnjudodatnoglogikogkolazadetekcijuidodatnimultiplekserzaizborvrednostikojaseupisuje
ubroja.
2.2.5 Registarski fajl
U prethodnim odeljcima opisani su razliiti tipovi registara i brojaa, od kojih se svaki sastoji od m
flipflopova i dodatne kombinacione logike. Meutim, takoe je mogue rasporediti flipflopove u
dvodimenzionalno polje koje e sadrati 2
n
vrsta od po m flipflopova. Svaka vrsta u jednoj takvoj
dvodimenzionalnoj strukturi, koja se zove registarski fajl, moe se smatrati jednim registrom.
Registarski fajl memorie istu koliinu informacije kao i 2
n
nezavisnih

mbitnih registara. Meutim, s


obzirom na regularnost strukture, registarski fajl zahteva manji broj internih veza, a time i manju
povrinu na mikroipu u odnosu na odgovarajui broj nezavisnih registara. Uz to, flipflopovi
registarskogfajlasemogurealizovatisamanjimbrojemtranzistora.

(a)

(b)

(c)
Sl.222Registarskifajlsajednimportomzaupisijednimportomzaitanje:(a)elijaregistarskogfajla;(b)
grafikisimbol;(c)unutranjastruktura.
RFC RFC RFC RFC
RFC RFC RFC RFC
RFC RFC RFC RFC
RFC RFC RFC RFC
Dekoder
za upis
2-u-4
Dekoder za
itanje
2-u-4
I3 I2 I1
I0
O3
O2 O1 O0
WA1
WA0
WE
0
1
2
3
0
1
2
3
RA1
RA0
RE
Komponente uigitalnih sistema

S2

Registarski fajl ine: dvodimenzonalno polje registarskih elija (registerfile cells RFC), dekoderi za
itanje i upis i izlazna baferska logika. Kao to je prikazano na Sl. 222(a), tipinu registarska eliju
sadri jedan D flipflop i dva logika kola. Osim taktnog signala, elija ima tri ulaza i jedan izlaz:
Write_select, Read_select, Input i Output. Pri Write_select=1, vrednost signala Input se upisuje u D
flipflop pod dejstvom rastue ivice taktnog signala. Kada je Read_select=1, sadraj D flipflopa se
prenosinaizlazOutputkroztrostatikibafer.Primetimodajeuistomtaktnomciklusumogueitati
trenutni sadraj registarske elije (Read_select = 1) i pripremati upis nove vrednosti (Write_select =
1).
Na Sl. 222(b) je prikazan blok dijagram registarskog fajla kapaciteta 2
n
xm, dok je na Sl. 222(c)
prikazanaunutranjaorganizacijaregistarskogfajlakapaciteta4x4.(Izrazlogajednostavnijegprikaza,
naSl.222(c)jeizostavljentaktnisignala.)Registarskifajlkapaciteta2
n
xmimamulazaI
m1
,,I
0
,m
izlaza O
m1
, , O
0
i 2
n
vrsta flipflopova, kao to je prikazano na Sl. 222(c). Dekoder za upis slui za
izbor vrste u koju e, u trenutku delovanja rastue ivice taktnog signala, biti smetena ulazna
vrednost. Ulaz dekodera za upis se sastoji od n adresnih linija, WA
n1
, , WA
0
i signala za dozvolu
upisa,WE.AkojeWE=0,ulaznavrednostseneupisujeuregistarskifajl.
Slinodekoderuzaupis,dekoderzaitanjabiravrstuijisadrajseprenosinaizlazregistarskogfajla.
Dekoder za itanje ima n adresnih linija, RA
n1
, , RA
0
i signal dozvole itanja, RE. Pri RE=1, sadraj
izabranevrstesepojavljujenaizlazuregistarskogfajlanakonmanjegkanjenjakrozizlaznebafere.S
drugestrane,akojeRE=0,izlaznisignaliregistarskogfajlasuustanjuvisokeimpedanse.
Glavno ogranienje registarskog fajla sastoj se u injenici da on omoguava ogranien pristup
registrima iz fajla tj. uvek se moe upisivati samo u jedan registar (vrstu) i itati iz samo jednog
registara (vrste). Ovakva situacija moe se donekle popraviti konstrukcijom registarskog fajla sa vie
odjednogportazaitanjeiliupis.Naalost,cenaregistarskogfajlarastesrazmernobrojuportova.Iz
tograzloga,veinapopularnihtipovaregistarskihfajlovaimajedanilidvaportazaupisidvaportaza
itanje.Glavnoopravdanjezadvaportazaitanjejestedasuveinaaritmetikihilogikihoperacija
binarne i da stoga, u isto vreme, zahtevaju dva operanda. Sa dva porta za itanje i jednim za upis,
mogueje,utokuistogtaktnogciklusa,izregistarskogfajlapribavitidvaoperandaismestitirezultat
nazad u registarski fajl. Sa druge strane, opravdanje za korienje dva porta za upis lei u brzini
konzumiranja operanada: U svakom taktnom ciklusu koristimo dva operanda da bi smo dobili jedan
rezultat. Shodno tome, ako nam je cilj da obavljamo jednu operaciju po taktnom ciklusu, mora
postojatimogunostdaseusvakomtaktnomciklusu,uregistarskifajlunesejedannovipodatakosim
rezultatakojisevraauregistarskifajl.
NaSl.223prikazanjeprimerregistarskogfajlasajednimportomzaupisidvaportazaitanje.Kao
to se vidi na Sl. 223(a), registarska elija je modifikovana u odnosu na Sl. 222(a) kako bi se
obezbedila podrka za dva porta za itanje. Grafiki simbol registarskog fajla prikazan je na Sl.
223(b).NaSl.223(c)prikazanajeunutranjastrukturaregistarskogfajlakapaciteta4x4.Uoimoda
je dijagram sa Sl. 223(c) slian strukturi registarskog fajla sa Sl. 222(c), osim to nova verzija ima
jedandodatnidekoderzaitanje,koji,sasvojestrane,unosipojednudodatnuvezukasvakojvrstii
koloni.Uzpomoovihvezaomoguenjeprenossadrajadodrugogportazaitanje.
Registarski fajlovi spadaju u brze memorijske komponente, zahvaljujui injenici da su registarske
elije realizovane na bazi flipflopova ili le kola. Meutim, budui da svaki flipflop sadri barem 6
Komponente uigitalnih sistema

SS

tranzistora, registarski fajl je skupa memorija. Iz tog razloga, registarski fajlovi se tipino koriste kao
privremenamemorijamalogkapacitetauprimenamakojezahtevajuvelikubrzinuobradepodataka.
(a)

(b)

(c)
Sl.223.Registarskifajlsajednimupisnimportomidvaportaitanje:(a)elijaregistarskogfajla;(b)grafiki
simbol;(c)unutranjastruktura.
2.2.6 RAM
Uodeljku2.2.5opisanjeregistarskifajl,kojipredstavljabrzumemorijumalogkapacitetapogodnuza
privremeno uvanje vrednosti promenljivih u toku nekog sloenijeg izraunavanja. S druge strane,
RAM(Randomaccessmemory,ilimemorijasaproizvoljnimpristupom)predstavljasporijumemoriju
dalekoveegkapacitetapogodnuzadugotrajnosmetanjeprogramaipodatakakojisekoristetokom
izraunavanja. Slino registarskom fajlu, RAM je organizovan u vidu polja od 2
n
vrsta sa m bita u
D Q
Read_
select
(port A)
OutA
Write_select
Clk
Input
RFC
OutB
Read_
select
(port B)
Komponente uigitalnih sistema

S4

svakoj vrsti. U optem sluaju, n se kree izmeu 16 i 32, dok je m, obino 1, 4, 8, 16 ili 32. Tipina
memorija nalikuje onoj sa Sl. 224(a). S obzirom da memorija ima 2
n
vrsta, za jednoznanu
identifikaciju svake vrste potrebno je n adresnih linija. Pored adresnih linija, memorija poseduje
ulaznisignalChip_select(CS)kojisekoristiprilikomkonstrukcijeveihmemorijanabazimemorijskih
ipova manjeg kapaciteta. Uvek kada je CS=1, memorija normalno funkcionie. Meutim, kada je
CS=0, pristup memoriji radi itanja ili upisa je onemoguen. Takoe, memorijski ip ima jo jednu
upravljaku liniju, Read/write_select (RWS), koja bira jednu od dve memorijske operacije: upis ili
itanje. Kada je RWS=0, memorija ita svoj sadraj sa lokacije odreene adresinim linijama koji
postaje dostupan na izlaznom portu. S druge strane, kada je RWS=1, memorija upisuje sadraj
prisutannaulaznomportuulokacijuodreenuadresnimlinijama.
RAM, takoe, ima mbitni ulazni i mbitni izlazni port. Za male vrednosti m (npr. 1 ili 4), memorija
moe imati razdvojene ulazne i izlazne portove. Meutim, da bi se smanjio broj pinova na
memorijskom ipu, ulazni i izlazni port su obino objedinjeni u jedinstven ulazno/izlazni port. U
optem sluaju, broj pinova na ipu odreuje povrnu koju ip zauzima na tampanoj ploi. Grafiki
simboliobatipapakovanjamemorijesuprikazananaSl.224(b).

(a)

(b)
Sl.224.RAMmemorija:(a)memorijskeadreseisadraj;(b)grafikisimboli.
RAMmemorijuine:poljememorijskihelija,adresnidekoderiulazno/izlazni(U/I)baferi.Kaotoje
prikazano na Sl. 225(a), memorijska elija (memory cell MC) moe se simboliki predstaviti kao
struktura koju ine: taktovani D le, jedno AND kolo i izlazni trostatiki bafer. Kada je signal
Row_select jednak 1, bit informacije zapamen u leu se prenosi na izlaz Output. Ako je pri tom i
signalWrite_enablejednak1,vrednostsaulazaInputsepamtiuleu.UoimodasignalWrite_enable
slui kao signal takta za le. Iako je memorijska elija predstavljena uz pomo lea i dva gejta, treba
razumetidaseonarealizujesadalekomanjimbrojemtranzistorauodnosunaregistarskueliju.
Shodno nainu implementacije, memorije se dele na statiki i dinamiki RAM. Statiki RAM (SRAM)
se konstruie na bazi memorijskih elija sa etiri do est tranzistora kod kojih se le realizuje uz
pomounakrsnospregnutihinvertora(2tranzistora),doksezaANDkoloitrostatikibaferkoristijo
po jedan tranzistor. SRAM memorija uva upisani sadraj sve dok se ne upie novi ili iskljui
napajanje. S druge strane, kod dinamike RAM memorije (DRAM), za realizaciju memorijske elije
koristi se samo jedan tranzistor. Takva memorijska elija gubi upisani sadraj pri svakom itanju, te
zbog toga nakon svakog itanje mora da sledi upis upravo proitanog podataka. Takoe, kao
Memorijska adresa
Binarno Decimalno
0 000 0 011 0100
0 001 1 011 0100
0 010 2 101 0011
0 011 3 011 1010
0 100 4 010 1100
0 101 5 000 0001
0 110 6 110 1000
0 111 7 101 0110
. . .
. . .
. . .
1 110 2
n
-2 000 0001
1 111 2
n
-1 111 1101
Sadraj memorije
m bita
Komponente uigitalnih sistema

SS

posledicanesavrenogpostupkafabrikacije,sadrajmemorijskeelijesespontanoinepovratnogubi
nakonizvesnogvremenapoupisu.Dabimemorijskaelijauspeladasauvasvojsadraj,neophodno
joj je pristupati sa nekom odreenom frekvencijom, ili periodino obnavljati (ili osveavati) upisani
sadraj. U toku osveavanja, operacije itanja i upisa se suspenduju, to moe u nekim sluajevima
biti problem. Meutim, bez obzira na sve to, zahvaljujui superiornim karakteristikama u pogledu
gustine pakovanja i cene, DRAM memorije se veoma esto koriste za projektovanje najrazliitijih
elektronskih ureaja. S druge strane, SRAM memorije su, iako skuplje, bre i zbog toga pogodne za
primenekojenezahtevajuvelikukoliinumemorije,kaoitamogdebrzipristupmemorijipredstavlja
imperativnizahtev.

(a)

(b)
Sl.225.OrganizacijaRAMmemorije:(a)memorijskaelija;(b)unutranjastruktura.
SRAM i DRAM memorije su tzv. nepostojane memorije (volatile memories), s obzirom da se njihov
sadraj gubi kada se iskljui napajanje. S druge strane, ROM i PROM memorije su tzv. postojane
memorije,sobziromdazadravajusadrajakinakoniskljuenjanapajanja.
Na Sl. 225(b) je prikazan primer memorije 4x4 koja ima 16 memorijskih elija. Radi pristupa svakoj
memorijskoj eliji, adresni dekoder dekodira adresu i selektuje jednu od vrsta. Pri tome, ako su oba
signala RWS i CS jednaka 1, u selektovanu vrstu upisuje se novi sadraj. Iako su sadraji svih elija
prisutninaizlaznimlinijama,izlaznitrostatikibaferisuzakoenitoomoguavanovompodatkukoji
je prisutan na ulazno/izlaznom portu da bude upisan. Meutim, ako je RWS=0 i CS=1, podatak iz
selektovanevrstesekroztrostatikebafereprosleujenaU/Iport.
Kaotojevereeno,memorijskekomponentesepopraviluproizvodeuveliinama2
n
xm,gdenim
mogu da variraju unutar irokog opsega brojeva. Meutim, uopteno govorei, za konkretnu
implementacionu tehnologiju i godinu proizvodnje, proizvod 2
n
xm, tj. kapacitet memorije, je
Komponente uigitalnih sistema

S6

konstanta.Imajuitouvidu,usluajevimakadamemorijapotrebnogkapacitetanijedostupnauvidu
monolitnog ipa, ona se mora konstruisati pomou memorijskih ipova manjeg kapaciteta koji su
dostupni na tritu u vremenu projektovanja. U nastavku ovog odeljka bie opisano kao se realizuju
ire i vee memorije, tj. kao postii da m i n budu vei od kapaciteta koji je raspoloiv na jednom
memorijskomipu.
Proirenje memorijske rei, tj. formiranje memorije sa veim m, postie se paralelnim vezivanjem
nekoliko memorijskih ipova. Na Sl. 226 je prikazan primer konstrukcije RAM memorije kapaciteta
16Kx32 korienjem RAM ipova kapaciteta 16Kx8 (K je oznaka za kilo, tj. 2
10
). Kao to se vidi, kod
ovogreenja,adresnelinije,kaoilinijeCSiRWS,povezanesusasvimmemorijskimipovima.Uoimo
dasuulaznaiizlaznamagistralapodeljenenaetirigrupeodpo8linija,priemusulinijeizistegrupe
povezane sa jednom memorijom. Korienjem ovog postupka u mogunosti smo da konstruiemo
memorijubilokojeirine.

Sl.226.16Kx32RAM,realizovanpomou16Kx8RAM.
Dabismorealizovaliveumemoriju,tj.memorijusaveimbrojemmemorijskihlokacija,neophodno
jepovezatinekolikomemorijskihipovanared,takodasvakiipsadrijedandeoodukupnogbroja
memorijskih rei. Princip reenja prikazan je na Sl. 227, gde je pomou etiri RAM ipa kapaciteta
16Kx8realizovanaRAMmemorijakapaciteta64Kx8.Uoimodauovomsluajusvimemorijskiipovi
dele istu ulazne i istu izlaznu magistralu, kao i zajedniki upravljaki signal RWS. U toku pristupa
memoriji, za izbor ipa koji sadri traeni podatak, koristi se signal CS. Pretpostavimo da RAM
oznaenkaoM
0
naslicisadrisvepodatkesaadresamaod0do2
14
1,M
1
od2
14
do2
15
1,M
2
od2
15

do2
15
+2
14
1iM
3
od2
15
+2
14
do2
16
1.esnestobitnaadresnamagistralajepodeljenanadvadela,tako
da se dva bita najvee teine koriste za izbor odgovarajueg ipa, a preostalih 14 bita se koriste za
izbor konkretne lokacije izabranog unutar ipa. Da bi se ovo postiglo, 14 bita na pozicijama manje
teine adresne magistrale su povezani na adresne portove svih memorijskih ipova, dok su dva bita
najveeteinepovezananadekoder2u4,kojiodreujekojiodetirimemorijskaipaebitiizabran
za upis ili itanje. Ovaj izbor se ostvaruje povezivanjem svakog od izlaza dekodera na ulaz CS
odgovarajuegmemorijskogipa,kaotojeprikazanonaSl.227.
Komponente uigitalnih sistema

S7


Sl.227.64Kx8RAMrealizovanpomou16Kx8RAM.
2.2.7 Stek
Stek (stack) ili magacin je memorijska struktura koja se esto koristi kako u softveru tako i u
hardveru. Po definiciji, stek je memorija sa ogranienim pristupom. Za razliku od RAMa gde se bilo
kom zapamenom podatku moe pristupati u bilo kom vremenu, podacima zapamenim u steku
pristupaseiskljuivoprekojednelokacije:vrhsteka.Drugimreima,kadasepodatakupisujeustek,
ili stavlja na stek (operacije push), on se smeta na vrh steka i pri tome se svi prethodno upisani
podaci sputaju za jednu poziciju niz stek. Suprotno tome, kada se podatak ita iz steka ili uzima sa
steka (operacija pop), on se sklanja sa vrha steka i pri tome se svi ostali podaci podiu za jednu
poziciju navie uz stek. Na Sl. 228(a) je prikazan stek dubine 4 (tj. kapaciteta 4 rei) koji inicijalno
sadri dva broja: 34 na lokaciji Top i 23 na lokaciji Top1. Na Sl. 228(b) moe se videti da stavljanje
Komponente uigitalnih sistema

S8

broja45nastekzahtevadabrojevi34i23budupremeteninalokacijeTop1iTop2.Sdrugestrane,
kadasebroj45uzimasasteka,brojevi34i23sepomerajunavie,takodaponovozauzimajulokacije
TopiTop1(Sl.228(c)).Uovomkonkretnomprimeru,nasteksemoestavitinajvieetiribroja,pre
negotosesteknapuni.Nakontoga,svakinoviupisustekznaigubitakpodatkasadnasteka.

(a)(b)(c)
Sl.228.Radsteka:(a)sadrajstekapreupisabroja45;(b)sadrajstekanakonupisabroj45;(c)sadrajsteka
nakonitanjabroja45.
2.2.7.1 Realizacija na bazi pomerakih registara
Prilikom projektovanja steka, vano je uoiti da se zapameni podaci pomeraju za jednu poziciju
nanie, odnosno navie, prilikom izvoenja operacija upisa i itanja. Na osnovu ovog zapaanja
zakljuujemo da za realizaciju steka treba koristiti pomerake registre u kombinaciji sa obostranim
brojaemzadetekcijupraznog,odnosnopunogsteka.Ovekomponentesukorienezarealizacijum
bitnog steka dubine 4 koji je prikazan na Sl. 229. Konkretno, za realizaciju su korieni univerzalni
pomeraki registar vidi Sl. 217 i obostrani broja sa Sl. 219. Uoimo da ovaj stek ima m ulaznih
linijaIN
i
imizlaznihlinijaOUT
i
,0im1.Takoe,stekimatriupravljakasignala,Push/pop,Enablei
Reset.
Signal Push/pop upravlja upisom i itanjem iz steka. Kada je Push/pop=0, podatak se upisuje u stek;
kada je Push/pop=1, podatak se ita iz steka. Signal Enable omoguava (dozvoljava) rad steka, dok
signalReset,uvekkadaje0,briesadrajpomerakihregistarairesetujeobostranibroja.Radsteka
je opisan tabelom operacija sa Sl. 229(a). Uoimo da stek ima dva izlazna signala, Empty i Full, koji
ukazuju na status steka, na sledei nain: ako je stek prazan, signal Empty ima vrednost 1; s druge
strane,kadaFullimavrednost1,stekjepun(Sl.229(c)).
Na Sl. 229(d) se moe videti da se stek sastoji iz m 4bitnih pomerakih registara tako da svakom
ulazu odgovara jedan pomeraki registar. Pri svakom upisu u stek, svi pomeraki registri obavljaju
operaciju pomeranja udesno. Slino, pri svakom itanju iz steka, svi pomeraki registri obavljaju
operaciju pomeranja ulevo. Svaki novi podatak koji se stavlja na stek, preko ulaza I
L
pomerakog
registra se upisuje se na poziciju Q
3
pomerakih registara, koja predstavlja vrh steka. Stanje brojaa
ukazuje na broj podataka u steku. Sinhronizovano sa svakom rastuom ivicom taktnog signala,
pomerakiregistriobavljajupomeranjeudesno,abrojabrojiunapredza1(Push/pop=0iEnable=1),
odnosnopomeranjeulevoibrojanjeunazad(Push/pop=1iEnable=1).
Komponente uigitalnih sistema

S9

Push/pop Enable Operacija


X 0 Bezpromene
0 1 Upis(push)
1 1 itanje(pop)
Push/
pop Ena.
Kontrolapom.
registra
Kontrola
brojaa
S
1
S
0
D E
X 0 0 0 X 0
0 1 1 1 0 1
1 1 1 0 1 1

Broja
Empty Full Q
2
Q
1
Q
0
0 0 0 1 0
0 0 1 0 0
0 1 0 0 0
0 1 1 0 0
1 0 0 0 1
(a) (b)
(c)

(d)
Sl.229.Stekdubine4.(a)Tabelaoperacija;(b)Tabelaizlaza;(c)Tabelaupravljanja;(d)strukturasteka.
Logike jednaine za upravljake signale pomerakih registara i brojaa mogu se izvesti na osnovu
tabele upravljanja koja je prikazana na Sl. 229(b). Na osnovu ove tabele moemo izvesti sledee
jednaine:
S
1
= Enoblc
S
0
= PusbPop

Enoblc
= (PusbPop) Enoblc
E = Enoblc
Realizacijaovihjednainapredstavljaupravljakulogikusteka.
Komponente uigitalnih sistema

6u

NaosnovutabeleizlazasaSl.229(c),vidisedaizlaznalogikadekodujestanjabrojaa000i100.Uvek
kadajestanjebrojaa000,signalEmptybie1;ubilokomdrugomstanjuEmptyje0.Suprotno,uvek
kadajestanjebrojaa100(upisanasu4podatka),signalFullbie1;ubilokomdrugomstanjuFullje
0.Naosnovutoga,moemoizvestisledeejednainezaizlaznulogiku:
Empty =

0

Full =
2

0

2.2.7.2 Realizacija na bazi RAM-a
Glavna slabost reenja steka sa Sl. 229 ogleda se u injenici da je za realizaciju steka vee dubine
potreban veliki broj skupih pomerakih registara. Iz tog razloga, za realizaciju steka veeg
kapacitetakoristiseRAM.Meutim,potoRAMnemamogunostpomeranjamemorisanogsadraja,
operacije push i pop moraju biti realizovane na drugaiji nain promenom tekue lokacije vrha
steka. Drugim reima, kada se podatak stavlja na stek, adresu vrha steka treba poveati za jedan.
Suprotno, kada se podatak uzima sa steka, adresu vrha steka treba smanjena za jedan. Dakle, pri
svakomupisupodatka,podatakseupisujenavrhsteka,aadresavrhasepoveavazajedan,takoda
vrh steka uvek ukazuje na praznu lokaciju u koju e biti upisan sledei podatak. S druge strane, pri
svakomitanjupodatka,podatakseuzimaizlokacijekojasenalaziodmahispodvrhasteka,naadresi
zajedanmanjeodadresevrhasteka.Sledeiovulogiku,znamodajezaRAMmemorijukapaciteta2
n

reistekprazanakojevrhstekanaadresi0,apunakojevrhnaadresi2
n
1.Uoimodaselokacijasa
adresom2
n
1nikadanekoristizasmetanjepodatka,vesamozaodreivanjedalijestekpun.Iako
se na ovaj nain gubi jedna od 2
n
raspoloivih rei RAM memorije, opisani pristup znaajno
pojednostavljujeizlaznulogiku.
NaSl.230jeprikazanarealizacijastekakojakoristiRAM memorijukapaciteta 1K(2
10
) idvabrojaa
koji ukazuju na vrh steka i prvu lokaciju ispod vrha. Uoimo da su ulazi, izlazi i operacije steka
identine kao na Sl. 229. Kao to se vidi sa Sl. 230(d), stek sadri: dva 10bitna brojaa, jedan 10
bitni multiplekser 2u1, 1K RAM, upravljaku i izlaznu logika. Dva brojaa, nazvana Top i Top1,
razlikuju se za 1, i oba se uveavaju za jedan pri svakoj operaciji push, a smanjuju za jedan pri
operaciji pop. Pri operaciji push, adresa RAMa je sadraj brojaa Top, dok pri operaciji pop, adresa
RAMajesadrajbrojaaTop1.
Polazei od prethodnog razmatranja, u mogunosti smo da konstruiemo tabelu upravljanja koja je
prikazana na Sl. 230(c) koja sadri vrednosti svih internih signala koji upravljaju brojaima,
multiplekserom i RAM memorijom kako pri push i tako i pri pop operaciji. Na osnovu ove tabele,
moemoizvestisledeejednainezaupravljakulogiku:
E = CS = Enoblc
S = RwS = (PusbPop

) Enoblc
= (PusbPop) Enoblc
Izlaznu logiku ine dva logika kola koja ukazuju kada je stek pun, odnosno prazan. Poto je stek
prazan uvek kada je sadraj brojaa Top jednak 0, da bi se detektovao uslov Empty koristi se 10
ulaznoNORkoloijiulazisupovezaninaizlazebrojaaTop.Slino,stekjepunuvekkadabrojaTop
sadrisvejedinice,tosedetektuje10ulaznimAND.ematskiprikazstrukturestekazasnovanogna
RAMmemorijiprikazanjenaSl.230(d).
Komponente uigitalnih sistema

61

(a)
Push/pop Enable Operacija
X 0 Bezpromene
0 1 Upis(push)
1 1 itanje(pop)
(b)
(c)
Push/pop Enable
Kontrola
muxa
S
Kontrolamem. Kontrolabroj.
CS RWS D E
X 0 X 0 0 X 0
0 1 1 1 1 0 1
1 1 0 1 0 1 1

(d)
Sl.230.RealizacijastekanabaziRAMmemorije:(a)Simbolikoreenje;(b)Tabelaoperacija;(c)Tabela
upravljanja;(d)ematskiprikaz.
2.2.8 FIFO
FIFO (FirstInFirstOut), ili, red ekanja, je struktura koja se esto koristi kada treba uravnoteiti
zahteve za nekom obradom. Zamislimo, na primer, ljude kako stoje ispred altera u banci ili kako
ulazeuautobus,kojimorajuekatiuredudoknestignunareddabuduopslueni.Slinasituacijase
javljakodrazliitihprocesora,ASICkolailibilokogureajakojialjepodatkenekomdrugomureaju
radi dalje obrade, u smislu da onda kada u jednom trenutku brzina generisanja podataka nadmai
brzinu kojom se podaci obrauju, neophodno je izmeu proizvoaa i potroaa umetnuti red
ekanja,tj.FIFO.Naravno,utakvimsituacijama,brzinakojomproizvoageneriepodatkenemoe
u nedogled biti vea od brzine kojom potroa moe da prihvata podatke, jer bi to zahtevalo red
ekanjabeskonaneduine.Usvakomsluaju,uproseku,obebrzinemorajubitiiste,aveliinareda
ekanjaodreujekolikodugosemoetolerisatineujednaenostizmeuzahtevazaobradomibrzine
obrade.
Komponente uigitalnih sistema

62

SvrhaFIFOajedasauvapodatkeupuenepotroau,kojeontrenutnonijeustanjudaprihvati,ali
kojeeudoglednovremepreuzetiitouredosledupokomesuoniposlati.Znai,podatakkojijeprvi
upisan u FIFO, prvi se i ita, itd., kao to je ilustrovano na Sl. 231. Na Sl. 231(a) je prikazan red
ekanjanakontosubrojevi23i34upisani,aliprenegotojestigaobroj45.NaSl.231(b)moemo
videtisadrajFIFOanakonupisabroja45.UoimodajenakonitanjaFIFOa,broj23odbaenidaje
sadrajredapomerenzajednupozicijunadole.Sadrajredaekanjanakonpomeranjaprikazanjena
Sl.231(c).

(a)(b)(c)
Sl.231.PrincipradaFIFOa:(a)sadrajredapreupisabroja45;(b)sadrajredaposleupisbroja45;(c)
sadrajredanakonitanjabroja23.
Na Sl. 232 je prikazan blok dijagram FIFOa. U optem sluaju, FIFO ima m ulaznih linija IN
i
i m
izlaznih linija OUT
i
, gde je 0im1. Takoe, FIFO ima tri upravljaka signala: Read/write, Enable i
Reset.KadajeRead/write=0,naizlazuFIFOapostavljenjepodatakuzetsapoetkareda,tj.podatak
kojijenajdueureduekanja.KadajeRead/write=1,uFIFOseupisujepodatakprisutannaulazima
IN
i
ismetanakrajredaekanja.TipinarealizacijaFIFOaimajodvastatusnasignala,FulliEmpty,
koji se koriste za kontrolu proizvoaa i potroaa. Kada je red pun, signal Full ima vrednost 1, to
predstavlja upozorenje proizvoau da e svaki naredni poslati podatak biti odbaen. Kada se red
isprazan, signal Empty postaje 1, to predstavlja upozorenje potroau da novi podaci jo uvek nisu
stigli.

Sl.232.BlokdijagramFIFOa.
2.2.8.1 Realizacija na bazi pomerakih registara
Imajui u vidu da je unutar reda ekanja redosled pristizanja podataka ouvan, FIFO moemo
konstruisatiuzpomopomerakihregistaraukombinacijisabrojaemkojiebrojativaeepodatke
uredu.TakvajednarealizacijaFIFOaprikazanajenaSl.233(c),atabelaoperacijanaSl.233(a).Kraj
redajeuveknapozicijiQ
3
pomerakihregistara,doksepoetakpomerazajednupozicijuudesno,pri
svakom upisu novog podatka. Pri upisu, podatak se upisuje na poziciju Q
3
, pomeraki registri
pomeraju svoj sadraj za jednu poziciju udesno, a broja se inkrementira tako da njegov sadraj
ponovo ukazuje na prvo upisani podatak. S druge strane, pri svakom itanju podatka iz reda, uz
Komponente uigitalnih sistema

6S

pomomultipleksera,birasepodataksapoetkaredaipostavljanaizlaz,abrojasedekrementira.
Uoimo da se proitani podatak ne ponitava, ve samo postaje nevaei, time to je broja
dekrementiran. Na Sl. 233(b) je prikazana tabela upravljanja koja definie vrednosti internih
upravljakih signala u zavisnosti od izabrane operacije. U toku operacije itanja, sadraj pomerakih
registarasenemenja,abrojabrojiza1unazad.Meutim,utokuoperacijeupisa,pomerakiregistri
e obaviti pomeranje za jednu poziciju udesno, a broja e odbrojati za 1 unapred. Broja, takoe,
upravljaizborompodatkaprilikomoperacijeitanja.Utokuinicijalizacije,brojasepostavljana1111,
tako da njegovo stanje pri upisu prvog podatka u red postaje 0000. Ovakva inicijalizacija brojaa je
neophodnakakobiseostvarilapravilnoupravljanjemultiplekserima,kojizahtevajuvrednosti00,01,
10i11nasvojimselekcionimulazimadabiizabralijedanodizlazapomerakihregistara.
Read/write Enable Operacija Read/write Enable S
1
S
0
D E
X 0 Bez promene X 0 0 0 X 0
0 1 itanje 0 1 0 0 1 1
1 1 Upis 1 1 1 0 0 1
(a)(b)

(c)
Sl.233.FIFOduine4rei:(a)Tabelaoperacija;(b)Tabelaupravljanja;(c)ematskiprikaz.
Naosnovutabeleupravljanjamoemoodreditijednainepreostalihupravljakihsignala:
S
0
= S
1
= (RcoJwritc) Enoblc
= (RcoJwrttc

) Enoblc
E = Enoblc
Komponente uigitalnih sistema

64

SvrhaizlaznelogikejegenerisanjesignalaFulliEmpty.Redekanjajeprazan(Empty=1)akojestanje
brojaa 111, a pun (Full=1) ako je stanje brojaa 011. U svim ostalim stanjima brojaa, oba signala,
FulliEmpty,imajuvrednost0.Dakle:
Empty =
2

0

Full =

0

2.2.8.2 Realizacija na bazi RAM-a
Kao i kod steka, redovi ekanja vee duine, obino, umesto pomerakih registara, za smetanje
podatakakoristeRAMisadredvabrojaakojiukazujunapoetakikrajreda.Takvajednastruktura
poznata je pod nazivom kruni bafer. Simbolika predstava krunog bafera prikazana je na Sl. 234.
Uoimo da struktura sa Sl. 235(a) koristi RAM memoriju kapaciteta 1K rei i dva brojaa, oznaena
kao Poetak i Kraj. Broja Poetak sadri adresu najranije upisanog podatka. Uvek kada se zahteva
operacija itanja, podatak se ita sa adrese na koju ukazuje broja Poetak i postavlja na U/I
magistralu, a broja Poetak se inkrementira. Broja Kraj sadri adresu prve prazne lokacije u redu.
Prilikom operacije upisa, podatak se upisuje na lokaciju na koju ukazuje broja Kraj, a broja Kraj se
inkrementira.Ukolikosepodaciizredaeeitajunegoupisuju,desiesesituacijadabajaPoetak
ukazuje na istu lokaciju kao i broja Kraj, to znai da je red prazan. Sa druge strane, ako se u rad
podaci ee upisuju nego to se itaju, broja Kraj koji se inkrementira po modulu 1024, u jednom
trenutkuukazivaenaistulokacijukaoibrojaPoetak,to,meutim,sadaznaidajeredpun.Dabi
seizbegladvosmislenostuznaenjuuslovaPoetak=Kraj,umesto10bitnihmoemokoristiti11bitne
(po modulu 2048) brojae. Za adresiranje se koriste 10 niih bitova, dok svih 11 uestvuju u
ispitivanju uslova Poetak=Kraj. Kod ovakve realizacije, red ekanja je prazan ako su sadraji oba
brojaaidentini,apunakosesadrajibrojaarazlikujusamonabitunajveeteine.

Sl.234.PrincipradaFIFOanabaziRAMa.
Na Sl. 235 prikazana je realizacija FIFO reda koja koristi 1K RAM i dva brojaa. Takoe, FIFO sadri
multiplekser preko koga se bira jedan od brojaa kao izvor adrese za RAM i komparator koji poredi
sadrajebrojaa.TabelaoperacijajeprikazananaSl.235(a),tabelaupravljanjanaSl.235(b),dokje
naSl.235(c)datkonaniematskiizgledFIFOazasnovanognaRAMu.
Read/write Enable Operacija

Read/write Enable S CS RWS

E
(Poetak)
E
(Kraj)
X 0 Bez promene X 0 X 0 X 0 0
0 1 itanje 0 1 1 1 0 1 0
1 1 Upis 1 1 0 1 1 0 1
(a)(b)
Komponente uigitalnih sistema

6S


(c)
Sl.235.FIFOrealizovannabazi1KRAMa:(a)Tabelaoperacija;(b)Tabelaupravljanja;(c)ematskiprikaz.
2.3 Konani automati
Konani automati (engl. Finite State Machine FSM) predstavljaju najznaajniju tehniku za
modeliranje ponaanja sekvencijalnih kola, koja je naroito pogodna za projektovanje pojedinih
tipova digitalnih sistema (kao to su to upravljake jedinice) ija se funkcija moe opisati precizno
definisanomsekvencomaktivnosti.Formalno,konaniautomatsedefiniekaoureenapetorka:
<S,I,O,f,h>
gdesuS,IiOskupstanja,skupulazaiskupizlaza,respektivno,doksufihfunkcijasledeegstanjai
funkcija izlaza. Funkcija sledeeg stanja, f, definie se kao preslikavanje S I S. Drugim reima,
funkcijafsvakomparustanjaiulaznogsimbolapridruujesimbolstanja.Modelkonanogautomata
podrazumeva da je vreme podeljeno na intervale fiksnog trajanja, a da se prelaz iz jednog u drugo
stanje deava na poetku svakog vremenskog intervala. Znai, za dato stanje i ulazne vrednosti u
tekuem vremenskom intervalu, funkcija f definie u kom e stanju konani automat biti u toku
sledeegvremenskogintervala.
Funkcijaizlaza,h,odreujeizlaznevrednostiutekuemstanjuautomata.Postojedvevrstekonanih
automata, kojima odgovaraju dve razliite definicije funkcije izlaz h. Jedna vrsta se zove Murov, a
druga Milijev konani automat. Kod Murovog konanog automata, funkcija h je definisana kao
preslikavanje:S 0,toznaidajesvakomstanjupridruenizlaznisimboltj.izlazzavisisamood
tekueg stanja. Kod Milijevog konanog automata, funkcija h je preslikavanje: S I 0. U ovom
sluaju, u svakom stanju, izlazni simbol je odreen parom stanje ulazni simbol, tj. izlaz zavisi od
tekuegstanjaitrenutnevrednostiulaza.
Shodnodefinicijikonanogautomata,skupoviS,IiOmoguimatiproizvoljanbrojsimbola.Meutim,
kodpraktinihproblema,baratasesamosabinarnimpromenljivim,binarnimoperatorimaibinarnim
Komponente uigitalnih sistema

66

memorijskimelementima.Iztograzloga,funkcijefihsedefiniukaoBulovefunkcijekojeserealizuju
uzpomologikihkola.
KonaniautomatmoemodeliratifunkcijubilokogsekvencijalnogkolosakulaznihsignalaA
1
,...,A
k
,
mflipflopovaQ
1
,...,Q
m
inizlaznihsignalaY
1
,...,Y
n
,kaotojeprikazanonaSl.236.Zajednoovakvo
sekvencijalnokolo,S,IiOpredstavljajuunakrsniproizvodflipflopovailisignala,nasledeinain:
S=Q
1
Q
2
... Q
m
I=A
1
A
2
... A
k

O=Y
1
Y
2
... Y
n

Sobziromdavrednostflipflopailisignalamoebitisamo0ili1,svakielementizS,IiOpredstavljen
jenizomnulaijedinicaduinem,kin,respektivno.

Sl.236.Modelkonanogautomata.
Svaki konani automat moe se realizovati uz pomo flipflopova i logikih kola. Sadraj flipflopova
definie stanje konanog automata, dok su funkcije f i h realizovane u obliku kombinacionih mrea.
UopteniblokdijagramikonanihautomataMurovogiMilijevogtipa,prikazanisunaSl.237.

(a)
Komponente uigitalnih sistema

67

(b)
Sl.237.Tipovikonanihautomata:(a)Murov;(b)Milijev.
2.4 Staza podataka
2

Staza podataka (datapath) je kolekcija: (a) funkcionalnih jedinica, kako to su ALU, mnoai i
pomerai,(b)registarailidrugihmemorijskihkola,povezanihusloenuhardverskustrukturupomou
magistrale ili multipleksera. Staze podataka su sastavni deo svih standardnih procesora i ASIC kola,
gdesekoristezaizvrenjesloenihnumerikihizraunavanjaimanipulacijupodacima.
Razmotrimo,naprimer,realizacijustazepodatakazasabiranje10032bitnihbrojeva:
sum = x

100
=1

Ovoizraunavanjesemoeobavitiupetlji,gdebisumbilapromenljivainicijalnopostavljenananulu:
sum = 0
loop:
for i=1 to 100
sum=sum + x
i

end loop
Opisano izraunavanje se moe izvriti u 32bitnoj staza podataka koja sadri jedan registra, tzv.
akumulator,ijednuALU.Vrednostpromenljivesumseuvaakumulatoru;usvakomtaktnomciklusu
novox
i
sesabirasasumuzpomoALU,anovavrednostpromenljivesumsuupisujeuakumulator.

2
Ova sekcija predstavlja uvod u problematiku projektovanja na RTL nivou apstrakcije i sintezu visokog nivoa, a
to su upravo teme koje se obrauje u nastavku kursa. Iako iz ove sekcije ne postoje ispitna pitanja i zadaci,
preporuuje se studentima da s razumevanjem proitaju nekoliko narednih stranica teksta.
Komponente uigitalnih sistema

68

Na Sl. 238 prikazana je jednostavna (tj. Sekvencijalna) staza podataka koja moe da obavi opisano
sumiranje. Ova staza podataka sadri multiplekser, preko koga se kao levi operand ALU jedinice
dovodi 0 ili ulazni podatak. Sadraj akumulator se koristi kao desni operand ALU jedinice. Takoe,
sadraj akumulatora se preko trostatikog bafera vodi na izlaz staze podataka. Akumulator je
pomerakiregistarsaparalelnimupisom(madaseuovomprimerunekoristimogunostpomeranje
memorisanog sadraja). Na Sl. 238(a) dat je ematski prikaz staze podataka, dok je na Sl. 238(b)
prikazana 9bitna upravljaka re u okviru koje su navedene vrednosti signala koji upravljaju
multiplekserom,ALUjedinicom,akumulatoromiizlaznimbaferom.Svekomponentestazepodataka
suirine32bita.
Uopteno govorei, veina digitalnih projektanata postupa na isti nain kada projektuje sisteme
sline opisanom. Vrednosti promenljivih i konstante se uvaju u registrima ili memoriji, odakle se
itaju nakon rastue ivice taktnog signala i sve do sledee rastue ivice transformiu uz pomo
funkcionalnihjedinica,dabi,konano,sasledeomrastuomivicomtaktarezultatbioupisannazadu
memorijskekomponente.
U toku svakog taktnog ciklusa, upravljaka re odreuje operaciju staze podataka. Izraunavanje
zbira100brojevazahteva102taktnaciklusa.Upravljakarebieistausvimtaktnimciklusimaosim
uprvomiposlednjem.Uprvomtaktnomciklusu,neophodnojeobrisatisadrajakumulatora(sum=0),
u sledeih 100 taktnih ciklusa dodaje se novo x na akumuliranu sumu, a u poslednjem taktnom
ciklususadrajakumulatoraseprenosinaizlaz.

(a) (b)
Sl.238.StazapodatakasaakumulatoromiALU:(a)ematskiprikaz;(b)Upravljakare.
Iako opisana staza podataka moe biti koriena i za neka druga jednostavna aritmetika
izraunavanja,sloenijaizraunavanjazahtevajuveibrojpromenljivihkaoisloenijustazupodataka
koja, na primer, za smetanje promenljivih, umesto akumulatora, koristi registarski fajl. Na Sl. 239
prikazan je primer sloenije staza podataka koja sadri multiplekser, registarski fajl sa 8 registra i tri
Komponente uigitalnih sistema

69

porta, jednu ALU jedinicu, pomera i izlazni trostatiki bafer. U ovom sluaju, u svakom taktnom
ciklusu,obaoperandaALUjediniceseuzimajuizregistarskogfajla,gdeseupisujeirezultat.Izrazloga
kompletnosti,naSl.239(b)i(c)suprikazanetabeleoperacijaALUjediniceipomeraa,dokjeformat
upravljake rei prikazana na Sl. 239(d). Uoimo da je za upravljanje stazom podataka neophodna
20bitna upravljaka re, koja odreuje sva odredita, izvore podataka kao i operacije u stazi
podataka. Radi boljeg razumevanja rada staze podataka, iskoristiemo je za realizaciju algoritma
brojanjajedinica.

(b)

(c) (a)

(d)
Sl.239.Stazapodatakasaregistarskimfajlom:(a)ematskiprikaz.(b)ALUoperacije;(c)operacije
pomeraa;(d)upravljakare.

Pr.21.Brojajedinica
Problem:KorienjemstazepodatakasaSl.239,projektovatibrojajedinicakojiodreujebroj1cauulaznoj
rei.RegistarR0registarskogfajlasadrikonstantu0.
Reenje:Zaopisalgoritmaradabrojaajedinicakoristiemoetiripromenljive:Podatak,BrojJedinica,Maskai
Temp.PromenljivaPodataksadraevrednostulaznerei,tj.reiukojojsebrojejedinice.Algoritamanalizira
Komponente uigitalnih sistema

7u

promenljivuPodatak,bitpobit,odbitanajmanjedobitanajveeteineidodaje1promenljivojBrojJedinicaza
svaku 1 na koju naie u ulaznoj rei. Promenljiva Maska sadri konstantu 1, a promenljiva Temp se koristi za
privremeno uvanje bita najmanje teine promenljive Podatak. Nakon inicijalizacije, algoritam izdvaja bit
najmanje teine promenljive Podatak i smeta ga u promenljivu Temp, zatim dodaje Temp na BrojJedinica i
konano, pomera promenljivu Podatak za jednu poziciju udesno. Ova sekvenca operacija se ponavlja sve dok
promenljiva Podatak sadri vrednost razliitu od sve nule. Uoimo da e za razliite ulazne rei, broj
ponavljanjaovesekvenceoperacijabitirazliit.NaSl.240(a),prikazanjealgoritambrojanjajedinica.Naredbe
1,2i3sekoristezainicijalizacijupromenljivih.Naredbe4i5dodajubitnajmanjeteinepromenljivePodatak
natekuuvrednostpromenljiveBrojJedinica,doknaredba6pomerasadrajpromenljivePodatakzajednubit
pozicijuudesno.(Pripomeranjuudesno,ubitnajveeteineupisujese0.)Konano,naredba7prenosisadraj
promenljiveBrojJedinicanaizlaz.

(a) (b)
Upravljaka
re
IE
Adresa
upisa
Adresa
itanjaA
Adresa
itanjaB
ALU
Operacija
Operacija
pomeraa
OE
1 1 R
1
X X X Proputanje 0
2 0 R
3
0 0 Sabiranje Proputanje 0
3 0 R
2
0 X Inkrement Proputanje 0
4 0 R
4
R
1
R
2
AND Proputanje 0
5 0 R
3
R
3
R
4
Sabiranje Proputanje 0
6 0 R
1
R
1
0 Sabiranje Pomeranjeudesno 0
7 0 R
3
0 Sabiranje Proputanje 1
(c)

(d)
Sl.240.Algoritambrojanjajedinica:(a)polaznialgoritam;(b)dodelaregistara;(c)upravljakereibrojaa
jedinica;(d)konaniautomatupravljakejedinice.
S
0
S1
S2
S
3
S4
S5
S
6
S
7
Podatak = Ulaz
BrojJedinica = 0
Maska = 1
Temp = Podatak AND
Mask
BrojJedinica = BrojJedinica + Temp
Podatak = Podatak >> 1
Izlaz = BrojJedinica
Start = 1
Podatak = 0
Podatak 0
Done = 1
Start = 0
Komponente uigitalnih sistema

71

Sl.241.Hardverskastrukturabrojaajedinica.
Prvikorakuprojektovanjuhardverskerealizacijealgoritmajepridruivanjepromenljivihregistrimaregistarskog
fajla.KaotojeprikazanonaSl.240(b),promenljivePodatak,Maska,BrojJedinicaiTemp,pridruenesuredom
registrima R
1
, R
2
, R
3
i R
4
. Nakon to su promenljive dodeljene registrima, za svaku algoritamsku naredbu
odreuje se upravljaka re, kao to je prikazano na Sl. 240(c). Upravljaka re je podeljena na polja koja
0
1
RAA2
RAA1
RAA0
REA
RAB2
RAB1
RAB0
REB
0
M
S1
S0 1
S2
S1
S0 0
OE
Q2 Q2
'
Q1 Q1
'
Q0 Q0
'
WE
WA0
WA1
WA2
IE
Q2 Q2
'
Q1 Q1
'
Q0 Q0
'
D2 Q2
Q2'
D1 Q1
Q1'
D0 Q0
Q0'
Podatak=0
Podatak<>0
Start
Clk
Done
Izlaz
Ulaz
Magistrala
rezultata
Staza
podataka
Logika
sledeeg stanja
Upravljaka
jedinica
Izlazna logika
Komponente uigitalnih sistema

72

definiuoperacijeALUjediniceipomeraazajednosaadresamaregistarakojisekoristekaoizvorioperanadai
adresom registra gde se smeta rezultat. U cilju upravljanja stazom podataka, pretpostaviemo da se Broja
jedinicarealizujekaonezavisnimodulkojipoinjesaradomuvekkadasignalStartpostane1,apostavlja1na
izlazDoneodmahnakontojezavrioizraunavanje.
KaotosemoevidetinaSl.240(d),konaniautomatkojiopisujeradBrojaajedinicaimaosamstanja.Broja
jedinicaostajeustanjuS
0
svedoksignalStartnepostanejednak1,azatim,usledeihsedamstanja,S
1
,S
2
,...,
S
7
,BrojajedinicaradishodnoalgoritmusaSl.240(a).Konano,ustanjuS
7
,Brojajedinicapostavljarezultat
naizlaz,aktivirasignalDoneivraaseustanjeS
0
.UpravljakajedinicaBrojaajedinicaimadvaulaznasignala,
StartiPodatak0ijedanizlaznisignal,Done.SignaliStartiDonesekoristezakomunikacijusaokruenjem,dok
signal Podatak0, u sutini, predstavlja statusni signal staze podataka. U svakom taktnom ciklusu, upravljaka
jedinica generie 20 bita upravljake rei. Uoimo da su za realizaciju osam stanja neophodna tri D flipflopa.
Konano,naSl.241datjeematskiprikazBrojaajedinicakojikorististazupodatakasaSl.239(a).

2.4.1 Paralelna staza podataka


Uprethodnojsekcijiopisanojevieprimerajednostavnihstazapodataka.Meutim,zaprimenekoje
zahtevajuvelikubrzinuobradepodataka,takve,jednostavnestazepodatakabilebiverovatnoprevie
spore. Poveanje performansi zahteva redizajniranje ovih staza podataka na nain koji e omoguiti
konkurentno izvrenje vie operacija. Staze podataka koje omoguavaju istovremeno (konkurentno)
izvrenjevieopcijazovuseparalelnestazepodataka.
Oigledan nain za paralelizaciju staze podataka sastoji se u poveanju broja portova registarskog
fajla i korienju nekoliko funkcionalnih jedinica, kao to je prikazano na primeru paralelne staze
podatakasaSl.242.Uoimodaovastazapodatakaima6toportniregistarskifajl(4portazaitanjei
2zaupis),estmagistrala(etirizaprenosoperanadaidvezaprenosrezultata)ietirifunkcionalne
jedinice(ALU,pomera,mnoaidelitelj).Prikazanastazapodatakamoedaizvravadveoperacijeu
paraleli,jednuuALUjediniciilipomerauidruguumnoauilidelitelju.
Staza podataka sa Sl. 242, ipak omoguava samo ogranien paralizam, s obzirom da ne moe
istovremeno da obavlja bilo koje dve operacije. Na primer, u ovoj stazi podataka nije mogue u
paraleliobavitidvasabiranjailidvamnoenja(zatotopostojisamojednaALUjedinicaisamojedan
mnoa). Drugim reima, staza podataka sa Sl. 242 moe ispoljiti dva puta bolje performanse u
odnosu na jednostavne (sekvencijalne) staze podataka iz prethodne sekcije, samo pod uslovom da
algoritam ne zahteva ovakav tip paralelizma. Takoe, u ovoj stazi podataka komponente nisu
potpuno povezane, to znai da izvesni tipovi paralelizma, koji iako postoje u algoritmu, nee moi
biti iskorieni. Na primer, s obzirom da ALU jedinica i pomera, kao i mnoa i delitelj koriste
zajednike magistrale za prenos operanada i rezultata, staza podataka ne moe u isto vreme da
izvravaoperacijumnoenjaioperacijudeljenja,odnosnooperacijusabiranjaioperacijupomeranja.
Drugimreima,akiakoalgoritamomoguavaistovremenoizvrenjeoperacijasabiranjaipomeranja,
staza podataka je u mogunosti da u jednom taktnom ciklusu obavlja samo jednu od ove dve
operacije,bezobziratohardverskiresursi,uvidufunkcionalnihjedinica,postoje.
Komponente uigitalnih sistema

7S

Sl.242.Primerparalelnestazepodataka
Na osnovu prethodne diskusije moemo zakljuiti da poveanje performansi kod paralelne staze
podataka zavisi ne samo od broja i tipa ugraenih funkcionalnih jedinica, ve i od naina na koji su
funkcionalne jedinice povezane, kao i od nivoa i tipa paralelizma koji je sadran u algoritmu koji se
izvrava na toj stazi podataka. Drugim reima, najbolji odnos cena/performanse se postie ako su
tipovi jedinica i nain njihovog povezivanja usklaeni sa paralelizmu koji je dostupan u algoritmu.
Takoe,moramobitisvesniinjeniceda,tipino,algoritamneobezbeujeistinivoparalizamazasve
vremesvogizvrenja.
U optem sluaju, da bi se postiglo najbolje poklapanje izmeu algoritma i namenski projektovane
staze podataka, potrebno je nai optimalan broj ALU jedinica, brojaa, registarskih fajlova sa
razliitim brojem portova, koji su povezani pomou vie magistrala. Magistrale se koriste kako za
prenos operanada iz memorijskih komponenti do funkcionalnih jedinica, tako i za prenos rezultata
funkcionalnihjedinicanazadumemorijskekomponente.Takoe,moguejedafunkcionalnejedinice
dobijajuoperandesavieodjednemagistrale,madatakvojednoreenjezahtevaugradnjudodatnih
multiplekseranaulazimafunkcionalnihjedinica.Takoe,moguejeispredulazaiizlazafunkcionalne
jediniceugraditiregistrekojibisekoristilizaprivremenosmetanjeulaznihoperanada.Naovajnain
se znaajno skrauje vreme u kome se magistrale koriste za prenos operanada, ime se posredno
poveavasaobraajnamagistralama.
Sdrugestrane,ugradnjaulaznihiizlaznihregistarazahtevasloenijeupravljanje,sobziromnatoto
bibikodtakvogreenjaobavljanjesvakeoperacijezahtevavieodjednogtaktnogciklusa.Najmanje
jedan taktni ciklus je neophodan za svaku od sledeih aktivnosti: (a) pribavljanje operanada iz
registara,registarskihfajlovailimemorijeiupisuulazneregistrefunkcionalnihjedinica,(b)izvrenje
operacije i upis rezultata u izlazne registre i (c) smetanje rezultata iz izlaznih registara nazad u
registre ili memoriju. Na Sl. 243 prikazan je primer jedne ovakve staze podataka. Uoimo da staza
Komponente uigitalnih sistema

74

podatakasadrijedanbroja,jedanregistar,troportniregistarskifajlimemoriju.Zaizraunavanjese
koristedveALUjediniceimnoa,doksezaspregukomponentikoristeetirimagistrale.Kaotose
moevideti,kodALU
1
neleevinisuugraeni,kodALU
2
postojeregistriinaulazimainaizlazima,dok
kod mnoaa registri postoje samo na ulazima. U ovakvoj strukturi, ALU
1
moe da dobije svoj levi
operand preko magistrala Magistrala_2 i Magistrala_3, dok desni operand mnoaa moe doi bilo
preko Magistrala_1 bilo preko Magistrala_4. Slino, memorijske komponente mogu da prime
podatke preko vie od jedne magistrale. Ovakav tip staze podataka se esto koristi kod aplikaciono
specifinihintegrisanihkoladabisezadatialgoritamostvarionajboljiodnosperformanse/cena.

Sl.243.Primersloenijeparalelnestazepodataka


ALU
1
1 0
mux
ALU
2
Registar Registar
Mnoa
Registar Registar
1 0
mux
Magistrala_1
Magistrala_2
Magistrala_3
Magistrala_4
Broja Registar
Registarski
fajl
Memorija
1 0
mux
1 0
mux
1 0
mux
Ulaz
Komponente uigitalnih sistema

7S

3 Pitanja
3

1. Sabirasarednimprenosom.Tabelaistinitostiilogikejednainepotpunogsabiraa.Sprega
potpunihsabiraa.
2. Sabira/oduzima.
3. Logikajedinica.
4. Aritmetikologika jedinica. Princip konstrukcije na bazi sabraa i logikih i aritmetikih
ekspandera.
5. Koincidentnodekodiranje.
6. Hijerarhijskodekodiranje.
7. Hijerarhijskarealizacijamultipleksera.
8. Realizacijamultiplekserapomoudekoderailogikihkola.
9. Trostatikamagistrala.
10. Demultiplekser.Realizacijapomoudekodera.
11. Realizacijaprioritetnogkoderapomoubinarnogkoderaimreezarazreavanjeprioriteta.
12. Hijerarhijskarealizacijaprioritetnogkodera.
13. Univerzalnikomparator.Izvoenjelogikihjednainakomparatoraetvorobitnihbrojeva.
14. Iterativnakomparatorskamrea.
15. Hijerarhijskakomparatorskamrea.
16. Pomera/rotator.Realizacijapomoumultipleksera.
17. Barelpomera.
18. PrinciprealizacijelogikihfunkcijapomouROMa
19. PLAstrukturaiprinciprealizacijelogikihfunkcija
20. Tipoviflipflopova.
21. Univerzalnipomerakiregistar.Struktura.
22. Binarnibroja.Struktura.
23. Obostranibinarnibroja.Struktura.
24. Principrealizacijebrojaaskraeneosnovebrojanja(BCDbroja)
25. Registarskifajl.Struktura.RFsajednimportomzaupisijednimportomzaitanje.RFsadva
portazaitanjeijednimzaupis.
26. RAM.Struktura.Proirenje.
27. Stek.Princip.
28. Stek.Realizacijapomoupomerakihregistara.
29. Stek.RealizacijapomouRAMa.
30. FIFO.Princip.
31. FIFO.Realizacijapomoupomerakihregistara.
32. FIFO.RealizacijapomouRAMa.
33. Strukturniblokdijagramkonanogautomata:(a)Murovog;(b)Milijevogtipa.

3
Pitanja koja su ovde data treba da vam poslue da lake savladate gradivo. Ovo nije konana lista ispitnih
pitanja, to ne iskljuuje mogunost da neka od ovih pitanja dobijete na ispitu

You might also like