Introduction à l'architecture des ordinateurs PDF
Document Details
Uploaded by SumptuousRuthenium2479
Université Hassan II, Faculté des Sciences Ain-Chock, Casablanca
Tags
Related
- Chapitre 1 Introduction à L'architecture des Ordinateurs PDF
- Cours sur la Gestion de la Mémoire M104
- Architecture évoluée - Section 01 (Décembre 2024) PDF
- Architecture des Systèmes - Cours 2024-2025 PDF
- Architecture des Systèmes d'Information Cours 1 PDF
- Résumé du Module 1 : Système d'Information PDF
Summary
Ce document présente un aperçu de l'architecture des ordinateurs, en décrivant les composants clés et leurs fonctions. Il explique les systèmes de numération, incluant la base décimale, binaire, octale et hexadécimale et leurs équivalences. L'objectif est de fournir une compréhension de base de la structure interne des ordinateurs et de leurs principaux constituants.
Full Transcript
Objectifs du module A la fin du module, voici les objectifs à atteindre: ❑ Comprendre la logique combinatoire et la logique séquentielle ❑ Concevoir des circuits combinatoires ❑ Comprendre les principes de base du fonctionnement interne des ordinateurs ❑ Comprendre l’utilité des princ...
Objectifs du module A la fin du module, voici les objectifs à atteindre: ❑ Comprendre la logique combinatoire et la logique séquentielle ❑ Concevoir des circuits combinatoires ❑ Comprendre les principes de base du fonctionnement interne des ordinateurs ❑ Comprendre l’utilité des principaux composants du CPU. ❑ Comprendre les étapes de déroulement de l’exécution d’une instruction ❑ Concevoir des programmes en langage d’assemblage. ❑ Maîtriser: ▪ Modes d’adressage ▪ Gestion des interruptions ❑ Maîtriser la simulation des programmes en langage assembleur. 2 À savoir avant le départ ! Méthode de travail : Prise des notes est indispensable. Le support de cours de chaque séance sera disponible avant la fin de la semaine sur Google Classroom (Code : enyswee) 3 1 Chapitre 1. Introduction à l’architecture des ordinateurs Dans ce chapitre ▪ Vue fonctionnelle et matérielle simplifiée d’un ordinateur ▪ Systèmes de numération ▪ Opérations binaires ▪ Représentation des informations – Les entiers naturels – Les entiers signés – Les nombres flottants – Le texte 6 Introduction à l’architecture des ordinateurs Vue fonctionnelle simplifiée d’un ordinateur Entrer les informations à l’ordinateur sous forme de texte, d'image, de son, ou encore de vidéo. L’information est toujours traduite en langage binaire. Ces informations binaires sont traitées dans l’unité centrale. 7 2 Introduction à l’architecture des ordinateurs Vue fonctionnelle simplifiée d’un ordinateur Les résultats sont extraits à l’aide des périphériques de sortie. En cas de besoin de sauvegarder ces résultats, on utilise les mémoires auxiliaires. 8 Introduction à l’architecture des ordinateurs Classer les éléments suivant selon leur fonction ? Aucune, CPU, Mémoire, Entrée, Sortie Processeur CPU Batterie Aucune RAM CPU Connecteur USB Entrée/Sortie Puce GPS Entrée Carte SIM Mémoire Haut-parleur Sortie Écran Sortie Carte SD Mémoire Vibreur Sortie Dalle tactile Entrée/Sortie 9 3 Introduction à l’architecture des ordinateurs Vue matérielle simplifiée d’un ordinateur ▪ Les périphériques d’entrée : Clavier, souris, scanner, microphone, caméra web, appareil photos numérique, capteurs: les capteurs de températures (thermistances). les capteurs de pression (cristaux piézoélectriques). les capteurs de lumières (capteurs CCD) … Les périphériques de sortie : Ecran, imprimante, haut-parleurs… Les mémoires auxiliaires : Le disque dur, disques optiques (CD-ROM et DVD-ROM), mémoires flash (carte mémoire, clef USB…). 10 Introduction à l’architecture des ordinateurs Vue matérielle simplifiée d’un ordinateur ▪ L’unité centrale se compose de : La carte mère Le microprocesseur Le chipset La mémoire centrale Les cartes d’extension … 11 4 Introduction à l’architecture des ordinateurs La carte mère ▪ permet de connecter tous les composants de l’ordinateur via des ports de différents types: Les ports IDE et SATA (disque dur, lecteur DVD-ROM…). Les port PCI et PCI Express (cartes d’extension) Les ports USB (périphériques). Le port AGP (carte graphique) Les ports séries (clavier et souris,…). Les ports parallèles (imprimante,…). … 12 Introduction à l’architecture des ordinateurs La carte mère 13 5 Introduction à l’architecture des ordinateurs Le microprocesseur ▪ C’est parmi les plus importants composants matériels de l’ordinateur ▪ C’est la puce qui exécute les instructions des programmes ▪ Il est caractérisé spécialement par sa fréquence en GHz Deux microprocesseurs Composé de : ▪ Unité Arithmétique et Logique (UAL): réalise les opérations élémentaires (addition, soustraction, multiplication,...). ▪ Unité de commande: contrôle les opérations sur la mémoire (lecture/écriture) et les opérations à réaliser par l’UAL selon l’instruction en cours d’exécution. ▪ Registres 14 Introduction à l’architecture des ordinateurs Le microprocesseur ▪ Plusieurs constructeurs: Intel, AMD, Motorola,… ▪ Deux types de microprocesseurs(selon le jeu d’instruction) : ▪ CISC (Complex Instruction Set Computer): instructions complexes sur plusieurs cycles d’horloges. ▪ RISC (Reduced Instruction Set Computer): centaine d’instructions de base. Chacune est effectuée rapidement. ▪ Plusieurs familles: ▪ La famille x86 ▪ La famille x64 ▪ famille des PowerPC ▪ La famille ARM ▪ Etc. 15 6 Introduction à l’architecture des ordinateurs Microprocesseur et carte mère Les modules sont interconnectés à l’aide d’un ensemble de bus : - bus de données - bus d'adresses - bus de contrôle et commande Il s'agit de plusieurs pistes électroniques qui sont reliées au microprocesseur. Ils assurent la communication interne et externe du microprocesseur. 16 Introduction à l’architecture des ordinateurs Le chipset ▪ Il gère les flux de données numériques entre le ou les processeur(s), la mémoire et les périphériques. ▪ Conçu pour un type de microprocesseur ▪ Souvent décomposé en deux puces : le Northbridge et le Southbridge. ▪ Augmenter les capacités d'un PC est directement liée au chipset utilisé: résolution graphique maximale et nombre maximal de couleurs, taille mémoire maximale et type de barrette mémoire RAM taille disque dur maximale, vitesse maximale des bus, etc. 17 7 Introduction à l’architecture des ordinateurs La mémoire centrale ▪ Mémoriser temporairement les données lors de l'exécution des programmes ▪ Caractérisée par : sa capacité de stockage (Go) sa fréquence (MHz) ▪ se présente sous forme de barrette ▪ se fixe sur la carte mère sur les slots de la mémoire vive ▪ organisée en emplacements numérotés de taille fixe appelés mots mémoire ▪ chaque mot possède sa propre adresse. 18 Introduction à l’architecture des ordinateurs Les cartes d’extension ▪ des cartes qui permettent d’augmenter les capacités et les fonctionnalités de l’ordinateur ▪ se fixent sur les ports de la carte mère Carte réseau Carte wifi Carte graphique Carte son 19 8 Introduction à l’architecture des ordinateurs L'alimentation ▪ Le bloc d'alimentation est utilisé pour alimenter la carte mère et les différents lecteurs depuis le secteur (en générale 220V). ▪ Les composantes internes d’un ordinateur sont alimentées par la carte mère. ▪ Le voltage interne, en générale, d'un ordinateur est de 12 volts. 20 Introduction à l’architecture des ordinateurs ▪ En résumé nous avons fait un survol des éléments principaux d’un ordinateur. 21 9 Introduction à l’architecture des ordinateurs Systèmes de numération ▪ Bases numériques: Base décimale : 10 chiffres {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. 56)10 56d Base binaire : deux bits {0,1}. 100)2 110b Base octale : 8 chiffres {0, 1, 2, 3, 4, 5, 6, 7}. 70)8 70o Base hexadécimale : 16 symboles {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}. A9)16 A9h ▪ Equivalence ∀ X, b1, b2; un nombre entier naturel X)b1 est représenté de façon unique par un nombre entier Y)b2 Exemple : 38h=56d=70o=111000b 23 Le codage des entiers et l’arithmétique binaire Introduction à l’architecture des ordinateurs Méthode de conversion – Le principe ◼ En base 10, si un nombre N s’écrit xyz)10, cela signifie que : ◼ N = x.100 + y.10 + z.1 ◼ N = x.102 + y.101 + z.100 ◼ Même principe en base 2 ◼ Si un nombre M s’écrit abcde)2, cela signifie que : ◼ M = a.24 + b.23 + c.22 + d.21 + e.20 ◼ M = a.16 + b.8 + c.4 + d.2 + e.1 24 1 Le codage des entiers et l’arithmétique binaire Introduction à l’architecture des ordinateurs Méthode de conversion – base 2 vers base 10 ◼ Il est possible de déterminer la valeur décimale associée à un nombre binaire grâce à un tableau de correspondance. Nombre binaire 1 0 1 0 1 Coefficients 24 16 283 242 221 210 Nombre décimal 16 + 0 + 4 + 0 + 1 = 21 25 Le codage des entiers et l’arithmétique binaire Introduction à l’architecture des ordinateurs Méthode de conversion – base 2 vers base 10 ◼ Si N = 1011010)2, nous obtenons : ◼ N = 126 + 025 + 124 + 123 + 022 + 121 + 020 ◼ N = 164 + 032 + 116 + 18 + 04 + 12 + 01 ◼ N = 90)10 ◼ Si N = 1010001)2, nous obtenons : ◼ N = 126 + 025 + 124 + 023 + 022 + 021 + 120 ◼ N = 164 + 032 + 116 + 08 + 04 + 02 + 1 1 ◼ N = 81)10 26 2 Le codage des entiers et l’arithmétique binaire Introduction à l’architecture des ordinateurs Méthode de conversion – base 10 vers base 2 ◼ Si N = 70)10, nous obtenons : ◼ En lisant de droite à gauche, on retrouve 1000110)2. 27 Le codage Les codages des hexadécimal, entiers et l’arithmétique octal et DCBbinaire Introduction à l’architecture des ordinateurs Méthode de conversion – base 16 vers base 10 ◼ A l’instar du codage binaire, il est possible de déterminer la valeur décimale associée à un nombre hexadécimal en utilisant un tableau de correspondance. Nombre hexa. 1 A F 0 C Valeurs 1 10 15 0 12 Coefficients 164 65536 163 4096 162 256 161 16 10 16 Nombre décimal 65536 + 40960 + 3840 + 0 + 12 = 110348 28 3 Le codage Les codages des hexadécimal, entiers et l’arithmétique octal et DCBbinaire Introduction à l’architecture des ordinateurs Méthode de conversion – base 16 ↔ base 2 Décimal Binaire Hexa La conversion base 16 ↔ base 2 0 0000 0 1 0001 1 s’effectue très simplement car un 2 0010 2 3 0011 3 symbole hexadécimal correspond à 4 0100 4 5 0101 5 6 0110 6 un bloc de quatre bit (quartet). 7 0111 7 8 1000 8 9 1001 9 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F Le codage Les codages des hexadécimal, entiers et l’arithmétique octal et DCBbinaire Introduction à l’architecture des ordinateurs Méthode de conversion – base 16 ↔ base 2 ◼ La conversion hexadécimal vers binaire s’effectue très simplement car un symbole hexadécimal correspond à un bloc de quatre bit (quartet). Nombre hexadécimal 1 A F 0 C Quartets 0001 1010 1111 0000 1100 Nombre binaire 0001101011110001100 4 Le codage Les codages des hexadécimal, entiers et l’arithmétique octal et DCBbinaire Introduction à l’architecture des ordinateurs Méthode de conversion – base 16 ↔ base 2 ◼ Pour effectuer la conversion inverse, il suffit de scinder le nombre binaire en quartets (en commençant par les bit de poids faible) puis de convertir chaque quartet pour obtenir le nombre hexadécimal correspondant. Nombre binaire 101101011010011000 Quartets 0010 1101 0110 1001 1000 Nombre hexadécimal 2 D 6 9 8 Le codage Les codages des hexadécimal, entiers et l’arithmétique octal et DCBbinaire Introduction à l’architecture des ordinateurs Méthode de conversion – base quelconque b vers base 10 Règle: X)b= CkCk-1…C1C0)b = Ck*bk+Ck-1*bk-1 +…+C1*b1+C0*b0)10 Exemple: A87)16 = 10*162+8*161+7*160)10 = 2560+128+7 = 2695)10 5 Le codage Les codages des hexadécimal, entiers et l’arithmétique octal et DCBbinaire Introduction à l’architecture des ordinateurs Opérations binaires : addition et soustraction A B A+B Retenue A B A-B Emprunt 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 0 Exemple: Exemple: 103 1100111 126 1111110 + 23 + 10111 - 23 - 10111 =126 = 1111110 =103 = 1100111 Le codage Les codages des hexadécimal, entiers et l’arithmétique octal et DCBbinaire Introduction à l’architecture des ordinateurs Opérations logiques : AND , OR , XOR, NOT A B A AND B A OR B A XOR B Non (A) Vrai Vrai Vrai Vrai Faux Faux Vrai Faux Faux Vrai Vrai Faux Faux Vrai Faux Vrai Vrai Vrai Faux Faux Faux Faux Faux Vrai En binaire: Vrai=1 et Faux=0 Exemple: 103 AND 23 = 7 car 1100111 AND 10111 = 0000111 103 OR 23 = 119 car 1100111 OR 10111 = 1110111 103 XOR 23 = 112 car 1100111 XOR 10111 = 1110000 NOT(103) = 24 car NOT(1100111)= 0011000 6 Le codage Les codages des hexadécimal, entiers et l’arithmétique octal et DCBbinaire Introduction à l’architecture des ordinateurs Opérations de décalage : à gauche (LSH) et à droite (RSH) LSH ⟺ Mult par 2 RSH ⟺ Div entière par 2 Exemple: LSH(103) = 206 car LSH(01100111)= 11001110 RSH(103) = 51 car RSH(01100111)= 00110011 Le codage de entiers et l’arithmétique binaire Introduction à l’architecture des ordinateurs Représentation des informations Information Données Instructions Brute en Vidéo Image Son Texte Numérique binaire Entier Non signé Signé Flottant 7 Le codage de entiers et l’arithmétique binaire Introduction à l’architecture des ordinateurs Représentation des informations: Les entiers signés Méthode de bit de signe sur n bits: On réserve le bit de gauche pour le signe et n-1 bits pour la valeur absolue La règle de signe est (0 ↔ + et 1 ↔ -) Exemple sur 8 bits: 70)10 = 1000110)2 +70)10 = 01000110b -70)10 = 11000110b Règle: Sur n bits, on peut coder les entiers de l'intervalle :[-(2n-1 – 1) , 2n-1 -1] Inconvénient : Le 0 est représenté deux fois différemment. 10000000 et 00000000. Le codage de entiers et l’arithmétique binaire Introduction à l’architecture des ordinateurs Représentation des informations: Les entiers signés Méthode du complément à 2 sur n bits: Nombres positifs => Méthode de bit de signe Nombres négatifs => On inverse les n bits de sa valeur absolue et on ajoute 1. Exemple sur 8 bits: 23)10 = 00010111)2 -23)10 => VA=23= 00010111)2 : inversion➔11101000➔+1➔11101001 )2 Règle: Sur n bits, on peut coder les entiers de l'intervalle :[-2n-1 , 2n-1 -1] Avantages: Pour effectuer la soustraction A-B, on additionne A et le complément à 2 de B. Pour avoir la valeur absolue de la représentation binaire en complément à 2 d’un nombre négatif (qui commence par 1) , il suffit d’appliquer la méthode. 8 Le codage de entiers et l’arithmétique binaire Introduction à l’architecture des ordinateurs Représentation des informations: Les flottants(nombres réels) Les nombres à virgule flottante et les calculs associés sont régis par le standard l’IEEE-754. 3 modes de représentation Signe Exposant Mantisse Simple précision 1 bit 8 bits 23 bits Double précision 1 bit 11 bits 52 bits Précision étendue 1 bit 15 bits 64 bits Plan du cours Chapitre 1. Introduction à l’archi. des ordi. Chapitre 2. Circuits logiques Chapitre 3. Unités fonctionnelles Chapitre 3. Présentation du μp 8086 et environnement Emu8086. Chapitre 4. Jeu d’instruction du μp 8086 Chapitre 5. Modes d’adressage Chapitre 6. Variables et sauts Chapitre 7. Interruptions et accès aux entrées sorties 40 9 Chapitre 2. Circuits logiques Dans ce chapitre I. Introduction II. Algèbre de BOOLE III. Méthodes de simplification 1. Méthode algébrique 2. Méthode graphique (Tableau de Karnaugh) IV. Logique combinatoire V. Logique séquentielle 41 Chapitre 2. Circuits logiques I. Introduction 1. fonction logique Les machines numériques (ordinateur, tablette, téléphone…) sont constituées d’un ensemble de circuits électroniques. Chaque circuit fournit une fonction logique bien déterminée; Exemple: circuit pour les opérations logiques ou arithmétiques (addition, soustraction, comparaison ,….). Une fonction logique : est réalisée à l’aide de fonctions logiques de base ( ou portes logiques). peut avoir une ou plusieurs entrées + une sortie 42 10 Chapitre 2. Circuits logiques I. Introduction 2. Portes logiques Plusieurs fonctions logiques de base existent (appelées aussi portes logiques). Ces portes logiques sont réalisées à l'aide de transistors. Exemple: la porte NAND 43 Chapitre 2. Circuits logiques I. Introduction 2. Portes logiques Pour concevoir et réaliser un circuit on doit avoir un modèle mathématique de la fonction réalisée par ce circuit. Ce modèle doit prendre en considération le système binaire. Le modèle mathématique utilisé est celui de Boole. 44 11 Chapitre 2. Circuits logiques II. Algèbre de Boole 1. Présentation 1854 : Le mathématicien britannique George Boole démontre que tout processus logique est décomposable en opérations logiques appliquées sur 2 états. L’algèbre de Boole sur {0,1} = Algèbre binaire qui utilise: Deux états logiques: 0 et 1, Vrai et Faux, H et L (purement symbolique) Variables logiques=Symboles (A,b,Out...) : qui peuvent prendre 0 ou 1 (F/V) Opérateurs logiques (Et, OU, NON,…) qui s’appliquent à: Une seule variable logique = opérateur unaire Deux variables logiques = opérateur binaire. 45 Chapitre 2. Circuits logiques II. Algèbre de Boole 2. Opérateurs logiques de base L’opérateur OU ( OR ) Le OU est un opérateur binaire ( deux variables) , Le OU fait la somme logique entre deux variables logiques. F(A,B)=A + B Remarque : il ne faut pas confondre avec la somme arithmétique. Sa table de vérité est : A B A+B 0 0 0 0 1 1 1 0 1 1 1 1 46 12 Chapitre 2. Circuits logiques II. Algèbre de Boole 2. Opérateurs logiques de base L’opérateur ET ( AND ) Le ET est un opérateur binaire ( deux variables) , Le ET réalise le produit logique entre deux variables logiques : F(A,B)=A.B Sa table de vérité est : A B A.B 0 0 0 0 1 0 1 0 0 1 1 1 47 Chapitre 2. Circuits logiques II. Algèbre de Boole 2. Opérateurs logiques de base L’opérateur NON ( NOT ) C’est un opérateur unaire ( agit sur une seule variable) qui à pour rôle d’inverser la valeur d’une variable : F(A)= Non A = 𝐴ҧ (lire : A barre) Sa table de vérité est : A 𝐴 0 1 1 0 48 13 Chapitre 2. Circuits logiques II. Algèbre de Boole 2. Opérateurs logiques de base L’opérateur NOR ( Not-OR ) Le NOR fait la négation du OR logique entre deux variables logiques. F(A,B)= NOR(A,B)=𝐀 + 𝐁 Sa table de vérité est : A B 𝐴 + 𝐵 0 0 1 0 1 0 1 0 0 1 1 0 49 Chapitre 2. Circuits logiques II. Algèbre de Boole 2. Opérateurs logiques de base L’opérateur NAND ( Not-AND ) Le NAND fait la négation du AND logique entre deux variables logiques. F(A,B)= NAND(A,B)=𝐴. 𝐵 Sa table de vérité est : A B 𝐴. 𝐵 0 0 1 0 1 1 1 0 1 1 1 0 NB. NAND et NOR ne sont pas associatifs 50 14 Chapitre 2. Circuits logiques II. Algèbre de Boole 2. Opérateurs logiques de base L’opérateur XOR (Ou-Exclusif) XOR vaut 1 si A est différent de B, c’est un opérateur de disjonction (différence), F(A,B)= XOR(A,B)=A⊕B=𝐀 ഥ. 𝐁 + 𝐀. 𝐁 Sa table de vérité est : A B A⊕B 0 0 0 0 1 1 1 0 1 1 1 0 XOR est associatif => S=A ⊕B ⊕C ⊕D =(A ⊕B) ⊕(C ⊕D) 51 Chapitre 2. Circuits logiques II. Algèbre de Boole 3. Fonctions logiques Fonction logique: c’est une expression composée de: Variables logiques Opérateurs logiques Parenthèses ഥ +b).Out Exemple : F(A, b, Out) =(𝐀 Une fonction logique ne peut prendre qu’une seule valeur de {0,1} {F,V} Une fonction logique à n variables f(a,b,c,d,...) : Est définie de [0,1]n ➔[0,1] Peut être représentée par une table de vérité formée d’un ensemble fini de possibilités de cardinal = 2n lignes 52 15 Chapitre 2. Circuits logiques III. Méthodes de simplification 1. Objectifs de la simplification Les méthodes de simplification des fonctions logiques sont essentielles pour : réduire la complexité des circuits logiques, minimiser le nombre de portes logiques utilisées, améliorer l'efficacité des systèmes numériques. ഥ 𝑪𝑫 Exemple : 𝑨𝑩𝑪 + 𝑨𝑩𝑪 + 𝑨𝑩𝑪𝑫 = 𝑨𝑩 + 𝑨𝑩 Les méthodes utilisées pour simplifier les fonctions logiques sont: 1. Méthode algébrique 2. Méthode graphique avec les tableaux de « Karnaugh » 53 Chapitre 2. Circuits logiques III. Méthodes de simplification 2. Méthode algébrique 54 16 Chapitre 2. Circuits logiques III. Méthodes de simplification 2. Méthode algébrique Théorème de "DE Morgan" ഥ ഥ. 𝒃 𝒂+𝒃=𝒂 ഥ ഥ+𝒃 𝒂. 𝒃 = 𝒂 Théorème du consensus ഥ. 𝒄 + 𝒃. 𝒄 = 𝒂. 𝒃 + 𝒂 𝒂. 𝒃 + 𝒂 ഥ. 𝒄 (𝒂 + 𝒃)(ഥ 𝒂 + 𝒄)(𝒃 + 𝒄) = (𝒂 + 𝒃)(ഥ 𝒂 + 𝒄) 55 Chapitre 2. Circuits logiques III. Méthodes de simplification 2. Méthode algébrique Démontrez les propositions suivantes: ഥ 𝑪𝑫 𝑨𝑩𝑪 + 𝑨𝑩𝑪 + 𝑨𝑩𝑪𝑫 = 𝑨𝑩 + 𝑨𝑩 ഥ 𝑩𝑪 + 𝑨𝑩𝑪 + 𝑨𝑩𝑪 = 𝑩𝑪 + 𝑨. (𝑩⊕𝑪) 𝑨𝑩𝑪 + 𝑨 56 17 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) a. présentation Tableau de Karnaugh est : une méthode graphique utilisée pour simplifier/optimiser les FL. une grille à 2n cases (n: nombre de variables de la FL) s’appliquer aux FL de 2,3,4,5 et 6 variables Chaque case correspond à une ligne dans la table de vérité 57 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) b. construction Le principe est de placer les combinaisons possibles des variables d'entrée dans les cases de la table, en suivant l'ordre de Gray: deux cases adjacentes ne diffèrent que par une seule variable. 1 variable => 0,1 2 variables => 00, 01,11,10 3 variables => 000, 001,011,010,110, 111,101,100 58 18 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) c. remplissage On remplis la table suivant la FL: Mettre "1" dans les cases correspondant aux termes où la fonction prend la valeur "1" "0" pour les autres. Exemple 1 : FL à deux variables F1(A,B)= 𝐀 + 𝐁. 𝐀 + (𝐀 + 𝐁) Table de Vérité Table de Karnaugh à 2 variables A B F₁(A, B) 0 0 1 1 1 0 1 0 1 0 1 0 1 1 1 1 59 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) c. remplissage Exemple 2 : FL à trois variables 𝑭𝟐 𝑨, 𝑩, 𝑪 = 𝑨. 𝑩 + (𝑨 + 𝑩) + 𝑩𝑪 Table de Vérité Table de Karnaugh à 3 variables A B C F2(A,B,C) 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 60 19 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) d. Groupement des "1" Recherchez des groupes de "1" dans la table. Ces groupes : doivent avoir une taille qui est une puissance de deux (1, 2, 4, 8, etc.) peuvent être constitués de cases adjacentes horizontalement ou verticalement, mais pas en diagonale. peuvent également traverser les bords de la table. doivent contenir au moins un 1 non utilisé par les autres groupements Un groupe de 1 seul "1" représente un terme qui ne peut pas être simplifié. Un groupe de 2 "1" permet de simplifier une variable. Un groupe de 4 "1" permet de simplifier deux variables, etc. Tous les 1 doivent apparaître au moins une fois dans les groupements 61 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) d. Groupement des "1" Rechercher les groupements en commençant par les cases qui n’ont qu’une seule façon de se grouper Rechercher les groupements les plus grands L’expression logique finale est la réunion (ou logique) des groupements après simplification et élimination des variables qui changent d’état. 62 20 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) d. Groupement des "1" Exemple 1 : FL à deux variables F1(A,B)= 𝐀 + 𝐁. 𝐀 + (𝐀 + 𝐁) Table de Vérité Table de Karnaugh à 2 variables A B F₁(A, B) 0 0 1 𝐁 1 1 0 1 0 0 1 A 1 0 1 1 1 1 Donc, F1(A,B)= 𝐀 + 𝐁. 𝐀 + (𝐀 + 𝐁) est simplifiée en : 𝐀 + 𝐁 63 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) d. Groupement des "1" Exemple 2 : FL à trois variables 𝐅𝟐 𝐀, 𝐁, 𝐂 = 𝐀. 𝐁 + (𝐀 + 𝐁) + 𝐁𝐂 Table de Vérité Table de Karnaugh à 3 variables A B C F2(A,B,C) 0 0 0 0 0 0 1 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 0 1 1 1 A 1 0 1 1 1 1 0 1 BC 1 1 1 1 Donc, 𝐅𝟐 𝐀, 𝐁, 𝐂 = 𝐀. 𝐁 + (𝐀 + 𝐁) + 𝐁𝐂 est simplifiée en : 𝐀 + 𝐁𝐂 64 21 Chapitre 2. Circuits logiques III. Méthodes de simplification 3. Méthode graphique (tableau de Karnaugh) e. Exemples d’application Trouver la forme simplifiée des fonctions à partir des deux tableaux ? 65 22 IV. Logique combinatoire 1. Circuit combinatoire 2. Portes logiques 3. Logigramme d’un circuit 4. Additionneur 5. Décodeur 6. Multiplexeur Chapitre 2. Circuits logiques IV. Logique combinatoire 1. Circuit combinatoire Un circuit combinatoire est un type de circuit logique où la sortie dépend uniquement des combinaisons actuelles des entrées, sans tenir compte des états passés ou des conditions temporelles. Contrairement aux circuits séquentiels, qui utilisent des dispositifs de mémoire comme des bascules (flip-flops), les circuits combinatoires ne possèdent pas de mémoire et leurs sorties changent instantanément lorsque les entrées changent. Exemple: Schéma bloc d’un circuit combinatoire à n entrés et m sorties: 67 1 Chapitre 2. Circuits logiques IV. Logique combinatoire 2. Portes logiques Une porte logique est un circuit élémentaire associé à un opérateur logique de base tel que: NOT, AND, NAND, OR, NOR, XOR. Exemple: Schéma bloc d’un circuit combinatoire à n entrés et m sorties: 68 Chapitre 2. Circuits logiques IV. Logique combinatoire 3. Logigramme d’un circuit Un logigramme d’un circuit est une représentation graphique d'un circuit logique. Il permet de visualiser la structure d’un circuit électronique ou numérique en montrant comment les entrées sont transformées en sorties via des portes logiques. Exemple: Réalisons les logigramme des circuits combinatoires associés aux deux fonctions logiques suivantes: ഥ. 𝑪 𝑭𝟏(𝑨, 𝑩, 𝑪) = 𝑨. 𝑩 + 𝑨 et ഥ 𝑭𝟐(𝑨, 𝑩, 𝑪) = 𝑨 ⊕ 𝑩 + 𝑨 ⋅ 𝑪 69 2 Chapitre 2. Circuits logiques IV. Logique combinatoire 4. Additionneur a. Demi additionneur 1 bit (DA) Le demi additionneur est un circuit combinatoire qui permet de réaliser la somme arithmétique de deux nombres A et B chacun sur un bit. A la sotie on va avoir la somme S et la retenu R ( Carry). - Table de vérité: A B S=A+B R 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 - 𝑺(𝑨, 𝑩) = 𝑨 ⊕ 𝑩 et 𝑹 𝑨, 𝑩 = 𝑨. 𝑩 70 Chapitre 2. Circuits logiques IV. Logique combinatoire 4. Additionneur b. Additionneur complet 1 bit (ADC) Dans une addition binaire sur plusieurs bits, la retenue d’une opération bit à bit se propage dans les opérations suivantes A la ième opération, le demi additionneur complet réalise la somme arithmétique des deux bits ai et bi en tenant compte de la retenue précédente Ri-1 A la sotie on va avoir la somme Si et la retenu suivante Ri 71 3 Chapitre 2. Circuits logiques IV. Logique combinatoire 4. Additionneur b. Additionneur complet 1 bit (ADC) - Table de vérité: Entrées Sorties - 𝑺𝒊 (𝒂𝒊 , 𝒃𝒊 , 𝑹𝒊−𝟏 ) = 𝒂𝒊 ⊕ 𝒃𝒊 ⊕ 𝑹𝒊−𝟏 ai bi Ri-1 Si Ri - 𝑹𝒊 𝒂𝒊 , 𝒃𝒊 , 𝑹𝒊−𝟏 = 𝒂𝒊. 𝒃𝒊 + 𝒂𝒊 ⊕ 𝒃𝒊. 𝑹𝒊−𝟏 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 72 Chapitre 2. Circuits logiques IV. Logique combinatoire 4. Additionneur b. Additionneur 4 bits - C’est un circuit qui réalise l’addition de 2 nombres 4 bits A et B. - Les 8 entrées sont les bits de A=A3A2A1A0)2 et de B=B3B2B1B0)2 - Les sorties sont les 4 bits de la somme S= S3S2S1S0)2 + la retenu finale. 73 4 Chapitre 2. Circuits logiques IV. Logique combinatoire 5. Décodeur Les circuits complexes sont généralement décomposés en plusieurs blocs, chacun remplissant une fonction spécifique. Par exemple, un circuit arithmétique qui peut être décomposé en blocs d’addition, soustraction, multiplication, division. Chaque bloc est conçu avec un bit CS (Chip Select), qui sert à activer ou désactiver le bloc en question. Lorsque le bit CS est égal à 1, le bloc est activé et peut interagir ou traiter les signaux qui lui sont destinés. À l'inverse, lorsque CS est égal à 0, le bloc est désactivé, et il est isolé du reste du circuit pour éviter toute interférence ou consommation inutile de ressources. 74 Chapitre 2. Circuits logiques IV. Logique combinatoire 5. Décodeur En pratique, il est souvent nécessaire de sélectionner un bloc parmi plusieurs en activant un circuit spécifique tout en désactivant les autres blocs. Cette opération est généralement réalisée à l'aide de décodeurs ou de multiplexeurs, qui permettent de diriger le signal de contrôle vers le circuit désiré. Le décodeur est utilisé pour activer une seule sortie parmi plusieurs, en fonction des entrées binaires, ce qui permet d'identifier le bloc à activer. Le multiplexeur, quant à lui, sélectionne l'une des nombreuses entrées pour la diriger vers une seule sortie, en fonction d'une combinaison d'entrées de sélection. 75 5 Chapitre 2. Circuits logiques IV. Logique combinatoire 5. Décodeur C’est un circuit combinatoire qui permet de convertir une entrée binaire codée en une sortie unique parmi plusieurs lignes de sortie. Autrement dit, pour chaque combinaison d'entrées, une seule des sorties est activée (ou mise à 1), tandis que toutes les autres sont désactivées (ou maintenues à 0). Utilisé pour sélectionner une ligne parmi plusieurs ou pour activer un dispositif particulier dans les systèmes numériques. En général, un décodeur a n entrées peut activer une seule sortie parmi 2n. Par exemple : - Un décodeur 2 vers 4 a 2 entrées et 4 sorties. - Un décodeur 3 vers 8 a 3 entrées et 8 sorties. Chaque combinaison d'entrées correspond à une seule sortie active, les autres étant désactivées. 76 Chapitre 2. Circuits logiques IV. Logique combinatoire 5. Décodeur Exemples: Si les lignes de sélection reçoivent (A=0, B=1 et C=1), cela signifie que la sortie S3 doit être à 1 et que les autres sorties doivent être à 0. Si les lignes de sélection reçoivent (A=1, B=0 et C=1), cela signifie que la sortie S5 doit être à 1 et que les autres sorties doivent être à 0. S0=0 S0=0 S1=0 S1=0 S2=0 S2=0 A=0 A=1 S3=1 S3=0 B=1 B=0 S4 =0 S4=0 C=1 C=1 S5=0 S5=1 S6=0 S6=0 S7=0 S7=0 77 6 Chapitre 2. Circuits logiques IV. Logique combinatoire 5. Décodeur Conception La table de vérité schéma électrique A B C S0 S1 S2 S3 S4 S5 S6 S7 S0 0 0 0 0 1 0 0 0 0 0 0 S1 0 0 1 0 1 0 0 0 0 0 0 S2 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 S3 1 0 0 0 0 0 0 1 0 0 0 S4 1 0 1 0 0 0 0 0 1 0 0 S5 1 1 0 0 0 0 0 0 0 1 0 S6 1 1 1 0 0 0 0 0 0 0 1 S7 A B C 78 Chapitre 2. Circuits logiques IV. Logique combinatoire 6. Multiplexeur C’est un circuit combinatoire qui permet de sélectionner une entrée parmi plusieurs et de la diriger vers la sortie unique. Le multiplexeur contient généralement: – Une seule sortie. – n entrées de sélection pour choisir l’entrée à diriger vers la sortie. – 2n entrées de données. Par exemple : – Un multiplexeur à 4 entrées de données et 2 entrées de sélection qui permettent de choisir l'une des quatre entrées pour l'envoyer à la sortie. 79 7 Chapitre 2. Circuits logiques IV. Logique combinatoire 6. Multiplexeur Exemples: Si les lignes de sélection reçoivent (A=0, B=1 et C=0), cela signifie que la sortie S reçoit l’information de l’entrée D2. Si les lignes de sélection reçoivent (A=1, B=1 et C=0), cela signifie que la sortie S reçoit l’information de l’entrée D6. D0 D0 D1 D1 D2 D2 D3 D3 D4 S D4 S D5 D5 D6 D6 D7 D7 AB C AB C 010 110 80 Chapitre 2. Circuits logiques IV. Logique combinatoire 6. Multiplexeur Conception d’un multiplexeur 4:1 – 2 entrées de sélection A et B. – 4 entées de données D0, D1, D2 et D3. – Une sortie S La table de vérité: schéma électrique: A B S 0 0 D0 0 1 D1 1 0 D2 1 1 D3 La fonction logique: ഥ𝐁 𝐒(𝐀, 𝐁, 𝐃𝟎 , 𝐃𝟏 , 𝐃𝟐 , 𝐃𝟑 ) = 𝐀 ഥ 𝐃𝟎 + 𝐀 ഥ 𝐁𝐃𝟏 + 𝐀𝐁 ഥ 𝐃𝟐 + 𝐀𝐁𝐃𝟑 81 8 Architecture des ordinateurs Questions ? 82 9 Plan du cours Chapitre 1. Introduction à l’archi. des ordi. Chapitre 2. Circuits logiques Chapitre 3. Unités fonctionnelles Chapitre 3. Présentation du μp 8086 et environnement Emu8086. Chapitre 4. Jeu d’instruction du μp 8086 Chapitre 5. Modes d’adressage Chapitre 6. Variables et sauts Chapitre 7. Interruptions et accès aux entrées sorties 83 Chapitre 3.Unités fonctionnelles Dans ce chapitre I. Architecture Von Neumann des ordinateurs II. Les mémoires 1. Introduction 2. Mémoires vives 3. Mémoires mortes 4. Disques durs III. Le microprocesseur 1. Schéma fonctionnel 2. Cycle d’exécution 3. Jeu d’instructions 84 1 I. Architecture Von Neumann Chapitre 3.Unités fonctionnelles I. Architecture Von Neumann Grands noms 1.1854 : G. Boole démontre que tout processus logique est décomposable en opérations logiques appliquées sur 2 états 2. 1938 : C. E. Shannon fait le parallèle entre les circuits électriques et l’algèbre booléenne et définit le bit 3. 1945 : V. Neumann définit un modèle formel d’un calculateur (Machine de Von Neumann) 86 2 Chapitre 3.Unités fonctionnelles I. Architecture Von Neumann Architecture schématique d’un calculateur 87 Chapitre 3.Unités fonctionnelles I. Architecture Von Neumann Architecture de type Harvard ? 88 3 II. Les mémoires 1. Introduction 2. Mémoires vives 3. Mémoires mortes 4. Disques durs Chapitre 3.Unités fonctionnelles II. Les mémoires 1. Introduction Une mémoire est un dispositif permettant de stocker des informations binaires sous forme de mots mémoire ▪ Les informations sont appelées des données. ▪ Chaque mot possède une adresse. Structure générale d’une mémoire Sélection Commande (lecture et/ou écriture ) (Chip select) Données (m bits) Mémoire Adresses ( n bits) 90 4 Chapitre 3.Unités fonctionnelles II. Les mémoires 1. Introduction Paramètres d ’une mémoire ▪ TECHNOLOGIE SRAM,DRAM,… ▪ FORMAT Nombre de bits (m) de la donnée = taille d’un seul mot mémoire ▪ NOMBRE DE MOTS MEMOIRES. Nombre de mots (N) pouvant être stockés. N=2n ( où n est le nombre de bits d ’adresse) ▪ CAPACITE C = m * N=m*2n ▪ Exemple: Mémoire : 8 bits de données, 16 bits d ’adresse. Format : m=8 Nombre de mots: N = 216 = 65536 Capacité : C = m N = 8 65536 = 524288 bits 91 Chapitre 3.Unités fonctionnelles II. Les mémoires 1. Introduction Classification des mémoires Les mémoires peuvent êtres classée en trois catégories selon la technologie utilisée : Mémoire à semi-conducteur ( mémoire centrale(RAM), ROM, PROM,…) : rapide mais de taille réduite. Mémoire magnétique ( disque dur, disquette,…) : moins rapide mais stocke un volume d’informations très grand. Mémoire optique ( DVD, CDROM,..) 92 5 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) ▪ La RAM (Random Access Memory) peut être vue comme une boîte contenant des cases pouvant contenir chacune un mot mémoire. ▪ Un mot mémoire est de taille fixe en nombre de bits ▪ On peut lire et écrire des données ▪ Ces mémoires sont volatiles c.-à-d. perdent le contenu lorsqu’elles ne sont plus alimentées 93 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Structure physique: R /W RAM Registre d’Adresse Mémoire : D E sauvegarde l’adresse du mot à C Bus d’adresse R O A Structure D lire ou à écrire. E M U R interne RIM E Registre d’Information Mémoire: sauvegarde l’information lue à RIM partir de la mémoire ou à écrire Bus de données dans la mémoire. 94 6 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Vue logique de la RAM Peut être vu comme un tableau de mots (m octets) chacun a une adresse unique et propre. Une cellule mémoire stock 1 seul bit. Un mot mémoire stocke une information sur m bits (m cellules). Une adresse est un numéro unique qui permet d’accéder à un mot mémoire. Les adresses sont séquentielles ( consécutives ) La taille de l’adresse ( le nombre de bits ) dépend de la capacité de la mémoire. 95 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Le schéma bloc ▪ Dispose de : n lignes d'adresse pour n lignes d’adresse désigner la case (ou mot) 2n mots de m bits mémoire qui sera lue ou écrite. CS m lignes d'entrée/sortie pour envoyer l'information à écrire ou recevoir l'information à lire de la case mémoire. R/W m lignes d’entrée/ sortie une ligne R/W pour sélectionner l'accès en lecture ou en écriture. une ligne CS qui permet « d'isoler » la mémoire des autres circuits (pour ne pas altérer les informations sauvegardées). 96 7 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) L’organisation : première méthode Utiliser un décodeur qui : Prend en entrée les n lignes d'adresse Fournit en sortie 2n lignes permettant d'activer simultanément les m points mémoire d'un mot. Exemple : n = 9 et m = 4 Pour réaliser le décodeur: 512 portes ET 9 portes NON au total = 521 portes. 97 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) L’organisation : deuxième méthode (pour n=9 et m=4) ▪ Nous voulons 29 mots de 4 bits : (29 * 4 = 26 * 23 *4=64*32) ▪ On peut organiser la mémoire en une matrice de 64 lignes et 32 colonnes. ▪ Chacune des 64 lignes peut être sélectionnée en utilisant 6 bits d'adresse. ▪ il faut encore utiliser 4 multiplexeurs, sélectionnant chacun une ligne sur 8. ▪ Les 3 derniers bits d'adresse sont affectés à ces multiplexeurs. ▪ Cette architecture est dénommée adressage X-Y ou bidimensionnel. ▪ 64 portes ET pour le décodeur ▪ 9 portes (8 ET et 1 OU) pour chaque multiplexeur ▪ au total 64 + (9 x 4) = 100 portes. 98 8 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Les cycles de fonctionnement: temps d’accès, temps de cycle ▪ Deux paramètres caractérisent la vitesse d'une mémoire : Le temps d'accès (ta) = temps qui sépare une demande de lecture de l'obtention de l'information ; Le temps de cycle (tc) = l'intervalle de temps minimum qui sépare deux demandes successives en lecture ou écriture. ▪ La fréquence maximale de fonctionnement est égale à l'inverse du temps de cycle. 99 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Les cycles de fonctionnement: La bande passante ▪ Un autre paramètre est la bande passante qui caractérise le débit maximum en bits par seconde. 𝒎 ▪ En accès aléatoire cette bande passante est égale à 𝑩 = où m 𝑻𝒄 est le nombre de bits transférés par cycle. ▪ Mais pour des données consécutives, certaines architectures (entrelacement, etc.) et certains modes de lecture (rafales, etc.) 𝒎 peuvent permettre d'approcher la limite 𝑩𝒎𝒂𝒙 = 𝑻𝒂 100 9 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Le cycle de lecture – Le principe de fonctionnement Il comporte les actions suivantes : établir l'adresse afficher la fonction de lecture sélectionner le ou les boîtiers nécessaires après un certain délai, l'information apparaît en sortie qui passe en basse impédance. reste présente jusqu'à la fin du Le chronogramme cycle. 101 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Le cycle de lecture – Le chronogramme en mode X-Y 102 10 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Le cycle d’écriture – Le principe de fonctionnement Il comporte les actions suivantes : établir l'adresse sélectionner le ou les boîtiers nécessaires. établir la donnée sur l'entrée. établir une impulsion d'écriture ▪ L'adresse doit être stabilisée Le chronogramme avant la sélection et les données doivent être stabilisées avant le signal de chargement 103 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) Deux grandes catégories de RAM La mémoire dynamique ou DRAM : Dynamic RAM ▪ mémorisation à l’aide de condensateurs et des transistors. Cette technologie oblige à rafraîchir les données. Application : Mémoire centrale La mémoire statique ou SRAM : Static RAM ▪ mémorisation à l’aide de bascules tant que l’alimentation est présente. Application : Mémoire cache d ’un ordinateur qui est une zone de mémoire rapide où sont stockées les données fréquemment utilisées par l’ordinateur. 104 11 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) a. DRAM ◼ La mémoire RAM dynamique est principalement utilisée pour construire des barrettes qui seront placés dans les bancs mémoire de la carte mère : elle est alors utilisée comme éléments de la mémoire centrale des ordinateurs. ◼ Différentes types de DRAM sont utilisés, nous allons en présenter quelques uns dans cette partie : ◼ SDRAM ◼ DDR SDRAM ◼ DDR II, III, … 105 12 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) a. DRAM - Le SDRAM ◼ La mémoire SDRAM (Synchronous Dynamic RAM) est apparue en 1996. ◼ la SDRAM synchronise ses entrées/sorties avec l'horloge système, ce qui accélère considérablement les échanges. ◼ Elle n’impose aucun état d’attente en lecture comme écriture pour communiquer avec le microprocesseur. ◼ Une mémoire SDRAM à 133 Mhz peut débiter un maximum de 133 millions d´informations par seconde. 106 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) a. DRAM - La DDR SDRAM (ou PC) ◼ La DDR SDRAM (Double Data Rate SDRAM), apparue en 1999, est une évolution de la SDRAM qui exploite les fronts montants et descendant de l'horloge pour doubler son débit. ◼ Les DDR sont des mémoires 64 bits (8 octets) => une barrette peut transmettre : 8*2=16 octets à chaque cycle d'horloge (le facteur 2 provenant de « l'effet DDR »). ◼ Par exemple, si la fréquence est de 133 MHz, on a donc à chaque seconde : 16*133*106octets=2128Mo , soit un débit théorique d'environ 2 100 Mo/s : c'est donc de la PC2100. 107 1 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) a. DRAM - La DDR II SDRAM (ou PC2) ◼ La DDR II est une évolution de la DDR SDRAM introduite en 2003. ◼ On ne transfère plus deux bits en un cycle d'horloge mais 4. 108 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) a. DRAM - La DDR III SDRAM (ou PC3) ◼ Commercialisation depuis mai 2007 au Japon ◼ C’est une évolution de la DDR II qui permet une économie de consommation de 40% par rapport à la DDRII. ◼ Ceci est permis par une baisse de la tension utilisée, de 2,5 V sur la DDR à 1,8 V sur la DDR2, 1,5 V sur la DDR3 ◼ On ne transfère plus 4 bits en un cycle d'horloge mais 8. 109 2 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) b. SRAM - Présentation ▪ Ce type de mémoire est assez rapide et plus chère que la DRAM car les points mémoire sont des bascules D ou RS. ▪ Cette mémoire est qualifiée de statique car, l'information stockée, n'est pas altérée au cours du temps. ▪ Elles sont principalement utilisées comme mémoire cache dans les ordinateurs ou dans les systèmes embarqués (pour sa faible consommation). ▪ Volatiles comme les DRAM, les SRAM ne peuvent pas se passer d’alimentation. 110 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) b. SRAM - La mémoire cache (antémémoire) Le fonctionnement de la mémoire cache repose sur deux principes : le principe de localité temporelle des données. le principe de localité spatiale des données Localité temporelle des données : Si une donnée d'adresse A est accédée à un temps t, la probabilité qu'elle soit de nouveau accédée aux temps t+1, t+2 est très forte. Elle est copiée dans le cache pour minimiser les temps d'accès suivants Localité spatiale des données : Si une donnée d'adresse A est accédée à un temps t, la probabilité que les données d'adresses voisines A+1, A+2,.. soient accédées aux temps t+1, t+2 est très forte. La donnée d'adresse A et les données voisines sont donc copiées dans le cache pour minimiser les temps d'accès suivants 111 3 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) b. SRAM - La mémoire cache (antémémoire) Les données sont transférées de la mémoire centrale vers la mémoire cache sous forme de blocs de données Besoin d’une stratégie de correspondance entre les blocs de la mémoire cache et les blocs de la mémoire centrale 112 Chapitre 3.Unités fonctionnelles II. Les mémoires 2. Mémoires vives (RAM) b. SRAM - La mémoire cache sur plusieurs niveaux (L1, L2, …) 113 4 Chapitre 3.Unités fonctionnelles II. Les mémoires 3. Mémoires mortes Les types de la ROM - PROM la ROM (Read Only Memory) peut être vue comme une boîte contenant des cases pouvant contenir chacune un mot mémoire. Elle ne possède donc ni ligne d’entrée, ni ligne R/W car nous ne pouvons que lire des informations. Le procédé de fabrication des ROM étant trop coûteux, nous préférons utiliser des ROM programmable (Programmable ROM ou PROM) une mémoire PROM (Programmable Read Only Memory) qui ne peut être programmée qu'une seule fois (ou OTP : One Time Programming) 115 Chapitre 3.Unités fonctionnelles II. Les mémoires 3. Mémoires mortes Les types de la ROM - EPROM Une mémoire EPROM (Erasable Programmable Read-Only Memory signifiant mémoire morte reprogrammable) Elle peut être effacée et reprogrammée plusieurs fois et peut être lue à l'infini. Les EPROM possèdent une fenêtre transparente permettant le passage de rayons ultraviolets nécessaires à l'effacement. La programmation de l'EPROM nécessite de la positionner physiquement sur un appareil destiné à cette opération 116 5 Chapitre 3.Unités fonctionnelles II. Les mémoires 3. Mémoires mortes Les types de la ROM - EEPROM une mémoire EEPROM (Electrically Erasable Programmable Read- Only Memory) signifiant mémoire morte programmable et effaçable électriquement. Le cycle d'écriture d'une EEPROM est environ 1000 fois plus long que celui d'une RAM. Par contre rappelons que les temps d'accès en lecture des mémoires RAM, ROM, PROM, EPROM et EEPROM sont comparables. 117 Chapitre 3.Unités fonctionnelles II. Les mémoires 3. Mémoires mortes Les types de la ROM - EEPROM La mémoire flash est un type d’EEPROM qui permet de modifier plusieurs espaces mémoires en une seule opération. Les différents types de mémoire flash : CompactFlash SmartMedia cards (SM) MultiMedia cards (MMC) Secure Digital (SD) MemoryStick MemoryStick Micro M2 xD Card Micro SD ou Transflash 118 6 Chapitre 3.Unités fonctionnelles II. Les mémoires 3. Mémoires mortes Les types de la ROM - EEPROM La mémoire flash est un type d’EEPROM qui permet de modifier plusieurs espaces mémoires en une seule opération. Les différents types de mémoire flash : CompactFlash SmartMedia cards (SM) MultiMedia cards (MMC) Secure Digital (SD) MemoryStick MemoryStick Micro M2 xD Card Micro SD ou Transflash 119 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs a. DD classiques: HD, HDD Mémoire de masse à disque tournant magnétique Connecteurs IDE ou SATA + Alimentation Plateaux + Tête de lecture + Puce du contrôleur Trop fragile aux chocs 3,5 pouces (8,89 cm) et 2,5 pouces (6,35 cm) Capacité : 25 Go en 1998 par IBM 20 To en 2021 par Seagate 120 7 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs b. Solid-state drive: SSD Mémoire de masse Connecteurs PCIe (protocol NVMe), SATA, mSATA + Alimentation Temps d’accès très rapides pour une consommation généralement inférieure aux HDD Quasiment insensibles aux chocs 2,5 pouces ou moins 121 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs b. Solid-state drive: SSD 122 8 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs b. Solid-state drive: SSD 123 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs c. Ports et interfaces SATA Serial Advanced Technology Attachment mSATA Format mini SATA M.2 Ce format est une amélioration du mSATA NVMe Non-Volatile Memory Express = spécification d'interface permettant à un ordinateur d'accéder à un périphérique de stockage permanent à travers un bus PCI Express. 124 9 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs c. Utilisation d’un disques dur Driver ou pilote : Programme permettant à un système d'exploitation de reconnaître un matériel et de l'utiliser correctement. Sans driver, le matériel reste inutilisable par un ordinateur. Système de fichier (FS): Pour stocker, organiser et gérer des données sur un support de stockage (disque dur, clé USB, carte mémoire, etc.) un système d'exploitation utilise un système de fichiers. Le système de fichiers fournit une structure logique pour le stockage des fichiers et des dossiers en les organisant en arborescence. Chaque fichier et dossier est identifié par un nom unique, et le FS maintient des informations telles que la taille du fichier, la date de création et la date de modification. Différents types : journalisé: NTFS, ext3, ext4,… non journalisé: FAT32, ext2fs, HPFS … 125 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs c. Utilisation d’un disques dur Formater un disque : Signifie effacer toutes les données qui y sont stockées et préparer le disque pour être utilisé à nouveau. Deux types de formatage : Rapide => efface la table d'allocation des fichiers et les fichiers de journalisation, mais ne supprime pas réellement les données sur le disque. Complet => efface complètement toutes les données du disque, y compris les données résiduelles et les secteurs défectueux. 126 1 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs c. Utilisation d’un disques dur Table des partitions : Structure de données qui définit les partitions sur un disque dur. Les partitions sont des sections logiques du disque dur qui peuvent être formatées et utilisées pour stocker des données. La table des partitions est généralement située dans les premiers secteurs du disque dur et elle contient des informations sur les partitions, telles que leur taille, leur type de système de fichiers et leur emplacement sur le disque. 127 Chapitre 3.Unités fonctionnelles II. Les mémoires 4. Disques durs c. Utilisation d’un disques dur MBR ? GPT ?: Le MBR est une structure de données située dans le premier secteur d'un disque dur, qui contient des informations sur la façon dont le disque est partitionné et sur le processus de démarrage du système d'exploitation. Les nouveaux disques SSD peuvent également utiliser une technologie de partitionnement plus récente appelée GUID Partition Table (GPT), qui remplace le MBR et fournit des fonctionnalités supplémentaires telles que la prise en charge de disques de plus grande capacité (supérieure à 2 To) et la prise en charge de plusieurs systèmes d'exploitation sur un même disque. 128 2 III. Le microprocesseur 1. Schéma fonctionnel 2. Cycle d’exécution 3. Jeu d’instructions III. Le microprocesseur 1. Schéma fonctionnel 2. Cycle d’exécution 3. Jeu d’instructions 3 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 1. Schéma fonctionnel 131 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 1. Schéma fonctionnel Séquenceur: organise l'exécution des instructions au rythme d’une horloge élabore tous les signaux de synchronisation internes ou externes coordonner le travail de toutes les autres unités ( UAL , mémoire,…. ) Registre d'instruction + décodeur : L’instruction à exécuter est rangée dans le registre instruction puis décodée par le décodeur d’instruction selon son code opération PC: Compteur de Programme (ou compteur ordinal): Registre dont le contenu est initialisé avec l'adresse de la première instruction du programme. Il contient toujours l’adresse de la prochaine instruction à exécuter. 132 4 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 1. Schéma fonctionnel Le registre d'état: Composé de bits à considérer individuellement Chaque bit est un indicateur dont l'état dépend du résultat du dernier calcul Appelé indicateur d’état ou flag ou drapeaux On peut citer les indicateurs de : retenue (carry : C) retenue intermédiaire (Auxiliary-Carry : AC) signe (Sign : S) débordement (overflow : OV ou V) zéro (Z) parité (Parity : P) 133 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 1. Schéma fonctionnel Les accumulateurs: Registres de travail qui servent à stocker une opérande au début d'une opération arithmétique et le résultat à la fin de l'opération. Remarques: Le microproc peut contenir des registres autre que CO,RI et ACC. Généralement !!! la taille d’un registre de travail est égale à la taille d’un mot mémoire; 134 5 III. Le microprocesseur 1. Schéma fonctionnel 2. Cycle d’exécution 3. Jeu d’instructions Cycle d’horloge => exécution d’une instruction? 6 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 2. Cycle d’exécution Dans une architecture CISC, une instruction est exécutée en plusieurs étapes: Lecture de l'instruction : l'ordinateur lit l'instruction depuis la mémoire et la met dans un registre appelé le registre d'instruction (compteur de programme). Décodage de l'instruction : l'ordinateur décrypte l'instruction et détermine quelle opération doit être effectuée. Lecture des opérandes : l'ordinateur lit les opérandes nécessaires à l'opération depuis la mémoire ou depuis les registres. Exécution de l'opération : l'ordinateur effectue l'opération sur les opérandes lus précédemment. Écriture du résultat : l'ordinateur stocke le résultat de l'opération dans la mémoire ou dans un registre. 137 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 2. Cycle d’exécution Dans une architecture CISC, une instruction est exécutée en plusieurs étapes: Lecture de l'instruction Décodage de l'instruction Lecture des opérandes Exécution de l'opération Écriture du résultat 138 7 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 2. Cycle d’exécution Comment Répéter ? Avec ou sans pipeline 139 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 2. Cycle d’exécution (séquentielle sans branchement) Modèle (n étapes; k instructions ) dans un modèle classique : T = n x k temps de cycles dans un modèle pipeline : T = k + n-1 temps de cycles 140 8 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 2. Cycle d’exécution pipeline avec un nombre d'étages importants ? Pentium 4 (novembre 2000 ) qui dispose d'un pipeline de 20 étages. En fait certaines instructions posent problème : Les instructions dépendantes entre-elles les branchements conditionnels 141 Chapitre 3.Unités fonctionnelles III. Le microprocesseur 2. Cycle d’exécution Le pipeline permet d'accroître la vitesse d'exécution de plusieurs instructions. Sans pipeline: les instructions sont exécutées une après l’autre. Une nouvelle instruction n'est commencée que lorsque l'instruction précédente est complètement terminée. Avec un pipeline: Le μP commence une nouvelle instruction avant d'avoir fini la précédente. Plusieurs instructions s’exécutent simultanément. Le temps d'exécution d'une seule instruction n'est pas réduit. Par contre, le débit du micro-processeur, (nombre d'instructions exécutées par unité de temps), est augmenté. 142 9 III. Le microprocesseur 1. Schéma fonctionnel 2. Cycle d’exécution 3. Jeu d’instructions Chapitre 3.Unités fonctionnelles III. Le microprocesseur 3. Jeu d’instructions a. Présentation Le jeu d’instructions décrit l’ensemble des opérations élémentaires qu’un microprocesseur peut exécuter: Transfert de données entre la mémoire et les registres – MOVE, LOAD, STORE… Opérations arithmétiques et logiques – ADD, SUB, MUL, DIV, AND, OR, NEG, NOT… Décalages et rotations – SHL, SHR, SAL, SAR (décalage sans rotation [remplacement par 0]) – ROL, ROR, RCL, RCR(décalage avec rotation)… Ruptures de séquence (branchement) – BR, JUMP, JZ, JGT (>0), JLT (