Architecture de machines Le microprocesseur

Slides:



Advertisements
Présentations similaires
Architecture de machines Le microprocesseur
Advertisements

Architecture de machines Le microprocesseur
Étapes pour la Programmation du 68HC11 I. Écriture du programme dans un fichier *.a11 II. Le programme est compilé (traduit en langage machine) III. Le.
Chapitre IV Architecture de VonNeumann. I/ Introduction John VonNeumann est un mathématicien d’origine Hongroise qui a participé au projet Manhattan.
Cours de Langage C Récursivité. Objectifs de la séance 11 Connaître la récursivité. Mesurer un temps d’exécution. 2.
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.
Présentation du projet JAVA Système de messagerie instantanée cryptée.
Présentation LabPlus v3. Solution novatrice en Technologies de l’information Solution novatrice en Technologies de l’information Application pour la Gestion.
Enseigner l’arithmétique en série L Réflexions sur les contenus et les exigences.
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.
François Médevielle - UPSTI -. Introduction  Découvrir les éléments constitutifs d’un « ordinateur »  Comprendre l’organisation fonctionnelle d’une.
DIAGRAMME DE DEPLOIEMENT Exposé de: MBALLA MEKONGO Michèle MBOUNA FEUZE William SIEYADJEU Alex Lionel CHOPGWE Leonard NDUMATE Landry TIDJON Lionel.
Programmation des microcontrôleurs PIC ENSET d'Oran / IUFM Aix Marseille - mai Les microcontrôleurs PIC.
Les Réseaux informatique.
ARCHITECTURE RESEAUX.
Les commandes externes
Architecture de machines Historique
Plan 1. L’ordinateur : Les connaissances de base
Sylvain Hamel - Analyste
Algorithme et programmation
Les Bases de données Définition Architecture d’un SGBD
Algorithmique demander jeu du pendu.
Fonctionnement de l'unité centrale
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Information, Communication, Calcul
Plan du cours Introduction : création de circuits
Javadoc et débogueur Semaine 03 Version A16.
Activités algorithmiques
Plans d’expériences: Plans factoriels
Présentation Structure données abstraite (TDA) Rappel : File
Classification des archtecutres paralleles
La technique du pipeline
Tests de boîte blanche.
Codification et Représentation de l’information
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)
Notion De Gestion De Bases De Données
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Assembleur ARM: Séquence d’exécution et branchements
Architectures parallèles
Architecture de machines Le microprocesseur Cours
Bus et adressage GIF-1001: Ordinateurs: Structure et Applications
Composantes principales des ordinateurs
Architecture de base d’un ordinateur
Cours Microprocesseur Par Philippe Bancquart ¨
Révision du format des données
Assembleur, Compilateur et Éditeur de Liens
NUMERATION et REPRESENTATION DES NOMBRES
B.Shishedjiev - Informatique
Introduction aux microprocesseurs
Architecture matérielle des ordinateurs
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.
Introduction à l’assembleur ARM: arithmétique et conditions
Microprocesseurs Hautes Performances
Le programme informatique L’algorithme Le codage
Implantation d'algorithmes spécifiés en virgule flottante dans les processeurs programmables virgule fixe Daniel MENARD Groupe Signal/Architecture LASTI.
PRO1026 Programmation et enseignement
Présenté par: Souleymane MOUSSA Encadré par: M’hammed SAHNOUN
ENSEIGNER L’ALGORITHMIQUE ET LA PROGRAMMATION AU COLLÈGE
Introduction à l'Informatique
Enseignement de Spécialité (EdS) classes de Première et Terminale
Pourquoi MIPS Assembler ?
Fonctionnement de l'unité centrale (rappels ? de 1ère Année)
Les données structurées et leur traitement
Connaître les tables de multiplication de 0 à 9
Transcription de la présentation:

Architecture de machines Le microprocesseur Cours 2003-2004

L’unité d’exécution Mémoire Données & Programmes UAL Unité de commande

Fabrication

Fabrication(2)

Fabrication(3)

Présentation                                                                                                                                                        

Evolution de l’intégration: Processeurs x86

Microprocesseur = Unité Contrôle + UAL L’Unité de contrôle Décodage des instructions Chargement des informations depuis la mémoire dans l ’UAL Contrôle du flux du programme L’Unité Arithmétique et Logique Réalisation des opérations Calculs entiers Calculs sur les nombres réels Comparaisons

Le langage machine Ensemble d ’instructions élémentaires traitées par le microprocesseur Environ un millier d’instructions Branchements Calculs sur les entiers Comparaisons Communication mémoire Calculs sur les réels Opérations «multimédia» (MMX…) Processeur Z80 utilisé en TP: 256 Instructions Codage dans la mémoire « code instruction » Assembleur : Représentation « lisible » du langage machine Mnémonique: représentation des instructions

De l’assembleur au code machine OUTBUF EQU 80H LD A,'A'-1 NCB: INC A OUT (OUTBUF),A CP 'Z' JP NZ,NCB HALT

Les registres Mémoires contenues dans le microprocesseur Codés sur n bits Capacité de traitement du processeur 64 bits dans les microprocesseurs modernes 4/8 bits dans les processeurs anciens 3 types de registres Registres entiers : Traitement des nombres entiers Registres de contrôle : état et déroulement du programme Registres calcul flottant

Principaux registres de contrôle Registre d ’instruction : RI Code de l ’instruction courante Registre de position dans le programme : CO Compteur Ordinal : adresse de la prochaine instruction à éxecuter Registre de pile : SP Permet de créer une « pile » dans la mémoire Registres d ’état Etats du microprocesseur Débordements de capacité Comparaisons Mode d ’exécution Accumulateur Registre de travail principal

Exemple d’instructions Chargement depuis la mémoire LD Registre, Adresse : Place dans un registre le contenu de l’adresse Chargement d’une valeur LD Registre, Valeur : Place dans un registre la valeur fournie Sauvegarde en mémoire LD Registre, Adresse : Place dans la mémoire le contenu du registre Addition ADD Registre1, Registre2 : Ajoute Registre2 à Registre 1 ADD Registre, Valeur : Ajoute la valeur au registre Multiplication (n’existe pas) Mult Registre1, Registre2 : Multiplie Registre1 par Registre 1 Mult Registre, Valeur : Multiplie le registre par la valeur Comparaison CP Registre1, Registre2 : Compare le registre 1 au registre 2 et place les bits d’état Sauts inconditionnel JP, JR Adresse (ou libellé) : Effectue un saut inconditionnel vers l’adresse spécifiée (ou le libellé pour simplifier)

L’horloge Cadence les traitements dans l ’ordinateur Cycle du microprocesseur <=> Traitements effectués en un top d ’horloge Détermine la vitesse du microprocesseur Ne suffit pas pour connaître la performance réelle d ’une machine

Liaisons avec la mémoire Registre d ’adresse et registre mot Stockage de l ’adresse mémoire et de la donnée Sélection de l ’opération Lecture Ecriture Transfert 1 transfert par cycle au maximum Dépend de la vitesse du bus mémoire Processeurs actuels très dépendants de vitesses d’échange

L’adressage Adressage direct Adressage indirect Adressage indexé Spécification de l ’adresse LD (0120H),A : Charge dans A la valeur contenue en 0120H Adressage indirect L ’adresse à considérer est stockée (indirection) LD BC, 0120H LD (BC),A Adressage indexé Utilisation d ’un registre d ’index (IX, IY sur Z80) Adresse = Base + index LD (IX+3), 72 : Charge 72 à l’adresse IX+3 La pile Empilage (push) et dépilage (pop) En général pas de contrôle de ces opérations !

Exemple: le Z80

Structure complexe 2,5 unités d ’exécution Arithmétique Calcul et comparaison des nombres entiers Calcul flottant : coprocesseur mathématique => calcul sur les nombres réels Unité multimédia MMX/SSE/3DNow! : exécution particulière de certaines opérations

Exécution en pipeline Exécution de plusieurs instructions en même temps Partage de l ’UAL 1 instruction prend « 1 cycle » Pb : Vidage du pipeline Instructions de branchement

Exécution parallèle/prédictives Mise à disposition de plusieurs UAL Problème de remplissage du pipeline Exécution prédictive

Exemple: le pentium

Exemple: l ’Athlon

Exemple : le Pentium 4

Pipeline Réel PIV : 20 Niveaux PIII: 10 Niveaux Athlon: 11 Niveaux

L’Hyper Threading Simule deux processeurs sur un seul 2 files d’exécution Mêmes UAL Nécessite des applications compatibles Augmente la disponibilité du système

Optimisation de l’utilisation des ressources

RISC/CISC/VLIW CISC RISC VLIW

Exemple de compilation : Factorielle En algorithmique Fact = 1 Pour i allant de 2 a N Fact = Fact * i  Fin pour En C Int fact(int n) { int i = 2 ; int result = 1 ; while(i <= N) { result *= i ; i++ ; } fact = result ; } ; En assembleur Load A, adresse de N Load B, 1 Load C, 2 Boucle Cmp A,C Jmp Fin Mult B,C Add C,1 Jmp Boucle Fin RTN