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

Slides:



Advertisements
Présentations similaires
Le micro-ordinateur.
Advertisements

Module Systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
Électronique de base du processeur
LES MEMOIRES INTRODUCTION UN PEU D ’HISTOIRE LES DIFFERENTES MEMOIRES
Le Concept du programme enregistré
Architecture de machines Le microprocesseur
Architecture de machines Principes généraux
TECHNOLOGIE DES ORDINATEURS
ARCHITECTURE INTERNE d’un MICROPROCESSEUR
Informatique Deug2 Sciences Eco S. Maabout 2004/2005.
Architecture des ordinateurs
GEF 435 Principes des systèmes d’exploitation
La mémoire morte(ROM) Il existe un type de mémoire permettant de stocker des données en l'absence de courant électrique, il s'agit de la ROM (Read Only.
Le Concept du programme enregistré
Mémoire & Processus Cours SE - SRC
Architecture Systèmes
2.Les différentes architectures (Louis)
Les microprocesseurs A. Objectifs de la séquence:
TRANSMISSION DES DONNEES INFORMATIQUES
Architecture de machines La mémoire
Architecture de machines Principes généraux
Architecture de machines La mémoire
Cours d’initiation en Informatique
Système d’exploitation : Assembleur
Les systèmes à microprocesseur
Architecture des ordinateurs
Chapitre 8 : L’architecture de base des ordinateurs
ARCHITECTURE GLOBALE CAPTAGE Traitement DES des données GRANDEURS
ARCHITECTURE DES ORDINATEURS
Architecture et programmation des ordinateurs
Architecture de base d’un ordinateur
Gestion des Périphériques
Les mémoires :. Mémoriser Enregistrer Conserver Restituer.
Architecture des Ordinateurs
LES MEMOIRES.
Architecture d ’un système à MICROPROCESSEUR
LES SYSTEMES AUTOMATISES
Chap. 2 - Structure d’un ordinateur
L'Unité centrale (CPU) Le CPU doit être rapide (mesuré en temps de CPU) UNITE DE CONTROLE Générer les signaux de control/temps Contrôler le décodage/exécution.
Informatique 1. Les applications de l’informatique
Lycée ELKHAWARIZMI De SAFI
Logique programmée & Microprocesseurs
Cours de Structure et Technologie des composants d’ordinateurs
L’ architecture système
Architecture d'un ordinateur
3-Présentation d’un µP simple
Structure de Base d’un ordinateur Matière : Informatique
Les Machines RAM.
Structure d’un ordinateur Et ses périphériques
INFOR 101 Chapitre 5 Marianne Morris.
LES MEMOIRES.
Gestion des Périphériques
Un programme Algorithme permettant au processeur de s'alimenter:
Architecture des ordinateurs, Environnement Numérique de Travail
Simulateur de microcontrôleur Intel 80C51
Patricia Renault UPMC 2005/2006
Cours Système LI324 Les Interruptions Cours Système LI324
Représentation digitale des données Trois formats de base: 1) Décimale: base 10 (Une constante i.e dimension d ’1 vecteur) 2) Binaire: base 2 ( Mask, set/reset.
1.1: notions de bases de l’informatique
Un ordinateur est une machine électronique qui fonctionne par la lecture séquentielle d'un ensemble d'instructions, organisées en programmes, qui lui.
Memoire.
L3 Instrumentation Pétrolière S6
Architecture d’un ordinateur
LES MEMOIRES et le décodage d’adresses
Initiation à l'informatique
Les mémoires la préparation de: chaimaa hamdou.
ARCHITECTURE MATERIELLE D’UN SYSTEME A MICROPROCESSEUR
Architecture d'un automate programmable
Systèmes à microprocesseur Les mémoires
Transcription de la présentation:

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

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

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)

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

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)

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.

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

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

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)

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

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

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

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)

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 MHz

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.

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)

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

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

Département Informatique19 Les mémoires en image

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

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

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

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, …

Département Informatique24 Organisations (1) Périphériques branchés via coupleurs Décodage d’adresse Pilotage du périphérique (contrôleur)

Département Informatique25 Coupleurs & Contrôleurs Le  P donne les ordres généraux Lire 1ko sur disquette à partir de 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

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

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)

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…

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é à 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

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

Département Informatique31 Accès direct à la mémoire (DMA) Optimisation de l’algorithme :  P initie l’accès au périphérique 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

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 ?)

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

Département Informatique34 Entrées/Sorties avancées (2) Multiples processeurs Multiples connexions aux périphériques

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

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 opérations par seconde

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)

Intel Core I7 3770K – Ivy Bridge 160 mm² - 1,4 Milliards de transistors 4 cœurs physiques Un processeur moderne Département Informatique38

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

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

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

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.

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, …

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 +

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 »

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…

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…

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

Département Informatique49 Langage machine Code binaire stockant des instructions Ex : A = A + 12 ADD.L $12, %eax 83 h 00 h 0C h  Nécessité d’utiliser un programme : l’assembleur

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

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

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

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)

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

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

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

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 »

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

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

Département Informatique60 Un processeur moderne (P4E)

Architecture Nehalem © Bit-tech.net Département Informatique61