PLAN DE COURS Automne 2016 Architecture des ordinateurs (6GEI186) Département des Sciences Appliquées Module d’ingénierie Professeur Daniel Audet, ing. Ph.D. Bureau : P4-5030 Tél. : (418) 545-5011 poste 5639 Courriel : [email protected] Web : www.uqac.ca/daudet Département des Sciences Appliquées Module d’ingénierie 1. Formule pédagogique • • • Cours magistraux o Lundi de 08h00 à 09h15 o Jeudi de 11h00 à 12h15 Travaux pratiques en laboratoire o Mercredi de 13h00 à 15h45 (groupe 1 – à déterminer) o Vendredi de 08h00 à 10h45 (groupe 2 – à déterminer) Projet 2. Insertion du cours dans le programme Ce cours fait partie de la liste de cours obligatoires des programmes des baccalauréats en génie informatique et en informatique. Il fait également partie des cours au choix du programme d’informatique de gestion. Pour pouvoir réaliser certains travaux demandés, l’étudiant devra être en mesure de développer des programmes. 3. Objectifs Amener l’étudiant à : • • Maîtriser suffisamment la programmation en langage machine (assembleur) d’un processeur pour qu’il puisse transposer ses connaissances sur n’importe quel autre processeur et développer des applications relativement complexes. Comprendre et pouvoir expliquer le fonctionnement des différents éléments présents dans les processeurs et ordinateurs actuels. Justification o o o o o o Curiosity... Microcontrôleurs et automates industriels Programmation de microprocesseurs Développement de circuits (FPGA contenant un processeur) Développement de pilotes ("drivers") « Internet of things » (IoT) 6GEI186 – Architecture des ordinateurs Plan de Cours Automne 2016 Page 2 de 9 Département des Sciences Appliquées Module d’ingénierie 4. Qualités visées par le cours Selon les normes du Bureau canadien d’agrément des programmes de génie (BCAPG), le cours couvre deux qualités attendues d’un ingénieur, à savoir : 1. Connaissance en génie (80%) : connaissance, à un niveau universitaire, des mathématiques, des sciences naturelles et des notions fondamentales de l’ingénierie, ainsi qu’une spécialisation en génie propre au programme. Dans le cadre du présent cours, les connaissances suivantes seront évaluées : o Unités de traitement o Mémoires internes et externes o Jeux d’instruction o Modes d’adressage o Gestion des interruptions o Gestion des périphériques o Méthodes d’accélération de l’exécution 5. Utilisation d’outils d’ingénierie (20%) : capacité de créer et de sélectionner des techniques, des ressources et des outils modernes d’ingénierie et de les appliquer, de les adapter et de les étendre à un éventail d’activités simples ou complexes, tout en comprenant les contraintes connexes. Dans le cadre du présent cours, les étudiants devront pouvoir concevoir, à l’aide d’outils de développement évolués, des programmes en langage d’assemblage permettant d’utiliser un microprocesseur pour effectuer un traitement sur des données ou signaux, tant internes qu’externes. 6GEI186 – Architecture des ordinateurs Plan de Cours Automne 2016 Page 3 de 9 Département des Sciences Appliquées Module d’ingénierie Ces qualités seront évaluées selon les objectifs et indicateurs suivants : Objectifs 1.3 5.2 Faire preuve de compétence en ce qui a trait aux connaissances propres à la spécialité du programme. Démontrer sa capacité à utiliser des outils, ressources et techniques spécialisés propres à la discipline. Indicateurs 1.3.1 1.3.2 5.2.1 Pondération évaluée Identifier les principes scientifiques et d’ingénierie qui influencent la performance d’un processus ou d’un système. Appliquer de manière appropriée des connaissances propres à la discipline de l’étudiant. Démontrer sa capacité à utiliser des outils d’ingénierie, des techniques et des ressources spécifiques à la discipline de l’étudiant. 46% 39% 15% Chaque indicateur sera évalué en utilisant le système de notation de l’UQAC. Ainsi la réussite du cours est directement liée à l’atteinte des qualités et objectifs précités au travers de l’évaluation de leurs identificateurs dans des travaux et examens. 5. Contenu du cours 5.1 Sujets abordés 1. Introduction 1.1 Organisation et architecture 1.2 Structure et fonction 2. Évolution des ordinateurs et de leur performance 2.1 Historique 2.2 Conception axée sur la performance 2.3 Évolution du Pentium et du ARM 3. Rappel d'arithmétique binaire 3.1 Unité arithmétique et logique 3.2 Entiers: représentation et arithmétique 3.3 Nombres en virgule flottante : représentation et arithmétique 4. Jeu d'instructions d'un microprocesseur 4.1 Opérandes 4.2 Types de données 4.3 Types d'opération 4.4 Langages d'assemblage 6GEI186 – Architecture des ordinateurs Plan de Cours Automne 2016 Page 4 de 9 Département des Sciences Appliquées Module d’ingénierie 5. Modes d'adressage d'un microprocesseur 5.1 Description et utilisation 6. Vue à haut niveau de l'opération d'un ordinateur 6.1 Composantes et fonctions 6.2 Interconnexions 6.3 Les bus 6.4 PCIe 7. Antémémoires ("cache") 7.1 Principes de fonctionnement 7.2 Éléments de conception 7.3 Exemples de mise en oeuvre 8. Mémoire interne 8.1 Mémoire à semi-conducteur 8.2 Correction d'erreurs 9. Mémoire externe 9.1 Disque rigide 9.2 RAID 9.3 Mémoire optique 9.4 Ruban magnétique 10. Entrées/sorties 10.1 Périphériques 10.2 Types d'entrées/sorties 10.3 DMA 11. Support au système d'exploitation 12. Structure et fonction d'un CPU 12.1 Organisation des registres 12.2 Cycle de traitement des instructions 12.3 Pipeline de traitement 13. Ordinateurs à jeu d'instructions réduit 12.1 RISC 12.2 MIPS 12.3 SPARC 14. Parallélisme au niveau des instructions et processeurs superscalaires 6GEI186 – Architecture des ordinateurs Plan de Cours Automne 2016 Page 5 de 9 Département des Sciences Appliquées Module d’ingénierie 5.2 Travaux pratiques Une série de travaux seront réalisés au cours de la session. Sauf indication contraire, ces travaux seront réalisés en équipe de deux personnes dans le local P2-1060 de l’UQAC. Thèmes : • • • • • Programmation en langage d’assemblage Analyse de performance d’antémémoires (mémoires « cache ») Instructions MMX/SSE/AVX Pipelines et architectures superscalaires Modification d’un programme exécutable (fonctionnant sous Windows de Microsoft) 5.3 Projet Un mini-projet comportant des éléments de conception matériel et logiciel vous sera soumis. Ce dernier sera évalué selon les critères suivants : • • Qualité de la structure du programme Fonctionnalité IL EST IMPORTANT DE NOTER QUE LA PROCÉDURE DÉCRITE À L’ANNEXE DEVRA ÊTRE SUIVIE POUR LA REMISE DES TRAVAUX. 6. Incidence sur la santé et la sécurité La réalisation des travaux n’a pas d’incidence sur la santé et la sécurité 7. Modalités d’évaluation 7.1 Calendrier préliminaire Dates Semaine du 10 octobre 2016 Semaine du 17 octobre 2016 Semaine du 12 décembre 2016 Activités d’évaluation Semaine de relâche Examen partiel Examen Final Travaux Projet Indicateurs couverts 25% 30% 25% 20% 1.3.1 1.3.2 1.3.1 1.3.2 1.3.2 5.2.1 1.3.2 5.2.1 Les dates exactes et les locaux des examens seront fournis en temps opportun. Il est à noter que des changements peuvent être apportés à ce calendrier. 6GEI186 – Architecture des ordinateurs Plan de Cours Automne 2016 Page 6 de 9 Département des Sciences Appliquées Module d’ingénierie Dispositions particulières : a) Toute documentation sera permise aux examens. b) Les examens se tiendront dans un local où chaque étudiant aura accès à un ordinateur. Il est à noter que le réseau ne sera pas accessible et que, par conséquent, les étudiants sont invités à enregistrer leurs documents électroniques sur une clé USB en prévision de l’examen. Pour ce qui est des travaux, le calendrier préliminaire (sujet à changement) des dates de remise sera : Travail 1 Travail 2 Travail 3 (partie en équipe) Travail 3 (partie individuelle) Travail 4 Travail 5 (projet) 4 octobre 2016 25 octobre 2016 29 octobre 2016 6 novembre 2016 22 novembre 2015 6 décembre 2016 IL EST IMPORTANT DE NOTER QUE LA PROCÉDURE DÉCRITE À L’ANNEXE 1 DEVRA ÊTRE SUIVIE POUR LA REMISE DES TRAVAUX. 7.2 Qualité du français écrit Tout travail remis doit être conforme aux exigences de la politique institutionnelle en matière de maîtrise du français écrit du Manuel de Gestion. (http://www.uqac.ca/direction_services/secretariat_general/manuel/3/209.pdf) Un travail se verra attribué la note 0 si la qualité du français n’est pas adéquate (plus de 10 fautes dans le rapport). 7.3 Pénalité pour retard Tout travail remis en retard sans motif valable sera pénalisé de 10% par jour de retard. 7.4 Plagiat Les sanctions prévues à la politique institutionnelle sur le plagiat seront appliquées aux étudiants identifiés par le professeur. (http://www.uqac.ca/direction_services/secretariat_general/manuel/3/125.pdf) 7.5 Note de passage La note de passage est fixée à 60 %. 6GEI186 – Architecture des ordinateurs Plan de Cours Automne 2016 Page 7 de 9 Département des Sciences Appliquées Module d’ingénierie 7.6 Évaluation du cours Ce cours sera évalué conformément à la politique d’évaluation des enseignements en vigueur (via le dossier étudiant). 8. Soutien pédagogique 8.1 Assistant(s) Des étudiants fourniront de l'aide pédagogique lors des séances de laboratoire. Ceux-ci seront identifiés au début de la session. 8.2 Périodes de disponibilité Le professeur se rendra disponible à son bureau (local P4-5030) en dehors des heures régulières du cours aux heures suivantes : • Mercredi de 09h00 à 11h00 Veuillez noter qu’il est également possible que le professeur soit également disponible en dehors de ces périodes. Vous êtes invités à passer à son bureau afin de vérifier sa présence. Les assistants de laboratoire ne seront disponibles que lors de la séance de laboratoire prévue à l’horaire. 9. Documentation • William Stallings, "Computer Organization and Architecture", 10e édition, Prentice Hall, New Jersey, 2016 (ISBN-13 : 9780134101613) o http://www.mypearsonstore.com/bookstore/computer-organization-and-architecture9780134101613?xid=PSED Notes : o o Ce livre s’est mérité à quatre reprises le prix du meilleur livre de référence en ingénierie et en science informatique Un site WEB est associé à ce manuel. Il donne accès à une foule d'informations touchant le domaine de l'architecture des ordinateurs Pour une location numérique de 180 jours (79.99 US$ au lieu de 194.20 US$)) : https://www.vitalsource.com/referral?term=9780134102160 • • Diapositives électroniques présentées en classe (disponibles sur le site WEB du cours) Informations disponibles sur la page Web du cours (http://www.uqac.ca/daudet/Cours/Architecture-bac) o Notes de cours o Travaux 6GEI186 – Architecture des ordinateurs Plan de Cours Automne 2016 Page 8 de 9 Département des Sciences Appliquées Module d’ingénierie - ANNEXE Dispositions particulières pour la remise des travaux 1. Les énoncés des travaux seront disponibles sur le site WEB du cours que vous pouvez accéder en utilisant l’adresse suivante: http://www.uqac.ca/daudet/Cours/Architecture-bac Notes : Pour accéder à certaines pages du site WEB, vous aurez besoin de fournir un mot de passe. Pour les documents : ______________ (donné par le professeur en classe) Pour les diapositives : ______________ (donné par le professeur en classe) Pour les travaux : _________________ (donné par le professeur en classe) 2. La remise des travaux devra s'effectuer électroniquement. Vous DEVREZ utiliser l'outil de remise des rapports accessible via le menu "Travaux" du site WEB du cours. AVANT DE TRANSMETTRE VOTRE LABORATOIRE, VOUS DEVREZ : 3. CRÉER UN FICHIER D'ARCHIVE (ZIP) CONTENANT TOUT VOS FICHIERS le nom de votre fichier d'archive devra se conformer au format suivant: travail#-votrenom-votreprenom.zip • ENSUITE LE CRYPTER UN UTILISANT LE LOGICIEL PGP (téléchargeable via le menu "Travaux" du site WEB du cours) Lors de la remise d’un rapport : • • Respectez la convention de nomenclature des fichiers (travail#-votrenom-votreprenom.zip.pgp) Remettez ce qui est demandé... 6GEI186 – Architecture des ordinateurs Plan de Cours Automne 2016 Page 9 de 9