Les bases des puces de la science populaire

Si vous suivez de près l'évolution du secteur national des puces électroniques, vous devez sûrement vous poser beaucoup de questions. À quel point est-il difficile de mettre au point une technologie capable de donner du fil à retordre aux grandes puissances en matière de science et de technologie ?

En réalité, la fabrication des puces est pour le moins très complexe. Prenons l'exemple d'une machine de lithographie de 5 nm : elle est composée de plus de 100 000 pièces. Si on les comptait une par une, il se pourrait bien que nous ne soyons pas en mesure d'en produire la plupart à l'heure actuelle.

Cependant, cette puce serait simple. En principe, à condition de disposer d’un certain bagage de connaissances, on peut la comprendre. À ce stade, il est vrai que “ la technologie ne connaît pas de frontières ”. Du moins jusqu’à présent, les ouvrages, articles et autres sources d’information pertinents sont accessibles au public. La principale différence réside dans l’expérience industrielle et le savoir-faire technique.

Aujourd'hui, je vais vous montrer à quel point cette puce est simple. L'objectif de cet article est de vulgariser certaines notions mathématiques de base, puis de concevoir la puce la plus simple qui soit !

Notions de base sur les puces électroniques

Les puces, qui constituent les produits semi-conducteurs les plus importants, remplissent des fonctions spécifiques. Par exemple, le processeur d'un ordinateur assure de nombreuses fonctions telles que le calcul, l'affichage, la lecture et l'écriture des données en mémoire et sur le disque dur, ainsi que la prise en charge des entrées provenant de la souris et du clavier.

Vous êtes-vous déjà demandé en quoi consistait le principe de base d'une puce ?

Certaines personnes penseront peut-être immédiatement au silicium. En tant que matériau semi-conducteur, le silicium est à la base des puces électroniques. Cependant, un verre à eau contient également du silicium, qui n’a aucune valeur ; le silicium n’est donc pas l’élément fondamental. Pourquoi les puces utilisent-elles du silicium ? C’est parce que les circuits intégrés sont fabriqués sur du silicium ! La particularité du silicium est qu’il permet d’intégrer un grand nombre de composants électroniques sur une petite surface.

Donc, le circuit constitue la base de la puce ? Il existe de nombreux types de circuits. Les ampoules et les interrupteurs que l'on trouve chez soi forment également un circuit, qui n'a rien à voir avec la puce. La puce utilise des circuits logiques.

Réessayez : la base de la puce, c'est un circuit logique ? Eh bien, on n'est pas loin, mais ce n'est pas encore tout à fait ça. Les circuits logiques effectuent des opérations logiques, et ces opérations sont également appelées opérations d'algèbre booléenne.

Par conséquent, les mathématiques constituent le fondement même des puces électroniques ! Plus précisément, l'algèbre de Boole !

Cette conclusion n'a rien de surprenant. Tout le monde sait que la physique repose sur les mathématiques. Même le grand physicien Newton compte parmi les trois plus grands mathématiciens au monde, aux côtés d'Archimède et de Gauss.

Algèbre booléenne

Si vous maîtrisez les principes fondamentaux de l'algèbre booléenne, vous saurez comment fonctionne la machine et vous saurez également comment concevoir la puce.

Je vais ensuite présenter l'algèbre binaire et l'algèbre booléenne, et m'efforcer de rendre les notions suivantes compréhensibles pour les enfants.

Pourquoi même les enfants peuvent-ils le comprendre ? Parce que le mathématicien Boole lui-même n’est jamais allé à l’université : autodidacte, il a ouvert une école primaire à l’âge de 19 ans et l’a dirigée pendant plus de 10 ans. Il considère que son métier principal est celui d’enseignant, et son souhait est d’aider les enfants à trouver les moyens de comprendre et de maîtriser des lois complexes.

L'algèbre booléenne trouve son origine dans l'espoir de pouvoir utiliser les mathématiques pour exprimer la pensée logique des individus.

Parmi celles-ci, on trouve plusieurs opérations booléennes importantes liées à l'informatique :

1. Opération « ET »

Par exemple : j'aime manger des kebabs

Disons que A représente le barbecue et que B représente les brochettes de mouton.

L'expression ci-dessus devient alors :

A et B sont tous deux vrais, et le résultat de l'opération est vrai. Par exemple, pour les brochettes de bœuf grillées, A = 1, B = 0, A et B = 0. Je n'aime donc pas les yakitori.

2. Opération « OU »

Par exemple : j'aime manger du barbecue ou un hot pot.

Disons que A représente le barbecue et B le pot-au-feu.

L'expression ci-dessus devient alors :

Que ce soit un barbecue ou un fondue chinoise, je mange les deux, mais bien sûr, c'est encore mieux d'avoir les deux !

3. Non-fonctionnement

Par exemple : je n'aime pas la nourriture épicée.

Disons que « A » représente « épicé ».

L'expression ci-dessus devient alors :

4. Opération XOR

Par exemple : ce que je préfère, c'est manger du barbecue et de la glace, mais si je les mange ensemble, ça me donne la diarrhée.

Disons que A représente le barbecue et que B représente la glace.

L'expression ci-dessus devient alors :

Cette opération peut sembler un peu difficile à comprendre. Qu'est-ce que cela signifie ? Cela signifie qu'A et B ne peuvent pas être identiques. Ils ne peuvent certainement pas s'en passer (barbecue et glace), mais ils ne peuvent pas les supporter ensemble !

Outre les quatre opérations booléennes mentionnées ci-dessus, il existe également les opérations AND, NOT, NOR et XOR. L'opération XOR montre que toutes les opérations peuvent être générées en combinant les opérations AND, OR et NOT.

Opérations binaires

Parlons maintenant de l'arithmétique binaire.

Le système binaire utilise les chiffres 0 et 1 pour représenter tous les nombres. Chaque bit ne peut prendre que la valeur 0 ou 1, et lorsqu'il atteint la valeur 2, il doit effectuer un report.

Par exemple, le chiffre 2 du système décimal doit faire l'objet d'un report lorsqu'il est exprimé en binaire et devient ainsi le nombre à deux chiffres 10, tandis que le chiffre 3 du système décimal correspond à 11.

Le système binaire a été inventé par le mathématicien allemand Leibniz il y a plus de 300 ans. À cette époque, les ordinateurs n'existaient pas encore. Pourquoi Leibniz a-t-il inventé un système binaire qui était inutile à l'époque ? À vrai dire, personne ne le sait.

Puisqu'on parle de binaire, je me dois d'évoquer les ragots qui circulent dans notre pays. Je ne parle pas des ragots du monde du spectacle dont tout le monde parle, mais des vrais ragots.

Le Bagua souligne que deux rituels donnent naissance à quatre images, et que ces quatre images forment le Bagua :

En effet, beaucoup de gens pensent que les rumeurs sont à l'origine du système binaire. Le « Liangyi » correspond au yin et au yang, c'est-à-dire au 0 et au 1 ; le « Sixiang » correspond à des nombres binaires à deux chiffres ; le « Bagua » correspond à des nombres binaires à trois chiffres ; et les 64 hexagrammes de Fuxi correspondent à des nombres binaires à six chiffres :

Il semble que la vérité soit bel et bien la même. Pour être honnête, je ne sais pas quelles rumeurs nos ancêtres ont inventées à partir de cela à l'époque.

Cependant, quelqu'un a déniché des lettres échangées entre Leibniz et un missionnaire vivant à Pékin à cette époque pour tenter de prouver que l'invention du système binaire par Leibniz avait été inspirée par des rumeurs chinoises, et beaucoup de gens ont cru à cette affirmation.

Voici comment les choses se sont réellement passées : Leibniz a écrit au missionnaire de l’époque, dans l’espoir que celui-ci présente le système binaire à l’empereur Kangxi. Le missionnaire, voyant qu’il ne s’agissait que de rumeurs chinoises, a répondu à Leibniz. Une histoire de rumeurs, donc. Leibniz a ensuite rédigé un article traitant des applications pratiques du système binaire en Chine.

Que Leibniz ait été inspiré par des ragots ou non, tout cela n'est que spéculation. Et même s'il l'avait été, qu'importe ? Lorsque Leibniz a inventé le système binaire, notre empereur Kangxi combattait Wu Sangui, et notre civilisation moderne n'était pas encore civilisée.

Donc, en ce qui concerne la question du Bagua et du binaire, considérons simplement qu’il s’agit du Bagua, et continuons à parler des calculs binaires.

Supposons qu'il y ait deux nombres binaires d'un bit à additionner ; il existe alors quatre possibilités :

Les trois premiers cas ne nécessitent pas de report. Dans le dernier cas, S est un nombre binaire à deux chiffres ; un report est donc nécessaire. Nous définissons un indicateur de report distinct, C.

Avez-vous remarqué que l'addition binaire correspond à l'opération booléenne présentée plus haut :

La somme d'une addition correspond à l'opération XOR de deux termes.

Le drapeau de report pour l'addition correspond à l'opération « ET » entre les deux opérandes.

Nous utilisons des opérateurs booléens pour créer un diagramme logique, comme celui-ci :

Ce qui précède est un demi-additionneur représenté par des opérateurs booléens, qui peut également être représenté comme suit :

Pourquoi l'appelle-t-on « demi-additionneur » ? En effet, lors du calcul de AB, il ne tient pas compte d'un éventuel report provenant du bit précédent ; ce demi-additionneur ne peut donc calculer que l'addition du dernier bit du nombre binaire.

Si A et B ne sont pas des nombres au niveau du dernier chiffre, il faut alors vérifier s'il y a un report dans le résultat du calcul du chiffre précédent (Cin est l'indicateur de report du chiffre précédent, et Cout correspond à la situation de report du chiffre précédent après le calcul du chiffre actuel). Il y aura 8 cas de figure :

Ce processus peut être mis en œuvre à l'aide de deux demi-additionneurs et d'une opération OU :

Voici l'additionneur complet :

Comme vous pouvez le constater, nous avons mis en œuvre l'addition de nombres binaires à un chiffre en utilisant uniquement les quatre opérateurs de l'algèbre booléenne.

En réalité, nous n'avons utilisé que trois opérateurs, car l'opération XOR peut être représentée comme une combinaison d'opérations AND, OR et NOT. Bien sûr, cela s'avère trop fastidieux.

Il en va de même pour l'additionneur complet. Si l'on n'a pas peur des difficultés, on peut dessiner avec soin une combinaison d'opérations XOR, AND et OR.

Additionneur binaire à huit bits

Vous voyez, les mathématiques appliquées à l'informatique ne sont pas difficiles non plus.

Le plus incroyable, c'est ce qui va suivre. Nous devons mettre à profit les connaissances en algèbre booléenne que nous venons d'acquérir pour concevoir la puce la plus simple qui soit.

Il s'agit d'un additionneur capable d'additionner des nombres binaires de huit bits.

Il reste toutefois quelques défis à relever. Si cet additionneur est réalisé, on pourra le considérer comme la puce la plus simple qui soit. C'est bel et bien une puce !

Cet additionneur reçoit en entrée deux nombres binaires de huit bits :

Chacun d'entre eux est représenté par A, et les huit bits sont A[0],…,A[7] ;

L'autre est représenté par B, et les huit bits sont B[0],…,B[7] ;

Il existe également une entrée appelée « drapeau de report » (Cin). Si cet additionneur est utilisé seul, cette entrée est toujours mise à 0.

La sortie est S, et les huit bits sont S[0],…,S[7] ;

L'indicateur de report de sortie est Cout.

Voyons à quoi ressemble cet additionneur :

Il s'agit d'un additionneur binaire à huit bits composé de 8 additionneurs complets. N'est-ce pas magique ?

Nous n'avons rien ajouté d'autre, juste l'additionneur complet que nous venons d'étudier. Si cela vous intéresse, vous pouvez décomposer chaque additionneur complet en deux demi-additionneurs et un opérateur OU.

Par ailleurs, vous pouvez développer chaque demi-additionneur à l'aide des opérateurs XOR et AND. Je ne sais pas quels lecteurs cela intéresse. Quoi qu'il en soit, je vais m'effondrer si je dois le dessiner à la main.

Tout cela est réalisé par un logiciel de CAO électronique lors de la conception des puces.

Suivi

À ce stade, nous avons conçu de manière logique une puce d'additionneur binaire à huit bits dotée de la fonction la plus simple.

Pourquoi parles-tu de « logique » ? Parce que, jusqu'à présent, nous n'avons pas fait appel à des connaissances en circuits. Tout repose uniquement sur l'algèbre booléenne ; la puce est donc logiquement possible, mais elle ne peut pas encore être fabriquée.

Alors, comment fabriquer une puce qui fonctionne vraiment ?

Tout d'abord, il faut disposer de composants électroniques correspondant aux opérateurs booléens ci-dessus pour obtenir la même fonction. Il faut ensuite relier ces composants conformément au schéma. On obtient ainsi un circuit réel, appelé « circuit de porte ». Le composant qui met en œuvre l'opération booléenne ci-dessus est appelé « composant de porte ».

En fin de compte, nous devons fabriquer ce type de composant de grille sur une plaquette de silicium, afin de réaliser un circuit de grille, c'est-à-dire un circuit intégré, sur cette plaquette.

Enfin, le circuit intégré est découpé, les broches d'entrée et de sortie sont réalisées, puis l'ensemble est encapsulé : on obtient ainsi une puce complète !

↑