Riskiarhitektuuri plokkskeem. CISC ja RISC arhitektuuride võrdlev analüüs. Vähendatud juhiskomplekti arhitektuur

See on seade, mis on üks või mitu suurt integraallülitust (LSI), mis täidavad arvutiprotsessori funktsioone.Klassikaline arvutusseade koosneb aritmeetilisest ühikust (AU), juhtplokist (CU), mäluseadmest (RAM) ja sisend-väljundseade (I/O).

Protsessoreid on erineva arhitektuuriga.

CISC(Eng. Complex Instruction Set Computing) – protsessorite projekteerimise kontseptsioon, mida iseloomustavad järgmised omadused:

suur hulk erineva vormingu ja pikkusega käske;

suure hulga erinevate adresseerimisviiside kasutuselevõtt;

Sellel on keerukas juhiste kodeering.

CISC-protsessor peab tegelema keerukamate ja ebavõrdse pikkusega käskudega. Ühe CISC-käsu täitmine võib olla kiirem, kuid mitme sellise käsu paralleelne töötlemine on keerulisem.

Programmide silumise hõlbustamine assembleris tähendab mikroprotsessoriüksuse risutamist sõlmedega. Jõudluse parandamiseks tuleb tõsta taktsagedust ja integratsiooniastet, mistõttu on vaja täiustada tehnoloogiat ja sellest tulenevalt ka kallimat tootmist.

CISC arhitektuuri eelised

  1. Käsukomplektide kompaktsus vähendab programmide suurust ja mälupöörduste arvu.
  2. Juhised sisaldavad kõrgetasemeliste tuge.

CISC arhitektuuri puudused

  1. Ebaregulaarne käsuvoog.
  2. Kõrge riistvara maksumus.
  3. Arvutuste paralleelsusega seotud raskused.

RISC(Vähendatud käsukomplekti arvutamine). Vähendatud käsukomplekti protsessor. Käsusüsteem on lihtsustatud. Kõik käsud on samas vormingus lihtsa kodeeringuga. Mällu pääseb ligi laadimis- ja kirjutamiskäskude kaudu, ülejäänud on register-register tüüpi käsud. CPU-sse saabuv käsk on juba jagatud väljadeks ega vaja täiendavat dekrüpteerimist.

Osa kristallist vabastatakse kaasamiseks lisakomponendid. Integratsiooniaste on madalam kui eelmises arhitektuurse projektis, seega võib suurematel kiirustel taluda madalamaid taktsagedusi. Käsk ajab RAM-i vähem segamini, CPU on odavam. Need arhitektuurid ei ühildu tarkvaraga. RISC-programmide silumine on keerulisem. Seda tehnoloogiat võib rakendada tarkvaraga ühilduvas CISC-tehnoloogias (nt superskalaartehnoloogia).

Kuna RISC-juhised on lihtsad, vajavad need vähem loogilised elemendid, mis lõppkokkuvõttes vähendab protsessori kulusid. Aga enamus tarkvara täna spetsiaalselt Inteli CISC-protsessorite jaoks kirjutatud ja koostatud. RISC-arhitektuuri kasutamiseks tuleb praegused programmid uuesti kompileerida ja mõnikord ka ümber kirjutada.

RISC arhitektuuri eelised

1. Vähendage käsuvoo ebakorrapärasust

2.ruumilise paralleelsusega rikastamine

RISC arhitektuuri puudused

MISC(Mitmeotstarbeline juhiskomplekti arvuti). Elemendi alus koosneb kahest osast, mis on kas valmistatud eraldi korpustes või kombineeritud. Põhiosa on RISC-protsessor, mida saab laiendada, ühendades teise osa - mikroprogrammi juht-ROM-i. Süsteem omandab CISC omadused. Põhikäsud töötavad RISC-protsessoris, samas kui laienduskäsud tõlgitakse püsivara aadressiks. RISC-protsessor täidab kõik käsud ühe taktitsükli jooksul ja teine ​​osa on samaväärne keeruka käsukomplektiga protsessoriga. ROM-i olemasolu kõrvaldab RISC-i puuduse, mis väljendub selles, et keelest koostamisel kõrge tase mikrokood genereeritakse standardfunktsioonide teegist, mis võtab palju RAM-i ruumi. Kuna püsivara on juba dekrüptitud ja programmeerijale avatud, ei ole dekrüpteerimiseks vaja RAM-i juurdepääsuaega.

Te ei saa teisi sundida - töötage ise. Kaua aega tagasi palusin Konstantin Afanasjevil rääkida lugejatele nendest protsessoritest, mis pole Pentium. "Teeme ära," vastas Afanasjev. Siin me seda teeme.

Nagu teate, on iga kaasaegse personaalarvuti südameks mikroprotsessor. Paljude jaoks seostub see sõna ühemõtteliselt Inteliga, mis andis kunagi välja laialt levinud 8086 protsessori ja on sellest ajast peale loorberitele puhkama jäänud, luues sellest üha võimsamaid versioone. Valgus pole aga sellele perele lähenenud ja Pentium II protsessor pole sugugi evolutsiooni kroon, mille vaheetapp enne mida on väidetavalt inimene.

Mikroarvutite lühike, kuid kiire areng tõi kaasa kahe domineeriva evolutsiooniharu – Intel X86 ja RISC – tekkimise. Esimene ilmus varem ja suutis hõivata märkimisväärse turuosa, kuid 80ndate keskel välja töötatud RISC-arvutid osutusid palju võimsamaks ja lõigasid välja suure jõudlusega süsteemide niši.

Protsessoreid, mis ei kuulu RISC (Reduced Instruction Set Computing) klassi, nimetatakse CISC-ks (Complex ISC). Juhtus nii, et neist pääses konkurentsist oma kogunenud programmide pagasiga üle vaid perekond X86 ja isegi siis X86 perekonna kaasaegsed esindajad ( Pentium Pro, Pentium II, K5, K6) kasutavad sisemiselt sama RISC-arhitektuuri. Seetõttu võib RISC-i nimetada uueks ehk aastate möödudes protsessorite arengu järgmiseks etapiks.

Ja see oli nii. 1980. aastatel hakkas mikroprotsessorite jõudlust suurendama keerukas keskjuhtimisseade, mis oli seotud suure hulga traditsioonilistelt arvutitelt päritud juhistega. Teoreetilised uuringud on näidanud, et juhiste komplekti vähendamine kõige sagedamini kasutatavate juhiste miinimumini võimaldab programmi mahu mõningase suurenemise tõttu protsessorit oluliselt lihtsustada.

Seejärel sõnastati RISC põhiprintsiibid:

  1. Iga käsk, olenemata selle tüübist, täidetakse ühe taktitsükli jooksul.
  2. Kõik käsud peavad olema ühepikkused ja kasutama minimaalselt aadressivorminguid.
  3. Kogu andmetöötlus toimub protsessoriregistrites, juurdepääs mälule toimub ainult kirjutamis- ja lugemistoimingute tegemisel.
  4. Käsusüsteem peab pakkuma kõrgetasemeliste keelte tuge.

Selle tulemusena vabanenud kristalli ala kasutati protsessorite võimsuse ja jõudluse suurendamiseks. Näiteks 1985. aastal välja antud 32-bitine ARM (Advanced RISC Machine) protsessor, millel oli oluliselt suurem jõudlus, oli integratsiooniastmelt võrreldav 8-bitise Intel 8080-ga (25 tuhat transistorit). Ja nüüd on 64 bitti RISC-protsessorite jaoks norm ja X86 jaoks on see kauge tulevik.

Sama säästetud ruumi kiibil kasutati kõikvõimalikeks nippideks andmetöötluse kiiruse suurendamiseks. Arvutite eksisteerimise poole sajandi jooksul on välja töötatud palju selliseid kellasid ja vilesid, mida CISC-protsessoris polnud lihtsalt kuhugi paigutada.

RISC eeliseks ei ole ainult ruumi kokkuhoid. Registrite aktiivne kasutamine vähendab mälupöörete arvu miinimumini. Registrite laadimine, see tähendab registrite ja mälu vaheline vahetus, toimub kahel erineval viisil - riist- ja tarkvara.

SPARC protsessorites kasutatav riistvara eeldab 138 registri rakendamist, millest kümme on alati nähtavad ja ülejäänud 128 on jagatud kaheksaks kattuvaks aknaks, mis alamprogrammide kutsumisel üksteist muudavad. Sellist skeemi nimetatakse MORS-iks (Multiple Overlapping Register Sets) või Rolodexiks.

Sel juhul kutsutakse protseduur välja mälule ligi pääsemata, parameetrid juhitakse läbi kahe akna ühisregistrite, kuid üheksanda protseduuri väljakutsumiseks tuleb kasutada keerulisi tehnilisi lahendusi ning konteksti vahetamise protsessides salvestada mällu 138 registrit. multitegumtöötlussüsteemis põhjustab üldse ettearvamatut viivitust.

Seetõttu kasutab enamik RISC-protsessoreid tarkvarapõhist mälu juurdepääsu juhtimist. Registrite arv on väike (tavaliselt 32), protseduurikutsed kasutavad tavalist pinumehhanismi. Eeldatakse, et vahemälu kasutab endiselt juurdepääsu mälule. Registrite ratsionaalse kasutamise ülesanne on pandud koostajale.

RISC-arhitektuuri iseloomustab üldiselt kõigi ja kõigi ülesannete määramine kompilaatorile. Sama programmi töötamise kiirus RISC-protsessoris võib olenevalt kompilaatorist erineda mitu korda ja käsitsi optimeerimine võib programmifragmendi tööaega veel poole võrra vähendada.

RISC-i puuduseks on ka koodi suuruse suurenemine umbes poolteist korda vähenenud juhiste komplekti ja nende fikseeritud pikkuse tõttu. Kuid meie mõõtmata megabaitide ajal pole see liiga kriitiline - multimeedia areng on viinud selleni, et töödeldavate andmete hulk on muutunud ilmselgelt suuremaks kui koodi suurus ja jõudlus ei ole definitsiooni järgi piisav (vt. epigraaf).

Dmitri BORODAENKO,
[e-postiga kaitstud]

Kes vajab 64-bitist arvutit

Enne kui saime Windows 95 ja 32-bitise andmetöötlusega hakkama, selgus, et sellestki ei piisa. Võidujooks bittide arvu pärast jätkub ja siinkohal pole punkt ainult ja mitte niivõrd saadaolevas aadressiruumis. Just suurte masinate ajal tõestati, et 32-bitine esitus on täisarvude arvutamiseks optimaalne ning 64 bitti on vajalik ja piisav ujukomaarvude jaoks.

Seetõttu saab täistäpsete reaalarvudega 32-bitine protsessor hakkama ainult kahe käiguga, mis RISC-arhitektuuri puhul, mille vormingute minimeerimine on vajalik vähemalt ebamugav. Töödeldud andmete bitisügavuse kahekordistamine nõuab protsessori bitisügavuse kahekordistamist või taktsageduse neljakordistamist. See on osaliselt põhjus, miks 32-bitine PowerPC jääb ujukomaarvutustes oma täisväärtuslikest 64-bitistest kolleegidest maha.

20. sajandi 70ndatel pakkusid teadlased välja tollal revolutsioonilise idee luua mikroprotsessor, mis "mõistaks" vaid minimaalset võimalikku arvu käsklusi.

RISC-protsessori (Reduced Instruction Set Computer) kontseptsioon sündis selle tulemusena praktiline uurimine käskude kasutamise sagedus programmeerijate poolt, viidi läbi 70ndatel USA-s ja Inglismaal. Nende vahetu tulemus on tuntud "80/20 reegel": 80% tüüpilise koodi koodist. rakendusprogramm Kasutatakse vaid 20% kõige lihtsamatest masinajuhistest kogu saadaolevast komplektist. elektroonikaseadme mikrokontrolleri protsessor

Esimese "tõelise" 31-juhise RISC-protsessori lõi David Patterson Berkeley ülikoolis, millele järgnes 39-juhisega protsessor. Nende hulka kuulus 20-50 tuhat transistorit. Pattersoni töö vilju kasutas Sun Microsystems, kes töötas 1970. aastate lõpus välja 75-juhise SPARC arhitektuuri. 1981. aastal käivitas Stanfordi ülikool MIPS-projekti, et toota 39-juhisega RISC-protsessor. Selle tulemusel asutati 80ndate keskel Mips Computer Corporation ja järgmine protsessor kavandati 74 juhisega.

Sõltumatu ettevõtte IDC andmetel hõivas 1992. aastal SPARC arhitektuur 56% turust, järgnesid MIPS - 15% ja PA-RISC - 12,2%.

Umbes sama Inteli aeg töötas välja 80386 seeria, mis on IA-32 perekonna uusimad "tõelised" CISC protsessorid. Viimati saavutati jõudluse paranemine ainult protsessori arhitektuuri keerukuse suurendamisega: 16-bitisest muutus see 32-bitiseks, toetati täiendavaid riistvarakomponente Virtuaalne mälu ja lisas mitmeid uusi käske.

RISC-protsessorite peamised omadused:

  • - Vähendatud käsukomplekt (80-lt 150-le käsule).
  • - Enamik käske täidetakse 1 tsükliga.
  • - Suur hulk üldotstarbelisi registreid.
  • - jäikade mitmeastmeliste konveierite olemasolu.
  • - Kõik käsud on lihtsa vorminguga ja adresseerimismeetodeid kasutatakse vähe.
  • - Eraldi mahuka vahemälu olemasolu.
  • - analüüsivate optimeerivate kompilaatorite kasutamine allikas ja muuta osaliselt käskude järjekorda.

Kolmanda põlvkonna RISC protsessorid

Suurimad RISC-protsessorite arendajad on Sun Microsystems (SPARC - Ultra SPARC arhitektuur), IBM (mitmekiibilised Power-protsessorid, ühe kiibiga PowerPC - PowerPC 620), Digital Equipment (Alpha - Alpha 21164), Mips Technologies (Rxx00 - R 10000). perekond), samuti Hewlett-Packard (PA-RISC arhitektuur - PA-8000).

Kõik kolmanda põlvkonna RISC protsessorid:

  • - on 64-bitised ja superskalaarsed (ühes tsüklis käivitatakse vähemalt 4 käsku);
  • - omama sisseehitatud ujukoma aritmeetilise torujuhtme ühikuid;
  • - omama mitmetasandilist vahemälu. Enamik RISC-protsessoreid salvestab vahemällu eelnevalt dekrüpteeritud juhised;
  • - toodetud CMOS-tehnoloogial 4 metallisatsioonikihiga.

Andmetöötluseks kasutatakse dünaamilist haru ennustamise algoritmi ja registri ümberjaotamise meetodit, mis võimaldab realiseerida käskude täitmist korrast ära.

RISC-protsessorite jõudluse kasv saavutatakse taktsageduse suurendamise ja kristallahela keerulisemaks muutmisega. Esimese suuna esindajad on DEC-i Alpha protsessorid, kõige keerulisemad on Hewlett-Packardi protsessorid.

Masinakäskude hulga vähendamine RISC-arhitektuuris võimaldas paigutada arvutustuuma kiibile suure hulga üldotstarbelisi registreid. Üldotstarbeliste registrite arvu suurenemine võimaldas minimeerida juurdepääsu aeglasele RAM-ile, jättes RAM-iga töötamiseks ainult andmete lugemise RAM-ist registrisse ja andmete kirjutamise registrist RAM-i. üldotstarbelised registrid kui operandid.

RISC-arhitektuuri peamised eelised on järgmised omadused:

  • - Suur numberüldregistrid.
  • - Universaalne formaat kõik mikrooperatsioonid.
  • - Kõigi masina käskude võrdne täitmise aeg.
  • - Peaaegu kõik andmeedastustoimingud tehakse marsruudiregistris - registris.

Kõigi masinakäskude võrdne täitmisaeg võimaldab käskude voogu töödelda konveieripõhiselt, s.t. riistvaraosade sünkroonimine toimub, võttes arvesse juhtimise jadaülekannet ühelt riistvaraplokk teisele.

Riistvaraplokid RISC-arhitektuuris:

Käskude laadimise plokk sisaldab järgmisi komponente: käskude laadimisüksus käsumälust, käsuregister, kuhu käsk paigutatakse pärast selle toomist, ja käskude dekodeerimisüksus. Seda etappi nimetatakse juhiste toomise etapiks.

Üldotstarbelised registrid koos registri juhtseadmetega moodustavad käsuoperandide lugemise eest vastutava konveieri teise etapi. Operandid saab salvestada käsusse endasse või mõnda üldotstarbelisse registrisse. Seda etappi nimetatakse operandi toomise etapiks.

Aritmeetiline loogikaüksus ja, kui see on selles arhitektuuris rakendatud, siis akumulaator koos juhtimisloogikaga, mis käsuregistri sisu põhjal määrab teostatava mikrooperatsiooni tüübi. Lisaks käskude registrile võib tingimusliku või tingimusteta hüppe mikrooperatsioonide sooritamisel andmeallikaks olla programmiloendur. Seda etappi nimetatakse konveieri teostamise etapiks.

Üldotstarbeliste registrite komplekt, kirjutamisloogika ja mõnikord ka RAM moodustavad andmete salvestamise etapi. Selles etapis kirjutatakse käskude täitmise tulemus üldotstarbelistesse registritesse või põhimällu.

RISC-arhitektuuri väljatöötamise ajaks sai aga CISC-arhitektuuril põhinev Inteli x86 arhitektuur mikroprotsessorite de facto tööstusstandardiks. Suure hulga alla kirjutatud programmide olemasolu Inteli arhitektuur x86, muutis arvutite massilise ülemineku RISC-arhitektuurile võimatuks. Sel põhjusel olid mikrokontrollerid RISC-arhitektuuri peamine kasutusvaldkond, kuna need ei olnud seotud olemasoleva tarkvaraga. Lisaks hakkasid mõned arvutitootjad eesotsas IBM-iga tootma ka RISC-arhitektuurile ehitatud arvuteid, kuid tarkvaraline ühildumatus Inteli x86 ja RISC-arhitektuuri vahel piiras suuresti viimase levikut.

RISC-arhitektuuri eelised olid aga nii olulised, et insenerid leidsid võimaluse migreeruda RISC-arvutitele ilma olemasolevat tarkvara hülgamata. Enamike kaasaegsete Intel x86 arhitektuuri toetavate mikroprotsessorite tuumad on valmistatud RISC-arhitektuuri järgi, mis toetab multiskalaarset konveiertöötlust. Mikroprotsessor saab sisendiks käsu Intel x86 formaadis, asendame selle mitme (kuni 4) RISC käsuga.

Seega on enamiku kaasaegsete mikroprotsessorite tuumad, alustades Intel 486DX-st, valmistatud RISC-arhitektuuri järgi koos välise Intel x86 liidese toega. Lisaks on valdav enamus mikrokontrollereid ja ka osa mikroprotsessoreid toodetud RISC arhitektuuri järgi.

Kaasaegne RISC-protsessor kasutab vähemalt 32 registrit, sageli üle 100, samas kui klassikalistel arvutitel on tavaliselt 8-16 üldotstarbelist registrit. Seetõttu pääseb protsessor RAM-ile ligi 20%-30% harvemini, mis suurendas ka andmetöötluse kiirust. Lisaks kohalolek suur hulk registrid hõlbustab kompilaatoril muutujate jaoks registrite eraldamist. Lihtsustatud protsessori topoloogia, töötades singli kujul integraallülitus, selle arendamise tingimusi vähendati, see muutus odavamaks.

Pärast RISC-protsessorite tulekut said traditsioonilised protsessorid tähise CISC - see tähendab koos täiskomplekt käsud (Complete Instruction Set Computer).

Praegu kasutatakse laialdaselt RISC-protsessoreid. Kaasaegseid RISC-protsessoreid iseloomustavad järgmised omadused:

  • - lihtsustatud käskude komplekt;
  • - kasutatakse kindla pikkusega ja fikseeritud formaadiga käske, lihtsaid adresseerimismeetodeid, mis võimaldab lihtsustada käskude dekodeerimise loogikat;
  • - enamik käske täidetakse ühes protsessori tsüklis;
  • - käskude täitmise loogika jõudluse suurendamiseks on keskendunud pigem riistvarale kui püsivara juurutamisele, puuduvad makrokäsud, mis muudavad protsessori struktuuri keerulisemaks ja vähendavad selle kiirust;
  • - interaktsioon RAM-iga piirdub andmeedastustoimingutega;
  • - töötlemiseks kasutatakse reeglina kolme aadressiga käske, mis lisaks dekrüpteerimise lihtsustamisele võimaldab salvestada registritesse suurema hulga muutujaid ilma nende hilisema uuesti laadimiseta;
  • - on loodud käsukonveier, mis võimaldab töödelda mitut neist korraga;
  • - suure hulga registrite olemasolu;
  • - kasutatakse kiiret mälu.

RISC-protsessorites on masinkäsu töötlemine jagatud mitmeks etapiks, iga etappi teenindab eraldi riistvara ja andmed edastatakse ühest etapist teise.

See suurendab jõudlust, kuna torujuhtme erinevates etappides täidetakse samaaegselt mitut käsku.

Tüüpilise käsu täitmise võib jagada järgmisteks sammudeks:

  • - tõmba käsk IF - programmiloenduriga määratud aadressil võetakse käsk mälust;
  • - 2) ID käsu dekodeerimine - selle tähenduse väljaselgitamine, operandide toomine registritest;
  • - 3) EX operatsiooni teostamine, vajadusel ligipääs mälule - füüsilise aadressi arvutamine;
  • - 4) mälu juurdepääs ME;
  • - 5) WB tulemuse meeldejätmine

RISC-arhitektuuriga protsessorites komplekt käivitatavad käsud vähendatud miinimumini. Keerulisemate toimingute teostamiseks tuleb käske kombineerida. Sel juhul on kõigil käskudel fikseeritud pikkusega vorming (näiteks 12, 14 või 16 bitti), käsk tõmmatakse mälust ja täidetakse ühe sünkroonimistsükli (tsükli) jooksul. RISC-protsessori käsustik eeldab kõigi protsessoriregistrite võrdse kasutamise võimalust. See annab mitme toimingu jaoks täiendava paindlikkuse. RISC-protsessoriga MIC-ide hulka kuuluvad Atmeli AVR MC-d, Microchipi PIC16 ja PIC17 MC-d ja teised.

Esmapilgul peaks RISC-protsessoriga MCU-del olema rohkem suur jõudlus võrreldes CISC MK-ga sisemise pagasiruumi samal taktsagedusel. Praktikas on aga jõudluse küsimus keerulisem ja mitmetähenduslikum.

Joonis 2

Harvardi arhitektuuri ei kasutatud peaaegu 70ndate lõpus, kui MCU tootjad mõistsid, et see pakub arendajatele teatud eeliseid. autonoomsed süsteemid juhtimine.

Fakt on see, et otsustades MPS-i kasutamise kogemuse põhjal erinevate objektide juhtimiseks, ei oma enamiku juhtimisalgoritmide rakendamiseks selliseid von Neumanni arhitektuuri eeliseid nagu paindlikkus ja universaalsus. suure tähtsusega. Analüüs tõelised programmid kontroll näitas, et salvestamiseks kasutatud vajalik kogus MC andmemälu vahetulemused, on reeglina suurusjärgu võrra väiksem kui vajalik programmimälu maht. Nendel tingimustel tõi ühe aadressiruumi kasutamine kaasa käsuvormingu suurenemise, suurendades operandide adresseerimise bittide arvu. Eraldi väikese andmemälu kasutamine aitas vähendada käskude pikkust ja kiirendada andmemälust info otsimist.

Lisaks pakub Harvardi arhitektuur potentsiaalselt rohkem suur kiirus programmi täitmine võrreldes von Neumanni programmiga realiseerimisvõimaluse tõttu paralleelsed toimingud. Järgmise käsu toomine võib toimuda samaaegselt eelmise täitmisega ning protsessorit ei ole vaja käskluse toomise ajaks peatada. See toimingute realiseerimismeetod võimaldab tagada erinevate käskude täitmise sama arvu tsüklite jaoks, mis võimaldab lihtsamalt määrata tsüklite ja programmi kriitiliste osade täitmise aega.

Enamik kaasaegsete 8-bitiste MCU-de tootjaid kasutab Harvardi arhitektuuri. Harvardi arhitektuur ei ole aga mõne tarkvaraprotseduuri rakendamiseks piisavalt paindlik. Seetõttu tuleks erinevatel arhitektuuridel põhinevaid mikrokontrollereid võrrelda konkreetse rakendusega.

RISC arhitektuur hõlmab kõige lihtsamate, kuid sagedamini kasutatavate käskude vähendatud komplekti rakendamist arvutis, mis võimaldab protsessori riistvara lihtsustada ja tänu sellele suurendada selle kiirust.

RISC-arhitektuuri kasutamisel on käskude komplekti valik ja protsessori (mikroprotsessori) struktuur suunatud sellele, et komplekti käskude täitmine toimuks protsessori ühes masintsüklis. Keerulisemate, kuid harva esinevate toimingute teostamise tagavad alamprogrammid.

RISC-iga arvutis Masinatsükkel on aeg, mis kulub kahe operandi toomiseks registritest, toimingu sooritamiseks ALU-s ja tulemuse salvestamiseks registrisse. Enamik RISC-i käske on kiired käsud tüüpi "register - register" ja need teostatakse ilma OP-le helistamata. Viited OP-le salvestatakse ainult registrite mälust laadimise ja OP-s salvestamise juhistes. Et see oleks võimalik, peab protsessor sisaldama piisavalt palju jagatud registreid.

RISC-arhitektuuri iseloomulike tunnuste tõttu - vähendatud juhiste kogum (tavaliselt mitte rohkem kui 50–100), väike arv(tavaliselt 2-3) lihtsaid viise adresseerimine (enamasti register), väike arv lihtsad vormingud käsud fikseeritud suurused ja nende väljade funktsionaalne otstarve - lihtsustatud on protsessori juhtseade, mis sel juhul teeb ilma mikroprogrammi juhtimistaseme ja juhtimismäluta ning selle CU-d saab teostada "vooluahela loogikal".

Täitmiskäskude arvu vähendamine ja muud ülalmainitud RISC-arhitektuuri funktsioonid toovad kaasa protsessori struktuuri nii olulise lihtsustumise, et seda on võimalik rakendada ühes kiibis koos suure registrifaili ja vahemäluga.

Suur hulk registreid, eriti kui on olemas a tõhus kasutamine"optimiseeriv kompilaator", võimaldab vähendada OP-le pöördumist piirini, salvestades vahetulemusi registrites, kandes registrite kaudu operande ühest programmist teistesse programmidesse või alamprogrammidesse, keeldudes katkestuste ajal registrite sisu ülekandmisest OP-sse.

RISC-arhitektuuri eripäraks on mehhanism kattuvad registriaknad, mõeldud OP-le juurdepääsu ja registritevaheliste ülekannete arvu vähendamiseks, mis aitab parandada arvuti jõudlust.

Protseduurid on dünaamiliselt jaotatud väikesed fikseeritud pikkusega registrite rühmad (registriaknad). Järjestikku täidetavate protseduuride aknad kattuvad, mistõttu on võimalik parameetreid ühelt protseduurilt teisele edastada.Protsessi kutsumisel lülitub protsessor tööle erineva registriaknaga ning registrite sisu pole vaja üle kanda mällu.



Aken koosneb kolmest registrite alamrühmast (joonis 9.21). Esimene alamrühm sisaldab helistajalt sellele protseduurile edastatud parameetreid ja tulemusi helistamisprotseduur selle juurde tagasi tulles. Teine alamrühm sisaldab protseduuri kohalikke muutujaid. Kolmas, olles puhver kahesuunaliseks vahetuseks antud protseduuri ja tema poolt kutsutava vahel, edastab antud protseduuri parameetrid viimasele, mis omakorda saab läbi selle puhvri väljakutsutud protseduuri tulemused. Seega on antud protseduuri jaoks sama alamrühm registrid ja järgmise jaoks parameetrite registrid. Selle globaalsete muutujate jaoks on eraldatud eraldi aken, mis on juurdepääsetav kõigile programmi protseduuridele.

Praegu on välismaal välja antud mitmeid RISC-arhitektuuriga mikroprotsessoreid. Näiteks võib tuua suure jõudlusega jaamad, mis põhinevad Alpha 21264 mikroprotsessoril, Intel StrongARM mikroprotsessoril WindowsCE jaoks.

Hoolimata RISC-arhitektuuri kasutamise algusest kommertsarvutites, jätkuvad arutelud selle arhitektuuri eeliste ja puuduste üle. Eelkõige sisaldavad viimased programmikoodi pikemat pikkust pärast kompileerimist võrreldes tavaliste arhitektuurimasinate koodi pikkusega. Näiteks x86 käskude emuleerimisel vajab iga käsk keskmiselt viit või kuut RISC-arhitektuuriga masina käsku. Uuringud on aga näidanud, et käsu täitmise kiiruse suurenemine kompenseerib programmi objektkoodi pikendamisest tuleneva kahju.

1989. aastal Intelile RISC-arhitektuuri põhjal õnnestus luua ühekiibiline mikroprotsessor 80860, mis on praktiliselt Grey-1 superarvuti räniekvivalent.

Mikroprotsessorite arhitektuuride klassifikatsioon

Arvutiarhitektuuri arendamine, mille eesmärk on suurendada nende jõudlust, järgib paljudel juhtudel protsessorite keerulisemaks muutmise teed, laiendades käskude süsteemi (komplekti), juurutades keerulisi juhiseid, mis teostavad protseduure, mis lähenevad kõrgetasemeliste keelte primitiividele, suurendades nende arvu. kasutatud adresseerimismeetoditest jne.

Kuid juhiste komplekti laienemine ja komplitseerimine tekitab ka mitmeid soovimatuid kõrvalmõjusid.

Käsukomplekti laiendamisega, adresseerimismeetodite arvu suurenemisega, keeruliste käskude kasutuselevõtuga kaasneb käsukoodi, eelkõige operatsioonikoodi pikkuse pikenemine, mis võib viia "laiendusoperatsiooni" kasutamiseni. kood", juhiste vormingute arvu suurenemine. See raskendab ja aeglustab opkoodi dekrüpteerimist ja muid käsutöötlusprotseduure. Käskude töötlemise protseduuride üha keerukamaks muutumise tõttu on vaja kasutada mikroprogrammide juhtseadmeid kontrolli mälu"kõva" ("ahela") loogikaga kiiremate CU-de asemel.

Protsessori keerukus muudab selle rakendamise integraallülituse ühele kiibile keerulisemaks või isegi võimatuks, mis võib ühenduste pikkust vähendades hõlbustada suure jõudluse saavutamist.

Kõrgetasemeliste keelekompilaatorite loodud programmikoodi analüüs näitas, et ainult piiratud hulk lihtsad käsud formaadid "register, register -> register" ja "registre<->mälu". Kompilaatorid ei suuda tõhusalt kasutada keerulisi käske. Just see tähelepanek aitas kaasa vähendatud käsukomplektiga protsessorite ehk nn RISC-protsessorite kontseptsiooni kujunemisele.

Teine asjaolu, mis tegelikult viis RISC-protsessorite tekkeni, oli Cray-tüüpi konveierprotsessorite arhitektuuri arendamine. Need protsessorid kasutavad mäluga töötamiseks eraldi käsukomplekte ja protsessoriregistrites teabe teisendamiseks eraldi käsukomplekte. Iga selline käsk on jaotatud ühtlaselt väikeseks arvuks sama täitmisajaga etappideks (käskude toomine, käsu dekodeerimine, täitmine, tulemuste kirjutamine), mis võimaldab ehitada tõhusa protsessori konveieri, mis on võimeline tootma selle täitmise tulemuse. järgmine juhend iga tsükli järel.

Siiski on käskude konveierkäskude täitmine tekitanud probleeme, mis on seotud andmete ja juhtimissõltuvustega järjestikku konveierisse käivitatud käskude vahel. Näiteks kui järgmine käsk kasutab eelmise tulemust, on selle täitmine võimatu mitme tsükli jooksul, mis on selle tulemuse saamiseks vajalikud. Sarnased probleemid tekivad tingimusliku hüppekäsu täitmisel, kui andmed, millel hüpe tehakse, ei ole tingimusliku hüppekäsu dekodeerimise ajaks veel valmis.

Need probleemid lahendab kas kompilaator, mis määrab konveierkäskude käitamise järjekorra ja lisab käsud "Ei toimi", kui järgmist käsku pole võimalik käivitada, või spetsiaalse protsessori riistvara abil, mis jälgib käskude vahelisi sõltuvusi ja kõrvaldab konfliktid.

Pärast RISC-protsessorite eraldamist eraldi klassiks hakati traditsiooniliste käsukomplektidega protsessoreid nimetama täieliku käsukomplektiga CISC-protsessoriteks. Reeglina on nendes protsessorites juhiseid palju erinevad vormingud ja nende esitamiseks on vaja erinevat arvu mälurakke. See määrab käsu tüübi selle dekrüpteerimisel täitmise ajal, mis muudab protsessori juhtseadme keeruliseks ja takistab taktsageduse suurenemist sama elemendi baasil põhinevates RISC protsessorites saavutatava tasemeni.

On ilmne, et RISC-protsessorid on tõhusad nendes rakendusvaldkondades, kus on võimalik produktiivselt kasutada struktuurseid meetodeid põhimälu juurdepääsuaja vähendamiseks. Kui programm genereerib mälupöördusaadresside juhuslikke jadasid ja iga andmeühikut kasutatakse ainult ühe käsu täitmiseks, siis tegelikult määrab protsessori jõudluse põhimälule juurdepääsuks kuluv aeg. Sel juhul vähendab vähendatud käsukomplekti kasutamine ainult efektiivsust, kuna see nõuab operandide ülekandmist mälu ja registri vahel, mitte mälu, mälu - mälu käske. Programmeerija peab arvestama töödeldavate andmete lokaalse jaotamise vajadusega, et mälutasemete vahel ülekandmisel osaleksid võimalusel töötlemises kõik edastatud andmeplokkide andmed. Kui programm on kirjutatud nii, et andmed paigutatakse juhuslikult ja igast edastatavast andmeplokist kasutatakse ainult väikest osa, siis töötlemiskiirus aeglustub mitu korda põhimälu kiiruseni. Näitena esitame tabelis 1.1 Alpha 21066 233 MHz mikroprotsessori jõudluse mõõtmise tulemused Hadamardi teisenduse rakendamisel n = 8 - 20.

Tabel 1.1 Alpha 2I066 mikroprotsessori jõudlus Hadamardi teisenduse tegemisel

Näide näitab, et seni, kuni andmed asuvad kiibi vahemälus, on jõudlus kõrge. Niipea, kui andmemaht ületab vahemälu suuruse ja mälupöördumised lähevad "ühtlase" vahega aadressidele, langeb jõudlus rohkem kui 7 korda.

Mikroprotsessorite arendamine toimub pideva sooviga säilitada tarkvara (SW) järjepidevus ja parandada jõudlust, täiustades arhitektuuri ja suurendades taktsagedust. Tarkvara järjepidevuse säilitamine ja tootlikkuse tõstmine on üldiselt vastuolus. CISC-klassi käsukomplekti x86 protsessoritel on madalam taktsagedus kui juhtivate RISC-protsessorite tootjate mikroprotsessoritel. On rakendusi, kus x86 mikroprotsessorite jõudlus on oluliselt madalam kui samal elemendil realiseeritud RISC protsessoritel. Siiski on võimalus kasutada ühilduvat tarkvara erinevad põlvkonnad Viimase kümnendi jooksul välja lastud x86 protsessorid annavad neile turul stabiilse turgu valitseva positsiooni.

Praegu on Inteli poolt üles võetud NexGeni ja AMD teedrajavate arenduste põhjal püütud lahendada x86 arhitektuuri jõudluse suurendamise probleemi. Need ettevõtted loovad uusimates arengutes, säilitades käsusüsteemi järjepidevuse x86 perekonna CISC-mikroprotsessoritega, loovad uusi seadmeid, kasutades RISC-arhitektuuri elemente. Selle lähenemisviisi näide on Nx586 (NexGen), K5, K6 (AMD), Pentium PRO, Pentium II (Intel) mikroprotsessorid, mis kasutavad lahtisidestatud arhitektuuri ja RISC-tuuma kontseptsiooni. Mikroprotsessorisse on sisse ehitatud riistvaraline tõlkija, mis teisendab x86 käsud RISC protsessori käskudeks. Sel juhul saab üks x86 käsk genereerida kuni neli RISC-protsessori käsku. Juhised täidetakse nagu väljatöötatud superskalaarprotsessoris. Intel kasutas seda lähenemisviisi oma Pentium Pro mikroprotsessoris, mis tugevdas oluliselt selle positsiooni RISC-arhitektuuride edusammude taustal.

Superskalaarsed protsessorid

  • Tõlge

Tõlkija märkus. Algses artiklis väidavad autorid (üks neist on RISC protsessorite pioneer D. Patterson) avatud ISA (käsukomplekti arhitektuur, protsessori käsukomplektid) ja nendel põhinevate toodete arendamise vajadust. Argumendid on nende arvutitehnoloogia valdkondade ja majandusniššide arengu stimuleerimine, millest äriettevõtted ei ole huvitatud või ei ole piisavalt paindlikud. Need meenutavad avatud standardite ja vaba tarkvara edu.

Selle artikli laiendatud versiooni (nagu ka ARM-i esindajate vastuartiklit ja autorite vastulauset!) leidsin Microprocessor Report (MPR) augustinumbris. Juurdepääs MPR-ile on piiratud ainult abonentidega, kuid avatud juurdepääs Berkeley ülikooli veebisaidile on postitatud algne aruanne. Pakun allpool tema tõlget.

Juhised peaksid olema tasuta: Krste Asanovići ja David A. Pattersoni RISC-V juhtum. EECS osakond, California ülikool, Berkeley – tehniline aruanne nr. UCB/EECS-2014-146 www.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-146.html

Autoriõiguste teatis ja lahtiütlused

Autoriõigus 2014, autori(te) poolt.
Kõik õigused kaitstud.
Luba teha kogu selle teose või osa sellest digitaalsete või paberkoopiate tegemiseks isiklikuks või klassiruumis kasutamiseks antakse tasuta tingimusel, et koopiaid ei tehta ega levitata kasumi või ärilise kasu eesmärgil ning et koopiatel on see märge ja täis tsitaat esimesel lehel. Muul viisil kopeerimiseks, uuesti avaldamiseks, serveritesse postitamiseks või loenditesse levitamiseks on vaja eelnevat eriluba.



Kohandatud süsteemid kiibil (SoC), milles protsessorid ja nende vahemälud hõivavad vaid väikese osa stantsist, on muutumas üldlevinud; täna on seda raske leida elektrooniline seade, mis ei kasuta SoC-s olevat protsessorit. Seega kavandab protsessoreid sisaldavaid kiipe rohkem ettevõtteid kui kunagi varem. Arvestades revolutsiooni, mille avatud standardid ja avatud tarkvara on muutnud – näiteks TCP/IP võrguprotokoll ja Linuxi operatsioonisüsteem –, miks on üks olulisemaid liideseid endiselt patenteeritud?

Argumendid tasuta, avatud ISAde jaoks

Muidugi võivad mõned protsessori käsukomplektid (ISA, ingliskeelne käsukomplekti arhitektuur) olla ajaloolistel ja ärilistel põhjustel omandiõigused. Samas puudub tahke tehniline põhjuseid tasuta avatud võimaluste puudumise selgitamiseks.
  1. See ei ole viga või puudus. Ettevõtted, kellel on edukad ISA-d, nagu ARM, IBM ja Intel, omavad patente oma juhissüsteemide veidrustele, mis takistavad teistel neid ilma litsentsita kasutamast 1 . Kasutusläbirääkimised kestavad 6–24 kuud ja võivad maksta 1–10 miljonit dollarit, välja arvatud akadeemilised ringkonnad ja kõik teised, kes vajavad protsessist vaid väikest tootmismahtu 2. ARM-i litsents ei võimalda teil isegi kujundada oma tuum; saate ainult kasutusõiguse nende disain (ainult umbes 15 suurettevõttel on õigus luua uusi ARM-i tuumasid). Isegi "OpenPOWER" on oksüümoron; selle ISA kasutamise eest peate IBM-ile maksma. Mõistlik t.z. äri, sarnane praktika litsentsimine lämmatab konkurentsi ja innovatsiooni, takistades paljudel kujundada ja jagada oma ISA-ga ühilduvaid tuumasid.
  2. Seda mitte sellepärast, et ISA omanikud ise toodavad valdava enamuse oma süsteemide tarkvarast. Vaatamata populaarsete ISA-de ümber kasvanud tarkvaraökosüsteemide suurusele, kirjutavad lõviosa nende jaoks mõeldud tarkvarast kõrvalised isikud.
  3. Nendel ettevõtetel puuduvad piisava ISA loomiseks vajalikud pühad teadmised. See on palju tööd, kuid paljud saavad tänapäeval koostada juhiste komplekti.
  4. Kõige populaarsemad ISA-d ei ole kõige elegantsemad. Nii 80x86 kui ka ARM-i ei peeta heaks disainistandardiks.
  5. ISA-ga ühilduvuse kontrollimine ei nõua ettevõtete kontrollimist. Avatud organisatsioonid töötasid aastaid tagasi välja riistvara koostalitlusvõime sertifitseerimise mehhanismid. Näited: IEEE 754 ujukomastandard, Ethernet, PCIe. Kui see nii ei oleks, poleks avatud IT-standardid nii populaarsed.
  6. Lõpuks ei ole mingit garantiid, et patenteeritud ISA-d kestavad kaua. Kui ettevõte läheb pankrotti ja kaob, võtab ta oma ISA kaasa. DEC-i kadumine lõpetas Alpha ja VAX käsukomplektide arendamise.

Pange tähele, et ISA on tegelikult liidese spetsifikatsioon, mitte rakendus. Mõne liidese rakendamiseks on kolm lähenemisviisi:

1. Privaatne suletud, sarnane Apple iOS-iga.
2. Litsentsitud avatud lähtekoodiga, nagu Wind River VxWorks.
3. Tasuta ja avatud, kasutajad saavad muuta ja jagada, nagu seda tehakse Linuxis.

Praktikas võimaldavad patenteeritud ISA-d töötada kahe esimese lähenemisviisiga, kuid kõigi kolme lähenemisviisi toetamiseks on vaja tasuta avatud lähtekoodiga ISA-d.

Sellest järeldame, et tööstus saab elujõulisest ja vabalt kättesaadavast avatud lähtekoodiga ISA-st sama palju kasu, kui on saanud kasu tasuta avatud lähtekoodiga tarkvara arendamisest. Näiteks see loob tõeliselt vaba avatud turg protsessorite disainidele, mida praegu takistavad ISA veidrused patendid.

See võib kaasa tuua:

1. Innovatsioon konkurentsi kaudu paljude disainerite vabaturul, sealhulgas ISA avatud ja suletud rakendused.
2. Ühised avatud südamikud, mis vähendavad turule jõudmise aega ja vähendavad korduskasutuskulusid, vähem vigade tõttu, mis on tingitud paljude inimeste kontrollist 3 ja läbipaistvusest, mis muudab näiteks valitsusasutuste jaoks keeruliseks salajaste tagauste kasutuselevõtu.
3. Protsessorid saadaval rohkem seadmed, mis aitavad arendada asjade Internetti (IoT, inglise keeles Internet of Things), mille maksumus on umbes dollar.

Argumendid RISC kui tasuta avatud ISA stiili poolt

Selleks, et avatud lähtekoodiga kogukond aktsepteeriks mis tahes ISA-d, peab sellel olema edukas äritegevus. Esimene küsimus on, mis stiilis ISA sellist lugu näitab? Viimase 30 aasta jooksul pole ajalugu tundnud ühtegi edukat virnastatav arhitektuur ( Tõlkija märkus: Java baitkoodi ja .NET CLI - pinuarhitektuuride edu arvestades kummaline väide). Välja arvatud DSP (digitaalse signaalitöötluse) rakenduste segmendis, VLIW ka ebaõnnestus: Multiflow hõljus kõht üles ja Itanium, hoolimata HP ja Inteli miljarditest investeeringutest, ei saanud tunnustust. Aastakümneid pole ühtegi uut CISC ISA ebaõnnestub. Säilinud CISC-arhitektuurid tõlgivad nende keerulised käsud lihtsamateks ISA-deks, mis on väärtusliku pärandkoodibaasi käivitamiseks vägagi õigustatud. Uuel ISA-l definitsiooni järgi sellist baasi ei tule, seega on tõlkimiseks vajaminevad täiendavad riistvara- ja toitekulud raskesti põhjendatavad: miks mitte kasutada kohe lihtsamat ISA-d? RISC Laadimispoe-laadsed juhised on olnud kasutusel vähemalt 50 aastat, alates Seymour Cray CDC 6600 ajastust. Kui 80x86 võitis arvutisõjad, siis RISC domineerib arvutijärgse ajastu tahvelarvutites ja telefonides. 2013. aastal müüdi üle 10 miljardi ARM-i, võrreldes 0,3 miljardi x86-ga. Korrates seda, mida me 1980. aastal 4 ütlesime, usume, et RISC on seda parim valik tasuta ja avatud ISA jaoks.

Lisaks võib uus RISC ISA olla parem kui oma eelkäijad, kui selle väljatöötamisel võetakse arvesse nende vigu:

  1. Liiga palju välistamine: Alpha ISA 1 baitide ja poolsõnade laadimis-/salvestamisjuhised puuduvad ning MIPS I ujukomanumbrite laadimis-/salvestamisjuhised puuduvad.
  2. Üleliigsete: inline nihe ARM-i juhistes ja SPARC-registri akendes.
  3. Mikroarhitektuursete detailide mõju ISA-le: hilinenud hüpped MIPS-is ja SPARC-is, ujukomanumbrite tõkkelõksud Alpha-s.

Manustatud turu vajaduste rahuldamiseks pakkus RISC isegi lahenduse koodi suuruse probleemile: ARM Thumb ja MIPS16 lisasid 16-bitised vormingud, et muuta kood veelgi lühemaks kui 80x86. Seega on üldtunnustatud üksmeel selles, milline peaks üks hea RISC ISA üldiselt välja nägema.

Argumendid olemasoleva tasuta avatud lähtekoodiga RISC ISA kasutamise kohta

Kolm tasuta avatud lähtekoodiga RISC ISA 5 on juba olemas:
  • SPARC V8 – tunnustus Sun Microsystemsile SPARC V8 valmistamise eest IEEE standard aastal 1994.
  • OpenRISC on GNU-litsentsiga avatud lähtekoodiga projekt, mis sai alguse 2000. aastal ja 64-bitine ISA valmis 2011. aastal.
  • RISC-V – 2010. aastal, osaliselt ARM-i IP-piirangute ja 64-bitiste režiimide puudumise ning ARM v7 üldise grotesksuse tõttu, arendasime koos õpilaste Andrew Watermani ja Yunsup Leega välja RISC-V 6 (hääldatakse " RISC-5") meie uurimis- ja õpetamisvajaduste jaoks ning andis selle välja BSD litsentsi alusel.

Kuna kõigi peenemate punktide lihvimine võtab tavaliselt aastaid – OpenRISC küpsemine võttis aega 11 aastat ja RISC-V 4 aastat –, oleks õigem alustada olemasolevast ISA-st, mitte moodustada komitee ja alustada nullist. Kõik RISC-id on sarnased, nii et igaüks neist võib olla hea kandidaat.

Kuna ISA-d võivad eksisteerida aastakümneid, on vaja esmalt ekstrapoleerida ja kirjeldada tulevikumaastikku. infotehnoloogiad et mõista, millised funktsioonid võivad tähtsuse järjekorda seadmise hõlbustamiseks olulised olla. Tõenäoliselt domineerib kolm platvormi: IoT – miljardeid odavaid IP-aadressi ja Interneti-juurdepääsuga seadmeid; 2) isiklik mobiilseadmed, nagu näiteks kaasaegsed telefonid ja tabletid; 3) andmekeskused (Warehouse-Scale Computers, WSC-d). Iga platvormi tüübi jaoks võib olla erinev ISA, kuid elu on lihtsam, kui see on igal pool sama. Selline tulevikupilt pakub sellele neli põhinõuet.

1. ISA pluss laienduste põhivorming 7 . Tõhususe parandamiseks ja kulude vähendamiseks lisavad SoC-süsteemid oma rakendusespetsiifilised kiirendid. Selleks ja stabiilse koodibaasi säilitamiseks peaks tasuta avatud ISA-l olema: a) väike juhiste tuum, mida kompilaatorid ja OS-id teavad, b) standardsed, kuid valikulised laiendused sagedaste privaatsete stsenaariumide jaoks SoC-de kohandamiseks konkreetse rakendusega, c) ruumi täiesti uutele kiirendite tööks mõeldud juhiskoodidele.

2. Kompaktne käsukodeering. Vähem koodi on soovitav IoT-rakenduste hinnatundlikkuse tõttu kasutatava mälumahu suhtes.

3. Ujukomaarvutuste neljakordne täpsus (QP, neljakordne täpsus) lisaks kahe- ja ühekordsele täpsusele. Mõned praegu andmekeskustes töötavad rakendused töötlevad nii suuri andmemahtusid, et nad kasutavad juba QP jaoks tarkvarateeke.

4. 128-bitine adresseerimine lisaks 32- ja 64-bitisele. IoT-seadmete mälupiirangud tähendavad, et 32-bitine adresseerimine on asjakohane veel pikka aega. 64-bitised aadressid – de facto standard kõigile suured süsteemid. Kuigi WSC-tööstus ei nõua kõiki 2128 baiti, on tõenäoline, et kümne aasta pärast on SSD-mäluseadme jaoks vaja rohkem kui 2,64 (16 eksabaiti). Aadressiruumi piiratud suurus on üks neist ISA-vigadest, mida on raske parandada 8 , seetõttu on mõistlik juba praegu planeerida suured aadressid.

Järgmises tabelis on kokkuvõte teabe kolme tasuta avatud ISA kohta nende nelja kriteeriumi, samuti kompilaatori toe ja teisaldatud operatsioonisüsteemide saadavuse järgi.

Argumendid RISC-V kui tasuta avatud ISA poolt

Meie kogukond peaks koonduma ühe ISA ümber, et näha, kas tasuta avatud ISA saab praktikas toimida. Ainult RISC-V vastab kõigile neljale nõudele. See on ka 10–20 aastat noorem kui ülejäänud RISC-id, nii et saime analüüsida ja parandada nende vigu, nagu SPARC ja OpenRISC haru viivituspesad. Seetõttu on RISC-V juhiste komplekt lihtne ja arusaadav (vt algse artikli tabeleid 4 ja 5, samuti www.riscv.org). Lisaks sellele, et teised ISA-d ei täida paljusid nõudeid, on probleeme sellega, et 64-bitine SPARC V9 on patenteeritud ja OpenRISC kaotab hoogu.
RISC-V-l on endiselt palju hoogu. Tabelis 1 on loetletud erinevad rühmad RISC-V-l põhinevate SoC-de kujundamine. Osaliselt tänu väga tootlike toodete kasutamisele, avatud süsteem Chisel 9 riistvaradisain, UC Berkeley'l on juba 8 tüüpi kiipe ja uued arendused on käimas. Tabel 2 näitab, et üks 64-bitine RISC-V tuum võtab poole pindalast, tarbib poole vähem energiat ja on kiirem kui 32-bitine ARM sarnase torujuhtme või protsessitehnoloogiaga. Kuigi meie erapoolikust selles küsimuses on raske täielikult kõrvaldada, usume, et RISC-V on parim ja turvalisem valik tasuta avatud lähtekoodiga RISC ISA jaoks. Seetõttu korraldame RISC-V kogukonna laiendamiseks kümnest töötoast koosneva sarja ning plaanime tabelis 3 toodud näidetest inspireerituna luua mittetulundusliku sihtasutuse juurutuste sertifitseerimiseks ning ISA toetamiseks ja arendamiseks.

Järeldus

Meie põhjendus on avatud ISA puhul isegi selgem kui avatud OS-i puhul, kuna ISA-d muutuvad väga aeglaselt, samas kui algoritmilised uuendused ja uued rakendused nõuavad OS-i pidevat arendamist. Samuti, nagu TCP/IP, on see liidesestandard, mida on lihtsam hooldada ja arendada kui OS-i.

Avatud ISA-sid on kasutatud ka varem, kuid nõudluse puudumise tõttu ei muutunud need kunagi populaarseks. Madal hind ja asjade Interneti energiatarbimist, soovi omada andmekeskuste jaoks 80x86 alternatiivi ning asjaolu, et protsessori tuumad- ainult väike, kuid üldlevinud osa kõigist SoC-dest on ühendatud ettepanekuks, mis suudab rahuldada tekkinud nõudluse. RISC-V on suunatud peamiselt SoC-le, põhikäskude komplektiga, mis ei muutu kunagi, võttes arvesse RISC-ideede pikka kasutusiga, aeglaselt arenevat valikuliste laienduste alamhulka ja ainulaadseid juhiseid, mida kunagi uuesti ei kasutata. Kuigi RISC-V esimene tugipunkt võib olla asjade internet või WSC, on meie eesmärk laiem: nii nagu Linuxist on saanud enamiku jaoks standardne operatsioonisüsteem. arvutusseadmed, näeme RISC-V-d standardse ISA-na kõigi tuleviku arvutiseadmete jaoks.