Blok dijagram Risc arhitekture. Usporedna analiza CISC i RISC arhitektura. Arhitekture smanjenog skupa instrukcija

Ovo je uređaj koji je jedan ili više velikih integriranih sklopova (LSI) koji obavljaju funkcije računalnog procesora. Klasični računalni uređaj sastoji se od aritmetičke jedinice (AU), upravljačke jedinice (CU), jedinice za pohranu podataka (SRAM). i ulazno/izlazni uređaj (I/O) .

Postoje procesori raznih arhitektura.

CISC(eng. Complex Instruction Set Computing) je koncept dizajna procesora koji karakterizira sljedeći skup svojstava:

· veliki broj naredbi različitog formata i duljine;

· uvođenje velikog broja različitih načina adresiranja;

· ima složeno kodiranje instrukcija.

CISC procesor se mora nositi sa složenijim uputama nejednake duljine. Jedna CISC instrukcija može se izvršiti brže, ali je teža paralelna obrada više CISC instrukcija.

Olakšavanje otklanjanja pogrešaka programa u asembleru podrazumijeva zatrpavanje mikroprocesorske jedinice čvorovima. Kako bi se poboljšale performanse, frekvencija takta i stupanj integracije moraju se povećati, što zahtijeva poboljšanu tehnologiju i, kao rezultat toga, skuplju proizvodnju.

Prednosti CISC arhitekture

  1. Kompaktni skupovi instrukcija smanjuju veličinu programa i broj pristupa memoriji.
  2. Skupovi instrukcija uključuju podršku za programske konstrukcije visoke razine.

Nedostaci CISC arhitekture

  1. Nepravilan tok naredbi.
  2. Visoka cijena hardvera.
  3. Poteškoće s paralelnim izračunima.

RISC(Smanjeno računanje skupa instrukcija). Procesor sa smanjenim skupom instrukcija. Sustav zapovijedanja je pojednostavljen. Sve naredbe imaju isti format s jednostavnim kodiranjem. Memoriji se pristupa pomoću naredbi za učitavanje i pisanje; preostale naredbe su tipa registar-registar. Naredba koja ulazi u CPU već je podijeljena na polja i ne zahtijeva dodatno dešifriranje.

Dio kristala je oslobođen za uključivanje dodatne komponente. Stupanj integracije niži je nego u prethodnoj arhitektonskoj varijanti, pa su dopuštene niže brzine takta za visoke performanse. Naredba manje zatrpava RAM, CPU je jeftiniji. Ove arhitekture nisu softverski kompatibilne. Otklanjanje pogrešaka RISC programa je teže. Ova se tehnologija može implementirati u softver kompatibilan s CISC tehnologijom (na primjer, superskalarna tehnologija).

Budući da su RISC upute jednostavne, zahtijevaju manje logički elementi, što u konačnici smanjuje cijenu procesora. Ali većina softver Danas je napisan i kompajliran posebno za Intelove CISC procesore. Da biste koristili RISC arhitekturu, postojeći programi moraju se ponovno prevesti, a ponekad i prepisati.

Prednosti RISC arhitekture

1.smanjenje nepravilnosti tijeka naredbi

2. obogaćivanje prostornim paralelizmom

Nedostaci RISC arhitekture

RAZNO(Višenamjensko računalo s uputama). Elementna baza sastoji se od dva dijela, koji su ili izrađeni u zasebnim kućištima ili kombinirani. Glavni dio je RISC CPU, proširiv spajanjem drugog dijela – mikroprogramskog upravljačkog ROM-a. Sustav dobiva CISC svojstva. Osnovne upute izvode se na RISC CPU-u, a upute za proširenje prevode se na adresu firmvera. RISC CPU izvršava sve instrukcije u jednom taktu, a drugi dio je ekvivalentan CPU-u sa složenim skupom instrukcija. Prisutnost ROM-a uklanja nedostatak RISC-a, izražen u činjenici da kada se kompajlira iz jezika visoka razina Mikrokod se generira iz biblioteke standardnih funkcija, što zauzima puno prostora u RAM-u. Budući da je firmware već dešifriran i otvoren je programeru, za dešifriranje nije potrebno vrijeme dohvaćanja iz RAM-a.

Ako ne možeš prisiliti druge, radi sam. Jednom davno, zamolio sam Konstantina Afanasjeva da ispriča čitateljima o onim procesorima koji nisu Pentium. "Učinit ćemo to", odgovorio je Afanasjev. Pa mi to radimo.

Kao što znate, srce svakog modernog osobnog računala je mikroprocesor. Za mnoge je ova riječ jasno povezana s Intelom, koji je svojedobno izdao široko korišteni procesor 8086 i od tada počiva na lovorikama, stvarajući sve snažnije i snažnije njegove verzije. No, svjetlost nije došla do ove obitelji, a procesor Pentium II nipošto nije kruna evolucije, u kojoj su ljudi navodno međukorak.

Kratak, ali brz razvoj mikroračunala doveo je do pojave dviju dominantnih grana evolucije - Intel X86 i RISC. Prva su se pojavila ranije i uspjela su zauzeti značajan tržišni udio, no RISC računala razvijena sredinom 80-ih pokazala su se puno moćnijima i urezala su nišu za sustave visokih performansi.

Procesori koji ne pripadaju klasi RISC (Reduced Instruction Set Computing) obično se nazivaju CISC (Complex ISC, Complex Instruction Set computing). Tako se dogodilo da je od njih samo obitelj X86 sa svojom prtljagom nagomilanih programa preživjela konkurenciju, pa čak i tada moderni predstavnici obitelji X86 ( Pentium Pro, Pentium II, K5, K6) interno koriste istu RISC arhitekturu. Stoga se RISC može nazvati novom, ili, tijekom godina, sljedećom fazom u razvoju procesora.

A bilo je ovako. U 80-ima je rast performansi mikroprocesora bio spriječen složenim središnjim kontrolnim uređajem povezanim s velikim skupom instrukcija naslijeđenih od tradicionalnih računala. Teorijske studije pokazale su da će smanjenje skupa instrukcija na minimum onih najčešće korištenih omogućiti, blagim povećanjem veličine programa, postizanje značajnog pojednostavljenja procesora.

Tada su formulirani osnovni principi RISC-a:

  1. Svaka naredba, bez obzira na vrstu, izvršava se u jednom taktu.
  2. Sve naredbe moraju biti iste duljine i koristiti najmanje formata adrese.
  3. Sva obrada podataka provodi se u registrima procesora; pristupa se samo pri izvođenju operacija pisanja i čitanja.
  4. Sustav naredbi mora osigurati podršku za jezike visoke razine.

Kristalno područje oslobođeno kao rezultat iskorišteno je za povećanje bitnog kapaciteta i performansi procesora. Na primjer, 32-bitni ARM (Advanced RISC Machine) procesor izdan 1985. godine, sa znatno višim performansama u smislu integracije, bio je usporediv s 8-bitnim Intel 8080 (25 tisuća tranzistora). I sada su 64 bita norma za RISC procesore, ali daleka budućnost za X86.

Isti ušteđeni prostor na čipu iskorišten je za razne trikove za povećanje brzine obrade podataka. Tijekom pola stoljeća postojanja računala, razvijena su mnoga takva zvona i zviždaljke koje jednostavno nije bilo gdje smjestiti u CISC procesor.

Prednost RISC-a nije samo ušteda prostora. Aktivno korištenje registara smanjuje broj pristupa memoriji na minimum. Učitavanje registara, odnosno razmjena između registara i memorije, odvija se na dva različita načina - hardverski i softverski.

Hardver koji se koristi u SPARC procesorima uključuje implementaciju 138 registara, od kojih je deset uvijek vidljivo, a preostalih 128 je podijeljeno u osam preklapajućih prozora koji se međusobno zamjenjuju kada se pozivaju potprogrami. Ova se shema naziva MORS (Multiple Overlapping Register Sets) ili Rolodex.

U ovom slučaju, procedura se poziva bez pristupa memoriji, parametri se prenose kroz zajedničke registre dvaju prozora, ali za pozivanje devete procedure potrebno je pribjeći složenim tehničkim rješenjima i spremanju 138 registara u memoriju kada se procesi mijenjanja konteksta odvijaju u multitaskingu. sustav uzrokuje nepredvidivo kašnjenje.

Stoga većina RISC procesora koristi softversku kontrolu pristupa memoriji. Broj registara je mali (obično 32 poziva procedure koriste uobičajeni mehanizam stoga). Pretpostavlja se da pristupe memoriji još uvijek apsorbira predmemorija. Zadatak racionalnog korištenja registara leži na kompajleru.

RISC arhitekturu općenito karakterizira dodjeljivanje svih i svih zadataka prevoditelju. Brzina pokretanja istog programa na RISC procesoru može varirati nekoliko puta ovisno o kompajleru, a ručna optimizacija može smanjiti vrijeme rada fragmenta programa za još jednu polovinu.

Još jedan nedostatak RISC-a je povećanje veličine koda za otprilike jedan i pol puta zbog smanjenog skupa instrukcija i njihove fiksne duljine. Međutim, u našem vremenu bezbrojnih megabajta, to nije previše kritično - razvoj multimedije doveo je do činjenice da je količina obrađenih podataka očito postala veća od veličine koda, a performanse su po definiciji nedovoljne (vidi epigraf ).

Dmitrij BORODAENKO,
[e-mail zaštićen]

Kome treba 64-bitno računalstvo

Prije nego što smo imali vremena naviknuti se na Windows 95 i 32-bitno računalstvo, pokazalo se da to nije dovoljno. Utrka za brojem bitova se nastavlja, a poanta ovdje nije samo i ne toliko u dostupnom adresnom prostoru. Samo što je još u doba velikih strojeva dokazano da je za cjelobrojne izračune optimalna 32-bitna reprezentacija, a za brojeve s pomičnim zarezom 64 bita su nužna i dovoljna.

Stoga 32-bitni procesor s realnim brojevima pune preciznosti može podnijeti samo dva prolaza, što za RISC arhitekturu s njezinim zahtjevom za minimiziranjem formata barem neugodno. Udvostručenje bitnog kapaciteta obrađenih podataka zahtijeva ili udvostručenje bitnog kapaciteta procesora ili učetverostručenje frekvencije takta. To je dijelom razlog zašto 32-bitni PowerPC toliko zaostaje za svojim potpunim 64-bitnim kolegama u izračunima s pomičnim zarezom.

U 70-im godinama 20. stoljeća znanstvenici su iznijeli za to vrijeme revolucionarnu ideju da naprave mikroprocesor koji “razumije” samo minimalni mogući broj naredbi.

Kao rezultat toga rođena je ideja o RISC procesoru (Reduced Instruction Set Computer). praktična istraživanja učestalost korištenja naredbi programera, provedena 70-ih godina u SAD-u i Engleskoj. Njihov neposredni rezultat je dobro poznato "pravilo 80/20": u 80% koda tipičnog aplikacijski program Koristi se samo 20% najjednostavnijih strojnih instrukcija iz cijelog dostupnog skupa. elektronički uređaj mikrokontroler procesor

Prvi "pravi" RISC procesor s 31 instrukcijom stvoren je pod vodstvom Davida Pattersona na Sveučilištu Berkeley, nakon čega je uslijedio procesor s 39 instrukcija. Uključivali su 20-50 tisuća tranzistora. Plodove Pattersonovog rada iskoristio je Sun Microsystems, koji je razvio SPARC arhitekturu sa 75 timova u kasnim 70-ima. Godine 1981. na Sveučilištu Stanford pokrenut je projekt MIPS za proizvodnju RISC procesora s 39 timova. Kao rezultat toga, Mips Computer Corporation osnovana je sredinom 80-ih i dizajniran je sljedeći procesor sa 74 naredbe.

Prema neovisnoj tvrtki IDC, 1992. godine SPARC arhitektura zauzimala je 56% tržišta, a slijedili su je MIPS - 15% i PA-RISC - 12,2%

Otprilike u isto vrijeme Intel vrijeme razvio je seriju 80386, posljednje "prave" CISC procesore u obitelji IA-32. Posljednji put, poboljšanja performansi postignuta su samo povećanjem složenosti procesorske arhitekture: sa 16-bitne na 32-bitne, podržane dodatne hardverske komponente virtualna memorija, a dodan je i niz novih timova.

Glavne karakteristike RISC procesora:

  • - Smanjen skup naredbi (sa 80 na 150 naredbi).
  • - Većina naredbi se izvršava u 1 taktu.
  • - Veliki broj registara opće namjene.
  • - Dostupnost krutih višestupanjskih transportera.
  • - Sve naredbe imaju jednostavan format i koristi se nekoliko metoda adresiranja.
  • - Dostupnost prostrane zasebne predmemorije.
  • - Korištenje optimizirajućih prevodilaca koji analiziraju izvor te djelomično promijeniti redoslijed naredbi.

RISC procesori 3. generacije

Najveći proizvođači RISC procesora su Sun Microsystems (SPARC - Ultra SPARC arhitektura), IBM (multi-chip Power procesori, single-chip PowerPC - PowerPC 620), Digital Equipment (Alpha - Alpha 21164), Mips Technologies (Rxx00 - R 10000 obitelj), kao i Hewlett-Packard (PA-RISC arhitektura - PA-8000).

Svi RISC procesori treće generacije:

  • - su 64-bitni i superskalarni (najmanje 4 naredbe se pokreću po taktu);
  • - imaju ugrađene cjevovodne aritmetičke jedinice s pokretnim zarezom;
  • - imaju predmemoriju na više razina. Većina RISC procesora predmemorira unaprijed dešifrirane upute;
  • - proizvedeno CMOS tehnologijom sa 4 sloja metalizacije.

Za obradu podataka koristi se dinamički algoritam predviđanja grananja i metoda preraspodjele registara, koja omogućuje izvršavanje naredbi izvan reda.

Povećanje performansi RISC procesora postiže se povećanjem takta i povećanjem složenosti dizajna čipa. Predstavnici prvog smjera su procesori Alpha iz DEC-a;

Smanjenje skupa strojnih instrukcija u RISC arhitekturi omogućilo je postavljanje velikog broja registara opće namjene na čip računalne jezgre. Povećanje broja registara opće namjene omogućilo je minimiziranje pristupa sporom RAM-u, ostavljajući samo operacije čitanja podataka iz RAM-a u registar i pisanja podataka iz registra u RAM za rad s RAM-om; registri namjene kao operandi.

Glavne prednosti RISC arhitekture su sljedeća svojstva:

  • - Veliki broj registri opće namjene.
  • - Univerzalni format sve mikrooperacije.
  • - Jednako vrijeme izvršenja za sve strojne naredbe.
  • - Gotovo svi poslovi prijenosa podataka odvijaju se na relaciji registar-registar.

Jednako vrijeme izvršenja svih strojnih naredbi omogućuje vam obradu toka naredbenih instrukcija korištenjem principa cjevovoda, tj. hardverska sinkronizacija izvodi se uzimajući u obzir sekvencijalni prijenos kontrole s jednog hardverska jedinica drugome.

Hardverske jedinice u RISC arhitekturi:

Blok za učitavanje instrukcija uključuje sljedeće komponente: blok za dohvaćanje instrukcija iz memorije instrukcija, registar instrukcija u koji se instrukcija stavlja nakon što je dohvaćena i blok za dekodiranje instrukcija. Ova faza se naziva faza dohvaćanja instrukcija.

Registri opće namjene, zajedno s kontrolnim jedinicama registara, čine drugu fazu cjevovoda, odgovornu za čitanje operanda instrukcija. Operandi se mogu pohraniti u samu instrukciju ili u jedan od registara opće namjene. Ova faza se naziva faza dohvaćanja operanda.

Aritmetičko-logička jedinica i, ako je implementirana u danoj arhitekturi, akumulator, zajedno s upravljačkom logikom, koja, na temelju sadržaja registra instrukcija, određuje vrstu mikrooperacije koju treba izvesti. Osim registra instrukcija, izvor podataka može biti programski brojač pri izvođenju mikrooperacija uvjetnog ili bezuvjetnog skoka. Ovaj stupanj se naziva izvršni stupanj transportera.

Skup registara opće namjene, logika pisanja i ponekad RAM čine fazu pohrane podataka. U ovoj fazi se rezultati izvršavanja instrukcija zapisuju u registre opće namjene ili glavnu memoriju.

Međutim, u vrijeme kada je RISC arhitektura razvijena, Intel x86 arhitektura, temeljena na principu CISC arhitekture, postala je de facto industrijski standard za mikroprocesore. Dostupnost velikog broja programa napisanih za Intelova arhitektura x86, onemogućio je masovni prijelaz računala na RISC arhitekturu. Iz tog razloga, glavni slučaj korištenja RISC arhitekture bili su mikrokontroleri, zbog činjenice da nisu bili vezani uz postojeći softver. Osim toga, neki proizvođači računala, predvođeni IBM-om, također su počeli proizvoditi računala izgrađena na RISC arhitekturi, ali nekompatibilnost softvera između Intel x86 i RISC arhitekture značajno je ograničila distribuciju potonje.

Međutim, prednosti RISC arhitekture bile su toliko značajne da su inženjeri pronašli način prebacivanja na računala s RISC arhitekturom bez napuštanja postojećeg softvera. Jezgre većine modernih mikroprocesora koji podržavaju Intel x86 arhitekturu izrađene su prema RISC arhitekturi s podrškom za multiskalarnu cjevovodnu obradu. Mikroprocesor prima instrukcije u formatu Intel x86 kao ulaz; zamjenjuje ih s nekoliko (do 4) RISC instrukcija.

Tako su jezgre većine modernih mikroprocesora, počevši od Intela 486DX, izrađene prema RISC arhitekturi s podrškom za vanjsko Intel x86 sučelje. Osim toga, velika većina mikrokontrolera, kao i neki mikroprocesori, proizvedeni su korištenjem RISC arhitekture.

Moderni RISC procesor koristi najmanje 32 registra, često više od 100, dok klasična digitalna računala obično imaju 8-16 registara opće namjene. Kao rezultat toga, procesor pristupa RAM-u 20%-30% rjeđe, što također povećava brzinu obrade podataka. Osim toga, prisutnost velika količina registers pojednostavljuje rad prevoditelja u dodjeljivanju registara varijablama. Topologija procesora, izvedena kao jedan, je pojednostavljena integrirani krug, vrijeme razvoja mu je smanjeno, a postao je i jeftiniji.

Nakon pojave RISC procesora, tradicionalni procesori su označeni kao CISC - odnosno sa cijeli set naredbe (Complete Instruction Set Computer).

Trenutno se naširoko koriste RISC procesori. Moderne RISC procesore karakterizira sljedeće:

  • - pojednostavljeni skup naredbi;
  • - koriste se naredbe fiksne duljine i fiksnog formata, koriste se jednostavne metode adresiranja, što pojednostavljuje logiku dekodiranja naredbi;
  • - većina naredbi se izvršava u jednom ciklusu procesora;
  • - logika za izvršavanje naredbi u cilju povećanja performansi usmjerena je na hardver, a ne na implementaciju firmvera; nema makro naredbi koje kompliciraju strukturu procesora i smanjuju njegovu radnu brzinu;
  • - interakcija s RAM-om ograničena je na operacije prijenosa podataka;
  • - za obradu se u pravilu koriste troadresne naredbe, što osim što pojednostavljuje dešifriranje, omogućuje spremanje većeg broja varijabli u registre bez njihovog naknadnog ponovnog učitavanja;
  • - stvoren je cjevovod naredbi koji vam omogućuje obradu nekoliko njih istovremeno;
  • - prisutnost velikog broja registara;
  • - koristi se memorija velike brzine.

U RISC procesorima obrada strojne instrukcije podijeljena je u nekoliko faza, svaki stupanj opslužuje zaseban hardver i organiziran je prijenos podataka iz jednog stupnja u drugi.

Produktivnost se povećava zbog činjenice da se nekoliko naredbi izvršava istovremeno u različitim fazama cjevovoda.

Izvršenje tipične naredbe može se podijeliti u sljedeće korake:

  • - IF dohvaćanje naredbe - na adresi koju odredi programski brojač, naredba se dohvaća iz memorije;
  • - 2) dekodiranje naredbe ID - pronalaženje njenog značenja, odabir operanda iz registara;
  • - 3) izvođenje EX operacije, po potrebi pristup memoriji - izračunavanje fizičke adrese;
  • - 4) pristup ME memoriji;
  • - 5) memoriranje WB rezultata

U procesorima s RISC arhitekturom, skup izvršne naredbe svedeno na minimum. Da biste implementirali složenije operacije, morate kombinirati naredbe. U ovom slučaju, sve naredbe imaju format fiksne duljine (na primjer, 12, 14 ili 16 bita), naredba se dohvaća iz memorije i izvršava u jednom ciklusu sinkronizacije (ciklusu). Sustav instrukcija RISC procesora pretpostavlja mogućnost ravnopravnog korištenja svih registara procesora. Ovo pruža dodatnu fleksibilnost za niz operacija. MCU-ovi s RISC procesorom uključuju AVR MCU-ove tvrtke Atmel, PIC16 i PIC17 MCU-ove tvrtke Microchip i druge.

Na prvi pogled, MCU-ovi s RISC procesorom trebali bi imati više visoke performanse u usporedbi s CISC MK na istoj taktnoj frekvenciji unutarnje sabirnice. Međutim, u praksi je pitanje produktivnosti složenije i dvosmislenije.

sl.2

Harvardska arhitektura gotovo da se nije koristila sve do kasnih 70-ih, sve dok proizvođači MK nisu shvatili da pruža određene prednosti programerima autonomni sustavi upravljanje.

Činjenica je da, sudeći prema iskustvu korištenja MPS-a za kontrolu različitih objekata, za implementaciju većine kontrolnih algoritama takve prednosti von Neumannove arhitekture kao što su fleksibilnost i svestranost nemaju od velike važnosti. Analiza pravi programi kontrola je pokazala da je potrebna količina MK podatkovne memorije koja se koristi za pohranu međurezultati, u pravilu, je red veličine manji od potrebne količine programske memorije. Pod tim uvjetima, korištenje jednog adresnog prostora dovelo je do povećanja formata instrukcija zbog povećanja broja bitova za adresiranje operanda. Korištenje zasebne, male podatkovne memorije pomoglo je smanjiti duljinu naredbi i ubrzati traženje informacija u podatkovnoj memoriji.

Osim toga, harvardska arhitektura pruža potencijalno više velika brzina izvođenje programa u odnosu na von Neumanna zbog mogućnosti implementacije paralelne operacije. Dohvaćanje sljedeće instrukcije može se dogoditi istodobno s izvođenjem prethodne i nema potrebe zaustavljati procesor dok se instrukcija dohvaća. Ovakav način implementacije operacija omogućuje izvršavanje različitih naredbi u istom broju ciklusa takta, čime je moguće lakše odrediti vrijeme izvršenja ciklusa i kritičnih dijelova programa.

Većina proizvođača modernih 8-bitnih MCU-ova koristi Harvardsku arhitekturu. Međutim, harvardska arhitektura nije dovoljno fleksibilna za implementaciju nekih softverskih postupaka. Stoga bi se usporedbe mikrokontrolera izrađenih pomoću različitih arhitektura trebale provoditi u odnosu na specifičnu primjenu.

RISC arhitektura uključuje implementaciju u računalo smanjenog skupa jednostavnih, ali često korištenih naredbi, što omogućuje pojednostavljenje hardvera procesora i time povećanje njegovih performansi.

Kada se koristi RISC arhitektura, izbor skupa instrukcija i strukture procesora (mikroprocesora) ima za cilj osigurati da se instrukcije u skupu izvršavaju u jednom procesorskom strojnom ciklusu. Potprogrami omogućuju složenije, ali rijetke operacije.

U računalu s RISC-om Strojni ciklus je vrijeme tijekom kojeg se dva operanda dohvaćaju iz registara, operacija se izvodi u ALU, a rezultat se pohranjuje u registar. Većina timova u RISC-u jest brze naredbe tipa “registar-registar” i izvršavaju se bez pristupa OP-u. Pristupi OP-u spremaju se samo u naredbama za učitavanje registara iz memorije i njihovo pohranjivanje u OP. Da bi to bilo moguće, procesor mora sadržavati dovoljno velik broj zajedničkih registara.

Zahvaljujući značajkama karakterističnim za RISC arhitekturu - smanjenom skupu instrukcija (obično ne više od 50-100), mali broj(obično 2-3) jednostavnih načina adresiranje (uglavnom registar), mali broj jednostavni formati timovi sa fiksne veličine i funkcionalna namjena njihovih polja - upravljački uređaj procesora je pojednostavljen, što u ovom slučaju čini bez mikroprogramske upravljačke razine i upravljačke memorije, a njegova upravljačka jedinica može se implementirati na "logiku sklopa".

Smanjenje broja izvršenih instrukcija i druge značajke RISC arhitekture navedene gore dovode do tako značajnog pojednostavljenja strukture procesora da je postaje moguće implementirati ga na jednom čipu zajedno s velikom datotekom registra i predmemorije.

Velik broj registara, pogotovo ako postoji onaj koji ih osigurava učinkovito korištenje“optimizirajući prevodilac”, omogućuje vam smanjenje pristupa OP-u do krajnjih granica pohranjivanjem međurezultata u registre, prijenosom operanda iz jednog programa u drugi program ili potprogram kroz registre i odbijanjem prijenosa radi spremanja sadržaja registara u OP-u tijekom prekidi.

Značajka RISC arhitekture je mehanizam prozori registara koji se preklapaju, dizajniran za smanjenje broja pristupa OP-u i međuregistarskih prijenosa, što pomaže u poboljšanju performansi računala.

Procedure su dinamički alocirane male skupine registara fiksne duljine (prozori registara). Prozori sekvencijalno izvedenih procedura se preklapaju, što omogućuje prijenos parametara iz jedne procedure u drugu. Kada se procedura pozove, procesor prelazi na rad s drugim prozorom registra, bez potrebe za prijenosom sadržaja registara u memoriju.



Prozor se sastoji od tri podskupine registara (slika 9.21). Prva podskupina sadrži parametre proslijeđene ovoj proceduri od njenog pozivatelja i rezultate za postupak pozivanja pri povratku na njega. Druga podskupina sadrži varijable lokalne procedure. Treći, budući da je međuspremnik za dvosmjernu razmjenu između ove i sljedeće procedure koju poziva, prenosi parametre iz ove u potonju, koja zauzvrat prima rezultate iz procedure koju je pozvao kroz ovaj međuspremnik. Dakle, ista podskupina za danu proceduru su registri privremene memorije, a za sljedeću su to registri parametara. Njegovim globalnim varijablama dodijeljen je poseban prozor, dostupan svim programskim procedurama.

Trenutno je u inozemstvu pušten niz mikroprocesora s RISC arhitekturom. Primjer su stanice visokih performansi temeljene na mikroprocesoru Alpha 21264, mikroprocesoru za WindowsCE Intel StrongARM.

Unatoč početku korištenja RISC arhitekture u industrijski proizvedenim računalima, nastavljaju se rasprave o prednostima i nedostacima ove arhitekture. Potonji, posebice, uključuju veću duljinu programskog koda nakon kompilacije u usporedbi s duljinom koda strojeva konvencionalne arhitekture. Na primjer, kod emulacije x86 naredbi, u prosjeku, svaka naredba zahtijeva pet do šest naredbi sa stroja s RISC arhitekturom. Međutim, kako su studije pokazale, dobitak u brzini izvršavanja naredbi nadmašuje gubitak od produljivanja programskog objektnog koda.

Godine 1989 Intel uspio stvoriti mikroprocesor s jednim čipom 80860 temeljen na RISC arhitekturi, koji je praktički silicijski ekvivalent Gray-1 superračunala.

Klasifikacija arhitektura mikroprocesora

Razvoj arhitekture računala, usmjeren na povećanje njihovih performansi, u mnogim slučajevima ide putem povećanja složenosti procesora širenjem sustava (skupa) instrukcija, uvođenjem složenih naredbi koje izvode procedure koje se približavaju primitivima jezika visoke razine, povećanjem broja naredbi i naredbi. broj korištenih metoda adresiranja itd.

Međutim, proširenje i složenost skupa naredbi također dovodi do niza neželjenih nuspojava.

Proširenje skupa naredbi, povećanje broja metoda adresiranja i uvođenje složenih naredbi prati povećanje duljine naredbenog koda, prije svega operacijskog koda, što može dovesti do upotrebe “proširujućeg operacijskog koda” i povećanje broja formata naredbi. To komplicira i usporava proces dekodiranja operacijskog koda i drugih postupaka obrade naredbi. Sve veća složenost postupaka obrade naredbi tjera na korištenje mikroprogramiranih upravljačkih uređaja kontrolirati memoriju umjesto bržih upravljačkih jedinica s “tvrdom” (“krugom”) logikom.

Povećanje složenosti procesora otežava ili čak onemogućuje njegovu implementaciju na jednom čipu integriranog kruga, što bi smanjenjem duljine međusobnog povezivanja olakšalo postizanje visokih performansi.

Analiza programskog koda generiranog prevoditeljima jezika visoke razine pokazala je da samo ograničen skup jednostavne naredbe formati "registrirati, registrirati -> registrirati" i "registrirati<->memorije." Kompajleri nisu u stanju učinkovito koristiti složene instrukcije. Upravo je to opažanje pridonijelo formiranju koncepta procesora sa smanjenim skupom instrukcija, takozvanih RISC procesora.

Još jedna okolnost koja je zapravo dovela do pojave RISC procesora bio je razvoj cjevovodne procesorske arhitekture tipa Cray. Ovi procesori koriste zasebne skupove instrukcija za rad s memorijom i zasebne skupove instrukcija za pretvorbu informacija u registrima procesora. Svaka takva naredba ravnomjerno je podijeljena na mali broj faza s istim vremenom izvršenja (dohvaćanje naredbe, dekodiranje naredbe, izvršenje, snimanje rezultata), što omogućuje izgradnju učinkovitog procesorskog cjevovoda koji može proizvesti rezultat izvršenja sljedeća naredba svaki takt.

Međutim, cjevovodno izvršavanje naredbi dovelo je do problema povezanih s podacima i ovisnostima o kontroli između naredbi sekvencijalno lansiranih u cjevovod. Na primjer, ako sljedeća naredba koristi rezultat prethodne, tada je njeno izvršenje nemoguće tijekom nekoliko ciklusa takta potrebnih za dobivanje ovog rezultata. Slični problemi nastaju prilikom izvršavanja naredbi uvjetnog skoka, kada podaci na kojima se vrši skok još nisu spremni do trenutka dekriptiranja naredbe uvjetnog skoka.

Te probleme rješava kompilator, koji postavlja redoslijed kojim se naredbe izvode u cjevovodu i umeće naredbe "Bez operacije" kada se sljedeća naredba ne može pokrenuti, ili poseban procesorski hardver koji prati ovisnosti između naredbi i uklanja sukobe.

Nakon odvajanja RISC procesora u zasebnu klasu, procesori s tradicionalnim skupom instrukcija počeli su se nazivati ​​CISC procesori s punim skupom instrukcija. U pravilu, u ovim procesorima instrukcija ima mnogo različite formate i zahtijevaju različit broj memorijskih ćelija za svoju reprezentaciju. To određuje vrstu instrukcije tijekom njezine dešifriranja tijekom izvođenja, što komplicira upravljački uređaj procesora i onemogućuje povećanje taktne frekvencije do razine koja se može postići u RISC procesorima na istoj bazi elemenata.

Očito, RISC procesori su učinkoviti u onim aplikacijama u kojima se strukturne metode mogu produktivno koristiti za smanjenje vremena pristupa RAM-u. Ako program generira nasumične sekvence adresa za pristup memoriji i svaka podatkovna jedinica se koristi samo za izvršavanje jedne instrukcije, tada je izvedba procesora zapravo određena vremenom koje je potrebno za pristup glavnoj memoriji. U ovom slučaju, korištenje smanjenog skupa instrukcija samo smanjuje učinkovitost, budući da zahtijeva prijenos operanda između memorije i registra umjesto izvršavanja memorija, memorija - memorijske instrukcije. Programer mora voditi računa o potrebi lokalnog smještaja obrađenih podataka, tako da prilikom prijenosa između memorijskih razina, ako je moguće, svi podaci u prenesenim blokovima podataka sudjeluju u obradi. Ako je program napisan na način da su podaci raspoređeni kaotično i da se samo mali dio koristi od svakog prenesenog bloka podataka, tada će se brzina obrade nekoliko puta usporiti na brzinu glavne memorije. Kao primjer, u tablici 1.1 prikazujemo rezultate mjerenja performansi mikroprocesora Alpha 21066 233 MHz pri implementaciji Hadamardove transformacije na n = 8 - 20.

Tablica 1.1 Performanse mikroprocesora Alpha 2I066 pri izvođenju Hadamardove transformacije

Primjer pokazuje da su performanse dobre sve dok se podaci nalaze u predmemorije na čipu. Čim količina podataka premaši veličinu predmemorije i pristupi memoriji idu na adrese "ravnomjerno" raspoređene po volumenu, performanse padaju za više od 7 puta.

Razvoj mikroprocesora odvija se uz stalnu želju da se održi kontinuitet softvera (softvera) i poveća produktivnost poboljšanjem arhitekture i povećanjem frekvencije takta. Održavanje kontinuiteta softvera i povećanje produktivnosti su, općenito govoreći, kontradiktorni. Procesori s x86 skupom instrukcija, koji pripadaju klasi CISC procesora, imaju niže taktove u odnosu na mikroprocesore vodećih proizvođača RISC procesora. Postoje aplikacije u kojima su performanse x86 mikroprocesora znatno niže od performansi RISC procesora implementiranih na istoj bazi elemenata. Međutim, mogućnost korištenja kompatibilnog softvera za različite generacije x86 procesori izdani tijekom proteklog desetljeća osiguravaju im stabilnu dominantnu poziciju na tržištu.

Trenutno se na temelju pionirskih razvoja NexGen-a i AMD-a, koje je preuzeo Intel, pokušava riješiti problem povećanja performansi unutar x86 arhitekture. U svojim najnovijim razvojima ove tvrtke, zadržavajući kontinuitet u sustavu instrukcija s CISC mikroprocesorima x86 obitelji, stvaraju nove uređaje koristeći elemente RISC arhitekture. Primjer ovakvog pristupa su mikroprocesori Nx586 (NexGen), K5, K6 (AMD), Pentium PRO, Pentium II (Intel), koji koriste koncept decoupled arhitekture i RISC jezgri. Hardverski prevoditelj ugrađen je u mikroprocesor, pretvarajući x86 naredbe u naredbe RISC procesora. U ovom slučaju, jedna x86 naredba može generirati do četiri naredbe RISC procesora. Izvršenje naredbi događa se kao u razvijenom superskalarnom procesoru. Tvrtka Intel koristio je ovaj pristup u svom mikroprocesoru Pentium Pro, koji je uvelike ojačao svoju poziciju u odnosu na napredak u RISC arhitekturama.

Superskalarni procesori

  • Prijevod

Napomena prevoditelja. U izvornom članku autori (jedan od njih je pionir RISC procesora D. Patterson) zalažu se za potrebu razvoja otvorenih ISA (arhitektura skupa instrukcija, skupova instrukcija procesora) i proizvoda temeljenih na njima. Izneseni argumenti su poticanje razvoja onih područja računarstva i gospodarskih niša za koje komercijalne tvrtke nisu zainteresirane ili nisu dovoljno fleksibilne. Oni su podsjetnik na uspjehe otvorenih standarda i slobodnog softvera.

Naišao sam na proširenu verziju ovog članka (kao i protučlanak od predstavnika ARM-a i kontra-kontraparagraf od autora!) u kolovoškom izdanju časopisa Microprocessor Report (MPR). Pristup MPR-u je ograničen i odnosi se samo na pretplatnike, ali otvoreni pristup Postoji izvorno izvješće objavljeno na web stranici Sveučilišta Berkeley. U nastavku nudim njegov prijevod.

Skupovi instrukcija trebali bi biti besplatni: slučaj za RISC-V, Krste Asanović i David A. Patterson. Odjel EECS, Kalifornijsko sveučilište, Berkeley - Tehničko izvješće br. UCB/EECS-2014-146 www.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-146.html

Obavijest o autorskim pravima i odricanje od odgovornosti

Autorsko pravo 2014, autor(i).
Sva prava pridržana.
Dopuštenje za izradu digitalnih ili tiskanih kopija cijelog ili dijela ovog rada za osobnu upotrebu ili upotrebu u učionici izdaje se bez naknade pod uvjetom da se kopije ne izrađuju ili distribuiraju radi profita ili komercijalne koristi te da kopije nose ovu obavijest i puna citat na prvoj stranici. Za drugačije kopiranje, ponovno objavljivanje, postavljanje na poslužitelje ili redistribuciju popisima, potrebno je prethodno posebno dopuštenje.



Prilagođeni sustavi na čipu (SoC), u kojima procesori i njihove predmemorije zauzimaju samo mali dio matrice, postaju sveprisutni; danas ga je teško naći elektronički uređaj, koji ne koristi procesor kao dio SoC-a. Stoga više tvrtki dizajnira čipove koji uključuju procesore nego što je to ranije bio slučaj. S obzirom na revoluciju koju su doveli otvoreni standardi i otvoreni softver - poput TCP/IP mrežnog protokola i operativnog sustava Linux - zašto jedno od najvažnijih sučelja ostaje zaštićeno?

Argumenti za besplatne, otvorene ISA

Naravno, neki skupovi instrukcija procesora (ISA, engleska arhitektura skupa instrukcija) mogu biti vlasnički zbog povijesnih i komercijalnih razloga. Međutim, nema niti jednog čvrstog tehničkog razloge koji objašnjavaju nedostatak besplatnih, otvorenih opcija.
  1. Ovo nije greška ili propust. Tvrtke koje posjeduju uspješne ISA-e, poput ARM-a, IBM-a i Intela, imaju patente za nedostatke svojih skupova instrukcija, što sprječava druge da ih koriste bez licenci 1 . Pregovori za korištenje traju 6-24 mjeseca i mogu koštati od 1 do 10 milijuna dolara, što isključuje akademske organizacije i bilo koga tko iz procesa zahtijeva samo male količine proizvodnje 2 . Licenca od ARM-a vam čak ne dopušta ni dizajn vlastitu jezgru; dobivate samo pravo korištenja njihov dizajn (samo oko 15 velikih tvrtki ima pravo stvarati nove ARM jezgre). Čak je i "OpenPOWER" oksimoron; morate platiti IBM-u da koristite ovaj ISA. Razumno sa stajališta poslovanje, sličnu praksu licenciranje guši konkurenciju i inovacije sprječavajući mnoge da dizajniraju i dijele vlastite kernele usklađene s ISA-om.
  2. To nije zato što vlasnici ISA-e sami proizvode veliku većinu softvera za svoje sustave. Unatoč veličini softverskih ekosustava koji su izrasli oko popularnih ISA-a, lavovski udio softvera za njih napisali su vanjski ljudi.
  3. Te tvrtke ne posjeduju sveto znanje potrebno za stvaranje odgovarajućeg ISA. To je puno posla, ali mnogi ljudi danas mogu osmisliti skup uputa.
  4. Najpopularniji ISA-ovi nisu najelegantniji. I 80x86 i ARM ne smatraju se standardima dobrog dizajna.
  5. Kontrola tvrtke nije potrebna za provjeru sukladnosti s ISA. Otvorene organizacije razvile su mehanizme za potvrđivanje kompatibilnosti hardvera prije mnogo godina. Primjeri: IEEE 754 standard s pomičnim zarezom, Ethernet, PCIe. Da nije tako, otvoreni IT standardi ne bi bili toliko popularni.
  6. Konačno, nema jamstva da će vlasnički ISA dugo trajati. Ako tvrtka propadne i nestane, sa sobom nosi i svoj ISA. Propast DEC-a okončala je razvoj Alpha i VAX skupova instrukcija.

Imajte na umu da je ISA zapravo specifikacija sučelja, a ne implementacija. Postoje tri pristupa implementaciji sučelja:

1. Privatno zatvoreno, slično Apple iOS-u.
2. Licencirani otvoreni kod, poput Wind River VxWorks.
3. Slobodno i otvoreno, gdje korisnici mogu mijenjati i dijeliti, kao što se radi u Linuxu.

Vlasnički ISA-ovi u praksi vam omogućuju rad s prva dva pristupa, ali potreban vam je besplatni ISA otvorenog koda za podršku sva tri pristupa.

Stoga zaključujemo da će industrija imati koristi od održivog besplatno dostupnog ISA otvorenog koda onoliko koliko je imala koristi od razvoja besplatnog softvera otvorenog koda. Na primjer, ovo će stvoriti doista slobodno otvoreno tržište za dizajn procesora, koji je trenutačno ometan patentima o ISA-ovim hirovima.

To može dovesti do:

1. Inovacija kroz natjecanje na slobodnom tržištu mnogih dizajnera, uključujući otvorene i zatvorene ISA implementacije.
2. Opći dizajn otvorene jezgre, koji će rezultirati skraćenim vremenom izlaska na tržište, smanjenim troškovima ponovne upotrebe, manje pogreške zbog velike pozornosti mnogih ljudi 3, te u transparentnosti, što će, na primjer, otežati vladinim agencijama implementaciju tajnih stražnjih vrata.
3. Procesori dostupni za više uređaja koji će pomoći u razvoju interneta stvari (IoT), s cijenom od oko jednog dolara.

Argumenti za RISC kao stil za besplatni, otvoreni ISA

Da bi bilo koji ISA bio prihvaćen od strane zajednice otvorenog koda, vjerujemo da mora imati uspješnu povijest komercijalne upotrebe. Prvo pitanje je koji stil ISA-e pokazuje takvu povijest? Tijekom proteklih 30 godina povijest nije poznavala niti jednog uspješnog stog arhitektura ( Napomena prevoditelja: čudna izjava, s obzirom na uspjeh Java bajt koda i .NET CLI - arhitekture hrpe). Osim u segmentu primjene DSP-a (digitalna obrada signala), VLIW također nije uspio: Multiflow je isplivao, a Itanium, unatoč milijardama dolara ulaganja HP-a i Intela, nije dobio priznanje. Već desetljećima niti jedan novi CISC ISA nije uspješan. Preživjele CISC arhitekture prevode svoje složene upute u jednostavnije ISA-ove, što ima smisla za pokretanje vrijednih naslijeđenih baza koda. Novi ISA, po definiciji, neće imati takvu bazu, pa je dodatne troškove hardvera i potrošnju energije potrebnu za emitiranje teško opravdati: zašto jednostavno ne upotrijebiti jednostavniji ISA? RISC-like load-store setovi instrukcija poznati su najmanje 50 godina, od CDC 6600 ere Seymoura Craya. Dok je 80x86 pobijedio u PC ratovima, RISC dominira tabletima i telefonima post-PC ere. Više od 10 milijardi ARM-ova prodano je 2013., u usporedbi s 0,3 milijarde x86. Ponavljajući ono što smo rekli 19804, vjerujemo da RISC jest najbolji izbor za besplatni i otvoreni ISA.

Štoviše, novi RISC ISA može biti bolji od svojih prethodnika ako se tijekom razvoja uzmu u obzir njihove pogreške:

  1. Previše je iznimaka: nedostatak naredbi za učitavanje/pohranjivanje bajtova i poluriječi u prvom Alpha ISA-u i nedostatak učitavanja/pohranjivanja brojeva s pomičnim zarezom u MIPS-u I.
  2. Uključivanje redundantnog: ugrađeno prebacivanje u ARM instrukcije i prozore registara SPARC.
  3. Utjecaj mikroarhitektonskih detalja na ISA: odgođeno grananje u MIPS-u i SPARC-u, barijere zamke za brojeve s pomičnim zarezom na Alpha.

Kako bi zadovoljio potrebe tržišta ugrađenih uređaja, RISC je čak ponudio rješenje za problem veličine koda: ARM Thumb i MIPS16 dodali su 16-bitne formate kako bi kod bio još kraći od 80x86. Dakle, postoji široko rasprostranjeno slaganje o tome kako bi dobar RISC ISA općenito trebao izgledati.

Argumenti za korištenje postojećeg besplatnog otvorenog RISC ISA

Već postoje tri besplatna RISC ISA 5 otvorenog koda:
  • SPARC V8 - zaslugom Sun Microsystemsa, napravili su SPARC V8 IEEE standard 1994. godine.
  • OpenRISC je projekt otvorenog izvornog koda s GNU-ovom licencom započet 2000., a 64-bitni ISA dovršen 2011.
  • RISC-V - 2010. godine, dijelom zbog ARM-ovih IP ograničenja i nedostatka 64-bitnih načina rada, a također i zbog opće grotesknosti ARM v7, mi i naši studenti Andrew Waterman i Yunsup Lee razvili smo RISC-V 6 (izgovara se "RISC" -5") za naše istraživačke i nastavne svrhe i objavili smo ga pod BSD licencom.

Budući da su obično potrebne godine da se ispoliraju sitnice - OpenRISC-u je trebalo 11 godina da sazrije, dok je RISC-V trebalo 4 godine - bilo bi primjerenije započeti s postojećim ISA-om, a ne formirati odbor i krenuti od nule. Svi RISC-ovi su slični, tako da svaki od njih može biti dobar kandidat.

Budući da ISA-ovi mogu trajati desetljećima, potrebno je prvo ekstrapolirati i opisati budući krajolik informacijske tehnologije, kako bismo razumjeli koje značajke mogu biti važne za olakšavanje procesa određivanja prioriteta. Najvjerojatnije će prevladati tri platforme: IoT - milijarde jeftinih uređaja s IP adresama i pristupom internetu; 2) osobni Mobilni uredaji, kao što je moderni telefoni i tablete; 3) podatkovni centri (Warehouse-Scale Computers, WSC). Moguće je imati različite ISA-ove za svaku vrstu platforme, ali život će biti lakši ako postoji jedan posvuda. Ova slika budućnosti predlaže četiri ključna zahtjeva.

1. Osnovni ISA plus format proširenja 7. Kako bi poboljšali učinkovitost i smanjili troškove, SoC sustavi dodaju vlastite akceleratore specifične za aplikaciju. Da bi se to postiglo, kao i da bi se održala stabilna baza koda, besplatni otvoreni ISA mora imati: a) malu jezgru instrukcija koje su poznate prevodiocima i OS-u, b) standardna, ali neobavezna proširenja za česte privatne scenarije prilagodbe SoC-a na određenu aplikaciju, c) prostor za potpuno nove kodove uputa za rad akceleratora.

2. Kompaktno kodiranje naredbi. Manje koda je poželjno zbog osjetljivosti cijene IoT aplikacija na količinu korištene memorije.

3. Izračuni s četverostrukom preciznošću (QP, četverostruka preciznost) na brojevima s pomičnim zarezom uz dvostruku i jednostruku preciznost. Neke aplikacije koje se danas izvode u podatkovnim centrima obrađuju tako velike količine podataka da već koriste softverske biblioteke za QP.

4. 128-bitno adresiranje uz 32- i 64-bitno. Ograničenja memorije IoT uređaja znače da će 32-bitno adresiranje dugo ostati relevantno. 64-bitne adrese su de facto standard za sve velikih sustava. Iako WSC industrija neće zahtijevati svih 2128 bajtova, moguće je da će u roku od jednog desetljeća biti potrebni brojevi veći od 2,64 (16 egzabajta) za rješavanje SSD pohrane. Ograničena veličina adresnog prostora jedna je od onih ISA grešaka koje je teško ispraviti, 8 i mudro je sada planirati veće adrese.

Sljedeća tablica sažima informacije o tri besplatna ISA-a otvorenog koda na temelju ova četiri kriterija, kao i dostupnost podrške prevoditelja i prenesenog OS-a.

Argumenti za RISC-V kao besplatni, otvoreni ISA

Naša se zajednica treba ujediniti iza jedinstvenog ISA-a kako bismo testirali da li besplatni, otvoreni ISA može funkcionirati u praksi. Samo RISC-V zadovoljava sva četiri zahtjeva. Također je 10 do 20 godina mlađi od ostalih RISC-ova, tako da smo bili u mogućnosti analizirati i ispraviti njihove greške, kao što su SPARC i OpenRISC odgoda grananja. Stoga je sustav naredbi RISC-V jednostavan i jasan (pogledajte tablice 4 i 5 izvornog članka, kao i www.riscv.org). Uz činjenicu da ostali ISA-ovi ne ispunjavaju mnoge zahtjeve, postoje pitanja o činjenici da je 64-bitni SPARC V9 vlasnički i da je OpenRISC izgubio zamah.
RISC-V još uvijek ima puno zamaha. Tablica 1 navodi razne skupine, projektiranje SoC-ova temeljenih na RISC-V. Djelomično zbog upotrebe visokoproduktivnih, otvoreni sustav Chisel 9 dizajn hardvera, Sveučilište Berkeley već ima 8 vrsta čipova i novi razvoj je u tijeku. Tablica 2 pokazuje da jedna 64-bitna RISC-V jezgra zauzima pola površine, troši upola manje energije i još uvijek je brža od 32-bitnog ARM-a sa sličnim cjevovodom ili procesnom tehnologijom. Iako je teško potpuno eliminirati našu pristranost po ovom pitanju, vjerujemo da je RISC-V najbolji i najsigurniji izbor za besplatni, otvoreni RISC ISA. Stoga ćemo provesti seriju od 10 radionica kako bismo proširili RISC-V zajednicu i, inspirirani primjerima u tablici 3, planiramo stvoriti neprofitnu zakladu za zadatak certificiranja implementacija te podržavati i razvijati ISA .

Zaključak

Naš argument je još jasniji za otvoreni ISA nego za otvoreni OS, budući da se ISA mijenjaju vrlo sporo, dok algoritamske inovacije i nove aplikacije zahtijevaju kontinuiranu evoluciju OS-a. Baš kao i TCP/IP, to je standard sučelja koji je lakše održavati i razvijati nego OS.

Otvoreni ISA-ovi korišteni su i prije, ali nikada nisu postali popularni zbog nedostatka potražnje za njima. Niska cijena i IoT potrošnja energije, želja za 80x86 alternativom za podatkovne centre i činjenica da procesorske jezgre- samo mali, ali sveprisutni dio svih SoC-ova objedinjuje se u ponudu koja može zadovoljiti nastalu potražnju. RISC-V prvenstveno je namijenjen SoC-ovima, s osnovnim skupom uputa koje se nikada ne mijenjaju s obzirom na dug vijek trajanja RISC ideja, s polagano evoluirajućim podskupom opcijskih proširenja, kao i jedinstvenim uputama koje se nikada neće ponovno koristiti. Dok prva odskočna daska za RISC-V može biti IoT ili WSC, naš je cilj širi: baš kao što je Linux postao standardni OS za većinu računalni uređaji, predviđamo RISC-V kao standard ISA za sve buduće računalne uređaje.