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-bitspaț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
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.
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
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.
Computerele AppleMacintosh au trecut de la procesoarele seriei Motorola 68000 la procesoarele PowerPC de tip RISC în 1994 și ulterior la procesoarele x86 în 2006.