La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Département Informatique Microprocesseurs & Ordinateurs Laurent JEANPIERRE IUT de CAEN – Campus 3.

Présentations similaires


Présentation au sujet: "Département Informatique Microprocesseurs & Ordinateurs Laurent JEANPIERRE IUT de CAEN – Campus 3."— Transcription de la présentation:

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


Télécharger ppt "Département Informatique Microprocesseurs & Ordinateurs Laurent JEANPIERRE IUT de CAEN – Campus 3."

Présentations similaires


Annonces Google