25.07.2013 Views

Komponente digitalnih sistema

Komponente digitalnih sistema

Komponente digitalnih sistema

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

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

definišu operacije ALU jedinice i pomerača zajedno sa adresama registara koji se koriste kao izvori operanada i<br />

adresom registra gde se smešta rezultat. U cilju upravljanja stazom podataka, pretpostavićemo da se Brojač<br />

jedinica realizuje kao nezavisni modul koji počinje sa radom uvek kada signal Start postane 1, a postavlja 1 na<br />

izlaz Done odmah nakon što je završio izračunavanje.<br />

Kao što se može videti na Sl. 2‐40(d), konačni automat koji opisuje rad Brojača jedinica ima osam stanja. Brojač<br />

jedinica ostaje u stanju S0 sve dok signal Start ne postane jednak 1, a zatim, u sledećih sedam stanja, S1, S2, ...,<br />

S7, Brojač jedinica radi shodno algoritmu sa Sl. 2‐40(a). Konačno, u stanju S7, Brojač jedinica postavlja rezultat<br />

na izlaz, aktivira signal Done i vraća se u stanje S0. Upravljačka jedinica Brojača jedinica ima dva ulazna signala,<br />

Start i Podatak≠0 i jedan izlazni signal, Done. Signali Start i Done se koriste za komunikaciju sa okruženjem, dok<br />

signal Podatak≠0, u suštini, predstavlja statusni signal staze podataka. U svakom taktnom ciklusu, upravljačka<br />

jedinica generiše 20 bita upravljačke reči. Uočimo da su za realizaciju osam stanja neophodna tri D flip‐flopa.<br />

Konačno, na Sl. 2‐41 dat je šematski prikaz Brojača jedinica koji koristi stazu podataka sa Sl. 2‐39(a).<br />

2.4.1 Paralelna staza podataka<br />

U prethodnoj sekciji opisano je više primera jednostavnih staza podataka. Međutim, za primene koje<br />

zahtevaju veliku brzinu obrade podataka, takve, jednostavne staze podataka bile bi verovatno previše<br />

spore. Povećanje performansi zahteva redizajniranje ovih staza podataka na način koji će omogućiti<br />

konkurentno izvršenje više operacija. Staze podataka koje omogućavaju istovremeno (konkurentno)<br />

izvršenje više opcija zovu se paralelne staze podataka.<br />

Očigledan način za paralelizaciju staze podataka sastoji se u povećanju broja portova registarskog<br />

fajla i korišćenju nekoliko funkcionalnih jedinica, kao što je prikazano na primeru paralelne staze<br />

podataka sa Sl. 2‐42. Uočimo da ova staza podataka ima 6‐to portni registarski fajl (4 porta za čitanje i<br />

2 za upis), šest magistrala (četiri za prenos operanada i dve za prenos rezultata) i četiri funkcionalne<br />

jedinice (ALU, pomerač, množač i delitelj). Prikazana staza podataka može da izvršava dve operacije u<br />

paraleli, jednu u ALU jedinici ili pomeraču i drugu u množaču ili delitelju.<br />

Staza podataka sa Sl. 2‐42, ipak omogućava samo ograničen paralizam, s obzirom da ne može<br />

istovremeno da obavlja bilo koje dve operacije. Na primer, u ovoj stazi podataka nije moguće u<br />

paraleli obaviti dva sabiranja ili dva množenja (zato što postoji samo jedna ALU jedinica i samo jedan<br />

množač). Drugim rečima, staza podataka sa Sl. 2‐42 može ispoljiti dva puta bolje performanse u<br />

odnosu na jednostavne (sekvencijalne) staze podataka iz prethodne sekcije, samo pod uslovom da<br />

algoritam ne zahteva ovakav tip paralelizma. Takođe, u ovoj stazi podataka komponente nisu<br />

potpuno povezane, što znači da izvesni tipovi paralelizma, koji iako postoje u algoritmu, neće moći<br />

biti iskorišćeni. Na primer, s obzirom da ALU jedinica i pomerač, kao i množač i delitelj koriste<br />

zajedničke magistrale za prenos operanada i rezultata, staza podataka ne može u isto vreme da<br />

izvršava operaciju množenja i operaciju deljenja, odnosno operaciju sabiranja i operaciju pomeranja.<br />

Drugim rečima, čak iako algoritam omogućava istovremeno izvršenje operacija sabiranja i pomeranja,<br />

staza podataka je u mogućnosti da u jednom taktnom ciklusu obavlja samo jednu od ove dve<br />

operacije, bez obzira što hardverski resursi, u vidu funkcionalnih jedinica, postoje.<br />

72

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

Saved successfully!

Ooh no, something went wrong!