Architecture matérielle des ordinateurs

Slides:



Advertisements
Présentations similaires
The name of ALLAH C'est quoi un Chipset ?.
Advertisements

Architecture matérielle et logicielle. Sommaire Un peu d’histoire : Naissance de l’informatique Organisation matérielle des ordinateurs Processeur, Mémoire,
ASR5 Système pour architectures multicœurs CSC5001 : Systèmes Hautes Performances Architecte de Services informatiques Répartis Gaël Thomas
UNIX AVANCE Yves PAGNOTTE – Janvier – QUELQUES RAPPELS SUR LES SYSTEMES D’EXPLOITATION 1.
1 Initiation à la micro-informatique Le matériel CFPPA d’AUXERRE La Brosse Réalisation : Gilles BERDAL 2005 un clic pour la suite… L’Unité Centrale.
CHAftITREI ARCHITECTURE de BASE. Modèle de Von Neumann Langage d’assemblage1 John Von Neumann est à l'origine d'un modèle de machine universelle de traitement.
Introduction à la notion de fonction 1. Organisation et gestion de données, fonctions 1.1. Notion de fonction ● Déterminer l'image d'un nombre par une.
L’ordinateur et ses composants Un ordinateur est composée d'une unité centrale et de périphériques. Tous les périphériques sont branchés sur l'unité centrale.
Made with OpenOffice.org 1 Travailler en réseau intranet à l'école Un réseau : pourquoi ? Architecture du réseau Partager un dossier Enregistrer en réseau.
Guide de l'enseignant SolidWorks, leçon 1 Nom de l'établissement Nom de l'enseignant Date.
TP 1 BIS Programmation structurée à l’aide de fonctions (FC) et de bloc fonctionnels (FB)
Le moniteur Le clavier L'unité centrale (l'ordinateur proprement dit) Qui sont des périphériques DEFINITIONS DE BASE.
Module 14 : Installation et configuration des services Terminal Server.
DIAGRAMME DE DEPLOIEMENT Exposé de: MBALLA MEKONGO Michèle MBOUNA FEUZE William SIEYADJEU Alex Lionel CHOPGWE Leonard NDUMATE Landry TIDJON Lionel.
Cahier des charges.
NOTIONS INFORMATIQUES : RAPPEL
appareil de mesure (pHmètre P310 Chauvin-Arnoux) Pierre DIEUMEGARD,
La technologie des mémoires
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
L’ordinateur et ses composants
JAVA.
Architecture des ordinateurs, Environnement Numérique de Travail
Plan 1. L’ordinateur : Les connaissances de base
Utilisation de Windows
Technologie wifi.
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Algorithmique demander jeu du pendu.
Evaluation de l'UE TICE 1 TRANSMISSION DES DONNEES INFORMATIQUES SABATIER Fabienne 1ère année de sciences du langage/sciences de l’éducation.
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
L’Instruction de Test Alternatif
Les composants informatiques
Architecture de machines Le microprocesseur
Plans d’expériences: Plans factoriels
Virtualisation d’applications mobiles dans un réseau de Cloudlets
La technique du pipeline
Système d’exploitation Windows XP
Semaine #4 INF130 par Frédérick Henri.
Modèle OSI.
Documentation technique (Linux)
Notion De Gestion De Bases De Données
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Présentation de la carte graphique
Evaluation de l'UE TICE 1 TRANSMISSION DES DONNEES INFORMATIQUES SABATIER Fabienne 1ère année de sciences du langage/sciences de l’éducation.
Architectures parallèles
Composantes principales des ordinateurs
Architecture des ordinateurs
ESME - Linux et programmation system - A.TALBI
Cours Microprocesseur Par Philippe Bancquart ¨
ARCHITECTURE DES ORDINATEURS
LES RESEAUX.
La Station de pompage.
Mémoire: cache, RAM, disque dur
Assembleur, Compilateur et Éditeur de Liens
Bonnes pratiques d’exploitation des applications
Introduction aux microprocesseurs
Module 13 : Implémentation de la protection contre les sinistres
LES MEMOIRES.
1 PROJET D’INFORMATIQUE les composants de l'ordinateur Gammoudi Rayéne 7 B 2.
Notions de base sécurité
18 octobre 2007 Fonctionnement d’un ordinateur Achat d’un ordinateur
الحاسب l’ordinateur the computer مقدّمة
Logiciel de présentation
PRO1026 Programmation et enseignement
Architecture d’un ordinateur
La gestion des pilotes de périphériques
Les différents modes de démarrage de Windows
Introduction à l'Informatique
Notions de base sécurité
THEME : LE BIOS ET LES REGISTRES. INTRODUCTION : Le fonctionnement de l’ordinateur dépend de plusieurs programmes et matériel tel que les BIOS et registres.
Traitement de TEXTE 2 Stage – Semaine 3.
Transcription de la présentation:

Architecture matérielle des ordinateurs ESME - Linux et programmation system - A.TALBI

Architecture basique d’un système numérique Fonctionnement: Le microprocesseur charge un programme en mémoire depuis le disque dur (ou mémoire flash ROM) l’exécute puis affiche le résultat sur l’écran. Typiquement c’est l’architecture des premiers ordinateurs Un problème dans cette architecture !!!! La vitesse de fonctionnement de ce système (fréquence) dépend du périphérique le plus lent car tous les périphériques ainsi que le microprocesseur partage la même horloge. Le processeur est contraint à fonctionner sur la même horloge donc à la même fréquence que les périphériques Actuellement les périphérique ont des fréquence allant de quelques KHZ à quelques centaines de MHZ au plus. Or les unités de calcul modernes sont conçues pour avoir des horloges très rapide (de l’ordre du GHZ) afin d’accélérer les calculs et augmenter les performance Solution: Utilisation dans le microprocesseur d’un cache entre l’unité de calcul et le reste du système Unité de calcul (Microprocesseur) Bus adresses Bus donnés Horloge (CLK) mémoire Device 1 (ex: écran) Device 2 (ex: disk, ROM) ….Device n ESME - Linux et programmation system - A.TALBI

ESME - Linux et programmation system - A.TALBI Architecture d’un calculateur avec un cache Le cache (antémémoire) : Le cache est une mémoire rapide qui enregistre temporairement des parties (copies) de données (d’espace mémoire) provenant de la mémoire principale afin que l’unité de calcul (UC) puisse y accéder rapidement Fonctionnement: 1- le UC demande une donnée à une certaine adresse mémoire (qu’on appellera la cible). 2- Si la cible est présente dans le cache (on parle alors de hit ou succès) la cible est transmise à l’UC. 3- Si la cible n’est pas présente dans le cache (on parle alors de miss ou échec) le cache va lire la cible depuis la mémoire principale puis la transmet à l’UC. En fait le cache va lire va lire un block de donnée qui contient (entoure) la cible car la probabilité d’utiliser une autre donnée (cible) adjacente est grande (ceci est du au fait que les instructions et les variables dans un programme se situent dans la même zone mémoire) on parle alors de localité spatiale) et la probabilité d’utiliser la même donnée dans le future est grande (cas de boucles dans un programme) on parle alors de localité temporelle. Microprocesseur Unité de calcul Bus data du microprocesseur Horloge interne du microprocesseur (plus rapide que celle du bus) Bus adresse du microprocesseur Cache (Mémoire interne) Bus adresses Bus donnés Horloge bus (CLK) mémoire Device 1 (ex: écran) Device 2 (ex: clavier) ….Device n ESME - Linux et programmation system - A.TALBI

ESME - Linux et programmation system - A.TALBI Architecture d’un calculateur avec un cache Microprocesseur mémoire Device 1 (ex: écran) Device 2 (ex: clavier) ….Device n Bus adresses Bus donnés Horloge bus (CLK) Unité de calcul Cache (Mémoire interne) Horloge interne du microprocesseur (plus rapide que celle du bus) Bus data du microprocesseur Bus adresse du microprocesseur Problème dans cette architecture !!! On oblige tous les périphériques à fonctionner à la même fréquence (horloge) que le périphérique le plus lent  on perd en performance Solution: Utiliser des bridges « ponts » entre les bus rapides et bus lents ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur avec bridge Microprocesseur Unité de calcul Cache Les bridges (chipsets) font le lien entre différents bus de différents types et de différentes fréquences Bus adresses Bus donnés Horloge bus rapide (ex: > 200 MHZ) mémoire Devices rapide (1…n) (ex: carte graphique) Bus Bridge (Chipset) Bus adresses Bus donnés Horloge bus moyen (ex: 10 ~ 200 MHZ) Devices moyens (1…n) (ex: carte réseau, usb, disk…) Bus adresses Bus donnés Horloge bus lent ( ex: < 10 MHZ) Autres bus…. Devices lents (1…n) (ex: clavier, sourie…) Bus Bridge ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur avec bridge Microprocesseur Unité de calcul Cache Problème dans cette architecture !!!! Si le processeur décide d’accéder à un device lent ou moyen (ex: lire le caractère tapé sur le clavier, ou lire un block de données sur le disk dur…) alors tous le système est bloqué en attendant la réponse de ce device, et le processeur ne peut rien faire entre temps  en perd en performance Solution 1: Les microprocesseur multi-cœurs Solution 2: Le DMA Bus adresses Bus donnés Horloge bus rapide (ex: > 200 MHZ) mémoire Devices rapide (1…n) (ex: carte graphique) Bus Bridge (Chipset) Bus adresses Bus donnés Horloge bus moyen (ex: 10 ~ 200 MHZ) Devices moyens (1…n) (ex: carte réseau, usb, disk…) Bus adresses Bus donnés Horloge bus lent ( ex: < 10 MHZ) Devices lents (1…n) (ex: clavier, sourie…) Bus Bridge Autres bus…. ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur multi-coeur Microprocesseur Solution 1: Les processeurs multi-coeurs Même si un cœur est bloqué en attendant un périphérique, les autres cœur peuvent continuer à exécuter des instructions Ceci implique un modèle de programmation en multi-taches, c-a-d la possibilité d’avoir plusieurs taches qui s’exécutent en parallèles chacunes d’elles étant exécutée sur un cœur. Sur les systèmes modernes basés sur linux ou autre, un processus (un programme en cours d’exécution) possède des taches (des fonctions à exécuter). Le système d’exploitation possède lui-même une tache qui est responsables de la répartition de l’exécution des différentes taches de tous les processus sur les différents cœurs du microprocesseur. Cette répartition s’appelle l’ordonnancement (scheduling) Cœur 1 Cœur 2 Unité de calcul Unité de calcul Cache L1 Cache L1 Cache L2 Bus system mémoire Carte graphique Bus Bridge (Chipset) Carte réseaux Bus IDE Carte son Disk1 Disk2 clavier Sourie Port USB ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur avec DMA dans le bridge microprocesseur (µP) Master 1- Une tache fait un read sur un fichier 5- l’UC peut reprendre la tache arrêtée à la phase 1 Solution 2: Le DMA (Direct Memory Access) Le DMA est conçu pour déchargé le processeur du transfert de données entre les périphériques et la mémoire et laisser cette tache à un contrôleur dédié à cette fin. De cette façon le processeur peut exécuter d’autres taches pendant les transfert DMA. Cette technique introduit la notion de master et slave: Un bus Master est un périphérique qui a la capabilité d’initier un transfert de données entre lui et un autre périphérique. Dans le cas de la figure, le microprocesseur et le bridge sont des masters. Un slave n’a pas cette capabilité (ex la mémoire) 4- Le DMA Controller du bridge signal à l’UC (interruption) que le transfert s’est terminé 2- Le µP configure le DMA Controller du bridge pour un transfert d’un block de données depuis le disque dur vers la mémoire puis exécute une autre tache. BUS 3- Le DMA Controller du bridge effectue le transfert du block de données depuis le disque dur vers la mémoire Bridge (Chipset) Mémoire (Slave) DMA Controller (Master) Disque dur (Slave) ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur: différentes configuration de DMA microprocesseur (µP) Master Solution 2: Le DMA (Direct Memory Access) On peut trouver des DMA controller à tous les niveaux: dans le processeur lui-même, dans une carte graphique ou une carte réseau… Les DMA controller sont très utils pour fluidifier le trafic sur le bus ainsi optimiser au mieu les performance, leur utilité est indispensable dans certaines situation comme: Les accès à la mémoire de la carte graphique Les accès au disques durs Les accès au cartes réseaux DMA Controller (Master) mémoire Bridge (Chipset) Carte graphique Carte réseau DMA Controller (Master) DMA Controller (Master) DMA Controller (Master) ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur: Les contrôleurs Bus adresse et data Les contrôleurs: Un contrôleur de périphérique est le module électronique qui fait l’interface entre le bus et le port physique sur une carte. Il est en général constitué d’une unité de control et d’un datapath et souvent d’un étage de puissance pour le connecter au port physique de la carte en cas où il est nécessaire d’adapter les tensions et lui puissances Signaux de control Contrôleur de périphérique Datapath (Par où passe les données) Unité de control registres de configurations Étage de puissance Port physique ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur: exemple de contrôleurs Bus system Bus PCI Bus IDE Contrôleur mémoire (Sur la carte mère) Contrôleur IDE (Sur la carte mère) Contrôleur carte graphique ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur: Architectures Intel des années 2000 ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur: Architectures Intel des années 2012 Remarque: Par rapport à l’architecture précédente, le pont (bridge) nord à disparu !!!! …. A vrai dire il est maintenant intégré sur le processeur lui même ESME - Linux et programmation system - A.TALBI

Architecture d’un ordinateur: ARM ESME - Linux et programmation system - A.TALBI

ESME - Linux et programmation system - A.TALBI Architecture d’un ordinateur: Multicore DSP+ARM KeyStone II System-on-Chip (SoC) SoC: Lorsqu’on trouve plusieurs cœurs avec plusieurs contrôleurs de périphériques intégrés sur la même puce avec un gros bus (un interconnect) on dit que c’est un SOC (System-On-Chip). Le bus est appelé un NoC (Network on Chip) ESME - Linux et programmation system - A.TALBI