2012 m. gruodžio 28 d., penktadienis

8. RISC procesorių architektūros skiriamieji bruožai



Tikslai:
1.       Suprasti RISC architektūros atsiradimo prielaidas.
2.      Atpažinti architektūrinius RISC procesorių ypatumus.
3.      Lyginti tarpusavyje RISC ir CISC procesorius.

Temos studijoms reikalingas laikas:      2 val. teorijos;
2 val. savarankiško darbo.

Yra dvi pagrindinės šiuolaikinių procesorių architektūros (tiksliau - koncepcijos), jas būtų galima pavadinti ir dviem skirtingom ideologijom. Viena vadinasi "CISC", kita - "RISC".
Ko gero, dažniausiai pateikiamas apibrėžimas būtų toks:
Ø                    "RISC" - tai "Reduced Instruction Set Computer" arba "Rational Instruction Set Computer" - kompiuteris, turintis mažą skaičių instrukcijų (iki kelių dešimčių) ir kurio instrukcijos parinktos apgalvotai.
Ø       "CISC" - "Complex Instruction Set Computer" - šis terminas atsirado tik kaip priešprieša "RISC" terminui ir reiškia kompiuterį, turintį labai daug instrukcijų, kurios pritaikytos veiksmų sekoms atlikti.
 "CISC" yra daug senesnė procesorių kūrimo pakraipa. Pagrindinė "CISC" idėja yra tokia: jei mes turime dažnai naudojamą procesoriaus komandų seką, mes galime pakeisti ją specialia procesoriaus instrukcija. Kadangi tokia komandų seka jau bus realizuota aparatiškai, ji bus įvykdyta greičiau. Iš esmės, pirmus du kompiuterių egzistavimo dešimtmečius visi jie buvo kuriami, remiantis tokia idėja. Norint sukurti pilnavertį kompiuterį, pilnai pakaktų keliolikos ar netgi kelių komandų. Tai jau būtų artima "RISC" idėjoms. Iš esmės, yra sukurtas netgi teorinis procesoriaus modelis, kuris gali vykdyti visų tipų uždavinius, naudodamas vieną komandą su vienu operandu! Taigi, kokios būtų konkretesnės "CISC" ar "RISC" pasirinkimo priežastys ir kuo šie procesoriai iš viso skiriasi?
"CISCarchitektūrų tipiški bruožai:
Ø      Instrukcijos gali būti skirtingų ilgių, tai leidžia efektyviau panaudoti operacinę atmintį.
Ø      Dažnai pasitaikančios instrukcijų sekos apjungiamos.
1.1 pav. Tranzistorių skaičiaus Intel ir RISC procesoriuose palyginimas
RISC (duomenų apdorojimas sutrumpintu komandų rinkiniu) idėja nėra nauja. Tai alternatyva įprastiems sudėtingo komandų rinkinio procesoriams CISC, sukurtiems Intel 8086, Motorolos MC68000 procesorių pagrindu.
Didžiausias CISC procesorių trūkumas - labai platus komandų rinkinys. Mikrokodo interpretatorius lėtai apdoroja dažniausiai naudojamas paprastas komandas. Be to pats mikroprocesorius dėl vykdomų sudėtingų komandų yra brangus, jo lyginamasis darbo našumas - mažas.
IBM 801 RISC mini kompiuteris pirmasis neturėjo tokio pobūdžio trūkumų. Lygiagretus paprastų komandų vykdymas lėmė tolygų ir patikimą procesoriaus darbą.

RISC procesoriai turi ir daugiau galimybių pagreitinti lygiagretaus apdorojimo kanalus. Tai suteikia unikalias galimybes optimizuoti RISC procesoriaus darbo našumą ir kaina.
1.2 pav. RISC procesoriaus sandara

RISC architektūros mikroprocesoriuose naudojamos tik R-R tipo komandos, kurias vykdant, operandai išrenkami tik iš bendros paskirties registrų. Juose ir fiksuojami operacijų rezultatai. Naudojami vienodi komandų formatai, nesudėtingi adresavimo režimai. Pirmuosiuose RISC procesoriuose komandų skaičius tesiekė 50, tačiau vėliau viršijo pradžioje numatytą 250 komandų ribą. 
8.1. "RISCarchitektūrų tipiški bruožai
1.Visos instrukcijos yra vienodo ilgio, taigi, nereikia papildomų operacijų jų ilgiui nustatyti.
2.Visos instrukcijos yra neišskaidomos ir minimalios. Dėl to nereikia naudoti papildomų mikroprograminių įrenginių, programa gali būti geriau optimizuota. Kai kuriuose "RISC" procesoriuose (pvz., pirmuosiuose "Sparc") atsisakyta netgi daugybos ir dalybos veiksmų.
3.Visos operacijos atliekamos tik su reikšmėmis, esančiomis registruose, taip išvengiant bet kokių galimų prastovų, atsirandančių, kreipiantis į operatyvinę atmintį.
4.Procesoriai turi kelis registrų rinkinius bei instrukcijas, leidžiančias procesoriaus darbo metu pakrauti registrų rinkinį duomenimis, tam kad paskui programa galėtų pereiti prie naujo registrų rinkinio, nesikreipdama į atmintį. Tai itin tipiškas "RISC" procesorių bruožas, kuris, nors ir nėra būtinas, tačiau egzistuoja praktiškai visosuose "RISC" procesoriuose. Toks registrų rinkinys vadinamas registrų langu.
5.Tipiški "RISC" procesoriai yra 32 ar daugiau bitų procesoriai (kai kada jie turi net 256 bitų registrus), nors yra sukurta ir "RISC" bruožus turinčių 16 bitų procesorių (pvz., "Siemens 80C166", turėjęs 16 16bitų registrų ir tipišką "RISC" architektūrą su registrų langu).
6.Visi "RISC" procesorių registrai yra bendros paskirties (žinoma, išskyrus komandų skaitiklį ar pan.). Aišku, yra ir daug "CISC" procesorių, turinčių bendros paskirties registrus (pvz., "Motorolla 68000"), tačiau specializuotų registrų (akumuliatorių) "RISCarchitektūrose paprastai nebūna.
7.Vektorinės instrukcijos - galimybė vienu metu vykdyti kelių operandų sekų apdorojimą pagal vieną ir tą patį operacijos kodą,  pvz., skaičių A sudėti su skaičiumi B ir paraleliai skaičių C sudėti su skaičiumi D. Tokio tipo veiksmai lengvai realizuojami "RISC" procesoriuose, kai "CISC" tam reikia papildomų schemų. Aišku, vektorinės instrukcijos naudojamos ne visuose "RISC" procesoriuose, tačiau jos pakankamai būdingos.
8."Matematiška" procesoriaus optimizacija - kuriant procesorių, jame neatsižvelgiama į programavimo kalbų ar kompiliatorių ypatybes, kaip ir į tai, kad kartais tenka rašyti programas asembleriu. Visas komandų rinkinys parenkamas taip, kad procesorius dirbtų maksimaliai efektyviai, nesvarbu, kiek sunku bebūtų jam programuoti, o optimizacija užsiima kompiliatoriai.
Populiariausi RISC procesoriai:
Ø      Alpha
Ø      ARM
Ø      MIPS
Ø      PowerPC
Ø      SPARC
Intel ir RISC architektūros procesorių charakteristikų palyginimas pateiktas lentelėje 1.1.

1.1 lentelė. Intel ir RISC architektūros procesorių charakteristikų palyginimas
Procesorius
Išleidimo laikas
Dažniai, MHz
Gamybos technologija, mikronais
Skilčių skaičius
Įvestascache’as
Išoriniocache’oskilčių skaičius
Atminties magistralės dažnis, MHz
SPECint95
SPEC
fp95
Intel x86
Pentium MMX
4Q'96
166-266
0.35
32
2x16
64
66
4-7
3-5
Pentium II
2Q'97
233-333
0.35
32
2x16
64
66
9-13
7-9
Deschutes
2Q'98
350-450
0.25
32
2x16
64
100
14-18
11-14
Katmai
1Q'99
400-500
0.25
32
2x32
64
100+
17-21
16-20
Willamette
4Q'99
500-600+
0.18
32
2x64
128
100+
28+
26+
Merced
4Q'99
600+
0.18
64
n/a
128
N/A
50+
70+


Digital Alpha
21164
1Q'96
400-600
0.35
64
2x8+96
128
66-133
12-19
18-29
21164PC
4Q'97
400-533
0.35
64
8+16
128
66-133
11-14
13-17
21164PC
2Q'98
600-800
0.25
64
16+32
128
66-266
17-23
21-29
21264
2Q'98
700-1000
0.25
64
2x64
128
200-500
50-70
70-100
21264PC
4Q'98
600-900
0.25
64
2x32
128
N/A
35-50
50-70
21364
4Q'98
1200+
0.18
64
N/A
N/A
N/A
140+
200+

Power architektūra mažai skiriasi nuo tradicinės RISC architektūros. Ji organizuojama superskaliarinio instrukcijų apdorojimo pagrindu (per vieną darbo taktą atliekamos kelios instrukcijos). Panaudotas slankaus kablelio operacijų apdorojimo blokas, dar sutrumpėjo instrukcijų vykdymo laikas. Dabar visa tai būdinga POWER architektūrai.
1.3 pav. IBM POWER4 procesoriaus sandara




1.4 pav. (A) PowerPC G5 procesoriaus architektūra. (B) PowerPC G5 procesoriaus topologija

Laikui bėgant, IBM tobulino RISC architektūrą. IBM POWER architektūrą papildė kelių rūšių sudėtinės instrukcijos, skirtos komandų apdorojimo keliui sutrumpinti. Pastebėta, kad CISC technologijoje procedūrinio apdorojimo metu naudojama labai daug papildomų instrukcijų skirtų registrams įkelti - iškelti. IBM įvedė naujas "load and story multiplekomandas, skirtas iš karto kelių registrų turiniams įrašyti į atmintinę ir atvirkščiai. Kitas aspektas, kuriuo POWER skiriasi nuo kitų RISC-ų yra tai , kad slankaus kablelio duomenys prilyginti fiksuoto kablelio duomenims.
Pastaruoju metu skirtumai tarp CISC ir RISC nyksta: daugelis RISC tipo procesorių įgyja sudėtingas komandas, kartais - netgi steką, tuo tarpu CISC procesoriai vis daugiau įgauna RISC architektūros bruožų.
8.3. SVK
1.              Kaip Jus vertinate CISC ir RISC technologijų vystimosi tendencijas?
2.              Kodėl CISC architektūros MP sunkiau realizuoti superskaliarinį duomenų apdorojimą?
3.              Kokias žinote naujas MP technologijas?
4.              Kodėl pastaruoju metu žinomos kompiuterinės technikos firmos buriasi į aljansus?
5.      Koks pagrindinis RISC architektūros procesorių trūkumas?
  1. Yra dvi pagrindinės šiuolaikinių procesorių architektūros (tiksliau - koncepcijos), jas būtų galima pavadinti ir dviem skirtingom ideologijom. Viena vadinasi "CISC", kita - "RISC".
  2. "RISC" - tai "Reduced Instruction Set Computer" arba "Rational Instruction Set Computer" - kompiuteris, turintis mažą skaičių instrukcijų (iki kelių dešimčių) ir kurio instrukcijos parinktos apgalvotai.
  3. "CISC" - "Complex Instruction Set Computer" - šis terminas atsirado tik kaip priešprieša "RISC" terminui ir reiškia kompiuterį, turintį labai daug instrukcijų, kurios pritaikytos veiksmų sekoms atlikti.
  4. "CISC" yra daug senesnė procesorių kūrimo pakraipa. Pagrindinė "CISC" idėja yra tokia: jei mes turime dažnai naudojamą procesoriaus komandų seką, mes galime pakeisti ją specialia procesoriaus instrukcija.
  5. Didžiausias CISC procesorių trūkumas - labai platus komandų rinkinys. Mikrokodo interpretatorius lėtai apdoroja dažniausiai naudojamas paprastas komandas.
  6. RISC procesoriai turi ir daugiau galimybių pagreitinti lygiagretaus apdorojimo kanalus. Tai suteikia unikalias galimybes optimizuoti RISC procesoriaus darbo našumą ir kaina.
  7. RISC architektūros mikroprocesoriuose naudojamos tik R-R tipo komandos, kurias vykdant, operandai išrenkami tik iš bendros paskirties registrų. Juose ir fiksuojami operacijų rezultatai. Naudojami vienodi komandų formatai, nesudėtingi adresavimo režimai.
  8. Power architektūra mažai skiriasi nuo tradicinės RISC architektūros. Ji organizuojama superskaliarinio instrukcijų apdorojimo pagrindu (per vieną darbo taktą atliekamos kelios instrukcijos). Panaudotas slankaus kablelio operacijų apdorojimo blokas, dar sutrumpėjo instrukcijų vykdymo laikas.
  9. Pastaruoju metu skirtumai tarp CISC ir RISC nyksta: daugelis RISC tipo procesorių įgyja sudėtingas komandas, kartais - netgi steką, tuo tarpu CISC procesoriai vis daugiau įgauna RISC architektūros bruožų

Komentarų nėra:

Rašyti komentarą

Etiketės