You are on page 1of 3

Ttel 2.

Utasts-vgrehajts
A CPU minden utastst apr lpsek sorozataknt hajt vgre. Ezt a folyamatot betlt-kdol-vgrehajt ciklusnak
nevezik:
1. A soron kvetkez utasts beolvassa a memribl az utastsregiszterbe.
2. Az utastsszmll belltsa a kvetkez utasts cmre.
3. A beolvasott utasts tpusnak meghatrozsa.
4. Ha az utasts memriabeli szt hasznl, a sz helynek megllaptsa.
5. Ha szksges, a sz beolvassa a CPU egy regiszterbe.
6. Az utasts vgrehajtsa.
7. Vissza az 1. pontra, a kvetkez utasts vgrehajtsnak megkezdse.

RISC s CISC
A 80-as vek elejn egyfajta hbor kerekedett a processzorok utastskszlett illeten. Akkoriban a CISC
szmtgpek uraltk a piacot, viszont nhny fejleszt a szmtgpek egyszerstsnek elvn indult el.
A RISC (Reduced Instruction Set Computer), avagy a cskkentett utastskszlet szmtgpek sokkal kevesebb,
tipikusan 50 utastssal rendelkeznek. Ezek gymond alap utastsok, amelyek az adatt egyszeri bejrsval, azaz
egy rajel alatt vgrehajthatak. Nem hasznlnak interpretlst, ezrt akr 10x gyorsabbak a CISC utastsok
vgrehajtsainl.
A CISC (Complex Instruction Set Computer), azaz a bvtett utastskszlet szmtgpek kszlete 200-300
utastsbl llt, amelynek az gymond bvtett utastsai rtelmezt hasznlnak. Emiatt lassabbak ezen utastsok
vgrehajtsai, azonban egy CISC utasts akr 4-5 RISC utastst helyettesthet.
A piacon vgl megtartottk helyket a CISC gpek egy olyan megoldst tallva, amelyben egy RISC elv mag egy
rajel alatt hajtja vgre az alap utastsokat, valamint a CISC elven interpretlja a komplikltabb utastsokat is.

Korszer szmtgpek tervezsi elvei


1. Minden utastst kzvetlenl a hardver hajtson vgre:
Az sszes gyakori utastst a hardvernek kell vgrehajtania s nem bonthatak fel interpretlt mikroutastsokra.
Az interpretcis szint kikszblsvel a legtbb utasts gyorsan vgrehajthat lesz.
2. Maximalizlni kell az utastsok kiadsnak temt:
Egy msodperc alatt a lehet legtbb utasts vgrehajtsnak megkezdse, mrtkegysg a MIPS (Millions of
Instructions Per Second). Ennek a teljestmnynek a nvelse a prhuzamossgban rejlik, azaz egyszerre tbb
utasts vgrehajtsban.
3. Az utastsok knnyen dekdolhatk legyenek:
Az utastsok indtsi temnek fontos tnyezj a dekdolsukhoz szksges id, ezrt szablyos, viszonylag
egyforma hossz s minl kevesebb mezbl ll utastsokra van szksg.
4. Csak a betlt s trol utastsok hivatkozzanak a memrira:
A memriamveletek sok idt vehetnek ignybe, ezrt kifizetdbb ms utastsokkal tfedve vgrehajtani ket.
Ez azt jelenti, hogy csak a LOAD s STORE parancsok hivatkozhatnak a memrira, az sszes tbbi utasts csak
regiszterekkel dolgozhat.
5. Sok regiszter kell:
Mivel a memriamveletek lassak, elegend regiszter kell ahhoz, hogy a beolvasott sz a regiszterben
maradhasson mindaddig, mg szksg van r. Elkerlend, hogy a memriba kelljen ezen adatokat menteni.

Ttel 2.2

Utastsszint prhuzamossg
A gpek teljestmnynek nvelsre egy hatkony mdszer a prhuzamossg elve, amelynek utastsszint
megoldsa azt jelenti, hogy msodpercenknt tbb utastst tudjunk kiadni. Ehhez egy elolvassi puffer
(prefetch buffer) regiszterkszletet hasznltak, gy a soron kvetkez utastsok beolvassra nem kellett
megvrni a memriamvelet befejezst. A folyamatot, amely betlti a soron kvetkez utastst elolvassnak
nevezzk. Az elolvass az utasts vgrehajtst ezzel kt rszre osztja: beolvass s tulajndonkppeni
vgrehajtsra.
A csvezetk ezt a stratgit tovbb viszi, mg tbb rszre bontja s a folyamat minden rszt kln, egyszerre
mkd hardverelem kezeli.

A prhuzamos csvezetk stratgija a kvetkez: az elolvas egyszerre kt (vagy tbb) utastst olvas be, majd
kln csvezetkre tovbbtja ket. Kln ALU-val rendelkeznek, gy ha nem ugyanazt az erforrst, vagy nem
egyms eredmnyeivel dolgoznak, egymstl fggetlenl tudnak mkdni. Az esetleges konfliktusokat a
fordtprogramoknak kell megelznie, vagy utlagosan hardvernek kell felismernie s kikszblnie.

Szuperskalris architektra megvalstsban egy csvezetket hasznlnak, viszont tbb funkcionlis egysget is
tartalmaz. Ezen stratgij processzorok tbb, gyakran 4-6 utasts vgrehajtst kezdik el egyetlen rajel alatt. A
terhels a funkcionlis egysgek kztt oszlik meg, a beolvass sorn tbb utasts is beolvasdik. A funkcionlis
egysgek tbb rajelet is ignyelnek a vgrehajtshoz, mgis hatkony mdszer.

Ttel 2.2

Processzorszint prhuzamossg
A prhuzamossg elvnek msik megoldsa a processzorszint prhuzamossg, amely jelenleg az egyedli mdja
annak, hogy akr 50-100 szorosra nveljk a szmtgp teljestmnyt. Ebben az esetben tbb CPU-t tartalmaz
szmtgpet terveznk.
Tmbszmtgpek
Ide soroljuk a tmbprocesszort s a vektorprocesszort. Ezek nagyszm egyforma processzorbl llnak, amelyet
kzs vezrlegysg felgyel s ugyanazt a mveletsorozatot kpesek elvgezni klnbz adathalmazokon. Oyan
feladatokra alkalmasak mint pl. kt vektor sszeadsa, viszont mskpp hajtjk ezt vgre.
A tmbprocesszor ezt gy vgzi el, hogy a vektor elemszmval megegyez szm sszeadegysget tartalmaz, a
vektorprocesszor viszont tbb regiszterbl ll vektorregisztereket hasznl. Ezeket sorosan tlti fel a memribl s
a vektorsszeads mvelet sorn az eredmnyt vektorknt, a vektorregiszterben trolja. Tmbprocesszorokat
nemigen gyrtanak.
Multiprocesszorok
Tbb, egy memrit hasznl, teljes CPU-t tartalmaz prhuzamos rendszer. Mivel ugyanazon memrit
olvassk/rjk, nagy sszehangoltsgra van szksg. Tbb implementci is lehetsges:
Az egyik, ha egy snre csatlakoztatjuk az sszes processzort s a kzs memrit. A msik megolds sorn helyi
memrival is rendelkeznek a CPU-k. A CPU-k ezen sszehangolst szorosan kapcsoltnak jellemzik.
Multiszmtgpek
Igazn nagy szm CPU-bl (>256) ll szmtgpet igen nehz megpteni, mivel a kzs memrival nehz
sszektni. A multiszmtgpek sok, sajt memrival rendelkez szmtgpek rendszere. Ezek lazn kapcsolt
CPU-k, amelyek zenetek kldsvel kommuniklnak egymssal.
Nagy rendszerekben tbbdimenzis rcs, fa, vagy gyr alakban ktik ssze ket akr 10000-es szmban.