Introduction à l architecture des ordinateurs Adrien Lebre Décembre 2007
Plan - partie 1 Vue d ensemble La carte mère Le processeur La mémoire principal Notion de bus Introduction à l architecture des ordinateurs - Décembre 2007-2/42
Vue d ensemble (1/3) Qu est ce qu un ordinateur Un ensemble de circuits électroniques permettant de manipuler des données sous forme binaire Constitué de composants modulaires matériels (hardware) et logiciels (software) Les composants matériels sont architecturés autour de la carte mère (notion de périphérique) Introduction à l architecture des ordinateurs - Décembre 2007-3/42
Vue d ensemble (2/3) Périphérique interne/externe Les périphériques inclus dans l unité centrale sont dits internes (à l opposé de ceux qui sont externes). Internes : Mémoire vive (RAM) Disque dur (HDD) Lecteur/graveur (disquette, CD, DVD, bande,..) Extension PCI (carte graphique, réseau, ) «Ports d Entrées/Sorties» Externes: Imprimante, scanner, stockage externe,. Ils sont connectés à la carte mère par les ports d E/S Introduction à l architecture des ordinateurs - Décembre 2007-4/42
Vue d ensemble (3/3) Unité centrale Alimentation Combo CD/DVD Carte mère Bus IDE Processeur Ports E/S (Série, USB, ) Carte graphique BUS SATA Introduction à l architecture des ordinateurs - Décembre 2007-5/42 Disque dur «bus informatique», connectique reliant les périphériques à la carte mère
Du boîtier au PC. Introduction à l architecture des ordinateurs - Décembre 2007-6/42
Carte mère (1/5) Socle nécessaire à la connexion des éléments essentiels de l ordinateur Constituée d un grand nombre de connecteurs (extension PCI, RAM, processeur ) Elle se caractérise par: Le facteur d encombrement Le chipset Le type de support du processeur Les connecteurs d extension et d E/S Introduction à l architecture des ordinateurs - Décembre 2007-7/42
Carte mère (2/5) Le facteur d encombrement définit la géométrie, l agencement et les caractéristiques électriques Plusieurs standards définis selon les types de boîtier : ATX, conçu afin d optimiser les branchements des périphériques d une part et d autre part pour favoriser la dissipation de la chaleur Plusieurs modèles: ATX standard (6 connecteurs PCI + 1 connecteur AGP), Micro ATX, Flex ATX, mini ATX) BTX, optimisation de l'acoustique et amélioration de la dissipation de la chaleur (le processeur est situé à proximité des aérations du boîtier) BTX standard, micro BTX, Pico BTX ITX, format extrêmement compact mini-itx (17cm*17cm) et nano-itx (12*12cm) Introduction à l architecture des ordinateurs - Décembre 2007-8/42
Carte mère (3/5) Le chispet (jeu de composants) coordonne les échanges de données entre les divers composants de la carte mère Le support du processeur, il en existe 2 types: Slot, connecteur rectangulaire dans lequel le processeur est inséré verticalement Socket, connecteur carré composé de plusieurs petits connecteurs sur lequel le processeur vient s enficher Afin de ne pas endommager les broches lors de la mise en place, un système ZIF associé à un détrompeur est mise en place Le support du processeur permet également de connecteur le dissipateur thermique (ventirad: ventilateur + radiateur) Les connecteurs d extension sont des réceptacles permettant l ajout de carte d extension (c-à-d offrant des fonctionnalités supplémentaires) Connecteur PCI, AGP, PCI Express, Introduction à l architecture des ordinateurs - Décembre 2007-9/42
Carte mère (4/5) Les autres composants: Une horloge temps réel (RTC, Real Time Clock), permet de synchroniser les signaux du système à un degré très fin (nanoseconde) Le CMOS, permet de conserver plusieurs informations lorsque la machine est éteinte (comme l heure ou encore la date) Le CMOS est alimenté en permanence par une pile (la pile du CMOS) Le BIOS (Basic Input/Output System) est le programme basique servant d interface entre le système d exploitation et la carte mère Le BIOS est stocké dans un ROM (Read Only Memory) et exploite les informations contenues dans le CMOS afin de connaître la configuration de la machine Introduction à l architecture des ordinateurs - Décembre 2007-10/42
Carte mère (5/5) Ports d E/S Connecteurs PCI Support processeur (socket) Connecteur AGP Connecteurs mémoire (slot) Pile CMOS Chipset Bus IDE/Floppy Introduction à l architecture des ordinateurs - Décembre 2007-11/42
Processeur Central Processing Unit (CPU) Circuit électronique cadencé par une horloge interne La fréquence d horloge (cycle) nombre d impulsion par seconde 200Mhz 200 000 000 de top d horloge Vitesse d exécution conditionnée par sa fréquence A chaque top d horloge, une action correspondant à une instruction ou à une partie d instruction est exécutée Deux processeurs de marque différente peuvent avoir des écarts de performance même si leur fréquence est identique Cycles Par Instruction (CPI) Représente le nombre moyen de cycles d horloge pour une instruction Permet de donner le nombre moyen d instruction par second (MIPS) Pour les calculateurs modernes: FLOPS Introduction à l architecture des ordinateurs - Décembre 2007-12/42
Processeur Structure interne Un processeur comporte trois classes de composants : Des zones de stockages, (source des instructions, de leurs opérandes et destination des résultats) Des unités fonctionnelles, (effectuant les manipulations sur les opérandes et fournissant les résultats) Un contrôleur, (coordonnant l exécution des instructions sur les autres composants) Introduction à l architecture des ordinateurs - Décembre 2007-13/42
Processeur Zones de stockages (1/2) 2 types: les registres et les caches Les registres : Zone de «travail»: taille faible à accès très rapide (immédiat) Chaque registre à un nom, un rôle et un format particulier Le nombre de registre dépend du type de processeur Principaux registres : Les registres accumulateur (ACC), stockant les résultats des opérations arithmétiques et logiques Les registres d état (PSW) permettant de stocker des informations sur l état du système (retenue, dépassement, ) Le registre d instruction (RI) contenant l instruction en cours de traitement Le compteur ordinal (CO ou PC, program counter) contenant l adresse de la prochaine instruction à exécuter Introduction à l architecture des ordinateurs - Décembre 2007-14/42
Processeur Zones de stockages (2/2) Les caches : Zone «homogènes», pas de spécificité particulière, à faible latence d accès Taille plus ou moins importante (limitée par son coût ainsi que l espace disponible sur la puce) De 1 à 3 niveaux dans les processeurs actuels (L1, L2, L3): Chaque niveau supérieur est de taille plus importante mais d accès également plus coûteux en temps Les niveaux L1 et L2 sont intégrés dans le processeurs, L3 est généralement sur la carte mère en périphérie du processeur Le cache L1 se décompose en deux parties : Le cache d instructions, contenant les prochaines instructions à exécuter Le cache de données, contenant les prochaines données à manipuler mais également celles récemment utilisées par le processeur Intérêt principal: réduire les temps d accès aux différents éléments Pendant que les unités fonctionnelles travaillent, les contrôleurs de chacun des caches interagissent entre eux afin de préparer les données utiles Introduction à l architecture des ordinateurs - Décembre 2007-15/42
Processeur Unités fonctionnelles Unité d instruction : Lit les instructions et données arrivant, les décodes et les transmet à l unité d exécutions Constituée: Séquenceur, chargé de synchroniser l exécution des instructions aux rythme de l horloge ainsi que les accès en mémoire («signaux de commande») Des registres: RI et CO (registre d instruction et compteur ordinal) Unité d exécution : Accomplie les tâches que lui a données l unité d instruction Constituée de plusieurs circuits de calcul et des registres d état et d accumulateur Unité de gestion de bus Gère les flux entrant et sortant de la puce Introduction à l architecture des ordinateurs - Décembre 2007-16/42
Processeur Unités d exécutions(1/8) Réalisent les opérations sur les données (au format binaire) Arithmétiques: addition/soustraction/multiplication/division Logiques: ET / OU / XOR /.. Rappel sur l arithmétique binaire : Le processeur ne reconnaît pas naturellement les nombres, il ne reconnaît que deux états 0 et 1 (présence ou non d une tension) Passage du binaire au décimal: chaque chiffre à un poids associé 1 0 1 1 2 0 = 1 2 1 = 2 2 2 = 4 2 n-1 1011= (1*2 3 )+(0*2 2 )+(1*2 1 )+(1*2 0 ) = 8 + 0 + 2 + 1 = 11 Introduction à l architecture des ordinateurs - Décembre 2007-17/42
Processeur Unité d exécutions (2/8) Opération d addition (similaire à l arithmétique décimale) 0 + 0 = 0 0 1 0 1 5 1 + 0 = 1 + 0 0 1 1 3 0 + 1 = 1 -------------- 1 + 1 = 0 avec retenue 1 0 0 0 8 Opération de soustraction (également similaire à l arithmétique décimale) Lorsque la quantité à soustraire est supérieure à la quantité dont on soustrait, «on emprunte 1 on voisin de gauche» La multiplication fonctionnent avec des décalages La division reposent sur les décalages et sur la soustraction L ensemble des opérations arithmétiques repose sur les opérateurs logiques: ET / OU / NON / Introduction à l architecture des ordinateurs - Décembre 2007-18/42 1 1 0 2-0 1 1 1 -------------- 0 1 1
Processeur Unité d exécutions (3/8) Opération logique NON : un inverseur (si 1 en entrée alors 0 en sortie) Opération logique ET : produit logique (*) Il correspond à un circuit électrique série Opération logique OU : somme logique (+) Il correspond à un circuit électrique parallèle 0 ET 0 = 0 1 ET 0 = 0 0 ET 1 = 0 1 ET 1 = 1 0 OU 0 = 0 1 OU 0 = 1 0 OU 1 = 1 1 OU 1 = 1 Introduction à l architecture des ordinateurs - Décembre 2007-19/42
Processeur Unité d exécutions (4/8) Opération logique XOR : OU EXCLUSIF Il correspond à un circuit électrique «dilemme» 0 XOR 0 = 0 1 XOR 0 = 1 0 XOR 1 = 1 1 XOR 1 = 0 L addition et la soustraction peuvent être mises en œuvre grâce à un ET, un OU et un NON : Le OU correspond à une somme logique, l inconvénient et qu il n a pas la notion de retenue: 1 OU 1 = 1 alors qu en binaire 1 + 1 = 10 Introduction à l architecture des ordinateurs - Décembre 2007-20/42
Processeur Unité d exécutions (5/8) Addition binaire : Le XOR permet d avoir 1 en sortie seulement lorsque une seule des entrées est à 1 Le ET permet d avoir 1 en sortie seulement lorsque les deux entrées sont à 1 Inconvénient : aucun circuit simple (à base de transistors) ne permet de construire l opération logique XOR Introduction à l architecture des ordinateurs - Décembre 2007-21/42
Processeur Unité d exécutions (6/8) Addition binaire à base de circuit logique NON ET (NAND): Introduction à l architecture des ordinateurs - Décembre 2007-22/42
Processeur Unité d exécutions (7/8) Addition binaire à base de circuit logique NON ET (NAND): Introduction à l architecture des ordinateurs - Décembre 2007-23/42
Processeur Unités d exécutions (8/8) Plusieurs unités fonctionnelles selon le type de calcul: ALU: Unité Arithmétique et Logique FLU: Unité Logique pour les réels («floating point unit») Chacune de ces unités est complexe Manipulation de mots de 32 bits et de 64 bits pour les machines récentes (exemple étudié: deux bits ) Introduction à l architecture des ordinateurs - Décembre 2007-24/42
Processeur Instruction («microcode») Une instruction processeur est une opération élémentaire accomplie par le processeur (stockée sur 1 à 8 octets) Composée de deux champs Code opération : définit l action à accomplir Code opérande : définit les paramètres de l action. Selon le code opération, il peut s agir d une adresse ou bien d une donnée Les différents types : Accès à la mémoire (transfert entre les registres) Opérations arithmétiques (addition/soustraction/multiplication/division) Opérations logiques (ET/OU/NON/XOR/ ) Contrôle (contrôle de séquence, branchements conditionnels) Jeu d instructions : ensemble des opérations élémentaires qu un processeur peut accomplir Introduction à l architecture des ordinateurs - Décembre 2007-25/42
Processeur Type d architecture Le jeu d instructions détermine l architecture du processeur: Architecture historique : Architecture CISC (Complex Instruction Set Computer) Consiste à câbler dans le processeur des instructions complexes difficile à créer à partir des fonctions de bases Relativement onéreux Architecture RISC (Reduced Instruction Set Computer) Nettement plus abordable Nécessite des compilateurs évolués afin de traduit les programmes dans le jeu d instructions plus restreint Architecture Pentium (CISC émulé par du RISC) Architecture de plus en plus complexe (VLIW, DSP) Parallélisme, pipeline, multi cœur Introduction à l architecture des ordinateurs - Décembre 2007-26/42
Processeur De gauche à droite: Pentium (75Mhz, 5*5cm), P4 (2Ghz, 3.5*3.5cm), AMD Athlon (1.7Ghz ) Dissipateur thermique associé à son ventilateur (ventirad) Introduction à l architecture des ordinateurs - Décembre 2007-27/42
Mémoire Généralités Mémoire: tout composant électronique capable de stocker temporairement des données 2 types: Mémoire centrale, mémoire volatile servant de zone de transit, elle est réalisée à l aide de circuits électroniques spécialisés Mémoire de masse, zone de stockage à long terme, elle est réalisée à l aide de support magnétique (disque dur) ou optique (CD /DVD) Caractérisé par : Sa capacité, volume global de stockage exprimé en bit ou en octet Son temps d accès, temps entre la demande d accès à une donnée et sa mise à disponibilité («latence») Son temps de cycle, temps minimum entre deux accès successifs Son débit, volume d information échangé par unité de temps (bit/s ou octet/s) Introduction à l architecture des ordinateurs - Décembre 2007-28/42
Mémoire Capacité et temps d accès Mémoire située dans le processeur - - 1 ns Registre < 512 octets 5 ns Mémoire cache de 8Ko à 4Mo 10 à 30 ns Mémoire principale de 512 Mo à 4Go + 8 ms Mémoire de masse jusqu à 1 To + Temps Capacité Introduction à l architecture des ordinateurs - Décembre 2007-29/42
Mémoire volatile Cellule élémentaire Bascule RS : reset and set Permet de générer 1 (set) ou 0 (reset) sur la sortie Q S 0 0 1 R 0 0 0 Qn 0 1 x Qn+1 0 1 1 R NOR Q Bascule D : «données» Permet de mémoriser un bit 0 1 1 1 x x 0 IND S NOR Q Elle se construit à partir de deux portes NON ET et d une bascule RS A chaque fois que W est activé, la valeur sur D est propagée sur la sortie Q Une mémoire de 4Mo repose sur plus de 32 millions de bascule D (32 768 000 ) Introduction à l architecture des ordinateurs - Décembre 2007-30/42
Mémoire volatile Deux types de mémoire volatile: SRAM, Static RAM, très rapide mais relativement onéreux, Repose sur les mécanismes de bascule D Exploité uniquement pour les registres et les caches processeur DRAM, Dynamic RAM, «bon marché», Repose sur les technologies de type nano condensateur impliquant un rafraîchissement périodique des valeurs (en ns) Utilisé pour la mémoire vive, Introduction à l architecture des ordinateurs - Décembre 2007-31/42
Mémoire vive (1/4) Random Access Memory Cellule élémentaire constituée d un transistor et d un condensateur Chaque cellule (point mémoire) est rangée au sein d une matrice Un point mémoire est défini par son numéro ligne et numéro de colonne Temps d accès à une cellule : temps de cycle mémoire + latence de la mémoire Si la latence de la mémoire est trop importante par rapport à la fréquence du processeur, l ordinateur doit effectuer des cycles d attente pour accéder à la mémoire Exemple : Une mémoire DRAM à un tps d accès de 60ns (35ns pour le cycle + 15ns pour la latence) Une processus cadencé à 200Mhz à un tps de cycle de 5ns (1/200 000 000) 11 cycles d attente pour un cycle de transfert Introduction à l architecture des ordinateurs - Décembre 2007-32/42
Mémoire vive (2/4) Random Access Memory Plusieurs types de mémoire vive afin d améliorer les temps d accès EDO pour les anciens portables SDRAM (en voie de disparition) DDR et DDR2 SDRAM Rambus DRAM RDRAM Introduction à l architecture des ordinateurs - Décembre 2007-33/42
Mémoire vive (3/4) Random Access Memory Accès en rafale (burst mode), il permet de lire les 3 données consécutives à la première sans temps de latence supplémentaire EDO : adressage de la colonne suivante pendant la lecture des données d une colonne (1995) SDRAM : accès synchronisé avec le bus de la carte mère permettant de réduire les temps d accès à 10 ns (1997) DDR SDRAM : Double Data Rate, amélioration par un facteur 2 du débit sans modifier la fréquence (jusqu à 4Go/s) DDR2 SDRAM : Utilisation de deux canaux séparés pour la lecture et l écriture (jusqu à 6,5Go/s) Rambus DRAM : Fréquence interne très élevée jusqu à 1Ghz pouvant proposer un débit théorique de près de 32Go/sec Introduction à l architecture des ordinateurs - Décembre 2007-34/42
Mémoire vive (4/4) Random Access Memory Correction d erreurs But : garantir l intégrité des données Bit de parité : pour chaque octet, un bit de parité est utilisé afin de vérifier l intégrité des données (1 si la somme des bits de données est impaire 0 sinon) Le bit de parité ne permet pas de corriger les données, de plus pour 8Mo de données utiles, il faut 9Mo d espace de stockage Barrette de mémoire ECC (Error Correction Coding) : Exploitation de plusieurs bits afin de pouvoir corriger des éventuelles erreurs (bits de contrôle) Introduction à l architecture des ordinateurs - Décembre 2007-35/42
Mémoire «morte» ROM, Read Only Memory Utilisée pour stocker des informations nécessaire au démarrage de la machine de manière non volatile (et qui ne peuvent être stockées dans la mémoire secondaire, tels que les paramètres même du disque) Exemple de données stockées en ROM : Le BIOS et le setup CMOS Le Power-On Self Test (POST), programme permettant de tester le matériel au démarrage de la machine Temps d accès d environ de 150 ns Les types: ROM, les données sont inscrites une fois pour tout dans le silicium PROM, Programmable ROM, les données sont inscrites au sein de fusibles EPROM, Erasable PROM, les données peuvent être effacées grâce à des UVs EEPROM, Electrically EPRM, les données sont effaçables par un courant électrique La mémoire FLASH est une dérivée d EEPROM avec une densité plus importante (permettant de stocker plusieurs Mo) Introduction à l architecture des ordinateurs - Décembre 2007-36/42
Bus Définition (1/2) Bus informatique : ensemble de liaisons physiques exploité en commun par plusieurs composants afin de communiquer (câbles, pistes de CI, ) But : réduire le nombre de «voies» nécessaires à la communication en les mutualisant sur une seule voie («autoroute des données») Dans le cas ou la connexion sert à relier seulement deux composants (connexion point à point), le terme de port matériel est utilisé (port série, parallèle, ) Introduction à l architecture des ordinateurs - Décembre 2007-37/42
Bus Définition (2/2) Bus informatique est caractérisé par : Sa largeur (en bits), volume d informations pouvant être transmis en parallèle Sa fréquence (en Hz), nombre de paquets de données envoyés/reçus par sec Son débit maximal (en octet), correspond au produit largeur/fréquence Exemple: un bus de largeur de 16 bits avec une fréquence de 133Mhz a un débit maximal de 266Mo/s 16*133 000 000 = 2 128 000 000 bits/sec 266 000 000 octets/sec Un bus est constitué de 3 sous bus : 266 Mo/s Bus d'adresses (bus mémoire ou bus d adressages), il sert à transporter les adresses mémoire auxquelles le processeur souhaite accéder (bus unidirectionnel) Bus de données, il véhicule les instructions en provenance ou à destination du processeur (bus bidirectionnel) Bus de contrôle (bus de commandes), il transporte les ordres et les signaux de synchronisation et de réponse entre l unité de commande et l ensemble des composants matériels (bus bidirectionnel) Introduction à l architecture des ordinateurs - Décembre 2007-38/42
Bus Interconnexion des composants (1/2) Les principaux bus : Le bus système (appelé bus interne ou front side bus) permet au processeur de communiquer avec la mémoire vive Le bus d extension (appelé bus d E/S) permet aux divers composants de la carte mère de communiquer entre eux Le chipset et les bus : Le chipset a pour rôle d aiguiller les informations entre les différents bus Il est composé de deux éléments : Le pont nord (NorthBridge, appelé également contrôleur mémoire), il contrôle les communications entre le processeur et la mémoire vive d une part et d autre part les communications avec la carte graphique (Graphic and Memory Controller Hub) Le pont sud (SouthBridge, contrôleur d E/S), il gère les communications avec les périphériques d E/S (I/O Controller Hub) Le terme de «pont» (bridge) désigne généralement un élément d interconnexion entre deux bus Introduction à l architecture des ordinateurs - Décembre 2007-39/42
Bus Interconnexion des composants (2/2) 3 SATA Introduction à l architecture des ordinateurs - Décembre 2007-40/42
Bus Ordre de grandeur Norme Largeur Vitesse Débit (en bits) (en Mhz) (Mo/sec) PCI de 32 à 64 de 33 à 66 de 127 à 508 AGP 32 66*n de 254 à 2112 ATA (IDE) 16 de 33 à 66 de 33 à 133 SATA de 1 à 2 X de 180 à 380 SCSI de 8 à 32 de 4 à 80 de 5 à 640 USB 1 X de 1,5 à 60 Introduction à l architecture des ordinateurs - Décembre 2007-41/42
Bibliographie Architecture de l'ordinateur par A. Tanembaum, R. Joly aux éditions PEARSON Education Architecture des ordinateurs: cours Jean Michel Richer http://www.info.univ-angers.fr/pub/richer/ensl2dg_lepc1.php Site internet: comment ça marche? http://www.commentcamarche.net/pc/pc.php3 Processeurs: http://fr.wikipedia.org/wiki/microprocesseur Introduction à l architecture des ordinateurs - Décembre 2007-42/42