introduction
L'unité centrale de traitement (CPU) est l'un des principaux équipements des calculateurs électroniques et le composant central des ordinateurs. Sa fonction est principalement d'interpréter des instructions informatiques et de traiter des données dans des logiciels informatiques. Le CPU est le composant central de l'ordinateur qui est responsable de la lecture des instructions, du décodage et de l'exécution des instructions. L'unité centrale comprend principalement deux parties, à savoir le contrôleur et l'unité de calcul, qui comprend également la mémoire tampon à grande vitesse et le bus qui réalise les données et le contrôle de la connexion entre eux. Les trois composants principaux d'un ordinateur électronique sont le processeur, la mémoire interne et les périphériques d'entrée/sortie. Les fonctions de l'unité centrale sont principalement de traiter des instructions, d'effectuer des opérations, de contrôler le temps et de traiter des données.
Dans l'architecture informatique, le CPU est l'unité matérielle centrale qui contrôle toutes les ressources matérielles de l'ordinateur (telles que la mémoire, les unités d'entrée et de sortie) et effectue des opérations générales. Le processeur est le cœur de calcul et de contrôle de l'ordinateur. Le fonctionnement de toutes les couches logicielles du système informatique sera finalement mappé au fonctionnement du processeur via le jeu d'instructions.
Historique du développement
Le CPU est apparu à l'ère des circuits intégrés à grande échelle. La mise à jour itérative de la conception de l'architecture du processeur et l'amélioration continue de la technologie des circuits intégrés ont favorisé son développement et son amélioration continus. D'abord dédié aux calculs mathématiques à largement utilisé dans les calculs généraux, des processeurs 4 bits à 8 bits, 16 bits, 32 bits, et enfin aux processeurs 64 bits, de l'incompatibilité des différents constructeurs à l'émergence de différents Spécifications de l'architecture du jeu d'instructions, Le CPU s'est développé rapidement depuis sa création.
Le développement de processeurs a une histoire de plus de 40 ans. Nous le divisons généralement en six étapes.
(1) La première étape (1971-1973). C'est l'ère des microprocesseurs bas de gamme 4 bits et 8 bits, et le produit représentatif est le processeur Intel 4004.
En 1971, le microprocesseur 4004 d'Intel intégra une unité arithmétique et un contrôleur sur une seule puce, marquant la naissance du CPU ; en 1978, l'apparition du processeur 8086 a jeté les bases de l'architecture du jeu d'instructions X86. Par la suite, les processeurs de la série 8086 ont été largement utilisés dans les terminaux d'ordinateurs personnels, les serveurs hautes performances et les serveurs cloud.
(2) La deuxième étape (1974-1977). C'est l'ère des microprocesseurs 8 bits milieu de gamme et le produit représentatif est Intel 8080. A cette époque, le système de commande est relativement complet.
(3) La troisième étape (1978-1984). C'est l'ère des microprocesseurs 16 bits, et le produit représentatif est Intel 8086. Relativement parlant, il est relativement mature.
(4) La quatrième étape (1985-1992). C'est l'ère des microprocesseurs 32 bits, et le produit représentatif est Intel 80386. Déjà capable d'opérations multitâches et multi-utilisateurs.
Le processeur 80486 sorti en 1989 implémentait un pipeline scalaire à 5 niveaux, marquant la maturité initiale du CPU et la fin de la phase de développement du processeur traditionnel.
(5) La cinquième étape (1993-2005). C'est l'ère de la série de microprocesseurs Pentium.
En novembre 1995, Intel a lancé le processeur Pentium, qui a pour la première fois adopté une structure de pipeline d'instructions superscalaire, introduit une exécution désordonnée des instructions et une technologie de prédiction de branchement, ce qui a considérablement amélioré les performances du processeur. Par conséquent, la structure du pipeline d'instructions superscalaire a été adoptée par les processeurs modernes ultérieurs, tels que les AMD (Advanced Micro devices) Ryzen et la série Core d'Intel.
(6) La sixième étape (2005 à 2021). Le processeur évolue progressivement vers plus de cœurs et un parallélisme plus élevé. Les représentants typiques sont les processeurs de la série Core d'Intel et les processeurs de la série Ryzen d'AMD.
Afin de répondre aux exigences de travail de niveau supérieur du système d'exploitation, les processeurs modernes ont introduit des fonctions telles que la parallélisation, le multicœur, la virtualisation et les systèmes de gestion à distance, qui continuent de promouvoir le développement de systèmes d'information de niveau supérieur.
Principe de fonctionnement
L'architecture Von Neumann est la base des ordinateurs modernes. Dans cette architecture, les programmes et les données sont stockés de manière unifiée. Les instructions et les données doivent être accessibles depuis le même espace de stockage, transmises via le même bus, et ne peuvent pas se chevaucher pour l'exécution. Selon le système Von Neumann, le travail de la CPU est divisé en cinq étapes : étape de récupération d'instructions, étape de décodage d'instructions, étape d'exécution d'instructions, numéro d'accès et réécriture du résultat.
L'extraction d'instruction (IF, instruction fetch) est le processus d'extraction d'une instruction de la mémoire principale vers le registre d'instructions. La valeur dans le compteur de programme est utilisée pour indiquer la position de l'instruction en cours dans la mémoire principale. Lorsqu'une instruction est récupérée, la valeur dans le PC augmentera automatiquement en fonction de la longueur du mot d'instruction.
Dans l'étape de décodage d'instructions (ID, décodage d'instructions), après avoir récupéré l'instruction, le décodeur d'instructions divise et interprète l'instruction récupérée selon le format d'instruction prédéterminé, identifiant et distinguant différents types d'instructions et diverses méthodes d'obtention d'opérandes. Les processeurs CISC modernes se diviseront pour améliorer le parallélisme et l'efficacité.
L'étape d'instruction d'exécution (EX, execute), qui implémente spécifiquement la fonction de l'instruction. Les différentes parties de la CPU sont connectées pour effectuer les opérations requises.
Accédez à l'étage de numéro d'accès (MEM, mémoire), selon les besoins de l'instruction pour accéder à la mémoire principale, lisez l'opérande, la CPU obtient l'adresse de l'opérande dans la mémoire principale et lit l'opération à partir de la mémoire principale Les nombres sont utilisés pour les calculs. Certaines instructions n'ont pas besoin d'accéder à la mémoire principale, vous pouvez sauter cette étape.
Étape de réécriture du résultat (WB, réécriture), en tant que dernière étape, l'étape de réécriture du résultat "réécrit" les données de résultat en cours de l'étape d'instruction d'exécution dans une forme de stockage. Les données de résultat sont généralement écrites dans le registre interne de la CPU afin qu'elles soient rapidement accessibles par des instructions ultérieures ; de nombreuses instructions changeront également l'état des bits d'indicateur dans le registre du mot d'état du programme. Ces bits indicateurs indiquent différents résultats d'opération et peuvent être utilisés pour influencer les actions du programme.
Une fois l'instruction exécutée et les données de résultat réécrites, si aucun événement inattendu (tel qu'un débordement de résultat, etc.) ne se produit, l'ordinateur obtient l'adresse de l'instruction suivante à partir du compteur de programme et démarre un nouveau cycle. Un cycle d'instructions va chercher l'instruction suivante dans la séquence.
Performances et structure
Indicateurs de mesure du rendement
Pour le CPU, les indicateurs qui affectent ses performances incluent principalement la fréquence principale, le nombre de bits CPU, et le jeu d'instructions du cache CPU, le nombre de cœurs CPU et l'IPC (nombre d'instructions par cycle). La fréquence du CPU fait référence à la fréquence d'horloge, qui détermine directement les performances du CPU. Vous pouvez augmenter la fréquence du processeur en overclockant pour obtenir des performances plus élevées. Le nombre de bits CPU fait référence au nombre de nombres à virgule flottante que le processeur peut calculer à la fois. En règle générale, plus le nombre de bits du processeur est élevé, plus le processeur effectue les opérations rapidement. Après les années 1920, les processeurs utilisés dans les ordinateurs personnels sont généralement 64 bits. En effet, les processeurs 64 bits peuvent traiter une plus grande gamme de données et prennent en charge nativement une capacité d'adressage mémoire plus élevée, ce qui améliore l'efficacité du travail des personnes. Le jeu d'instructions de cache du processeur est stocké à l'intérieur du processeur, ce qui fait principalement référence au programme matériel qui peut guider et optimiser le fonctionnement du processeur. De manière générale, le cache d'un processeur peut être divisé en un cache de premier niveau, un cache de deuxième niveau et un cache de troisième niveau. Les performances du cache affectent directement les performances de traitement du processeur. Certains processeurs dotés de fonctions spéciales peuvent être équipés d'un cache à quatre niveaux.
Structure du processeur
De manière générale, la structure d'une CPU peut être grossièrement divisée en composants logiques arithmétiques, composants de registre et composants de contrôle. Les composants logiques dits arithmétiques sont principalement capables d'effectuer des opérations logiques connexes, telles que : des opérations de décalage et des opérations logiques, en plus des opérations arithmétiques à virgule fixe ou flottante, et des opérations d'adressage et des commandes de conversion. Unité arithmétique fonctionnelle. Le composant registre est utilisé pour stocker temporairement des instructions, des données et des adresses. Le composant de contrôle est principalement utilisé pour analyser l'instruction et peut envoyer le signal de contrôle correspondant. La mémoire de l'ordinateur peut être divisée en mémoire vive (RAM) et en mémoire morte (ROM). La différence entre les deux est que la mémoire vive peut échanger directement des données avec le processeur et peut également être appelée mémoire principale. La RAM peut être lue et écrite à tout moment, et la vitesse de ce processus est très rapide. Par conséquent, en raison de cet avantage de la mémoire principale, elle est souvent utilisée comme support de stockage de données temporaire pour les systèmes d'exploitation ou d'autres programmes en cours d'exécution ; et la mémoire morte ROM est une sorte de mémoire qui ne peut lire que les données stockées à l'avance. L'utilisateur n'a pas le droit de modifier les données qui y sont stockées et ne peut pas les supprimer, et les données ne disparaîtront pas après la mise hors tension. Ce type de mémoire a également été largement utilisé et a été bien utilisé dans les systèmes électroniques ou informatiques où les données n'ont pas besoin d'être modifiées fréquemment.
Pour l'unité centrale, elle peut être considérée comme un circuit intégré à grande échelle dont la tâche principale est de traiter et traiter diverses données. La capacité de stockage de l'ordinateur traditionnel est relativement faible, il a certaines difficultés dans le processus de traitement de données à grande échelle et l'effet de traitement est relativement faible. Avec le développement rapide du niveau de technologie de l'information de mon pays, un ordinateur à processeur haute configuration est apparu et le processeur haute configuration est utilisé comme centre de contrôle, ce qui joue un rôle important dans l'amélioration de la structure et de la fonction du processeur de l'ordinateur. La partie centrale de l'unité centrale de traitement est le contrôleur et l'unité arithmétique, qui jouent un rôle important dans l'amélioration du fonctionnement global de l'ordinateur. Il peut réaliser la prolifération de plusieurs fonctions telles que le contrôle de registre, le fonctionnement logique, la transmission et la réception de signaux, et constitue une bonne base pour améliorer les performances de l'ordinateur. Fondation.
Les circuits intégrés agissent comme des signaux de commande dans l'ordinateur et exécutent différentes tâches de commande selon les instructions de fonctionnement de l'utilisateur. L'unité centrale est un circuit intégré à très grande échelle. Il est composé d'unités arithmétiques, de contrôleurs, de registres, etc., comme le montre la figure ci-dessous. L'opération clé réside dans le traitement et le traitement de diverses données.
Les ordinateurs traditionnels ont une capacité de stockage relativement petite et une faible efficacité de fonctionnement pour les ensembles de données à grande échelle. La nouvelle génération d'ordinateurs utilise un processeur haute configuration comme centre de contrôle, et le processeur a beaucoup de place pour l'amélioration en termes de structure et de fonction. L'unité centrale de traitement utilise des unités arithmétiques et des contrôleurs comme dispositifs principaux et se déploie progressivement en de multiples fonctions telles que les opérations logiques, le contrôle de registre, le codage de programme et la transmission et la réception de signaux. Tous ces éléments accélèrent l'optimisation et la mise à niveau des performances de contrôle du processeur.
bus CPU
Le bus CPU est le bus le plus rapide d'un système informatique et constitue également le cœur du chipset et de la carte mère. Les gens appellent généralement le bus local directement connecté au bus CPU CPU ou au bus interne, et appellent ces bus locaux connectés à divers emplacements d'extension à usage général comme bus système ou bus externe. Dans une CPU avec une structure interne relativement unique, il n'y a souvent qu'un ensemble de bus de transfert de données, c'est-à-dire le bus interne de la CPU, qui sert à connecter les registres internes de la CPU et les composants d'opération logique arithmétique, donc ce type de bus peut également être appelé C'est le bus ALU. Le bus à l'intérieur du composant connecte les puces entre elles en utilisant un ensemble de bus, on peut donc l'appeler le bus à l'intérieur du composant, qui contient généralement deux ensembles de lignes, la ligne d'adresse et la ligne de données. Le bus système fait référence à la ligne qui relie les différents composants à l'intérieur du système et sert de base à la connexion de l'ensemble du système ; le bus à l'extérieur du système est la ligne de base qui relie l'ordinateur et d'autres appareils ensemble.
La partie centrale
L'unité arithmétique
L'unité arithmétique est la partie de l'ordinateur qui effectue diverses opérations arithmétiques et logiques, et l'unité arithmétique et logique est la partie centrale de traitement.
(1) Unité arithmétique et logique (ALU). L'unité logique arithmétique fait référence à un circuit logique combinatoire qui peut réaliser plusieurs ensembles d'opérations arithmétiques et d'opérations logiques, et c'est une partie importante du traitement central. Le fonctionnement de l'unité arithmétique et logique consiste principalement à effectuer des opérations arithmétiques à deux bits, telles que l'addition, la soustraction et la multiplication. Dans le processus de calcul, l'unité arithmétique et logique consiste principalement à effectuer des opérations arithmétiques et logiques dans une instruction informatique centralisée. D'une manière générale, ALU peut jouer le rôle de lecture et de lecture directe, ce qui se reflète spécifiquement dans le contrôleur du processeur, la mémoire et les périphériques d'entrée et de sortie. , L'entrée et la sortie sont implémentées sur la base du bus. L'instruction d'entrée contient un mot d'instruction, comprenant un code d'opération, un code de format, etc.
(2) Registre intermédiaire (IR). Sa longueur est de 128 bits et sa longueur réelle est déterminée par l'opérande. L'IR joue un rôle important dans l'instruction « pousser dans la pile et récupérer ». Pendant l'exécution de cette instruction, le contenu de ACC est envoyé à IR, puis l'opérande est récupéré à ACC, puis le contenu de IR est mis sur la pile.
(3) Accumulateur opérationnel (ACC). Les registres courants sont généralement des accumulateurs simples d'une longueur de 128 bits. Pour l'ACC, il peut être considéré comme un accumulateur de longueur variable. Dans le processus de narration des instructions, l'expression de la longueur de l'ACC est généralement basée sur la valeur de l'ACS, et la longueur de l'ACS est directement liée à la longueur de l'ACC, doubler ou diviser par deux la longueur de l'ACS peut également être considéré comme un doublement. ou réduire de moitié la longueur de l'ACC.
(4) Registre de mots de description (DR). Il est principalement utilisé pour stocker et modifier des mots de description. La longueur de DR est de 64 bits. Afin de simplifier le traitement de la structure des données, l'utilisation de mots de description joue un rôle important.
(5) Registre B. Il joue un rôle important dans la modification des instructions. La longueur du registre B est de 32 bits et la quantité de modification d'adresse peut être enregistrée lors du processus de modification de l'adresse. L'adresse de la mémoire principale ne peut être modifiée qu'avec un mot de description. Le pointage sur le premier élément du tableau est le mot de description, donc l'accès aux autres éléments du tableau doit nécessiter un modificateur. Pour la composition des nombres, il est composé de données de même taille ou d'éléments de même taille, et est stocké en continu. La méthode d'accès commune est le mot de description vectorielle. Étant donné que l'adresse dans le mot de description vectorielle est une adresse d'octet, dans le processus de conversion, l'adresse de base doit être ajoutée en premier. Pour les travaux de conversion, il est principalement réalisé automatiquement par matériel. Dans ce processus, une attention particulière doit être accordée à l'alignement pour éviter de dépasser la limite du réseau.
Manette
Le contrôleur fait référence à la modification du câblage du circuit principal ou du circuit de commande et à la modification de la valeur de résistance dans le circuit selon une séquence prédéterminée pour contrôler le démarrage, la vitesse, le freinage et l'inversion du moteur. Vers l'appareil maître. Le contrôleur est composé du registre d'état du programme PSR, du registre d'état du système SSR, du compteur de programme PC et du registre d'instructions. En tant qu'« organe de décision », il a pour mission principale de donner des ordres et de jouer le rôle de coordination et de pilotage du fonctionnement de l'ensemble du système informatique. La classification du contrôle comprend principalement deux types, respectivement le contrôleur logique combinatoire, le contrôleur de microprogramme, les deux parties ont leurs propres avantages et inconvénients. Parmi eux, la structure du contrôleur logique combinatoire est relativement complexe, mais l'avantage est qu'elle est plus rapide ; la structure du contrôleur de microprogramme est simple, mais dans la modification d'une fonction d'instruction machine, tous les microprogrammes doivent être reprogrammés.
Présentation des marques associées
Puces de la série "Loongson"
Les puces de la série "Loongson" sont conçues et développées par l'Académie chinoise des sciences Zhongke Technology Co., Ltd., en utilisant la structure du système MIPS, avec des droits de propriété intellectuelle indépendants, les produits comprennent désormais trois séries de petits processeurs Loongson n ° 1, Loongson Processeur moyen n° 2 et gros processeur Loongson n° 3, en plus des puces pont Loongson 7A1000. Les processeurs Loongson 1 série 32/64 bits sont spécialement conçus pour le domaine embarqué, principalement utilisés dans les terminaux cloud, le contrôle industriel, l'acquisition de données, les terminaux portables, la sécurité des réseaux, l'électronique grand public et d'autres domaines, avec une faible consommation d'énergie, une intégration élevée et haute Caractéristiques telles que la performance des coûts. Parmi eux, le processeur Loongson 1A 32 bits et le processeur Loongson 1C 64 bits fonctionnent de manière stable à 266-300 MHz, et le processeur Loongson 1B est une puce 32 bits légère. Le processeur Loongson 1D est une puce dédiée pour les compteurs de chaleur à ultrasons, les compteurs d'eau et les compteurs de gaz. En 2015, la nouvelle génération de satellites de navigation Beidou est équipée des puces Loongson 1E et 1F développées indépendamment par mon pays. Ces deux puces sont principalement utilisées pour réaliser la tâche de traitement des données 1 de la liaison inter-satellites.
La série Loongson 2 est constituée de processeurs 64 bits hautes performances et basse consommation pour les applications embarquées de bureau et haut de gamme. Les produits Loongson 2 incluent les puces Loongson 2E, 2F, 2H et 2K1000. Pour la première fois, Loongson 2E a obtenu une autorisation de production et de vente externe. La performance moyenne de Loongson 2F est supérieure de plus de 20 % à celle de Loongson 2E. Il peut être utilisé dans les ordinateurs personnels, les terminaux industriels, le contrôle industriel, l'acquisition de données, la sécurité des réseaux et d'autres domaines. Loongson 2H a lancé son produit officiel en 2012, qui convient aux besoins des ordinateurs, des terminaux cloud, des équipements réseau, de l'électronique grand public et d'autres domaines, et peut être utilisé comme une puce complète avec des interfaces HT ou PCI-e. En 2018, Loongson a lancé le processeur Loongson 2K1000, qui est principalement une puce de traitement double cœur pour le domaine de la sécurité des réseaux et de l'intelligence mobile. La fréquence principale peut atteindre 1 GHz, ce qui peut répondre aux besoins du développement rapide de l'Internet des objets industriel et d'un système de sécurité industrielle indépendant et contrôlable.
La série Loongson 3 est constituée de processeurs multicœurs pour ordinateurs, serveurs et applications de bureau haut de gamme hautes performances, offrant une bande passante élevée, des performances élevées et une faible consommation d'énergie. Le processeur Loongson 3A3000/3B3000 adopte une conception de microstructure indépendante et la fréquence principale peut atteindre 1,5 GHz ou plus ; le Loongson 3A4000, dont la commercialisation est prévue en 2019, est la première puce quadricœur du produit de troisième génération de Loongson. La puce est basée sur un processus de 28 nm et adopte de nouvelles recherches et développements. Architecture de cœur de processeur hautes performances GS464V 64 bits et implémente des instructions vectorielles 256 bits, tout en optimisant l'interconnexion sur puce et l'accès à la mémoire, contrôleur de mémoire DDR3/4 64 bits intégré, mécanisme de sécurité sur puce intégré, fréquence principale et performances Il a encore été grandement amélioré.
Le chevalet Loongson 7A1000 est le premier ensemble de chevalets dédié de Loongson. L'objectif est de remplacer l'ensemble pont AMD RS780+SB710 et de fournir la fonction pont nord-sud pour le processeur Loongson. Il est sorti en février 2018 et est actuellement utilisé sur une plate-forme réseau hautes performances avec Loongson 3A3000 et mémoire Ziguang 4G DDR3. Par rapport à la plate-forme 3A3000+780e, les performances globales du programme ont été considérablement améliorées et présentent les caractéristiques d'un taux de production national élevé, de performances élevées et d'une fiabilité élevée.
Intelligence
Selon le plan de gamme de produits Intel, à partir de 2021, le cœur grand public d'Intel de 11e génération comprend cinq types de produits : i9/i7/i5/i3/Pentium/Celeron. De plus, il existe Xeon Platinum/Gold/Silver/Bronze pour les serveurs et la série Xeon W pour la plate-forme HEDT.
DMLA
Selon la planification de la gamme de produits d'AMD, à partir de 2021, les processeurs AMD Ryzen série 5000 ont quatre gammes de produits grand public : ryzen9/ryzen7/ryzen5/ryzen3. En outre, il existe le processeur Xiaolong EPYC de troisième génération pour le marché des serveurs et la série de déchirures de fil pour la plate-forme HEDT.
Shanghai Zhaoxin
Shanghai Zhaoxin Integrated Circuit Co., Ltd. est une société holding d'État créée en 2013. Ses processeurs adoptent l'architecture x86. Les produits comprennent principalement les premiers ZX-A, ZX-c/ZX-C+, ZX-D, Kaixian KX-5000 et KX-6000 ; Kaisheng ZX-C+, ZX-D, KH-20.000, etc. Parmi eux, les processeurs de la série Kaixian KX-5000 adoptent le processus 28 nm et sont disponibles en versions 4 ou 8 cœurs. Les performances globales sont jusqu'à 140% supérieures à celles du produit de la génération précédente, atteignant le niveau de performance des processeurs à usage général grand public international, qui peut pleinement répondre aux applications Office de bureau du parti et du gouvernement, et une variété d'applications de divertissement, y compris 4K ultra-haute- visionnage vidéo en définition. Les processeurs de la série Kaisheng KH-20000 sont des produits CPU lancés par Zhaoxin pour les serveurs et autres équipements. Les processeurs de la série Kaixian KX-6000 ont une fréquence principale allant jusqu'à 3,0 GHz et sont compatibles avec une gamme complète de systèmes d'exploitation Windows et de systèmes d'exploitation contrôlables indépendants fabriqués dans le pays tels que Zhongke Fangde, Winner Kirin et PricewaterhouseCoopers. Les performances sont équivalentes à celles du Core i5 de septième génération d'Intel.
Shanghai Shenwei
Le processeur Shenwei est appelé "processeur Sw", de l'Alpha 21164 de DEC, adopte l'architecture Alpha, possède des droits de propriété intellectuelle complètement indépendants et ses produits ont un seul cœur Sw-1, un double cœur Sw-2, un quad-core Sw-410 , SW-1600/SW-1610 à seize cœurs, etc. Le supercalculateur Sunway Blu-ray utilise 8704 SW-1600, équipé du système d'exploitation Sunway Ruisi, réalisant toute la localisation des logiciels et du matériel. Depuis sa sortie en juin 2016, le supercalculateur "Shenwei·Lumière de Taihu" basé sur le Sw-26010 s'est classé premier dans le TOP 500 des supercalculateurs au monde à quatre reprises consécutives, et deux éléments sur le "Shenwei·Lumière de Taihu" Des dizaines de millions des applications de base des machines a remporté le prix « Gordon Bell », la plus haute récompense au monde pour les applications de calcul haute performance en 2016 et 2017.
Classification
Méthode de jeu d'instructions
La classification du CPU peut également être divisée en un ordinateur à jeu d'instructions réduit (RISC) et une instruction complexe selon la méthode du jeu d'instructions Set Computer (CISC). La longueur et le temps d'exécution des instructions RISC sont constants, tandis que la longueur et le temps d'exécution des instructions CISC ne le sont pas nécessairement. Le degré d'exécution parallèle des instructions RISC est meilleur et l'efficacité du compilateur est également plus élevée. L'instruction CISC a une meilleure optimisation pour différentes tâches, au prix de circuits complexes et plus difficile d'améliorer le parallélisme. Le jeu d'instructions CISC typique a la micro-architecture x86, et le jeu d'instructions RISC typique a la micro-architecture ARM. Cependant, dans les architectures de processeurs modernes, les instructions RISC et CISC seront converties pendant le processus de décodage et divisées en instructions de type RISC à l'intérieur du CPU.
Processeur système intégré
Embedding traditionnel Le type de domaine fait référence à une gamme très large, et c'est le domaine d'application principal des processeurs en plus des domaines serveur et PC. Le soi-disant "embarqué" signifie que dans de nombreuses puces, le processeur qu'il contient est comme s'il y était intégré et qu'il était inconnu.
Ces dernières années, avec le développement de diverses nouvelles technologies et de nouveaux domaines, le domaine embarqué lui-même a également été développé en plusieurs sous-domaines différents et s'est différencié.
Tout d'abord, avec le développement des téléphones intelligents (Mobile Smart Phone) et des appareils portables (Mobile Devices), le domaine mobile s'est progressivement développé en un domaine indépendant qui rivalise voire dépasse le domaine PC en échelle. Étant donné que le processeur dans le domaine mobile doit charger le système d'exploitation Linux et implique un écosystème logiciel complexe, il a la même dépendance sérieuse à l'écosystème logiciel que le domaine PC.
Vient ensuite le champ intégré en temps réel (temps réel). Relativement parlant, ce domaine n'a pas une dépendance logicielle aussi grave, il n'y a donc pas de monopole absolu. Cependant, en raison de la promotion commerciale réussie de l'IP des processeurs ARM, l'architecture des processeurs ARM représente toujours la majeure partie de la part de marché. D'autres architectures de processeurs telles que Synopsys ARC, etc. ont également de bons résultats sur le marché.
Enfin est le champ profond intégré. Ce champ ressemble davantage au champ intégré traditionnel mentionné précédemment. La demande dans ce domaine est très importante, mais elle prête souvent attention à une faible consommation d'énergie, à un faible coût et à une efficacité énergétique élevée. Il n'est pas nécessaire de charger un grand système d'exploitation d'application comme Linux. La plupart des logiciels nécessitent des programmes bare metal personnalisés ou de simples systèmes d'exploitation en temps réel. Par conséquent, la dépendance à l'écologie logicielle est relativement faible.
CPU mainframe
Mainframe, ou mainframe. Les mainframes utilisent des jeux d'instructions de processeur, des systèmes d'exploitation et des logiciels d'application dédiés. Le terme mainframe faisait à l'origine référence à un grand système informatique logé dans une très grande boîte en fer avec un cadre pour le distinguer des mini-ordinateurs et micro-ordinateurs plus petits.
Réduire la consommation du processeur mainframe est une tâche importante. L'enregistrement de chaque cycle de processeur peut non seulement retarder les mises à niveau matérielles, mais également réduire les frais de licence logicielle en fonction de l'échelle d'utilisation.
L'architecture mainframe comprend principalement les deux points suivants : un degré élevé de virtualisation et toutes les ressources système sont partagées. Le mainframe peut intégrer un grand nombre de charges en une seule et maximiser l'utilisation des ressources ; opérations d'E/S asynchrones. C'est-à-dire que lorsque l'opération d'E/S est effectuée, la CPU remet les instructions d'E/S au sous-système d'E/S pour qu'elles soient terminées, et la CPU elle-même est libérée pour exécuter d'autres instructions. Par conséquent, l'hôte peut effectuer d'autres tâches en même temps tout en effectuant des tâches d'E/S lourdes.
La principale forme de technologie de contrôle CPU
La puissante fonction de traitement des données de l'unité centrale de traitement a efficacement amélioré l'efficacité du travail de l'ordinateur. Dans l'opération de traitement de données, il ne s'agit pas d'une simple opération, le fonctionnement de l'unité centrale est basé sur les tâches d'instruction émises par les utilisateurs de l'ordinateur. Lors de l'exécution des tâches d'instructions, les instructions de contrôle saisies par l'utilisateur correspondent à la CPU. Avec le développement rapide des technologies de l'information dans notre pays, les ordinateurs sont largement utilisés dans la vie, le travail et la bureautique des entreprises. En tant que dispositif de contrôle principal, ils favorisent le développement des réseaux de commerce électronique et améliorent les performances de contrôle du processeur. Le processus a été grandement amélioré. Le contrôle des commandes, le contrôle réel, le contrôle des opérations, etc. sont les performances de l'application de la technologie des processeurs informatiques.
(1) Contrôle de sélection. Le fonctionnement du mode de traitement centralisé est mis en œuvre sur la base d'instructions de programme spécifiques pour répondre aux besoins des utilisateurs d'ordinateurs. La CPU peut choisir en fonction de la situation réelle pendant l'opération pour répondre aux exigences de flux de données de l'utilisateur. Le rôle important joué par la technologie de commande et de contrôle. Selon les besoins des utilisateurs, la méthode de calcul est formulée, de sorte que la formulation ordonnée des actions de commande de données soit bien maintenue. Pendant l'exécution de la CPU, la mise en œuvre des instructions du programme s'effectue en douceur, et ce n'est qu'en suivant une certaine séquence que l'effet d'utilisation de l'ordinateur peut être garanti. Le processeur sert principalement à étendre le traitement automatique des ensembles de données, ce qui est la clé pour réaliser un contrôle centralisé, et son cœur est l'opération de contrôle des instructions.
(2) Contrôle d'insertion. La génération du signal de commande de fonctionnement par la CPU est principalement réalisée par la fonction d'instructions, et le but de contrôler ces composants est atteint en envoyant les instructions aux composants correspondants. La réalisation d'une fonction d'instruction est principalement accomplie par une séquence d'opérations exécutées par les composants de l'ordinateur. Des composants de contrôle plus petits sont la clé de la construction d'un mode de traitement centralisé, le but est de mieux compléter les opérations de traitement des données du processeur.
(3) Contrôle du temps. L'application de la synchronisation temporelle à diverses opérations est ce qu'on appelle le contrôle du temps. Lorsqu'une instruction est exécutée, elle doit être terminée dans le temps spécifié. L'instruction de la CPU est extraite du cache ou de la mémoire, puis l'opération de décodage d'instruction est effectuée, qui est principalement implémentée dans le registre d'instruction. Dans ce processus, il est nécessaire de faire attention à contrôler strictement le temps du programme.
Les problèmes de sécurité
Le développement florissant des CPU amène également de nombreux problèmes de sécurité. Le bogue FDIV (erreur de division en virgule flottante Pentium) apparu sur le processeur Pentium en 1994 peut provoquer des erreurs dans la division des nombres en virgule flottante ; l'instruction anormale F00F sur le processeur Pentium en 1997 peut faire planter le CPU ; la technologie d'exécution de confiance du processeur Intel en 2011 (TXT, technologie d'exécution de confiance) a un problème de dépassement de mémoire tampon, qui peut être utilisé par des attaquants pour une élévation de privilèges ; une vulnérabilité dans le composant du moteur de gestion Intel (ME, moteur de gestion) en 2017 peut conduire à l'exécution de code arbitraire non autorisé à distance ; en 2018, les deux vulnérabilités CPU de Meltdown et Spectre ont affecté presque tous les appareils informatiques fabriqués au cours des 20 dernières années, laissant les informations privées stockées sur des milliards d'appareils à risque d'être divulguées. Ces problèmes de sécurité ont gravement compromis la sécurité des réseaux nationaux, la sécurité des infrastructures critiques et la sécurité de l'information dans des secteurs importants, et ont causé ou causeront d'énormes pertes.
Comparaison du CPU et du GPU
GPU
Le GPU est le processeur d'image. Le flux de travail et la structure physique du CPU et du GPU sont à peu près similaires, par rapport à En ce qui concerne le CPU, le travail du GPU est plus unique. In most personal computers, the GPU is only used to draw images. If the CPU wants to draw a two-dimensional graph, it only needs to send an instruction to the GPU, and the GPU can quickly calculate all the pixels of the graph and draw the corresponding graph at the specified position on the display. Since the GPU generates a lot of heat, there is usually a separate heat sink on the graphics card.
Design structure
CPU has a powerful arithmetic operation unit, which can complete arithmetic calculations in a few clock cycles. At the same time, there is a large cache that can store a lot of data in it. In addition, there are complex logic control units, which reduce the delay by providing branch prediction capabilities when the program has multiple branches. GPU is based on a large throughput design, with many arithmetic operation units and very few caches. At the same time, GPU supports a large number of threads to run at the same time. If they need to access the same data, the cache will merge these accesses, which will naturally cause delay problems. Despite the delay, because of the large number of arithmetic operation units, it can achieve a very large throughput effect.
Usage scenarios
Obviously, because the CPU has a large number of caches and complex logic control units, it is very good at logic control and serial operations. In comparison, GPU has a large number of arithmetic operation units, so it can perform a large number of calculations at the same time. It is good at large-scale concurrent calculations. The calculation is large but there is no technical content, and it has to be repeated many times. In this way, the way we use GPU to increase the speed of program operation is obvious. Using CPU to do complex logic control and GPU to do simple but large arithmetic operations can greatly improve the running speed of the program.
Future development of CPU
The general-purpose central processing unit (CPU) chip is a basic component of the information industry and a core component of weaponry. my country's lack of CPU technology and industry with independent intellectual property rights has not only caused the information industry to be controlled by others, but also national security cannot be fully guaranteed. During the "Tenth Five-Year Plan" period, the national "863 Program" began to support independent research and development of CPUs. During the "Eleventh Five-Year Plan" period, the "Core Electronic Devices, High-end General-purpose Chips and Basic Software Products" ("Nuclear High Base") major project introduced the CPU achievements of the "863 Program" into the industry. Starting from the "Twelfth Five-Year Plan" period, my country has carried out independent research and development of CPU applications and pilot projects in many fields, forming an independent technology and industrial system within a certain range, which can meet the application needs of weapons, equipment, information technology and other fields. But foreign CPU monopolization has been long, and my country's independent research and development of CPU products and the maturity of the market will take some time.