1 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Cours microprocesseurs.

Slides:



Advertisements
Présentations similaires
Système d’exploitation : Assembleur
Advertisements

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.
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.
o Nicolas Dewaele Architecture matérielle Architecture des ordinateurs.
Composants Matériels de l'Ordinateur Plan du cours : Ordinateurs et applications Types d'ordinateurs Représentation binaires des données Composants et.
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.
Table ronde – Réseaux et recherche d'emploi Comment fonctionne le réseau professionnel, comment le mobiliser et le développer lorsqu’on est étudiant ?
1 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 24/09/2016 Cours microprocesseurs.
1 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 25/09/2016 Cours microprocesseurs.
1 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 26/09/2016 Algorithmique & Langage.
1 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 27/09/2016 Algorithmique & Langage.
François Médevielle - UPSTI -. Introduction  Découvrir les éléments constitutifs d’un « ordinateur »  Comprendre l’organisation fonctionnelle d’une.
Formation Réseaux et Télécommunication Master 1 Matière : DSP & FPGA Par: ATOUI Hamza.
Algorithmique & Langage C IUT GEII S1
L’ordinateur et ses composants
Architecture des ordinateurs, Environnement Numérique de Travail
Architecture Informatique
Le Microcontrôleur PIC16F84
Architecture des microordinateurs
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Quelques Termes INFORMATIQUE ? ORDINATEUR ( Système Informatique)?
L’ordinateur: comment ça marche ? Ou comment avoir des idées justes sur le sujet... PCI SV I - STU I Alain Mille UFR d’Informatique UCBL.
Opérateurs Toute donnée informatique est stockée en mémoire sous la forme d'une combinaison de bits (mot machine). Les opérateurs bits permettent de modifier.
Algorithmique & Langage C
Rappels et présentation des supports de stockage
AO (Architecture des ordinateurs)
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
Fonctionnement de l'unité centrale
Evolution des machines Introduction à l’ARDUINO
Architecture de machines Le microprocesseur
Algorithmique & Langage C
Classification des archtecutres paralleles
Le moniteur Le clavier L'unité centrale (l'ordinateur proprement dit) Qui sont des périphériques DEFINITIONS DE BASE.
Initiation à l’informatique Généralités et Définitions Université de Tébessa 1 ère Année MI Y. MENASSEL.
« Structure d'un API » Les automates programmables A T Training On Line.
Architecture matérielle et logicielle des systèmes embarqués de moyenne complexité Elle est composée :  d’une unité de traitement centrale,  de.
Algorithmique & Langage C
L E C ORPS D ’ UN A LGORITHME / P ROGRAMME – L A PARTIE I NSTRUCTION Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie.
Instructions et micro-instructions
Jelassi Khaled Systèmes micro-programmés 1 Les systèmes micro-programmés Principe: Un système microprogramme est donc constitué de:  Un microprocesseur.
Algorithmique & Langage C IUT GEII S1 Notes de cours (deuxième partie)
Evaluation de l'UE TICE 1 TRANSMISSION DES DONNEES INFORMATIQUES SABATIER Fabienne 1ère année de sciences du langage/sciences de l’éducation.
Carte mère AD77 infinity : assemblage d'un ordinateur de bureau
Le moniteur Le clavier L'unité centrale (l'ordinateur proprement dit) Qui sont des périphériques DEFINITIONS DE BASE.
Interruptions GIF-1001 Ordinateurs: Structure et Applications, Hiver 2015 Jean-François Lalonde.
À l’intérieur de l’ordinateur
L’ordinateur Exposé par Marin
Projet sur l’ordinateur
Architecture de machines Le microprocesseur Cours
Cours de Structure et Technologie des composants d’ordinateurs
Bus et adressage GIF-1001: Ordinateurs: Structure et Applications
Qu’est-ce qu’un ordinateur ?. Ordinateur – calculateur Un ordinateur est une machine qui permet de réaliser, d’exécuter des opérations, des calculs, c’est.
Architecture des ordinateurs
Architecture de base d’un ordinateur
Bienvenue sur Coursinfo.fr
ARCHITECTURE DES ORDINATEURS
Introduction aux microprocesseurs
L’ordinateur: comment ça marche ? Ou comment avoir des idées justes sur le sujet... PCI SV I - STU I Alain Mille UFR d’Informatique UCBL.
1 Décodage d’adresses et mémoires Introduction Définition, Caractéristiques des mémoires Classification des mémoires La mémoire centrale Caractéristiques.
Chapitre 7 : Les mémoires
1 PROJET D’INFORMATIQUE les composants de l'ordinateur Gammoudi Rayéne 7 B 2.
ATELIER DE MAINTENANCE ET DE REPARATION DES EQUIPEMENTS INFORMATIQUE SURTAB ACADEMIE – JANVIER 2019 Jean Rony Fultidor Durée : 4 heures.
Notions de base de l’informatique. 1-Définitions : Le mot « Informatique » a été créé (vers 1960) à partir des deux mots « information » et « automatique.
Architecture d’un ordinateur
1690 : Pascal invente la machine à calculer entièrement mécanique (addition et soustraction) 1800 : Jacquart invente le métier à tisser avec cartes perforées.
Evolution des machines Introduction au MSP-EXP432
Fonctionnement de l'unité centrale (rappels ? de 1ère Année)
Architecture des ordinateurs
Introduction aux Circuits Reconfigurables et FPGA.
Transcription de la présentation:

1 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Cours microprocesseurs IUT GEII S2 Deuxième partie : Le microprocesseur

2 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Licence P aternité - Pas d'Utilisation Commerciale - Partage des Conditions Initiales à l'Identique 2.0 France Vous êtes libres : * de reproduire, distribuer et communiquer cette création au public * de modifier cette création, selon les conditions suivantes : Paternité. Vous devez citer le nom de l'auteur original. Pas d'Utilisation Commerciale. Vous n'avez pas le droit d'utiliser cette création à des fins commerciales. Partage des Conditions Initiales à l'Identique. Si vous modifiez, transformez ou adaptez cette création, vous n'avez le droit de distribuer la création qui en résulte que sous un contrat identiqueà celui-ci. * A chaque réutilisation ou distribution, vous devez faire apparaître clairement aux autres les conditions contractuelles de mise à disposition de cette création. * Chacune de ces conditions peut être levée si vous obtenez l'autorisation du titulaire des droits. Ce qui précède n'affecte en rien vos droits en tant qu'utilisateur (exceptions au droit d'auteur : copies réservées à l'usage privé du copiste, courtes citations, parodie...) voir le contrat complet sous :

3 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Microprocesseur On caractérise un microprocesseur par : son architecture (organisation interne), sa fréquence d’horloge : en MHz ou Ghz sa puissance de calcul : c'est le nombre d’instructions par secondes qu’il est capable d’exécuter : Mips (10 6 instructions/s) Mflops (10 6 ins sur float /s) la taille de son bus de données : en bits Il existe des microprocesseurs 4, 8, 16, 32 ou 64 bits.

4 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Exemples de microprocesseurs IBM BlueGene/L 280 TFlops (groupement de µP) Pentium 4 32bits 2.5 Gflops à 2.8 Ghz MIPS R /64 bits (à 333Mhz dans PSP ~2.7Gflops) ARM7 32bits 15 Mips à 16.8Mhz (utilisé dans GBA) ARM9 32bits 200 Mips à 180 Mhz Microchip 18F bits 10 Mips à 40Mhz Microchip dsPIC33F 16 bits 40 Mips à 40 Mhz Cerveau humain : estimations entre 10 7 et Mips ( ) Grossièrement 1 flops = 2 à 10 Mips (dépend de l'architecture)

5 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 L'horloge L'horloge cadence toutes les activités du microprocesseur. Sa période fixe la vitesse d'exécution des instructions. Pour une architecture donnée : Fréquence horloge élevée = Grande puissance de calcul Mais La consommation augmente avec la fréquence de l'horloge. Le prix d'un µP est très lié à la fréquence d'horloge. Dans des applications alimentées par batteries ou à faible coût, il n'est pas toujours souhaitable d'utiliser une fréquence d'horloge élevée. On peut faire varier la fréquence d'horloge en fonction des phases de fonctionnement de l'application.

6 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Le problème de l'échauffement La puissance consommée par le processeur dépend de sa tension de fonctionnement et sa fréquence d'horloge : P = k. V 2. F => diminuer la tension de fonctionnement du coeur => utiliser la fréquence horloge minimale permettant d'obtenir les performances souhaitées.

7 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Puissance de calcul L a fréquence de l'horloge n'est qu'un facteur parmi d'autres qui intervient sur les performances d'un µP. Il faut également considérer : Le nombre de bits (taille des données manipulées) La présence d'unités de calculs spécialisées (MAC, multiplieur,...) L'architecture générale (pipeline, traitements parallèles,...) Ainsi que les autres composants du système : taille et vitesse de la mémoire.... mémoire cache.... canaux DMA....

8 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Un microprocesseur (CPU) se compose : d'une unité de commande qui : lit l'instruction en mémoire la décode (prépare les opérations suivantes) prépare la lecture de l'instruction suivante d'une unité de traitement qui exécute l'instruction (ALU) met à jour les registres internes en fonction du résultat sauve éventuellement les résultats en mémoire Constitution d'un microprocesseur

9 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Le compteur programme PC : program counter (compteur ordinal) C'est un registre du µP qui contient l'adresse en mémoire de l'instruction à exécuter. Au départ (au RESET), il prend une valeur fixe. (généralement la première ou la dernière adresse de l'espace mémoire) A chaque instruction, il est incrémenté pour contenir l'adresse de l'instruction suivante.

10 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Unité arithmétique et logique : ALU W Bits fixant l'opération Opérande 1Opérande 2 Registre recevant le résultat de l'opération (accumulateur) L'ALU est la partie du µP effectuant les opérations (+,-,ET,OU,XOR,....) Le type d'opération est déterminé par des bits issus du code l'instruction Les opérandes peuvent être issus du code de l'instruction ou bien lus en mémoire Registre d'état

11 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Registre d'état bit N : indique si le résultat est <0 bit OV : dépassement de capacité bit Z : indique si le résultat est 0 bit DC : retenue sur le 4 ème bit bit C : retenue sur le MSB Ces bits sont utilisés par les instructions conditionnelles pour déterminer les prochaines instructions exécutées.

12 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Cycle machine Il correspond à un multiple d'une période de l'horloge du µP. Les durées des instructions sont des multiples du temps de cycle. Un cycle compose de : Lecture en mémoire du code de l'instruction (adresse PC) Décodage (configuration pour les actions suivantes) Exécution de l'instruction Sauvegarde du résultat en mémoire Le PC pointant maintenant l'instruction suivante, un nouveau cycle recommence.

13 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Instructions Une instruction réalise une opération élémentaire. (addition, soustraction, test d'un bit, écriture mémoire,etc...) Elle est codée par un ou plusieurs mots en mémoire. Son format est spécifique au type de microprocesseur.

14 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Instructions courantes Un microprocesseur possède généralement des instructions : de lecture et d'écriture dans la mémoire (move) entre mémoire et registre interne (parfois entre deux cases mémoires) de calculs arithmétiques et logiques addition, soustraction, ET, OU, décalage de bit,.... (parfois multiplication, division,...) de branchement et de saut (conditionnel ou non) ces instructions permettent la réalisation d'opération conditionnelle (if/else, boucles) et les appels de fonctions (saut à une adresse et retour) spéciales (liées aux périphériques), mise en veille, etc...

15 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Instructions (exemple) Le code binaire de cette instruction est 0x0F15

16 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Instructions (exemple)

17 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Cycles d'un move

18 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Branchement conditionnel (exemple) Effectue un branchement à 2n cases mémoires de l'instruction courante (PC+2+2n) si le bit Z du registre d'état vaut 1. Donc si le résultat de l'instruction précédente était 0. => if/else, boucles...

19 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Branchement conditionnel (exemple)

20 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Architecture de Von Neuman Unité centrale Mémoire Bus d'adresses Bus de données Le même espace mémoire est utilisée pour stocker des données et des instructions

21 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Système minimum (Von Neuman) µPRAMFlash Bus d'adresses Bus de données Périphériques d'E/S horloge ( Instructions, constantes ) (variables)

22 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Architecture de Harvard µP Mémoire Programme Bus d'adresses programme Bus de données programme Deux espaces mémoires indépendants pour stocker les données (variables) et les instructions (programme). Plus de broches mais accès simultané données/instructions Mémoire données Bus d'adresses données Bus de données données

23 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Architecture mixte µP Prog data Prog & data Harvard interne / Von Neuman externe

24 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 CISC / RISC CISC : Complex Instruction Set Computer Beaucoup d'instructions Format d'instruction variable Les instructions s'exécutent sur un ou plusieurs cycles Ex : Intel 8051, Pentium, Freescale 68XXX RISC : Reduced Instruction Set Computer Seulement les instructions les plus utilisées Format d'instruction fixe Les instructions s'exécutent toutes en un cycle machine Ex : Microchip PIC, PowerPC, ARM

25 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Système embarqué Un système informatique embarqué est un système comprenant un microprocesseur mais qui n'est pas vu comme un ordinateur par l'utilisateur final. Exemples : un lecteur DVD, un autoradio, une machine à laver une télécommande, un appareil photo,... un téléphone ? de moins en moins On parle également de système informatique enfoui.

26 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Système embarqué (Von Neuman) µPRAMFlash Bus d'adresses Bus de données Périphériques d'E/S horloge ( Instructions, constantes ) (variables) Un programme unique (mise à jour exceptionnelle)

27 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Ordinateur généraliste L'utilisateur d'un ordinateur généraliste peut charger et exécuter les programmes qu'il souhaite. Ces programmes peuvent même être inconnus lors de la conception de la machine. La sécurité et la sûreté sont donc plus difficiles à garantir. On utilise un périphérique de stockage de masse pour stocker les différents programmes (disque dur, compact flash). Comme ces périphériques sont généralement lent, on charge le programme en RAM avant de l'exécuter. Ordinateur généraliste : Programme et variables en Ram

28 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Ordinateur généraliste RAM µP Stockage de masse permanent programmes et données Stockage temporaire programmes et données pendant leur utilisation

29 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 L'ordinateur de bureau Un ordinateur de bureau est donc un ordinateur généraliste Cependant il est constitué de nombreux systèmes enfouis : carte mère (avec son BIOS stocké dans une mémoire Flash) carte vidéo (système complet : ram, processeur spécialisé,...) disque dur ( µP + RAM cache ) clavier souris.....

30 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Microcontrôleur Un microcontrôleur est un circuit unique qui constitue un système minimum. Il permet de réaliser une application complexe avec très peu de composants annexes. Il comprend : un microprocesseur, de la mémoire RAM (pour stocker les variables), de la mémoire Flash ou OTP (pour stocker le programme), et de nombreux périphériques : - Ports d'entrées/sorties logiques - Convertisseurs analogique/numérique - Périphériques de communications (série,I2C,CAN,USB...) - Timers (compteurs utilisés pour la gestion du temps) - Générateur de signaux PWM etc....

31 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Microcontrôleur PIC18F4520 µP Harvard/Risc 8 bits Instructions codées sur 16 bits 32 ko de Flash (16kinstructions) 1.5ko de RAM jusqu' à 10 Mips à 40Mhz multiplieur 8bx8b câblé

Alu Ram Program counter Flash PIC18F4520PIC18F4520 Décodage des instructions horloge

33 © Copyright 2005, Philippe Arlotto tln.fr Creative Commons Attribution-ShareAlike 2.0 license 18/09/2016 Périphériques du 18F ports d'entrées sorties logiques (jusqu'à 34 broches E/S) 4 timers (2 sur 8bits, 2 sur 16bits) 2 modules PWM, capture, compare (génération et mesures de signaux) 1 port série synchrone (I2C ou SPI) 1 port série asynchrone (utilisable en USB, RS232, RS485 avec un adaptateur externe) 1 convertisseur analogique numérique 10 bits (jusqu'à 11 canaux d'entrées) watch dog, détection tension alimentation basse fréquence horloge modifiable par programme 256o de mémoire EEPROM