Information Technology Reference
In-Depth Information
Quelques conséquences de ces choix :
- les instructions, pour traduire facilement la complexité du langage de haut niveau,
sont de longueurs variables et opèrent souvent sur un seul opérande en mémoire.
Cela implique des modalités de gestion complexe et coûteuse en accès mémoire ;
- un grand nombre de modes d'adressages est nécessaire pour caractériser la richesse
des structures de données des LHN.
L'approche CISC se caractérise par une volonté de rendre indépendant le matériel
(architecture interne et langage machine) et le logiciel (les langages de haut niveau).
Pour obtenir de bonnes performances avec ce type d'architecture il faut donc :
- un compilateur qui permet d'utiliser efficacement le jeu d'instructions machine.
Or il existe toujours plusieurs manières de passer d'une instruction du langage de
haut niveau à la séquence d'instructions machine qui la réalise sur le matériel. Il
faut donc essayer de réaliser le meilleur choix possible dans tous les cas ce qui est
difficile voire impossible. En fait des études statistiques montrent que les compi-
lateurs utilisent plutôt les instructions simples que les instructions complexes;
- la complexité des instructions et des modes d'adressage implique un séquence-
ment microprogrammé. Ce type de séquenceur occupe une surface importante qui
peut atteindre 60 % de la surface totale du composant ce qui réduit d'autant la place
disponible pour implanter un plus grand nombre de registres et des mémoires caches.
Ainsi c'est l'examen de la complexité des modes d'adressages, des instructions réel-
lement utilisées par les programmes et la complexité du séquencement qui a conduit
à l'évolution vers l'approche RISC.
8.5.4
Approche RISC
Si dans l'approche CISC la volonté était de séparer la machine matérielle de l'implan-
tation, dans l'approche RISC c'est la volonté d'une optimisation globale (matérielle
et logicielle) qui est le moteur : on souhaite réaliser des architectures efficaces pour
l'exécution des programmes.
La définition des architectures RISC repose sur l'examen statistique de l'exécution
de programmes. Ces statistiques ont porté au cours des années 70-80 essentiellement
sur l'étude des instructions réellement utilisées, les impacts en temps de l'exécution,
les modes d'adressages effectivement utilisés. Dans un langage machine on peut
classer les instructions en plusieurs types qui sont : l'affectation, l'itération, l'appel
de procédure, les branchements conditionnels et les branchements inconditionnels.
Quelques résultats sur ces statistiques et mesures effectuées par Patterson, Seguin,
Tanenbaum sont :
- si l'on mesure le pourcentage relatif d'une classe d'instruction par rapport à
l'ensemble des instructions utilisées dans un programme il apparaît que les affec-
tations avec transfert simple de données sont très majoritaires (60 %);
- sur les impacts en temps d'exécution. Les appels de procédures représentent 20 %
des instructions du langage de haut niveau, 60 % du temps d'exécution des instructions
 
 
Search WWH ::




Custom Search