Gamma 5 (Petite Machine)

Le nom de Gamma 5 a été le nom proposé pour la machine de bas de gamme de la Compagnie des Machines Bull. Elle devait coexister avec le système à cartes Gamma 10, puis avec une Machine Intermédiaire qui sera abandonnée au profit du Gamma 30 (d'origine RCA) et enfin avec le Gamma 60. Cependant en interne, elle gardera le nom de "Petite Machine" et souvent le surnom de "Machine à Bouvier" du nom de son architecte.


En 1960, il devint clair que l'électronique devait à plus ou moins long terme envahir le monde du traitement de l'information, depuis les ateliers mécanographiques qui depuis les années 1950 devenait dotée de calculatrices ancêtres de l'ordinateur, jusqu'aux machines comptables électromécaniques dont l'horlogerie était remplaçables par des circuits à transistors.
L'utilisation de mémoires de -relativement- grande capacité comme des tambours de 100 000 caractères amenait aussi à se poser le problème des fichiers à accès immédiat, en contraste avec les fichiers de très grosses capacités  comme les bandes magnétiques qui ne pouvaient que  difficilement être consultables plus d'une fois par jour.
Il restait à réaliser un système suffisamment économique pour mettre à la disposition des petites entités (petites entreprises ou agences décentralisées de grosses entreprises) le matériel répondant à leurs besoins à un prix acceptable pour ses entités. IBM avait mis au point le système 305 RAMAC qui répondait aux besoins fonctionnels de l'accès direct à des disques mais dont le prix (et le coût) a réduit singulièrement le marché.

A la Compagnie des Machines Bull, les équipes d'études comprenaient en 1960 que le succès d'une machine ne pouvait reposer uniquement sur l'originalité des concepts ni sur l'excellence de certains périphériques. Il était nécessaire de développer un système complet (matériel, logiciel, fournitures) suffisamment économique pour couvrir de nouveaux marchés qui se trouvaient encore hors d'atteinte des fournisseurs d'équipements électroniques de bureau.

Il a semblé nécessaire à l'équipe Petite Machine (l'équipe initiale impliquait Claire Vidal, mais le projet s'articula autour de Claude Bouvier, le père et le chef architecte de ce qui deviendra une ligne de produits) de faire une rupture avec le postulat de base de la stratégie de la Compagnie depuis ses débuts qui était de fonder le traitement des informations autour de la carte perforée. Les matériels à cartes représentaient une part incompressible de mécanique de précision qui faisaient glisser inévitablement l'offre vers le haut. Il n'était pas question à cette époque de promouvoir une alternative systématique aux cartes perforées comme ont cherché d'autres constructeurs comme Univac mais de permettre un traitement de l'information alternatif et de ne recourir aux cartes que comme media d'échange.

Un autre point de l'architecture des petites machines était de pouvoir éviter l'embauche de cette denrée rare qu'était le programmeur. La programmation en assembleur classique comme celui du Gamma 3 ET exigeait une spécialisation, la connaissance des performances des entrées-sorties de la machine (bref un spécialiste). Les langages de haut niveau comme FORTRAN et ALGOL nécessitaient une capacité d'abstraction qui sortait de la culture des utilisateurs de machines comptables. De plus, sauf recours à une sous-traitance de la fonction programmation, les compilateurs de ces langages (et il en sera de même pour COBOL qui commencera à se répandre à cette même époque) requéraient une machine beaucoup plus puissantes que la cible recherchée. L'axe essentiel de la conception de la Petite Machine sera l'invention d'un langage machine directement utilisable par le client.
On aurait pu penser que la démarche aurait pu mener à la conception de langages de programmation comme RPG , mais la vision d'un traitement interactif qu'avaient les concepteurs les dissuadaient de se diriger vers des langages non procéduraux opérant sur des fichiers.

L'élaboration de la Petite Machine se fit pendant la période troublée de la fin de la vie indépendante de la Compagnie des Machines Bull. Elle se déroula en l'absence de contraintes de planification, de contrôle financier, de revues indépendantes de produits, ... bref, ce qu'on a appelé souvent le "développement en perruque".

La conception du matériel se fit avec un impératif de coût (prix de revient usine) minimum. La technologie retenue était celle disponible sur les unités centrales de l'époque mais sans compromis. Une des avancées à la fois sur le plan de la logique de conception d'un ordinateur et de la technologie a été la première utilisation chez Bull de la mémoire morte comme moyen de concilier un riche code d'instructions et un matériel simplifié. Cette technique de microprogrammation est ensuite devenue répandue dans la conception de toutes les machines, à commencer par le Gamma M-40 qui utilisera la même technologie que la Petite Machine.
La réalisation de la mémoire morte de la PM a été faite au moyen d'enroulements sur des bâtonnets de ferrite. L'étude théorique de la technologie était de même nature que la réalisation des mémoires réinscriptibles à tores magnétiques. Yves Brette sera le créateur de cette mémoire morte.
Par contre la Petite Machine fait des économies sur la taille de la mémoire centrale qui est réduite à une capacité maximum de 640 caractères divisée en deux zones l'une pour les données de travail, l'autre comme "mémoire cache programme". Le mécanisme d'adressage de la mémoire vive inclut des  "progresseurs" qui alimentent une succession de caractères sans intervention de l'additionneur du processeur, jusqu'à reconnaissance d'un drapeau de fin de zone logique. En extrémité d'un segment de programme la mémoire cache programme est alimentée automatiquement par microprogramme depuis une mémoire secondaire.
La mémoire secondaire dépend du modèle de petite machine. Ce pouvait être un tambour magnétique (celui du Gamma ET) ou se limiter à une bande perforée. Dans ce dernier cas la mémoire programme est une boucle de bande perforée (de longueur inférieure à 2 mètres), une solution des années 1950 fragile et lente. C'est la solution à tambour qui sera privilégiée dans les applications pratiques.

L''architecture -on dira plus tard l'interior decor- interprétée par microprogrammes et le logiciel de la machine furent conçus simultanément avec l'objectif de rendre simplifiée la formation du programmeur-opérateur.
C'est aussi dans ce but que l'adressage est décimal afin d'éviter une traduction. Les données sont accessibles via des descripteurs (adresse de zone) qui contiennent soit l'adresse en mémoire secondaire, soit le numéro de zones en mémoire centrale.
Sur la Petite Machine, le programmeur manipule des données cadrées sur une zone et limitées par un caractère drapeau sur 100 registres de calcul dont 10 registres d'adresse de zone dont:

Les instructions permettent de transférer les données entre ces différentes zones , d'effectuer des calculs sur les données en registres. Ces instructions sont à 2 adresses sans accumulateur spécifique et les données sont cadrées automatiquement par microprogrammes.
Les instructions d'entrées-sorties sont soit bloquantes (attente de la fin d'opération du périphérique), soit non bloquantes. Ces dernières permettent des simultanéités de traitements. Sur le tambour, les recherches (temps de latence) sont non bloquants, les opérations de lecture/écriture mobilisent les microprogrammes de l'unité centrale.

 

 

Conception et réalisation des PM "Petites Machines" (2 modèles) .


Petite Machine à bande perforée :
-Une mémoire morte à bâtonnets de ferrite pour contenir la logique hardware (microprogramme)
-Une mémoire vive à progresseurs de 160/320 caractères de 6 bits pour les données.
-Une mémoire vive à progresseurs de 160/320 caractères de 6 bits pour recevoir un segment de programme ("mémoire cache programme"). Le programme est inscrit sur une boucle de bande perforée (longueur inférieure à 2 mètres). Un segment de programme est alimenté en mémoire automatiquement en fin d'exécution du segment précédent ou lors d'un saut de séquence.
-Une machine à écrire électrique (Flexowriter).
-Un lecteur/perforateur de cartes.


Petite Machine à tambour magnétique :
-Mémoire morte à bâtonnets de ferrite pour contenir la logique hardware (microprogramme)
-Une mémoire vive à progresseurs de 160/320 caractères de 6 bits pour les données. Les données stockées sur le tambour magnétique sont transférées mot par mot.
-Une mémoire vive à progresseurs de 160/320 caractères de 6 bits pour recevoir un segment de programme. Le programme est inscrit sur le tambour magnétique. Un segment de programme est alimenté en mémoire automatiquement en fin d'exécution du segment précédent ou lors d'un saut de séquence.
-Une machine à écrire électrique (Flexowriter).
-Un lecteur/perforateur de cartes.

 

Lorsque la Petite Machine a été présentée aux réseaux commerciaux CMB, les responsables de ceux-ci l'ont accueilli négativement tout spécialement la machine à bande perforée qui se comparait au modèle 632 Electronic Typing Calculator (facturière électronique mais uniquement à bande perforée, vendue par le réseau IBM "machines à écrire").
La version du Gamma 5 à tambour apparaissait trop chère pour les PME et les deux modèles ne faisaient que peu d'usage des cartes perforées qui constituaient encore en 1962-1963 le cheval de bataille de la Compagnie et de son actionnaire majoritaire. La solution d'une programmation par l'utilisateur apparut trop hasardeuse. Au total, la capacité de la machine à révolutionner l'informatique en généralisant l' "accès direct" fut nettement sous-estimée et c'est à partir des grosses machines (GE-400) que naîtra chez Bull-General Electric l'informatique transactionnelle de gestion.

Le projet, enterré sous sa forme de Petite Machine, sera reconsidéré et donnera le jour au système GE-55. Les concepts imaginés à l'occasion de la Petite Machine survivront et l'architecture en gardera les grandes lignes.

©Jean Bellec d'après le papier de René Koebel