Mon ordinateur de type “ben eater”

Je suis tombé par hasard, il y a quelques mois, sur des vidéos d’un gars, Ben Eater.

Ce gars propose des vidéos sur les circuits logiques. On peut ainsi apprendre la différence entre un D-Latch et un D flip-flop.

Mais toute une série de vidéos m’ont carrément impressionnées, puisqu’il s’agit de construire un processeur 8bit, à partir de composants logiques de bases (And, Or, Nor, …).

Je regardais ça dans mes moments perdus, et puis, j’ai acheté quelques composants, j’ai commencé à assembler ça… et en quelques mois, je me suis construit mon propre “ordinateur”.

Mon “ordinateur”

Le truc est super addictif. On commence par construire un module, on le teste. Au début bien sûr ça marche pas, donc on doit chercher d’ou vient le problème…

J’ai été très impressionné par la pédagogie de Ben, et la qualité des vidéos. Le montage des vidéos est très pro. Pas de bla-bla inutile, il accélère dans les moments inintéressants, et au contraire, prend bien le temps d’expliquer les nouvelles notions.

Quand on doit monter un module à partir d’une vidéo, il faut nécessairement se retourner les manches : lire les data-sheet des composants utilisés, réfléchir au circuit… Le mode d’emploi n’est pas fournis. On est juste guidé par un “super prof”.

Au final, ça fait quoi ce montage ? 

Il s’agit d’un processeur avec tous ses composants : horloge, RAM, registres…

Le processeur est programmé via un mécanisme binaire très primitif. On donne une adresse mémoire avec un boitier de switch :

Et on fixe la valeur à enregistrer avec un autre switch, de 8 bits. On est assez proche des tous premiers ordinateurs, avant la généralisations des interfaces standards clavier-écran.

L’affichage est plus sophistiqué, puisqu’on a un afficheur décimal (à droite sur la photo)

Au final, c’est un peu magique quand on approche de la fin, et que tous les composants se mettent à marcher, et à calculer ce qu’on a prévu : 

Exemple de programme, pouvant tourner sur l’ordinateur (qui saura dire ce que fait ce programme 😉 ?)

Ce montage m’a beaucoup appris : 

  • Comment faire un montage basé sur des planches “breadboard”
  • Comment faire des montages avec des puces logiques
  • Comment fonctionne, de manière très intime, un processeur.

Et puis, c’est quand même fascinant de se concentrer sur un truc pareil, qui n’a réellement aucune utilité ! On prend conscience de l’inutilité du montage surtout quand on a fini ;). On est proche de la démarche des oeuvres éphémères au fond, comme un mandala.

Tout cela est bien loin de mon travail, mais ça fait du bien de se “dégourdir l’esprit”.

sur ce, je vous souhaite à tous une bonne année 2020 : ayez l’esprit créatif, garder la soif d’apprendre, soyez curieux de tout !

4 commentaires

  1. Salut François, j’avais loupé ça 🙂
    Super comme projet ! Tu penses que tu t’en es sorti parce que tu connaissais déjà la programmation ou c’est accessible à “n’importe qui” quand même ?
    Tu le conseille à un enfant pour apprendre ou pas ?

    1. A un grand enfant alors 🙂 La complexité n’est pas la programmation, mais la compréhension de la logique a base de composants électroniques.
      Les vidéos de Ben Eater sont extrêmement bien faites, mais tu dois bosser pour y arriver : chercher les docs des composants, comprendre le circuit.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *