Architecture des Ordinateurs Pr. Jamal EL KAFI [email protected] Faculté des Sciences Université Chouaïb Doukkali El Jadida L’architecture des ordinateurs ? Ordinateur = Machine qui traite une donnée fournie par un organe d’entrée suivant un programme et délivre une information sur un organe de sortie Architecture = Conception et organisation des composants matériels de l’ordinateur Architecture des Ordinateurs ? Applications Systèmes Compilateurs D’exploitation Jeux d’instructions Processeur E/S Conception digitale Circuits Éléments constitutifs Un boîtier Des Cartes (internes) Carte mère, Carte réseau, Carte vidéo … Des périphériques (internes et externes) Disques, lecteur de CD, … Écran, clavier, … La carte mère Le chipset : circuits qui contrôlent les ressources (bus, mémoire, slots, …) L’horloge et le CMOS Le BIOS Le bus système Les connecteurs d’extension (slots) La mémoire (cache et RAM) Le processeur Une Carte Mère Le Chipset (jeu de composants) Coordination des échanges de données entre les divers composants de l’ordinateur : Le processeur, La mémoire, Les périphériques Horloge et CMOS Horloge (RTC : Real Time Clock) Synchronisation des signaux du système Fréquence d’horloge exprimée en MHz CMOS et Pile du CMOS Conserve des informations sur le système même lorsque la machine est hors tension BIOS Basic Input Output System Interface entre le système d’exploitation et la carte mère. Stocké dans une mémoire morte Il est possible de configurer le BIOS Les connecteurs d’extension Réceptacles pour les cartes Plusieurs types de connecteurs : ISA (Industrie Standard Architecture) VLB (Vesa Local Bus) PCI (Peripheral Component Interconnect) AGP (Accelerated Graphic Port) AMR (Audio Modem Riser) Mémoire Contient les instructions et les données. Ensemble de mots de longueur fixe. Chaque mot contient une information codée en binaire. Chaque mot est accessible par l’intermédiaire d’une adresse mémoire Le temps d’accès à un mot est le même quelle que soit sa place en mémoire (RAM) Mémoire Un mot est repéré par une adresse : une adresse sur m bits permet de repérer un mot de p bits parmi 2m p 0 2m-1 Mémoire cache Mémoire très rapide (très chère) Contient une copie d’une petite partie seulement de la mémoire centrale Très proche du processeur, voir même intégrée au processeur Taille : L1 : de 8 Ko à 64 Ko L2 : de 128 Ko à 2 Mo Bus système Canal permettant de transférer des données entre deux éléments Caractérisé par : sa largeur (nombre de bits transmis simultanément) sa fréquence (cadence à laquelle les paquets de bits sont transmis) La fréquence du processeur doit être un multiple de la fréquence du bus système. Processeur (CPU: Central Processing Unit) Cœur de l’ordinateur Il exécute les instructions Caractérisé par sa fréquence Constitué de : Une unité de commande (contrôle) Une unité de traitement (UAL Unité Arithmétique et Logique) Architecture d’un Ordinateur Bus Système Cache L2 Processeur CPU Cache L1 Mémoire Centrale Adaptateur Bus Entrées/Sorties Contrôleur Contrôleur Contrôleur Réseau Représentation de l’information Les données : Les entiers (naturels et relatifs) Les réels (flottants simple et double précision) Les caractères Les instructions Codage spécifique pour chaque processeur Notations Un mot de n bits est une suite (ai)0≤i≤ n-1 a0 est le bit de poids faible an-1 est le bit de poids fort Notation hexadécimale : Manière simplifiée d’écrire les mots binaires 4 bits = 1 digit hexadécimal Exemple : 0100 1011 0101 1111 = 0x4b5f Les caractères ASCII (American Standard Code for Information Interchange) Utilise 7 bits plus 1 de parité A = Ox41; 9 = Ox39 ISO 8859-1 (Latin-1) Évolution sur 8 bits avec les accents Ê = OxCA Unicode (caractères non latin) UCS (Universal Character Set) Entiers naturels Soient B un entier ≥2 et N un entier ≥1 Tout entier p compris entre 0 et BN-1 s’écrit de façon unique sous la forme : N −1 p=∑di B i i=0 où les di sont entre 0 et B-1 La décomposition de p en base B est : P=d …ddd Entiers relatifs Quatre représentations (au moins) : Signe – Valeur absolue Complément à 1 Complément à 2 Excédent à 2N-1 Représentation symétrique ? Problème lié au zéro Intérêts du complément à 2 Signe + valeur absolue nécessite 2 algorithme pour les additions. Complément à 2 : un seul algorithme On voit le signe (0 positif 1 négatif) Pour une suite d’opérations dont le résultat théorique est représentable, même si il y a des dépassements de capacité intermédiaires, le résultat final est correct. Exemples de numérations Notation BCD But : travailler directement en base 10 Applications de gestion, beaucoup d’E/S Exemple : 35268 est représenté en BCD par : 0011 0101 0010 0110 1000 Inconvénients : Opérations arithmétiques plus compliquées Demande plus de mémoire Les flottants Forme mantisse et exposant : x=m×Be Nombres négatifs représentables overflow zéro underflow Nombres positifs représentables overflow La norme IEEE 754 Simple précision : 31 30 23 22 0 s e = exposant f = mantisse (partie fractionnaire de la) Double précision : 31 30 s 20 e = exposant 0 f = mantisse (partie fractionnaire) 31 0 Suite de la partie fractionnaire de la mantisse Le rôle des performances L’efficacité d’un système dépend des performances matérielles. L’évaluation, la comparaison des performances est capitale pour l’acheteur et le concepteur. C’est un problème délicat. Les affirmations portées sur les ordinateurs n’apportent parfois aucune information utile Mesure des performances Temps d’exécution (temps de réponse) Débit de sortie Distinguer temps réel du temps CPU Commande time : Temps CPU, temps système, temps écoulé, % temps CPU/temps écoulé Caractéristiques d’une CPU Temps de cycle Période de l’horloge (en nanosecondes) Fréquence d’horloge en MHz,GHz Largeur du chemin de données Taille de l’information traitée par la partie opérative : 32, 64 voir 128 bits(PS2) Il manque : Nombre de cycles par instruction Quantité de travail par instruction Relier les métriques CPI = Cycles Par Instruction Cycles Temps = Instructio ns × × Secondes Instructio ns Cycle Métriques répandues : MIPS Nombre d'instructions Fréquence MIPS = 6 = 6 CPI ×10 Temps d'execution ×10 Inconvénients : Indépendant du jeu d’instruction Varie d’un programme à un autre Peut varier en sens inverse des performances Métriques répandues : MFlops Nombre d'instructions flottantes MFlops = 6 Temps d'execution × 10 Inconvénients Indépendant du jeu d’instruction Répartition instructions flottantes lente et rapides ?