Objectifs Identifier l’interface entre le logiciel de plus bas niveau et le matériel Comprendre la problématique de l’architecture du jeu d’instruction.

Slides:



Advertisements
Présentations similaires
Architecture de machines Le microprocesseur
Advertisements

Introduction au langage C
La machine virtuelle virtuelle utopie et/ou réalité ?
18 octobre 2007Cours de compilation 7 - Intranet1 Cours de compilation Génération de code Optimisation de code.
Jacques Lonchamp IUT Nancy Charlemagne – DUT Informatique 1A
Interface Matériel/logiciel
Performances 1 Évolution : Performance. Performances 2 Évolution : Mémoire.
A abstraction b assembleur c nombre binaire d bit e cache f UC g puce h compilateur i famille dordinateurs j contrôle k chemin de données l défaut m dé
Objectif Comprendre à l ’aide d ’un exemple simple le déroulement des instructions au niveau microprogramme.
la programmation en langage C
Interface Matériel/logiciel
Objectifs Nous allons concevoir une mise en œuvre contenant un noyau de jeu d’instructions. Nous verrons comment l’architecture de jeu d’instructions.
People want to do X, but computers can only do Y. This leads to a problem. My job is to explain how this problem can be solved.
Un programme Hello World du début des années #T OXXXXXX0 HELLO WORLD Ce programme ( en langage machine ) consiste en 3 lignes, totalisant 27.
L ’informatique : la mécanique de l ’abstraction
Le Concept du programme enregistré
Le jeu d ’instructions Introduction Un jeu d ’instruction classique
Renommage et ILP Le compilateur mappe la mémoire sur les registres architecturaux. Les registres architecturaux étant peu nombreux, sont fortement réutilisés.
Architecture de machines Principes généraux
Les Ateliers de Génie Logiciel
LANGAGE D’ASSEMBLAGE Architecture et Technologie des Ordinateurs
Système d’exploitation : Assembleur
Les systèmes à microprocesseur
CYCLE 1 : Saisir – Afficher – Données Afficher du texte sur lécran 1- Rôle du printf() 2- Syntaxe du printf() 3- Exécution du printf() par le CPU.
Réalisée par :Samira RAHALI
Programme et Langage C++
Fonctionnement des Unités de Traitement
Système d’exploitation : Assembleur
Bases de la programmation en C++
Techniques de test Boulanger Jean-Louis.
©Frédéric Bastien 2006 Université de Montréal 1 LISATek LISATek pour concevoir des processeurs.
Introduction Objectifs du cours Évaluation Références
Systèmes Superscalaires et VLIW
Les systèmes multiplateformes
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI) Plate-forme.NET.
Chap. 2 - Structure d’un ordinateur
Lycée ELKHAWARIZMI De SAFI
Efficacité des algorithmes
Systèmes d’exploitation
Logique programmée & Microprocesseurs
Cours Architecture des Systèmes Informatiques
PROJET CAPS Compilation, Architecture, Processeurs Superscalaires et Spécialisées.
8INF856 Programmation sur architectures parallèles
Cours de Structure et Technologie des composants d’ordinateurs
Algorithmes et Programmation
INF3500 : Conception et implémentation de systèmes numériques Pierre Langlois Encodage du jeu d’instructions.
Un survol du language C.
1 INFOR 101 Chapitres 5 et 6 Marianne Morris. 2 Discussion du devoir # 2 La solution du devoir No. 2 est à la page Web du cours!
Langages de programmation Ordinateurs = Machines à exécution.  D’où la nécessité d’outils de communication qui s’adaptent le mieux aux utilisateurs. Comment.
L’architecture du processeur Xtensa de Tensilica
ARPO: architecture des processeurs superscalaires,VLIW et optimisation André Seznec et François Bodin.
Architectures des ordinateurs
PROJET CAPS Compilation, Architecture, Parallélisme et Système.
INF8505: processeurs embarqués configurables Département de génie informatique et génie logiciel Conception de processeurs – partie 2 Approches traditionnelles.
1 IFT 099 Introduction à la programmation. 2 Plan du cours (sem. 1) 1.Introduction - les ordinateurs 2.La programmation procédurale 3.La programmation.
1 École des Mines de Saint-Etienne. 158, cours Fauriel Saint-Etienne Cedex 2. Tél Fax Jean-Jacques Girardot
PICAXE LE MICRO-CONTROLEUR.
Introduction et Généralités sur l’Algorithmique
Simulation de jeux d’instructions à hautes performances
PROJET CAPS Compilation, Architecture, Processeurs Superscalaires et Spécialisées.
PROJET CAPS Compilation, Architecture, Processeurs Superscalaires et Spécialisées.
ARPO: architecture des processeurs superscalaires,VLIW et optimisation André Seznec et François Bodin.
PROJET CAPS Compilation, Architecture, Parallélisme et Système.
Simulateur de microcontrôleur Intel 80C51
Interface Homme Machine
UE MAREP Cours 12 : Révisions
Patricia Renault UPMC 2005/2006
System 1 Introduction to Computer Architecture
Java Réalisé par: Mouna POKORA. PLAN: Définition : Historique: Caractéristiques: un langage orienté objet: un langage interprété : un langage portable:
É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.
Transcription de la présentation:

Objectifs Identifier l’interface entre le logiciel de plus bas niveau et le matériel Comprendre la problématique de l’architecture du jeu d’instruction Définir deux grandes familles de jeu d’instruction

Quand Monsieur DUPONT exécute un programme ! ?

Quand Monsieur DUPONT exécute un programme ! ?

Application “Le software” ? Hiérarchie de traduction

Application “Le software” ? Programme en Pascal, C, C++ C++++++ !!!!... Hiérarchie de traduction

Application “Le software” ? Programme en Pascal, C, C++ C++++++ !!!!... Compilateur Programme en Langage assembleur Hiérarchie de traduction

Application “Le software” ? Programme en Pascal, C, C++ C++++++ !!!!... Compilateur Programme en Langage assembleur Hiérarchie de traduction Assembleur Programme en Langage machine

Application “Le software” ? Programme en Pascal, C, C++ C++++++ !!!!... Compilateur Programme en Langage assembleur Hiérarchie de traduction Assembleur Programme en Langage machine Chargeur en Mémoire

Hiérarchie de traduction Vite un exemple ? Change (int v[], int k[]); { int temp; temp=v[k]; v[k]=v[k+1]; v[k+1]=temp; } Change : muli $2,$5,4 add $2,$4,$2 lw $15,0($2) lw $16,4($2) sw $16,0($2) sw $15,4($2) jr $31 0000011010000100010000110 1000100000000000000000000 0001100110100101010000100 0001100000001110000000000 0010000111001010101010000 0010000000000001000000000 1001001010100000010101011 ? Compilateur Hiérarchie de traduction Assembleur Chargeur en Mémoire

Conception ?

Conception ? Conception du Logiciel Conception du Matériel

Conception Principe de l’abstraction Machines virtuelles ? Conception du Logiciel Machines virtuelles Principe de l’abstraction Conception du Matériel

L’interface entre logiciel et matériel ? Conception du Logiciel Architecture du Jeu d’instructions ISA Conception du Matériel

L’architecture de jeu d’instructions ? Conception du Logiciel Le nombre d’instructions Nombre de cycles par instruction Architecture du Jeu d’instructions Temps de cycle Nombre de cycles par instruction Conception du Matériel

Performances Les performances des machines sont définies par trois facteurs clés : le nombre d’instructions le temps de cycles d’horloge le nombre de cycles d’horloge par instruction. Le compilateur et l’architecture de jeu d’instructions déterminent le nombre d’instructions requises pour un programme donné La mise en oeuvre définis le temps de cycle d’horloge, ainsi que le nombre de cycles d’horloge par instruction.

Problématique du jeu d’instructions ? Conception du Logiciel Le jeu d’instruction doit être le résultat de nombreux compromis entre : efficacité du compilateur, flexibilité, vitesse, complexité du matériel. Conception du Matériel

Problématique du jeu d’instructions ? Conception du Logiciel CO-DESIGN Conception du Matériel

Problématique du jeu d’instructions ? Conception du Logiciel CISC Conception du Matériel interprété Complex Instruction Set Computer

Problématique du jeu d’instructions ? Conception du Logiciel Rôle important du compilateur RISC Conception du Matériel Directement exécutée Reduced Instruction Set Computer

Objectif général du cours Comprendre les principes d’une conception RISC