Architecture RISC.

Introduction (pompé sur commentcamarche.net)

L'architecture CISC

L'architecture CISC (Complex Instruction Set Computer, ce qui signifie "ordinateur avec jeu d'instructions complexes") est utilisée par tous les processeurs de type x86, c'est-à-dire les processeurs fabriqués par Intel, AMD, Cyrix, ... Les processeurs basés sur l'architecture CISC peuvent traiter des instructions complexes, qui sont directement câblées sur leurs circuits électroniques, c'est-à-dire que certaines instructions difficiles à créer à partir des instructions de base sont directement imprimées sur le silicium de la puce afin de gagner en rapidité d'exécution sur ces commandes. L'inconvénient de ce type d'architecture provient justement du fait que des fonctions supplémentaires sont imprimées sur le silicium, d'où un coût élevé. D'autre part, les instructions sont de longueurs variables et peuvent parfois prendre plus d'un cycle d'horloge ce qui les rend lentes à l'exécution étant donné qu'un processeur basé sur l'architecture CISC ne peut traîter qu'une instruction à la fois!


L'architecture RISC

Contrairement à l'architecture CISC, un processeur utilisant la technologie RISC (Reduced Instruction Set Computer, dont la traduction est "ordinateur à jeu d'instructions réduit") n'a pas de fonctions supplémentaires câblées. Cela impose donc des programmes ayant des instructions simples interprétables par le processeur. Cela se traduit par une programmation plus difficile et un compilateur plus puissant. Cependant vous vous dîtes qu'il peut exister des instructions qui ne peuvent pas être décrites à partir des instructions simples... En fait ces instructions sont tellement peu nombreuses qu'il est possible de les câbler directement sur le circuit imprimé sans alourdir de manière dramatique leur fabrication. L'avantage d'une telle architecture est bien évidemment le coût réduit au niveau de la fabrication des processeurs l'utilisant. De plus, les instructions, étant simples, sont exécutées en un cycle d'horloge, ce qui rend l'exécution des programmes plus rapides qu'avec des processeurs basés sur une architecture CISC. De plus, de tels processeurs sont capables de traîter plusieurs instructions simultanément en les traitant en parallèle.



Les 3 approches de conception :
  • Ascendante = compatibilité de la nouvelle architecture avec les versions antérieures.
  • Médiane = machine dédiée à l'exécution d'un langage particulier.
  • Descendante = architecture la mieux adaptée à l'application.

L'approche ascendante est celle employée pour l'architecture CISC (Intel Pentium).

L'approche descendante en 3 points:
  • Analyse des cas d'opérations fréquentes (=forte occurence) dans l'application visée.
  • Réalisation matérielle exécutant ces opérations.
  • Intégration de ces réalisations dans un pipe-line.

Les 9 consignes architecturales :
  • Instructions en nb réduit s'éxécutant en 1 cycle.
  • 2 instructions pour l'accès mémoire.
  • Décodage des instructions plutôt cablé.
  • Le jeu d'instruction a une taille fixe (32 bits).
  • Toutes opérations complexes rejetées au niveau du compilateur.
  • L'architecture doit profiter du pipe-line.
  • Le proc possede bcp de registres.
  • Le proc est adapté à l'ajout de cache et de coprocesseurs
  • 1 jeu d'instruction = 1 domaine d'application.

Les 4 catégories d'instructions :
  • Arithmétiques et logiques.
  • Controle du séquencement.
  • Accès mémoire.
  • Dédiées à l'application.

Les formats d'instructions :

Exemple : formats des instructions des proc conçus à Berkeley
Elles sont de 2 types :
  • A 3 opérandes = 1 code Op et 3 adresses ..... Dest <= Source1 Op Source2.
  • Pour les instructions de controle = 1 code Op et 1 ou 2 Op permettant la génération d'une adresse.

Le jeu d' instructions de l'architecture RISC utilise des registres afin de limiter les accés à la mémoire externe (goulot d'étranglement).
Conséquence = un nb important de registres.



Home