RISC (Reduced instruction set computer)
Metodologia per la progettazione di archittetture di microprocessori ispirata alla riduzione dell’instruction set a un numero limitato di istruzioni semplici eseguibili in tempi tra loro comparabili. Tale strategia si pone in opposizione a quella detta CISC (Complex instruction set computer), basata su processori dotati di istruzioni di diversa complessità e che richiedono diversi tempi di esecuzione. Oggi le dimensioni dell’instruction set non sono per lo più ritenute rilevanti e diversi principi di progettazione propri delle macchine RISC sono stati accettati negli attuali calcolatori. Le principali caratteristiche dell’architettura RISC sono l’eliminazione del livello di interpretazione delle istruzioni (che vengono invece eseguite direttamente dall’hardware), l’ottimizzazione della velocità di inizio delle istruzioni, l’uniformità dei formati delle istruzioni, l’impiego di poche istruzioni contenenti indirizzi di memoria (soltanto le istruzioni LOAD e STORE), la disposizione di molti registri per velocizzare l’accesso alla memoria. La differenziazione tra RISC e CISC ha rappresentato comunque una tappa storicamente rilevante nell’evoluzione dell’informatica. Nel 1980 David Patterson e Carlo Séquin guidavano un gruppo di ricercatori di Berkeley (Stati Uniti) che riuscì a progettare un processore su chip VLSI che non usava l’interpretazione delle istruzioni. Tale filosofia di progettazione fu battezzata RISC e la macchina che la realizzava CPU RISC I (a breve seguita da RISC II), poi commercializzata come SPARC dalla Sun Microsystems. Nello stesso periodo a Stanford (Stati Uniti), John Hennessy costruì un chip analogo che chiamò MIPS. Si trattava di due processori ispirati a un’architettura molto diversa da quelle allora sul mercato. I nuovi instruction set erano infatti progettati con lo scopo di rendere rapida la messa in esecuzione delle istruzioni. Ne risultò un numero ridotto di istruzioni, ca. 50, contro le 200 o 300 delle macchine DEC VAX o IBM, allora disponibili in commercio. Il vantaggio delle macchine RISC era legato al fatto che, anche se esse richiedevano quattro o cinque istruzioni per fare quello che una macchina CISC faceva con una sola istruzione, le prestazioni erano comunque migliori in quanto richiedevano tempi anche dieci volte inferiori per l’esecuzione (non dovendo essere interpretate). Malgrado ciò le macchine RISC non ebbero mai il sopravvento su quelle CISC (come i processori Intel basati sull’architettura x86), sia per motivi di compatibilità con le vecchie versioni sia per la capacità di produttori come Intel di inglobare un piccolo processore RISC per eseguire in un ciclo unico le istruzioni più semplici e più ricorrenti, affidando quelle più complesse al processore CISC. Tale ibrido rappresenta un buon compromesso tra le due strategie architetturali, tanto più che oggi anche la Intel (a partire dal Pentium Pro) tende a far lavorare i suoi processori CISC come se fossero delle vere macchine RISC. Tale scelta è giustificata in virtù di costi ridotti e di consumi migliori (caratteristiche che vengono sfruttate nei dispositivi embedded di largo consumo, come i telefoni cellulari). Per anni la Apple, prima di passare all’architettura Intel x86, si è affidata ai processori Power della IBM basati su architettura RISC (oggi ancora impiegati in molte consolle di videogiochi).