Quelle est la différence entre les processeurs scalaires et superscalaires?
Il existe différents types d’unités centrales disponibles pour les ordinateurs. Ces types de CPU ne diffèrent pas vraiment en termes de matériel de traitement et d'architecture. La plupart d'entre eux exécutent les tâches de base d'un processeur, telles que la lecture et l'écriture de données, l'arithmétique de base et le saut d'adresse. Ils peuvent toutefois différer en termes de taille de bus et d'architecture de processeur. Plusieurs types de matériel de processeur d’ordinateur sont disponibles, dont deux sont les processeurs scalaire et superscalaire.
Un processeur qui exécute des données scalaires est appelé un processeur scalaire. À l'aide d'opérandes à point fixe, les instructions entières sont exécutées par les processeurs scalaires même dans leur état le plus simple. Des processeurs scalaires plus puissants exécutent généralement des opérations à virgule flottante et à nombre entier. Les processeurs scalaires récemment produits contiennent à la fois une unité à virgule flottante et une unité entière, le tout sur la même puce CPU. La plupart de ces processeurs scalaires modernes utilisent des instructions du type 32 bits.
Le processeur superscalaire, quant à lui, exécute plusieurs instructions à la fois en raison de son grand nombre de pipelines. Cette structure de CPU implémente un parallélisme au niveau des instructions, qui est une forme de parallélisme dans le matériel informatique, au sein d'un seul processeur d'ordinateur. Cela signifie qu'il peut permettre un débit de processeur rapide, ce qui n'est même pas possible à distance avec d'autres processeurs qui n'implémentent pas le parallélisme au niveau des instructions. Au lieu d'exécuter une instruction à la fois, un processeur superscalaire utilise ses unités fonctionnelles redondantes pour l'exécution de plusieurs instructions. Ces unités fonctionnelles ne sont pas des cœurs d'UC distincts, mais des ressources d'extension d'UC unique, telles que des multiplicateurs, des décaleurs de bits et des unités arithmétiques et logiques (ALU).
Les différences entre les processeurs scalaires et superscalaires se résument généralement à la quantité et à la vitesse. Un processeur scalaire, considéré comme le plus simple de tous les processeurs, fonctionne sur un ou deux éléments de données informatiques à un moment donné. Le processeur superscalar fonctionne sur plusieurs instructions et sur plusieurs groupes d'éléments de données à la fois. Les processeurs scalaires et superscalaires fonctionnent de la même manière en ce qui concerne la manière dont ils manipulent les données, mais leur différence réside dans le nombre de manipulations et d'éléments de données sur lesquels ils peuvent travailler à un moment donné. Les processeurs Superscalar peuvent gérer plusieurs instructions et éléments de données, alors que le processeur scalaire ne le peut tout simplement pas, ce qui en fait un processeur plus puissant que le dernier.
Les processeurs scalaires et superscalaires présentent des similitudes avec les processeurs vectoriels. Comme un processeur scalaire, un processeur vectoriel exécute également une seule instruction à la fois, mais au lieu de manipuler un seul élément de données, son instruction unique peut accéder à plusieurs éléments de données. Semblable au processeur superscalaire, un processeur vectoriel possède plusieurs unités fonctionnelles redondantes qui lui permettent de manipuler plusieurs données, mais il ne peut fonctionner que sur une seule instruction à la fois. Essentiellement, un processeur superscalaire est une combinaison d'un processeur scalaire et d'un processeur vectoriel.