Upload
ninoslavjovan8994
View
820
Download
7
Embed Size (px)
Citation preview
Univerzitet u Blacu
Visoka poslovna škola strukovnih studija
Predmet: Uvod u programiranje
SEMINARSKI RAD
Tema:CPU (Central Processing Unit)
Profesor: Studenti:Mr. Danilo Oklobdžija Miloš Bogićević 80/09
Jovanović Ninoslav 78/09
1
Sadrzaj:
1. Istorija …………………………………………………………….. 3
2. Glavne karakteristike procesora …………………………………….. 4
3. Podela procesora …………………………………………………….. 4
3.1 Po tome koliko instrukcija i sa koliko podataka rade jednom „koraku“ ……... 5
3.2 Po arhitekturi i skupu instrukcija se dele i na …………………………….. 6
3.3 Ostale podele : ……………………………………..…………………… 7
4. Radni takt procesora …………………………………………….. 8
5. Organizacija procesora …………………………………………….. 9
2
Procesor (u računarstvu) je izvršna jedinica koja prima i izvršava
instrukcije pročitane iz odgovarajuće memorije. Kada se kaže samo „procesor“
najčešće se misli na centralni procesor (central processing unit — CPU,
centralna procesorska jedinica), ali postoje i procesori specijalnih namena kao
što su procesori signala, razni grafički procesori, itd. Sam po sebi procesor ne
čini računar, ali je jedan od najvažnijih delova svakog računara.
1. Istorija
Prvi procesori su bili mehanički i praktično nisu bili zaseban deo računara (npr.
kakve je projektovao Čarls Bebidž) zatim elektromehanički (relejni) pa na bazi
elektronskih vakuumskih cevi i bili su jako veliki (obično su računari zauzimali
cele prostorije ili čak spratove). Do značajnog smanjenja dimenzija i povećanja
performansi došlo je upotrebom tranzistora (miniprocesori) i, u drugoj polovini 20.
veka, integralnih kola (mikroprocesori).
3
2. Glavne Karakteristike procesora
Brzina procesora izrazava se brzinom takta tj. broj perioda clock signala
(clock speed). Ona se meri megahercima (1MHz = koliko se impulsa proizvedu u
sekundi za dati processor) ili MIPS-ovima (million instruction per second)
Brzina procesora zavisi direktno od:
- dužine procesorske reči (binarna reč koja se istovremeno prenosi i obrađuje
unutar procesora)
- širine magistrala
- frekvencije procesorskog takta
- veličine Cache memorije
- matematičkog koprocesora
- širina podataka
- veličina registara (Internal Register Size)
- širina magistrale podataka (Data I/O Bus Width)
4
- širina adresnog prostora (Memory Address Bus Width).
3. Podela procesora
- po širini magistrale podataka, adresne magistrale,...
1. 4-bitni (Intel 4004)
2. 8-bitni (Z80, 8086)
3. 16-bitni (80286)
4. 32-bitni (svi procesori bazirani na 80x86 arhitekturi počev od
80386)
5. 64-bitni (procesori bazirani na x64 arhitekturi)
- po tehnologiji izrade, stepenu integracije
90nm, 65nm, 55nm, 45nm
- prema tome da li imaju zasebne magistrale za programsku memoriju i memoriju
za podatke ili koriste jednu
- harvard aritektura (zasebna magistrala)
- Von Neumannova aritektura (koriste jednu magistralu)
3.1 Po tome koliko instrukcija i sa koliko podataka rade jednom „koraku“:
Ovu podelu je 1972. godine predložio Michael J. Flynn, i po njemu se ona naziva
„Flinova taksonomija“.
Podela procesora na:
- jednu instrukciju sa jednim podatkom (tzv. skalarni procesori, eng: SISD —
Single Instruction Single Data). Podvarijanta (super-skalarni) mogu da u toku
izvršavanja odrede koje parove instrukcija i podataka mogu da izvrše u isto
vreme i to i učine.
5
-jednu instrukciju izvršavaju na više podataka odjednom (tzv. vektorski procesori,
eng: SIMD — Single Instruction Multiple Data)
-izvršavaju više nezavisnih instrukcija, svaku na svojim podacima (eng: MIMD —
Multiple Instruction Multiple Data)
-izvršavaju više nezavisnih instrukcija, svaku na jednom, zajedničkom,
podatku(eng: MISD — Multiple Instruction Single Data)
Iako se SIMD nekada koristio uglavnom na vektorskim superkompjuterima poput
onih koje je 70-ih godina 20. veka popularisao Cray, potreba za obradom
multimedijalnih podataka je dovela do dodavanja SIMD instrukcija u arhitekturu
procesora opšte namene, trend koji je izrodio tehnologije kao što su PowerPC-
jev AltiVec, Intel-ovi MMX, SSE, SSE2, SSE3 and SSE4, AMD-ov 3DNow!,
SPARC-ov VIS, Sun-ov MAJC, PA-RISC-ov MAX i MIPS-ovi MDMX i MIPS-3D.
Flinova taksonomija danas nije od značaja kao praktična podela, jer moderni
računarski sistemi često potpadaju u nekoliko (pa čak i sve četiri!) kategorije ove
taksonomije. Ilustrativan primer bi bio neki dual Pentium 4 Xeon sistem je u
osnovi x86 SISD arhitektura sa SIMD proširenjima (MMX, SSE, SSE2...), radi
simetrično multiprocesiranje na dva odvojena mikroprocesora (MIMD), a svaki od
njih sadrži jezgro sa pajplajn arhitekturom koja se može shvatiti kao MISD (jer
svaki korak u pajplajnu operiše nad istim podatkom — instrukcijom koja se
izvršava).
3.2 Po arhitekturi i skupu instrukcija se dele i na:
Procesore sa kompleksnim skupom instrukcija, u kojima se svaka kompleksna
instrukcija interno prevodi u niz mikrokod instrukcija (eng: CISC — Complex
Instruction Set Computer). Ovakav skup instrukcija je obično „ugodniji“ za
programiranje, ali generalno rezultuje manjom brzinom izvršavanja. Svakako
6
značajan primer CISC arhitekture je Intelova (i AMD-ova) 80x86 familija, a
ovakav dizajn su koristili i CDC 6600, System/360, VAX, PDP-11 i Motorola
68000.
Procesore sa redukovanim skupom instrukcija, u kojima se instrukcije ne
prevode već su direktno podržane (eng: RISC — Reduced Instruction Set
Computer). Ovakav skup instrukcija je obično „nezgodniji“ za programiranje ali
generalno rezultuje većom brzinom izvršavanja. Povećanje veličine radne
memorije, kao i razvoj kompajlera su doveli do toga da je danas RISC
opšteprihvaćena filozofija u dizajnu mikroprocesora. Čak i moderni Intelovi i
AMD-ovi procesori, iako programeru izgledaju kao CISC mašine, interno razbijaju
CISC instrukcije u nizove internih RISC instrukcija (mikrooperacija) koje se zatim
izvršavaju na superskalarnom jezgru.
Podela na RISC i CISC je opšteprihvaćena ali postoje i neke manje zvanične
podvarijante i kombinacije:
Procesore sa jako redukovanim skupom instrukcija (eng: ERISC — Extremely
Reduced Instruction Set Computer).
Procesore sa "proširenim" redukovanim skupom instrukcija, u kojima se većina
instrukcija ne prevodi već su direktno podržane ali sadrže i kompleksne
instrukcije (eng: ERISC — Extended Reduced Instruction Set Computer).
Ovakav skup instrukcija je i ugodan za programiranje i rezultuje većom brzinom
izvršavanja ali sam procesor postaje značajno kompleksniji. Napomena: ova
kategorizacije nije potpuno zvanična. Jedno vreme su poboljšane verzije CISC
procesora bile približene RISC arhitekturi i bile klasifikovane kao „ERISC“.
3.3 Ostale podele :
-po širini adresne magistrale, magistrale podataka, itd. (recimo, 4004 je 4-bitni procesor, Z80 8-bitni, MC68000 16-bitni itd.)-po tehnologiji izrade i stepenu integracije (za mikroprocesore)-po tome da li imaju zasebne magistrale za programsku memoriju i memoriju za
7
podatke (pogledajte harvardsku arhitekturu) ili koriste jednu (pogledajte fon Nojmanovu arhitekturu)
4. Radni takt procesora
- clock (oscilator) – generiše impulse odredjene frekvencije.
- CPU je sačinjen od sinhronizovanih elektronskih kola. Kao signal sinhornizacije
koristi se clock signal, u obliku periodičnog pravougaonog talasa.
- period clock signala (radni takt, radni ciklus) bira se na osnovu maksimalnog
vremena (u najgorem slučaju) potrebnog da neka elektronska kola završe svoj
deo zadatka.
- prednost sinhronizacije je u pojednostavljenju dizajna CPU i
smanjenju broja komponenti.
- nedostatak je što svi elementi CPU moraju da čekaju na najsporije delove da
završe svoje operacije. Ovaj nedostatak se ublažuje implementacijama CPU
zasnovanim na različitim tipovima paralelne obrade.
- overklokovanje (overclock) – povećanje radnog takta procesora iznad vrednosti
koje je propisao proizvodjač.
- procesor se više zagreva a može i da radi nekorektno
8
5. Organizacija procesora
Struktura CPU-a
Glavne strukturne komponente CPU-a su:
- Upravljačka jedinica - upravlja radom CPU-a a shodno tome i radom računara.
- Staza podatka koja obuhvata
* Aritmetičko logičku jedinicu (ALU) - obavlja obradu podataka, tj. izvršava
različite aritmetičke i logičke funkcije.
* Registre - obezbeđuju memorijski medijum unutar CPU-a.
- Interna CPU magistrala - obezbeđuje mehanizam preko koga se ostvaruje
komunikacija između upravljačke jedinice, ALU i registara.
Centralni procesori obično sadrže:
9
Upravljačku jedinicu (eng: control unit), koja upravlja radom ostalih komponenti,
konkretno operacione jedinice. U ranim danima računarstva se funkcionalnost
upravljačke jedinice mahom realizovala hardverski (ožičena realizacija), dok se
danas tipično koristi mikroprogramska realizacija, gde se rad procesora,
uključujući i njegov set instrukcija, implementira kroz mikroprogram.
Operacionu jedinicu (eng: execution unit), koja tipično sadrži: Aritmetičko-logičku
jedinicu (eng: ALU - Arithmetic logic unit), koja vrši aritmetičke i logičke operacije.
Registre, koji služe za privremeno skladištenje podataka pri izvršavanju
programa (registri opšte namene), kao i za čuvanje informacija o trenutnom
stanju programa koji se izvršava (programski brojač, pokazivač steka, prihvatni
registar instrukcije, programska statusna reč i dr.)
Podsistem za vezivanje sa memorijom i periferijama
Moderniji procesori imaju i jedinice za rad sa brojevima u pokretnom zarezu, brzu
internu memoriju itd. Super-skalarni procesori imaju i po više operacionih
jedinica. što im omogućava da izvršavaju nekoliko instrukcija istovremeno (kada
one nisu međusobno zavisne).
Proizvođači mikroprocesora
Postoji veći broj proizvođača mikroprocesora, a među njima se ističu: AMD, Intel,
MOTOROLA, IBM i Transmeta.
10