Professional Documents
Culture Documents
Sekvencijalna Kola PDF
Sekvencijalna Kola PDF
SEKVENCIJALNA KOLA
Na logičkom nivou digitalna kola se dele na dve velike klase: ona koja ne
poseduju memoriju nazivamo kombinacionim kolima, dok su ona koja poseduju memoriju
poznata pod imenom sekvencijalna kola. Ponašanje kombinacionog kola u potpunosti je
specificirano istinitosnom tablicom ili skupom jednačina koje za svaku ulaznu kombinaciju
daju odgovarajuću izlaznu kombinaciju. Ova kola preslikavaju ulazne podatke u izlazne, tj.
obavljaju izračunavanje u jednom koraku. U praksi postoji neznatno kašnjenje pre nego što
izlazni signali promene svoje stanje kao odziv na promene vrednosti signala na ulazu.
Vreme odziva je obično veoma kratko, najčešće reda nanosekunde ili kraće, tako da se sa
tog aspekta za odziv kombinacionih kola kaže da je trenutan.
U idealnom slučaju, kombinaciono kolo se definiše kao kolo čije je vreme odziva
nula. U opštem slučaju, ponašanje kombinacionog kola sa n ulaza koje koristi binarne
signale se može opisati istinitosnom tablicom koja ima 2n vrsta, po jednu za svaku moguću
ulaznu kombinaciju. Ilustracije radi, dvobitni sabirač sa slike 7.1a ima četiri ulazna signala,
a shodno prethodnom zaključku, njegov rad se opisuje istinitosnom tablicom koja ima 16
vrsta (slika 7.1b).
Ulazi Izlazi
x1 x0 y1 y0 z2 z1 z0
0 0 0 0 0 0 0
0 0 0 1 0 0 1
0 0 1 0 0 1 0
0 0 1 1 0 1 1
0 1 0 0 0 0 1
0 1 0 1 0 1 0
X ⎧
x1 0 1 1 0 0 1 1
⎨ x0 dvobitni z2 ⎫ 0 1 1 1 1 0 0
⎩
sabirač z1 ⎬ Z 1 0 0 0 0 1 0
Y ⎧
y1
⎨ y0
z0 ⎭ 1 0 0 1 0 1 1
⎩ 1 0 1 0 1 0 0
1 0 1 1 1 0 1
1 1 0 0 0 1 1
1 1 0 1 1 0 0
1 1 1 0 1 0 1
1 1 1 1 1 1 0
a) b)
Sl. 7.1. (a) Dvobitni sabirač i (b) njegova istinitosna tablica.
Da bi opisali rad sabirača dva 16-bitna broja, kakve obično srećemo u praksi,
potrebna je istinitosna tablica koja ima astronomskih 232 = 4,294,967,296 vrsta. Imajući
ovo u vidu, logično se nameće potreba za efikasnijim opisom ponašanja kombinacionih
148 RAČUNARSKI SISTEMI: Principi digitalnih sistema
kola. Dva moćna sredstva koja se koriste za ovu namenu su Bulova algebra i jezici za opis
hardvera.
ciz c0=0
a) Sekvencijalno kolo za
implementaciju binarnog b) Prvi korak.
sabiranja
c1=1 c2=0
koraku premaši vrednost najveće cifre "prenosimo jedinicu" ka narednom paru cifara. To
znači da je za sabiranje n cifara potrebna sekvenca od n koraka, pri čemu se u svakom
koraku cifra xi prvog broja sabira sa po težini odgovarajućom cifrom yi drugog broja.
Takođe, sumi se dodaje cifra prenosa (0 ili 1) koja je generisana u toku prethodnog koraka.
Ilustracije radi, na slici 7.2 je prikazan sekvencijalni način sabiranja binarnih brojeva. Kao
što se vidi sa slike 7.2a, u svakom koraku se sabiraju tri bita, xi, yi i cul, gde je cul bit
prenosa iz prethodnog koraka, i određuje bit sume zi i novi bit prenosa ciz. Na slici 7.2b-d
prikazani su koraci kod izračunavanja 2+3=5 (10+11=101).
⎧ x1 z1 ⎫
primarni ⎪ x2 z2 ⎪ primarni
ulazni ⎨ ..
.
.. ⎬ izlazni
signali . signali
⎪⎩ xn
kombinaciono kolo
C zm
⎪⎭
⎧ .. .. ⎫
sekundarni ⎪ . .
ulazni signali ⎨ ⎪
⎪⎩ ⎪
⎪ sekundarni
⎬ izlazni signali
⎪
tekuće . p-bitna memorija ..
⎪
.
stanje
.
M . ⎪
⎭
Sl. 7.3. Opšta struktura sekvencijalnog kola ili mašine sa konačnim brojem stanja.
150 RAČUNARSKI SISTEMI: Principi digitalnih sistema
pozitivna negativna
ivica ivica
1
0
"ON" vreme "OFF" vreme
perioda
7.4. Lečevi
7.4.1. SR leč
Kao što se vidi sa slike 7.3, memorija predstavlja ključni deo sekvencijalnog kola.
Ovaj blok se obično sastoji od niza lečeva. Leč je logičko kolo memorijskog tipa sa dva
izlaza koji su komplementarni jedan u odnosu na drugi. Osnovni leč se može realizovati
unakrsnim povezivanjem dva NOR kola kako je to prikazano na slici 7.5.
7. Sekvencijalna kola 151
Reset
G1 Q
G2 ⎯Q
Set
Set Reset Q Q R Q
0 0 nema
promene
0 1 0 1 S Q
a) 1 0 1 0 b)
1 1 nedefinisano
Set Reset Q Q
Set 0 0 nedefinisano
Q
0 1 1 0
1 0 0 1
1 1 nema promene
b) Tablica istinitosti.
⎯Q
Reset
Set Q
a) NAND leč.
Reset Q
c) Logički simbol.
Sl. 7.8. Gejtovani NAND leč (Napomena: Qt odgovara tekućem stanju leča a Qt+1 narednom stanju).
Set Q
G3
Control Set Reset G3 G4 Qt+1
NOR 0 - - 0 0 Qt
Control le~ 1 0 0 0 0 Qt
1 0 1 1 0 0
1 1 0 0 1 1
Reset G4 ⎯Q
1 1 1 1 1 nedefinisano
Tipovi lečeva sa slika 7.8 i 7.9 nazivaju se transparentnim, jer se njihovi izlazi
menjaju (nakon propagacionog kašnjenja kroz leč) kako se i ulazi menjaju, pod uslovom da
je ulaz dozvole (enable input≡Control) na visoko.
SR lečeve je moguće realizovati sa više od dva ulaza. Na slici 7.10 je prikazan SR
leč koji je konstruisan od dva četvoroulazna NOR kola. Izlaz Q će biti na 1 ako je bilo koji
Set ulaz na 1 a Reset ulazi na 0. Takođe, izlaz Q će biti na 0 ako je bilo koji Reset ulaz na 1
a svi Set ulazi na 0, itd.
7. Sekvencijalna kola 153
Reset1
Reset2 G1
Reset3 Q
Set1 ⎯Q
Set2 G2
Set3
7.4.2. D leč
Jedan od načina da se eliminiše neželjeno nedefinisano stanje kod SR leča je da se
obezbedi da ulazi S i R ne budu nikada istovremeno jednaki 1. Ovo se izvodi kod D leča
kako je to prikazano na slici 7.11.
D S
Q
R ⎯Q
a) Logički dijagram.
C D naredno stanje za Q
0 x nema promene
1 0 Q=0; Reset stanje
1 1 Q=1; Set stanje
b) Funkcionalna tabela.
D Q D Q
S1 D1
C C
D Q D Q
S2 Računar D2
C C
. .
. . . .
. . . .
. .
D Q D Q
Sk Dk
C C
Sl. 7.13. Tipičan način korišćenja lečeva kod računarskih ulazno/izlaznih kola.
Kao što smo napomenuli, zbog svoje transparentnosti u radu (kada je C=1, izlaz Q
prati stanje na ulazu D) lečevi nisu pogodni za korišćenje kod sekvencijalnih kola koja
imaju povratnu strukturu, kao što je ona prikazana na slici 7.14, tj. kada se izlaz leča preko
kombinacione logike dovodi na njegov ulaz. Naime, kada je C=1, izlazni signal (Q ili Q )
se vraća preko povratne grane na ulaz D. Neželjene kombinacije propagacionog kašnjenja
(kašnjenja signala kroz kola) mogu da uzrokuju višestruke promene, što rezultira novom
neodređenom stanju leča. Ovaj fenomen se naziva problem trke (race problem) i direktna
je posledica transparentnosti leča koja omogućava da kada je C=1 (rad leča dozvoljen) kroz
leč prođe neograničen broj promena podataka. Da bi ograničili memorijski element na
samo jednu promenu stanja po koraku kada je leču dozvoljen rad, neophodno je koristiti
netransparentne memorijske elemente kao što su flip-flopovi.
7. Sekvencijalna kola 155
D leč
D Q
kombinaciono C
kolo
rad leča dozvoljen
kada je C=1
7.5. Flip-flopovi
podataka na izlazu. Iz ovih razloga za lečeve kažemo da su osetljivi na nivo (level sensitive)
ili da se okidaju na nivo (level triggered).
t1 t2 t1
promenljive
ulaznih podataka se
prihvataju
Data Q
1
takt t
0 Clock Q
izlaz Q se može
menjati
t3 t4 t3
t1 t 2 t1 t2
promenljive ulaznih Data Q
podataka se
prihvataju
1 Clock Q
takt t
0
izlaz Q se dinamički ulazni
može menjati simbol
okidačka ivica
t3 t4 t3 t4
t1 t 2 t1 t2
promenljive ulaznih
podataka se
prihvataju Data Q
1
Clock Q
takt t
0
izlaz Q se
može menjati inverzni simbol
okidačka ivica
t3 t4 t3 t4
zahteve sastoji se u sledećem. Ulazne promene treba prihvatati kada je C=1, a menjati
izlaze kada je C=0. Ovaj impulsni metod rada je bio korišćen kod nekih ranijih verzija
bistabilnih kola. Kod najvećeg broja današnjih rešenja koristi se tehnika okidanja na ivicu
(edge triggering).
Na slici 7.15b je definisano ponašanje flip-flopa koji se okida pozitivnom ivicom,
a na slici 7.15c ponašanje flip-flopa koji se okida na negativnu ivicu.
Flip-flopovi imaju isti simbol kao i lečevi sa izuzetkom jedne male, ali ključne,
modifikacije koja se odnosi na specifikaciju načina taktovanja. Simbol '>' koji se nalazi na
kraju linije za taktovanje ukazuje da se okidanje flip-flopa vrši pri prelazu signala C sa 0 na
1. Simbol '>' se naziva dinamički ulazni simbol. Okidanje negativnom ivicom se označava
kombinovanjem dinamičkog ulaznog simbola '>' i simbola inverzije 'o'.
Y Q
R Rm Rs
Struktura master (slave) leča je ekvivalentna onoj koja je prikazana na slici 7.8.
Kada je C=0 izlaz invertora je 1 i rad slave leča je dozvoljen, tako da njegov izlaz Q prati
vrednost na izlazu master-a Y. U tom trenutku rad master leča je zabranjen, jer je C=0.
Kada je C=1, signali prisutni na ulazima Sm i Rm definišu na koje će se vrednosti postaviti
Y. Rad slave-a je zabranjen sve dok je C=1, tj Cs=0. Bilo kakve promene na ulazima S i R
menjaju master izlaz Y, ali nemaju efekat na slave izlaz Q. Kada ponovo bude C=0 rad
master-a se zabranjuje, tako da se promene na ulazima Sm i Rm više ne prihvataju, ali je
istovremeno rad slave-a dozvoljen tako da se tekuća vrednost Y prenosi na izlaz Q.
Vremenski dijagrami karakteristični za rad master-slave RS flip-flopa su prikazani
na slici 7.17.
158 RAČUNARSKI SISTEMI: Principi digitalnih sistema
S
- nepoznato
inicijalno
R
stanje
Y
Q
J S S J K Naredno stanje Q
0 0 Q
C C C 0 1 0
1 0 1
Q 1 1
K R R Q
D D S Q
master C slave
C C R Q
Kao što smo napomenuli, ivično okidani D flip-flop (ili delay flip-flop) se može
realizovati i pomoću dva D leča i jednog invertora (slika 7.20). Ovo rešenje se uglavnom
koristi kod logičkih kola koja pripadaju CMOS tehnologiji, kao što je 74HC74.
Flip-flopovi se obično projektuju sa jednim ili dva dodatna upravljačka ulaza koji
su namenjeni za inicijalizaciju početnog stanja flip-flopa. Upravljački signal koji dovodi
flip-flop u stanje Q=0 se naziva clear ( C L R ) ulaz, a onaj koji postavlja flip-flop u stanje
Q=1 se naziva preset ( P R ) ulaz. Uticaj P R i C L R upravljačkih signala je nezavisan od
taktnog signala pa zbog toga za P R i C L R kažemo da su kao ulazi asinhroni. Nasuprot
njima, D je sinhroni ulaz u odnosu na taktni signal. Logički simbol za D flip-flop koji se
okida pozitivnom ivicom sa Reset i Set ulazima, kao i odgovarajuća funkcionalna tabela,
prikazani su na slici 7.21.
160 RAČUNARSKI SISTEMI: Principi digitalnih sistema
Qm
D D D Q D Q
master slave
C
C C C Q
takt 1
C(t)
ulazni 1
podaci
D(t)
t
1
Qm(t)
t
propagaciono kašnjenje
izlazni 1
podaci
Q(t)
t
c) Vremenski dijagram.
ulazi
tekuće stanje D(t ) D(t)
Q(t) 1
Q(t+1) = D(t)
karakterisitika D flip-flopa
Q(t ) 1
PR = 0
postavi PR CLR D C Q Q
PR
Q=1
0 1 - - 1 0
D Q 1 0 - - 0 1
0 0 - - 1 1
1 1 0 0→1 0 1
C 1 1 1 0→1 1 0
CLR = 0
postavi
CLR
Q=0
Sl. 7.21. D flip-flop koji se okida pozitivnom ivicom sa Preset i Clear ulazima.
J D S Q
C
C C Q
R
K
tekuće naredno
stanje ulazi stanje
PR Q(t) J(t) K(t) C(t) Q(t+1)
0 0 0 0→1 0
ulaz J J Q 0 0 1 0→1 0
takt C 0 1 0 0→1 1
0 1 1 0→1 1
ulaz K K 1 0 0 0→1 1
1 0 1 0→1 0
1 1 0 0→1 1
CLR 1 1 1 0→1 0
J (t ) K (t ) J (t ) K (t ) J(t )K(t ) J (t ) K (t )
1 1
Q (t )
Q (t ) 1 1
Q (t + 1) = J (t )Q (t ) + K (t )Q (t )
c) Karnoova mapa.
1
J(t)
0 t
1
K(t)
0 t
1
C(t)
t
0
1
Q(t)
0 t
propagaciono
kašnjenje
d) Vremenski dijagram.
7.5.8. T flip-flop
T flip-flop je poznat pod nazivom trigerski (trigger ili toggle), a karakteriše se
jedinstvenom ulaznom linijom. Simbol T flip-flopa je prikazan na slici 7.24a. Ako je T=1
kada se taktni impuls menja sa 0 na 1, izlaz flip-flopa prelazi u komplementarno stanje u
odnosu na tekuće, a kada je T=0 flip-flop ne menja svoje stanje. Istinitosna tablica T flip-
flopa je prikazana na slici 7.24b, a Karnoova mapa na slici 7.24c.
ulazi
tekuće stanje T T
1
Q(t + 1) = Q(t )T (t ) + Q (t )T (t )
Q (t )
Q(t) 1
c) Karnoova mapa.
J Q T D Q
T C
K takt
takt C
Primer 7.1.
Ukaži na standardno korišćene grafičke simbole za lečeve i flip-flopove.
Odgovor:
S Q S Q D Q D Q
R R C C
a) lečevi.
J Q J Q J Q J Q
C C C C
K K K K
D Q D Q J Q J Q
C C
C C K K
Opšti model sekvencijalnog kola opisan je na slici 7.3. Kod ovog modela, efekat
svih prethodnih promena na ulazu na stanje na izlazu predstavlja se stanjem kola. To znači
da u bilo kom trenutku izlaz kola zavisi od njegovog tekućeg stanja i ulaza, a da se na
osnovu njih određuje naredno stanje kola. Zavisnosti koje postoje između primarno ulaznih
promenljivih, promenljive tekućeg stanja, promenljive narednog stanja i izlazne
promenljive mogu se specificirati preko tabele stanja ili preko dijagrama stanja. Kada se
sekvencijalno kolo predstavlja tabelom stanja kolone tabele odgovaraju primarnim ulazima,
a vrste tekućem stanju kola. Ilustracije radi, posmatrajmo sekvencijalno kolo sa slike 7.27.
Ovo kolo ima jedan ulaz x, jedan izlaz z i dve promenljive stanja Y1 i Y2 (to znači da kolo
ima četiri tekuća stanja 00, 01, 10, 11). Ponašanje kola određeno je sledećim jednačinama:
x
z
z = xy1
Y1 = x + y1
Y2 = xy 2 + x y1
D flip-flop
y1 Y1
⎯y1
y2 Y2
⎯y2 takt
Kao što smo naglasili, rad sekvencijalnog kola se može predstaviti pomoću
dijagrama stanja ili grafa prelaza stanja (state diagram ili state transition graph).
Dijagram stanja predstavlja usmereni graf kod koga svaki čvor odgovara stanju kola, a
svaki poteg prelazu iz jednog u drugo stanje. Dijagram stanja sekvencijalnog kola sa slike
7.28 prikazan je na slici 7.29. Stanjima 00, 01, 11 i 10 pridružena su slova A, B, C i D,
respektivno. Na primer, potegu od B ka A je pridružena oznaka 1/0 koja ukazuje da ako je
B tekuće stanje a ulaz je 1, tada je naredno stanje A a izlaz je 0.
A 1/0
0/0
1/0
B
C 0/0
0/0
0/0
1/1
1/1
D
⎧ FF1 ⎫
⎪ ⎪
⎪ ⎪
kombinaciona kombinaciona
primarni ⎪
⎪ FF2 ⎪⎪ primarni
ulazna logika ulazna logika
ulazi ⎨ .
.
.
. ⎬ izlazi
X ⎪ .
C1 C2
. ⎪ Z(Y)
⎪ .
.
⎪
⎪ . ⎪
⎪⎩ ⎪⎭
FFp
⎧ FF1
⎫
X ⎨ .
. ⎪
⎩ .
FF2
⎪
⎪⎪
C1 C2 .
. ⎬ Z(Y)
.
⎪
⎧ . ⎪
Y ⎨ .
.
.
. ⎪
⎩ .
⎪⎭
FFp
takt
CLK
b) Sekvencijalno kolo kod koga su primarni izlazi nezavisni od primarnih ulaza (Murov model).
.
.
.
Y(X)
⎫
⎪
⎧ FF1
⎪
X ⎨ . C2
⎪⎪
⎩
.
. .
. ⎬ Z(X,Y)
.
C1
FF2 ⎪
⎪
⎪
.
.
. ⎪⎭
. .
.
FFp
takt
povratne veze
CLK
⎫
primarni ulazi ⎧ . . ⎪ primarni izlazi
X ⎨ .
.
.
. ⎬ Z(Y)
⎩ kombinaciona izlazna ⎪⎭
logika
C
. .
. .
. .
FF1
Sekundarni ulazi y1(t) y1(t+1) Sekundarni izlazi
Y Y(X,Y)(t+1)
(promenljive stanja)
FF2
y2(t) y2(t+1)
. . .
. . .
. . .
FFp
yp(t) yp(t+1)
Reset CLK
ulaz izlaz 0
B/0
x=0 x=1
Tekuće stanje 0
1
A B D 1 A/1
B C A 0
C C D 0 0
D B D 0 C/0
1
naredno
stanje 1 0
D/0
Sl. 7.32. Tabela stanja i dijagram stanja Murovog modela jednog sekvencijalnog kola.
Primer 7.2.
Tabela stanja Milijevog tipa nekog sekvencijalnog kola prikazana je na slici 7.33,
a odgovarajuća ekvivalentna tabela stanja Murovog tipa za isto sekvencijalno kolo
prikazana je na slici 7.34.
ulazi
Tekuće x=0 x=1
stanje
A B, 0 A, 1
B D, 0 C, 1
C B, 0 C, 0
D E, 1 E, 1
E A, 0 B, 0
ulaz izlaz
Tekuće stanje x=0 x=1
A, 0 B A, 1 0
A,1 B A, 1 1
B D C, 1 0
C, 0 B C, 0 0
C, 1 B C, 0 1
D E E 0
E A, 0 B 1
Primer 7.3.
Tabela stanja Murovog tipa nekog sekvencijalnog kola prikazana je na slici 7.35,
odgovarajuća ekvivalentna tabela stanja Milijevog tipa za isto sekvencijalno kolo prikazana
je na slici 7.36.
ulaz izlaz
Tekuće stanje x=0 x=1
A B C 0
B A C 0
C D E 1
D C B 0
E A F 1
F A E 1
naredno
stanje
ulazi
Tekuće stanje x=0 x=1
A B, 0 C, 1
B A, 0 C, 1
C D, 0 E, 1
D C, 1 B, 0
E A, 0 F, 1
F A, 0 E, 1
naredno stanje, izlaz
z
J1 y1 J2 y2
x C C
K1 y1 K2 y2
y1 (t + 1) = ( x1 + y2 ) y1 + ( x + y2 )y1
= xy1 + y1 y2 + xy1 y2
= xy1 + xy2
y2 (t + 1) = xy1 y2 + xy2
= xy1 y2 + xy2
= xy1 + xy2
7. Sekvencijalna kola 173
Na osnovu ovih jednačina je moguće definisati tabelu prelaza (slika 7.38) za kolo sa slike
7.37.
Dijagram stanja kola sa slike 7.37 izvodi se na osnovu tabele stanja sa slike 7.39 i
prikazan je na slici 7.40.
0/0
1/0
0/0
0/0
B C
1/0
1/1
0/1
1/0
D
Primer 7.4.
Na slici 7.41 prikazan je dijagram stanja jednog taktovanog sekvencijalnog kola.
Koristeći D flip-flopove kao memorijske komponente projektovati logiku sekvencijalnog
kola.
174 RAČUNARSKI SISTEMI: Principi digitalnih sistema
0/0
00
1/0 1/1 0/0
1/0
01 11
0/0 1/1
10
0/0
Sl. 7.42. Tabela stanja za kolo čiji je dijagram stanja dat na slici 7.41.
7. Sekvencijalna kola 175
B B B
B B B
X X X
A 00 01 11 10 A 00 01 11 10 A 00 01 11 10
0 1 0 1 1 0 1
A 1 1 1 1 A 1 1 1 A 1 1
X X X
DA = AB + BX DB = AX + BX + ABX Y = BX
Pojednostavljene funkcije su
DA = AB + BX ,
DB = AX + BX + ABX ,
Y = BX .
D A
X
C ⎯A
D B
C ⎯B
Y
takt
U tekstu koji sledi ukazaćemo sa nešto više detalja na neke od ključnih koraka.
Celokupan postupak projektovanja sprovešćemo na jednom konkretnom primeru.
serijskom ulazu kola, na izlazu se generiše jedinica. Pri tome je dopušteno preklapanje
sekvenci.
sekvencijalno kolo
za prepoznavanje
serijski ulaz serijski izlaz
takt
U stanju A kolo očekuje prvi ulazni signal koji može biti 0 ili 1. Ako je ulaz 0,
kolo ostaje u stanju A i na izlazu se generiše 0, a ako je ulaz 1, prelazi se u stanje B i
generiše 0 na izlazu.
0/0
1/0
A B
Kada je kolo u stanju B, ako na ulazu primi 1 (sekvenca 11) kolo prelazi u stanje
C, a ako primi 0, vraća se u stanje A.
0/0
0/0
1/0
A B C
1/0
Dok je u stanju C, ako se na ulazu pojavi 1, kolo ostaje u istom stanju, a ako
primu 0 prelazi u stanje D (sekvenca 110).
178 RAČUNARSKI SISTEMI: Principi digitalnih sistema
0/0
0/0
1/0 0/0
A B C D
1/0
1/0
1/1
0/0
0/0
1/0 0/0
A B C D
1/0
1/0
0/0
ulaz
Tekuće stanje x=0 x=1
A A, 0 B, 0
B A, 0 C, 0
C D, 0 C, 0
D A, 0 B, 1
naredno stanje, izlaz
b) s obzirom da kolo ima samo jedan serijski ulaz, svako stanje u dijagramu stanja će
imati dva prelaza, jedan koji odgovara ulazu 0, a drugi ulazu 1;
c) ulaznu sekvencu čine četiri bita, tako da se nakon ispitivanja sva četiri bita vraćamo u
početno stanje A.
Odgovarajući dijagram stanja je prikazan na slici 7.49. Na osnovu dijagrama
stanja sa slike 7.49 moguće je kreirati tabelu stanja (slika 7.50) koja odgovara kolu za
detekciju dve jedinice u četvorobitnoj sekvenci.
A
0/0 1/0
B C
D E F G
H I J K L M N P
1/1
0/0 1/0 0/0 0/0 1/1 0/1 1/0 0/0 1/1 0/1 1/0 0/1 1/0 0/0 1/0
ulaz
Tekuće stanje x=0 x=1
A B, 0 C, 0
B D, 0 E, 0
C F, 0 G, 0
D A, 0 I, 0
E J, 0 K, 0
F L, 0 M, 0
G N, 0 P, 0
H A, 0 A, 0
I A, 0 A, 1
J A, 0 A, 1
K A, 1 A, 0
L A, 0 A, 1
M A, 1 A, 0
N A, 1 A, 0
P A, 0 A, 0
Sl. 7.50. Tabela stanja kola koje detektuje dve jedinice u četvorobitnoj sekvenci.
Analizom slike 7.49 dolazimo do sledećih zaključaka:
1. Kod kreiranja dijagrama stanja svaka kombinacija od četiri bita je razmatrana.
2. U dijagramu stanja (slika 7.49) i tabeli stanja (slika 7.50) postoji nekoliko
redundantnih stanja. Za jedno stanje kažemo da je redundantno, ako se njegova
funkcija može obaviti od strane drugog stanja u kolu.
180 RAČUNARSKI SISTEMI: Principi digitalnih sistema
U principu važi sledeće pravilo: Što sekvencijalno kolo ima veći broj stanja to je
ono složenije. Eliminisanjem ekvivalentnih ili redundantnih stanja iz dijagrama stanja ili
tabele stanja pojednostavljuje se logika kola. Ovaj proces se naziva redukcija broja stanja,
a odgovara procesu minimizacije logičkih funkcija u kombinacinom delu sekvencijalnog
kola. Da bi ukazali na postupak redukcije stanja analizirajmo tabelu stanja jednog
proizvoljnog sekvencijalnog kola koja je data na slici 7.51. Analizom slike 7.51 dolazimo
do sledećeg zaključka: stanja A i F imaju identična ponašanja (za iste ulaze generišu iste
izlaze i prelaze u ista naredna stanja). To znači da se jedno od stanja može eliminisati. Na
primer, ako eliminišemo vrstu F, u svim kolonama tabele sa slike 7.51 gde se javlja F treba
upisati A. Na ovaj način se dobija nova tabela stanja (slika 7.52).
Ulaz
Tekuće stanje x=0 x=1
A B, 1 C, 0
B F, 0 D, 0
C D, 1 E, 1
D F, 0 E, 1
E A, 0 D, 0
F B, 1 C, 0
naredno stanje, izlaz
ulaz
Tekuće stanje x=0 x=1
A B, 1 C, 0
B A, 0 D, 0
C D, 1 B, 1
D A, 0 B, 1
naredno stanje, izlaz
B. Particija
ulaz
Tekuće stanje x=0 x=1
A B, 0 A, 0
B D, 1 D, 0
C A, 0 C, 0
D B, 1 F, 0
E B, 0 E, 0
F D, 1 E, 0
naredno stanje, izlaz
P1 = (ACE)(BDF).
P2 = (C)(AE)(F)(BD).
P4 = (C)(AE)(F)(B)(D).
182 RAČUNARSKI SISTEMI: Principi digitalnih sistema
Isti zaključak važi i za ostale particije P5, P6 , ... U principu važi sledeći zaključak: Onog
trenutka, kada je particija Pj+1 identična sa particijom Pj proces particije se završava, a za
particiju Pj kažemo da je ekvivalentna particija. Sva stanja koja pripadaju bloku u
ekvivalentnoj particiji su ekvivalentna. Na primer, P3 je ekvivalentna particija i stanja A i E
su ekvivalentna. Zbog toga se na slici 7.54 vrsta E može zameniti vrstom A, kako je to
prikazano na slici 7.55.
ulaz
Tekuće stanje x=0 x=1
A B, 0 A, 0
B D, 1 D, 0
C A, 0 C, 0
D B, 1 F, 0
F D, 1 A, 0
naredno stanje, izlaz
Ovaj postupak se često radi tablično, zbog bolje preglednosti. Grupišu se stanje
koja imaju identičan izlaza za isti ulaz, te se, slično prethodnom dolazi do minimalnog
broja stanja. Ovaj postupak za isti primer je prikazan u sledećim tabelema.
stanje
x A B C D E F
0 B/0 D/1 A/0 B/1 B/0 D/1
1 A/0 D/0 C/0 F/0 E/0 E/0
stanje a b
x A C E B D F
0 Bb Aa Bb Db Bb Db
1 Aa Ca Ea Db Fb Ea
stanje a b c d
x A E C B D F
0 Bc Bc Aa Dc Dc Dc
1 Aa Ea Cb Dc Fd Ea
stanje a b c d e
x A E C B D F
0 Bc Bc Aa Dd Dd Dd
1 Aa Aa Cb Dd Fe Ea
7. Sekvencijalna kola 183
C. Implikaciona tabela
ulaz
Tekuće stanje x=0 x=1
A B, 0 A, 0
B D, 1 D, 0
C A, 0 C, 0
D B, 1 F, 0
E B, 0 E, 0
F D, 1 E, 0
naredno stanje, izlaz
Prvi korak ove procedure je sledeći. Formira se nova tabela koju čine sve vrste sa
izuzetkom prvog stanja, i sve kolone koje čine sva stanja sa izuzetkom zadnjeg. Na slici
7.57 prikazana je implikaciona tabela za primer sa slike 7.56.
B
C
D
E
F
A B C D E
B
C
D
E
F
A B C D E
U daljem postupku u prazne kvadratiće sa slike 7.58 se upisuju parovi stanja čije
ekvivalencije ukazuju na ekvivalenciju paru stanja koji definiše nepopunjeni kvadratić. Na
primer u kvadratić koji odgovara paru AC unosi se par AB koji mora biti ekvivalentan
kako bi stanja A i C bila (postala) ekvivalentna (slika 7.59). Simbol "√" se unosi u
kvadratić ako je odgovarajući par (stvarno) ekvivalentan. Na slici 7.59 "stvarno"
ekvivalentna stanja su A i E. Tabela sa slike 7.59 se popunjava kolona po kolonu.
Analizirajući sliku 7.59 uočavamo da kvadratić definisan parom stanja D i F
sadrži parove BD EF. Kako je kvadratić definisan sa E i F već precrtan, to znači da i bilo
koji drugi par, čija ekvivalencija sledi iz ekvivalencije E i F, mora takođe da bude precrtan
(markiran), kako je to prikazano na slici 7.60. Procedura se ponavlja proverom za sve
ostale kvadratiće. Jedini ekvivalentan par sa slike 7.60 je par AE. Prema tome, particija
koja odgovara ekvivalenciji je oblika
P = (AE)(B)(C)(D)(F).
B
C AB
D DF
E
AB
F
BD
DE EF
A B C D E
B
C AB
D DF
E
AB
√
F
DE BD
EF
A B C D E
ulaz
Tekuće stanje x1 x2
A C, 0 D, 0 A, 1 D, 0
B C, 1 D, 0 A, 1 D, 1
C A, 0 B, 1 A, 1 B, 0
D A, 1 B, 0 A, 1 B, 1
naredno stanje, izlaz
ulaz
y1 y2 x1 x2
00 01 10 11
00 10, 0 11, 0 00, 1 11, 0
01 10, 1 11, 0 00, 1 11, 1
10 00, 0 01, 1 00, 1 01, 0
11 00, 1 01, 0 00, 1 01, 1
naredno stanje, izlaz
Sl. 7.62. Tabela stanja sekvencijalnog kola posle izvršene dodele stanja.
J K Q(t) Q(t+1)
0 - 0 0
1 - 0 1
- 1 1 0
- 0 1 1
x1x2 x1x2
y1y2 00 01 11 10 y1y2 00 01 11 10
1 1 1 0 - - - -
00 00
01 1 1 1 0 01 - - - -
- - - - 1 1 1 1
11 11
10 - - - - 10 1 1 1 1
J1 K1
x1x2 x1x2
y1y2 00 01 11 10 y1y2 00 01 11 10
0 1 1 0 - - - -
00 00
01 - - - - 01 1 0 0 1
- - - - 1 0 0 1
11 11
10 0 1 1 10 - - - -
J2 K2
Sl. 7.64. Karnoove mape za JK flip-flopove.
Karnoova mapa za izlaz z je prikazana na slici 7.65.
x1x2
y1y2 00 01 11 10
0 0 0 1
00
01 1 0 1 1
11 1 0 1 1
10 0 0 0 1
J1 = x 1 + x 2 K1 = 1
J2 = x 2 K2 = x2
z = x1 y2 + x1 x 2 + x 2 y2
x2
J1 y1
x1
Cp
K1 ⎯y1
J2 y2
Cp 1
Cp
K2 ⎯y2
Sl. 7.66. Implemetacija sekvencijalnog kola specificiranog tabelom stanja sa slike 7.61.