Uvod u arhitekturu racunara-Skripta-Arhitektura racunara 1-Informatika (3), Skripte' predlog Arhitektura racunara 1. University of Belgrade

Arhitektura racunara 1

Opis: Uvod u arhitekturu racunara,Skripta,Arhitektura racunara 1,Informatika, Istorijski razvoj računara,Bulova algebra i logička kola, Minimizacija,Kombinaciona i sekvencionalana kola,Osnovne komponente računara,procesor, memorija, magistrale, ANALOGNI I DIGITALNI SIGNALI, ANALOGNI UREĐAJI, DIGITALNI UREĐAJI, Digitalna elektronika se danas posebno brzo razvija u oblasti računskih mašina, Računar je mašina koja pomaže ljudima da izvršava određene zadate instrukcije, Jezik pomoću koga ljudi komuniciraju sa računarom je mašinski jezik, KLJUČNE TAČKE RAZVOJA ARHITEKTURE RAČUNARA, Nulta generacija - mehanički računari, Gottfried Wilhelm von Leibniz, Prva generacija - elektronske cevi, Von Neumannova mašina, VAKUUMSKE CEVI, Druga generacija – tranzistori, Тranzistori, Treća generacija - integrisana kola, Integrisana kola, Integrated Circuits, IC, Četvrta generacija - vrlo visok stepen integracije, Gary Kildall, Graphical User Inte-face, GUI Show more
Prikazivanje stranica  1  -  2  -  11
Kombinaciona kola

Treće predavanje – Kombinaciona kola 2011

1

KOMBINACIONA KOLA

U mnogim primenama digitalne logike potrebno je koristiti kola s više ulaza i više

izlaza, kod kojih su izlazni signali jednoznačno određeni trenutnim vrednostima ulaznih

signala. Takva kola se zovu kombinaciona kola (engl. combinational circuit). Iako se

može napraviti ogroman broj različitih kombinacionih kola u praksi su se neka pokazala

kao vrlo primenjiva, tako da će ovde upravo biti analizirana neka često korišćena kola

koja se s pravom mogu nazvati standardna kombinaciona kola.

MULTIPLEKSERI

Multiplekser (u literaturi se koristi oznaka MUX) je kombinaciono kolo (mreža) sa

2 n ulaza na koje se dovode binarni ignali, jednim izlazom i n upravljačkih (adresnih)

ulaza pomoću kojih se bira jedan od ulaza koji će se pojaviti na izlazu. Na slici 1 je dat

šematski prikaz multipleksera sa osam ulaza označenih sa Di, i=0,...7 i tri upravljačka

signala A, B i C.

Slika 1: Blok šema multipleksera

Upravljački signali A, B i C definišu (kodiraju) 3-bitni broj koji određuje koji će od

osam ulaznih signala biti usmeren ka logičkom kolu OR i odatle ka izlazu. Kao što se na

slici vidi, navedeni multiplakser u svojoj strukturi ima i 8 AND kola. Međutim bez obzira

na upravljačke signale, u svakom trenutku sedam od osam logičkih kola AND će uvek

dati nulu na izlazu; preostalo kolo AND daće vrednost 0 ili 1, što direktno zavisi od

vrednosti odabranog ulaznog signala. Primena i značaj multipleksera zasniva se na

njegovoj osobini da se svako kolo AND aktivira drugačijom kombinacijom upravljačkih

signala.

Kada se dodaju napajanje i uzemljenje, multiplekser se može smestili na čip sa 14

nožica pošto se multiplekseri danas izrađuju kao integrisana kola.

Primena multipleksera je višestruka tako da će ovde biti navedene samo neke.

Multiplekser može da se koristi kao paralelno-serijski pretvarač podataka. Kada se

na primer 8 bitova podataka dovede na ulaze, a zatim se upravljački signali kombinuju

tako da redom daju binarne vrednosti od 000 do 111, 8 ulaznih bitova će se na izlazu

pojavljivati serijski - jedan za drugim.

Treće predavanje – Kombinaciona kola 2011

2

Paralelno-serijski pretvarač podataka obično se koristi u tastaturi, gde se

pritiskom na bilo koji taster po pravilu definiše 7-bitni ili 8-bitni broj koji se mora

poslati preko telefonske linije bit po bit.

Zbog svoje osobine da vrši selekciju ulaznih kanala u zavisnosti od stanja ulaznih

adresa (upravljačkih signala) multipplekser je našao primenu u memoriji jer je omogućio

smaštanje informacija u određenim delovima memorije koji se prepoznaju na osnovu

binarnih adresa.

Slika 2: Multiplekser prikazan u obliku čipa

Takođe pomoću multipleksera se može implementirati funkcija većine.

[Funkcija većine

Logička funkcija većine je funkcija koja kao rezultat daje 0 ako je većina

njenih argumenata 0, dok kao rezutat daje 1 ako većina njenih argumenata ima

vrednost 1.

Tabela istinitosti za Bulovu funkciju tri promenljive: ),,( CBAfM  je data u

Tabeli 1, dok je šema kola koje realizuje navedenu funkciju data na slici 3.

Iako se svaka Bulova funkcija može potpuno opisati pomoću tabele istinitosti, kako

raste broj argumenata, tako opisivanje postaje sve nepreglednije. Umesto toga, često se

koristi drugačiji način označavanja.

Slika 3: Kolo koje realizuje funkciju većine Tabela 1: Tabela istinitosti funkcije većine

A B C M

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

Treće predavanje – Kombinaciona kola 2011

3

Da bismo videli kako se on koristi, istaknimo da se svaka Bulova funkcija može

zadati tako što će se reći koje kombinacije argumenata daju rezultat 1. Za funkciju sa

slike 3 postoje četiri kombinacije argumenata pri kojima M postaje 1. Prema usvojenoj

konvenciji, iznad argumenata čija je vrednost invertovana, stavljamo crtu. Kada je nema

znači da vrednost argumenta nije invertovana. Pored toga, podrazumevano ćemo koristiti

množenje (bez operatora) ili tačku da označimo Bulovu funkciju AND, a + da označimo

OR. Imajući ovo u vidu funkciju M možemo da napišemo kao:

ABCCABCBABCAM 

što predstavlja sažet način predstavljanja tabele istinitosti.

Funkcija n promenjivih se prema tome može predstaviti kao zbir od najviše 2 n

“proizvoda” n promenjivih.]

Pomoću multipleksera možemo implementirati funkciju

većine sa slike 3, kao što je prikazano na slici 4. Za svaku

kombinaciju signala A, B i C bira se jedan od ulaznih signala.

Svaki ulaz je spojen ili za Vcc (logička jedinica) ili je uzemljen

(logička nula). Algoritam ožičenja ulaza je jednostavan: ulaz Di

isti je kao i vrednost u redu i tabele istinitosti. U tabeli 1 rezultati

u redovima O, 1, 2 i 4 su nule, tako da su odgovarajući ulazi

uzemljeni; rezultati u ostalim redovima su jedinice, pa se ulazi

povezuju s logičkom jedinicom. Na taj način se pomoću čipa sa

slike 2 može implementirati svaka tabela istinitosti s tri

promenljive.

Upravo smo objasnili kako se multiplekserski čip može upotrebiti za biranje jednog

od više ulaznih signala i kako se pomoću njega može implementirati tabela istinitosti.

Pored multiplesera postoji i kolo demultiplekser koje funkcioniše suprotno od

multipleksera – ovo kolo jedan ulazni signal upućuje na jedan od 2 n

izlaza, što zavisi od

vrednosti n upravljačkih signala.

DEKODERI

Dekoder je kombinaciono kolo koje ima n ulaza i 2 n izlaza pri čemu se kao ulazni

podatak prihvata n-bitni broj a zatim na osnovu njega bira samo jedan od 2 n izlaza koji

postavlja na vrednost logičke jedinice. Na ovaj način svakoj reči na ulazu odgovara signal

na samo jednom izlazu tj jedna određena kombinacija ulaznih signala aktivira tačno

određeni izlaz. Na slici 5 je prikazana realizacija jednog ovakvog kola, tačnije dat je

dekoder 3/8.

Kao i multiplekseri, i dekoderi su dostupni na tržištu kao integrisana kola srednjeg

stepena integracije. Postoji vise realizacija ovog kola a neke poznatije konfiguracije su

dekoderi tipa 2/4, 3/8 i 4/16. Ime dekodera se formira tako da prvi broj označava broj

ulaznih signala a drugi broj izlaznih.

Dekoder bilo kog obima može se realizovati povezivanjem nekoliko manjih dekodera.

Tako na primer, dekoder tipa 6/64 se može konstruisati pomoću četiri dekodera 4/16 i

jednog dekodera tipa 2/4.

Slika 4: Blok šema multipleksera

koji izračunava funkciju većine

Vcc

Treće predavanje – Kombinaciona kola 2011

4

Ilustracija upotrebe dekodera:

Zamislimo malu memoriju sa osam

čipova od po 1 MB. Čip 0 ima adrese od 0 do

1 MB, čip 1 ima adrese od l MB do 2 MB itd.

Kada se od memorije zatraži sadržaj s

neke adrese, tri njena najznačajnija bita

omogućavaju biranje jednog od osam čipova.

Ta tri bita u kolu na slici 5 su tri ulazna

signala A, B i C. Zavisno od njihovih

vrednosti, na samo jednom od osam izlaza

D0, ..., D7 pojaviće se logička jedinica; na

ostalim izlazima pojaviće se logička nula.

Svaki izlaz aktivira jedan od osam

memorijskih čipova. Pošto se samo na

jednom izlazu pojavljuje logička jedinica,

aktivira se samo jedan čip.

Slika 5: Dekoder 3/8

Još neke upotrebe:

Na slici 6 je dat šematski prikaz

principa povezivanja procesora sa U/I

uređajima. Svaki U/I priključak (port)

ima jedinstveni broj tj. adresu po kojoj

se identifikuje. Kada procesor želi da

komunicira sa periferijskim uređajem on

tu adresu prosleđuje na ulaz dekodera.

Dekoder dekodira adresu i aktivira samo

jedan izlaz tj na samo jednom izlazu se

pojavljuje logički visok nivo napona, 1.

Da bi magistrala podataka prema njemu

postala otvorena potrebno je da enable

funkcija takođe bude na 1.

Enable funkcija postoji i kod

drugih kola. Ona se kao poseban ulaz

Slika 6 dovodi kako na dekoder tako i na

multiplekser i druga kola a ima funkciju da označi da li je kolo aktivno ili ne (u zavisnosti

od kola može se tačnije izdiferencirati uloga ulaza E).

Još jedna interesantna primena dekodera je za aktiviranje ispisa na digitalnim

displejima. U tu svrhu se koristi BCD/7-seg dekoder.

a

g

f

e

d

c

b

Treće predavanje – Kombinaciona kola 2011

5

Za ilustraciju aktiviranja pojedinih delova displeja data je tabela

istinitosti:

110111110019

111111100018

000011111107

111110101106

110110110105

110011000104

100111111003

101101101002

000011010001

011111100000

gfedcbaC3C2C1C0

Slika 7

KOMPARATORI

Još jedno korisno kolo je komparator.

Komparator je kombinaciono kolo koje poredi dve ulazne reči. Sami tim njegova uloga

je veoma značajna jer pored osnovnih matematičkih operacija koja se obavljaju u aritmetičko-

logičkoj jedinici računarskih sistema česta je potreba i za poređenjem binarnih brojeva. Treba se

naravno podsetiti da binarni brojevi u računarskim sistemima nisu samo "brojevi" već da je i

svaka "reč", ili pak upravljačka instrukcija, tj. svaka informacija ma kakvu ulogu ona imala

takođe data u formi binarnog broja. Pitanje poređenja binarnih kodova je od velikog značaja, na

primer, prilikom pretraživanja svih vrsta datoteka.

Kako su jedini mogući simboli "0" i "1", to svi mogući iskazi u digitalnim sistemima

mogu biti formirani samo kao kombinacija stanja koja odgovaraju "0" odnosno "1". Ukoliko se u

datoteci želi pronaći "slog" koji odgovara zadatom pojmu, tada računar mora izvršiti poređenje

svih traženih karaktera pojma sa onim u datoteci i to bit po bit, a kako je svako slovo

prezentovano sa kombinacijom od osam bita to će i broj operacija koje aritmetičko logička

jedinica treba da obavi biti jako veliki.

U osnovi poređenja brojeva leže tri moguća logička iskaza a to su:

YXiYXYX  ,

U digitalnim sistemima koriste se uglavnom dva metoda za realizacuju operacije

upoređenja dva binarna niza:

 Oduzimanje jednog broja od drugog

 Formiranje logičkih sklopova komparatora

U prvom se vrši oduzimanje jednog broja od drugog u sklopu za oduzimanje u aritmetičko

logičkoj jedinici pa ukoliko je rezultat oduzimanja nula, tada su brojevi međusobno jednaki, u

Treće predavanje – Kombinaciona kola 2011

6

suprotnom ispituje se znak ostatka i na osnovu toga znaka određuju se druga dva uslova. Pored

sabirača koji učestvuje u operaciji oduzimanja moraju se obezbediti i dodatni logički sklopovi

koji će fiksirati (zapamtiti) ostatak "0" pri ispunjenju uslova X=Y. Samim tim će aritmetičko

logička jedinica biti dodatno opterećena, pa se iz razloga njenog rasterećenja sa jedne strane, i

ubrzanja same operacije poređenja sa druge, formiraju zasebni logički sklopovi koji se nazivaju

opštim imenom komparatori.

Dva binarna broja će biti jednaka ako su im svi bitovi odgovarajuće težine međusobno

jednaki tj ako je: nn YXYXYX  ,,, 1100  .

Za broj dužine n operacija poređenja se ponavlja n+1 puta.

Formiranje ovakvih sklopova rasterećuje ALU i znatno ubrzava proces poređenja.

Na slici 8 je prikazan jednostavan 4-oro bitni komparator.

A=B

A0

B0

B1

B2

B3

A1

A2

A3

Slika 8: 4-oro bitni komparator

Dati komparator ima dva ulazna signala, A i B, dužine 4 bita, i generiše logičku jedinicu

ako su signali jednaki, ili logičku nulu ako nisu. Komparator se zasniva na logičkom kolu XOR

(isključivo ILI), koje generiše logičku nulu ako su ulazni signali jednaki, a logičku jedinicu ako

su nejednaki. Ako su dve ulazne reči jednake, sva četiri kola XOR moraju generisati vrednost 0.

Na četiri signala se tada može primeniti operacija OR - ako je rezultat 0, ulazne reči su jednake,

u suprotnom nisu. U našem primeru, na kraju smo upotrebili logičko kolo NOR da bismo (sa

aspekta korisnika) tekstu dali više smisla, tj. da bi logička jedinica označavala jednakost, a

logička nula nejednakost reči koje se porede. Na ovom principu funkcioniše poređenje n-bitnih

reči.

SABIRAČI

Skoro je nezamisliv računar koji ne može da sabira cele brojeve. Prema tome, suštinski deo

svakog procesora je hardversko kolo za sabiranje. Tabela istinitosti za operaciju sabiranja 1-

bitnih celih brojeva prikazana je na slici 9. U njoj za svaki red postoje dva rezultata: zbir ulaznih

vrednosti A i B i prenos na sledeću (levu) poziciju. Kolo koje izračunava i bit zbira i bit prenosa

prikazano je na slici 9 takođe. Ovo jednostavno kolo je poznato pod opštim imenom polusabirač

(enlg. halfadder).

Treće predavanje – Kombinaciona kola 2011

7

Slika 9: Polusabirač

Iako polusabirač može da se iskoristi za sabiranje najmanje značajnih bitova dve višebitne

reči, on se ne može upotrebiti za sabiranje bitova u sredini reči jer ne obrađuje izračunati prenos.

Za to je potreban potpuni sabirač (engl. full adder) koji je prikazan na slici 10. Analizirajući

sliku, možemo zaključiti da je potpuni sabirač napravljen od dva polusabirača. Izlazni signal Zbir

ima vrednost 1 ako A, B i Unos imaju neparan broj bitova 1. Prenos ima vrednost 1 ako A i B

istovremeno imaju vrednost 1 (levi ulaz u logičko kolo OR) ili ako samo jedno od njih ima

vrednost 1, a Unos takođe ima vrednost 1. Dva polusabirača zajedno generišu bit zbira i bit

prenosa.

Slika 10: Sabirač

Da bi se napravio sabirač, na primer, za dve 32-bitne reči, treba 32 puta umnožiti kolo sa

slike 3. Bit prenosa se tada koristi kao unos za poziciju na levoj strani. Unos za krajnju desnu

poziciju hardverski je uvek podešen na nulu. Ovakav tip sabirača zove se sabirač s postupnim

prenosom (engl. ripple carry adder) jer, u najgorem slučaju, dodavanje 1 broju 111... 111

(binarno) ne može da se završi sve dok se ne izvrši sukcesivno prenošenje od bita na desnom

kraju do bita na levom kraju. Postoje sabirači koji nemaju ovu vremensku zadršku (rade brže) i

zato se po pravilu češće koriste.

Treće predavanje – Kombinaciona kola 2011

8

FA

P

S

PP

S31

y x

y31 x31

FA

P

S

PP

S30

y x

y30 x30

FA

P

S

PP

S29

y x

y29 x29

FA

P

S

PP

S28

y x

y28 x28

FA

P

S

PP

S1

y x

y1 x1

FA

P

S

PP

S0

y x

y0 x0

0

Slika 11: 32-o bitni sabirač

Da bismo dobili jednostavan primer bržeg sabirača, podelimo 32-bitni sabirač na dve 16-

bitne polovine: gornju i donju. Kada sabiranje započne, gornja polovina neće moći ništa da radi

tokom 16 ciklusa sabiranja jer ne zna unos za svoj prvi bit.

FA

P

S

PP

S15

y x

y15 x15

FA

P

S

PP

S14

y x

y14 x14

FA

P

S

PP

S13

y x

y13 x13

FA

P

S

PP

S12

y x

y12 x12

FA

P

S

PP

S1

y x

y1 x1

FA

P

S

PP

S0

y x

y0 x0

0

FA

P

S

PP

S16

y x

y16 x16

FA

P

S

PP

S17

y x

y17 x17

FA

P

S

PP

S18

y x

y18 x18

FA

P

S

PP

S19

y x

y19 x19

FA

P

S

PP

S30

y x

y30 x30

FA

P

S

PP

S31

y x

y31 x31

0

Slika

12: Modifikovan 32-o bitni sabirač

Međutim, razmotrite sledeću modifikaciju ove šeme. Udvostručimo gornju polovinu u dve

paralelne grane. Tako ce se kolo sastojati od tri 16-bitna sabirača: jedne donje polovine i dve

gornje polovine, koje rade paralelno. U jednoj grani se kao prenos dovodi nula; u drugu se kao

prenos dovodi jedinica. Sada obe gomje polovine mogu započeti s radom istovremeno kada i

donja polovina, ali će samo rezultat jedne od njih biti tačan. Posle 16 ciklusa sabiranja biće

poznat prenos u gornju polovinu, pa će se moći izabrati ispravan od dva rezultata. Ovim trikom

se dvostruko skraćuje vreme sabiranja. Takav sabirač se zove sabirač s biranjem prenosa (engl.

carry select adder).

Treće predavanje – Kombinaciona kola 2011

9

FA

P

S

PP

S15

y x

y15 x15

FA

P

S

PP

S14

y x

y14 x14

FA

P

S

PP

S13

y x

y13 x13

FA

P

S

PP

S12

y x

y12 x12

FA

P

S

PP

S1

y x

y1 x1

FA

P

S

PP

S0

y x

y0 x0

0

FA

P=1

S

PP

S16

y x

y16 x16

FA

P

S

PP

S17

y x

y17 x17

FA

P

S

PP

S18

y x

y18 x18

FA

P

S

PP

S19

y x

y19 x19

FA

P

S

PP

S30

y x

y30 x30

FA

P

S

PP

S31

y x

y31 x31

0

FA

P=0

S

PP

S16

y x

y16 x16

FA

P

S

PP

S17

y x

y17 x17

FA

P

S

PP

S18

y x

y18 x18

FA

P

S

PP

S19

y x

y19 x19

FA

P

S

PP

S30

y x

y30 x30

FA

P

S

PP

S31

y x

y31 x31

0

Slika 13: Sabirač sa biranjem prenosa

ARITMETIČKO-LOGIČKE JEDINICE

Većina računara ima samo jedno kolo koje obavlja operacije AND, OR i sabiranja dve

mašinske reči. Takvo kolo za n-bitne reči najčešće se sastoji od najviše n identičnih kola za

bitove na pojedinim pozicijama. Slika 14 jednostavan je primer takvog kola, nazvanog

aritmetičko-logička jedinica (engl. Arithmetic Logic Unit, ALU). Ona može da obavlja bilo

koju od četiri funkcije: A AND B, A OR B, B ili BA, što zavisi od toga da li ulazi 0F i 1F za

biranje funkcije sadrže bitove 00, 01, 10 ili 11 (bi-namo). Obratite pažnju na to da

BA označava aritmetički zbir brojeva A i B, a ne Bulovu operaciju OR.

Treće predavanje – Kombinaciona kola 2011

10

Slika 14: Jednobitna ALU

U levom donjem uglu slike, ALU jedinica sadrži 2-bitni dekoder koji generiše signale za

aktiviranje četiri operacije na osnovu upravljačkih signala 0F i 1F . U zavisnosti od vrednosti

signala 0F i 1F bira se samo jedan od četiri ulaza za aktiviranje. Na taj način se omogućava da

rezultat izabrane funkcije prođe kroz krajnje logičko kolo OR do izlaza.

U levom gornjem delu slike nalazi se jedinica za izračunavanje funkcija A AND B, A OR B i

B , ali se samo jedan od rezultata propušta do krajnjeg logičkog kola OR, u zavisnosti od toga

koji je od ulaza dekodera aktiviran. Pošto samo jedan izlaz dekodera ima vrednost 1, biće

aktivirano samo jedno od četiri logička kola AND koja su povezana s kolom OR; izlaz iz ostala

tri kola bice 0, bez obzira na vrednosti A i B.

Osim što se A i B mogu koristiti kao argumenti za logičke ili aritmetičke operacije, svaki

od ovih ulaza moguće je negiranjem (ENA ili ENB) postaviti na vrednost 0. Može se dobiti i A

ako se signal INVA postavi na vrednost 1. U normalnim okolnostima, signali ENA i ENB imaju

vrednost 1 da bi se omogućila oba ulaza, dok signal INVA ima vrednost 0. U ovom slučaju, A i

B se dovode neizmenjeni u logičku jedinicu.

U desnom donjem uglu ALU jedinice nalazi se potpuni sabirač za izračunavanje zbira A i

B, uključujuci i obradu prenosa jer postoji verovatnoca da ce više ovakvih kola biti međusobno

povezano radi obavljanja operacija nad celim rečima. Kola sa slike 7 stvamo se proizvode i

poznata su kao jednobitne sekcije.

Ona projektantu omogućavaju da konstruiše ALU jedinicu bilo koje širine (u bitovi-ma).

Na slici 8 prikazana je 8-bitna ALU jedinica izgrađena od osam 1-bitnih ALU sekcija. Signal

Treće predavanje – Kombinaciona kola 2011

11

INC služi isključivo za operacije sabiranja. Kada postoji, on uvećava rezultat za 1,

omogućavajući izračunavanje zbirova, kao što su A + 1 i A + B + 1.

Slika 15: 8 jednobitnih ALU povezanih u 8-o bitnu ALU je

Docsity is not optimized for the browser you're using. In order to have a better experience please switch to Google Chrome, Firefox, Internet Explorer 9+ or Safari! Preuzmite Google Chrome