Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parFlorent Fournier Modifié depuis plus de 8 années
1
Département Informatique Microprocesseurs & Ordinateurs Laurent JEANPIERRE IUT de CAEN – Campus 3
2
Département Informatique2 Contenu du cours Logique câblée Vs Logique Programmée Système à Microprocesseur La mémoire Les entrées/sorties Le processeurs Architectures avancées
3
Département Informatique3 Introduction Automatisation d’un processus Suite d’actions et de tests Logique câblée Circuits intégrés (logique, arithmétique, registres, …) Organigramme des tâches Organisation des circuits Système figé Méthode trop rigide (plus utilisée)
4
Département Informatique4 Le microprocesseur ( P) « petit » « processus » Circuit complexe Logique câblée Fonctions diverses (logique, arithmétique…) Exécute un programme Suite de commandes (instructions) Instructions codées en binaire
5
Département Informatique5 Les Systèmes à Processeur Liste des instructions, des données : rangées en mémoire Élément capable d’effectuer ces instructions : le processeur Moyens d’échanger des données : les interfaces ou périphériques Des liaisons électriques : les bus Une horloge (cadence l’exécution)
6
Département Informatique6 Synoptique 1) Chercher instruction Unité de commande Mémoire 2) Décoder instruction Unité Arithmétique et Logique 3) Exécuter instruction (peut lire en mémoire/IO) Unité Arithmétique et Logique ( Unité de commande ) 4) Stocker le résultat Unité de commande Mémoire/Interfaces Commande U.A.L.
7
Département Informatique7 Les bus Vecteur de communication Relie le processeur à ses périphériques 3 types principaux : Adresses : Unidirectionnel, choisit le périphérique à piloter Données : Bidirectionnel, transporte les instructions/données entre les composants Contrôle : Bidirectionnel, synchronise les différents composants avec le processeur
8
Département Informatique8 Contenu du cours Logique câblée Vs Logique Programmée Système à Microprocesseur La mémoire Les entrées/sorties Le processeurs Architectures avancées
9
Département Informatique9 Les mémoires : Introduction Mémoire = dispositif de stockage Enregistre de l’information Restitue à la demande cette information Différentes formes de stockage Numérique (Circuits intégrés, CDROM,…) Analogique (Cassettes, Disques durs, …) Ce cours s’intéresse aux mémoires à semi-conducteurs. (Circuits intégrés)
10
Département Informatique10 Les mémoires numériques Plus petite information stockable : 1 bit notion de case mémoire 2 grandes catégories de mémoires : Accès aléatoire : Chaque case mémoire est utilisable séparément Notion d’adresse mémoire Accès sériel : (mémoires séquentielles) Accès aux cases mémoires séquentiellement Pas d’adresse utilisée
11
Département Informatique11 Types de mémoires Mémoires au silicium Mémoires vives Mémoires mortes RAM statiques RAM dynamiques ROMPROM EPROM EEPROM Fusibles bipolaires Flash
12
Département Informatique12 Les mémoires mortes Lecture seule par le processeur Maintien de l’information hors tension Read Only Memory : programmée en usine Programmable ROM : programmée par l’utilisateur une seule fois Erasable PROM : programmable et effaçable (rayons UV) par l’utilisateur Electrically EPROM : EPROM effaçable par un courant électrique
13
Département Informatique13 Les mémoires vives Lecture/Écriture par le processeur Non permanence des informations (mémoire volatile) Random Access Memory : mémoires à accès aléatoire (à la demande) Statiques : information maintenue spontanément sous tension Dynamiques : information maintenue par rafraîchissement (balayage régulier de toutes les cases mémoires)
14
Département Informatique14 Types de DRAM De nouvelles versions régulièrement Fast Page Mode : les barrettes des 486 Extensed Data Out : premiers Pentiums Burst EDO : cousine de l’EDO Synchronous DRAM : années 2000 synchronisation avec horloge du P Double-data-rate DRAM : SDRAM à cadence double (2 fronts) Error Correction Code : SDRAM ou DDRAM à correction d’erreurs (cf. codes correcteurs) RamBus : Mémoires à haute vitesse 600-800 MHz
15
Département Informatique15 Principales Caractéristiques Capacité : Nb de bits stockés par la mémoire. Toujours un multiple d’une puissance de 2 Organisation ou matrice : Longueur de la plus petite information adressable. Octet (Byte) : 8 bits Mot (Word) : 16 bits Double Mot : 32 bits Etc. … Capacité = * Matrice Ex : 1kMot = 16kbits.
16
Département Informatique16 Principales Caractéristiques (2) Temps (timings) Écriture : délai entre la présentation des données et leur mémorisation réelle. Lecture : délai entre la présentation de l’adresse et la disponibilité des données Accès : en général, la moyenne des temps de lecture et d’écriture Cycle : si lecture destructive, somme des temps de lecture et de réinscription (même adresse) Consommation : puissance nécessaire à une opération (≠ selon repos ou lecture/écriture)
17
Département Informatique17 Principe général Théorie de la localité Les instructions se suivent (en général) Les données sont rangées ensemble (idem) Idée : Charger en mémoire les parties utiles Peu de mémoire Gros programmes
18
Département Informatique18 Hiérarchie des mémoires Cache L1 Dans le P, ultra rapide, très chère Cache L2 SRAM, souvent dans le P Cache L3 SRAM, hors du processeur RAM classique DRAM Disque dur Bande magnétique Très bon marché, vraiment lente Objectif= coût bande magnétique + vitesse L1
19
Département Informatique19 Les mémoires en image
20
Département Informatique20 Post-Scriptum Tendance actuelle : Architecture hybride Von Neumann pour la mémoire (Hors processeur) Harvard pour le cache (Dans processeur) accès parallèle instruction & donnée encore plus de vitesse
21
Département Informatique21 Contenu du cours Logique câblée Vs Logique Programmée Système à Microprocesseur La mémoire Les entrées/sorties Le processeurs Architectures avancées
22
Département Informatique22 Les périphériques Dispositifs servant à l’entrée ou à la sortie des données Attachés à des contrôleurs ou coupleurs Utilisent une interface : Bus de données Signaux de commande Incidents & Informations Accès extérieur
23
Département Informatique23 Différentes catégories Périphériques caractères Données = 1 octet Données transmises en série. Ex. : clavier, souris, … Périphériques de blocs Données = bloc de plusieurs octets Taille fixe (dépend du périphérique) 128 octets plusieurs Ko Possibilité de lire/écrire n’importe quel bloc (accès aléatoire) Ex. : Disque dur, carte vidéo, carte réseau, …
24
Département Informatique24 Organisations (1) Périphériques branchés via coupleurs Décodage d’adresse Pilotage du périphérique (contrôleur)
25
Département Informatique25 Coupleurs & Contrôleurs Le P donne les ordres généraux Lire 1ko sur disquette à partir de l’@ 3000. Le contrôleur pilote le périphérique Avancer la tête de lecture Attendre la rotation du disque Lire pendant 0,1 seconde Envoyer les données au processeur Le contrôleur peut être un autre processeur, ou un microcontrôleur
26
Département Informatique26 Pilotes de périphériques Élément du Système d’Exploitation (OS) Programme qui pilote un périphérique (Driver ou Handler) Gère directement l’interface du coupleur Traite les interruptions du coupleur Détecte et traite les erreurs Offre des primitives au programmeur Commande du périphérique Informations sur le périphérique
27
Département Informatique27 Déroulement d’une Entrée/Sortie Pas de parallélisme entre commande et transfert des données Le P donne l’ordre Le P transfère les données Le périphérique travaille Le P reçoit les données Périphériques lents (Vs Processeur) perte de puissance/vitesse Plus utilisées que dans les cas les plus simples (rien d’autre à faire en attendant)
28
Département Informatique28 E/S asynchrones Gestion du contrôleur par interruption Ex. : Clavier 1 interruption par touche Ne mobilise pas le processeur Lance la commande Transfère les données Fait autre chose (le périphérique travaille) Est interrompu (le périphérique a fini) Reprend son travail en cours…
29
Département Informatique29 Les interruptions matérielles Signal envoyé par un périphérique au processeur Ex. : touche clavier sur IBM-PC port 60 h interruption n°9 Processeur reçoit une interruption : Arrête son travail en cours (mémorise contexte) Exécute une routine d’interruption : programme spécialisé situé à une @ précise Restaure le contexte sauvegardé Reprend son travail Plusieurs périphériques, 1 processeur Programmable Interrupt Controler (PIC) gère les priorités, transmet au processeur
30
Département Informatique30 Transfert de données Ex. : Périphérique Mémoire centrale P initie l’accès au périphérique Périph. récupère les données (vérifie CRC, etc. …) Interrompt le processeur Envoie les données au processeur P envoie les données à la mémoire Relâche le processeur pas efficace
31
Département Informatique31 Accès direct à la mémoire (DMA) Optimisation de l’algorithme : P initie l’accès au périphérique Précise @ mémoire où stocker les données Périph. récupère les données (vérifie CRC, etc. …) Envoie les données à la mémoire Interrompt le processeur « Transfert terminé » Efficace Surtout pour les périphériques de type bloc
32
Département Informatique32 Deux types de Transfert DMA Par giclée (Burst) Récupère les données Réquisitionne le bus mémoire Effectue plusieurs transferts Rend le bus mémoire Méthode adaptée aux périphériques « bloc » Par vol de cycle Récupère les données (Processeur mémoire) Transfère les données (Processeur attend) Méthode adaptée aux périphériques rapides à transferts rapide (sériels ?)
33
Département Informatique33 Entrées/Sorties avancées Périphériques branchés par DMA + coupleur Direct Memory Access Coupleur garde son rôle de contrôleur
34
Département Informatique34 Entrées/Sorties avancées (2) Multiples processeurs Multiples connexions aux périphériques
35
Département Informatique35 Contenu du cours Logique câblée Vs Logique Programmée Système à Microprocesseur La mémoire Les entrées/sorties Le processeur Architectures avancées
36
Département Informatique36 Le microprocesseur Circuit intégré complexe Intègre toutes les fonctions d’un processeur Inventé par Ted Hoff Commercialisé par Intel le 15/11/1971 « 4004 » 2300 transistors 60000 opérations par seconde
37
Département Informatique37 Le microprocesseur (2) Aujourd’hui Plusieurs types de processeurs Plusieurs fabricants Grande variété de chaque type Caractéristiques nombreuses Fréquence, consommation, transistors, … Mips (Million of Instructions Per Second) Mflops (Million of Floating Operations per Second)
38
Intel Core I7 3770K – Ivy Bridge 160 mm² - 1,4 Milliards de transistors 4 cœurs physiques Un processeur moderne Département Informatique38
39
Département Informatique39 Physiquement… Vulgaire bout de silicium dopé Wafer : Galette de plusieurs processeurs 1 processeur : quelques millimètres carrés Plus finement : Millions de transistors 1 transistor = interrupteur commandé en tension Plusieurs transistors portes logiques (image © Doc. Ing. Petr Tůma, Dr http://d3s.mff.cuni.cz/~ceres/sch/osy/text/ch01s03s01.html)
40
Département Informatique40 Logiquement… 2 unités fonctionnelles séparées Unité de Commande Dirige le processeur Génère les signaux Coordonne l’exécution des instructions Unité Arithmétique et Logique Décode&Calcule les instructions
41
Département Informatique41 Unité de Commande Constituée de : Compteur Ordinal : Registre contenant l’adresse de la prochaine instruction Program Counter Registre d’Instruction : contient le code de l’instruction en cours Décodeur : Décode l’instruction (sélection de la bonne fonction / du bon circuit) Séquenceur : Ordonne et Synchronise les blocs-opérations pour l’instruction décodée
42
Département Informatique42 Les registres Mémoires internes au processeur Nombre dépend du processeur Entre 10 et 100… voire plus ! Processeur performant Beaucoup de registres Taille dépend du processeur Exprimée en bits. Caractérise le processeur Processeur 32 bits.
43
Département Informatique43 Les registres (2) Plusieurs types de registres Généraux (accumulateurs) registres à tout faire… Registres spécifiques RI : instruction en cours PC : @ prochaine instruction SP : @ sommet de pile Drapeaux Registres de débogage Registres MMX, SSE, FPU, …
44
Département Informatique44 Fonctionnement Lit instruction suivante Bus Adresse PC Bus Commande « Lire instruction » RI Bus Donnée Incrémente compteur ordinal PC PC + taille(RI) Décode Instruction ex: Add A,(123) A A + contenu @123.
45
Département Informatique45 Fonctionnement (2) Lit données (facultatif) Bus A 123 Bus C « lire donnée » tmp Bus D Transfert données UAL UAL.1 A UAL.2 tmp UAL.RI « addition »
46
Département Informatique46 Fonctionnement (3) UAL calcule opération Activation de l’additionneur intégral tmp UC range résultat A tmp Recommence Lit & Exécute instruction suivante Pas de repos pour un processeur…
47
Département Informatique47 Résumé 1. Lit instruction suivante (UC) 2. Avance compteur Ordinal (UC) 3. Décode Instruction (UC) 4. Lit données (facultatif) (UC) 5. Fournit Données UAL (UC) 6. Exécute Instruction (UAL) 7. Range résultat (UC) Et recommence…
48
Département Informatique48 Jeu d’instructions Ensemble d’opérations élémentaires réalisables par le P De 50 (RISC) à + de 1000 (CISC) Transfert de données Arithmétique Logique Entrées/Sorties Sauts / Branchements
49
Département Informatique49 Langage machine Code binaire stockant des instructions Ex : A = A + 12 ADD.L $12, %eax 83 h 00 h 0C h 1000 0011 0000 0000 0000 1100 2 Nécessité d’utiliser un programme : l’assembleur
50
Département Informatique50 Contenu du cours Logique câblée Vs Logique Programmée Système à Microprocesseur La mémoire Les entrées/sorties Le processeur Architectures avancées
51
Département Informatique51 Notion de pipeline 1 instruction 5 étapes (5 ticks) IF : Instruction Fetch DEC : Decodage Ex : Execution Mem : Memory access WB : Write Back travail à la chaîne (merci M. Tailor) A chaque coup d’horloge (tick), 5 instructions sont en cours
52
Département Informatique52 Exemple : « Si (I-J)=0, Suite » t+8t+9t+6t+5t+4t+3t+2t+1tInstr. WBMEMEXDECIFMOV AX,I WBMEMEXDECIFMOV BX,J WBMEMEXDECIFSUB AX,BX WBMEMEXDECIFCMP AX,$0 MEMWBEXDECIFJE Suite
53
Département Informatique53 Problèmes… Résultat de I1 nécessaire pour faire I2 Diffère I2 tant que résultat pas disponible Même ressource utilisée par I1 et I2 Diffère I2 tant que ressource pas libre Aléa de branchement Si test alors … sinon … Pari sur le résultat du test Ok : exécution optimale Faux : annule toutes opérations commencées depuis le pari (très coûteux)
54
Département Informatique54 Architecture SuperPipeline Subdivision des opérations élémentaires Pipeline plus long, fréquence plus élevée Problème : prédiction de branchement incorrecte vidage pipeline obligatoire Ex: Pentium : longueur = 5 Pentium 3 : longueur = 10 Pentium 4 Northwood : longueur = 20 Pentium 4 Prescott : longueur = 31 Pentium 4 Conroe : longueur = 14 Pentium 4 Nehalem : longueur = 16
55
Département Informatique55 Architecture Super-Scalaire Plusieurs pipelines par P Traitements parallèles Parrallélisation Gains de performances Taille plus importante Augmentation Coûts Augmentation température Diminution fréquence
56
Département Informatique56 Les processeurs RISC 1975, les chercheurs d’IBM remarquent que <20% instructions utilisées >80% du temps simplifier processeurs Instructions courantes seulement Plus simples, mieux optimisées, plus efficaces Puce moins grosse Deux classes de processeurs Reduced Instruction Set Computer Complex Instruction Set Computer
57
Département Informatique57 Mais… Instructions complexes ??? Simulées par le compilateur Utilise plusieurs instructions simples Pas de micro-code Instructions directement exécutables Instructions de taille fixe Pipelines plus efficaces Cache d’instructions plus simple/petit/optimisé Compilateur plus compliqué Impossible à programmer « à la main »
58
Département Informatique58 Risc Vs Cisc <100 instructions Format fixe Instructions câblées Accès mémoire pour instr. de chargement. Vitesse typique : 1 instruction dure 1 cycle >200 instructions Format variable Instructions simples câblées complexes par micro-code Accès mémoire pour toutes instructions Vitesse typique : 1 instruction dure 3-10 cycles
59
Département Informatique59 Risc Vs Cisc Avantages Puce + petite Fréquence + élevée Exécution + rapide Inconvénients Compilateur complexe (à développer) Programmes longs (+ de mémoire) Avantages Développement + simple Très répandu Inconvénients Puce + grosse Puce + compliquée Évolutions limitées Plusieurs cycles par instruction
60
Département Informatique60 Un processeur moderne (P4E)
61
Architecture Nehalem © Bit-tech.net Département Informatique61
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.