220 likes | 321 Views
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 !.
E N D
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 !
Application “Le software” ? Hiérarchie de traduction
Application “Le software” Programme en Pascal, C, C++ C++++++ !!!!... ? Hiérarchie de traduction
Compilateur Application “Le software” Programme en Pascal, C, C++ C++++++ !!!!... ? Programme en Langage assembleur Hiérarchie de traduction
Compilateur Assembleur Application “Le software” Programme en Pascal, C, C++ C++++++ !!!!... ? Programme en Langage assembleur Hiérarchie de traduction Programme en Langage machine
Compilateur Assembleur Chargeur en Mémoire Application “Le software” ? Programme en Pascal, C, C++ C++++++ !!!!... Programme en Langage assembleur Hiérarchie de traduction Programme en Langage machine
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 Compilateur Assembleur 0000011010000100010000110 1000100000000000000000000 0001100110100101010000100 0001100000001110000000000 0010000111001010101010000 0010000000000001000000000 1001001010100000010101011 Chargeur en Mémoire Vite un exemple ? Hiérarchie de traduction
? Conception
? Conception Conception du Logiciel Conception du Matériel
? Conception Conception du Logiciel Machines virtuelles Principe de l’abstraction Conception du Matériel
? Architecture du Jeu d’instructions L’interface entre logiciel et matériel Conception du Logiciel ISA Conception du Matériel
? Architecture du Jeu d’instructions L’architecture de jeu d’instructions Conception du Logiciel • Le nombre d’instructions • Nombre de cycles par instruction • 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éfinit 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 interprété Conception du Matériel 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 aujourd’hui • Aujourd’hui des proposition avec Bytecodejava et VLIW