0% found this document useful (0 votes)
197 views43 pages

Logika

(1) The document discusses the logical foundations of data processing including Boolean algebra, logical expressions, logical functions, and minimal complete systems of logical functions. (2) It describes the basic laws and identities of Boolean algebra related to negation, conjunction, and disjunction operations. (3) Logical elements, which implement logical functions, are the basic components of all electronic circuits in computers with their inputs and outputs corresponding to the arguments and values of the logical functions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
197 views43 pages

Logika

(1) The document discusses the logical foundations of data processing including Boolean algebra, logical expressions, logical functions, and minimal complete systems of logical functions. (2) It describes the basic laws and identities of Boolean algebra related to negation, conjunction, and disjunction operations. (3) Logical elements, which implement logical functions, are the basic components of all electronic circuits in computers with their inputs and outputs corresponding to the arguments and values of the logical functions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 43

Logicke osnove obrade podataka

Algebra logike
Algebru logike moemo definisati kao strukturu
{S; , , }
gde je S = {>, }, binarna operacija konjunkcije, binarna operacija disjunkcije
i unarna operacija negacije.
Formule algebre logike se nazivaju i logicki izrazi.
Oznaka u matematici
Oznaka u racunarstvu

>
1

Neki od osnovnih zakona i identiteta Bulove algebre vezani za operacije negacije,


konjunkcije i disjunkcije koji se koriste u digitalnoj logici su:
AB=BA
(A B) C = A (B C)
A(B + C) = (AB) + (AC)
1A=A
A A= 0

A0=0
AA=A
A=A
(A B) C = A B C
AB=A+B

Osnovni zakoni
A+B=B+A
(A + B) + C = A + (B + C)
A + (BC) = (A + B)(A + C)
0+A=A
A + A= 1

Zakon komutacije
Zakon asocijacije
Zakon distribucije
Neutralni element
Inverzni element

Identiteti i pravila
A+1=1
A+A=A
(A + B) + C = A + B + C
A+B=AB

Dvostruka negacija
Brisanje zagrada
De Morganove teoreme

Logicke funkcije
Oznacimo sa A1 , A2 , ..., An logicke promenljive. Svaka funkcija
f : (A1 , A2 , ..., An ) {0, 1}
se naziva logicka funkcija.
Argument
A
Funkcija
f10
f11
f12
f13

Vrednost

Naziv

0
0
1
1

0
1
0
1

Oznaka

nula funkcija
identitet
negacija
jedinicna funkcija

Tabela 1: Logi
cke funkcije sa jednim argumentom

Argument
A
B
Funkcija
f20
f21
f22
f23
f24
f25
f26
f27
f28
f29
f2A
f2B
f2C
f2D
f2E
f2F

0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

Vrednost
0 1 1
1 0 1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

Naziv

nula funkcija
konjunkcija
negacija implikacije od A ka B
prva projekcija
negacija implikacije od B ka A
druga projekcija
ekskluzivna disjunkcija
disjunkcija
Pirsova (Lukaieviceva) funk.
ekvivalencija
negacija druge projekcije
implikacija od B na A
negacija prve projekcije
implikacija od A na B
eferova funkcija
Jedinicna funkcija

Tabela 2: Logi
cke funkcije sa dva argumenta

Oznaka

AB
AB = (AB)
AB = (BA)
(AB)(AB)
AB
AB
(AB)
BA
AB
AB

Pun sistem funkcija


Skup F={f1 , f2 , ..., fn } funkcija se naziva pun sistem funkcija ako se proizvoljna
funkcija algebre logike moe predstaviti pomocu funkcija iz ovog skupa.
F je minimalan ako skup G = F { fi } (za neko i) ne predstavlja pun sistem funkcija.
Neki od minimalnih punih sistema funkcija:
1. F = { , }.
2. F = { , +}.
3. F={ }:
A= (A A)
A B = (A B) (A B)
A + B = (A A) (B B)
4. F={ }:
A= (A A)
A B = (A A) (B B)
A + B = (A B) (A B)

Savrene normalne forme funkcija


Primer: neka se od skupa promenljivih {A, B, C} grade logicki izrazi.
Elementarne konjunkcije su: A B, A C, A B, A C, ...
Elementarne disjunkcije su: A + B, A + C, A + B, A + C, ...
Savreno elementarne konjunkcije su: A B C, A B C, A B C, A B C,
...
Savreno elementarne disjunkcije su: A + B + C, A + B + C, A + B + C, A
+ B + C, ...
Konjunktivne forme su (A + B) (A + C), (A + B) (A + C),
Disjunktivne forme su A B + A C, A B + A C, ...
Savrene konjunktivne normalne forme su (A + B + C) (A + B + C),
(A + B + C) (A + B + C), ...
Savrene disjunktivne normalne forme su (A B C) + (A B C),
(A B C) + (A B C), ...

Funkcija je zapisana u obliku savreno konjunktivne normalne forme (skraceno


SKNF) ako je logicki izraz koji je predstavlja zapisan kao savreno konjunktivna
normalna forma pri cemu svaka od savrenih elementarnih konjunkcija koja ulazi
u njen sastav sadri sve promenljive koje su argumenti funkcije.
Funkcija je zapisana u obliku savreno disjunktivne normalne forme (skraceno
SDNF) ako je logicki izraz koji je predstavlja zapisan kao savreno disjunktivna
normalna forma pri cemu svaka od savrenih elementarnih disjunkcija koja ulazi
u njen sastav sadri sve promenljive koje su argumenti funkcije.

Primer: neka je funkcija F zadata preko tabele istinitosnih vrednosti predstavljene


u tabeli 3.

A
0
0
0
0
1
1
1
1

B
0
0
1
1
0
0
1
1

C
0
1
0
1
0
1
0
1

F
0
0
1
1
0
0
1
0

Tabela 3: Logi
cka funkcija sa tri promenljive

SDNF:
F = ABC + ABC + ABC
SKNF:
F = (ABC) (ABC) (ABC) (ABC) (ABC)
Primenom generalizovane De Morganove teoreme:
(X Y Z) = X + Y + Z
dobija se SKNF:
F

=
=

(A + B + C) (A + B + C) (A + B + C) (A + B + C) (A + B + C)
(A + B + C) (A + B + C) (A + B + C) (A + B + C) (A + B + C)

Logicki elementi
su fizicki objekti koji implementiraju neku od funkcija algebre logike
predstavljaju osnovne komponente svih elektronskih kola racunara
argumenti funkcija odgovaraju ulaznim velicinama logickih elemenata, a
vrednosti funkcija njihovim izlaznim velicinama.

Funkcija algebre logike


Negacija
Konjunkcija
Disjunkcija
eferova funkcija
Pirsova funkcija

Naziv logickog elementa


NEelement
Ielement
ILIelement
NIelement
NILIelement

Naziv na engleskom
NOTelement
ANDelement
ORelement
NANDelement
NORelement

Tabela 4: Osnovne logi


cke funkcije i logicki elementi

A
F

B
Ielement

ILIelement

Identitet

A
F

B
NIelement

NILIelement

NEelement

Slika 1: Osnovni logi


cki elementi

A
D

B
C

F=ABCD

a) Ielement sa cetiri ulaza

b) Isti signal na svim ulazima

Slika 2: Logi
cki elementi (nastavak)

Minimizacija logickih funkcija


Postoje tri nacina za minimizaciju funkcija:
1. Algebarske transformacije
2. Karnoove (Karnaugh) mape
3. Tablicna metoda Kvin-MekKlaskog (Quine-McKluskey)

Slika 3: Implementacija SDNF funkcije iz tabele 3

Slika 4: Implementacija SKNF funkcije iz tabele 3

10

Algebarske transformacije
Algebarske transformacije ukljucuju primenu osnovnih zakona i identiteta na logicki izraz. Na primer, na SDNF funkcije prikazane u tabeli 3
F = ABC + ABC + ABC
se mogu primeniti sledece transformacije:
1. Identitet 1 + A = 1. Kako SDNF funkcije ima vrednost 1 to mu se vrednost
nece promeniti ako dodamo izraz ABC
F = ABC + ABC + ABC + ABC
2. Zakon distribucije:
F = AB(C + C) + (A + A)BC
3. Zakon o inverznom elementu (A + A = 1) i identitetu (A1 = A)
F = AB + BC
4. Zakon distribucije:
Fmin = B(A + C)

11

Za prethodnu funkciju F:
Fmin = B(A + C) = (AB) + (BC) = (AB) + (BC)
Primenom De Morganove teoreme dobija se oblik sastavljen od tri NI izraza
FNImin = (AB) (BC)

A
B

Fmin

Fmin

Slika 5: Implementacija funkcije Fmin

B
C
Slika 6: NI implementacija funkcije Fmin

12

Karnoove mape
Minimizacija logickih funkcija sa malim brojem (oko 46) promenljivih.
Koristi se SDNF funkcije.

AB
00

01

BC
11

10

00

1
A

a) F=AB + AB

01

11

10

1
1

b) F=ABC + ABC + ABC


CD
00

11

10

00
AB

01

01
11
10

B
1
A
1

c) F=ABCD + ABCD + ABCD

D
d) Uproceno oznacavanje mapa

Slika 7: Upotreba Karnoovih mapa za prikaz logi


ckih funkcija

13

00

CD
01 11

10

00

00
AB

AB
1

11

AB
1

10

00

11

11

10

10

AB

CD
01 11

c) ABD
10

00

1
AB

CD
01 11

10

00

01

10

11

10

00

CD
01 11

f) BD
10

00

01

11

11

10

10

AB

CD
01 11

01

e) BC

00

00

01

01

g) A

10

00

d) AB

AB

01

b) BCD

CD
01 11

10

11

10

00

CD
01 11

00

01

a) ABD

AB

00

11

10

00

10

00

01

CD
01 11

00

CD
01 11

10

00

01

11

10

AB

h) D
Slika 8: Ozna
cavanje grupa kod Karnoovih mapa

i) C

14

00
0

BC
01 11
1

10

00

10

00

A
1

CD
01 11

1
AB
a) F = AB + BC

01

11

1
1

10

b) F = BCD + ACD
Slika 9: Preklapanje grupa kod Karnoovih mapa

Primer: nalaenje logicke funkcije koja realizuje sabiranje pakovane dekadne cifre
sa jedinicom. Cifra je kodirana u kodu 8421 kao 4-bitni binarni broj. Kombinacije
koje se ne koriste u kodu 8421 (10101111) su oznacene kao nebitno.

Dekadna
cifra
0
1
2
3
4
5
6
7
8
9
n
n
n
n
n
n

Ulaz
kod 8421
A B C
0 0 0
0 0 0
0 0 1
0 0 1
0 1 0
0 1 0
0 1 1
0 1 1
1 0 0
1 0 0
1 0 1
1 0 1
1 1 0
1 1 0
1 1 1
1 1 1

D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

Dekadna
cifra
1
2
3
4
5
6
7
8
9
0

Izlaz
kod 8421
W X Y
0 0 0
0 0 1
0 0 1
0 1 0
0 1 0
0 1 1
0 1 1
1 0 0
1 0 0
0 0 0
n n n
n n n
n n n
n n n
n n n
n n n

Z
1
0
1
0
1
0
1
0
1
0
n
n
n
n
n
n

Tabela 5: Tabela istinitosnih vrednosti za jednocifreni BCD sabira


c

15

00

CD
01 11

10

00

00
AB

01

AB

11

10

01

11

10

CD
01 11

10

00

01

00

11
10

00

CD
01 11

10

00

01

11

10

c) Y = ACD + ACD

b) X = BD + BC + BCD

AB
n

10

00

a) W = AD + BCD

AB

CD
01 11

d) Z = D

Slika 10: Karnoove mape za BCD jednocifreni sabira


c

16

Metoda Kvin-Mekklaskog
A
0
0
0
0
0
0
0
0

B
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1

F
0
1
0
0
0
1
1
1

A
1
1
1
1
1
1
1
1

B
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1

D
0
1
0
1
0
1
0
1

F
0
0
0
1
1
1
0
1

Tabela 6: Funkcija F na koju se primenjuje metoda KvinMekKlaskog

Na osnovu tabele, SDNF funkcije F je


F = ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD
U prvoj fazi minimizacije se konstruie tabela u kojoj svaki red odgovara jednoj
od konjunkcija iz SDNF. Redovi u tabeli ce biti grupisani prema broju komplementiranih promenljivih. Prva grupa sadri term iz SDNF koji ne sadri ni jednu
komplementiranu promenljivu, druga grupa sadri sve terme koji imaju jednu, itd.

Term

ABCD

ABCD
ABCD
ABCD

0
0
1

1
1
1

0
1
0

1
0
0

ABCD
ABCD
ABCD

0
1
1

1
0
1

1
1
0

1
1
1

ABCD

Tabela 7: I faza primene metode KvinMekKlaskog na funkciju iz tabele 6 (1/3)

17

Sledeci korak je pronalaenje svih parova terma koji se medjusobno razlikuju


samo za jednu jedinicu, tj. svih parova koji se razlikuju samo za vrednost jedne
promenljive.
Kad god se termi upare oznacicemo (npr. sa ) vrstu svakog od njih, kombinovati pronadjeni par eliminacijom promenljive koja se razlikuje i dobijeni
term prikljuciti novoj tabeli. Na primer, termi ABCD i ABCD se kombinuju
i daju term ACD. Postupak se nastavlja sve dok se pocetna tabela u potpunosti ne iscrpi. Redovi u tabeli formiranoj od novodobijenih terma su grupisani na isti nacin. Dobijena tabela je ulaz u naredni korak. U narednom
koraku se tabela obradjuje na isti nacin kao i tabela u prethodnom koraku.
Term

ACD

ABC
ABD
ABC
BCD

0
0
1

ABD
ACD
BCD

1
1

1
1
1
1

1
1

0
0

1
1
1

1
1

1
1

Tabela 8: I faza primene metode KvinMekKlaskog na funkciju iz tabele 6 (2/3)

U optem slucaju, proces se nastavlja sve dok se ne dobije tabela u kojoj ne mogu
da se pronadju upareni termi. U ovom primeru to je slucaj sa trecom tabelom koja
sadri samo term BD.
Term
BD

B
1

D
1

Tabela 9: I faza primene metode KvinMekKlaskog na funkciju iz tabele 6 (3/3)

18

ABCD
BD

ABCD

ABCD

ACD

ABCD

ABCD

ABCD

ABCD

ABCD

ABC

ABC
ACD

Tabela 10: II faza primene metode KvinMekKlaskog za funkciju F iz tabele 6

Postupak rada u drugoj fazi je sledeci:


1. Od preostalih terma konstruie se tabela ciji redovi odgovaraju termima koji
nisu eliminisani, dok kolone predstavljaju terme iz SDNF funkcije koja je bila
ulaz u proces minimizacije.
2. Sa X se oznaci svaka pozicija u tabeli koja se nalazi na preseku vrste i kolone
ako vai da term koji oznacava vrstu predstavlja deo terma koji oznacava
kolonu.
3. Ako kolona sadri samo jednu vrednost X, tada se to X zaokrui.
4. U svim redovima koji sadre neko od zaokruenih X-eva oko svih ostalih
X-eva se opie kvadrat.
5. Ako svaka od kolona sadri ili zaokrueno X ili X upisano u kvadrat tada je
postupak odredjivanja minimalne forme funkcije zavren. Minimalni oblik
cine termi koji oznacavaju one redove koji sadre X koje je oznaceno.
6. U slucaju kada postoji kolona koja ne sadri niti zaokrueno X niti X upisano
u kvadrat tada treba sprovesti dodatni postupak koji se sastoji u dodavanju
redova sve dok ne budu obuhvacene sve kolone.
U ovom slucaju, minimalni oblik funkcije F je
F= ABC + ACD + ABC + ACD

19

Kombinatorne mree
Kombinatorne mree predstavljaju skup medjusobno povezanih logickih elemenata ciji je izlaz u nekom vremenskom trenutku funkcija koja zavisi samo od vrednosti ulaza u tom istom vremenskom trenutku.
Kombinatorne mree se u literaturi nazivaju jo i kombinatorna kola. U optem
slucaju, kombinatorne mree se sastoje od n binarnih ulaza i m binarnih izlaza i
mogu biti definisane na tri nacina:
1. Preko tabele istinitosnih vrednosti koja sadri kombinacije za svaku od 2n
mogucih ulaznih vrednosti.
2. Preko povezanog skupa grafickih simbola.
3. Preko logickih funkcija koje izraavaju vezu izmedju ulaznih i izlaznih promenljivih (signala).

20

Multipleksori
Multipleksori su kombinatorne mree koje povezuju vie ulaznih signala u jedan
izlazni signal. U bilo kom trenutku bira se tacno jedan od ulaznih signala i proputa na izlaz.
D0

4na1

D1

MUX

D2
D3

S1 S2
Slika 11: Predstavljanje multipleksora 4na1

S1
0
0
1
1

S2
0
1
0
1

F
D0
D1
D2
D3

Tabela 11: Istinitosna tabela za multipleksor 4na1

21

S1

S2

D0

D1

D2

D3

Slika 12: Implementacija multipleksora 4na1

22

Dekoderi
Dekoderi predstavljaju kombinatorne mree sa vie izlaza pri cemu je istovremeno
aktivan samo jedan izlaz koji prepoznaje (dekodira) vrednost signala na ulazu. U
optem slucaju, dekoder ima n ulaza i najvie 2n izlaza.
Primer 1: dekodiranje adresa. Pretpostavimo da elimo da konstruiemo memoriju velicine 1KB koricenjem cetiri 2568-bitnih RAM cipova.
Adrese
000000FF
010001FF
020002FF
030003FF

Cip
0
1
2
3

A0

A7
2568

2568

2568

2568

RAM

RAM

RAM

RAM

A8
A9
2na4 dekoder

Slika 13: Dekoder adresa

23

Primer 2: dekoder kao demultipleksor. Ako se u dekoder uvedu dodatne ulazne


linije on tada moe da poslui kao demultipleksor. Demultipleksor vri inverznu
funkciju multipleksora, tj. razvodi jedan ulaz na vie izlaza.

nbitna
adresa

nna2n

2n izlaza

dekoder
linija sa
podacima
Slika 14: Implementacija demultipleksora pomo
cu dekodera

Primer 3: dekodiranje BCD cifre. Pretpostavka je da elimo da konstruiemo


dekoder koji koji vri dekodiranje (prevodjenje) binarno kodirane dekadne cifre iz
koda 8421 u dekadnu vrednost. Dekoder ce imati 4 ulaza i 16 izlaza.

24

F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
F13
F14
F15

Slika 15: Dekoder dekadnih cifara iz BCD zapisa

B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

F0 =ABCD
F1 =ABCD
F2 =ABCD
F3 =ABCD

A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

Ulaz
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

F0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

F2
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0

F8
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0

F8 =ABCD
F9 =ABCD
F10 =ABCD
F11 =ABCD

F7
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0

Izlaz
F9
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0

F10
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0

Greka
F12 F13
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0

F12 =ABCD
F13 =ABCD
F16 =ABCD
F15 =ABCD

F11
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0

Tabela 12: Zahtevi za dekoder dekadnih cifara iz BCD zapisa

F4 =ABCD
F5 =ABCD
F6 =ABCD
F7 =ABCD

F1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0

Dekadne cigre
F3 F4 F5 F6
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
F14
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0

F15
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1

25

26

Programibilni niz logickih elemenata


Programibilni niz logickih elemenata (eng. PLA, Programmable Logic Array) je cip
opte namene koji jednostavno moe da se prilagodi raznim specificnim potrebama.
Upotreba PLA je zasnovana na cinjenici da se svaka logicka funkcija moe izraziti
u obliku SDNF.

27

?
Izlaz1

?
Izlaz2

Slika 16: Izgled PLA sa tri ulaza i dva izlaza

ABC

AB

AC

?
Izlaz1
ABC + AB

?
Izlaz2
AB + AC

Slika 17: Dizajniranje veza u PLA sa tri ulaza i dva izlaza

28

Sabiraci
Sabiraci su kombinatorne mree koje se koriste pri realizaciji sabiranja. Sabiraci
mogu biti binarni i dekadni.
Binarni polusabirac je kombinatorna mrea koja vri sabiranje jednocifrenih binarnih brojeva.
A
0
0
1
1

B
0
1
0
1

C
0
1
1
0

P
0
0
0
1

Pp
0
0
0
0
1
1
1
1

Tabela 13: Istinitosne vrednosti za

A
0
0
1
1
0
0
1
1

B
0
1
0
1
0
1
0
1

C
0
1
1
0
1
0
0
1

Pt
0
0
0
1
0
1
1
1

Tabela 14: Istinitosne vrednosti za

binarni polusabirac

binarni sabirac

Na osnovu tabele se lako formira SDNF za funkcije C i P:


C = AB + AB
P = AB

C
P
P

PS

?
C

Slika 18: Implementacija polusabira


ca

Slika 19: Oznaka za polusabira


c

29

Kombinatorna mrea koja realizuje sabiranje dve binarne cifre viecifrenog binarnog broja uz uzimanje u obzir prenosa sa prethodnog mesta se naziva (pun)
sabirac.
Tabela istinitosnih vrednosti sabiraca je prikazana na prethodnoj strani.
Na osnovu tabele se formira SDNF za funkcije C i Pt :
C
Pt

=
=

ABP p + ABP p + ABP p + ABP p


ABP p + ABP p + ABP p + ABP p

SDNF za Pt moe da se minimizuje jednostavnom algebarskom transformacijom:


Pt

=
=
=

ABP p + ABP p + ABP p + ABP p + ABP p + ABP p


AB(P p + P p ) + BP p (A+ A) + AP p (B + B)
AB + BP p + AP p

A B Pp

?
Pt

Pt

?
C

Slika 20: Implementacija sabira


ca

Slika 21: Oznaka za sabira


c

Pp

30

Viecifreni sabiraci
Sabiranje viecifrenih binarnih brojeva se realizuje pomocu jednog sabiraca za
svako binarno mesto. U ovom slucaju se zbog akumulacije kanjenja javlja znacajno kanjenje izmedju bita najmanje i najvece teine kod sabiraca sa vecim brojem mesta.

Signal za
prekoracenje

A3

B3

A2

P3

B2

P2

?
C3

A1

B1

P1

?
C2

A0

B0

P0

?
C1

Slika 22: 4-bitni sabira


c

?
C0

31

Tehnikom nazvanom odredjivanje buducih prenosa (eng. carry lookahead) se kanjenje najvecim delom eliminie. Ova tehnika se primenjuje na sledeci nacin:
Oznacimo sa Pi prenos koji se dobija sabiranjem binarnih cifara na poziciji i i koji
se prenosi u sabirac koji sabira cifre na poziciji i + 1. Cilj je da definiemo Pi pomocu logickog izraza koji ne zavisi od P j , ij. U tabeli 14, uzimimo da je P p =
Pi1 i Pt = Pi . Takodje ocigledno vai P1 = 0. Tada vae sledece jednakosti:
P 0 = A0 B 0
P1 = A1 B1 + (A1 + B1 )P0
Zamenom prve jednakosti u drugoj dobija se
P 1 = A1 B 1 + A1 A 0 B 0 + B 1 A 0 B 0
Koristeci istu proceduru dobija se
P2 = A2 B2 + A2 A1 B1 + A2 A1 A0 B0 + A2 B1 A0 B0 + B2 A1 B1 + B2 A1 A0 B0 + B2 B1 A0 B0
Na slican nacin se dobijaju vrednosti Pi za proizvoljno velike sabirace.
Ovakav pristup je prakticno neprimenljiv za dugacke brojeve zbog glomaznosti dobijenih logickih izraza. Zbog toga se u realnim situacijama odredjivanje buducih
prenosa radi za sabirace koji sabiraju od 4 do 8 bitova istovremeno.
A31 B31

A24 B24 A23 B23

??
P31

8-bitni

??
P23

sabirac

A16 B16 A15 B15

??
8-bitni

??
P15

sabirac

A8 B 8

A7 B7

A0 B 0

??

??

??

??
8-bitni

P7

sabirac

C31

C24

C23

C16

C15

8-bitni

P1 = 0

sabirac

?
C8

?
C7

Slika 23: Konstrukcija 32-bitnog pomo


cu 8-bitnih sabiraca

?
C0

32

Sekvencijalne mree
Sekvencijalne mree predstavljaju skup povezanih logickih elemenata ciji je izlaz
u nekom vremenskom trenutku funkcija koja zavisi od tekuceg stanja elemenata
mree i vrednosti ulaza u tom istom vremenskom trenutku.

Flip-flop elementi
Flip-flop je najjednostavniji oblik sekvencijalne mree. Svi flip-flop elementi poseduju sledece dve osobine:
1. Flip-flop je bistabilni element. Poseduje dva stabilna stanja i u slucaju nepostojanja ulaza ostaje u trenutnom stanju. Na taj nacin flip-flop moe da
memoriadraj jednog bita.
2. Flip-flop ima dva izlaza koji su medjusobno komplementarni. Ovi izlazi se
obicno oznacavaju sa Q i Q.

33

R-S element

Q
Slika 24: RS flip-flop element

34

Ulaz
RS
00
00
10
10
01
01
11
11

Karakteristicna tabela
Tekuce
Naredno
stanje Qn
stanje Qn+1
0
0
1
1
0
0
1
0
0
1
1
1
0

Uprocen oblik
R
0
1
0
1

S
0
0
1
1

Tabela 15: Karakteristi


cna tabela R-S flip flop elementa

Qn+1
Qn
0
1

35

RS flip-flop sa casovnikom za sinhronizaciju

casovnik
Q

Slika 25: R-S flip-flop sa


casovnikom sa sinhronizaciju

D flip-flop element

casovnik

Slika 26: D flip-flop sa


casovnikom sa sinhronizaciju

Qn+1

36

JK flip-flop

Q
casovnik

Qn+1

Qn

Qn

Slika 27: JK flip-flop sa


casovnikom sa sinhronizaciju

1. J=0, K=0: izlaz je nepromenjen, stanje elementa je stabilno.


2. J=1, K=0: izlaz se postavlja na 1, bez obzira na prethodnu vrednost.
3. J=0, K=1: izlaz se postavlja na 0, bez obzira na prethodnu vrednost.
4. J=1, K=1: prethodna vrednost izlaza se invertuje. Npr. ako je prethodno Q
bilo 0 sada postaje 1 i obratno.

- Ck
R

- Ck
Q

RS flip-flop

- Ck
Q

JK flip-flop

Q
D flip-flop

Slika 28: Oznake za flip-flop elemente u sloenijim mreama

37

Registri
Registri su digitalna kola koja se koriste unutar CPU-a za cuvanje jednog ili vie
bitova podataka. Dva osnovna tipa registara koja se najcece koriste su paralelni
i pomeracki registri. Obe vrste se realizuju u obliku sekvencijalnih mrea u cijoj
izgradnji se koriste flip-flop elementi.

Paralelni registri
Paralelni registar se sastoji od skupa 1-bitnih memorijskih jedinica ciji sadraj
moe istovremeno da se cita/upisuje.

Izlazni
kontrolni
signal

Signal za
anuliranje

Ulazni
kontrolni
signal

D18

D08

S Q

S Q

D17

D07

S Q

D06

D05
Izlazne linije

S Q

D14

Linije podataka
D15

S Q

Slika 29: 8-bitni paralelni registar

D16

D04

D13

S Q

D03

D12

S Q

D02

D11

S Q

D01

38

39

Pomeracki registri
Pomeracki registri prihvataju i prenose informacije serijski. Sadraj registra se
moe pomerati na dva nacina:
1. Logicki, pri cemu se sadraj registra posmatra kao binarna rec. Logicko pomeranje moe biti linijsko ili ciklicko.
2. Aritmeticki, pri cemu se sadraj registra posmatra kao broj, i pri pomeranju
se vodi racuna o znaku. Aritmeticko pomeranje moe biti binarno (kada je
sadraj binarni broj) ili dekadno (kada je sadraj BCD broj). Pri aritmetickom pomeranju BCD brojeva istovremeno se pomeraju grupe od po 4 bita.

S1

Q1

- Ck
R1 Q 1

S2

Q2

- Ck
R2 Q 2

S3

Q3

- Ck
R3 Q 3

S4

Q4

- Ck
R4 Q 4

Casovnik
Slika 30: 4-bitni pomera
cki registar (logicko linijsko pomeranje)

an

an

an

Logicko ciklicko
ulevo

Logicko ciklicko
udesno

Aritmeticko
binarno ulevo

Aritmeticko
binarno udesno

an

Logicko linijsko
udesno

an

an

an

Logicko linijsko
ulevo

Vrsta pomeranja

an1

an1

an1

an1

an1

an1

a1

a1

a1

a1

a1

a0

a0

a0

a0

a0

a0

an

an

an

an

an

an1 an2

a0

an1 an2

a0

a2

a0

a2

a0

a2

bit za otkrivanje prekoracenja

Sadraj registra posle pomeranja

an1 an2

Slika 31: Vrste pomeranja sadraja registra

a1

bit za otkrivanje prekoracenja

Sadraj registra pre pomeranja

a1

a1

an

a1

40

41

Brojaci
Brojaci su registri koji imaju mogucnost jednostavnog uvecanja ili umanjenja vrednosti za 1. Vrednost brojaca se uvecava (ili umanjuje) po modulu jednakom kapacitetu registra. Maksimalna vrednost koju brojac od n flip-flopova moe da
registruje je 2n -1. Kada se brojac koji ima maksimalnu vrednost poveca za 1, njegova vrednost se menja na 0.

Asinhroni brojaci
Kod asinhronih brojaca se ulazni signal prenosi kroz brojac u obliku talasa.

Casovnik

- Ck
K

- Ck
Q

K
Q0

- Ck
Q

- Ck
Q

Q1
a) Sekvencijalna mrea

Casovnik
Q0
Q1
Q2
Q3
b) Vremenski dijagram
Slika 32: 4-bitni asinhroni broja
c

K
Q2

Q
Q3

42

Sinhroni brojaci
Kod sinhronih brojaca se izlazi svih flip-flop elemenata koji ih sacinjavaju menjaju
istovremeno.
Primer 3-bitni binarni brojac. U implementaciji ce biti koricena tri JK flipflop elementa, oznacena sa A, B, C. Neka element A predstavlja bit najvece, a
element C bit najmanje teine. Oznacimo J i K ulaze u svaki od elemenata sa
odgovarajucim indeksom; Ja , Ka , Jb , Kb , Jc i Kc ; izlaze i njihove komplemente
oznacimo prema oznakama samih brojaca: A, A, B, B, C i C.
Qn
0
0
1
1

J
0
1
n
n

K
n
n
1
0

Qn+1
0
1
0
1

Na osnovu karakteristicne tabele vidi se da brojac moe da ima sledece vrednosti:


A
0
0
0
0
1
1
1
1

B
0
0
1
1
0
0
1
1

C
0
1
0
1
0
1
0
1

Odavde se vidi da ako je vrednost brojaca A=0, B=0, C=0 tada u narednom uvecanju vrednosti brojaca treba zadrati vrednosti A=0, B=0 i promeniti vrednost
C na 1. Iz modifikacije karakteristicne tabele se vidi da je za odravanje izlaza na
nuli potrebno da bude J=0 dok je vrednost K
A
0
0
0
0
1
1
1
1

B
0
0
1
1
0
0
1
1

C
0
1
0
1
0
1
0
1

Ja
0
0
0
1
n
n
n
n

Ka
n
n
n
n
0
0
0
1

Jb
0
1
n
n
0
1
n
n

Kb
n
n
0
1
n
n
0
1

Jc
1
n
1
n
1
n
1
n

Kc
n
1
n
1
n
1
n
1

Tabela 16: Tabela istinitosnih vrednosti 3-bitnog sinhronog broja


ca

43

nebitna. Slicno, za promenu vrednosti sa 0 na 1 (za flip-flop C) potrebno je da


bude J=1 dok je vrednost K nebitna. Time su odredjene odgovarajuce vrednosti
za Ja , Ka , Jb , Kb , Jc i Kc u tom redu tabele istinitosnih vrednosti. Na slican nacin
se formiraju i ostali redovi. Dobijena tabela istinitosnih vrednosti je prikazana u
tabeli 16.
Naredni korak predstavlja minimizacija funkcija koje predstavljaju ulazne velicine
u flip-flop elemente. Npr. pomocu Karnoovih mapa dobija se
Ja =BC

Ka =BC

Jb =C

Kb =C

Jc =1

Kc =1

Na osnovu minimizovanih vrednosti se konstruie sinhroni brojac ciji je izgled


prikazan na slici 33.

casovnik

- Ck
K

- Ck
C

- Ck
B

Slika 33: 3-bitni sinhroni broja


c

You might also like