PLAN DE COURS Automne 2010 GIF-3002 82790 - Systèmes microprocesseurs et interfaces Informations générales Crédits : Temps consacré : Mode d'enseignement : Site Web : Intranet Pixel : Enseignant(s) : Responsable : 4 3-3-6 Présentiel http://gif3002.gel.ulaval.ca https://pixel.fsg.ulaval.ca Tremblay, Étienne [email protected] à déterminer Description sommaire Ce cours traite de l'analyse et de la conception de systèmes numériques utilisant la logique programmable, les microprocesseurs et les circuits d'interfaces configurables. L'étudiant apprendra à développer des systèmes basés sur microprocesseurs et circuits d'interface et à maîtriser la méthodologie du développement de logiciel d'applications industrielles et l'exploitation d'un langage approprié. Le contenu du cours comprend: historique des microprocesseurs: la famille Motorola 68000. Architecture d'un microprocesseur: (68000) interface, registres internes, modèle de programmation, modes d'adressage, jeu d'instructions, mémoire et entrées-sorties, les exceptions. Méthodologie de développement logiciel: cross-assembleur 68000 et cross-compilateur C 68000, ordinateur Micro-Link sur bus STD. Systèmes à microprocesseurs: mémoires, entrées-sorties, bus, interfaces. Systèmes d'analyse et de développement: analyseur logique et émulateur. Liens avec le(s) programme(s) Ce cours participe à la poursuite des objectifs suivants : • connaître les technologies pertinentes aux divers champs d'application du génie électrique; • exploiter les connaissances acquises pour la conception et la réalisation de systèmes dans les différents champs d'application du génie électrique. • acquérir une dextérité de base dans la manipulation d'appareils et l'assemblage de dispositifs et être capable d'encadrer le personnel technique qui en a la charge; • connaître et exploiter la technologie électronique, en étant en mesure d'apprécier ses fondements physiques; • développer l'ouverture sur des champs d'applications tels que la fabrication de matériel d'ordinateur, la conception de logiciels complexes, la commande industrielle, la conception et 1/7 la fabrication assistées par ordinateur, l'instrumentation et la mesure, les systèmes intelligents, le multimédia, la réalité virtuelle ou encore les communications numériques; • faire preuve de soin et de dextérité dans la mise en forme de prototypes et de réalisations et être capable d'encadrer le personnel technique qui en a la charge. • connaître et exploiter les fondements de la dynamique des systèmes en général et de l'architecture et de l'organisation des systèmes informatiques en particulier; Liens avec le(s) programme(s) Ce cours participe à la poursuite des objectifs suivants : • connaître les technologies pertinentes aux divers champs d'application du génie électrique; • exploiter les connaissances acquises pour la conception et la réalisation de systèmes dans les différents champs d'application du génie électrique. • acquérir une dextérité de base dans la manipulation d'appareils et l'assemblage de dispositifs et être capable d'encadrer le personnel technique qui en a la charge; • connaître et exploiter la technologie électronique, en étant en mesure d'apprécier ses fondements physiques; • développer l'ouverture sur des champs d'applications tels que la fabrication de matériel d'ordinateur, la conception de logiciels complexes, la commande industrielle, la conception et la fabrication assistées par ordinateur, l'instrumentation et la mesure, les systèmes intelligents, le multimédia, la réalité virtuelle ou encore les communications numériques; • faire preuve de soin et de dextérité dans la mise en forme de prototypes et de réalisations et être capable d'encadrer le personnel technique qui en a la charge. • connaître et exploiter les fondements de la dynamique des systèmes en général et de l'architecture et de l'organisation des systèmes informatiques en particulier; Objectifs À la fin de ce cours, l'étudiant devra être en mesure de : • Analyser, d'effectuer le design et de développer des systèmes basés sur microprocesseurs et circuits d'interfaces. • Connaître la technologie contemporaine en la matière. • Maîtriser la méthodologie de développement de logiciel d'applications industrielles, et l'exploitation d'un langage approprié. Contenu Historique des microprocesseurs (2 h) : Microprocesseurs, microcontrôleurs et microordinateurs. Évolution et architectures. La famille Motorola. Intel. Zilog, Atmel, AVR, ARM. Architecture d'un microprocesseur (8 h) : Interface. Registres internes. Modèle de programmation. 2/7 Modes d'adressage. Jeu d'instructions. Mémoire et entrées-sorties. Les exceptions. Architecture et réductions du temps d'exécution des instructions (architecture Harvard, pipeline, caches, processeur scalaire, instructions spéciales…). Développement de logiciel embarqué (11 h) : Compilation et édition de lien : Assembleur et langages de haut de niveau, directives, disposition des variables et du code en mémoire, optimisations du compilateur. Gestion du temps de CPU : tâche unique et interruptions, changement de contextes, tâches en machine d'états, système d'exploitation, système d'exploitation temps réel. Gestion de la mémoire : taille de mémoire, piles, mémoire allouée dynamiquement, adresses de mémoire, démarrage du système, (re)localisation des programmes. Gestion des entrées/sorties: accès aux périphériques par registres ou adresses, temps d'accès aux périphériques, service des périphériques, contrôle d'accès à partir de différents contextes, périphérique et système d'exploitation. - Exemples de programmes. Systèmes à microprocesseur (10 h) : Alimentation et horloge : horloge interne/externe, oscillateurs et cristal, PLL, tension(s) d'alimentation, fréquence d'horloge, consommation des microprocesseurs et modes d'opération, gestion des fautes d'alimentation. Mémoires : Description, bus d'accès, données et instructions, décodage d'adresse, mémoires statiques et dynamiques, chronogrammes, temporisation, mémoires non volatiles ("Flash", EEProm, FRAM), mémoires séries et mémoires parallèles, gestion de la mémoire, accès-mémoire versus jeu d'instruction, temps d'accès, mémoire interne/externe, mémoire à accès multiples et banques de mémoire, unité d'accès à la mémoire, translation d'adresses et protection de la mémoire. Entrées/Sorties : bus d'accès aux périphériques, adresses et ports de périphériques, méthodes d'accès aux entrées sorties (accès directs, interruptions, DMA) Périphériques: LEDs et boutons, clavier, interfaces graphiques, “timers”, interfaces séries (RS232, SPI, I2C…), interfaces parallèles, PWM, ADC/DAC, USB, Ethernet, Firewire, CAN… Production de systèmes à microprocesseur et environnement (2 h) : Circuits imprimés, procédés de production, durée de vie du produit (MTBF, MTTR), consommation d'énergie, Energy Start, RoHS, WEEE, EPEAT, recyclage de composantes. Système d'analyse et de développement (4 h) : Environnement de développement intégré (IDE), 3/7 Analyseur logique, déverminage en temps réel (exemple : JTAG), émulateurs. Méthodes de programmation de la mémoire. Consignes sur les travaux Les travaux pratiques sont effectuées sur un kit d'évaluation EK-LM3S9B92. Les outils de développement logiciel (assembleur, compilateur C) sont supportés par le réseau départemental d'IBM-PC. L'écriture, l'assemblage ou la compilation des programmes se font sur IBM-PC. Les essais des programmes et du matériel se font sur les kits d'évaluation. Modalités sur les laboratoires Tous les laboratoires se font seul ou en équipe de deux. Déroulement du cours Ce cours comporte trois heures d'exposés magistraux et des travaux à réaliser sur ordinateur et sur des postes de développement. Des rapports de ces travaux doivent être remis. Détails sur les modalités d'évaluation L'évaluation est faite à partir de deux examens écrits, des rapports des travaux pratiques et de l'examan de laboratoire. Les notes de cours, les volumes de références et les calculatrices sont permis aux examens. La répartition des points est comme suit : le premier examen est de 35 %, le second examen 40 %, 20% pour les travaux pratiques et 5 % pour l'examen de laboratoire. Échelle des cotes (cycle 1) Échelle des cotes A+ [ 90.00 - 100 ] A [ 86.00 - 89.99 ] A- [ 82.00 - 85.99 ] Réussite B+ [ 78.00 - 81.99 ] B [ 76.00 - 77.99 ] B- [ 72.00 - 75.99 ] Réussite C+ [ 68.00 - 71.99 ] C [ 64.00 - 67.99 ] C- [ 60.00 - 63.99 ] Réussite D+ [ 56.00 - 59.99 ] D [ 50.00 - 55.99 ] E [ 0.00 - 49.99 ] X Réussite Échec Abandon sans échec (dans les délais prévus) Bibliographie 4/7 Obligatoire : Notes de cours et la documentation reliée au kit d'évaluation EK-LM3S9B92. Optionnel : "Embedded Systems. A Contemporary Design Tool. ", James K. Peckol, John Wiley & Sons Inc., 2008, ISBN 978-0-471-72180-2 Modalités d'évaluation Examen Date Heure Pondération de la note finale Document(s) autorisé(s) Examen 1 Jeudi 21 octobre 2010 13h30 à 15h20 35.00% Aucun Examen 2 Jeudi 16 décembre 2010 13h30 à 15h20 40.00% Aucun Équipes Date Heure Pondération de la note finale Laboratoire 1 1à2 Jeudi 9 septembre 2010 17h00 2.00% Laboratoire 2 1à2 17h00 2.00% Laboratoire 3 1à2 17h00 3.00% Laboratoire 4 1à2 Jeudi 14 octobre 2010 17h00 3.00% Laboratoire 5 1à2 Jeudi 4 novembre 2010 17h00 3.00% Laboratoire 6 1à2 Jeudi 11 novembre 2010 17h00 2.00% Mini projet 1à2 Jeudi 9 décembre 2010 21h00 5.00% Individuel Jeudi 9 décembre 2010 21h00 5.00% Travail Examen de laboratoir Jeudi 16 septembre 2010 Jeudi 30 septembre 2010 Horaire et disponibilités Cours en classe : Mercredi 15h30 à 16h20 PLT-2751 Jeudi 13h30 à 15h20 PLT-2551 Disponibilité de l'enseignant : Jeudi 15h20 à 17h00 PLT-1114 (du 30 août au 10 déc.) Mercredi 16h20 à 17h00 PLT-1114 5/7 (du 30 août au 10 déc.) Politique sur l'utilisation d'appareils électroniques pendant une séance d'évaluation L'utilisation d'appareils électroniques (cellulaire ou autre appareil téléphonique sans fil, pagette, baladeur, agenda électronique, etc.) est interdite au cours d'une séance d'évaluation et de toute autre activité durant laquelle l'enseignant l'interdit. De plus, seuls certains modèles de calculatrices sont autorisés durant les séances d'évaluation. Pour l'année 2010-2011, les modèles suivants sont autorisés : Hewlett Packard HP 20S, HP 30S, HP 32S2, HP 33S TI-30Xa, TI-30XIIB, TI-30XIIS, TI-36X, Texas Instrument BA35 Sharp EL-531*, EL-546*, EL-520* Casio ASIO FX-300 MS, FX-300W Plus * Calculatrices Sharp: sans considération pour les lettres qui suivent le numéro Dans tous ces cas, la calculatrice doit être validée par une vignette autocollante émise par la COOP étudiante ZONE. Information spécifique aux étudiants de l'École d'actuariat Les calculatrices autorisées lors des examens sont uniquement les modèles répondant aux normes de la Society of Actuaries et de la Casualty Actuarial Society pour leurs examens, soit les modèles Texas Instruments suivants : • BA-35 (solaire ou à pile) • BA II Plus • BA II Plus Professional • TI-30Xa • TI-30X II (IIS ou IIB) • TI-30X MultiView (XS ou XB) Politique sur le plagiat et la fraude académique Règles disciplinaires Tout étudiant qui commet une infraction au Règlement disciplinaire à l'intention des étudiants de l'Université Laval dans le cadre du présent cours, notamment en matière de plagiat, est passible des sanctions qui sont prévues dans ce règlement. Il est très important pour tout étudiant de prendre connaissance des articles 28 à 32 du Règlement disciplinaire. Celui-ci peut être consulté à l'adresse suivante: http://www.ulaval.ca/sg/reg/Reglements/Reglement_disciplinaire.pdf Plagiat Tout étudiant est tenu de respecter les règles relatives au plagiat. Constitue notamment du plagiat le fait de: i) copier textuellement un ou plusieurs passages provenant d'un ouvrage sous format papier ou 6/7 électronique sans mettre ces passages entre guillemets et sans en mentionner la source; ii) résumer l'idée originale d'un auteur en l'exprimant dans ses propres mots (paraphraser) sans en mentionner la source; iii) traduire partiellement ou totalement un texte sans en mentionner la provenance; iv) remettre un travail copié d'un autre étudiant (avec ou sans l'accord de cet autre étudiant); v) remettre un travail téléchargé d'un site d'achat ou d'échange de travaux scolaires. 7/7