25.07.2013 Views

Komponente digitalnih sistema

Komponente digitalnih sistema

Komponente digitalnih sistema

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

1.4 Aritmetičko-logička jedinica<br />

<strong>Komponente</strong> <strong>digitalnih</strong> <strong>sistema</strong><br />

Aritmetičko‐logička jedinica (ili ALU prema engleskom nazivu Arithmetic and Logic Unit) je<br />

višefunkcionalno kombinaciono kolo koje može da obavi bilo koju od više različitih aritmetičkih i<br />

logičkih operacija nad parom b‐bitnih operanada. Pri tom, jedna od raspoloživih operacija bira se<br />

preko skupa selekcionih ulaza. Broj i složenost operacija podržanih od strane ALU modula su pitanje<br />

izbora projektanta i mogu značajno da variraju od ALU do ALU modula. Tipične aritmetičke operacije,<br />

koje se sreću kod većine ALU modula, obično su zasnovane na sabiranju, kao na primer, sabiranje,<br />

oduzimanje, inkrementriranje i dekrementiranje. Inkrementiranje je operacija sabiranja sa 1, a<br />

dekrementiranje oduzimanja za 1. Međutim, postoje i ALU moduli koji su u stanju da obavljaju i<br />

složenije aritmetičke operacije, kao što su množenje, deljenje, stepenovanje, pomeranje, poređenje i<br />

dr. Tipične logičke operacije su AND, OR, komplement, XOR.<br />

Postoje dva glavna razloga za projektovanje ALU jedinica u obliku standardnih modula. Prvo,<br />

dostupnost univerzalnih aritmetičkih modula omogućava da se isti modul koristi u mnogim različitim<br />

primenama, čime se smanjuje broj različitih modula koji se koriste u projektovanju. Drugo, ALU<br />

moduli se mogu efikasno koristiti u sistemima, kao što je procesor, kod kojih operacija koju treba<br />

obaviti u datom trenutku bira dinamički, od strane upravljačke jedinice procesora.<br />

U ovom odeljku biće izložen postupak projektovanje jedne konkretne 4‐bitne ALU jedinice. S obzirom<br />

da su aritmetičke operacija zasnovane na sabiranju, ALU se može projektovati tako što će se<br />

modifikovati ulazi binarnog sabirača. Logika koja obavlja ovu modifikaciju, a tiče se aritmetičkih<br />

operacija, zove se aritmetički ekspander (AE), dok se ona koja se koristi za logičke operacije zove<br />

logički ekspander (LE). Ekspanderi su povezani su na ulaz sabirača, na način kako je to prikazano na Sl.<br />

1‐4. U nastavku će biti izložena procedura projektovanja ekspandera AE i LE na primeru ALU jedinice<br />

koja obavlja četiri aritmetičke i četiri logičke operacije.<br />

Najpre, neophodan je ulaz za izbor režima rada, M, koji će birati između aritmetičkih ili logičkih<br />

operacija, tako da pri M=1, ALU obavlja aritmetičke, a pri M=0 logičke operacije. Takođe, potrebne su<br />

dva ulazna signala za izbor operacije, S1 i S0, koji će, u zavisnosti od vrednosti ulaza M, birati jednu od<br />

četiri aritmetičke ili četiri logičke operacija, na način kako je to definisano funkcionalnom tabelom sa<br />

Sl. 1‐5(a), za aritmetičke, i tabelom sa Sl. 1‐5(b) za logičke operacije.<br />

Sl. 1‐4. 4‐bitni sabirač u spoju sa aritmetičkim (AE) i logičkim (LE) ekspanderima.<br />

8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!