Architecture de l’ordinateur Notes de cours

1|P age

Notion de programme Un programme est une suite d'instructions élémentaires. Le processeur est capable d'exécuter des programmes en langage machine. comme additionner deux nombres. de la transformer en effectuant des traitements quelconques.1 Architecture de base d'un ordinateur Un ordinateur est une machine de traitement de l'information. tandis que le processeur exécute pas à pas les instructions composant les programmes. Ces instructions correspondent à des actions très simples. son jeu d'instructions. puis de la restituer sous une autre forme.1 Principes de fonctionnement Les deux principaux constituants d'un ordinateur sont la mémoire principale et le processeur. il faut donc connaître les détails du fonctionnement du processeur qui va être utilisé. qui vont être exécutées dans l'ordre par le processeur. Toute information est manipulée sous forme binaire (ou numérique) par l'ordinateur. Chaque instruction est codifiée en mémoire sur quelques octets. 1. de la stocker. images. sons. Nous appelons information tout ensemble de données. La mémoire principale (MP en abrégé) permet de stocker de l'information (programmes et données). Pour écrire un programme en langage machine.. On distingue généralement différents types d'informations : textes. etc. Il est capable d'acquérir de l'information. Chaque type de processeur est capable d'exécuter un certain ensemble d'instructions. Toute l'activité de l'ordinateur est cadencée par 2|P age . nombres. lire ou écrire une case mémoire. Le mot informatique vient de la contraction des mots information et automatique. en quelques cycles d'horloges. etc. c'est à dire composés d'instructions très élémentaires suivant un codage précis. Le processeur Le processeur est un circuit électronique complexe qui exécute chaque instruction très rapidement. mais aussi les instructions composant un programme.

lire en mémoire (MP) l'instruction à exécuter . l'unité de commande et l'unité de traitement :   l'unité de commande est responsable de la lecture en mémoire et du décodage des instructions .1). un ordinateur "PC Pentium 133" possède un processeur de type Pentium et une horloge à 133 MHz. Par exemple. effectuer le traitement correspondant .L. aussi appelée Unité Arithmétique et Logique (U. La fréquence de cette horloge s'exprime en MHz (millions de battements par seconde). FIG 1. de façon à ce que tous les circuits électroniques travaillent ensembles. 2. passer à l'instruction suivante.une horloge unique. Pour chaque instruction. exécute les instructions qui manipulent les données.A.Architecture schématique d’un ordinateur 3|P age . le processeur effectue schématiquement les opérations suivantes: 1.). l'unité de traitement. Le processeur est divisé en deux parties (voir figure 1. 3.1.

En principe. voire davantage. soit 8 bits. Rappelons que le kilo informatique vaut 1024 et non 1000 (210 = 1024 w 1000). numérotés de 0 à N — 1. Voici les multiples les plus utilisés : 4|P age . on a N emplacements mémoires.1. unité pratique pour coder un caractère par exemple). la plupart des ordinateurs en service aujourd'hui utilisent des emplacements mémoire d'un octet (byte en anglais. Chaque emplacement est repéré par son numéro.2 La mémoire principale (MP) Structure de la MP La mémoire est divisée en emplacements de taille fixe (par exemple 8 bits) utilisés pour stocker instructions et données. appelé adresse. exprimé en général en kilo-octets ou en méga-octets. L'adresse est le plus souvent écrite en hexadécimal. en fait. Dans une mémoire de taille N. la taille d'un emplacement mémoire pourrait être quelconque . La capacité (taille) de la mémoire est le nombre d'emplacements.

Les seules opérations possibles sur la mémoire sont :   écriture d'un emplacement : le processeur donne une valeur et une adresse. où tout le contenu est perdu (contrairement au contenu des mémoires externes comme les disquettes et disques durs). 5|P age . La taille d'un mot mémoire dépend du type de processeur .3. et la mémoire range la valeur à l'emplacement indiqué par l'adresse . Un microprocesseur n'est rien d'autre qu'un processeur dont tous les constituants sont réunis sur la même puce électronique (pastille de silicium). afin de réduire les coûts de fabrication et d'augmenter la vitesse de traitement. 2 octets dans les processeurs 16 bits (par exemple Intel 8086) . Le contenu de l'emplacement lu reste inchangé. Unité de transfert Notons que les opérations de lecture et d'écriture portent en général sur plusieurs octets contigus en mémoire : un mot mémoire. L'architecture de base des processeurs équipant les gros ordinateurs est la même que celle des microprocesseurs. Le processeur central Le processeur est parfois appelé CPU (de l'anglais Central Processing Unit) ou encore MPU (Micro-Processing Unit) pour les microprocesseurs. lecture d'un emplacement : le processeur demande à la mémoire la valeur contenue à l'emplacement dont il indique l'adresse.Opérations sur la mémoire Seul le processeur peut modifier l'état de la mémoire. elle est de — — — 1 octet (8 bits) dans les processeurs 8 bits (par exemple Motorola 6502) . 1. Chaque emplacement mémoire conserve les informations que le processeur y écrit jusqu'à coupure de l'alimentation électrique. 4 octets dans les processeurs 32 bits (par ex. Intel 80486 ou Motorola 68030). Les microordinateurs sont tous équipés de microprocesseurs.

le contenu de l'accumulateur est écris en mémoire à l'adresse 180. C'est l'unité de commande (voir figure 1. Le processeur lit et décode l'instruction . Parmi les registres. 4. 2. l'UAL. qui est utilisé pour stocker les résultats des opérations arithmétiques et logiques. Le nombre exact de registres dépend du type de processeur et varie typiquement entre une dizaine et une centaine. 16 ou 32 bits. 3. Par exemple. L'addition proprement dite est effectuée par l'UAL. le plus important est le registre accumulateur.1) qui déclenche chacune de ces actions dans l'ordre. à partir du code de l'instruction lu en mémoire actionne la partie de l'unité de commande nécessaire. Architecture d'un processeur à accumulateur La figure 1. et le décodeur d'instructions.3 représente l'architecture interne simplifiée d'un MPU à accumulateur. On y distingue l'unité de commande. le processeur demande à la mémoire la contenu de l'emplacement 180 . la valeur lue est rangée dans l'accumulateur . L'accumulateur intervient dans une proportion importante des instructions. Chaque registre stocke 8.Les registres et l'accumulateur Le processeur utilise toujours des registres. qui. qui sont des petites mémoires internes très rapides d'accès utilisées pour stocker temporairement une donnée. l'unité de traitement (UAL) ajoute 5 au contenu de l'accumulateur . 5. 6|P age . une instruction ou une adresse. examinons ce qu'il se passe lorsque le processeur exécute une instruction comme « Ajouter 5 au contenu de la case mémoire d'adresse 180 » : 1.

que nous étudierons plus tard . RTA : Registre Tampon d'Adresse.Les informations circulent à l'intérieur du processeur sur deux bus internes. l'autre pour les instructions. qui est utilisé pour indiquer à la mémoire principale si l'on effectue un accès en lecture ou en écriture. 7|P age . On distingue les registres suivants : ACC : Accumulateur . l'un pour les données. d'état : stocke les indicateurs. Les signaux de commandes permettent au processeur de communiquer avec les autres circuits de l'ordinateur. contient l'adresse de l'emplacement mémoire où se situe la prochaine instruction à exécuter . Reg. RTUAL : Registre Tampon de l'UAL. utilisé pour accéder à une donnée en mémoire. stocke temporairement l'un des deux opérandes d'une instruction arithmétique (la valeur 5 dans l'exemple donné plus haut) . contient le code de l'instruction en cours d'exécution (lu en mémoire via le bus de données) . RI : Registre Instruction. On trouve en particulier le signal R/W (Read/Write). IP : Instruction Pointer ou Compteur de Programme.

8|P age . Il est composé de a fils . une instruction-machine est une instruction qui est directement exécutable par le processeur. La mémoire peut posséder au maximum 2a emplacements (adresses 0 à 2a-1). 2 Notion de jeu d'instructions-machine Comme défini précédemment. utilisés pour transporter des signaux binaires. Un bus est simplement un ensemble de n fils conducteurs. Le bus de données est un bus bidirectionnel. Il véhicule aussi les divers signaux de réponse des composants. Lors d'une lecture. Le bus d'adresse est un bus unidirectionnel : seul le processeur envoie des adresses.1. lors d'une écriture. c'est le processeur qui envoie la donnée. il transporte les ordres et signaux provenant de l’unité de commande vers les divers organes de la machine. Le bus de commandes est un bus bidirectionnel. c'est la mémoire qui envoie un mot sur le bus (le contenu de l'emplacement demandé) . on utilise donc des adresses de a bits.4 Liaisons Processeur-Mémoire : les bus Les informations échangées entre la mémoire et le processeur circulent sur des bus.

LOAD.. Il est composé au minimum de quatre grandes classes d'instructions dans les micro-processeurs :     instructions de traitement (ex :ADD.). depuis les années 70 on dénomme processeur à architecture CISC (Complex Instruction Set Code) un processeur dont le jeu d'instructions possède les propriétés suivantes :  Il contient beaucoup de classes d'instructions différentes. L'architecture RISC (Reduced Instruction Set Code) est un concept mis en place par IBM. un processeur RISC est un processeur dont le jeu d'instructions possède les propriétés suivantes :     Le nombre de classes d'instructions différentes est réduit par rapport à un CISC. etc. multimédias etc. STOR) instructions de comparaisons (ex : CMP) D'autres classes peuvent être ajoutées pour améliorer les performances de la machine (instructions de gestion mémoire. Les instructions sont de taille fixe. 3 3. 9|P age .  Il se sert de beaucoup de registres spécialisés et de peu de registres généraux. Il fonctionne avec un pipe-line Depuis les décennies 90.  Il contient beaucoup de type d'instructions différentes complexes et de taille variable.L'ensemble de toutes les instructions-machine exécutables par le processeur s'appelle le « jeu d'instructions » de l'ordinateur.1 Architectures évoluées Architectures CISC et RISC Traditionnellement.) instructions de branchement ou de déroutement (ex : JMP) instructions d'échanges (ex : MOV. les microprocesseurs adoptent le meilleur des fonctionnalités de chaque architecture provoquant de fait la disparition progressive de la différence entre RISC et CISC et les inévitables polémiques sur l'efficacité supposée meilleure de l'une ou de l'autre architecture.. Il se sert de beaucoup de registres généraux. DIV.

120 MOV 100.2 Pipeline dans un processeur Soulignons qu'un processeur est une machine séquentielle ce qui signifie que le cycle de traitement d'une instruction se déroule séquentiellement. 250. 500 Chacune des 4 instructions est traitée séquentiellement en 3 phases sur chacun des étages.200. une instruction machine soit traitée en 3 phases :    lecture : dans le registre instruction (RI) décodage : extraction du code opération et des opérandes exécution : du traitement et stockage éventuel du résultat. 200. 350 DIV 300. Représentons chacune de ces 3 phases par une unité matérielle distinctes dans le processeur (on appelle cette unité un "étage") et figurons schématiquement les 3 étages de traitement d'une instruction : Supposons que suivions pas à pas l'exécution des 4 instructions machines suivants le long des 3 étages précédents : ADD100.3. Supposons que par hypothèse simplificatrice. une fois une instruction traitée par le dernier étage (étage d'exécution) le processeur passe à l'instruction suivante et la traite au premier étage et ainsi de suite 10 | P a g e . 300 MUL 150.

11 | P a g e . tous les étages soient occupés à fonctionner (chacun sur une instruction différente). puisqu'à la fin de chaque phase une instruction est traitée en entier. et l'étage de lecture sur la lecture de l'instruction de rang n+2. A un instant t0 donné l'étage d'exécution travaille sur les actions à effectuer pour l'instruction de rang n. et de procéder identiquement pour chaque étage de telle façon que durant chaque phase. Il est clair que cette technique dénommée architecture pipe-line accélère le traitement d'une instruction donnée. Le nombre d'unités différentes constituant le pipe-line s'appelle le nombre d'étages du pipeline. en commençant le traitement de l'instruction suivante dès que l'étage de lecture a été libéré par l'instruction en cours.L'architecture pipe-line consiste à optimiser les temps d'attente de chaque étage. l'étage de décodage travaille sur le décodage de l'instruction de rang n+1.

décodage.La figure ci-dessous illustre le démarrage du traitement des 4 instructions selon un pipe-line à 3 étages (lecture. exécution) : 12 | P a g e .

3 Architecture superscalaire Une autre façon de gagner en performance est d'exécuter plusieurs instructions en même temps. Il faut donc pouvoir soutenir un flot important d'instructions et pour cela disposer d'un cache performant. Les instructions sont alors réparties entre les différentes unités d'exécution. L'approche superscalaire consiste à doter le microprocesseur de plusieurs unités de traitement travaillant en parallèle.4 Architecture pipeline et superscalaire Le principe est de d'exécuter les instructions de façon pipelinée dans chacune des unités de traitement travaillant en parallèle.3. 13 | P a g e . Architecture scalaire : 3.

écran cathodique. souris . clavier. Sortie seulement : ex. imprimante . Il est donc évident qu'il doit acquérir l'information fournie par son environnement et restituer les résultats de ses traitements. Partenaire du transfert : 14 | P a g e . disques et bandes magnétiques. quel qu'il soit. connexions aux réseaux. Plusieurs techniques sont employées pour effectuer ces échanges. Entrée et sortie : ex. Cet échange nécessite une interface (ou contrôleur) pour gérer la connexion. Types de dispositifs d'E/S Quelques critères : 1 Direction de transfert :    2 Entrée seulement : ex. Chaque système est donc équipé d'une ou plusieurs interfaces d'entrées/sorties permettant d'assurer la communication entre le microprocesseur et le monde extérieur.5 Les échanges de données La fonction d'un système à microprocesseurs. Rien ne sert d'avoir un microprocesseur calculant très rapidement s'il doit souvent perdre son temps pour lire des données ou écrire ses résultats. Les techniques d'entrées/sorties sont très importantes pour les performances du système. Durant une opération d'entrée/sortie. l'information est échangée entre la mémoire principale et un périphérique relié au système. est le traitement de l'information.

disques magnétiques. Un ou plusieurs registres de données qui contiennent les mots à échanger entre le périphérique et la mémoire Un registre d'état qui indique si l'unité d'échange est prête. ex. disques. ex. réseaux. laser) .. Machine (ex. ex..  3    Humain (ex. l'interface est constituée par :    Un registre de commande dans lequel le processeur décrit le travail à effectuer (sens de transfert.1. souris) . imprim. Il existe 2 modes d'échange d'information : 15 | P a g e . scanner. réseaux). Rapides (> 1000 Koct/s.2 Constitution Pour cela.2 Techniques d'échange de données recevoir Avant d'envoyer ou de des informations. Vitesse moyenne (entre 1 Koct/s et 1000 Koct/s. En effet.1 Rôle Chaque périphérique dont le rôle est de :   Connecter le périphérique au bus de données Gérer les échanges entre le microprocesseur et le périphérique sera relié au système par l'intermédiaire d'une interface (ou contrôleur) 5. etc. mode de transfert). On accède aux données de l'interface par le biais d'un espace d'adresses d'entrées/sorties. 5. 5. Taux de transfert (E/S « mémoire principale) : Lents (< 1 Koct/s. imprimante matricielle) . si l'échange s'est bien déroulé. clavier. clavier.1 L'interface d'entrée/sortie 5. affichage graphique).1. le microprocesseur doit connaître l'état du périphérique. imprimantes. le microprocesseur doit savoir si un périphérique est prêt à recevoir ou à transmettre une information pour que la transmission se fasse correctement.

1 Echange programmé 5.  Le mode programmé par scrutation ou interruption où le microprocesseur sert d'intermédiaire entre la mémoire et le périphérique Le mode en accès direct à la mémoire (DMA) où le microprocesseur ne se charge pas de l'échange de données. l'inconvénient de cette technique est qu'elle peut avoir un certain retard entre le moment ou le contrôleur positionne son indicateur est le moment où son tour de scrutation arrive. Sous réserve de certaines conditions.2. le processeur comprend que le périphérique en question désire réaliser un échange d'information. En plus. pouvant être émis par tout dispositif externe au microprocesseur.1. celui-ci mémorise la touche dans sa mémoire tampon et positionne son indicateur pour l'informer qu'un caractère attend d'être lu. le temps d'exécution est partagé entre le programme de scrutation et les autres programmes en train de s'exécuter sur le CPU. Le microprocesseur possède une ou plusieurs entrées réservées à cet effet. Si cet indicateur est positionné.2.2.2 Interruption Une interruption est un signal. 5. Cette technique nécessite que le processeur exécute en permanence une boucle de scrutation qui visite sans arrêt tous les contrôleurs d'E/S.1 Scrutation Chaque périphérique dispose d'un indicateur (bit dans un registre d'état) que le processeur vient tester régulièrement.1. Par exemple si on a appuyé sur une touche du clavier. généralement asynchrone au programme en cours. 16 | P a g e . 5. elle peut interrompre le travail courant du microprocesseur pour forcer l'exécution d'un programme traitant la cause de l'interruption.

le microprocesseur traite d'abord celle avec la priorité la plus élevée. Remarques : Certaine source d'interruption possède leur propre autorisation de fonctionnement sous la forme d'un bit à positionner. Les interruptions sont classées par ordre de priorité. Ensuite. il interrompt toutes ces activités et sauvegarde l'état présent (registres. le microprocesseur examine s’il y a eu une requête sur sa ligne d'interruption. Dans le cas où plusieurs interruptions se présentent en même temps. Chaque source d'interruption possède un vecteur d'interruption où est sauvegardée l'adresse de départ du programme à exécuter. on les appelle les interruptions masquables. registre d'état) dans un registre particulier appelé pile. PC. accumulateurs. il exécute le programme d'interruption puis restitue l'état sauvegardé avant de reprendre le programme principal. Les données y sont ''entassées'' comme on empile des livres (la première donnée sauvegardée sera donc la dernière à être restituée). Principe de fonctionnement d'une interruption : Avant chaque exécution d'instructions. 17 | P a g e .Dans un échange de données par interruption. Si c'est le cas. Il se charge alors d'effectuer le transfert de données entre l'interface et la mémoire. On peut donc interdire ou autoriser certaines sources d'interruptions. le microprocesseur exécute donc son programme principal jusqu'à ce qu'il reçoive un signal sur sa ligne de requête d'interruption. on l'appelle le masque d'interruption.

d'un compteur et d'un dispositif de commande (logique câblée). effectue la lecture ou l'écriture mémoire à l'adresse contenue dans son registre et libère le bus.2 Echange direct avec la mémoire Ce mode permet le transfert de blocs de données entre la mémoire et un périphérique sans passer par le microprocesseur. Le microprocesseur doit tout de même :    initialiser l'échange en donnant au DMA l'identification du périphérique concerné donner le sens du transfert fournir l'adresse du premier et du dernier mot concernés par le transfert Un contrôleur de DMA est doté d'un registre d'adresse. Le principal avantage est que pendant toute la durée du transfert. La seule contrainte est une limitation de ses propres accès mémoire pendant toute la durée de l'opération. Le DMA se charge entièrement du transfert d'un bloc de données.2. le DMA demande au microprocesseur le contrôle du bus. le dispositif informe le processeur de la fin du transfert par une ligne d'interruption. un circuit appelé contrôleur de DMA (Direct Memory Access) prend en charge les différentes opérations. Pour chaque mot échangée. Lorsque le compteur atteint zéro. le processeur est libre d'effectuer un traitement quelconque. puisqu'il doit parfois retarder certains de ses accès pour permettre au dispositif d'accès direct à la mémoire d'effectuer les siens : il y a apparition de vols de cycle. 18 | P a g e . Il incrémente ensuite cette adresse et décrémente son compteur.5. d'un registre de donnée. Pour cela.

Le Microprocesseur Motorola 68000 19 | P a g e .

Sign up to vote on this title
UsefulNot useful