Intel 4004
1969 : une calculatrice à l’origine du projet
L’histoire du 4004 commence en 1969.
La société japonaise Nippon Calculating Machine Corporation, qui commercialise ses calculatrices sous la marque Busicom, demande à Intel de concevoir les circuits électroniques d’une nouvelle calculatrice imprimante. Le projet envisagé par Busicom repose initialement sur un ensemble d’environ une douzaine de circuits spécialisés. Chaque circuit doit assurer une fonction particulière de la calculatrice. Cette approche est alors courante : pour construire une machine électronique, les ingénieurs développent des circuits spécialement adaptés aux fonctions qu’elle doit réaliser.
Intel propose cependant une solution différente.
Plutôt que de multiplier les circuits spécialisés, Intel et Busicom s’orientent vers une architecture beaucoup plus souple : un petit ensemble de circuits autour d’un processeur programmable généraliste. Avec un circuit spécialisé, la fonction est en grande partie fixée par le matériel : pour modifier le comportement de la machine, il faut souvent redessiner le circuit électronique.
Avec un processeur programmable, le même matériel peut au contraire accomplir des tâches différentes simplement en changeant le programme qu’il exécute. Une même architecture peut ainsi être adaptée à plusieurs modèles de calculatrices ou à d’autres applications sans repartir de zéro. Cette approche apporte plusieurs avantages décisifs : moins de circuits différents à concevoir, davantage de souplesse, des coûts de développement réduits et une évolution plus facile des produits.
Autrement dit, une partie de la complexité quitte le câblage électronique pour être transférée dans le logiciel.
Cette idée donne naissance à la famille de circuits MCS-4, organisée autour de l’Intel 4004.
Le MCS-4 : quatre circuits pour construire un système
Le 4004 ne fonctionne pas seul.
Il appartient à une famille de quatre circuits conçus pour fonctionner ensemble :
-
- 4001 : mémoire ROM contenant le programme et disposant également d’entrées-sorties ;
- 4002 : mémoire RAM destinée notamment au stockage des données ;
- 4003 : registre à décalage 10 bits permettant d’étendre les sorties du système. Il reçoit les bits successivement, puis les présente simultanément sur dix lignes de sortie, par exemple pour commander un afficheur, une imprimante ou d’autres périphériques.
- 4004 : unité centrale chargée d’exécuter les instructions.
Cet ensemble constitue le MCS-4.

La distinction est importante. Le 4004 est bien le processeur, mais un ordinateur ou une calculatrice complète nécessite également de la mémoire et des circuits permettant de communiquer avec l’extérieur. On retrouve déjà ici une organisation qui deviendra classique : processeur (C4004)+ mémoires (C4001-C4002) + entrées/sorties (C4003).

Caractéristiques principales
Les principales caractéristiques de l’Intel 4004 sont :
- année de commercialisation : 1971 ;
- architecture : 4 bits ;
- transistors : environ 2 300 ;
- technologie : MOS à canal P et grille de silicium ;
- gravure : environ 10 µm ;
- fréquence : environ 740 à 750 kHz ;
- jeu d’instructions : 46 instructions ;
- mémoire programme directement adressable : 4 K mots de 8 bits ;
- bus externe : 4 bits multiplexé ;
- boîtier : DIP 16 broches.
Les ingénieurs derrière le 4004
Le 4004 ne peut pas être attribué à un seul inventeur. Plusieurs ingénieurs interviennent à différentes étapes du projet.
Ted Hoff propose l’idée d’une architecture beaucoup plus simple et programmable que celle initialement prévue par Busicom. Stanley Mazor travaille avec lui sur la définition de cette architecture.
En 1970, Federico Faggin rejoint Intel et prend la responsabilité de la réalisation du MCS-4. Son expérience de la technologie MOS à grille de silicium est déterminante pour réussir à intégrer la logique du processeur sur une seule puce.
L’ingénieur japonais Masatoshi Shima, envoyé par Busicom, travaille également avec Faggin sur la conception détaillée du système.
Le 4004 résulte donc d’une complémentarité :
- Hoff et Mazor définissent les principes architecturaux ;
- Faggin dirige la réalisation des circuits et conçoit le 4004 ;
- Shima participe étroitement à la conception logique et à la réalisation du système.
1971 : le processeur tient sur une seule puce
En 1971, le 4004 devient une réalité industrielle.
Le composant contient environ 2 300 transistors réalisés avec une technologie MOS à grille de silicium.
Ces transistors constituent les registres, l’unité arithmétique et logique ainsi que les circuits de commande nécessaires à l’exécution des instructions.
Le résultat tient dans un boîtier DIP à seulement 16 broches. Ce point est remarquable. Jusqu’alors, les fonctions d’une unité centrale nécessitent généralement plusieurs circuits intégrés, voire plusieurs cartes électroniques.
Avec le 4004, l’unité centrale elle-même devient un composant.
C’est précisément ce que signifie le terme microprocesseur : un processeur intégré à l’échelle d’un circuit microélectronique.
Pourquoi la programmabilité change tout
Le véritable changement apporté par le 4004 ne consiste pas simplement à réduire la taille des circuits. Il modifie aussi la manière de concevoir les machines électroniques.
Imaginons deux calculatrices possédant des fonctions différentes. Avec une logique entièrement spécialisée, il faut souvent modifier les circuits électroniques pour changer le comportement de la machine. Avec un microprocesseur, une partie de cette différence peut être déplacée dans le programme stocké en mémoire. Le processeur reste identique. C’est le programme qui détermine les opérations qu’il doit effectuer.
Cette séparation entre matériel et logiciel apporte plusieurs avantages :
- réutilisation : un même processeur peut équiper plusieurs produits ;
- réduction des développements matériels : toutes les fonctions ne nécessitent plus un circuit spécialisé ;
- souplesse : différents programmes permettent d’adapter un même matériel à plusieurs usages ;
- production en série : le processeur devient un composant standard pouvant être vendu à de nombreux constructeurs.
Il ne faut toutefois pas imaginer les mises à jour logicielles actuelles.
Dans un système comme le MCS-4, le programme est généralement stocké dans une ROM. Modifier le logiciel peut donc nécessiter de remplacer ou de produire une nouvelle mémoire ROM.
La révolution est ailleurs : il n’est plus nécessaire de redessiner le processeur lui-même pour chaque nouvelle application.
Comment fonctionne le 4004 ?
Le 4004 est un processeur 4 bits.
Cela signifie que son unité arithmétique manipule principalement des valeurs constituées de quatre bits à la fois.
Quatre bits permettent de représenter 16 combinaisons différentes, de 0 à 15 en binaire.
0000
0001
0010
0011
…
1100
1110
1111
Cette architecture convient particulièrement bien aux calculatrices, car un chiffre décimal de 0 à 9 peut être représenté avec quatre bits. Le processeur possède également 16 registres de 4 bits, utilisés pour conserver temporairement des données pendant les calculs.
Son jeu d’instructions comporte 46 instructions, permettant notamment d’effectuer des opérations arithmétiques, des branchements et des appels de sous-programmes.
Un bus de seulement 4 bits
Le boîtier du 4004 ne possède que 16 broches.
Cette contrainte oblige les ingénieurs à utiliser les mêmes connexions pour plusieurs fonctions.
Le 4004 dispose ainsi d’un bus bidirectionnel de 4 bits. Les quatre lignes servent successivement à transmettre des informations différentes : parties d’adresse, instructions et données. On parle de multiplexage. C’est un compromis.
Utiliser peu de broches permet de réduire le coût du boîtier, mais oblige à transmettre les informations en plusieurs étapes.
La communication avec la mémoire est donc plus lente qu’elle ne le serait avec des bus séparés.
Mémoire : ce que peut adresser le 4004
Le 4004 peut directement adresser jusqu’à 4 096 mots de programme de 8 bits, soit 4 Kio de mémoire programme.
L’adresse d’une instruction nécessite donc 12 bits, puisque : 212 = 4 096.
Il ne faut cependant pas confondre cette capacité d’adressage avec le bus physique du processeur. Le 4004 ne possède pas douze lignes d’adresse indépendantes. Les informations d’adresse sont transmises progressivement sur son bus de 4 bits multiplexé.
Cette technique permet de faire fonctionner le système malgré le très petit nombre de broches disponibles.
La Busicom 141-PF : première machine équipée du 4004
Le MCS-4 est développé à l’origine pour la société japonaise Busicom, qui prépare une nouvelle calculatrice de bureau avec imprimante : la Busicom 141-PF.

Commercialisée en 1971, cette calculatrice constitue la première application commerciale de l’Intel 4004. Le processeur n’y fonctionne pas seul : il est associé aux mémoires et circuits d’entrée-sortie de la famille MCS-4 pour former un petit système informatique programmable capable d’effectuer les opérations de la calculatrice.
L’intérêt de cette architecture apparaît immédiatement. Au lieu de concevoir une électronique entièrement différente pour chaque nouveau modèle de calculatrice, Busicom peut conserver une architecture matérielle similaire et modifier une partie de son fonctionnement en changeant le programme stocké en ROM.

Carte électronique d’une NCR 18-36, version OEM de la Busicom 141-PF.
On distingue le microprocesseur Intel 4004 entouré des circuits de la famille MCS-4
Photo : MaltaGC — CC BY-SA 4.0, via Wikimedia Commons.
Intel comprend rapidement que cette souplesse peut intéresser bien d’autres applications que les calculatrices. En mai 1971, l’entreprise renégocie son accord avec Busicom et récupère les droits de commercialisation du MCS-4 pour les autres marchés, en échange notamment du remboursement des 60 000 dollars investis par Busicom dans son développement. Busicom conserve alors les droits pour le domaine des calculatrices.
Quelques mois plus tard, en novembre 1971, Intel présente publiquement le 4004 comme un composant programmable utilisable bien au-delà de sa première fonction de calculatrice.
Le 4004 n’est pas encore un micro-ordinateur
Il serait toutefois excessif de présenter le 4004 comme le processeur ayant directement créé l’ordinateur personnel. Son architecture 4 bits est principalement adaptée aux calculatrices et aux systèmes de contrôle. La génération suivante va élargir les possibilités.
En 1972, l’Intel 8008 permet de traiter des données sur 8 bits.
Puis, en 1973, le Micral N utilise ce processeur pour construire un véritable micro-ordinateur commercial.
Enfin, l’Intel 8080 offre une architecture beaucoup mieux adaptée aux ordinateurs généralistes.
Il sera notamment utilisé dans l’Altair 8800, machine emblématique des débuts de la micro-informatique personnelle.
Le 4004 représente donc moins l’aboutissement de cette histoire que son point de départ industriel.
Pourquoi l’Intel 4004 est historique
L’importance du 4004 ne se mesure pas à ses performances. Un processeur actuel est incomparablement plus puissant.
Ce que le 4004 démontre en 1971 est beaucoup plus fondamental : l’unité centrale d’un ordinateur peut devenir un circuit intégré produit en série.
À partir de ce moment, la progression peut commencer : 4004 → 8008 → 8080 → micro-ordinateurs.
Le processeur quitte progressivement les grandes cartes électroniques pour devenir une puce standard que les constructeurs peuvent intégrer à leurs propres machines. C’est cette transformation qui fait de l’Intel 4004 l’un des composants les plus importants de l’histoire de l’informatique.
Image : Stelo.xyz, Pttn ou Thomas Nguyen — licence CC BY-SA 4.0.
