Sophie Wilson
Sophie Wilson è una delle menti geniali alla base del design moderno della CPU. Negli anni ’80, lei e il collega Steve Furber progettarono l’architettura ARM, un nuovo approccio al design della CPU che rese possibile il mobile computing. In questo modo, era possibile fare di più e nel minor tempo possibile, pur disponendo di pochissime risorse.

Se hai mai usato un Raspberry Pi o un altro tipo di dispositivo embedded che funziona usando un chip ARM, hai goduto dei frutti del loro lavoro.


Per Sophie Wilson tutto ebbe inizio nel 1978 grazie ad un accendino elettrico e una slot machine. In pratica, a causa di alcune rapine in cui il ladro, utilizzando un accendino elettrico accanto alla macchina, trasmetteva un impulso elettromagnetico a larga banda che attivava il circuito collegato al sistema di pagamento, il designer di elettronica Hermann Hauser si rivolse a lei, studentessa che lavorava nella sua azienda, per aiutarlo a risolvere questo problema.

Wilson capì velocemente che se si aggiungeva un piccolo ricevitore radio a banda larga per rilevare il polso, si poteva sopprimere il pagamento falso, bloccando così ogni azione malevola del ladro. Impressionata da questa innovazione, Hauser sfidò Wilson a costruire un computer durante le vacanze estive, basandosi in parte su un progetto per un alimentatore automatico di mucche che Wilson aveva creato all’università. Wilson creò così questo prototipo di computer che, sebbene somigliasse di più ad una calcolatrice che a un computer moderno, il design diventò la base per Acorn System 1, il primo computer lanciato dalla nuova società di Hauser Acorn Computers nel 1979.

Wilson si laureò all’Università di Cambridge e si unì ad Acorn come capo progettista. Il System One era un computer insolito per l’epoca, in quanto molto economico: al prezzo di £65 (meno di $90), il computer era venduto come un kit che l’utente avrebbe assemblato e saldato. Il tutto costruito attorno ad una CPU 6502 da 1MHz, con 1152 byte di RAM.

Diverse nuove versioni di questo computer furono lanciate negli anni successivi, aggiungendo al tutto diverse funzionalità, come le schede di espansione. Questi particolari computer erano molto popolari tra gli appassionati, ma non riuscirono ad ottenere il successo in cui la compagnia sperava.


Un computer per ogni aula

immagine Sophie Wilson 2La grande occasione di Acorn arrivò con la BBC Micro, un computer progettato per accompagnare un programma di alfabetizzazione informatica gestito dall’emittente britannica. La BBC Micro fu progettata per essere sufficientemente robusta per l’uso didattico, con una tastiera a grandezza naturale, un interprete BASIC, un modulatore che permettesse di collegarlo a una TV standard e un’interfaccia per salvare e recuperare i programmi su un registratore di cassette audio standard. Fu un grande successo, vendendo oltre 40.000 macchine al mese e popolando quasi l’85% delle scuole del Regno Unito.

A questo punto, però, i pensieri di Wilson cominciarono a spingersi oltre. La BBC Micro utilizzava lo stesso processore 6502 dei precedenti computer, ma Wilson e altri della società non erano soddisfatti della quantità di potenza di calcolo fornita. Così, nel 1983 decisero di costruire la propria CPU per i computer futuri.

Diversi fattori influenzarono questa decisione. Il primo fu certamente la visita alla società costruttrice della 6502, dove si resero conto che solo una persona stava lavorando alla prossima versione per questa CPU. Ciò l’aiutò a comprendere che non era necessario disporre di un enorme team per progettare una CPU: finché avevi qualcuno capace di creare il chip per te, il resto risultava una passeggiata. Il secondo fattore fu un progetto chiamato Berkeley RISC project , che stava per Reduced Instruction Set Coding. L’idea alla base di questo progetto era che se una CPU era stata creata per eseguire solo un piccolo insieme di istruzioni, avrebbe potuto funzionare più velocemente e in modo più efficiente. Piuttosto che aggiungere ulteriori istruzioni al processore stesso, il sistema operativo, in esecuzione sul processore, avrebbe minimizzato le attività in istruzioni più semplici, così da essere eseguiti più velocemente dalla CPU.

Questa idea piaceva molto a Wilson, così tanto che lei e il collega Steve Furber progettarono il proprio set di istruzioni, creando un simulatore su una BBC Micro. Non impiegarono molto a convincere gli altri colleghi che la loro idea era molto lontana dall’essere sbagliata.

E così chiamarono questo progetto A, ma in seguito fu ribattezzato Acorn RISC Machine  o ARM.


Più piccolo = Più veloce e migliore

L’architettura del loro sistema era fondamentalmente diversa dalla maggior parte delle CPU in commercio. Wilson e altri colleghi testarono il 6502 e altri processori simili e si resero conto che potevano gestire solo una quantità limitata di dati. La maggior parte dei progettisti di CPU aggiungeva più istruzioni ai propri chip, fornendo nuovi modi in cui la CPU poteva gestire ed elaborare questi dati. Wilson e Furber adottarono l’approccio opposto: eliminarono tutto, lasciando solo le parti prettamente necessarie, e creando un chip più semplice e che richiedeva meno energia rispetto alle CPU esistenti. Ciò significava che era molto più facile far gestire alla CPU numeri più grandi. Poiché l’architettura era più semplice, era possibile creare più facilmente CPU a 16 o 32 bit, ottenendo così anche prestazioni migliori.

La prima CPU ARM realizzata da Wilson e Furber aveva una larghezza del bus dati a 16 bit e funzionava a una velocità di clock più elevata rispetto al processore 6502, quindi poteva aggiungere due numeri a 32 bit in nove cicli di clock o circa 125 nanosecondi. E tutto questo utilizzando un chip che non era molto più grande del 6502. Dato che doveva solo elaborare un piccolo numero di istruzioni, il chip risultava essere più semplice e veloce.

Wilson e Furber realizzarono una CPU, un chip grafico e un controller di memoria e lavorarono insieme per creare un sistema completo per i test fino alla consegna, avvenuta nel 1985. Quando Furber provò a misurare quanta potenza stesse utilizzando questo per ogni test, il suo multimetro non rilevò alcun flusso di potenza. Furber fu sorpreso di questo risultato e, dopo aver indagato a fondo, si rese conto che la scheda di sviluppo che stavano usando era difettosa: non stava fornendo alcuna potenza alla CPU. Invece, il processore stava funzionando tranquillamente sull’alimentazione fornita sulle linee di segnale che alimentavano i dati nella CPU.

Acorn non impiegò molto a comprendere le potenzialità di questo progetto e decise subito di brevettare le tecniche utilizzate. Questo diede il via alla prima architettura RISC, denominata ARM V1. Da allora sono passate diverse iterazioni, ma i concetti fondamentali del progetto iniziale sono rimasti gli stessi: un numero limitato di istruzioni che possono essere eseguite rapidamente sono più efficienti di molte istruzioni che richiedono molto tempo per essere eseguite.

L’architettura ARM ha richiesto un po’ di tempo per diventare popolare, ma ciò che veramente fece la fortuna per questo progetto fu il mobile computing.

In un dispositivo mobile ciò che conta è la potenza. Per questo motivo l’ARM risultò essere l’architettura ideale per far funzionare questo tipo di dispositivi, in quanto questi potevano eseguire più operazioni con meno energia rispetto a chip più complessi. In effetti, l’architettura ARM è ancora utilizzata sulla maggior parte dei telefoni cellulari, laptop e in aziende come Apple, Samsung e continua a perfezionarsi di anno in anno.


Chissà cos’altro ci riserverà questa signora dalla mente geniale… Io sono curiosa, e voi?

Alla prossima!

Maria Gabriella Depalo

Ti è piaciuto? Condividilo!