Komponente digitalnih sistema
Komponente digitalnih sistema
Komponente digitalnih sistema
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Komponente</strong> <strong>digitalnih</strong> <strong>sistema</strong><br />
broja 45 na stek zahteva da brojevi 34 i 23 budu premešteni na lokacije Top‐1 i Top‐2. S druge strane,<br />
kada se broj 45 uzima sa steka, brojevi 34 i 23 se pomeraju naviše, tako da ponovo zauzimaju lokacije<br />
Top i Top‐1 (Sl. 2‐28(c)). U ovom konkretnom primeru, na stek se može staviti najviše četiri broja, pre<br />
nego što se stek napuni. Nakon toga, svaki novi upis u stek znači gubitak podatka sa dna steka.<br />
(a) (b) (c)<br />
Sl. 2‐28. Rad steka: (a) sadržaj steka pre upisa broja 45; (b) sadržaj steka nakon upisa broj 45; (c) sadržaj steka<br />
nakon čitanja broja 45.<br />
2.2.7.1 Realizacija na bazi pomeračkih registara<br />
Prilikom projektovanja steka, važno je uočiti da se zapamćeni podaci pomeraju za jednu poziciju<br />
naniže, odnosno naviše, prilikom izvođenja operacija upisa i čitanja. Na osnovu ovog zapažanja<br />
zaključujemo da za realizaciju steka treba koristiti pomeračke registre u kombinaciji sa obostranim<br />
brojačem za detekciju praznog, odnosno punog steka. Ove komponente su korišćene za realizaciju m‐<br />
bitnog steka dubine 4 koji je prikazan na Sl. 2‐29. Konkretno, za realizaciju su korišćeni univerzalni<br />
pomerački registar ‐ vidi Sl. 2‐17 i obostrani brojač sa Sl. 2‐19. Uočimo da ovaj stek ima m ulaznih<br />
linija INi i m izlaznih linija OUTi, 0≤i≤m‐1. Takođe, stek ima tri upravljačka signala, Push/pop, Enable i<br />
Reset.<br />
Signal Push/pop upravlja upisom i čitanjem iz steka. Kada je Push/pop=0, podatak se upisuje u stek;<br />
kada je Push/pop=1, podatak se čita iz steka. Signal Enable omogućava (dozvoljava) rad steka, dok<br />
signal Reset, uvek kada je 0, briše sadržaj pomeračkih registara i resetuje obostrani brojač. Rad steka<br />
je opisan tabelom operacija sa Sl. 2‐29(a). Uočimo da stek ima dva izlazna signala, Empty i Full, koji<br />
ukazuju na status steka, na sledeći način: ako je stek prazan, signal Empty ima vrednost 1; s druge<br />
strane, kada Full ima vrednost 1, stek je pun (Sl. 2‐29(c)).<br />
Na Sl. 2‐29(d) se može videti da se stek sastoji iz m 4‐bitnih pomeračkih registara tako da svakom<br />
ulazu odgovara jedan pomerački registar. Pri svakom upisu u stek, svi pomerački registri obavljaju<br />
operaciju pomeranja udesno. Slično, pri svakom čitanju iz steka, svi pomerački registri obavljaju<br />
operaciju pomeranja ulevo. Svaki novi podatak koji se stavlja na stek, preko ulaza IL pomeračkog<br />
registra se upisuje se na poziciju Q3 pomeračkih registara, koja predstavlja vrh steka. Stanje brojača<br />
ukazuje na broj podataka u steku. Sinhronizovano sa svakom rastućom ivicom taktnog signala,<br />
pomerački registri obavljaju pomeranje udesno, a brojač broji unapred za 1 (Push/pop=0 i Enable=1),<br />
odnosno pomeranje ulevo i brojanje unazad (Push/pop=1 i Enable=1).<br />
58