Evoluzione storica

All’inizio della storia dell’informatica, per facilitare il lavoro dei programmatori e anche perchè la RAM costava tanto, i progettisti dei processori decisero di inserire istruzioni anche molto complesse in modo da simulare le funzion ad alto livello dei linguaggi di programmazione direttamente nei processori.

Gli studi dimostrarono che molte istruzioni assembly esotiche venivano utilizzate molto raramente e avolte erano più lente del codice scritto con le istruzioni generiche.

L’obiettivo di ridurre le istruzioni portò all’ideazione del nome reduce istruction set computing.

ARM Architecture

ARM è una famiglia di architetture basato su una architettura RISC sviluppata dall’azienda inglese ARM Holding, partner di Apple, IBM, Texas Instruments, Samsung, ST-Ericcson ...

ARM sviluppa il set di istruzioni e l’architettura per prodotti ARM-based ma non produce i prodotti. Questi ultimi sono prodotti su licenza.

ARM è una delle più popolari architetture usate in sistemi Linux embedded.

Con RISC i processori richiedono molti meno transistor rispetto a quelli che usano CISC (Complex Instruction Set Computing), questo riduce i costi, le temperature e l’energia richiesta. Diventa quindi perfetto per dispositivi portatili alimentati da una batteria.

Questo design semplificato facilita l’implementazione di CPU multi-core.

CISC vs RISC

Facciamo un esempio riguardo la moltiplicazione di due numeri:

A = A * B; //statemente in linguaggio C

L’approccio CISC è il seguente:

MULT A, B; //statement in linguaggio assembly

Vanaggi: