1 / 31

Systèmes à microprocesseur le microprocesseur

Systèmes à microprocesseur le microprocesseur. Laurent JEANPIERRE <jeanpl@iutc3.unicaen.fr> D’après le cours de Pascal FOUGERAY IUT de CAEN – Campus 3. Contenu du cours. Introduction Constitution Fonctionnement Langage Architectures à Pipeline Processeurs RISC. Le microprocesseur.

randy
Download Presentation

Systèmes à microprocesseur le microprocesseur

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Systèmes à microprocesseurle microprocesseur Laurent JEANPIERRE <jeanpl@iutc3.unicaen.fr> D’après le cours de Pascal FOUGERAY IUT de CAEN – Campus 3 Département Informatique

  2. Contenu du cours • Introduction • Constitution • Fonctionnement • Langage • Architectures à Pipeline • Processeurs RISC Département Informatique

  3. 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 Département Informatique

  4. Introduction (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) Département Informatique

  5. Contenu du cours • Introduction • Constitution • Fonctionnement • Langage • Architectures à Pipeline • Processeurs RISC Département Informatique

  6. 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 Département Informatique

  7. 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 • c.f. cours sur la logique programmée. Département Informatique

  8. Unité de Commande Constituée de : • Compteur Ordinal : Registre contenant l’adresse de la prochaine instructionProgram Counter • Registre d’Instruction : contient le code de l’instruction en cours • Décodeur : Décode l’instruction (sélection de la bonne fonction) • Séquenceur : Ordonne et Synchronise les blocs-opération pour l’instruction décodée Département Informatique

  9. 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. Département Informatique

  10. 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 • BP : Pointeur de base (voir 2nd semestre) • SI,DI : Registres d’index Département Informatique

  11. Les registres (3) • Registres de débogage • Registres MMX, SSE, FPU, … • Autres… • Registre d’état (Program Status Word / Condition Code Register) • Ensemble de booléens (drapeaux) • Mémorise l’état du processeur • Ex : Z = Résultat précédent nul • C = Retenue à propager Département Informatique

  12. Contenu du cours • Introduction • Constitution • Fonctionnement • Langage • Architectures à Pipeline • Processeurs RISC Département Informatique

  13. 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. Département Informatique

  14. 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 » Département Informatique

  15. 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… Département Informatique

  16. Résumé • Lit instruction suivante (UC) • Avance compteur Ordinal (UC) • Décode Instruction (UC) • Lit données (facultatif) (UC) • Fournit Données  UAL (UC) • Exécute Instruction (UAL) • Range résultat (UC) Et recommence… Département Informatique

  17. Contenu du cours • Introduction • Constitution • Fonctionnement • Langage • Architectures à Pipeline • Processeurs RISC Département Informatique

  18. Jeu d’instructions • Ensemble d’opérations élémentaires réalisables par le mP • De 50 (RISC) à + de 1000 (CISC) • Transfert de données • Arithmétique • Logique • Entrées/Sorties • Sauts / Branchements Département Informatique

  19. Langage machine • Code binaire stockant des instructions • Ex : • A = A + 12 • ADD.L $12, %eax • 83h 00h 0Ch • 1000 0011 0000 0000 0000 11002 •  Nécessité d’utiliser un assembleur !!! Département Informatique

  20. Contenu du cours • Introduction • Constitution • Fonctionnement • Langage • Architectures à Pipeline • Processeurs RISC Département Informatique

  21. 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 Département Informatique

  22. Instr. t t+1 t+2 t+3 t+4 t+5 t+6 t+8 t+9 MOV AX,I IF DEC EX MEM WB MOV BX,J IF DEC EX MEM WB SUB AX,BX IF DEC EX MEM WB CMP AX,$0 IF DEC EX MEM WB JE Suite IF DEC EX MEM WB Exemple : « Si (I-J)=0, Suite » Département Informatique

  23. 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éesdepuis le pari (très coûteux) Département Informatique

  24. 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 4Northwood : longueur = 20 • Pentium 4Prescott : longueur = 31 • Pentium 4Conroe : longueur = 14 (futur) • Athlon 64 : longueur = 12 Département Informatique

  25. Architecture Super-Scalaire • Plusieurs pipelines par mP •  Traitements parallèles • Parrallélisation • Gains de performances •  Taille plus importante • Augmentation Coûts • Augmentation température •  Diminution fréquence Département Informatique

  26. Contenu du cours • Introduction • Constitution • Fonctionnement • Langage • Architectures à Pipeline • Processeurs RISC Département Informatique

  27. Pourquoi ? • 1975, chercheurs 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 Département Informatique

  28. 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 » Département Informatique

  29. <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 Risc Vs Cisc Département Informatique

  30. 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 Risc Vs Cisc Département Informatique

  31. Un processeur moderne (P4E) Département Informatique

More Related