Retour réincarné de l’ordinateur 4 bits HRRG (Partie 1)
J’ai une excellente nouvelle pour tous ceux qui ont suivi mon projet informatique HRRG au fil des ans… nous sommes de retour au travail avec une implémentation FPGA à l’horizon !
Parfois, je me demande si je suis le seul à avoir des projets de passe-temps qui s’éternisent pendant des années, faisant des allers-retours métaphoriques entre la veilleuse et la veilleuse métaphoriques de ma durée d’attention, évoluant et se métamorphosant au fur et à mesure que les semaines se transforment en mois et que les mois se transforment en années et, dans le cas de certaines de mes créations, les années se transforment en décennies.
Cela s’est avéré être le cas avec mon ordinateur Heath Robinson Rube Goldberg (HRRG), qui était à l’origine destiné à être une machine 8 bits lorsqu’il a été conçu pour la première fois dans la nuit des temps.
Cette beauté généreuse porte le nom du dessinateur et illustrateur britannique William Heath Robinson (1872-1944) et de son homologue américain Reuben Lucius Goldberg (1883-1970). Ces deux messieurs étaient réputés pour avoir créé des illustrations d’engins astucieux dont les objectifs étaient d’effectuer des tâches apparemment simples, mais dont les réalisations exécutaient lesdites tâches de manière extrêmement alambiquée.
Tout a commencé quand j’ai vu un ordinateur basé sur des relais créé par le professeur Harry Porter III, qui était chargé de cours à l’Université d’État de Portland à l’époque (il est peut-être encore là pour autant que je sache). (Vous pouvez en savoir plus sur la machine de Harry ici.) J’ai adoré le son des relais qui cliquent, et j’ai aussi adoré la façon dont Harry a présenté sa machine dans une série d’armoires en bois murales à façade vitrée. Cependant, je n’aimais pas trop les faisceaux de fils reliant les armoires entre elles.
Pour être honnête, j’avais eu l’idée de construire un ordinateur relais caché dans le fond de mon esprit pendant un certain temps. J’étais même allé jusqu’à acheter des livres d’occasion sur la création de logique à relais datant des années 1950 et 1960. Le problème était qu’en plus de m’inspirer, la création d’Harry me refroidissait aussi parce que je ne voulais pas faire quelque chose que quelqu’un d’autre avait déjà fait, si vous voyez ce que je veux dire.
C’est ce qui m’a conduit à mon concept original de haut niveau de l’ordinateur HRRG, qui consistait à créer ma machine sous la forme d’une série d’armoires murales en bois à façade vitrée, comme celle d’Harry, mais chacune de mes armoires contenant une partie de l’ordinateur réalisé dans une technologie de mise en œuvre différente, y compris (mais sans s’y limiter) les relais, les tubes à vide, les transistors discrets, les circuits intégrés (CI) jelly-bean (série 7400), la logique mécanique, la logique magnétique, la logique pneumatique… n’en nommer que quelques-uns. Aussi, conformément à la philosophie HRRG, nous supprimerions les faisceaux de câbles, mettant en œuvre toutes les communications inter-armoires via un réseau maillé sans fil.
En fait, j’ai beaucoup réfléchi à ce projet, notamment en achetant divers articles que je prévoyais d’utiliser, tels que des milliers de minuscules noyaux ferromagnétiques des années 1960 que j’ai ramassés pour quelques dollars quelque part en Europe de l’Est (j’avais prévu de les utiliser pour implémenter une armoire logique magnétique ainsi qu’une armoire mémoire à noyau magnétique).
Malheureusement, je suis un ours au petit cerveau, comme dirait Pooh Bear. De plus, j’ai une courte durée d’attention et je suis facilement distrait…ÉCUREUIL!!! Du coup, mon attention s’est portée sur d’autres projets.
Après plusieurs années d’interruption, j’ai été présenté à un ingénieur du nom de Joe Farr. Joe et moi partageons de nombreux intérêts, notamment l’amour des ordinateurs rétro. Étant donné que Joe est si central dans l’incarnation actuelle du HRRG, je lui ai demandé de m’envoyer quelques mots que je pourrais utiliser pour le présenter, et il a répondu comme suit :
Je suis un passionné d’électronique, d’informatique et de radio amateur. Une fois mes études (formelles) terminées dans les années 1980, j’ai commencé ma carrière en tant que programmeur informatique pour Nixdorf Computers situé à Manchester, en Angleterre. Après plusieurs années, j’ai déménagé dans le sud (principalement pour un meilleur climat), travaillant avec des entreprises technologiques de premier plan sur les logiciels, le matériel, la téléphonie et les systèmes de données mobiles. Maintenant, après de nombreuses années dans le monde indépendant, je me suis installé dans un hameau de campagne idyllique juste à l’extérieur de Cambridge où je fais du télétravail pour mon travail à temps plein (de jour) en tant qu’ingénieur logiciel et matériel principal avec le London Ambulance Service.
Après plus de conversations par e-mail que je ne veux en considérer (c’était avant que les vidéoconférences ne deviennent la norme), le HRRG s’était transformé en une machine 4 bits parce que nous pensions que ce serait plus amusant. De plus, nous avons déterminé qu’un ordinateur 4 bits aurait plus de sens en tant qu’outil pédagogique.
Le concept actuel consiste à disposer d’une armoire d’horloge système, d’une armoire CPU et d’un ensemble d’armoires mémoire. L’idée est que les amateurs et les lycéens pourraient construire des armoires mémoire contenant aussi peu qu’un mot de mémoire de 4 bits implémenté dans la technologie de leur choix, et que ces armoires mémoire parleraient ensuite à l’armoire CPU principale.
Encore mieux, dans le cadre de cela, Joe a créé un émulateur de l’ensemble du système qui s’exécute sur un PC. Cela signifie que vous pouvez d’abord créer une armoire de mémoire virtuelle qui communique avec le processeur virtuel, puis créer une implémentation physique de votre armoire qui communique avec le processeur virtuel (ou une version physique du processeur si vous en avez un).
Juste pour ajouter une grosse cuillerée de crème sur le dessus du gâteau métaphorique, Joe et moi avons défini notre propre langage d’assemblage, après quoi Joe a concocté un assembleur. Comme nous le voyons dans la capture d’écran ci-dessus, l’assembleur lui-même semble fonctionner sur un terminal de données virtuel Sperry Univac Uniscope 200.
Donc, comme vous pouvez le voir, Joe et moi avons mis beaucoup d’efforts dans ce projet, jusqu’à ce que… SQUIRREL!!! Que puis-je dire, nous avons tous les deux été distraits par d’autres projets, et une couche de poussière a commencé à se développer sur l’idée du HRRG. Et puis…
Au début de 2021, j’ai reçu un e-mail d’un ingénieur en électronique nommé Nils van den Heuvel qui accroche son chapeau aux Pays-Bas. Après avoir parcouru certains de mes écrits antérieurs sur l’ordinateur HRRG 4 bits, Nils a déclaré qu’il était intéressé par la création d’une implémentation basée sur FPGA.
Ainsi, Joe, Nils et votre humble narrateur ont commencé à avoir des réunions hebdomadaires. Il n’y a rien de tel que d’essayer de construire quelque chose pour révéler les trous dans votre conception, et le HRRG n’a pas fait exception. En conséquence, nous avons fait évoluer le jeu de registres et le jeu d’instructions du CPU en quelque chose que je trouve vraiment plutôt savoureux. Je partagerai plus sur ces sujets et présenterai correctement Nils dans ma prochaine chronique. En attendant, comme toujours, j’attends vos commentaires, questions et suggestions.