Arhitectură RISC

UltraSparc, un microprocesor RISC

Reduced Instruction Set Computer (RISC), calculator cu set de instrucțiuni reduse, este o arhitectură a unui microprocesor și calculator cu un set de comenzi simple și rapide, în care viteza crește datorită simplificării instrucțiunilor, astfel încât decodificarea acestora este mai simplă, pentru a oferi performanțe superioare. Arhitectura RISC mai este cunoscută și sub numele de "arhitectură Load/Store", deoarece instrucțiunile care se referă la memoria principală sunt limitate la o singură operație - fie încărcare, fie stocare. Conceptul RISC a dus la un design mai atent al microprocesoarelor, pe 32-bit sau pe 64-bit spațiu de adresare. RISC este o evoluție și alternativă la Complex Instruction Set Computer (CISC) și până în prezent, este cea mai eficientă tehnologie a arhitecturii CPU. Începând cu anul 2018, 99% din toate cipurile noi utilizează arhitectura RISC.[1][2]

Istoric

Microprocesor IBM PowerPC 601 RISC

Primele cercetări asupra arhitecturilor de tip RISC au fost inițiate în 1975 la centrul de cercetări Thomas J. Watson Research Center, din Yorktown, New York, sub conducerea lui John Cocke, considerat astăzi autorul conceptului RISC. John Cocke a analizat funcționarea unui calculator IBM System/370, studiind distribuția statistică a utilizării instrucțiunilor. El a constatat că doar un număr mic de tipuri de instrucțiuni sunt folosite foarte frecvent: Load, Store, Add, Substract, Branch; celelalte instrucțiuni, în particular cele care execută operații de mare complexitate, intervin foarte rar în programe. Aceste rezultate au dus la realizarea unui calculator simplu, care avea în setul de instrucțiuni doar pe acelea cu utilizare frecventă, ceea ce a sporit viteza de calcul; pe de altă parte, instrucțiunile complexe au fost înlocuite în program prin serii de instrucțiuni simple, ceea ce a dus la creșterea lungimii programelor.[3]

În 1979, John Cocke realizează primul prototip de calculator bazat pe concepte RISC, IBM 801.[4]Dezvoltând aceste idei, David Patterson, student la Universitatea Berkeley din California, utilizează pentru prima dată termenul RISC. El confirmă că introducerea microcodului constituie un impediment important în creșterea vitezei de calcul a procesoarelor.[5]Printre primele calculatoare care au beneficiat de această descoperire au fost IBM RT PC în 1986, urmat de IBM RS/6000 în 1990 și PowerPC 600 în 1993.[6][7]

Caracteristici

  • Unitatea de control este realizată prin "logica de tip cablat"
  • Instrucțiunile se desfășoară într-o singură stare și durate de timp identice
  • Numărul de instrucțiuni este mic, sub 128
  • Dimensiunea este fixă pentru tot formatul instrucțiunilor
  • Instrucțiunile au format uniform, nu mai mult de 4 tipuri de formate
  • Numărul modurilor de adresare este mic (sub 4) și nu neapărat simple
  • Accesul memoriei se face numai cu instrucțiuni de transferuri simple de date între registre și memorie (tip "LOAD" /STORE")
  • Include numai instrucțiuni simple, executate rapid, de obicei într-un singur tact de ceas, datorită tehnicii pipeline
  • Tendință de accentuare pe parte software
  • Mai puține tipuri de date hardware
  • Prezintă un format uniform al instrucțiunilor, ceea ce conduce la o codificare mai simplă
  • Minimalizează utilizarea memoriei prin existența unui număr mare de regiștri (datele sunt aduse în și din memorie prin intermediul acestor regiștri) și permiterea utilizării multiple a regiștrilor generali, care sunt identici[8][9]

Dezavantajele arhitecturii RISC

  • Datorită setului redus de instrucțiuni, conduce la dimensiuni mai mari ale codului, în medie cu 30%
  • Există un număr mare de registre generale, cel puțin 32
  • Timp de acces mai mare
  • Tehnici complicate de gestionare a ferestrelor
  • Salvarea registrelor în contextul multiprocesării, presupune timp mai îndelungat pentru stocare și recuperare în/din memorie
  • Operațiile de multitasking necesită comutări de multe registre
  • Unitatea de control a microprocesorului realizată "cablat", este mai puțin flexibilă și mult mai greu de modificat
  • Formatul redus al instrucțiunilor face imposibilă adresarea directă a unei hărți de memorie mare (ex. adrese fizice sau logice de 32-bit).
  • Necesită un spațiu mărit de memorie pentru program și date.[10]

Architecturi RISC

  • ARM - probabil cea mai reușită familie RISC, se utilizează în sisteme ce necesită performanțe ridicate, consum redus de energie și costuri reduse. ARM Holdings, care proiectează aceste sisteme, nu construiește ea însăși procesoare, ci doar vinde licențe de proiectare clienților săi.
  • Power - architectură dezvoltată de IBM și Freescale Semiconductor, astăzi cel mai utilizat procesor RISC de vârf, este o arhitectură multifuncțională, pornind de la sisteme integrate de înaltă performanță, cum ar fi imprimantele sau routerele, stații de lucru, supercomputere.
  • MIPS - utilizată în principal pentru stațiile de lucru Silicon Graphics, servere clasice și console de jocuri (PlayStation, PlayStation 2, Nintendo 64, PlayStation Portable). În prezent, principala zonă de aplicare, sunt sistemele încorporate. Practic, toate stațiile de lucru MIPS și familia de servere au fost acum migrate la Intel Itanium.
  • SPARC - (Oracle) (fostă Sun Microsystems) utilizată în primul rând în stațiile de lucru clasice și serverele Sun.
  • PA-RISC (HP) - procesoarele PA-RISC au fost utilizate în principal în stațiile de lucru și serverele clasice HP. Înlocuite în prezent cu Intel Itanium.
  • DEC Alpha - procesoarele Alpha au fost utilizate în principal pe stațiile de lucru și serverele DEC, Compaq și HP. Înlocuite în prezent cu Intel Itanium.
  • SuperH (Hitachi) - folosită pe scară largă în consolele de jocuri Sega 32X, Sega Saturn și Dreamcast. SuperH, ca și platforma ARM, se folosește în prezent în sistemele încorporate.
  • AVR (Atmel) - familie demicrocontrolere utilizată în sistemele încorporate (Arduno), console Xbox, și sisteme auto BMW.
  • XAP - arhitectură de procesoare RISC dezvoltată de Cambridge Consultants încă din 1994. Procesoarele XAP au fost proiectate pentru utilizarea încircuite integrate de semnal mixt pentru senzori sau aplicații fără fir (Bluetooth , ZigBee, GPS, RFID, Near Field Communication).
  • OpenRISC - proiect opensource de a crea un microprocesor care rulează Linux disponibil în mod liber.
  • RISC-V - un alt proiect de arhitectură RISC opensource, început în 2010 la Universitatea Berkeley din California.

Microprocesoare RISC

AMD Am29000

Procesoarele bazate pe concepțiile RISC având mai puține tranzistoare în structură, necesită o suprafață de siliciu redusă și au un preț de cost mai mic față de microprocesoarele CISC. Simplificarea structurii a permis printre altele creșterea frecvenței de tact.

Utilizarea procesoarelor de arhitectură ARM în smartphone-uri și sisteme înglobate, cum ar fi dispozitivele Raspberry Pi, a oferit o bază largă de utilizatori pentru sistemele bazate pe RISC. Procesoarele RISC sunt de asemenea folosite în supercomputere.

Printre primele microprocesoare RISC comercializate se pot cita: Berkeley RISC, DEC Alpha, Fairchild Clipper C100, Motorola 88000, PA-RISC 7000 (HP), ARM (Acorn), Sparc (Sun), AM 29000 (AMD), Transputers (INMOS).

Computerele Apple Macintosh au trecut de la procesoarele seriei Motorola 68000 la procesoarele PowerPC de tip RISC în 1994 și ulterior la procesoarele x86 în 2006.

Vezi și

Referințe și note

Legături externe

Commons
Commons
Wikimedia Commons conține materiale multimedia legate de Arhitectură RISC

Bibliografie

  • Lucian N. Vintan: Arhitecturi de procesoare cu paralelism la nivelul instrucțiunilor, Editura Academiei Române, București, 2000, ISBN 973-27-0734-8
  • Florence Slater: A guide to RISC microprocessors, Elsevier Science, 2014, ISBN: 9780323137720