En quoi les processeurs RISC et CISC sont-ils différents ?

Si vous êtes un passionné de technologie, vous avez peut-être entendu les mots ordinateur à jeu d'instructions réduit (RISC) et ordinateur à jeu d'instructions complexe (CISC). Et si vous en connaissez pas mal sur les ordinateurs, vous savez peut-être aussi que ces termes font référence à différentes manières de concevoir un processeur.

Par exemple, le processeur ARM de votre téléphone a une architecture RISC. En revanche, le processeur x86 de votre ordinateur a une conception CISC.

Mais quelle est la différence entre RISC et CISC ? Approfondissons un peu et découvrons.

Qu'est-ce qu'un jeu d'instructions ?

Chaque fois que nous parlons de différentes conceptions d'unité centrale de traitement (CPU), l'une des choses dont nous devons parler est le jeu d'instructions.

Le jeu d'instructions d'un CPU est l'ensemble des opérations qu'un CPU peut effectuer nativement. Ce sont les opérations qui sont codées dans la CPU au niveau matériel. Cet ensemble peut contenir de quelques à des milliers d'instructions, selon la conception du processeur.

En d'autres termes, un processeur ne peut effectuer aucune opération en dehors de son jeu d'instructions, car il n'a pas le matériel pour cela.

Utilisons une analogie pour mieux comprendre cela. Prenons l'exemple d'une ampoule. Le fabricant d'une ampoule a conçu l'ampoule pour convertir l'électricité en lumière. Et une ampoule peut le faire car le matériel le prend en charge nativement.

En substance, une ampoule ne peut convertir que l'électricité en lumière et rien d'autre.

De même, le jeu d'instructions d'une CPU est l'ensemble des opérations que le matériel de la CPU permet. Par exemple, presque tous les processeurs ont une instruction « Move » dans leur jeu d'instructions. L'instruction « Move » prend des données d'un espace de stockage source et les déplace vers un espace de stockage de destination.

Chaque fois qu'un processeur doit déplacer des données, il sait exactement comment le faire car le matériel a été conçu autour de lui.

En bref, un jeu d'instructions contient toutes les opérations qu'un processeur prend en charge au niveau matériel.

Comment fonctionne un processeur ?

Un processeur est un labyrinthe de circuits électriques. Ces circuits électriques sont conçus d'une certaine manière pour donner au CPU son jeu d'instructions natif. Ainsi, il ne sait que comment effectuer les opérations dans un jeu d'instructions, car il dispose des circuits pour le faire.

Pour que la CPU exécute une certaine opération, le circuit correspondant à cette opération est déclenché par un signal électrique. Et une fois qu'un circuit est déclenché, la CPU exécute la routine associée à ce circuit.

Pour que le processeur effectue des opérations complexes comme envoyer un tweet, les programmes logiciels déclenchent des millions de signaux électriques chaque seconde, chacun ciblant une instruction spécifique du jeu d'instructions du processeur.

C'est là qu'intervient le concept de RIS et CIS.

Qu'est-ce que le RISC ?

Comme son nom l'indique, un processeur basé sur RISC a un ensemble simplifié d'opérations. Ces instructions simplifiées atteignent des objectifs simples et ne prennent qu'un seul cycle.

Et parce que RISC a des instructions simples, le CPU n'a pas besoin d'avoir des circuits complexes pour exécuter ces instructions. C'est aussi pourquoi les conceptions RISC sont, du point de vue matériel, moins chères à mettre en œuvre.

Connexe : Pourquoi mon téléphone est-il plus lent que mon PC ? Explication des vitesses des smartphones et des ordinateurs de bureau

Pour comprendre plus en détail un processeur RISC, examinons les principes de conception des processeurs basés sur RISC.

Premièrement, les processeurs RISC terminent chaque instruction en un seul cycle.

Deuxièmement, les processeurs RISC n'effectuent des opérations que sur les données stockées dans des registres. En effet, l'un des principaux goulots d'étranglement de la capacité d'un processeur à accomplir des tâches est l'énorme décalage entre la vitesse du processeur et la vitesse de la mémoire principale. La mémoire principale est super lente par rapport à un CPU.

Connexe: Un guide rapide et sale de la RAM: ce que vous devez savoir

Ainsi, si un processeur doit utiliser des données stockées dans la mémoire principale, cela entraînera un goulot d'étranglement de l'unité et le processus sera lent. Dans une conception RISC, les données sont chargées et stockées dans les registres du CPU, car les registres sont beaucoup plus proches de la vitesse du CPU que la mémoire principale.

Troisièmement, les instructions RISC sont suffisamment simples pour qu'il n'y ait pas de couche de microcode interprétatif pour traduire les instructions sous des formes plus simples.

Et enfin, les conceptions RISC prennent en charge le pipeline pour exécuter des parties de plusieurs instructions en même temps. Étant donné que les processeurs de conception RISC ont des vitesses d'horloge plus élevées, ils sont exceptionnellement rapides. Le pipeline est un moyen de tirer parti de cette vitesse et d'exécuter des parties de plusieurs instructions pour plus d'efficacité.

Pour faire court, les processeurs RISC ont des instructions simples, des vitesses d'horloge plus élevées, une structure de pipeline efficace, une opération de stockage de charge sur les registres et peuvent exécuter des instructions en un cycle.

Qu'est-ce que le SCRC ?

Le CISC est l'opposé du RISC dans presque tous les domaines clés. Presque toutes les puces de bureau ont une conception CISC.

Premièrement, les instructions de conception CISC sont complexes et, par conséquent, nécessitent une couche de microcode pour être traduites en instructions simplex.

Deuxièmement, les instructions CISC peuvent nécessiter plusieurs cycles CPU pour s'exécuter.

Troisièmement, le pipeline n'est pas aussi efficace dans CISC et il est encore plus difficile à mettre en œuvre en raison de la nature complexe des instructions CISC.

En bref, les processeurs avec architecture CISC peuvent effectuer de nombreuses opérations en une seule instruction complexe. Mais l'instruction prend plusieurs cycles pour se terminer, est plus difficile à utiliser dans le pipeline et nécessite beaucoup de circuits sur le processeur.

RISC vs CISC : principales différences

La principale différence entre RISC et CISC réside dans le type d'instructions qu'ils exécutent.

Les instructions RISC sont simples, n'effectuent qu'une seule opération et un processeur peut les exécuter en un cycle.

Les instructions CISC, en revanche, contiennent un tas d'opérations. Ainsi, le CPU ne peut pas les exécuter en un cycle.

Les instructions sont également la raison pour laquelle les processeurs RISC prennent en charge le pipeline dès le départ et les processeurs CISC ont plus de mal avec cela. Avec RISC, les instructions sont suffisamment simples pour pouvoir être exécutées en plusieurs parties. C'est plus difficile à faire avec le CISC en raison de la nature complexe des instructions.

Ensuite, contrairement à RISC, les instructions CISC peuvent fonctionner directement à partir de la RAM. Ainsi, il n'est pas nécessaire d'effectuer des opérations de chargement/stockage séparées dans la conception CISC.

Enfin, la configuration matérielle requise pour une conception CISC est plus élevée que celle d'une conception RISC, car CISC nécessite l'intégration d'instructions complexes dans le matériel CPU. Essentiellement, ce que le CISC réalise avec le matériel, RISC vise à le réaliser avec le logiciel.

C'est pourquoi les programmes ciblant une architecture CISC ont moins de lignes de code car les instructions gèrent elles-mêmes de nombreuses opérations.

Il y a des avantages et des inconvénients à la fois au RISC et au CISC

Aucun processeur moderne n'est entièrement basé sur RISC ou CISC. Les processeurs modernes intègrent les philosophies de conception des deux architectures pour obtenir le meilleur des deux mondes. Par exemple, l'architecture x86 utilisée par AMD est principalement CISC, mais possède un microcode pour convertir des instructions complexes en instructions simples réduites de type RISC.

Ainsi, contrairement aux processeurs du siècle dernier, les processeurs modernes ont évolué au-delà d'une simple classification RISC ou CISC.