Apple au sommet de l'ARM (1/7) : une histoire qui commence en Grande-Bretagne

Jean-Baptiste Leheup |
Club iGen 👑

Cet article réservé initialement aux membres du Club iGen est exceptionnellement en accès libre à compter d'aujourd'hui. Pour découvrir tous les articles exclusifs du Club iGen et d'autres avantages, abonnez-vous !

Pour débuter ce dossier, il nous faut revenir quelques instants sur l’histoire de l’architecture ARM, dont les origines remontent aux années 80. Une histoire passionnante, débutée en catimini…

À l’origine, l’Acorn RISC Machine

Dans le monde des processeurs, l’architecture ARM fait maintenant partie des meubles. C’est pourtant dans la plus grande intimité qu’elle est portée sur les fonds baptismaux par un tout petit groupe d’ingénieurs du britannique Acorn, qui étaient à la recherche d’un processeur idéal, rapide et peu coûteux, et qui avaient finalement décidé… de l’inventer !

En 1985, pour la première fois, le nom de Acorn RISC Machines apparait publiquement dans le magazine Byte, sous forme d’une simple ligne au format télégraphique dans les brèves du mois. Seule précision accompagnant cette annonce : ce processeur serait plus rapide qu’un VAX-11/780, un système haut de gamme certes un peu âgé, mais occupant le volume d’un réfrigérateur américain…

Dès janvier 1986, le même Byte consacre un long dossier à l’Acorn RISC Machine, rappelant l’expertise d’Acorn dans l’utilisation du processeur 6502, le même que dans l’Apple II, et son succès après la réponse à un appel d’offres de la BBC pour créer un ordinateur destiné aux écoles britanniques. C’est en réfléchissant à son successeur que le constructeur, peu impressionné par les processeurs de Motorola et Intel, charge une équipe interne de créer son propre processeur. Pour cela, ses ingénieurs s’inspirent du concept à la mode depuis quelques années, le processeur à jeu d’instructions réduit, ou RISC, théorisé à l’université de Berkeley.

Acorn parvient à maintenir le secret autour du développement de son processeur, malgré l’aide qu’elle va chercher auprès du spécialiste américain VLSI, qui lui fournit notamment les outils permettant de simuler informatiquement le fonctionnement du processeur pour valider son design, et qui dispose de la fonderie nécessaire à la réalisation des puces. En dix-huit mois, sous la houlette de Roger Wilson et Steve Furber, l’entreprise parvient à fabriquer des prototypes fonctionnels du processeur, preuve aussi de la simplicité du design RISC, bien moins complexe que ses concurrents de l’époque comme le Motorola 68020 utilisé par Apple.

Quitte à se lancer dans la création d’un nouveau processeur, l’équipe d’Acorn a directement opté pour les meilleures caractéristiques, notamment l’architecture 32 bits intégrale. Ce n’était pas une révolution en soi, mais le Macintosh de l’époque utilisait encore un processeur 16-32 bits, et le best-seller de la gamme, l’Apple IIc, était même carrément encore un simple 8 bits. Ce choix n’était pourtant pas évident, car il impliquait de renoncer à la possibilité d’utiliser le processeur sur des ordinateurs dotés de peu de mémoire vive. Acorn avait simplement anticipé que cette question ne serait bientôt plus un obstacle, alors qu’elle était encore prioritaire dans les développements de l’époque, comme pour le Macintosh bridé par ses 128 Ko de RAM.

Le processeur ARM fait aussi un usage intensif du concept de pipeline, ou chaine de traitement. Suivant là encore les préconisations à la mode à l’époque, Acorn permet à son processeur de lancer de nouvelles instructions sans attendre que les précédentes aient été terminées. Et surtout, elle développe les possibilités offertes par chaque instruction, pour autoriser autant de manipulations que les gros processeurs concurrents. Ainsi, plutôt que d’offrir une instruction de multiplication (très complexe et répétitive par nature), elle permet de manipuler les nombres binaires de plusieurs manières en un seul cycle. Pour multiplier un nombre par 17, il suffit d’utiliser une unique fonction de décalage-addition. On décale le nombre de quatre pas à gauche (ce qui équivaut à une multiplication par seize en binaire) et on ajoute le nombre d’origine au résultat.

Une multiplication par 17 en un seul cycle

Ajoutez là-dessus une interface très rapide pour l’accès à la mémoire vive et une gestion particulièrement efficace des interruptions, ces modifications de l’état du processeur rendues nécessaires par les échanges entre les différents périphériques, et vous obtenez un processeur d’une grande puissance malgré sa toute petite taille, sa consommation rikiki et la simplicité de sa conception.

En 1986, le premier processeur ARM en remontre donc au puissant Motorola 68020 qui équipera bientôt le gros Macintosh II, le premier atteignant les 3 millions d’instructions par secondes contre 2,5 pour le second. Il ridiculise le PC-AT d’IBM, sorti en 1984, en exécutant les programmes en BASIC dix fois plus rapidement. Et tenez-vous bien : en espérant pouvoir atteindre rapidement une finesse de gravure de 2,4 microns (soit 2400 nanomètres), Acorn espère bien s’ouvrir les portes du secteur des supercalculateurs spécialisés… dans l’intelligence artificielle !

ARM, le processeur qui a failli partir avec l’eau du bain

Et pourtant, toute cette aventure a bien failli finir dans le mur, car durant tout ce temps, Acorn fait face à des difficultés financières quasiment insurmontables. C’est le groupe informatique italien Olivetti qui vient à sa rescousse en prenant un contrôle majoritaire de l’entreprise, apurant les comptes et licenciant près de la moitié des 500 salariés du Britannique. Il s’était dit à l’époque que pour préserver le secret, l’Italien n’avait été informé de l’existence du projet de processeur ARM qu’après la signature de l’accord définitif de rachat.

Interrogé par le Huffington Post, le cofondateur d’Acorn Chris Curry se souvient de cette période particulièrement troublée. Malgré ses engagements, Olivetti renonce à poursuivre la commercialisation des anciens ordinateurs Acorn, et ne conserve finalement que l’équipe en charge du processeur ARM, sans trop savoir qu’en faire.

Le prototype de processeur ARM - Photo : Peter Howkins sur Wikipedia

Alors même qu’ils ont dans leurs mains le premier processeur RISC prêt à l’emploi au monde, les cadres d’Olivetti ne comprennent pas qu’ils peuvent révolutionner l’informatique. Durant les premières années qui suivent la présentation du processeur ARM, malgré une médiatisation importante, malgré le modèle économique permettant aux autres constructeurs d’utiliser le processeur, et malgré des comparatifs de puissance très favorables, le processeur ARM ne trouve pas son public.

Acorn fait pourtant tout ce qu’il faut pour tenter de s’imposer dans le paysage informatique. Persuadée — comme tout le monde à l’époque — qu’un processeur ne peut exister qu’en tant que cerveau d’un ordinateur personnel, et qu’il lui revient de développer celui-ci, elle conçoit toutes les puces nécessaires et commercialise son propre ordinateur, l’Archimedes, dans ses versions A300 (en entrée de gamme) et A400 (pour le public professionnel). Acorn développe son propre système d’exploitation, Arthur OS, offre à son PC la stéréo et les 256 couleurs, mais malgré plusieurs évolutions successives et des prix plutôt abordables, la mayonnaise ne prend pas.

L'Archimedes A305 sur 1000bit.it

Les progrès du Macintosh d’Apple et du logiciel Windows de Microsoft font relativiser l’avancée majeure que représente le processeur ARM lui-même. En voulant à tout prix intégrer son processeur dans un ordinateur personnel, ARM en fait une sorte d’Amiga, d’Amstrad, d’Atari ou de Sinclair, des machines parmi d’autres, dont on ne compare que la quantité de mémoire ou le prix des options… Le processeur ARM aurait donc pu retomber dans l’anonymat et devenir une tentative ratée de démocratiser le processeur RISC, mais c’était compter sans Apple et son besoin impérieux de trouver un processeur capable de satisfaire son rêve d’informatique de poche…


avatar Diamondsoftware | 

Super article! bravo.
j'ai achete a l'epoque un Archimedes a305 , tout en ayant un Amiga et un Atari ST, c'etait une machine hyper rapide, le basic en ROM qui permettait d'integrer du language machine,
l'Amiga avait beaucoup plus de possibilites graphique et musical mais l'Archimedes etait plus rapide en general ( acces disque, calcul...) je parle bien sur de version Amiga de base pas celle qu'on avait avec des cartes acceleratrices.

avatar YetOneOtherGit | 

@Diamondsoftware

Dans les truc très atypique que j’ai encore il y a l’Atari Transputer Workstation qui était vraiment très excitante.

Avec Occam comme langage de programmation.

Dans les trucs britanniques atypiques de l’époque il y avait aussi le Jupiter ACE basé sur Forth.

Ce fut une époque très productive aux UK. 🤩

avatar zoubi2 | 

@YetOneOtherGit

"Avec Occam comme langage de programmation"

Le camarade @occam va sursauter... :-)

avatar YetOneOtherGit | 

@zoubi2

"Le camarade @occam va sursauter... :-)"

Il connaît parfaitement 😉

Notre digne héritier de Guillaume d'Ockham qui est le rasoir de ces lieux (Et c’est un hommage pour qui comprend, nullement une critique) 🙏

avatar Albator1138 | 

Je crois me rappeler que le Jupiter ACE avait été conçu par des anciens de Sinclair
(le boitier ressemblait beaucoup au Sinclair ZX-81).

avatar YetOneOtherGit | 

@Albator1138

"Je crois me rappeler que le Jupiter ACE avait été conçu par des anciens de Sinclair"

Yep 😉

avatar melaure | 

Commodore et Atari (voire Amstrad) ont vite pris la main sur le marché des ordi tout en un, avant de disparaitre sous la pression du monde PC.

J'ai trouvé sympa cet Archimede qu'un pote de promo avait, mais j'étais déjà sur Amiga 500 (puis 1200).

avatar YetOneOtherGit | 

@melaure

"des ordi tout en un"

😳

avatar DrStax | 

Super article, hâte de lire la suite 👏👌

avatar YetOneOtherGit | 

Quand on prend Byte comme source 😋

Avec Dr. Dobb's se fut une de mes bibles 🤓🥰

Un bon papier fouillé 🙏👏👏👏

avatar Diamondsoftware | 

ah byte et dr doobs! Les 2 meilleurs sources d’infos de l’époque

avatar YetOneOtherGit | 

@Diamondsoftware

"ah byte et dr doobs! Les 2 meilleurs sources d’infos de l’époque"

En France Micro Systemes était de bonne tenue 😋

avatar YetOneOtherGit | 

« Pour cela, ses ingénieurs s’inspirent du concept à la mode depuis quelques années, le processeur à jeu d’instructions réduit, ou RISC, théorisé à l’université de Berkeley »

C’est aller un peu vite en besogne que d’accorder la paternité du concept RISC même d’un point de vue théorique à l’UC Berkeley.

Même si la démarche est ancienne on s’accorde à considérer que le projet séminal de l’approche RISC est le 801 d’IBM porté par l’immense John Cocke. 🙏

avatar Diamondsoftware | 

@yetoneothergit
C’est vrai. Micro système était très Bien.
le forth ! Un language hyper puissant et atypique, j’ai connu.
Le transputer d’Atari! Très intéressant mais il fallait complètement changer de mode de pensé pour le programmer, et c’était une excellent idée car on montait en puissance en ajoutant des processeurs. Hélas trop loin des normes qui commençaient à se mettre en place. C’était une période plein d’innovation et de risque et très enrichissante. A l’époque on osait créer des machines originales

avatar YetOneOtherGit | 

@Diamondsoftware

"le forth"

Le firmware des Mac Power PC était basé sur un shell FORTH, sauf erreur.

Ceux qui ont programmé sur calculatrice HP, RPL doit beaucoup à FORTH.

Charles H. Moore est un sacré bonhomme en plus 🙏

avatar zoubi2 | 

"un VAX-11/780, un système haut de gamme certes un peu âgé"

Qwa???... En 1985, un VAX-11/780 était un peu âgé ??!! Moi qui était si content, à l'époque, d'avoir un 11/750...

Super PQ, continuez !

avatar YetOneOtherGit | 

@zoubi2

"En 1985 un VAX-11/780 était un peu âgé ?"

C’est le premier VAX/11 et il datait quand même de 77 😉

Le 750 est arrivé plus tard

avatar YetOneOtherGit | 

@zoubi2

"un VAX-11/780"

Il est d’ailleurs intéressant de noter que le KA780 qui était le processeur du premier VAX-11 représentait l’état de l’art du CISC.

Une ISA incroyablement plus moderne que celle mise en œuvre par une entreprise avant tout électronicienne tel Intel qui donnera l’abject ISA des x32 puis x64.

Intel était alors avant tout une entreprise d’electro-physiciens, de spécialistes des semi-conducteurs et fort peu de computer scientist.

DEC avait une grande culture informatique et avait pensé une ISA absolument remarquable qui posera des fondations fortes pour le futur:
- ISA totalement orthogonale 🥰
- Modes d’adressage multiples
- Jeu d’instructions riche

Beaucoup de choses se faisant encore en assembleur à l’époque et les compilateurs étant encore assez rustiques c’était un avantage conséquent que d’avoir un ISA “dev friendly” et facilement utilisable pour la compilation.

avatar Albator1138 | 

@YetOneOtherGit

Le KA780 était déjà un microprocesseur ??
(je suis totalement ignorant du monde VAX)

avatar YetOneOtherGit | 

@Albator1138

"Le KA780 était déjà un microprocesseur ??"

Yep un micro-processeur est un processeur dont le cœur des éléments logiques est intégré sur un seul circuit semi-conducteur.

le 1° Microprocesseur commercial fût l’Intel 4004 en 71.

Un processeur 4 bit, gravé en 10 μm intégrant un peu plus de 2000 transistor cadencé à 750 KHz.

Les microprocesseur était déjà fort nombreux en 77 dont le MOS 6502 qui animera les Apple.

Tu avais Intel, MOS Technology, Zilog, Motorola ... pour ce qui pouvait être acheté séparément et DEC, IBM, HP ... qui faisaient des micro-processeurs pour leurs besoins propres.

avatar esclandre77 | 

@YetOneOtherGit

Paye tes Wikipédia leul.

avatar YetOneOtherGit | 

@esclandre77

"Paye tes Wikipédia leul. "

Mon pauvre Tullius Détritus, si tu en es encore à confondre savoirs et connaissances 🙄

avatar esclandre77 | 

@YetOneOtherGit

Paye ta nolife leul.

avatar esclandre77 | 

@YetOneOtherGit

Paye tes recherches Google leul.

avatar gwen | 

@esclandre77

Et en français, qu’est-ce que cela signifie  ?

Pages

CONNEXION UTILISATEUR