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 melaure | 

Peut importe ce que tu écris, je ne crois que les gens ont besoin qu'un commentaire sur deux vienne d'un extrémiste de la pomme prêt à raconter n'importe quoi pour défendre les intérêts purement commerciaux de cette boite ...

avatar YetOneOtherGit | 

@melaure

« Peut importe ce que tu écris, je ne crois que les gens ont besoin qu'un commentaire sur deux vienne d'un extrémiste de la pomme prêt à raconter n'importe quoi pour défendre les intérêts purement commerciaux de cette boite ... »

👏👏👏Un chef d’œuvre de haine imbécile il ne manque quasiment rien 👍

avatar YetOneOtherGit | 

@melaure

« d'un extrémiste de la pomme »

🎻🎻🎻🎻🎻🎻🎻🎻🎻🎻🎻

C’est tellement pratique et confortable ce type de caricature qui te définit si bien 👍

Si on ne partage pas tes haines fanatiques c’est parce qu’on est au choix : un bobo, un bling bling, un fanboy, un inculte informatique...

Je suis un bourgeois assumé

J’ai des goûts esthétiques très loins du bling bling

Je ne suis absolument pas un thuriféraire d’Apple et je le montre régulièrement

Je peux t’en remontrer sur des sciences informatiques que tu ne connais que très superficiellement

Je sais cela t’est insupportable de n’avoir que des argumentum ad personam pour essayer d’ostraciser ceux dont les propos structurés et étayés te renvoient à ton indigence intellectuelle 🥴

avatar JLG01 | 

L’irrésistible retour du RISC.

avatar YetOneOtherGit | 

@JLG01

“L’irrésistible retour du RISC.”

Qui ne les plus vraiment, le jeu d’instruction des ARM étant aujourd’hui loin d’être réduit.

Tu as même une instruction spécifiquement dédiée à JS 🤯

https://developer.arm.com/documentation/dui0801/latest/A64-Floating-point-Instructions/FJCVTZS

avatar JLG01 | 

@YetOneOtherGit

Inévitablement, mais l’esprit reste.

avatar YetOneOtherGit | 

@JLG01

“Inévitablement, mais l’esprit reste.”

En fait cet esprit c’est depuis longtemps généralisé, même les x32/x64 sont en interne dans la philosophie RISC 😉

avatar Frodon | 

@YetOneOtherGit

Est-ce que ce qui est réduit c’est le jeu d’instruction ou les instructions elles mêmes dans la philosophie du RISC?
Dans les ARM actuels il y a t’il (beaucoup) d’instructions qui nécessitent plusieurs cycles d’horloge pour être exécutées ?

avatar YetOneOtherGit | 

@Frodon

« Est-ce que ce qui est réduit c’est le jeu d’instruction ou les instructions elles mêmes dans la philosophie du RISC? l»

C’était au cœur de la démarche : identifiée un noyau dure d’instructions essentielles.

avatar YetOneOtherGit | 

@Frodon

"Dans les ARM actuels il y a t’il (beaucoup) d’instructions qui nécessitent plusieurs cycles d’horloge pour être exécutées ?"

il y a bien longtemps que l’organisation est en pipeline, l’exécution out-of-order

avatar arnaud06 | 

Merci MacCG super série 😊

avatar smog | 

Je profite de ce super article pour signaler aux intéressés qu'il y a un chouette musée de l'informatique à Cambridge, où l'on retrouve toutes ces vieilles machines en "libre-service".
http://www.computinghistory.org.uk

avatar marc_os | 

Pendant ce temps là en France les ambitions n'allaient pas beaucoup plus loin que faire de l'assemblage avec des trucs comme le Goupil...

avatar YetOneOtherGit | 

@marc_os

“Pendant ce temps là en France les ambitions n'allaient pas beaucoup plus loin que faire de l'assemblage avec des trucs comme le Goupil...”

Vision assez caricaturale 🙄

La réalité est bien plus complexe et contrastée.

avatar BeePotato | 

@ marc_os : « Pendant ce temps là en France les ambitions n'allaient pas beaucoup plus loin que faire de l'assemblage avec des trucs comme le Goupil... »

Goupil était très en avance sur son temps, proposant des G3, G4 et même G5 longtemps avant Apple ! 😁

Pages

CONNEXION UTILISATEUR