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é à 3 (+0/-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é à 1 (+1/-0).
Non, c'est un Fork de Digital logic sim :)
[^] # Re: À faire de la pub...
Posté par lucasBe3 . Évalué à 0 (+0/-0).
Intéressant !
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.