Bonjour ‘nal,
Je viens de terminer un projet qui m’a occupé un bon moment : construire un processeur complet en partant d’une seule brique, la porte NAND. Avec des NAND j’ai fait les portes de base, avec les portes les additionneurs et les registres, et ainsi de suite jusqu’au CPU.
Le tout tourne dans Digital Logic Sim, un simulateur de logique numérique, donc pas de fer à souder ni de composants à acheter.
Côté specs : une ALU 8 bits, des adresses sur 16 bits (64 Ko de RAM), une horloge à 800 kHz. Dessus tourne un petit OS avec quatre jeux, Snake, un casse-brique, Flappy Bird et Tetris, jouables au clavier en temps réel.
La partie qui m’a le plus amusé, c’est le logiciel : écrire les programmes en binaire à la main est vite devenu infernal, donc j’ai écrit mon propre langage et un compilateur qui génère directement le contenu de la mémoire programme.
J’ai fait une courte vidéo (1min30) qui montre le résultat : https://youtu.be/O8znJoZkAmw
Si ça intéresse, je peux faire un journal plus détaillé sur l’architecture.

# À faire de la pub...
Posté par gUI (Mastodon) . Évalué à 6 (+3/-0).
Je fais de la pub pour un super jeu indépendant : Turing Complete qui justement vous apprend à fabriquer votre propre processeur à partir de portes NAND et même plus.
J'ai un copain qui a ainsi fabriqué dans le jeu un processeur avec les instructions de base RiscV, qui répond donc aux vrais opcodes, et qui y a fait tourner des programmes qu'il a compilé hors du jeu.
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: À faire de la pub...
Posté par fork_bomb . Évalué à 1 (+0/-0).
Ce n'est pas d'ailleurs ce jeu que l'on voit dans la vidéo liée dans le journal ?
[^] # Re: À faire de la pub...
Posté par lucasBe3 . Évalué à 2 (+2/-0).
Non, c'est un Fork de Digital logic sim :)
[^] # Re: À faire de la pub...
Posté par lucasBe3 . Évalué à 1 (+1/-0).
Intéressant !
[^] # Re: À faire de la pub...
Posté par Dafyd . Évalué à 2 (+1/-0).
Hello,
Jeu acheté, et déjà 32 heures au compteur :D merci pour le partage !
# fréquence
Posté par nonas . Évalué à 3 (+1/-0).
Qu'est-ce qui limite la fréquence ?
La capacité de simulation du logiciel ?
[^] # Re: fréquence
Posté par lucasBe3 . Évalué à 2 (+2/-0).
Oui exactement !
# But How Do It Know
Posté par black_magic . Évalué à 10 (+11/-0).
La bible sur le sujet est le livre de J. Clark Scott But How Do It Know. Plusieurs projets tournent autour du concept de « Scott CPU » : par exemple, cette implémentation en JavaScript avec un CPU à 1 Hz ou ce projet 16-bit assez complet.
Chapeau en tout cas pour le travail accompli, particulièrement sur le développement du langage !
J'avais implémenté le Scott CPU à l'aide de Logisim Evolution. Une question pourquoi avoir choisi Digital Logic Sim qui ne semble pas énormément maintenu ?
Je suis effectivement intéressé par l'architecture et ne devrais pas être le seul !
[^] # Re: But How Do It Know
Posté par jseb . Évalué à 5 (+3/-0).
À chaque fois que je pense que je vais abandonner pour de bon linuxfr, je lis un commentaire comme le tiens et j'y retourne encore un peu.
Discussions en français sur la création de jeux videos : IRC libera / #gamedev-fr
[^] # Re: But How Do It Know
Posté par lucasBe3 . Évalué à 2 (+2/-0).
Merci !
Au départ je l’ai choisi parce qu’il était visuellement plus agréable. Mais vu que je visais 800 kHz, j’étais convaincu (peut-être à tort ?) que quel que soit le simulateur, j’allais devoir le forker pour gagner en perfs. Au final j’ai réécrit une bonne partie du cœur de DLS pour y arriver.
Tu montais à combien de Hz avec Logisim Evolution sur ton Scott CPU ? Ça m’intéresse de savoir si j’aurais pu m’en passer.
Et merci pour le livre, je note !
# Sympa !
Posté par YannickP . Évalué à 10 (+9/-0).
Oui, pourquoi pas un journal plus détaillé sur l'architecture, si tu as le temps ?
[^] # Re: Sympa !
Posté par HS-157 . Évalué à 3 (+3/-0).
+1, je serais aussi intéressé par un journal détaillé.
[^] # Re: Sympa !
Posté par Philippe F (site web personnel) . Évalué à 5 (+3/-0).
+1 aussi sur le compilateur et plus généralement la chaîne logicielle que tu as créée.
[^] # Re: Sympa !
Posté par lucasBe3 . Évalué à 3 (+3/-0).
Merci à vous trois ! En fait je prépare une série de vidéos qui reprend tout depuis le début, de la porte NAND jusqu’au CPU complet, pour expliquer comment ça marche pas à pas (et pouvoir le refaire soi-même dans DLS).
# Nand game
Posté par Jona . Évalué à 8 (+6/-0). Dernière modification le 10 octobre 2026 à 12:53.
Ça me fait penser à ce site https://nandgame.com/ qui est vraiment intéressant ! 😊
Et je rajoute ce lien qui me semble aussi à propos: https://www.nand2tetris.org/
# Le problème à trois corps
Posté par pamputt . Évalué à 2 (+0/-0). Dernière modification le 12 octobre 2026 à 09:43.
Ce journal m'a rappelé un épisode de la série chinoise Le problème à trois corps dans lequel le héros fait construire un « ordinateur humain », en utilisant des soldats qui réalisent manuellement des portes NAND.
Si vous ne l'avez pas encore vu, et que vous avez l'esprit scientifique, je vous recommande chaudement le visionnage de cette série que j'ai trouvé excellente, tant sur le point scénaristique que scientifique.
[^] # Re: Le problème à trois corps
Posté par Gil Cot ✔ (site web personnel, Mastodon) . Évalué à 4 (+2/-0).
Vaut mieux lire le livre qui est plus riche (en plus le scénario a un peu falsifié l’histoire pour encore vendre le pays de l’oncle Sam)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Le problème à trois corps
Posté par Astaoth . Évalué à 2 (+0/-0).
L'ordinateur humain est un genre d'automate cellulaire. C''est un autre type de "machine" turing complet, comme le sont les réseaux de neuronnes.
Emacs le fait depuis 30 ans, et sans pubs ni télémétrie.
# Version électronique
Posté par Colin Pitrat (site web personnel) . Évalué à 5 (+3/-0).
Pas exactement pareil mais similaire dans l'esprit, le bread-board computer de Ben Eater. Il a fait une série de vidéos sur YouTube (en anglais) et vend des kits pour réaliser soi même son ordinateur 8 bit sur des breadboards: http://eater.net
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.