Arhitectura procesorului RISC
Arhitectura RISC este un calculator cu un set redus de instrucțiuni. Este un tip de arhitectură microprocesor care utilizează un mic set de instrucțiuni optimizate, spre deosebire de tipurile anterioare de arhitecturi, cu un set extins de date algoritmice. Termenul RISC a fost elaborat de David Patterson de la proiectul RISC de la Berkeley.
conținut
- Definiție
- Istorie și dezvoltare
- Pro și contra arhitecturii risc
- Abordarea risc
- Comparație între cisc și risc
- Caracteristicile procesului
- Dificultăți cu implementarea comercială
- Avantajul general al risc
- Filozofia setului de instrucțiuni
- Formatul instrucțiunii
- Utilizarea echipamentului
- Caracteristici ale arhitecturii risc
- Aplicare practică
- Comparație cu alte arhitecturi
definiție
Un computer cu un set limitat de comenzi - un dispozitiv a cărui set de instrucțiuni arhitectură (ISA) este un set de atribute, care îi permite să aibă cicluri mai mici pentru fiecare instrucțiune (IPC), cu atât mai complexă comanda setată la calculator (CISC). Conceptul general al RISC - este un concept de calculator, care conține un mic set de algoritmi simpli și comune, dar nu sa extins set de secvențe complexe și specializate. O altă caracteristică comună a RISC este arhitectura de încărcare / stocare, unde accesul la memorie este posibil numai prin instrucțiuni specifice.
Istorie și dezvoltare
Primele proiecte RISC au venit de la IBM, Stanford și UC-Berkeley în anii `70 și `80. XX secol. IBM 801, Stanford MIPS și Berkeley RISC I și II au fost dezvoltate cu o filozofie similară care a devenit cunoscută sub numele de RISC. Unele caracteristici ale designului au fost caracteristice pentru majoritatea procesoarelor RISC:
- Timpul de execuție al unui singur ciclu: procesorii au IPC - timpul pentru a executa instrucțiunile unui singur ciclu. Acest lucru se datorează optimizării fiecărei comenzi pe CPU.
- Conductă de alimentare: un algoritm tehnic care permite execuția simultană a unor părți sau etape de instrucțiuni pentru o prelucrare mai eficientă a instrucțiunilor.
- O mare listă de registre: filozofia de proiectare a RISC include de obicei mai multe registre pentru a preveni un număr excesiv de interacțiuni cu memoria.
Deși un număr de computere în anii 1960 și 1970 au fost predecesorii modelului RISC, conceptul modern datează din anii 1980. În special, două proiecte de la Stanford și de la Universitatea din California scaldă această idee conceptuală. Stanford MIPS va deveni un model de succes comercial, în timp ce Universitatea din Berkeley a dat numele întregului concept, comercializat ca SPARC. Un alt succes al acestei epoci a fost eforturile IBM, care au dus în cele din urmă la Power Architecture. Odată cu dezvoltarea acestor zone, la sfârșitul anilor 1980., Și mai ales la începutul anilor 1990. Înfloreau multe astfel de proiecte, care sunt principala forță pe piața de stații de lucru Unix, și procesoare integrate în imprimante laser, routere și alte produse similare .
Pro și contra arhitecturii RISC
Cea mai simplă modalitate de a studia avantajele și vulnerabilitățile arhitecturii RISC este compararea cu arhitectura CISC anterioară. Scopul principal al arhitecturii CISC este de a finaliza sarcina cu mai puține linii de asamblare. Acest lucru se realizează prin crearea unui echipament de procesare care poate înțelege și efectua o serie de operațiuni. Pentru această sarcină specială, procesorul CISC este emis cu o instrucțiune specifică (MULT). Când se execută, această comandă încarcă două valori în registre separate, înmulțește operanzii din modulul de execuție și apoi stochează produsul în registrul corespunzător. Astfel, întreaga sarcină de înmulțire a două numere poate fi completă cu o singură instrucțiune: MULT 2: 3, 5: 2. Arhitectura CISC și RISC - soluția arhitecturală anterioară și ulterioară.
MULT este ceea ce se numește o "instruire complexă". Comanda funcționează direct pe bancurile de memorie ale calculatorului și nu necesită ca programatorul să apeleze în mod explicit sarcini sau să salveze funcții. Este foarte similar cu o comandă într-un limbaj de nivel superior. De exemplu, dacă presupunem asta o reprezintă o valoare de 2: 3 și b reprezintă o valoare de 5: 2, atunci această comandă este identică cu expresia C a = a * b.
Unul dintre principalele avantaje ale acestui sistem este că compilatorul trebuie să efectueze un minim de lucru pentru a traduce textul limbajului de nivel înalt într-un ansamblu. Deoarece lungimea codului este relativ scurtă, pentru memorarea instrucțiunilor este necesară o foarte mică RAM. Într-o analiză comparativă a arhitecturii CISC și RISC a procesoarelor, accentul se pune pe implementarea instrucțiunilor complexe direct în hardware.
Abordarea RISC
Procesoarele RISC utilizează numai instrucțiuni elementare care sunt executate într-un singur ciclu de ceas. Astfel, așa cum este descris mai sus instrucțiuni MULT pot fi împărțite în trei comenzi separate: de sarcină, care se deplasează datele din memoria la PROD registru bancar, care este produsul a două operanzi situate în registre, și STORE, care se mută datele din registrul băncilor de memorie. Pentru a efectua seriile de etape descrise în abordarea CISC, programatorul va trebui să codifice patru linii de asamblare:
LOAD A, 2: 3.
LOAD B, 5: 2.
PROD A, B.
STORE 2: 3, A.
Inițial, aceasta poate părea o modalitate mult mai puțin eficientă de a finaliza operația, deoarece există mai multe linii de cod și mai mult RAM este necesar pentru a stoca instrucțiuni la nivel de asamblare. De asemenea, compilatorul trebuie să depună mai multe eforturi pentru a transforma formularea limbajului de nivel înalt în codul pentru acest formular.
Comparație între CISC și RISC
Mai jos sunt datele comparative ale arhitecturii CISC și RISC:
CISC:
- Concentrați-vă pe hardware.
- Include multe ore de instrucțiuni complexe.
- Dimensiuni de coduri mici, cicluri înalte pe secundă.
- Tranzistorii folosesc pentru a stoca instrucțiuni complexe.
RISC:
- Accent pe software.
- O scurtă instrucțiune care nu necesită mult timp.
- Cicluri reduse pe secundă, dimensiuni mari de coduri.
- Petrece mai mulți tranzistori pe registrele de memorie.
Strategia RISC prezintă câteva avantaje foarte importante. Deoarece fiecare comandă necesită doar un singur ciclu de ceas, întregul program va rula aproximativ aceeași perioadă de timp ca și comanda MULT cu mai multe cilindri. Aceste "instrucțiuni reduse" ale RISC necesită mai puține tranzistoare ale spațiului hardware decât instrucțiuni complexe, lăsând mai mult spațiu pentru registrele comune. Deoarece toate instrucțiunile sunt executate în același timp (de exemplu, un ciclu de ceas), este posibilă conducerea.
Caracteristicile procesului
Separarea instrucțiunilor LOAD și STORE reduce de fapt cantitatea de muncă pe care trebuie să o efectueze computerul. După executarea comenzii MULT în stilul CISC, procesorul șterge automat registrele. Dacă unul dintre operanzi trebuie folosit pentru un alt calcul, procesorul trebuie să reîncarce datele din banca de memorie în registru. În RISC, operandul va rămâne în registru până când o altă valoare este încărcată pe ea.
Abordarea CISC încearcă să minimizeze numărul de instrucțiuni pentru fiecare program, sacrificând numărul de bucle pe instrucțiune. RISC, dimpotrivă, reduce numărul de cicluri datorate instrucțiunilor pentru fiecare program.
Dificultăți cu implementarea comercială
În ciuda avantajelor procesării bazate pe RISC, au trecut decenii înainte ca cipurile RISK să fie cerute în mod comercial. În multe privințe, acest lucru sa datorat lipsei de suport software.
Deși linia Power Macintosh de la Apple, care folosește chips-uri bazate pe RISC și Windows NT, este compatibilă cu RISC, Windows 3.1 și Windows 95 au fost dezvoltate având în vedere procesoarele CISC. Multe companii nu au dorit să riște tehnologia RISC în curs de dezvoltare. Fără interes comercial, dezvoltatorii procesatorilor nu au putut face cipuri RISC în volume suficient de mari pentru a-și face competitivitatea.
Un alt obstacol important a fost prezența Intel. În ciuda faptului că cipurile lor CISC au devenit din ce în ce mai greoaie și dificil de dezvoltat, Intel a avut resursele necesare pentru a dezvolta procesoare puternice. Deși cipurile RISC ar putea depăși eforturile Intel în anumite domenii, diferențele nu au fost suficient de mari pentru a convinge clienții să schimbe tehnologia.
Avantajul general al RISC
Astăzi, Intel x86 este singurul cip care păstrează arhitectura CISC. Acest lucru se datorează în primul rând avansării în alte domenii ale tehnologiei informatice. Prețul RAM a scăzut brusc. În 1977, 1 MB DRAM costa aproximativ 5.000 de dolari. Până în 1994, aceeași cantitate de memorie costă doar 6 USD (inclusiv inflația). Tehnologia compilatorului a devenit, de asemenea, mai complexă, astfel încât utilizarea RISC RAM și concentrarea asupra software-ului au devenit ideale.
Filozofia setului de instrucțiuni
O înțelegere eronată a definiției RISK este ideea că procedurile sunt eliminate, ceea ce duce la un set redus de algoritmi. De-a lungul anilor, procedurile RISC au fost în creștere, iar acum multe dintre ele au o gamă mai largă de funcții decât CISC-ul procesorului.
Termenul „set redus de proceduri“ înseamnă o descriere a faptului că volumul de muncă realizată de fiecare instrucțiune este redusă (nu ciclu de mai mult de o memorie), în comparație cu procedurile complicate CISC, care necesită zeci de cicluri pentru a executa o singură comandă. Arhitectura RISC are în mod obișnuit algoritmi I / O separați și manipularea datelor.
Formatul instrucțiunii
Cele mai multe arhitecturi RISC au instrucțiuni cu o lungime fixă (de obicei 32 de biți) și codare simplă, ceea ce simplifică foarte mult eșantionarea, decodificarea și emiterea logicii. Unul dintre dezavantajele instrucțiunilor pe 32 de biți este reducerea densității codului, care este un factor nefavorabil pentru calculul încorporat pe stațiile de lucru și pe servere. Arhitecturile RISC au fost inițial concepute pentru întreținere. Pentru a rezolva această problemă, mai multe arhitecturi, cum ar fi ARM, Power ISA, MIPS, RISC-V și Adipteva Epiphany, au un format opțional scurt de instrucțiuni abreviat sau funcția de compresie a comenzilor. SH5 urmează de asemenea această schemă, deși a evoluat în direcția opusă, adăugând instrucțiuni multimedia mai lungi la codarea inițială pe 16 biți.
Utilizarea echipamentului
Pentru un anumit nivel de performanță generală, chip-ul RISC are în mod obișnuit tranzistori mult mai puțini proiectați pentru logica de bază, care inițial permite designerilor să mărească dimensiunea registrelor și paralelismului intern.
Alte funcții care se găsesc în arhitecturile RISC sunt:
- Performanța medie a procesorului este aproape de o instrucțiune pe ciclu.
- Formatul de instrucțiuni unic - un cuvânt cu un cod de operare este folosit în aceleași poziții pentru o decodificare mai ușoară.
- Toate registrele cu scop general pot fi utilizate ca sursă / destinație în toate instrucțiunile, simplificând dezvoltarea compilatorului (registrele cu puncte plutitoare sunt adesea stocate separat).
- Moduri simple cu adresări complexe efectuate de secvențe de comandă.
- Mai multe tipuri de date în hardware (de exemplu, șir de octeți sau BCD).
În constructele RISC, este reprezentat și modelul de memorie Harvard, în care comenzile și datele sunt separate separat conceptual. Aceasta înseamnă că schimbarea memoriei în care este stocat codul nu poate afecta instrucțiunile executate de procesor (deoarece CPU are o instrucțiune separată și cache de date) până când se emite o instrucțiune specială de sincronizare. Pe de altă parte, permite accesul simultan la cache, ceea ce îmbunătățește adesea performanța.
Caracteristici ale arhitecturii RISC
În faza inițială a dezvoltării industriei de calculatoare, programarea a fost realizată limba de asamblare sau codul mașinii, care au încurajat utilizarea unor instrucțiuni puternice și ușor de utilizat.Prin urmare, dezvoltatorii CPU au încercat să proiecteze algoritmi capabili să efectueze cât mai multă muncă posibilă.Odată cu apariția unor limbi de nivel superior, arhitecții au început să creeze instrucțiuni speciale pentru implementarea directă a anumitor mecanisme centrale.Cel de-al doilea obiectiv comun a fost de a oferi toate modurile posibile de adresare pentru fiecare algoritm, cunoscut sub numele de ortogonalitate, pentru a facilita implementarea compilatorului.
Atitudinea la momentul a fost faptul că proiectarea hardware-ul a fost mai matur decât design-ul compilator, astfel încât, în sine, este de asemenea, un motiv pentru introducerea funcționalității în hardware sau microcod, și nu numai într-o memorie compilator limitată (sau în codul generat).După apariția RISC, această abordare a devenit cunoscută drept calculul complex al setului de instrucțiuni sau CISC.
Procesoarele au avut, de asemenea, relativ puține registre din mai multe motive:
- Un număr mare de registre înseamnă stocarea și recuperarea mai lungă a conținutului din stiva mașinii și necesită un număr mare de biți de comandă ca calificatori, ceea ce înseamnă un cod mai puțin dens.
- Registrele CPU sunt mai scumpe decât celulele de memorie externe.
- Limitarea circuitelor imprimate sau a circuitelor integrate.
Aplicare practică
Arhitectura RISC a procesorului este acum utilizată pe o gamă largă de platforme: de la smartphone-uri și tablet-uri la unele dintre cele mai productive supercomputere, cum ar fi computerul K (liderul listei de top 500 din 2011).
La începutul secolului XXI, cele mai multe sisteme cu profil redus și mobil au fost bazate pe arhitectura RISC. exemple:
- Arhitectura ARM domină piața pentru sistemele încorporate cu putere redusă și cu costuri reduse (200-1800 MHz în 2014). Acesta este folosit într-un număr de sisteme Android, Apple iPhone și iPad, Microsoft Windows Phone (fostă Windows Mobile), dispozitive RIM (topic.risc.architecture), Nintendo Game Boy Advance, DS / 3DS și Switch.
- line MIPS (la un moment dat folosit în multe calculatoare, SGI), iar acum - în PlayStation, PlayStation 2, Nintendo 64 (ipb.risc.arhitektura) consola de jocuri, PlayStation Portable si gateway-urile pentru spații, cum ar fi Linksys WRT54G.
- Hitachi SuperH, utilizat în Sega Super 32x, Saturn și Dreamcast (viewtopic.php.risc.arhitektura) este acum dezvoltat și vândut ca Renesas SH4.
- Atmel AVR este utilizat în diverse linii de produse: de la controlori portabili Xbox la mașinile BMW.
- RISC-V (vbulletin.risc.arhitektura), a cincea Berkeley RISC ISA open source, un spațiu de adrese pe 32 de biți, un mic set de bază de instrucțiuni întregi, experimental „comprimat» ISA pentru o densitate de cod și proiectat pentru extensii standard și speciale.
- Stații de lucru, servere și supercomputere.
- MIPS (powered.by.smf.risc.architecture), Silicon Graphics (în 2006 a încetat crearea de sisteme bazate pe MIPS).
- SPARC, Oracle (fostă Sun Microsystems) și Fujitsu (phorum.risc.architecture).
- Arhitectura IBM Power Architecture, utilizată în majoritatea supercomputerelor IBM, servere de nivel medii și stații terminale.
- PA-RISC Hewlett-Packard (phpbb.risc.architecture), denumită și HP-PA (terminată la sfârșitul anului 2008).
- Alpha, folosit în computere cu o singură placă, stații de lucru, servere și supercomputere de la Digital Equipment Corporation, Compaq și HP (întreruptă din 2007).
- RISC-V (powered.by.phpbb.risc.arhitektura), a cincea Berkeley RISC ISA, open-source, cu un spațiu de adrese de 64 sau 128 de biți și întregul nucleu extins punct și de prelucrare a vectorului atomizare plutitoare și proiectat pentru expansiune cu instrucțiuni pentru rețea IO, de prelucrare a datelor. 64-biți de proiectare superscalara Rocket este disponibil pentru descărcare.
Comparație cu alte arhitecturi
Unele procesoare au fost proiectate în mod specific cu un set foarte mic de instrucțiuni, dar aceste structuri sunt semnificativ diferite de tradiționale RISC-arhitecturi, astfel încât acestea s-au dat alte date, cum ar fi setul minim de comenzi (MISC) sau de transport inițiate Arhitectura (TTA).
Arhitecturile RISC au avut în mod tradițional puțin succes pe piața serverului desktop și a produselor de bază, unde platformele x86 rămân arhitectura principală a procesoarelor. Cu toate acestea, acest lucru se poate schimba, deoarece procesoare bazate pe arhitectura ARM sunt dezvoltate pentru sisteme cu performanțe mai ridicate. Producătorii, inclusiv Cavium, AMD și Qualcomm, au fost eliberați server bazat pe arhitectura ARM. ARM a colaborat, de asemenea, cu Cray în 2017 pentru a crea un supercomputer bazat pe arhitectura ARM. Liderul companiei din industria computerelor Microsoft a anunțat că în cadrul parteneriatului cu Qualcomm în 2017 este planificat să sprijine versiunea pentru PC a Windows 10 pe dispozitive bazate pe Qualcomm Snapdragon. Aceste dispozitive vor suporta software Win32 bazat pe x86 folosind emulatorul procesorului x86.
Cu toate acestea, în plus față de arena desktop, arhitectura ARM RISC este utilizată pe scară largă în smartphone-uri, tablete și multe forme de dispozitive încorporate. De asemenea, Intel Pentium Pro (P6) utilizează un nucleu intern de procesor RISC pentru procesoarele sale.
În timp ce dezvoltarea inițială a arhitecturii RISC a procesorului a fost semnificativ diferită de proiectele CISC inovatoare, până în anul 2000 procesoarele cele mai performante din linia RISC nu s-au deosebit de cele mai performante procesoare de pe linia CISC.
- Risc ecologic.
- Microcontrolere - ce este asta?
- Medicamentul este Orsotene Slim. Instrucțiuni de utilizare
- Care este principiul modular al trunchiului de a construi un calculator
- Arhitectura client-server: trăsături de interacțiune
- Ce este arhitectura calculatorului?
- Arhitectura lui von Neumann: istoria originii termenului
- Ce sunt microprocesoarele? Tipuri de microprocesoare
- Arhitectura sistemelor informatice: clasificare și definiție
- Procesor ARM Cortex A7: specificații și recenzii
- Filme "Risc fără contract": actori și roluri
- Arhitectura procesorului Intel Core 3 de generație
- Princeton și Harvard arhitectura sistemelor de calcul
- Codul mașinii ca limbaj de programare. Limbaj de asamblare
- Jocuri pentru sistemul de 32 de biți: strategie, shooter și rasă
- Definiție, proprietăți și tipuri de algoritmi
- Venture Financing
- Care este arhitectura calculatorului?
- Arhitectura client-server
- Nu este timpul să obțineți un computer virtual?
- Microprocesor Intel 4004: descriere, caracteristici. Istoricul procesatorilor