You are on page 1of 51

Arhitektura i organizacija

računara

dr. Danilo Oklobdžija


danilo.oklobdzija@vpskp.edu.rs
Arhitektura računarskog
sistema.
Von Neumann i Hardvard
Osnovna razlika između ove dve
arhitekture je u načinu čuvanja
programa i podataka. Dok von-
Neumannova arhitektura podrazumeva
zajednički memorijiski prostor, Hardvard
arhitektura podrazumeva posebne
memorijske prostore za pamćenje
instrukcija i podataka.
Von Neumann i Hardvard
Osnovne komponente
Bez obzira na arhitekturu, hardversku
konfiguraciju računarskog sistema čine:
 Centralni procesor - CPU (Central
processing unit);
 Memorijski podsistem;

 Magistrala (Bus);

 Ulazno/Izlazni podsistem
Arhitektura sa jednom
sabirnicom
Arhitektura sa dve
sabirnice
DMA - Direct Memory Access

Logika za direktan pristup memoriji DMA


(Direct Memory Access) kopira blokove
podataka između ulazno/izlaznih uređaja i
memorije, na osnovu zahteva koji inicijalizuje
centralni procesor.
Magistrale koje se sreću u savremenim
konfiguracijama PC računara, ISA (Industry
Standard Architecture) i PCI (Peripheral
Component Interconnec), koriste DMA
komunikaciju.
DMA ili PIO
Bez direktnog pristupa memoriji,
korišćenjem tehnike programskog
ulaza/izlaza - PIO (Programmed
Input/Output), centralni procesor je
previše okupiran ulazno/izlaznim
operacijama te nije u mogućnosti da
izvršava ostale zadatke.
CPU
CPU - Uloga
Osnovna uloga centralnog procesora je da izvršava
instrukcije koje se nalaze uskladištene u operativnoj
memoriji računara.
Generalno faze izvršenja instrukcije su:
 Pribavljanje instrukcije;

 Dekodiranje instrukcije;

 Određivanje adresa operanada;

 Izvršavanje specificirane operacije nad


operandima;
 Smeštanje rezultata.
CPU - Karakteristike
Osnovna karakteristika za upoređivanje
procesora je brzina. Brzina procesora
izražava se u MIPS-ovima (MIPS -
million instructions per second). Samo
kod procesora iste arhitekture može se
za uporedjivanje brzine upotrebiti i
brzina kloka, najčešćee izrađena u
MHz-ima.
Arjitektura procesora
Arhitektura procesora se izučava kroz
izučavanje:
 Hardverske organizacije;
 Programski dostupnih registra;

 Formata instrukcija;

 Tipova instrukcija;

 Načina adresiranja;

 Operaciaja sa stekom;

 Sistema prekida.
Hardverska
organizaciaja
Hardverska organizaciaja
CPU - organizacija
Aritemetičko logička jedinica - ALU (Arithmetic Logic Unit)
 Preuzima podatke iz registara, izvršava aritmetičko
logičke oeracije i rezultat vraća u registre.

Upravljačka ili Kontrolna jedinica


 Genriše taktove kojima sinhronizuje i upravlja
 razmenom podataka sa memorijom
 upravlja razmenom podataka unutar pocesora
 Upravlja fazama izvršenja naredbi
 Prihvatanje - Fetch
 Dekodiranje - Decode
 Izvršenje - Execute
.
CPU - organizacija
Registri
 Služe za interno pamćenje podataka.
 Obično su dužine jedne memorijske reči.

 Adresibilne koji su dostupni programeru

 Interne. Njihov sadržaj se inicijalizuje


automatski u toku izvršavanja programa
Osnovi registri
MD - Memorijski registar podataka (DR)
MA - Memorijski adresni registar (AR)
IR - Instrukcijski registar
BR – Bafer registar

PC – Programski brojač (Program counter)


SP – Pokazivač steka ( Stack Pointer)
SR – Statusni registar (Status register) (PSW)
AC – Akumutor (Accumulator) (ACC)
Programski dostupni registri
To su oni registri procesora kojima je
moguće pristupiti pomocu mašinskih
instrukcija, bilo da se njihov sadržaj samo
učitava ili je moguce vršiti i izmenu
sadržaja čita, tj. upis.
U instrukcijama koje pristupaju registrima,
registar se specificira ili eksplicitno,
nekom od operanada instrukkcije, ili
implicitno kodom operacije instrukcije.
Format instrukcija
Format instrukcija mora da bude takav
da obezbedi tri vrste informacija koje su
neophodne za izvršenje instrukcije. To
su:
 Koja operacija ce se izvršavati i tip
podataka
 Izvorišni i odredišni operand;

 Koja je sledeće instrukcija;


Format instrukcija
Format instrukcije zavisiod organizacije
procesora ali, uopšteno, mora da se sastoji iz
dva dela:
 Kod operacije ( šta da se uradi)

 Adresni deo ( sa kojim podacima i gde da


se smesti rezultat

Kod operacije Adresni deo


Tipovi instrukcija
Prema broju adresa u instrukcije se dele na :
 Nula adresne naredbe kod kojih kod operacije
opisuje šta, kako i gde treba uraditi ( PUSH, POP
naredbe za Stek);
 Jednoadresne kod kojih adresa jednog operanda
podrazumeva. Najčešce je to akumulator, a i
rezultat se smešta u akumulator;
 Dvoadresne, kod kojih se podrazumeva da se
rezultat smešta na unapred definisano mesto,
akumulator ili često jedan od operanada.;
 Troadresne se najčešće specificiraju operandi i
gde da se smesti rezultat.
Tipovi instrukcija
Podela prema broju adresa operanada
Tipovi instrukcija
Prema vrsti operaciaj koje izvršavaju
instrukcije se dele na:
 Aritmetičko logičke instrukcije;
 Instrukcije pomeranja;
 Instrukcije pisanja i/ili čitanja sadržaja u registima ili
memoriji;
 Instrukcije ulaza i izlaza prema okruženju;
 Instrukcije za rad sa stekom;
 Instrukcije za kontrolu toka programa;
 Instrukcije za rad sa potprogramima ( Call i Return);
 Inszrukcije za rad sa prekidima ( ProgInt –
programski prekid i Rti – return from interrupt).
Načini adresiranja
Neposredno
Direktno
 Registarsko
 Memorijsko

Indirektno
 Registsarsko
 Memorijski

Bazno
Indeksirano
Načini adresiranja
Neposredno adresiranje je kada se operand specifira u
kodu operacije.
 addA #17 - dodaj na sadržaj akumulaora broj 17.
Direktno - Kada se adresa operanda nalazi kao deo
adresnog dela instrukcije. Ako se operand nalazi u
nekom od registara podataka ili registara opšte
namene radi se o registarskom direktnom adresiranju.
Ako se podatak nalzi u memoriji radi se o memorijsko
direktnom adresiranju.
Načini adresiranja
Indirektno – kada je u operandu specificirano
mesto tj. adesa gde se nalazi sadržaj sa
kojim treba izvršiti instrukciju. U instrukciji je
data adresa adrese. Ako je u instrukciji data
adresa neke memorije onda se rdi o
memorijski indirektnom adresiranju.
Registarsko indirekno je adresiranje gde se u
instrukciji specificira u kom registru se nalazi
adresa memorije čiji sadržaj treba obraditi.
Način adresiranja
Bazno adresiranje – u instrukciji se
definiše samo “pomeraj” u odnosu na
adresu koja piše u nekim baznom registru.
Efektivan adresa se dobija sabiranjem
sadržaja baznog registra i pomeraja.
Neophodno je da procesor sadrži bazne
registre, i instrukcije koje omogućavaju
čitanje i upis sadžaja u ove bazne registre.
Načini adresiranja
Indeksirano adresiranje je slično sa baznim
adresienjem, samo se pomeraj računa u
odnosu na indeksne registre.
Indeksni registri mogu da imaju mogućnost
samo inkrementiranja i/ili dekrementiranja.
Takođe postoje naredbe za inkrementiranje ili
dekrementiranje indeksnih registara.
Kao i kod baznih registara i indeksni registari
imaju mogucnosti za upis i ćitanje sadržaja.
CISC i RISC
Dve familije mikroprocesora su nekoliko
godina vladale industrijom PC računara
Pentijumi firme Intel i PowerPC firme
Motorola. Ove centralne procesorske
jedinice bile su takodje prvi primeri dve
konkurentne procesorske arhitekture u
poslednje dve decenije - od kojih se prva
klasifikuje kao CISC, a druga kao RISC čip.
CISC
CISC (Complex Instruction Set Computer –
CISC) je tradicionalna računarska
arhitektura, u kojoj centralna procesorska
jedinica koristi mikrokôd da bi izvršavala
veoma širok skup instrukcija. Te instrukcije
mogu da budu promenljive dužine i da
koriste sve načine adresiranja, što zahteva
složenu elektroniku za njihovo dekodovanje.
RISC
RISC (Reduced Instruction Set Computer -
RISC) Centralne procesorske jedinice
računara sa smanjenim skupom instrukcija
imaju konstantnu dužinu instrukcija,
isključile su indirektni način adresiranja i
zadržale su samo one isntrukcije koje mogu
da se preklapaju i izvršavaju u jednom
mašinskom ciklusu ili manje od toga
Primer izvrsavanja
instrukcije
RESET
Postvljanje inicijalnih vrednosti registara
Najčešće početna vrednost je 00h .Može
da bude i drugačije na primer FFh
Takt 0 – Prihvatanje
naredbe
Sadržaj programskog brojača PC se
prebacuje u adresni registar AD.

Dekodiranje sadržaja adresnog registra


AD.

Selektovanje odgovarajuće memorijske


lokacije.
Takt 1 – Prihvatanje
naredbe
Čitanje sadržaja iz selektovane
memorijske ćelije u registar podataka
DR.

Povećavanje sadržaja programskog


brojača PC za 1.
Takt 2 – Dekodiranje
naredbe
Prebacivanje sadržaja iz registra
podataka DR u instrukcijski registar IR.

Dekodiranje naredbe na osnovu koda


naredbe.
Takt 3 – Izvršavanje
naredbe
(pribavljanje operanada)
Sadržaj programskog brojaća PC se
prebacuje u adresni registar AD.

Dekodiranje adrese.

Selekcija odgovarajuće memorijske ćelije.


Takt 4 - Izvršavanje
naredbe
(pribavljanje operanada)

Ćitanje sadržaja selektovane


memorijske ćelije u registar podataka
DR.

Povećavanej sadržaja programskog


brojaća za 1.
Takt 5 - Izvršavanje
naredbe
(pribavljanje operanada)

Sadržaj redistra podataka DR se


prebacuje u adresni registar AR.

Dekodiranje adrese.

Selekcija memorijske ćelije.


Takt 6 - Izvršavanje
naredbe
(neposredno izvršenje)

Prebacivanje sadržaja iz selektovane


meorijske ćelije u akumulator
Kontakt

dr Danilo Oklobdžija
 danilo.oklobdzija@vpskp.edu.rs
Hvala na pažnji

You might also like