| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
|
Sommaire
I. Concepts généraux 1. Introduction
Depuis l'apparition du premier microprocesseur (Intel 4004, 1971), l'architecture des microprocesseurs n'a cessé d'évoluer et nous vivons actuellement une course à la recherche de performances accrues.Aujourd'hui un certain nombre de constructeurs produisent des microprocesseurs, ils sont qualifiés de fondeurs :
La recherche de performance si elle ne semble pas nécessaire pour les machines destinées aux particuliers est en revanche primordiale pour les industries ou les domaines de recherche à la pointe du progrès, comme par exemple :
2. Architecture de Von Neuman
On doit beaucoup à John Von Neuman pour ses travaux concernant notamment l'architecture des ordinateurs. Il participa à la conception de l'ENIAC et dans son "First Draft of a Report on the EDVAC" en 1945, il décrit le concept de programme stocké en m%G�%@moire et donne naissance à l'architecture de nos machines actuelles.
Un microprocesseur est composé de deux unités :
Afin de pouvoir stocker les opérandes et les résultats des calculs en sortie de l'UAL, le microprocesseur est doté de registres.
3. Caractéristiques
3 paramètres principaux permettent de caractériser un microprocesseur :
Remarque : deux processeurs ayant la même fréquence de fonctionnement ne possèdent pas forcément les mêmes performances (cf suite du cours). 4. Architectures
Il existe deux architectures différentes :
4.1 RISC (SPARC, Power PC, Alpha) Des études réalisées en 1974 par John Cocke d'IBM (NY) et David Patterson 1975montrèrent que seules 20 % des instructions d'un processeur réalisent 80 % des traitements d'un programme. Le concept RISC consiste à créer un jeu d'instructions simples mais très rapides. L'accès à la mémoire est simplifié grâce à l'utilisation de deux instructions ( LOAD et STORE).
On peut ainsi :
4.2 CISC (Intel, AMD) Par opposition au RISC l'architecture CISC désigne des microprocesseurs disposant d'un jeu d'instructions autorisant différents types d'accès aux données. Le but est ici de "coller" au plus près à la syntaxe des langages de programmation de haut niveau en fournissant des instructions proches de celles de ces langages. Sur le tableau ci-contre, on propose grosso-modo une comparaison CISC/RISC concernant le langage assembleur de l'Intel 8086. On déplace sur cet exemple 100 octets de l'adresse mémoire src vers l'adresse mémoire dst. A gauche on utilise une macro-instruction (CISC) REP MOVSB équivalent à la partie figurée en vert à droite.
4.3 Comparaison RISC / CISC Chaque architecture possède ses avantages et ses inconvénients :
En fait les machines CISC se sont orientées vers une architecture RISC. Les instructions CISC sont traduites en micro-instructions RISC traitées par le coeur du processeur. 5. Langage machine, langage assembleur
Le langage machine est le langage compris par le microprocesseur. Ce langage est difficile à maitriser puisque chaque instruction est codée par une séquence propre de bits.
Afin de faciliter la tâche du programmeur, on a créé le langage assembleur qui utilise des mnémoniques pour le codage des instructions :
6. Fonctionnement
Le traitement des instructions passe par 5 étapes :
| |||||||||||||||||||||||||||
| © 2006-2009 Jean-Michel Richer |