Ce que font les ingénieurs d'Apple et d'Intel au bureau: un cours en ligne axé sur la carrière en microélectronique moderne pour les étudiants

Récemment, un cours en ligne gratuit en trois parties intitulé «Comment fonctionnent les créateurs de nanopuces intelligentes» a récemment été publié ( 1 , 2 , 3 ). Il est destiné à l'orientation professionnelle des écoliers et se caractérise par une spécificité maximale: voici à quoi ressemble la répartition du travail dans l'équipe de conception de micropuces, ici le développement est construit sur de tels concepts de conception au niveau du transfert de registre, et ces algorithmes sont utilisés pour déterminer combien de mégahertz le processeur conçu fonctionnera pour un ordinateur ou électronique automobile.

En plus de l'orientation professionnelle théorique, le cours peut être utilisé pour sélectionner des étudiants pour des cours d'été pratiques sur les FPGA et la conception de processeurs. Une telle école est prévue cette année à Zelenograd, son prototype a été testé à l'Université d'été pour les jeunes programmeurs à Novossibirsk et à la Semaine de l'électronique pour les étudiants à Kiev l'année précédente. Vous pouvez également essayer de faire un hackathon sur les réseaux de neurones implémentés par matériel et l'implémentation matérielle de jeux avec sortie sur un écran VGA (plus à ce sujet plus tard dans la publication).



En bref sur ce qui est inclus dans chacun des trois modules - «Du transistor au microcircuit», «Le côté logique des circuits numériques» et «Le côté physique des circuits numériques».

Le cours "Comment fonctionnent les créateurs de nanopuces intelligentes" part du zéro absolu, donc sa première partie, "Du transistor au microcircuit", reprend en grande partie d'autres matériaux électroniques pour les écoliers qui ont été créés au cours des 50 dernières années - qu'est-ce qu'un transistor, des éléments logiques, binaire nombres et déclencheurs. Le concept de la bascule D à l'intérieur de l'iPhone moderne reste le même que dans le magazine Quantum de 1986. Les transistors ont diminué mille fois, mais leur essence n'a pas changé.

Le seul bloc d'informations qui ne figurait pas dans les cours précédents concerne les cellules dites standard, sur les technologies desquelles la grande majorité des microcircuits spécialisés modernes sont construits. Ils ressemblent à ceci:



Essayez de répondre à la question des tests ci-dessous, et si vous connaissez la réponse, vous pouvez ignorer le premier module du cours:
Pourquoi les cellules standard des micropuces modernes (cellules standard ASIC) sont-elles appelées standard?
  1. Oh, je sais! En effet, ils implémentent les fonctions logiques standard ET, OU, PAS
  2. Les éléments de transistor dans les cellules standard ont une composition chimique standard
  3. Les cellules standard fonctionnent à une vitesse d'horloge standard
  4. Ils ont une hauteur standard (dimension sur la zone), ce qui simplifie leur alimentation et leur connexion automatique les uns avec les autres
  5. La structure des cellules standard a déjà été normalisée par un comité de normalisation européen.

La bonne réponse est:

Texte masqué
4. Les cellules standard (cellules standard ASIC) ont une hauteur standard (dimension sur la zone), ce qui simplifie leur alimentation et leur connexion automatique les unes avec les autres



Si vous ne le savez pas, vous pouvez passer par le premier module du cours - "Du transistor au microcircuit". Voici son contenu:



Si la majeure partie du premier module du cours «Comment fonctionnent les créateurs de nanopuces intelligentes» parle des mêmes choses qui se trouvent dans les textes populaires pour les écoliers depuis les années 1970, alors dans la deuxième partie, «Le côté logique des circuits numériques», nous entrons dans le domaine il n'y avait pas de magazine Quantum, et qui, en général, a été abandonné dans l'enseignement russe en raison de l'effondrement de l'URSS. Nous parlons de la route dite RTL-à-GDSII, des méthodes pour concevoir un plan de placement de milliards de transistors et de pistes de puces basé sur la compilation / synthèse de code dans les langages de description matérielle Verilog et VHDL. L'échec dans ce domaine doit être surmonté, à commencer par le niveau des étudiants avancés. Sinon, il n'y a pas d'iPhone, de robot ou de voiture autonome véritablement russe.



Ces dernières années, la Russie a stimulé la vulgarisation de la conception de circuits numériques en synthétisant les descriptions matérielles à partir des langues, notamment en raison de la publication en russe d'un manuel gratuit (version électronique) par David Harris et Sarah Harris «Circuit numérique et architecture informatique» . Les publications sur Habré à propos de ce manuel ont reçu plus de 300 000 vues et les téléchargements ont submergé deux fois le site britannique Imagination Technologies. Récemment, une version finale révisée du tutoriel a été publiée, que vous pouvez télécharger à partir du lien sur le site Web de MIPS . Certes, le lien ne fonctionne que sous Windows, mais sur Mac et sous Linux, il est bogué. Si vous rencontrez des problèmes, vous pouvez télécharger la même version à partir d'ici . Ou achetez un livre papier auprès de DMK Press on Ozone ou dans le Labyrinthe.



Le module «Côté logique des circuits numériques» du cours «Comment fonctionnent les créateurs de nanopuces intelligentes» utilise l'exemple d'un «escargot souriant» de Harris. Un escargot est une machine d'état qui reconnaît des séquences de zéros et de uns. Le cours comprend le code source de la machine «escargot» dans le langage de description du matériel Verilog et présente les concepts de diagrammes d'état de machine d'état et de diagrammes de signaux horaires. Après cela, un circuit électronique synthétisé à partir de la description est montré, avec des éléments logiques et et des déclencheurs D pour stocker l'état de la machine d'état "escargot".





Sur la base de l'exemple «escargot», les écoliers sur hackathons peuvent synthétiser divers «verrous de code» pour les cartes FPGA. Dans l'examen du cours "Comment fonctionnent les créateurs de nanopuces intelligentes", il y a une question sur le diagramme d'état de la machine d'état de la soi-disant "salle chinoise" - un exemple populaire dans le domaine de l'intelligence artificielle. Voici un schéma d'une machine à états simple pour dialoguer avec les caractères chinois. Si vous lui donnez une combinaison de plusieurs hiéroglyphes "arbre" et "ours", avec les hiéroglyphes suivants "science", la machine donnera une séquence de hiéroglyphes "Sibérie" - ceci est un exemple qui est né lors d'un séminaire pour écoliers à Novosibirsk Academgorodok:



La troisième partie, «Le côté physique des circuits numériques», décrit comment un graphique d'éléments logiques synthétisés dans la deuxième partie est disposé sur un microcircuit et transformé en un dessin GDSII qui est envoyé à l'usine où les microcircuits sont cuits. Cette partie traite également des algorithmes de placement et de traçage qui intéresseront les élèves à orientation mathématique. La recherche dans le domaine de l'automatisation de la conception de microcircuits est un domaine populaire parmi les anciens lauréats de concours de mathématiques.



Voici à quoi ressemble la conception de la puce après le placement et le traçage à l'aide de Synopsys IC Compiler:



Mais cette élégante structure fractale est un arbre d'un signal d'horloge à l'intérieur de la puce, construit de telle sorte que le signal d'horloge arrive à tous les déclencheurs D à peu près au même moment. La largeur des «branches» de cet arbre varie de composés métalliques épais à minces sur le microcircuit pour satisfaire les limites physiques des conducteurs en cuivre au niveau nanométrique de la technologie des semi-conducteurs:



Et voici une illustration de ce que l'on appelle l'algorithme de traçage des vagues (en anglais Maze Routing - «Searching for chemins in the laaze»). Cet algorithme a été utilisé dans les premiers programmes d'automatisation de conception pour connecter les éléments logiques d'un circuit. L'algorithme de suivi des vagues est si simple qu'un lycéen capable peut l'écrire en C, Python ou Java. C'est un exercice utile pour ceux qui vont écrire des algorithmes beaucoup plus complexes à l'avenir, par exemple, pour les futures puces tridimensionnelles:



Que peuvent faire les étudiants après avoir maîtrisé les concepts de conception de circuits numériques sur Verilog? Les exercices dans le simulateur ou avec des lumières clignotantes sur la carte FPGA, bien que nécessaires, sont assez ennuyeux, et la conception de processeurs simples et de calculatrices neuronales n'est intéressante que pour un petit pourcentage d'étudiants qui décident de maîtriser l'architecture informatique. Heureusement, les exercices possibles pour les étudiants ne se limitent pas à ces deux domaines.

Il y a à peine deux mois, le livre Designing Video Game Hardware in Verilog de Steven Hugg a été publié, qui décrit la conception de schémas de jeu sur Verilog, avec l'implémentation dans le FPGA connecté à l'écran VGA. On parle de jeux vidéo des années 1970 et 1980, avec la génération d'un scan, d'un buffer d'images, de sprites. Atari ping pong, guerres spatiales, tanchiki. Les machines à sous pour ces jeux ont d'abord été assemblées dans les années 1970 sur des microcircuits à faible degré d'intégration, puis sur PAL et sur des microcontrôleurs, dont le Motorola 6502, qui était utilisé dans les premiers par Apple. Le livre de Steven Hagg traite également de l'implémentation matérielle de sprites familiers aux programmeurs et aux joueurs soviétiques dans la seconde moitié des années 1980 à l'aide du processeur vidéo Texas Instruments TMS9918, qui a été installé sur des ordinateurs Yamaha MSX japonais importés à l'époque dans les écoles soviétiques.

Le livre de Hagg est utile non seulement et pas tant pour les manivelles nostalgiques. Il s'agit d'un excellent ensemble de tâches pour les étudiants et les écoliers modernes qui commencent à étudier l'électronique. Puisque les tâches sont anciennes, mais ici les technologies - Verilog, synthèse logique, prototypage FPGA - sont nouvelles, les mêmes qui sont actuellement à l'étude dans l'année académique 2018-2019 au MIT au cours du 6.111 . Sans de simples exercices avec Verilog et FPGA, les ingénieurs qui siègent maintenant à Santa Clara chez Intel, NVidia et AMD, à Cupertino chez Apple et d'autres sociétés électroniques n'auraient pas grandi.





Pour résumer. Ce serait bien si maintenant un certain nombre d'enseignants d'écoles et d'universités testaient le cours «Comment fonctionnent les créateurs de nanopuces intelligentes» et y envoyaient ensuite des étudiants intéressés. Ensuite, pour les écoliers qui recevront un certificat de ce cours, vous pouvez les inviter à un séminaire pratique avec des panneaux FPGA (dont certains seront distribués comme prix pour des projets réussis). De tels séminaires sont actuellement en discussion à Zelenograd, Moscou, il y a également un intérêt pour Sotchi, Minsk et d'autres endroits. À long terme, la Russie va développer une communauté de développeurs de puces qui s'est développée dans la Silicon Valley, au Japon, à Taiwan, en Corée du Sud, au Royaume-Uni, et qui prend maintenant forme à Shanghai et ailleurs. C'est quelque chose qui devrait exister dans tous les grands pays techniquement avancés, et en Russie, il y a suffisamment de traditions en mathématiques, physique et ingénierie pour soutenir un tel développement.

Source: https://habr.com/ru/post/fr443234/


All Articles