Étapes de la conception de nouveaux processeurs et GPU d'Intel, d'AMD et de NVIDIA

Étapes de la conception de nouveaux processeurs et GPU d'Intel, d'AMD et de NVIDIA

Tout dans cette vie suit une méthodologie, notamment en vue de développer de nouveaux produits. Qui consiste en une série de protocoles dans le but d'atteindre un résultat clair dans les plus brefs délais. La conception des CPU n'y est pas étrangère et c'est pourquoi nous allons décrire les différentes étapes qui sont suivies lors de la conception d'un Processeur.

Si nous prenons un processeur d'il y a quelques années et l'achetons avec un nouveau à première vue, ils auront la même apparence, mais ce n'est pas le cas, la plus grande complexité des conceptions plus récentes nécessite des heures de travail beaucoup plus longues et avec elle un plus personnel qualifié. montant. Il est vrai que chaque nouveau nœud de fabrication permet de placer plus de transistors, mais cela implique également plus de travail et étant donné que les temps de développement sont impitoyables, il est nécessaire que la conception des nouveaux designs suive une série d'étapes ordonnées.

Tout commence par le choix du nœud de fabrication

Obléas Intel

La première étape n'est pas faite par les ingénieurs, mais par les managers, qui négocient des contrats de plusieurs millions de dollars avec les différentes fonderies et font les différentes prévisions concernant le niveau de production et les coûts.

Les spécifications et les coûts du nœud de fabrication détermineront aux architectes quelle sera la zone dont ils disposeront pour créer la puce, le budget pour le nombre de transistors et les temps de développement dont ils disposent pour créer les nouvelles conceptions de processeurs.

Ce qui suit est la réalisation d'un schéma

Plan d'étage

Le Floorplanning n'est rien de plus qu'un schéma où nous indiquons les éléments de base généraux qui composent un CPU pour les ordonner dans un espace. Avec des éléments généraux, nous ne parlons pas de mettre un cœur de processeur ici, le cache ici, le GPU là, etc

Mais par là, nous nous référons à des éléments beaucoup plus basiques tels que des circuits combinatoires tels qu'un multiplexeur, des portes logiques de différents types, des ALU, des tampons mémoire, etc. Cela est dû au fait que les langages de description de matériel nécessitent que l'interconnexion entre les différents éléments soient précisés et il est donc indispensable de prendre un crayon et du papier, une immense feuille de papier pour interconnecter les différents éléments d'un schéma.

Le premier schéma créé n'est pas le dernier, mais il permet d'organiser les différents modules d'une CPU en deux types de blocs :

  • Les premiers sont appelés blocs fixes, ils comprennent les éléments qui ne subiront pas de variations de conception et resteront statiques en termes de surface, du fait que leur nature le permet.
  • D'autre part, les blocs polyvalents sont les pièces qui vont être modifiées, notamment parce que l'interaction avec d'autres parties de la puce le nécessite ou simplement parce qu'ils ne savent pas encore quel design va être implémenté dans la version finale.

S'il y a suffisamment d'espace dans la conception Floorplanning du processeur pour améliorer certains éléments, il cherche à intégrer des solutions plus avancées pour ces parties, qui sont en cours de développement en parallèle et que nous verrons dans la section suivante.

3ème des étapes de conception d'un CPU : définition de l'ISA

Etapas diseño processeur ISA

L'étape suivante est la définition de l'ensemble de registres et d'instructions à utiliser, dans le cas des CPU où ceux-ci sont hérités de génération en génération, la mise en œuvre peut sembler facile, mais l'ajout de nouvelles instructions et registres amène avec lui la réorganisation de quelque chose qui en soi est assez complexe.

Dans les GPU, c'est différent, ils n'exécutent pas de programmes et chaque nouvelle génération signifie pouvoir changer la nature de l'ISA de ses unités de shader de manière plus polyvalente. Donc s'il est nécessaire de supprimer des instructions cela peut être fait, mais dans un CPU ce n'est pas le cas, supprimer une instruction ou un registre c'est rompre la compatibilité avec le logiciel.

Ce sont les parties en charge du traitement des données qui sont généralement de taille variable dans la conception de tout type de processeur et celles qui finissent par passer par cette étape de conception. En revanche, les éléments fonctionnels fixes ne reçoivent pas ces modifications.

4ème des étapes de conception d'un CPU : les tests dans les FPGA

FPGA-3

Non, nous n'avons pas atteint l'étape finale, mais il faut prouver que la conception est fonctionnelle, à cet effet, les cartes FPGA sont généralement connectées les unes aux autres dans une énorme matrice. Chacun des FPGA a été programmé ou plutôt configuré pour se comporter comme un élément de la conception globale du CPU ou du GPU que nous concevons.

L'idée ici n'est pas d'aller à pleine vitesse, mais de vérifier au ralenti que le design est fonctionnel. Nous allons donc avoir des latences bien plus élevées et des vitesses bien plus faibles que le processeur final, mais ce qui nous intéresse, c'est que tous les éléments fonctionnent.

5ème des étapes de conception d'un CPU : E/S, alimentation et horloge

Processeur conçu enrutado

La quatrième étape consiste déjà à la création de la puce consiste à créer la puce finale, mais nous nous retrouvons avec le problème d'entrée que nous devons concevoir la distribution d'énergie dans le circuit d'une part et d'autre part celle des signaux d'horloge , dont certaines seront dérivées d'une horloge mère qui sera subdivisée et d'autres auront leur propre horloge.

Ce que vous faites, c'est prendre le plan d'étage que nous avons vu dans la section précédente et l'entourer d'un carré ou d'un rectangle divisé en quadrants. A l'extérieur des quadrants, on lui attribue une énergie spécifique ou fonction E/S. C'est ici que le périmètre d'une puce est conçu et que l'emplacement des différentes interfaces de communication avec les périphériques et la mémoire est marqué.

C'est à ce stade que toute la documentation concernant la distribution de l'énergie électrique est également vérifiée si la conception des différents éléments permet d'atteindre les vitesses d'horloge attendues.

Vérification du processeur

test de procesador pas à pas

Après la conception vient la vérification de la même chose. Dans lequel la conception finie est validée par une équipe totalement différente, qui recherche les défauts de conception au niveau physique qu'elle peut avoir. La connaissance de l'équipe de validation est totalement différente de celle de la conception.

En effet, ils touchent des branches très différentes et l'équipe de validation se concentre davantage sur la détection et la correction des erreurs qui surviennent dans l'implémentation physique d'un CPU et non dans son architecture, qui ne change pas d'origine. Un équivalent du monde de la construction serait celui d'un groupe d'ouvriers et d'entrepreneurs qui prototypent une maison ou un bâtiment et détectent des erreurs qui affectent les performances de la conception finale et qui ne sont pas visibles dans la simulation.