mardi 13 février 2007

Architecture RISC

Reduced instruction set computer
Un article de Wikipédia, l'encyclopédie libre.

Le microprocesseur à jeu d'instruction réduit ou reduced instruction-set computer en anglais est une architecture matérielle de microprocesseurs. On l'a opposé à la fin des années 1980 et au début des années 1990 à l'architecture CISC (complex instruction-set computer). La sortie d'architectures hybrides comme le Pentium (CISC émulé par du RISC) a mis fin par disparition de repères à cette guerre qui était devenue bien plus marketing que technique vers 1990, les techniques ayant évolué de part et d'autre et chacune comparant ses procédés à ceux de l'autre... six ans plus tôt.

Sommaire
1 Principe
1.1 Pénalité
1.2 Avantages
2 Historique
3 Performances comparées CISC/RISC
4 Positionnement

Principe
L'idée d'origine provient de l'analyse des séquences de codes qui montrait que la grande majorité des instructions disponibles étaient très peu utilisées. Ainsi, seul un jeu très réduit d'instructions était principalement utilisé dans les programmes. C'est pourquoi l'architecture RISC fait le choix de limiter le jeu d'instructions à seulement quelques unes, imposant, en contrepartie, à toutes, un nombre identique de cycles pour s'exécuter. De cette manière, il est possible de débuter une nouvelle instruction à chaque cycle d'horloge: ceci constitue le « pipeline ». L'avantage de cette technique est que désormais, le processeur se comporte comme s'il y avait une instruction exécutée par cycle d'horloge. De plus, la division de chaque instruction en plusieurs étapes autorise une fréquence d'horloge plus grande puisque la profondeur combinatoire entre deux registres est diminuée. Ces deux caractéristiques ont pour conséquence une division du temps d'exécution pour toutes les instructions de base.

Pénalité
Cela se paye au prix d'une certaine diminution de lisibilité du code gênante si l'on programme en assembleur et surtout si on l'optimise : l'instruction MVC (MoVe Character) du Système 360 restait tout de même plus lisible que la séquence d'instructions faisant la même chose dans une machine RISC. Mais pour qui la codait strncpy() en langage C, il n'y avait plus aucune différence. Et en temps d'exécution, le code C optimisé se montrait en général plus performant en vitesse pure grâce à des astuces d'usage de l'effet pipeline par le compilateur.

Avantages
Du fait que chaque instruction était simple, le décodage et l'exécution par le processeur devaient être très rapides, idéalement en un seul cycle, ce qui était précisément le cas du Motorola 6800. Le succès de l'architecture RISC a tenu à deux facteurs :
la mémoire avait baissé de prix à un point tel qu'y concentrer des instructions compliquées perdait de sa rentabilité,
les temps d'accès de cette mémoire étaient devenus très faibles par rapport au temps de traitement d'une instruction complexe. Dans ces conditions, la mémoire passait l'essentiel de son temps à attendre le processeur.
C'est aujourd'hui (2004) l'inverse, raison pour laquelle on place des antémémoires (caches) un peu partout, y compris dans les machines RISC qui en ont plus souvent deux (données, instructions) qu'une seule.

Suite de l'article sur : http://fr.wikipedia.org/wiki/Reduced_instruction_set_computer


http://www.spoonylife.com/

3 commentaires:

Anonyme a dit…

It's an amazing article designed for all the internet viewers; they will obtain advantage from it I am sure.

Here is my web page ... airplanes games

Anonyme a dit…

Just want to say your article is as amazing. The clearness in your post is simply great and i could
assume you're an expert on this subject. Well with your permission allow me to grab your feed to keep up to date with forthcoming post. Thanks a million and please continue the rewarding work.

Feel free to visit my blog ... raspberry ketone diet

Anonyme a dit…

Post writing is also a fun, if you be familiiar with
afterward you can write or else iit is complicated to write.



my blog ... reviews of venus factor