Comment fonctionne le microprocesseur au niveau physique. Structure interne du processeur

Comment fonctionne le microprocesseur au niveau physique. Structure interne du processeur

29.11.2020

Le processeur est le principal appareil informatique qui effectue des opérations logiques et arithmétiques et contrôle tous les composants de l'ordinateur. Le processeur est une plaque de silicium mince rectangulaire miniature, qui abrite un grand nombre de transistors qui mettent en œuvre toutes les fonctions exécutées par le processeur. Une plaque de silicium est très fragile, et comme tout endommagement de celle-ci entraînera la défaillance du processeur, elle est placée dans un boîtier en plastique ou en céramique.

1. Introduction 2. Noyau du processeur 2.1. Comment fonctionne le cœur du processeur 2.2. Moyens d'améliorer les performances du cœur du processeur 2.2.1. Pipeline 2.2.2. Superscalarité 2.2.3. Traitement des données en parallèle 2.2.4. Technologie d'hyper-threading 2.2.5. Technologie Turbo Boost. 2.2.6. Efficacité de l'exécution des commandes. 2.3 Façons de réduire la consommation d'énergie du cœur du processeur 3. Mémoire cache

1. Introduction.

Un processeur moderne est un appareil complexe et de haute technologie qui comprend toutes les dernières avancées de la technologie informatique et des domaines scientifiques connexes.

La plupart des processeurs modernes se composent de :

    un ou plusieurs noyaux qui exécutent toutes les instructions ;

    plusieurs niveaux de mémoire cache (généralement 2 ou trois niveaux), accélérant l'interaction du processeur avec la RAM ;

    contrôleur de RAM ;

    contrôleur de bus système (DMI, QPI, HT, etc.);

Et il est caractérisé par les paramètres suivants :

    type de microarchitecture;

    fréquence d'horloge;

    un ensemble de commandes exécutables ;

    le nombre de niveaux de cache et leur taille ;

    le type et la vitesse du bus système ;

    la taille des mots traités ;

    la présence ou l'absence d'un contrôleur de mémoire intégré ;

    le type de RAM pris en charge ;

    la quantité de mémoire adressable ;

    la présence ou l'absence d'un noyau graphique intégré ;

    consommation d'énergie.

Un schéma fonctionnel simplifié d'un processeur multicœur moderne est illustré à la figure 1.

Commençons notre examen du processeur avec sa partie principale - le noyau.

2. Le cœur du processeur.

Le cœur du processeur est sa partie principale, contenant tous les blocs fonctionnels et effectuant toutes les opérations logiques et arithmétiques.

La figure 1 montre un schéma fonctionnel du dispositif de cœur de processeur. Comme vous pouvez le voir sur la figure, chaque cœur de processeur se compose de plusieurs blocs fonctionnels :

    récupérer un bloc d'instructions ;

    blocs pour les instructions de décodage ;

    blocs d'échantillonnage de données ;

    bloc de contrôle ;

    blocs pour exécuter des instructions;

    blocs pour enregistrer les résultats ;

    bloc de travail avec interruptions;

    ensemble de registres;

    le compteur de commandes.

Bloc de récupération d'instructions lit les instructions à l'adresse spécifiée dans le compteur de commandes. Il lit généralement plusieurs instructions par cycle d'horloge. Le nombre d'instructions lisibles est déterminé par le nombre de blocs de décodage, puisqu'il est nécessaire de charger le plus possible les blocs de décodage à chaque cycle de travail. Pour que l'unité d'extraction fonctionne de manière optimale, il existe un prédicteur de branche dans le cœur du processeur.

Prédicteur de transition essaie de déterminer quelle séquence de commandes sera exécutée après la transition. Ceci est nécessaire afin de maximiser la charge sur le pipeline du cœur du processeur après le saut conditionnel.

Blocs de décodage, comme son nom l'indique, sont des blocs qui décodent des instructions, c'est-à-dire déterminer ce que le processeur doit faire et quelles données supplémentaires sont nécessaires pour exécuter l'instruction. Cette tâche est très difficile pour la plupart des processeurs commerciaux modernes basés sur le concept CISC. Le fait est que la longueur des instructions et le nombre d'opérandes ne sont pas fixes, ce qui complique grandement la vie des développeurs de processeurs et fait du processus de décodage une tâche non triviale.

Souvent, des instructions complexes individuelles doivent être remplacées par un microcode - une série d'instructions simples qui effectuent collectivement la même action qu'une instruction complexe. Le jeu de microcodes est flashé dans la ROM intégrée au processeur. De plus, le microcode simplifie le développement du processeur, car il n'est pas nécessaire de créer des blocs de noyau complexes pour exécuter des commandes individuelles, et la correction du microcode est beaucoup plus facile que d'éliminer une erreur dans le fonctionnement du bloc.

Dans les processeurs modernes, il y a généralement 2 à 4 blocs de décodage d'instructions, par exemple, dans les processeurs Intel Core 2, chaque cœur contient deux de ces blocs.

Blocs de récupération de données récupérer les données de la mémoire cache ou de la RAM nécessaires à l'exécution des instructions en cours. En règle générale, chaque cœur de processeur contient plusieurs blocs d'extraction de données. Par exemple, les processeurs Intel Core utilisent deux blocs d'extraction pour chaque cœur.

Bloc de contrôle sur la base d'instructions décodées, il contrôle le fonctionnement des blocs d'exécution d'instructions, répartit la charge entre eux et assure une exécution correcte et en temps voulu des instructions. C'est l'un des blocs les plus importants du cœur du processeur.

Blocs d'exécution d'instructions comprennent plusieurs blocs de types différents :

ALU - unité arithmétique et logique ;

FPU - un appareil pour effectuer des opérations en virgule flottante ;

Blocs pour gérer l'expansion des jeux d'instructions. Des instructions supplémentaires sont utilisées pour accélérer le traitement des flux de données, le cryptage et le décryptage, l'encodage vidéo, etc. Pour cela, des registres et des ensembles logiques supplémentaires sont introduits dans le cœur du processeur. À l'heure actuelle, les extensions les plus populaires des jeux d'instructions sont :

MMX (Multimedia Extensions) - un ensemble d'instructions développées par Intel pour accélérer l'encodage et le décodage des données audio et vidéo en streaming ;

SSE (Streaming SIMD Extensions) est un ensemble d'instructions développé par Intel pour effectuer la même séquence d'opérations sur un ensemble de données avec un processus de calcul parallèle. Les jeux de commandes sont constamment améliorés, et en ce moment il y a des révisions : SSE, SSE2, SSE3, SSSE3, SSE4 ;

ATA (Application Targeted Accelerator) est un ensemble d'instructions développées par Intel pour accélérer le fonctionnement de logiciels spécialisés et réduire la consommation d'énergie lorsque vous travaillez avec de tels programmes. Ces instructions peuvent être utilisées, par exemple, lors du calcul des sommes de contrôle ou de la recherche de données ;

3DNow est un jeu d'instructions développé par AMD pour étendre les capacités du jeu d'instructions MMX ;

AES (Advanced Encryption Standard) est un ensemble d'instructions développé par Intel pour accélérer le fonctionnement des applications utilisant le cryptage des données en utilisant le même algorithme.

Unité de stockage des résultats fournit un enregistrement du résultat de l'exécution de l'instruction dans la RAM à l'adresse spécifiée dans l'instruction traitée.

Blocage d'interruption. Travailler avec des interruptions est l'une des tâches les plus importantes du processeur, ce qui lui permet de réagir aux événements en temps opportun, d'interrompre le déroulement du programme et d'effectuer les actions qui lui sont demandées. En raison de la présence d'interruptions, le processeur est capable d'un fonctionnement pseudo-parallèle, c'est-à-dire au soi-disant multitâche.

La gestion des interruptions est la suivante. Le processeur recherche une demande d'interruption avant de démarrer chaque cycle. S'il y a une interruption à traiter, le processeur stocke sur la pile l'adresse de l'instruction qu'il aurait dû exécuter et les données reçues après l'exécution de la dernière instruction, et procède à l'exécution de la fonction de gestion des interruptions.

Après la fin de l'exécution de la fonction de service d'interruption, les données qui y sont enregistrées sont lues dans la pile et le processeur reprend l'exécution de la tâche restaurée.

Registres- mémoire vive ultra-rapide (l'accès aux registres est plusieurs fois plus rapide que l'accès à la mémoire cache) de petite taille (plusieurs centaines d'octets), qui fait partie du processeur, pour le stockage temporaire des résultats intermédiaires d'exécution des instructions. Les registres de processeur sont divisés en deux types : les registres à usage général et les registres spéciaux.

Les registres à usage général sont utilisés lors de l'exécution d'opérations arithmétiques et logiques, ou d'opérations spécifiques de jeux d'instructions supplémentaires (MMX, SSE, etc.).

Les registres spéciaux contiennent les données système nécessaires au fonctionnement du processeur. De tels registres comprennent, par exemple, des registres de contrôle, des registres d'adresses système, des registres de débogage, etc. L'accès à ces registres est très réglementé.

Compteur de commandes- registre contenant l'adresse de la commande que le processeur commencera à exécuter au prochain cycle de travail.

Le processeur est le microcircuit principal de l'ordinateur. En règle générale, il s'agit également de l'un des composants PC les plus sophistiqués et les plus coûteux. Bien que le processeur soit un appareil distinct, sa structure comporte un grand nombre de composants qui sont responsables d'une fonction spécifique. Quelle est leur spécificité ?

Processeur : fonctions de l'appareil et historique d'apparition

Le composant PC, qui est maintenant communément appelé processeur central, se caractérise par une capacité suffisante histoire intéressante origine. Par conséquent, afin de comprendre ses spécificités, il sera utile d'enquêter sur quelques faits clés sur l'évolution de son développement. Le dispositif, qui est connu de l'utilisateur moderne sous le nom d'unité centrale de traitement, est le résultat de nombreuses années d'amélioration de la technologie de production de microcircuits informatiques.

La vision des ingénieurs de la structure du processeur a changé au fil du temps. Dans les ordinateurs des première et deuxième générations, les composants correspondants étaient constitués d'un grand nombre de blocs séparés, très dissemblables dans leurs tâches. À partir de la troisième génération d'ordinateurs, les fonctions du processeur ont commencé à être considérées dans un contexte plus étroit. Les ingénieurs en conception informatique ont déterminé que cela devrait être la reconnaissance et l'interprétation des instructions de la machine, leur saisie dans des registres, ainsi que le contrôle d'autres composants matériels du PC. Toutes ces fonctions ont commencé à être combinées dans un seul appareil.

Microprocesseurs

Avec le développement de la technologie informatique, des dispositifs appelés "microprocesseurs" ont commencé à être introduits dans la structure du PC. L'un des premiers appareils de ce type était le produit Intel 4004, lancé par une société américaine en 1971. Des microprocesseurs à l'échelle d'un microcircuit combinaient dans leur structure les fonctions que nous avons définies plus haut. Les appareils modernes fonctionnent en principe sur le même concept. Ainsi, le processeur central d'un ordinateur portable, d'un PC, d'une tablette contient dans sa structure : un dispositif logique, des registres, et un module de contrôle chargé de fonctions spécifiques. Cependant, en pratique, les composants des microcircuits modernes sont le plus souvent présentés dans un ensemble plus complexe. Étudions cette fonctionnalité plus en détail.

La structure des processeurs modernes

Le processeur central d'un PC, d'un ordinateur portable ou d'une tablette moderne est représenté par le noyau - il est maintenant considéré comme la norme qu'il y en ait plusieurs, une mémoire cache à différents niveaux, ainsi que des contrôleurs: RAM, bus système. Les performances d'un type de microcircuit approprié sont déterminées par ses caractéristiques clés. Dans quel agrégat peuvent-ils être représentés ?

Les caractéristiques les plus significatives d'une unité centrale sur les PC modernes sont les suivantes : le type de microarchitecture (généralement indiqué en nanomètres), fréquence d'horloge(en gigahertz), la quantité de mémoire cache à chaque niveau (en mégaoctets), la consommation électrique (en watts) et la présence ou non d'un module graphique.

Étudions plus en détail les spécificités du fonctionnement de certains modules CPU clés. Commençons par le noyau.

Noyau de processeur

L'unité centrale d'un PC moderne a toujours un noyau. Il contient les blocs fonctionnels clés du microcircuit, à travers lesquels il exécute les fonctions logiques et arithmétiques nécessaires. En règle générale, ils sont présentés dans un certain ensemble d'éléments. Ainsi, le processeur central suppose le plus souvent la présence de blocs chargés de résoudre les tâches suivantes :

Récupérer et décoder les instructions ;

Échantillonnage de données ;

Suivant les instructions;

Sauvegarde des résultats des calculs ;

Travailler avec des interruptions.

Aussi, la structure des microcircuits du type correspondant est complétée par une unité de contrôle, un dispositif de mémoire, un compteur d'instructions et un ensemble de registres. Examinons plus en détail les spécificités du travail des composants correspondants.

Cœur de processeur : composants

Parmi les blocs clés du cœur du processeur central se trouve celui qui est chargé de lire les instructions qui sont écrites dans l'adresse enregistrée dans le compteur de commandes. En règle générale, plusieurs opérations du type correspondant sont effectuées à la fois au cours d'un cycle d'horloge. Le nombre total d'instructions à lire est prédéterminé par l'index dans les blocs de décodage. Le principe principal ici est qu'à chaque tick, les composants marqués sont chargés au maximum. Afin de répondre à ce critère, des éléments matériels auxiliaires peuvent être présents dans la structure du processeur.

Dans le bloc de décodage, des instructions sont traitées qui déterminent l'algorithme de fonctionnement du microcircuit lors de la résolution de certains problèmes. Les faire fonctionner est une tâche ardue, selon de nombreux professionnels de l'informatique. Cela est dû, en partie, au fait que la durée de l'instruction n'est pas toujours clairement définie. Les processeurs modernes comportent généralement 2 ou 4 blocs dans lesquels est effectué le décodage correspondant.

En ce qui concerne les composants chargés de récupérer des données, leur tâche principale est d'assurer la réception des instructions de la mémoire cache ou RAM, qui sont nécessaires pour assurer l'exécution des instructions. Les cœurs des processeurs modernes contiennent généralement plusieurs blocs du type correspondant.

Les composants de commande présents dans le microcircuit sont également basés sur des instructions décodées. Ils sont appelés à exercer un contrôle sur le travail des unités chargées de l'exécution des instructions, ainsi qu'à répartir les tâches entre elles, pour contrôler leur exécution en temps opportun. Les composants de contrôle appartiennent à la catégorie des plus importants dans la structure des microprocesseurs.

Dans les noyaux des microcircuits du type correspondant, il existe également des blocs responsables de la bonne exécution des instructions. Dans leur structure, il y a des éléments tels qu'une unité arithmétique et logique, ainsi qu'un composant responsable des calculs en virgule flottante.

Il existe des blocs dans les cœurs de processeur qui contrôlent le traitement de l'extension des ensembles définis pour les instructions. Ces algorithmes, en plus des commandes de base, sont utilisés pour augmenter l'intensité du traitement des données, pour mettre en œuvre des procédures de chiffrement ou de déchiffrement des fichiers. La solution de tels problèmes nécessite l'introduction de registres supplémentaires dans la structure du noyau du microcircuit, ainsi que des jeux d'instructions. Les processeurs modernes incluent généralement les extensions suivantes : MMX (conçu pour coder des fichiers audio et vidéo), SSE (utilisé pour les calculs de parallélisation), ATA (utilisé pour accélérer les programmes et réduire la consommation d'énergie du PC), 3DNow (étendre les capacités multimédia d'un ordinateur ), AES (cryptage des données), ainsi que de nombreuses autres normes.

Dans la structure des cœurs de processeur, il existe généralement des blocs chargés de stocker les résultats en RAM conformément à l'adresse contenue dans l'instruction.

Le composant central qui contrôle le fonctionnement d'interruption du microcircuit est important. Cette fonction permet au processeur d'assurer la stabilité des programmes en conditions multitâches.

Le travail du processeur central est également associé à l'utilisation de registres. Ces composants sont analogues à la RAM, cependant, leur accès s'effectue plusieurs fois plus rapidement. Le volume de la ressource correspondante est petit - en règle générale, il ne dépasse pas un kilo-octet. Les registres sont classés en plusieurs saveurs. Il peut s'agir de composants à usage général impliqués dans l'exécution de calculs arithmétiques ou logiques. Il existe des registres spéciaux qui peuvent inclure des données système utilisées par le processeur pendant le fonctionnement.

Divers composants auxiliaires sont également présents dans la structure du cœur du processeur. Lequel par exemple ? Cela pourrait être un capteur qui garde une trace de la température actuelle du processeur. Si ses performances sont supérieures aux normes établies, le microcircuit peut envoyer un signal aux modules responsables du fonctionnement des ventilateurs - et ils commenceront à tourner plus rapidement. Il existe un prédicteur de transition dans la structure du noyau - un composant conçu pour déterminer quelles instructions seront exécutées après l'achèvement de certains cycles d'opérations effectués par le microcircuit. Un exemple d'un autre composant important est le compteur de commandes. Ce module fixe l'adresse de l'algorithme correspondant, qui est transmise au microcircuit au moment où il commence à exécuter l'un ou l'autre cycle.

C'est la structure du noyau, qui est inclus dans l'unité centrale de traitement de l'ordinateur. Étudions maintenant plus en détail certaines des caractéristiques clés des microcircuits du type correspondant. À savoir : la technologie des processus, la vitesse d'horloge, la taille de la mémoire cache, ainsi que la consommation d'énergie.

Caractéristiques du processeur : type de technologie de processus

Il est d'usage d'associer le développement de la technologie informatique à l'émergence de nouvelles générations d'ordinateurs avec l'amélioration des technologies informatiques. Parallèlement, outre les indicateurs de performance, l'un des critères d'attribution d'un ordinateur à une génération particulière peut être considéré comme sa taille absolue. Les tout premiers ordinateurs étaient de taille comparable à un immeuble à plusieurs étages. Les ordinateurs de deuxième génération étaient de taille comparable, par exemple, à un canapé ou à un piano. Les ordinateurs du niveau supérieur étaient déjà très proches de ceux qui nous sont familiers maintenant. À leur tour, les PC modernes sont des ordinateurs de quatrième génération.

Au fait, à quoi ça sert tout ça ? Le fait est qu'au cours de l'évolution des ordinateurs, une règle officieuse s'est formée: plus l'appareil est technologiquement avancé, plus les dimensions sont petites avec les mêmes performances, et même avec des performances supérieures. Elle est pleinement valable par rapport aux caractéristiques considérées du processeur central, à savoir, le processus technique de sa fabrication. Dans ce cas, la distance entre les cristaux de silicium individuels qui forment la structure du microcircuit est importante. Plus elle est petite, plus la densité des éléments correspondants que la carte CPU se place sur elle-même est importante. D'autant plus productif qu'il peut donc être envisagé. Les processeurs modernes sont fabriqués selon la technologie de traitement 90-14 nm. Cet indicateur tend à diminuer progressivement.

Fréquence d'horloge

La vitesse d'horloge du processeur central est l'un des indicateurs clés de ses performances. Il détermine le nombre d'opérations par seconde que le microcircuit peut effectuer. Plus il y en a, plus le processeur et l'ordinateur dans son ensemble sont efficaces. On peut noter que ce paramètre caractérise tout d'abord le cœur comme module indépendant du processeur central. C'est-à-dire que s'il y a plusieurs composants correspondants sur le microcircuit, chacun d'eux fonctionnera à une fréquence distincte. Certains professionnels de l'informatique trouvent acceptable de sommer ces caractéristiques sur tous les cœurs. Qu'est-ce que ça veut dire? Si, par exemple, le processeur a 4 cœurs avec une fréquence de 1 GHz, alors les performances totales du PC, si vous suivez cette méthodologie, seront de 4 GHz.

Composantes fréquentielles

L'indicateur considéré est formé de deux composantes. Premièrement, il s'agit de la fréquence du bus système - elle est généralement mesurée en centaines de mégahertz. Deuxièmement, c'est le coefficient par lequel l'indicateur correspondant est multiplié. Dans certains cas, les fabricants de processeurs donnent aux utilisateurs la possibilité d'ajuster les deux paramètres. Dans le même temps, si vous définissez des valeurs suffisamment élevées pour le bus système et le multiplicateur, vous pouvez augmenter considérablement les performances du microcircuit. C'est ainsi que le processeur est overclocké. Certes, vous devez l'utiliser avec précaution.

Le fait est que lors de l'overclocking, la température du processeur central peut augmenter considérablement. Si un système de refroidissement approprié n'est pas installé sur le PC, cela peut entraîner la défaillance du microcircuit.

Taille du cache

Les processeurs modernes sont équipés de modules de mémoire cache. Leur objectif principal est le placement temporaire de données, en règle générale, représenté par un ensemble de commandes et d'algorithmes spéciaux - ceux qui sont le plus souvent utilisés dans le fonctionnement du microcircuit. Qu'est-ce que cela donne en pratique ? Tout d'abord, le fait que la charge sur le processeur central peut être réduite du fait que les commandes et les algorithmes mêmes seront disponibles en ligne. Le microcircuit, ayant reçu des instructions toutes faites de la mémoire cache, ne perd pas de temps à les développer à partir de zéro. En conséquence, l'ordinateur fonctionne plus rapidement.

La principale caractéristique de la mémoire cache est le volume. Plus il est grand, plus ce module est d'autant plus volumineux en termes d'emplacement des instructions et des algorithmes mêmes utilisés par le processeur. Plus il est probable que le microcircuit trouvera à chaque fois ceux dont vous avez besoin parmi eux et fonctionnera plus rapidement. La mémoire cache des processeurs modernes est le plus souvent divisée en trois niveaux. Le premier fonctionne sur la base des microcircuits les plus rapides et les plus high-tech, le reste - plus lent. La quantité de mémoire cache du premier niveau sur les processeurs modernes est d'environ 128-256 Ko, la seconde - 1-8 Mo, la troisième - peut dépasser 20 Mo.

Consommation d'énergie

Un autre paramètre important du microcircuit est la consommation d'énergie. Alimenter le processeur peut être coûteux. Les modèles de microcircuits modernes consomment environ 40 à 50 watts. Dans certains cas, ce paramètre a une importance économique - par exemple, lorsqu'il s'agit d'équiper de grandes entreprises de plusieurs centaines ou milliers d'ordinateurs. Mais la consommation électrique n'est pas moins importante en termes d'adaptation des processeurs à une utilisation sur appareils mobiles- ordinateurs portables, tablettes, smartphones. Plus l'indicateur correspondant est bas, plus il sera long travail autonome dispositif.

Maintenant, il y a beaucoup d'informations sur Internet au sujet des processeurs, vous pouvez trouver un tas d'articles sur son fonctionnement, où les registres, les horloges, les interruptions, etc. sont principalement mentionnés ... Mais, pour une personne qui n'est pas familier avec tous ces termes et concepts, il est assez difficile comme ça "avec fly" d'approfondir la compréhension du processus, mais vous devez commencer petit - à savoir, avec une compréhension élémentaire comment le processeur est arrangé et quelles sont les parties principales qu'il se compose.

Alors, que se trouvera-t-il à l'intérieur du microprocesseur, si vous le démontez :

le numéro 1 désigne la surface métallique (couvercle) du microprocesseur, qui sert à dissiper la chaleur et à protéger contre dommages mécaniques ce qui se trouve derrière ce couvercle (c'est-à-dire à l'intérieur du processeur lui-même).

Le numéro 2 est le cristal lui-même, qui est en fait la partie la plus importante et la plus chère du microprocesseur à fabriquer. C'est grâce à ce cristal que tous les calculs ont lieu (et c'est la fonction la plus importante du processeur) et plus il est complexe, plus il est parfait, plus le processeur s'avère puissant et plus cher, respectivement. Le cristal est fait de silicium. En effet, le processus de fabrication est très complexe et comporte des dizaines d'étapes, plus de détails dans cette vidéo :

Le numéro 3 est un support textolite spécial, auquel toutes les autres parties du processeur sont attachées, en plus, il joue le rôle d'un plot de contact - il y a un grand nombre de "points" dorés sur sa face arrière - ce sont des contacts ( vous pouvez les voir un peu sur la figure). Grâce à la zone de contact (substrat), une interaction étroite avec le cristal est assurée, car il n'est en aucun cas possible d'influencer directement le cristal.

Le couvercle (1) est fixé au substrat (3) avec un mastic adhésif résistant aux températures élevées. Il n'y a pas d'entrefer entre la glace (2) et le couvercle, sa place est prise par de la graisse thermique, une fois solidifiée, elle forme un "pont" entre la glace du processeur et le couvercle, ce qui assure une très bonne sortie de chaleur.

Le cristal est connecté au substrat à l'aide d'une soudure et d'un scellant, les contacts du substrat sont connectés aux contacts du cristal. Cette figure montre clairement comment les contacts du cristal sont connectés aux contacts du substrat à l'aide de fils très fins (sur la photo, il y a une multiplication par 170):

En général, l'appareil des processeurs de différents fabricants et même des modèles du même fabricant peut varier considérablement. Cependant, le principe de fonctionnement reste le même - tous ont un substrat de contact, un cristal (ou plusieurs situés dans le même boîtier) et un capot métallique pour la dissipation thermique.

Par exemple, voici à quoi ressemble le substrat de contact d'un processeur Intel Pentium 4 (le processeur est inversé) :

La forme des contacts et la structure de leur disposition dépendent du processeur et carte mère ordinateur (les sockets doivent correspondre). Par exemple, dans l'image juste au-dessus, les broches du processeur sont sans "pins", puisque les broches sont situées directement dans le socket de la carte mère.

Et il existe une autre situation où les "broches" des contacts dépassent directement du substrat de contact. Cette fonctionnalité est typique principalement pour les processeurs AMD :

Comme mentionné ci-dessus, l'appareil différents modèles les processeurs du même fabricant peuvent différer, nous en avons un exemple frappant - un processeur Intel Core 2 Quad quadricœur, qui est essentiellement 2 processeurs dual-core de la gamme core 2 duo, combinés dans un seul cas :

Important! Le nombre de cristaux à l'intérieur d'un processeur et le nombre de cœurs de processeur ne sont pas les mêmes.

Dans les modèles modernes Processeurs Intel s'adapte à 2 cristaux (puces) à la fois. La deuxième puce est le cœur graphique du processeur, en fait, elle joue le rôle d'une carte vidéo intégrée au processeur, c'est-à-dire que même s'il n'y a pas de carte graphique dans le système, le cœur graphique assumera le rôle de une carte vidéo, et assez puissante (dans certains modèles de processeurs, la puissance de calcul des cœurs graphiques vous permet de jouer à des jeux modernes avec des paramètres graphiques moyens).

C'est tout dispositif central à microprocesseur, bref, bien sûr.

L'outil est plus simple que la machine. L'outil est souvent utilisé à la main et la machine est alimentée par de la vapeur ou un animal.

Charles Babbage

Un ordinateur peut aussi être appelé une machine, mais au lieu de la vapeur, il y a de l'électricité. Mais la programmation a rendu l'ordinateur aussi simple que n'importe quel outil.

Le processeur est le cœur/cerveau de tout ordinateur. Son objectif principal est les opérations arithmétiques et logiques, et avant de plonger dans la jungle du processeur, vous devez comprendre ses principaux composants et leur fonctionnement.

Les deux composants principaux d'un processeur

Dispositif de contrôle

Une unité de contrôle (CU) aide le processeur à contrôler et exécuter des instructions. L'UU indique exactement aux composants ce qu'ils doivent faire. Conformément aux instructions, il coordonne le travail avec d'autres parties de l'ordinateur, y compris le deuxième composant principal - l'unité arithmétique et logique (ALU). Toutes les instructions vont d'abord directement à l'appareil de contrôle.

Il existe deux types d'implémentation UU :

  • UU sur la logique rigide(unités de contrôle câblées en anglais). La nature du travail est déterminée par la structure électrique interne - le dispositif de la carte de circuit imprimé ou du cristal. En conséquence, la modification d'une telle CU sans intervention physique est impossible.
  • CU avec contrôle par microprogramme(unités de contrôle microprogrammables en anglais). Il peut être programmé à diverses fins. La partie du programme est stockée dans la mémoire de la CU.

Les contrôleurs logiques matériels sont plus rapides, mais les contrôleurs microprogrammés ont des fonctionnalités plus flexibles.

Unité arithmétique et logique

Ce dispositif, assez curieusement, effectue toutes les opérations arithmétiques et logiques, telles que l'addition, la soustraction, le OU logique, etc. ALU se compose d'éléments logiques qui effectuent ces opérations.

La plupart des portes logiques ont deux entrées et une sortie.

Vous trouverez ci-dessous un schéma d'un demi-additionneur, qui a deux entrées et deux sorties. A et B sont ici des entrées, S est une sortie, C est un transfert (vers le bit de poids fort).

Circuit de demi-additionneur arithmétique

Stockage d'informations - registres et mémoire

Comme mentionné précédemment, le processeur exécute les commandes qui lui parviennent. Les commandes fonctionnent dans la plupart des cas avec des données qui peuvent être intermédiaires, d'entrée ou de sortie. Toutes ces données, ainsi que les instructions, sont stockées dans des registres et de la mémoire.

Registres

Le registre est la cellule minimale de la mémoire de données. Les registres sont constitués de verrous / bascules. Les déclencheurs, à leur tour, sont constitués d'éléments logiques et peuvent stocker 1 bit d'information.

Environ. trad. Les déclencheurs peuvent être synchrones ou asynchrones. Les asynchrones peuvent changer d'état à tout moment, et les synchrones uniquement lors d'un front positif/négatif à l'entrée de synchronisation.

De par leur finalité fonctionnelle, les déclencheurs sont répartis en plusieurs groupes :

  • RS-flip-flop : conserve son état à des niveaux zéro sur les deux entrées et le modifie lors de la mise en un sur l'une des entrées (Reset / Set - Reset / Set).
  • JK-flip-flop : identique au RS-flip-flop sauf que lorsque les unités sont alimentées sur deux entrées à la fois, le flip-flop change d'état à l'opposé (mode de comptage).
  • T-flip-flop : change son état à l'opposé à chaque cycle d'horloge sur sa seule entrée.
  • D-flip-flop : mémorise l'état de l'entrée au moment de la synchronisation. Les bascules D asynchrones n'ont pas de sens.

La RAM n'est pas adaptée pour stocker des données intermédiaires, car elle ralentira le processeur. Les données intermédiaires sont envoyées aux registres sur le bus. Ils peuvent stocker des commandes, des données de sortie et même des adresses de cellules de mémoire.

Le principe de fonctionnement du déclencheur RS

Mémoire (RAM)

La RAM (mémoire à accès aléatoire) est un grand groupe de ces mêmes registres connectés entre eux. La mémoire d'un tel stockage est volatile et les données qui s'y trouvent disparaissent lorsque l'alimentation est coupée. La RAM prend l'adresse de l'emplacement mémoire où les données doivent être placées, les données elles-mêmes et un indicateur d'écriture/lecture qui déclenche les déclencheurs.

Environ. trad. La mémoire vive est statique et dynamique - SRAM et DRAM, respectivement. Dans la mémoire statique, les cellules sont des déclencheurs et dans la mémoire dynamique, des condensateurs. La SRAM est plus rapide et la DRAM est moins chère.

Commandes (instructions)

Les commandes sont les actions réelles que l'ordinateur doit entreprendre. Ils sont de plusieurs types :

  • Arithmétique: addition, soustraction, multiplication, etc.
  • casse-tête: ET (multiplication / conjonction logique), OU (somme logique / disjonction), négation, etc.
  • Informations: déplacer, entrer, sortir, charger et stocker.
  • Commandes de saut: aller à, si ... aller à, appeler et revenir.
  • Commande d'arrêt: arrêt.

Environ. trad. En fait, toutes les opérations arithmétiques dans ALU peuvent être créées sur la base de seulement deux : l'addition et le décalage. Cependant, plus une ALU prend en charge les opérations de base, plus elle est rapide.

Les instructions sont fournies à l'ordinateur en langage assembleur ou générées par un compilateur de langage de haut niveau.

Dans un processeur, les instructions sont implémentées dans le matériel. En un cycle d'horloge, un processeur monocœur peut exécuter une instruction élémentaire (de base).

Un groupe d'instructions est généralement appelé un jeu d'instructions.

horloge du processeur

La vitesse d'un ordinateur est déterminée par la vitesse d'horloge de son processeur. Fréquence d'horloge - le nombre de cycles d'horloge (respectivement et commandes exécutables) par seconde.

La fréquence des processeurs actuels se mesure en GHz (Gigahertz). 1 GHz = 10 Hz - milliards d'opérations par seconde.

Pour réduire le temps d'exécution du programme, vous devez soit l'optimiser (le réduire), soit augmenter la fréquence d'horloge. Certains processeurs ont la capacité d'augmenter la fréquence (overclocker le processeur), mais de telles actions affectent physiquement le processeur et provoquent souvent une surchauffe et une panne.

Suivre les instructions

Les instructions sont stockées dans la RAM dans l'ordre séquentiel. Pour un processeur hypothétique, une instruction se compose d'un opcode et d'une adresse mémoire/registre. A l'intérieur du dispositif de contrôle, il y a deux registres d'instructions, dans lesquels le code de commande et l'adresse de la commande actuellement exécutable sont chargés. Le processeur dispose également de registres supplémentaires qui stockent les 4 derniers bits des instructions exécutées.

Vous trouverez ci-dessous un exemple d'ensemble de commandes qui ajoute deux nombres :

  1. CHARGE_A 8. Cette commande enregistre les données dans la RAM, disons<1100 1000>... Les 4 premiers bits sont l'opcode. C'est lui qui définit l'instruction. Ces données sont placées dans les registres d'instructions UU. L'instruction est décodée dans l'instruction load_A - place les données 1000 (les 4 derniers bits de l'instruction) dans le registre A.
  2. CHARGE_B 2. La situation est similaire à la précédente. Cela place le numéro 2 (0010) dans le registre B.
  3. AJOUTER B A. La commande ajoute deux nombres (plus précisément, ajoute la valeur du registre B au registre A). L'UU dit à l'ALU d'effectuer l'opération de somme et de remettre le résultat dans le registre A.
  4. MAGASIN_A 23. Nous sauvegardons la valeur du registre A dans l'emplacement mémoire 23.

Ce sont les opérations nécessaires pour additionner deux nombres.

Pneu

Toutes les données entre le processeur, les registres, la mémoire et les périphériques d'E / S (périphériques d'entrée-sortie) sont transférées sur des bus. Pour charger les données nouvellement traitées en mémoire, le processeur place l'adresse sur le bus d'adresses et les données sur le bus de données. Ensuite, vous devez autoriser l'écriture sur le bus de contrôle.

Cacher

Le processeur a un mécanisme pour stocker des instructions dans le cache. Comme nous l'avons appris précédemment, un processeur peut exécuter des milliards d'instructions en une seconde. Par conséquent, si chaque instruction était stockée dans la RAM, sa suppression prendrait plus de temps que son traitement. Par conséquent, pour accélérer le travail, le processeur stocke une partie des instructions et des données dans le cache.

Si les données du cache et de la mémoire ne correspondent pas, elles sont marquées par des bits modifiés.

Flux d'instructions

Les processeurs modernes peuvent traiter plusieurs instructions en parallèle. Lorsqu'une instruction est au stade de décodage, le processeur peut avoir le temps de recevoir une autre instruction.

Cependant, cette solution ne convient que pour des instructions indépendantes les unes des autres.

Un processeur multicœur signifie qu'il contient en fait plusieurs processeurs distincts avec des ressources partagées, telles que le cache.

Structure du processeur

Pour expliquer clairement à un non-professionnel le fonctionnement du processeur central d'un ordinateur, réfléchissez aux blocs qui le composent :

Unité de contrôle du processeur ;

Registres de commandes et de données ;

Dispositifs arithmétiques et logiques (effectuer des opérations arithmétiques et logiques);

Un bloc d'opérations avec des nombres réels, c'est-à-dire avec des nombres à virgule flottante ou, plus simplement, avec des fractions (FPU) ;

Mémoire tampon (cache) du premier niveau (séparément pour les instructions et les données) ;

Mémoire tampon (cache) du deuxième niveau pour stocker des résultats de calcul intermédiaires ;

La plupart des processeurs modernes ont également un cache L3 ;

Interface de bus système.

Comment fonctionne le processeur

L'algorithme du processeur central d'un ordinateur peut être représenté comme une séquence des actions suivantes.

L'unité de contrôle du processeur prend de la RAM, dans laquelle le programme est chargé, certaines valeurs (données) et commandes qui doivent être exécutées (instructions). Ces données sont chargées dans le cache du processeur.

A partir de la mémoire tampon du processeur (cache), les instructions et les données reçues sont écrites dans des registres. Les instructions sont placées dans des registres d'instructions et les valeurs dans des registres de données.

L'unité arithmétique et logique lit les instructions et les données des registres correspondants du processeur et exécute ces instructions sur les nombres reçus.

Les résultats sont à nouveau écrits dans les registres et, si les calculs sont terminés, dans la mémoire tampon du processeur. Le processeur a très peu de registres, il est donc obligé de stocker des résultats intermédiaires dans la mémoire cache de différents niveaux.

Les nouvelles données et commandes nécessaires aux calculs sont chargées dans le cache de niveau supérieur (du troisième au deuxième, du deuxième au premier), et les données inutilisées, au contraire, dans le cache de niveau inférieur.

Si le cycle de calcul est terminé, le résultat est écrit dans RAM l'ordinateur pour libérer de l'espace dans la mémoire tampon du processeur pour de nouveaux calculs. La même chose se produit lorsque la mémoire cache déborde de données : les données inutilisées sont déplacées vers le cache de niveau inférieur ou vers la RAM.

La séquence de ces opérations forme le fil conducteur du processeur. Le processeur devient très chaud pendant le fonctionnement. Pour éviter que cela ne se produise, vous devez nettoyer l'ordinateur portable à la maison en temps opportun.

Pour accélérer le CPU et augmenter les performances de calcul, de nouvelles solutions architecturales sont constamment développées pour augmenter l'efficacité du processeur. Parmi eux, l'exécution en pipeline des opérations, le traçage, c'est-à-dire une tentative d'anticipation actions du programme, traitement parallèle de commandes (instructions), multithreading et multicore.

Un processeur multicœur possède plusieurs cœurs de calcul, c'est-à-dire plusieurs unités arithmétiques-logiques, des unités de calcul à virgule flottante et des registres, ainsi qu'un cache de premier niveau, chacun combiné dans son propre cœur. Les cœurs ont une mémoire tampon commune des deuxième et troisième niveaux. L'apparition de la mémoire cache L3 a été précisément causée par le multicœur et, par conséquent, le besoin d'une plus grande quantité de mémoire tampon rapide pour stocker les résultats de calcul intermédiaires.

Les principaux indicateurs affectant la vitesse de traitement d'un processeur sont le nombre de cœurs de traitement, la longueur du pipeline, la fréquence d'horloge et la mémoire cache. Pour augmenter les performances d'un ordinateur, il est souvent nécessaire de changer de processeur, ce qui entraîne le remplacement de la carte mère et de la RAM. Nos spécialistes vous aideront à mettre à niveau, configurer et réparer votre ordinateur à domicile à Moscou. centre de services si le processus vous fait peur auto-assemblage et des mises à niveau informatiques.

© 2021 hecc.ru - Actualités informatiques