Pourquoi Banque Populaire est la première banque des entreprises ?
Je me posais des questions sur le partage de la valeur pour mes salariés.
Elodie, ma conseillère Banque Populaire, m'a proposé une solution d'épargne salariale sur mesure,
rapide à mettre en place et que je peux piloter en ligne.
C'était simple et surtout ça a fait des heureux.
Accompagner nos clients sur tous les territoires avec des solutions adaptées à leurs besoins,
c'est ça, être la première banque des entreprises, Banque Populaire, la réussite est en voulue.
Étude Quantar PMEP, mid-2023, 14 Banques Populaires, 1ère Banque des PM.
Salut Simon, bienvenue, bienvenue.
Ce qui est fou, c'est que tu nous viens du Discord où tu particules à M'Actif.
Et ça c'est le 1er avité qui vient du Discord de notre Discord.
Donc voilà un argument supplémentaire pour y aller.
Carrément, en plus on a une petite communauté, on est...
Il n'y a pas une activité de dingue non plus, mais c'est intéressant justement pour se donner un peu des news
Et pour expliquer un peu avant, tu peux nous raconter ce que tu fais dans la vie actuellement ?
Tu es étudiant si je dis pas de bêtises ?
Ouais c'est ça, je devrais dans un cours de philo là.
C'est pas ma matière forte, mais...
Moi je suis étudiant-ingénieur à l'ISEP, donc ça a Paris, un institut superacturier de Paris.
Et actuellement, je sors d'une 2e année de prépa là, donc MPSI-PSI.
Et là maintenant c'est direction la 1ère année d'ingénieur et recherche d'alternance pour ma part.
Comme section à l'ISEP ?
Alors il y en a plusieurs, il y a un type artificiel, système embarqué, cyber sécurité, science des données.
Moi je vais partir sur le système embarqué.
Ok, l'ISEP.
Il y a un petit indice.
Ça fait un petit indice.
Ça fait un style d'empêcher l'ISEP.
Ouais, les sections sont cool quoi.
Ouais, j'ai failli faire ça.
Ça fait partie des quelques écoles d'ingénie parisiennes.
À post-bac, si tu veux pas te taper la prépa, en gros.
Ouais c'est important.
C'est un peu bizarre mais c'est une prépa.
Oui ça me semble bizarre que ça soit intégré à l'école mais que c'est un MPSI.
C'est très pas intérêt donc t'as pas de concours à la fin.
C'est une prépa associée, c'est encore plus bizarre mais c'est vraiment le détail.
Est-ce que tu es déjà passé sur Twitch ?
Je suis jamais passé sur Twitch, non non jamais.
C'est le baptême.
On aime bien, on aime bien sur un ascale à avoir des gens.
Est-ce que ça serait pas ton Tipe ?
Non.
Parce qu'on prépare, on avait préparé un...
J'y ai pensé mais non parce que c'était compliqué,
parce que je me disais j'aurais pas le temps de le finir.
Mon Tipe, c'est un bateau télécommandé donc vraiment rien à voir.
Stylé, c'est comme stylé.
Et ben met toi à l'aise et ça va être hyper intéressant.
Moi je suis pas sûr qu'on s'est réservé de la partie la plus simple en fin d'émission.
En fin d'émission, oui.
Dans mon avis, là on est un peu diminué, on va parler d'architecture et de CPI.
On va rentrer un petit peu dans le détail mais juste avant je dois faire ma petite intro habituelle.
Aujourd'hui on reçoit Simon, un étudiant de 19 ans passionné d'électronique.
Il s'est donné le défi fou de fabriquer son propre processeur.
Alors je peux vous dire fabriquer un processeur c'est quand même un sacré défi.
Un sacré défi c'est l'élément central de l'ordinateur.
Surtout potentiellement le plus complexe.
Simon tu es venu avec ta maquette justement qu'on a là.
De loin ça ne ressemble pas forcément à mon I7.
Mais justement tu vas pouvoir nous expliquer comment tu as réalisé ce qui est
ou ce qui peut être va bientôt être une vraie architecture de processeur
puisque il marche a priori.
Et ce sera l'occasion pour tous les gens qui n'ont comme nous jamais compris exactement
ce qui se passait au coeur de notre ordinateur.
A pas d'y voir un petit peu plus clair justement.
Avec un objet physique qui est compréhensible a priori sans un microscope.
Je suis vraiment très curieux que tu nous expliques quels sont un petit peu les...
On voit des fils partout.
Ça a l'air compréhensible comme ça de loin mais je me doute qu'en réalité c'est un peu plus compliqué.
En préambule est-ce que tu peux nous expliquer pourquoi tu t'es lancé dans ce défi complètement dingue déjà ?
Alors déjà parce que je m'amuse à chercher comment fonctionnent les choses depuis toujours.
Je suis extrêmement curieux.
Donc ça va regarder des protocoles comme le JPEG et comprendre comment il marche directement en égale decimale.
Et l'algorithme YouTube a fait que j'ai commencé a plonger dans des petites niches
et je suis tombé sur la chaîne d'un youtuber américain qui s'appelle Ben Hitter.
Et donc c'est lui qui construit en premier cette machine.
Je ne m'attribue pas tous les lauriers, c'est quand même pas uniquement mon travail.
Et donc j'ai trouvé ça absolument passionnant et évidemment qu'il fallait que je fasse la même chose.
Donc j'ai commencé à vraiment poncer sa chaîne, à suivre toutes les vidéos, à essayer de comprendre comment il fait.
Et un moment je l'ai sauté le pas, j'ai acheté tous les composants et j'ai commencé à construire le mien.
Et donc ton objectif c'est de créer un processeur.
A partir de quand on peut appeler ça un processeur ?
Un circuit électronique comme ça ?
C'est compliqué à dire d'autant plus que c'est pas complètement un processeur
dans le sens où il y a carrément une sortie, il y a un affichage, il y a de la RAM alors que la RAM ce serait plutôt en dehors d'un processeur.
Donc c'est presque un PC complet en fait, même si c'est surtout le processeur qui est la partie calcul, la partie registre qui pond la plupart de la place.
Mais c'est en fait une machine, ça se dit Turing Complete, donc ça va permettre de faire tourner n'importe quel algorithme, en théorie bien sûr, parce qu'on est quand même très limité.
Mais justement on va rentrer un peu dans le détail pour comprendre c'est quoi cette histoire de Turing Complete.
Là tu viens de parler de registre, tu viens de parler des calculs et c'est des mots qu'on entend en rapport avec justement des processeurs
mais ce sera l'occasion de comprendre une fois pour toutes ce que ça veut dire.
Déjà toi pour le moment de te lancer là-dedans, il faut quoi comme compétence ?
Est-ce que tu as déjà des bases en programmation ou en électronique ?
C'est quoi toi ton bagage ? Donc pour rappel tu as 19 ans et tu as commencé déjà des projets avant celui-là ?
J'ai commencé surtout de la programmation, je pense que c'est mon groupe vraiment premier projet d'électronique proprement dit,
à part quelques petits projets à droite à gauche de vraiment bidouille, c'est vraiment pour le premier projet d'électronique.
Mais ouais j'ai fait un peu de code avant, j'ai commencé avec du C-sharp pour faire des jeux vidéo sur Unity,
ensuite j'ai passé sur du piton évidemment, j'ai fait un peu de C, j'ai fait un peu d'assembleur parce que c'est trop bien.
Tout le monde ne dit pas ça, je me souviens, mais cours d'assembleur je n'étais pas en mode.
Wow ! Ah si !
Justement, l'assembleur c'est un peu la couche la plus basse en termes de programmation avant le langage d'E-Machines.
Toi au moment de te lancer dans la construction d'un processeur, c'est à ce niveau là que tu dois être,
tu dois avoir une bonne compréhension de ce qu'il se passe au plus profond d'un ordis en fait.
Ouais c'est ça, mais on n'est pas obligés d'avoir un très grand niveau d'assembleur parce que le fait de construire ça
aide à comprendre l'assembleur parce que ça te semble beaucoup plus évident quand tu sais ce qui se passe derrière.
Vu que tu parles à ton processeur si tu sais comment lui fonctionne, ça paraît plus logique.
Donc ça aide.
Et juste pour faire un petit état de lieu déjà, est-ce que tu peux nous expliquer quels sont les composants qu'on voit
et c'est quoi un peu les différentes zones de ton ordis ?
On va vous mettre un petit vu du dessus.
Et ce que je te disais tout à l'heure c'est je ne sais pas si tu pourras te balader dedans mais je ne sais pas si c'est en vous.
Donc cette image qui a fiché actuellement, c'est pas tout à fait la mienne quand même, je donne les mérites.
C'est l'image d'une personne sur un Reddit de passionnés qui font à peu près le même projet.
Et donc celui-là c'est une version finie, on voit qu'ici il manque sur le mien quelques petites parties.
Mais ça ressemble à peu près à la même chose.
Donc en haut à gauche on a d'abord la cloque qui est l'horloge en français qui permet de donner une cadence.
Donc ça génère un signal carré qui pulse à une certaine fréquence qui est réglable avec un petit potentiumètre qu'on voit en haut et gauche.
Et ça permet donc vraiment de gérer la fréquence en fonction de si on veut aller très très vite pour faire tourner un algorithme
ou si on veut le mettre en part à part pour débuguer une erreur sur le bus ou quelque chose.
Donc en gros c'est un peu chef d'orchestre des calculs.
Complètement.
Ensuite juste en dessous on a plein de blocs, les trois suivants, c'est la rame en fait.
Donc on a le premier qui va gérer les adresses, soit manuellement avec un petit switch qui est bleu sur celui de l'image,
soit depuis le bus il peut récupérer les adresses du bus.
Pour commencer directement avec le...
Un bus ?
Ouais c'est ça.
C'est moi un bus.
Un bus c'est tout bête, c'est une grande autoroute de données où tout le monde est connecté à peu près à celui donc c'est celui qui est en plein centre du processeur
et ça permet de communiquer des données entre deux blocs de la machine.
Ça permet de transmettre.
Donc en fait c'est un fil électrique qui passe un signal.
Ouais ça, en l'occurrence c'en est 8 parce que c'est un 8bit mais sur les processeurs 64 bits que vous avez c'est un bus de 64 bits.
Donc si on zoom on verrait littéralement 64 files qui transmettent à haute fréquence des octets.
Complètement, il n'y en aurait pas qu'un seul, il y en aurait plusieurs, des lus.
Ah oui on le voit là, le bus.
Magnifique autoroute.
On dirait le plan de réseau de Céhoul, le réseau Firovier là-bas.
Ok donc la clock, tu sais qu'elle était juste au-dessus après il y a la rame.
Ouais donc ensuite juste après il y a les adresses de la rame donc soit manuel soit automatique depuis le bus
qui permet de soit la programmer soit de faire tourner un algorithme qui a besoin de régler certaines adresses de la rame.
Son job c'est quoi en gros pour expliquer à la rame ?
A la rame, ça permet de stocker des données mais de manière volatile.
Dans le sens où si on redémarre le processeur, on le coupe le courant et on le remet, on perd la donnée qu'il y avait dedans.
Mais ça permet de stocker le code parce que c'est facile à programmer, c'est facile à changer une valeur qu'à l'intérieur.
Donc ça stocke le code et ça stocke les valeurs.
Donc si on a besoin d'avoir une variable qui est initialisée et une certaine valeur,
si on a besoin de stocker un nombre, c'est là-dedans qu'on va tout mettre.
Donc par exemple si moi j'avais un algorithme qui permet de calculer, je ne sais rien moi,
on peut faire comme algorithme.
Fille bonheur chez.
Ouais, fille bonheur chez.
Je trouve que ça parle pas, j'allais dire ça mais ça ne parle pas trop.
On peut faire un algorithme qui calcule ma fiche de paye par exemple.
Oui.
Ça doit faire le calcul de l'ensemble des charges, des pourcentages, des trucs comme ça.
Donc on prend cet exemple.
Il y aurait quoi dans la ramé exactement ?
C'est à dire stock overflow.
Avec ta fiche de paye, elle se tombe.
Je ne sais pas comment tu es là, c'est foutu.
Sur ce modèle là, on a 16 octèdrammes donc on ne pourra pas mettre un algorithme aussi complexe.
Mais concrètement, on aurait des instructions avec les op codes, je pourrais revenir un tout petit peu après.
Et les adresses, donc ça c'est vraiment la programmation.
C'est encore juste en dessous de l'assembleur, donc c'est directement l'instruction processeur.
Et on aurait toutes tes données, donc ton salaire du premier mois, ton salaire du deuxième mois,
la somme qu'on va devoir effectuer, etc.
Ok, donc il y a les instructions plus à chaque fois toutes les étapes intermédiaires qui sont nécessaires.
Toutes les valeurs nécessaires.
Ok.
Vraiment toute la donnée que tu auras besoin de traiter, ça sera là-dedans.
J'ai envie qu'on revienne tout à l'heure sur les op codes, je sais pas comment me le prenne.
Mais si on continue notre petit voyage, qu'est-ce qu'il y a après ?
Après, on a, ici c'est le registre d'instruction.
On le voit pas trop à la caméra, mais il va revenir.
C'est le registre d'instruction, c'est un peu la partie qu'il manque sur le mien, mais celui de l'image est fini donc c'est facile.
C'est ce qui va justement regérer ces op codes, ces fameux.
Donc il va pouvoir récupérer les différentes valeurs, parce que les stocks sont 8 bits, mais après on va les couper en 2x4.
Ce qui va permettre de gérer différentes choses.
Je vais revenir peut-être un tout petit peu plus tard pour pouvoir rentrer en détail dans les op codes.
Et si on part sur la partie droite, tout en haut on a juste un compteur, ce qui permet de compter, donc de 1 à 16, enfin 15.
Et de récupérer aussi une autre valeur, c'est-à-dire qu'on peut lui dire, là tu en as l'instruction 3, mais j'aimerais que tu sautes à l'instruction 5.
Ce qui permettrait de faire des boucles plus tard.
Donc en fait lui, son job c'est comme un pointeur, comme une aiguille qui pointe sur un endroit probablement de la RAM où il y a des instructions, c'est ça ?
Son job ça veut dire, là on en a l'étape 1 du code, donc tu exécutes l'instruction en 2, ensuite on en a l'adresse 3, 4, 5,
on va demander de revenir à l'adresse 2, donc je refais que tu exécutes l'adresse 2, etc.
Ok, c'est ce que tu disais je crois.
C'est ce que tu avais en tête, oui du coup.
Oui donc lui il retient une valeur, il retient comment on avance dans le programme.
Juste en dessous on a 2 registres et la LU, donc la LU c'est l'Operational Logic Control Unit, c'est tout ce qui additionne et qui soustrait, c'est ce qui calcule complètement.
Donc c'est addition et soustraction et c'est tout ?
Oui sur celui-ci en tout cas oui.
Et on a les 2 registres, les registres ce sont des blocs mémoire processeurs qui permettent de stocker une donnée sur 8 bits.
Donc il y en a plein dans les processeurs actuels, par exemple peut-être que certains ont entendu parler de Eax, de RAX.
Vous avez entendu ces mots ?
Oui, on a entendu parler de ces mots.
A l'heure à la Péro.
Vous avez fait un peu d'assembleur en tout cas, c'est avec les registres qu'on traite parce que c'est la RAM interne au processeur,
en l'occurrence un peu bizarre de dire ça parce que tout est sur ce même bloc.
Mais en gros c'est des endroits qui peuvent stocker moins d'informations, 8 bits, mais qui vont être beaucoup beaucoup sollicités, c'est ça ?
Et donc par exemple, la somme est entre les deux, ce qui permet par exemple de calculer A plus B, A moins B et de donner le résultat.
Ah oui en fait quand on dit que ça va plus vite on peut le voir littéralement physiquement, concrètement.
Parce que c'est plus proche quoi.
C'est trop marrant.
Et parce que c'est branché directement dessus, ça passe même pas par le bus.
Ok, mais oui c'est ça.
En fait il y a plein de trucs que j'ai déjà lu en mode.
Et donc ça fonctionne comme ça mais le voie aussi littéralement c'est hyper intéressant.
Et donc il reste des parties.
Il reste juste en dessous, c'est la sortie, c'est l'output.
Donc c'est un affichage de cette segment qui est contrôlé par une EEPROM.
Donc c'est une petite explication.
On avait dit pas d'anglicisme merde.
Désolé.
C'est con.
C'est termine sans compliquer en France.
Alors, EEPROM c'est électrique, air-resailliball, programmable et ridon-limo-mory.
Donc à différence de la RAM c'est un bloc mémoire où on lui donne une valeur.
Et ça n'a pas vraiment vocation à être modifié.
C'est vraiment on a besoin de stocker une valeur parce qu'on s'en sert tout le temps dans le processeur.
Et que même si je l'éteins, je le rallume, il garde cette donnée.
Et en l'occurrence il est utilisé pour pouvoir faire la conversion d'une valeur 8 bits du bus à un affichage satecement.
Parce qu'un affichage satecement c'est une galère sans nom.
Tu affiches la barre du haut, tu affiches la barre du bas, mais il n'a aucune notion de ce qu'est un nombre.
Il n'a aucune notion de est-ce que j'affiche deux ou est-ce que j'affiche barre gauche, barre duo quoi.
Donc là où je reprend mon exemple, à la fin de notre algorithme on aurait un salaire par exemple.
Un nombre donc c'est cette brique là qui transforme par exemple 8 en barre duo, barre de gauche, barre de droite.
Exactement.
D'accord, comme ça toi tu n'as pas à te préoccuper de savoir quel est le...
Non mais c'est sûrement purement humain, lui ils sont fous en fait.
C'est pour nous de savoir ce qui se passe sur notre sortie, ce que c'est quand même vachement plus joli.
Et donc c'est cette partie là qui est un peu non académique, c'est-à-dire qu'à mon processeur il n'a pas vraiment d'écran intégré.
A priori c'est juste là pour le besoin de la compréhension.
Mais alors ce qui est quand même, je veux qu'on en vienne à un truc, c'est que là on a fait le détail.
Donc il y a une horloge, une clock, il y a une horloge, une rame qui contient pas mal de données, des registres qui contiennent moins de données mais qui sont plus utilisés.
Il y a une section pour faire des additions et des soustractions.
Il y a... Qu'est-ce que j'ai oublié ?
Donc la rame tu l'as dit, bus, des trucs.
En gros, il y a ces éléments là, avec juste ça, tu me dis qu'on peut faire tourner théoriquement n'importe quel algorithme.
Qu'est-ce que c'est que cette magie ? Et comment on pourrait essayer de l'expliquer à des gens qui n'ont jamais entendu parler de ce concept de Turing complete ?
Alors Turing complete, ça se dit d'une machine, on peut dire qu'une machine est Turing complete, si elle fait tout ce que fait une machine de Turing.
Donc il faudrait définir ce que c'est qu'une machine de Turing.
C'est un concept hypothétique créé par Alan Turing en 1936 et qui nous définit une bande de papiers infinis composée de plein de cases et une tête de lecture qui peut écrire sur une case
ou effacer ce qu'elle a écrit et se déplacer.
Alan Turing, donc le créateur, enfin c'est le précurseur de tous les processeurs, c'est lui qui a cassé Enigma pour la guerre,
il nous a prouvé que grâce à un système aussi simple que celui-là, on pouvait exécuter n'importe quoi.
Donc si on n'a n'importe quel algorithme en tête, si la bande est suffisamment longue et qu'on n'a pas un problème de temps, on fait ce qu'on veut.
Donc on dit qu'une machine est Turing complete, si on peut faire ce qu'on veut.
Qu'on remplit ces quelques critères, pouvoir se déplacer, lire et écrire des instructions et en fait il suffit de ça.
Mais là, typiquement, j'ai une question, mais là tu peux faire des additions ou des soustractions,
ça veut dire que mon algorithme, il y a besoin de faire un pourcentage, tu ne peux pas le faire ?
Ça veut dire que je vais devoir le détourner.
On peut toujours se ramener à des additions ou des soustractions, en général on peut faire des décalages de bith,
on peut réussir à faire des opérations comme ça.
Et on peut aussi reconstruire un petit bout d'électronique qui fait un truc un peu plus...
Par exemple, on peut faire un circuit qui fait une multiplication.
Là, ce n'est pas le cas, on fait des additions successives, mais c'est faisable.
Et à quel point ça, j'imagine que c'est la version extrêmement simplifiée,
mais moi si je voulais refaire ça, je pense que ça prendrait...
Toi, ça t'a pris combien de temps d'arriver, alors que tu n'avais pas vraiment de connaissance en électronique, etc.
d'arriver à ce résultat-là ?
Alors, ce n'est pas tout à fait un vrai temps que je vous donnais parce que j'ai acheté tous les composants en novembre 2022
et je ne l'ai pas encore tout à fait fini.
Donc, on va dire que ça prend beaucoup de temps, mais en fait, je le continue pendant mes vacances
parce que je l'ai laissé chez mes parents, qu'il y a beaucoup de moments où au final,
j'y ai pas trop touché parce que j'avais d'autres choses à faire, parce que c'était dans mes cartons.
Mais je pense que quelqu'un qui s'y met vraiment en un mois peut-être deux,
le temps vraiment de comprendre, de se renseigner, etc., il peut réussir à faire ça.
Salut ! Si vous appréciez UnorScore, vous pouvez nous aider de ouf,
en mettant 5 étoiles sur Apple Podcast, en mettant une idée d'invité que vous aimeriez qu'on reçoive,
ça permet de faire remonter UnorScore.
C'est d'une fusée !
Franchement, c'est un bon projet.
Et alors justement, maintenant qu'on a un peu fait le tour du terrain
et qu'on a compris c'était quoi le concept d'une machine de Turing,
est-ce que tu peux nous expliquer c'est quoi ces histoires d'instruction justement ?
Donc là, parce qu'on a parlé des endroits qui font des additions, multiplication,
enfin, additions, subtractions, mais comment tu programmes tout ça ?
Tu expliques à ton processeur quelle suite d'instruction il va devoir faire.
T'as parlé de Dope Code, note-en.
C'est là où on revient aux OP codes.
En fait, vous avez peut-être déjà entendu parler des jeux d'instruction,
donc c'est ces fameux Intel X86, ces fameux ARM.
En fait, c'est tout de bêtement le langage du processeur.
Donc quand on code en assembleur dessus, on a des instructions finalement assez simples,
comme par exemple, MOV Eax4, donc on met la valeur 4 dans le registre Eax.
En l'occurrence, mon ami est registre A, B.
Donc là toi, ça l'ignola ce qu'elle ferait concrètement,
c'est qu'elle serait traduite par quelque chose que moi j'ai défini,
donc mon propre jeu d'instruction en MOV, ça vaut la valeur 1
et le 4, on le garde de côté, c'est une adresse.
Ensuite, c'est là où elle a parti des petites lettres bleues sur le côté.
On aurait une IEPROM qui va regarder, tiens, il m'a demandé 1.
Moi je sais ce que ça veut dire, ça veut dire arrêter tout le monde,
mettre le registre A en écoute et envoyer l'adresse 4 sur le bus,
demander à la RAM de récupérer cet adresse 4 et d'envoyer son contenu sur le bus
pour qu'au final, la valeur de la RAM soit envoyée sur le registre A.
En fait, c'est un aiguilleur en fait, il explique à...
C'est vrai que c'est tellement bas le niveau électrique qu'on n'a pas l'habitude d'y penser,
il demande à chaque composant de se déplacer un signal électrique.
Tout bêtement, il en arrête certains, il en lance certains, il coupe du courant,
il en met certains en pause pour que le courant va être d'un point A à un point B comme il faut.
Et ça, c'est une instruction qui est gérée par un nombre
qu'on a définie au parent et c'est ça l'OP-Code.
Donc en fait, quand mon programme se transforme en assemblure,
après, il est encore transformé en nombre, c'est ça ?
Oui, en fait, on n'est pas très loin, c'est que quand tu prends ton assemblure et que tu l'assembles avec un assemblure,
tu te retrouves avec de l'exadésimale, avec du binaire, enfin comment tu le lis,
et c'est ça, c'est directement le nombre qui donne à ton processeur
qu'il faut que tu fasses cette instruction électrique.
Et il sera interprété comme un signal électrique ?
Oui.
C'est assez vertigineux, je ne sais pas comment dire,
mais je s'imaginais que tout ce qu'on utilise, mon iPad, mon OS,
tout à la fin est traduit avec une machine aussi simple que ça.
Alors, par-dessus, évidemment, c'est ça qu'il faut expliquer, c'est que nos processeurs,
ils ont monté en complexité pour gagner du temps optimisé,
mais fondamentalement, à la base, ils ne font pas autre chose que ça.
Un chiffre de comparaison, par exemple, c'est que là, mon horloge,
si je la mets au maximum à pleine balle, je suis à 500 Hz.
Un processeur actuel, c'est 3,6 GHz. Ça fait 7,2 millions d'euros, il faut plus.
Et en 7 millions, avec c'est moins de 1000 fois plus petit que ça en plus.
Oui, en plus, c'est...
Et c'est pas du 8 bits, c'est du 64, il n'y a pas qu'un seul registre, et ils sont beaucoup plus plein.
On arrive à graver en 7 nanomètres, je ne suis pas encore en...
Il reste encore du boulot, c'est ça que tu es en train de dire.
Pour atteindre nos processeurs modernes.
Je ne suis pas une fronderie à moi tout seul.
Donc là, on a donné la première différence avec un processeur normal,
c'est la vitesse de l'horloge. Est-ce qu'il y a d'autres différences ?
Oui, carrément, la taille du bus, tout bêtement, et du fait qu'on n'est pas qu'un seul.
Donc c'est ça, quand vous vous dites processeur 64 bits, processeur 32 bits,
en fait, c'est la taille du bus et la taille des registres qui stockent les informations.
Là, je suis en 8 bits, donc 8 valeurs, donc ça va de 0 à 255,
alors que vous, ça va de 0 à... J'ai oublié une valeur 64 bits, mais c'est un an mortellement énorme.
Et parce que moi, je me souviens de l'époque déjà, où on est passé du 32 à 64 bits,
et c'était un peu un bordel parce que t'avais tes logiciels,
t'étais compatible ou pas compatible, machin.
En fait, c'est quoi, très concrètement, le bénéfice d'augmenter ce bus ?
Là, toi par exemple, si on passait de 8 à 16,
ce serait quoi l'utilité ?
Bah si dans ta fiche de paye, tu touches plus de 255 euros, je peux pas te le traiter.
Ok, pas de réponse.
C'est un problème.
Je me dis que t'as l'air du frérot verflot sur ce problème.
Je te l'ai dit.
Oui, c'est tout simple.
Mais du coup, ça ne veut pas dire que tu ne peux pas le traiter, c'est que tu dois trouver des astuces.
Mais du coup, ça prend beaucoup plus de temps, on ne peut pas mettre des programmes aussi gros.
C'est beaucoup plus compliqué pour rien,
il suffirait d'augmenter comme on a fait, on devait passer de 32 à 64.
Est-ce que d'une certaine manière, c'est un peu lié à ça, les histoires du bug de...
Je sais pas si c'est pas le bug dans la domine, mais je me souviens qu'il y a des histoires de date
qui pouvaient être plus grosses que 32 bits, je crois.
Et justement, je sais peut-être que le chat va me fact checker, ça pourrait être intéressant.
Mais justement, ce passage de 32 à 64 a permis d'avoir un peu plus de marge
en compte les secondes, ou je sais plus quoi, depuis 1970 là,
et c'est juste un nombre qui devient de plus en plus gros comme ça,
et à un moment, ça va forcément faire un overflow.
Et si ça fait un overflow, ça retourne à zéro, donc ça sera embêtant.
Exact, parce que oui, du coup, c'est bon, le chat, c'est ça l'avantage, ma carie.
Et effectivement, en informatique, on compte les années depuis 1970.
Je sais pas si t'as pas donné le chat, mais bon, c'est pas grand.
Et du coup, il y aurait eu un bug en 2038, puisque 32 bits permettait de...
C'est en millisecondes, oui c'est ça.
Depuis sans 31, ça fait 68 ans, et donc il y aurait eu un bug en 2038,
si jamais on était restés potentiellement sur les architectures actuelles.
Voilà, mais ça vous donne un exemple pour des gens qui ne baignent pas
dans l'informatique d'un truc très réel, très conclu,
qui a à voir avec le nombre de fils.
Oui, oui, c'est bon.
Parce que là, si je continue et que je monte au-dessus de 255, je retourne à zéro.
C'est terminé.
Et qu'est-ce qui...
Enfin, juste pour ça, avoir des ordres de grandeur,
ça coûte combien de construire un truc comme ça ?
Alors, là, sachant que c'est beaucoup de pièces individuelles
et que l'électronique ça s'achète souvent en lot,
j'ai dû acheter ça sur des sites américains, c'est Jameko.
Je crois que j'ai payé 290 euros plus beaucoup de frais de douane,
faites attention à ça si vous en achetez un.
Je l'avais pas prévu à la base.
Quand tu payes ce tappel en disant, faut payer 90 euros,
tu es un peu moins content.
Mais globalement, en total, ça fait...
Ouais, il y a 300, 300 euros.
Oui, pour un hobby.
J'allais dire, offrez ça à vos enfants, mais bon, il faut quand même qu'ils s'accrochent un petit peu.
C'est pas évident.
Franchement, il devrait y avoir un kit de ça, je trouve.
Il y en a.
Le type qu'il a fabriqué, Benheter, vend des kits sur son site.
En plus, beaucoup de travail se foutoufait, c'est-à-dire que les fils sont prédécoupés.
Pour certains, je crois.
Parce que là, c'est beaucoup, beaucoup, beaucoup d'heures de découpe de fils,
de mesure et de pliage de fils.
Mais je suis sûr que si tous les élèves de Col d'Argyre ou de Renna Faub faisaient ça,
on prendrait un niveau à l'échelle de...
En frère du C, pas du Javar.
La dernière fois que j'ai vu un projet comme ça, de quelqu'un qui reconstruisait un processeur entier,
c'était sur Minecraft.
C'est un mec qui le reconstruisait avec de la Redstone et compagnie.
Et il faisait tourner Pong, après, depuis Minecraft, avec que des blocs et de la Redstone et tout ça.
Et il reconstruisait exactement ça, ça marche de la même manière, en fait.
Dès qu'on peut avoir une porte logique, on peut faire un processeur.
Donc il y en a qui ont fait des processeurs sur Minecraft, sur Terraria,
et il y en a qui ont fait tourner Terraria dans Terraria.
Ils ont même réussi à faire un ordinateur qui joue au jeu de la vie, dans le jeu de la vie.
C'est évo qui a sorti une vidéo là-dessus, il n'y a pas longtemps.
C'est évo qui a sorti une vidéo.
Et justement, pour comprendre exactement cette histoire, c'est quoi une porte logique, concrètement ?
C'est vraiment très simple.
En fait, on part par exemple d'un « et ».
Donc on a deux fils électriques qui arrivent, tous les deux avec une certaine tension et une certaine intensité,
et un fil qui sort.
Si les deux fils donnent du courant, le fil qui sort donne du courant.
Et sinon, c'est pas le cas.
Et en fait, ça peut être faible, n'importe quoi, on peut faire des porte logiques avec de l'eau.
Donc c'est de bas que d'eau, et si on a deux sources d'eau en même temps, ça en laisse passer, sinon ça bloque.
Et à partir de ça, en fait, on peut partir d'une porte « non »,
et on peut construire toutes les autres.
Et à partir de toutes les autres, on peut construire un ordinateur.
C'est le principe de plein de jeux, il y a un jeu sur Steam qui s'appelle « Turing Complete »
où on construit une porte nande, et après on fait un processeur.
Complait.
C'est trop bien.
Donc en fait, t'as juste à avoir un principe qui...
Attends, le « non » c'est...
Soit l'autre ça.
Non, et donc c'est...
Donc c'est tout le temps allumé, sauf quand les deux sont allumés.
En même temps.
Oui.
Et en fait, à partir de cette brique-là, tu as la possibilité de construire les autres
en les cumulant, en les rebotant d'une certaine manière,
et derrière de faire un programme, un système « Turing Complete »
et donc de faire tourner d'importe quel programme.
Oui.
Et donc de faire tourner terrarié dans le terrain.
Ça c'est beau ça.
Et ça, effectivement, il faut aller voir les images, c'est complètement à l'infini.
C'est très long.
Est-ce que, toi, c'est un truc qui t'as déjà tenté, parce que là, théoriquement,
tu refais juste ça, entre guillemets, dans le monde physique.
Oui.
Ça, ça...
Alors évidemment, ça m'a tenté, parce que je trouve ça beau.
Mais je suis curieux, mais pas très patient.
Faire terrarié dans le terrain, c'est des centaines de milliers d'heures, je pense.
C'est vraiment des trucs de fou où tu galères, parce que tu n'as pas vraiment la place.
Les portes logiques dans Minecraft, dès que tu en fais une, ça marche.
Dès que tu en mets une deuxième à côté, tu as la restone qui commence à interagir,
et c'est bon, c'est cassé.
Donc c'est vraiment très compliqué à faire.
Mais évidemment, ça m'a toujours fasciné.
Ah c'est fascinant.
C'est toujours ultra-fascinant, bien sûr.
Mais je l'avais jamais vu comme ça, en mode électronique, pur et dur.
Et c'est presque le truc qui parle le plus avec des explications en plus.
C'est la première fois que je le comprends.
Alors que j'en ai bouffé des vidéos comme ça, justement, de ce qu'on voit exactement à l'écran actuellement.
J'en ai maté plein, parce que ça me fascine à chaque fois.
Mais c'est aujourd'hui que j'ai compris le plus, grâce à ces explications,
alors que pourtant, ces vidéos sont bien faites.
Donc féistation de transmettre le savoir, d'une manière aussi claire.
Tu as Minecraft dans Minecraft, ce que tu veux.
Je pense qu'il est temps.
Il est temps de demander une démonstration.
Maintenant qu'on a compris comment ça marchait.
Ouais, il faudrait une caméra pour faire une vidéo dessus.
On va... Est-ce qu'on peut faire une caméra ?
Je pense qu'on va faire la démonstration.
Et que malheureusement, les gens en live n'auront peut-être...
On va leur décrire ce qui se passe.
Et pendant ce temps-là, nous, on va filmer.
Est-ce que tu veux faire le caméra maintenant ?
Ouais, carave, je te file ça.
Et ce sera pour le...
Ce sera pour le...
Pour la VOD sur Youtube.
Donc là, tu viens de le connecter.
Déjà, il y a des jeux de Lilette partout et ça, ça me fait plaisir.
Est-ce que... Qu'est-ce qu'on va...
Qu'est-ce qu'on va lancer comme programme ?
On peut faire un truc très simple, c'est-à-dire de le mettre en train de compter,
par exemple, de 2 en 2, et afficher la sortie.
Donc ça va faire 2, 4, 8, etc.
Pas mal.
Première étape dans la vie, c'est d'apprendre à compter.
Ouais.
Est-ce que tu peux nous montrer et puis décrire peut-être...
Alors, pour commencer, tous les fils orange sont des risettes.
Donc dès qu'on l'active, ça remet toi à zéro.
Et les fils jaunes sont donc les registres qui sont normalement gerés par les OP-Codes.
C'est tout ce qui va être toi, tu t'actives, donc tu envoies une valeur, toi, tu en reçois une,
toi, tu te mets en pause, etc.
Donc pour pouvoir envoyer, pour pouvoir se mettre à compter,
il faut qu'on libère le bus, donc c'est déjà le cas.
Et on peut se mettre ici, je vais peut-être tourner un peu le micro.
Et tu peux le déplacer.
Ici, par exemple, sur notre problème canutaire, on pourrait, par exemple, se mettre à 2.
Donc pour ça, je vais appuyer sur la clock tout bêtement pour faire une instruction de plus.
Et donc si on se met à 2, nous voilà à 2,
on peut envoyer cette valeur avec ce petit fil là sur notre bus.
Et donc là, on voit qu'on a 2 sur le bus.
Donc là, tu fais avancer le temps manuellement.
C'est à dire qu'à le contrairement au processeur qui tournerait tout d'un coup,
là, c'est toi à chaque fois qui fais avancer chaque étape.
C'est l'avantage, c'est que j'ai un petit interrupteur ici qui permet de mettre en soin de mode automatique
ou la clock des fils.
Soit j'appuie sur un bouton et ça me fait une instruction.
Ok, donc là, pour l'instant, on a pris le chiffre 2 et on l'a déplacé sur l'autoroute.
Exactement, c'est parfaitement ça.
Ensuite, ce qu'on peut faire, c'est prendre le registre b et charger cette valeur à l'intérieur.
Donc c'est ce petit fil là.
On le met, on met un petit coup d'horloge, parce que c'est l'horloge qui commente tout,
et on a 2 à l'intérieur du registre b.
Ok.
Ensuite, on peut arrêter de charger et on peut arrêter d'envoyer,
pour éviter des emmerdes.
Et là, on libère notre bus.
Maintenant, vu que le registre, enfin l'additionneur qui est ici, il fait a plus b et il envoie sur le bus.
On peut très bien lui dire d'envoyer ce qui calcule sur notre bus
et notre registre a, qu'on va remettre à 0, on peut très bien lui dire de charger cette donnée.
Donc maintenant, on fait 2 plus 0, ça fait 2,
mais ce 2, on va le mettre dans a qui va se additionner à 2, ce qui va faire 4, etc.
Donc si j'appuie sur ma clock, on a mis 4 en sortie, ensuite 6, 8, 10, et 6 l'activer complètement.
C'est trop stylé.
Là, on automatise.
Et ici, on contrôle la vitesse.
Oh, c'est tellement stylé, c'est trop stylé.
Et il y a un petit détail assez marrant.
C'est juste une addition de, enfin, une recommandation par 2, mais c'est trop stylé à voir.
Il y a un petit détail un peu marrant, c'est ce fil là, qui permet de contrôler l'affichage.
Donc par exemple de passer d'une version décimale à une version exadécimale,
ou de passer d'un entier signé, donc de 0 à 255, un entier non signé,
un entier signé donc de moins 128 à plus 127.
Donc là, on a 222.
Et si je le mets en version signé, donc juste à inverser ce petit fil là,
on a à moins 34, et ça permet de gérer les normes négatives par un complément à 2.
Très stylé.
Donc là, attends, si je récapitule ce qui vient de se produire,
t'avais en entrée, t'as envoyé 2 via le bus, c'est arrivé sur un registre.
Ton additionneur, son job, c'est de faire 0 parce que le registre part des fois, il y a 0.
Exactement.
Donc ça fait 0 plus 2.
Il envoie son résultat sur l'autoroute à nouveau,
mais tu plugs ton registre de manière à réceptionner ce résultat.
Donc l'autoroute, elle repart dans A, et ça continue à l'infini.
Et ça se met à compter.
C'est génial.
C'est génial.
Et si on veut l'arrêter, il suffit juste de...
T'arrêter un petit fil et puis ça arrête.
Je ne réalisais pas quand même que tu avais un peu de travail manuel à déplacer des...
Justement, c'est parce qu'il n'est pas fini.
Ah.
Mais ça permet quand même de voir du coup toutes les étapes manuelles,
et c'est là où intervient les OP-COD, c'est que tous les petits fil jaunes,
ou ceux à moi, de contrôler, c'est lui qui le gère.
Et donc, par exemple, l'instruction met 2 dans A,
et ben il sait qu'il faut qu'il tire ce petit fil jaune là,
qu'il tire celui-là, qu'il arrête les autres,
et c'est cette partie qui est automatique et qui n'est pas construite.
Ah, donc là, pour l'instant, c'est comme si tu faisais les instructions à la main,
mais qu'à terme, tu aurais...
Il y aura un petit script qui le gère comme dans un procession normal, en fait.
Donc là, c'est pour l'instant tuer l'algorithme,
mais bientôt, il y aura un lecteur d'algorithmes qui pourra tout orchestrer.
C'est ça, concrètement, c'est ça.
C'est trop bien.
Franchement, c'est trop bien.
Mais surtout, c'est...
Je vois...
Je vois qu'il a des grands bras.
Merci beaucoup pour ce cadrage.
Ça va ?
Bon, bon.
C'est dingue, non ?
C'est complètement fascinant, mais je suis une personne complètement monotache.
Et à partir du moment où j'étais focus sur ma mission de prendre un bon plan de ce machin,
et que j'ai entendu la vitesse à laquelle les instructions et toutes les explications partaient,
je fais, ouais, mon cerveau s'est mis en mode, le singe clave des trucs,
et il n'y avait plus personne.
Tu pourras revoir, Aurélien Motti.
Mais franchement, tu verras, l'explication est limpide et...
Ça avait l'air.
Et tu vas comprendre comment marche un additionneur.
Ça avait l'air, c'était très beau et tout, mais voilà, mon cerveau, il a shot off.
Je reviendrai, je veux comprendre.
Tu verras là, je veux comprendre.
En complet.
C'est trop cool.
Est-ce que tu as d'autres programmes que tu as déjà testés qui fonctionnent ?
J'avais fait un Fibonacci, mais c'est très très long à faire parce que c'est à la main,
mais ça se fait.
Et tu comptes le finir quand même ?
Bien sûr, ouais, ouais.
Là, j'ai pas eu le temps parce que les cours repris, parce que je me disais que si je finissais
et que je n'avais pas le temps de finir, il y aurait un truc à moitié fait, ça aurait été bizarre.
Mais là, là, dans le mois qu'arrives, c'est fini sûr et certain.
Trop trop stylé.
Vous venez sur le Discord, je vous ferai des updates.
C'est ça, bon.
Est-ce que, une fois que tu auras fini ce processeur, t'as d'autres idées de trucs à faire ?
D'autres idées de trucs à faire.
Des tapes d'après, ce serait quoi ? Faire un GPU ?
Je sais pas.
Le type qui fait ce processeur a fait un GPU.
Pas sur celui-là, il utilise un processeur qui existe déjà, c'est le 65.02, donc c'est
un petit processeur qu'on trouve dans la Nintendo NES et il a fabriqué un GPU dessus.
D'accord.
Ce sera peut-être une des étapes suivantes.
Peut-être l'étape d'après.
Mais la prochaine vraiment, je pense que sera augmenté la RAM parce que là, j'ai 16 octets,
ce qui est très peu pour stocker un algorithme un peu compliqué.
Si je veux commencer à me mettre à jouer à Pong dessus comme certains ont fait, il
va falloir que je monte un peu la RAM.
Donc là, c'est la prochaine étape.
Trop stylé.
Il faudrait combien tu penses ?
J'ai une puce de 32 kilos octets chez moi.
J'aimerais bien l'utiliser.
Trop stylé.
Pong, si en plus t'as pas encore fait le truc des instructions et tu dois jouer à Pong
en décablant tes trucs et en l'aéro-cabland, ça va être une sacrée partie de Pong, ça
va être...
Et là, ce qui est marrant, si vous observez le programme tourné, c'est qu'on constate
effectivement qu'une fois qu'il a fini de faire ses additions, il repart à zéro.
Et la prochaine fois que vous avez certains bugs, vous saurez que c'est à cause de ce
problème.
C'est qu'on n'a pas du stock à faire vos overflow.
Très très intéressant.
Est-ce qu'il peut expliquer comment les transistors font des portes logiques ?
C'est à peu près le même principe.
Un transistor, ça peut être vu comme un interrupteur contrôlé électriquement.
En les mettant dans un certain ordre, dans une certaine disposition, on peut faire en
sorte de fabriquer une porte logique.
Parce que c'est des interrupteurs électriques.
Donc quand on met un, quand on actionne un autre, tu les mets en série, en parallèle,
et tu arrives à construire des portes logiques.
Effectivement, c'est un bon point parce que nos processeurs sont entièrement faits avec
des transistors.
Autre proposition, quelqu'un qui a 64 giga-dramas de prêtesse, tu as envie.
Je suis pas sûr que tu vas pouvoir les brancher, tel quel, à mon avis.
Mais en tout cas, la proposition est là.
Acceptable.
Trop cool, franchement.
Merci beaucoup.
Est-ce qu'il y a des trucs qu'on a oublié de couvrir sur ce projet, ou des trucs marrants
qui, toi, t'en va être au nez en faisant le projet ?
Parce que j'imagine, c'est quand même l'occasion aussi de découvrir le fonctionnement
d'un ordi.
Est-ce que tu as eu des surprises de « ah ouais, c'est comme ça que ça fonctionne ? »
Ah bah, j'ai pas arrêté d'être épaté.
C'est super intéressant.
Après, c'est vrai que j'avais joué aussi à des jeux de processeurs, donc Touring Complete,
c'est le jeu sur ce type dont je parlais, qui m'ont déjà impris un peu les bases.
Mais bien sûr, par contre, j'ai surtout eu des mecs à l'air, en fait, avec ce processeur.
Des filles qui sont mal branchées, bon, ça c'est la base.
Mais il y a des trucs un peu plus sournois, comme des résistances pas assez élevées,
qui laissent pas assez passer de coups, qui prendent trop de courant et qui bloquent tout le bus.
Ça, par exemple, c'est des erreurs bien relous.
Plus dur à identifier.
Et sinon, pas de trucs marquants qui t'ont fait marrer,
ou qui t'ont étonné en construisant ce truc.
Des trucs marquants ?
Non, mais déjà, je pense qu'il y a un moment où tu lis le binaire, non ?
Ça, ça paraît assez évident pour ceux qui font peut-être du bas niveau, etc.
Mais est-ce que là, tu vois toutes ces diodes clignotées, tu sais exactement à quel nombre...
Il faut un petit instant de réflexion parce qu'en calcul mental, je suis vraiment une bille.
Mais oui, en soi, c'est vraiment des additions et des puissances de deux.
Donc, c'est pas ce qu'elle est plus dure.
Et avoir passé des heures à trifler ?
Du moins, ça me fait plus peur.
Avant, je me disais, oh, les années si mal, ça a l'air de faire peur, oh, le binaire, c'est névoureux.
Pas du tout, c'est vraiment très simple.
C'est ça.
Et au-delà de ce genre de trucs, est-ce que, si tu devais faire un peu la conclusion,
qu'est-ce que tu as appris, qu'est-ce que ça t'a apporté, en fait, de faire ça ?
Au-delà du pur savoir technique ?
Ça m'a apporté, surtout une compréhension de comment fonctionnent les choses.
Ça m'a apporté un peu de minutie aussi avec les câbles parce que franchement, c'est de galère.
Mais ça m'a surtout donné envie de continuer à faire des codes un peu bas niveau, peut-être pas autant,
peut-être du C, c'est bien, mais ça donne envie de comprendre ce qu'on fait
parce que du coup, on peut réussir à faire des optimisations de fou.
C'est vraiment j'ai pas le temps.
C'est évident que ce genre de connaissance se traduit après,
même si tu vas pas construire des processeurs toute la vie,
mais pour les gens qui commencent à apprendre la programmation,
avoir ce niveau de compréhension, c'est évident que ça vous sera utile.
Si vous êtes un designer de processeur et que vous cherchez un alternant, franchement...
Je sais pas non.
Ça, ça t'ouvre déjà des portes de ouf.
Ce projet-là, les gens, ils vont te...
Tu vas avoir des propositions d'alternance.
Dans les commentaires, ne t'en fais pas.
On va te trouver une alternance.
Merci encore de ta disponibilité pour la réactivité
puisque pour les coulisses, ça fait quelques jours
parce que tu as publié justement ton travail sur le Discord
et on a tout de suite trouvé ça génial.
Donc n'hésitez pas à venir sur le Discord et nous partager vos créations.
Et puis on arrive doucement à la fin de cette émission.
Et c'était vraiment intéressant.
Quel banger.
Trois trucs, il n'y avait rien à voir.
On a changé complètement d'univers.
On s'invitait aussi, c'est innovant, c'est bien.
Exactement, c'était assez nouveau.
On vous souhaite une très, très bonne soirée.
N'hésitez pas à follow cette chaîne Twitch.
On revient exceptionnellement.
Il y a un changement de rythme.
Ouvrez bien vos oreilles.
On revient mercredi prochain.
Et oui.
On revient mercredi prochain à 19h.
Trop bien.
Voilà, parce que pourquoi pas.
Et sur ce, je vous souhaite une excellente soirée.
Merci à tous mes merveilleux invités et chronicure de ce soir.
On vous retrouve à Benjamin Code sur Twitter et sur YouTube
pour des nouvelles aventures.
Si vous voulez suivre la création du SASS de Benjamin, c'est assez marrant.
Tout est documenté sur YouTube.
Et où est-ce qu'on peut te retrouver ?
Moi sur le Discord surtout.
Et sinon, j'ai un Twitter mais il est assez mort.
Va venir sur le Discord, voilà.
Et venez parler.
On est bien.
Et sur ce, très bonne soirée.
Et à bientôt.
Bye bye.
Ciao ciao.
Le SASS de Benjamin Code est un des plus grands outils
pour les gens qui ont le plus de clics.
Et pour les gens qui ont le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,
vous avez le plus de clics, vous avez le plus de clics,