% INF4170 — Architecture des ordinateurs % UQAM — Département d'informatique % Plan de cours — Automne 2020 * Horaires, locaux et enseignants: * Site web du cours: Responsable(s) du cours ======================= Coordination ------------ Gagnon, Étienne M. PK-4730 Enseignement ------------- Malenfant, Bruno PK-4115 Groupes: 040 Modalités de communication à privilégier pour rejoindre l'enseignant ==================================================================== - Le courriel et le forum disponible sur Moodle. - L'enseignant répond aux questions en fin d'après midi et en soirée. Description du cours ==================== Familiariser l'étudiant avec la structure des ordinateurs modernes. Initier au fonctionnement interne, à l'agencement des organes. Classification des architectures. Structure des ordinateurs parallèles, pipelines, matriciels et à multiprocesseurs. Fonctionnement d'un processeur. Unité de traitement: étude comparative des catégories d'instructions, unité de contrôle, U.A.L. Mémoires: architecture, fonctionnement, types. Entrée/sortie: adressage des composants, synchronisation, interfaces, canaux. Pipelining: principe, arithmétique et instructions, fonctionnement. Traitement vectorisé: caractéristiques et exemples. Multiprocesseurs: structures fonctionnelles, réseaux d'interconnexion, organisation de la mémoire parallèle, logiciels d'exploitation. Préalables académiques : INF3173 Principes des systèmes d'exploitation Objectif du cours ================= Comprendre les principes de base du fonctionnement interne des ordinateurs et comprendre comment cette organisation interne affecte les performances. Étudier les méthodes et techniques utilisées dans les architectures modernes pour améliorer les performances. Comprendre les interrelations entre logiciel et matériel, particulièrement dans les machines modernes telles les machines Pentium, PowerPC, Itanium et les machines parallèles. Avoir un aperçu des directions futures vers lesquelles les architectures vont se développer. Contenu du cours ================ - Introduction. Structure et fonction d'un ordinateur. Évolution historique. Performance - Vue d'ensemble. Composants et fonctions. Structures d'interconnexion. Bus. PCI. - Mémoire cachée. Mémoire interne. Correction d'erreur. - Gestion de mémoire. TLB. - Arithmétique : Représentation des données. Circuits logiques. Fonctionnement d'une unité arithmétique: addition, soustraction, multiplication. Arithmétique à point-flottant. - Jeux d'instructions. Types d'opérandes. Types d'instructions. Modes d'adressage. Formats d'instruction. - Fonctionnement d'un processeur : Organisation du processeur. Registres. Cycle d'instruction. Pipelines. Pentium et PowePC. - RISC. Grands jeux de registres. Pipelines RISC. MIPS R4000. SPARC. RISC vs CISC. - Parallélisme d'instructions. Superscalaires. - Architecture IA-64. Spéculation. Organisation de l'Itanium. - Unité de contrôle. Microinstructions. - Organisation parallèle. Machines SMP. Cohérence des caches. Agglomérats. Accès non-uniforme à la mémoire. - Autres architectures. - Programmation des fils d'exécution (threads) en Java. -------- ------------------------------------------- ------------------------ Séance Contenu Lecture et laboratoire 1 Introduction et performance 1 2 Performance (suite) et jeu d'instructions 2 3 Jeu d'instructions (suite) 2 4 Arithmétique 3 5 Processeur à 1 cycle 4 6 Processeur à 1 cycle (suite) 4 7 Pipelines 4 8 Aléas 4 9 Caches 5 10 TLB 5 11 Multi-processeurs 6 12 Processeurs multi-core 13 Révision -------- ------------------------------------------- ------------------------ Formule Pédagogique =================== - Cours magistral : vidéo Panopto asynchrone disponible sur Moodle avec les PDF utilisés pour les présentations. - Séance de question : utilisation de Zoom les jeudis à partir de 18h00 (horaire du cours). Les séances Zoom seront enregistrées et disponibles sur Moodle. Matériel et logiciels utilisés ============================== - Logiciels nécessaires : - Zoom (micro optionnel). - Un logiciel qui peut produire des PDF pour la remise des devoirs et examens (word, LaTeX, ...) Modalités d'évaluation ====================== Description sommaire Date Pondération ---------------------- ------------- ------------- Remise du TP1 23 octobre 15% Remise examen intra 30 octobre 35% Remise du TP2 11 décembre 15% Remise examen final 18 décembre 35% - L'examen final couvre toute la matière avec une plus grande emphase sur la matière couverte après l'examen intra. - Une moyenne d'au moins 50% aux examens est exigée pour réussir le cours. - Les travaux peuvent être effectués individuellement ou en équipe d'un maximum de deux personnes. - Une pénalité de 20% par jour de retard sera appliquée sur les travaux. - La qualité du français sera prise en considération, tant dans les examens que dans les travaux pratiques (jusqu'à 10% de pénalité). - Les règlements concernant le plagiat seront strictement appliqués. Pour plus de renseignements, consultez le site suivant : Médiagraphie ============ VO PATTERSON, D.A. and Hennessy, J.L. -- Computer Organisation and Design, RISC-V EDITION -- Morgan Kaufmann Publishers, 2018. ISBN 978-0-12-812275-4. VC PATTERSON, D.A. and Hennessy, J.L. -- Computer Organisation and Design, ARM EDITION -- Morgan Kaufmann Publishers, 2017. ISBN 978-0-12-801733-3. VC PATTERSON, D.A. and Hennessy, J.L. -- *Computer Organisation and Design, Revised Printing* -- MORGAN KAUFMANN PUBLISHERS, INC. FOURTH EDITION, 2012. ISBN 978-0-12-374750-1. VC STALLINGS, W. -- *Organisation et architecture de l'ordinateur* -- 6E ÉDITION, PEARSON EDUCATION, 2003. ISBN 2-7440-7007-6 VC STALLINGS, W. -- *Computer Organization and Architecture* -- 6TH EDITION. PRENTICE HALL, 2003. ISBN 0-13-035119-9 VC HENNESSY, J.L. and PATTERSON, D.A. -- *Computer Organisation and Design* -- MORGAN KAUFMANN PUBLISHERS, INC. SECOND EDITION, 1998. ISBN 1-55-860-428-6. VC PATTERSON, D.A. et HENNESSY, J.L. -- *Organisation et conception des ordinateurs: L'interface matériel/logiciel* -- DUNOD, 1994. EN VENTE À LA COOP SCIENCES. VC PATTERSON, D.A. et HENNESSY, J.L. -- *Architectures des ordinateurs: Une approche quantitative* -- MCGRAW-HILL, 1996. VC STALLINGS, W. -- *Computer Organization and Architecture* -- 4TH EDITION. PRENTICE HALL, 1996. VC TANENBAUM, A.S. -- *Architecture de l'ordinateur* -- 3E ÉDITION, PARIS INTEREDITION, 1996. VC BARON, R.J. and L. HIGBIE -- *Computer Architecture* -- ADDISON-WESLEY PUBLISHING COMPANY, 1992.