Logo ÉTS
Session
Cours
Responsable(s) Yves Blaquière

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement
École de technologie supérieure

Responsable(s) de cours : Yves Blaquière


PLAN DE COURS

Été 2022
ELE344 : Conception et architecture de processeurs (4 crédits)


Modalités de la session d’été 2022


Vous trouverez ci-dessous les modalités de la session d’été 2022. Vous devez les lire attentivement.


Pour assurer la tenue de la session d’été 2022, les modalités suivantes seront appliquées :


  • Les activités d’enseignement de la session d’été 2022 comprendront des activités en présence et à distance, lesquelles seront ajustées en fonction de l’évolution de la situation socio-sanitaire.
  • Pour les cours (ou séances de cours) donnés à distance, l’étudiant doit avoir accès à un ordinateur, un micro, une caméra et un accès à internet, idéalement de 10Mb/s ou plus. L’étudiant doit ouvrir sa caméra et/ou son micro lorsque requis, notamment pour des fins d’identification ou d’évaluation.
  • Les cours (ou séances de cours) donnés à distance pourraient être enregistrés, afin de les rendre disponibles aux étudiants inscrits au cours.
  • La notation des cours sera la notation régulière prévue aux règlements des études de l’ÉTS.
  • Les examens (intra, finaux) se feront en présence, tant que la situation socio-sanitaire le permet.
  • Le contexte actuel oblige bien sûr l’ÉTS à suivre de près l’évolution de la pandémie de COVID-19, laquelle pourrait entraîner, avant ou après le début de la session d’été 2022, un resserrement des directives et recommandations gouvernementales. Nous vous assurons que l’ÉTS se conformera aux règles en vigueur afin de préserver la santé publique et que, si requis, elle pourrait aller jusqu’à interdire l’accès physique au campus universitaire et ordonner que toutes les activités d’enseignement et d’évaluation soient exclusivement données à distance pour tout ou partie de la session d’été 2022. Ainsi, si les examens (intra, finaux) devaient se faire à distance, leur surveillance se fera à l’aide de la caméra et du micro de l’ordinateur et pourrait être enregistrée. Ceci est nécessaire pour se conformer aux exigences du Bureau canadien d’agrément des programmes de génie (BCAPG) afin d’assurer la validité des évaluations.
  • Des exigences additionnelles pourraient être spécifiées par l’ÉTS ou votre département, suivant les particularités propres à votre programme.

En vous inscrivant ou en demeurant inscrit à la session d’été 2022, vous acceptez les modalités particulières de la session d’été 2022.


Nous vous rappelons que vous avez jusqu’au 17 mai 2022 pour vous désinscrire de vos cours et être remboursé.


Pour les nouveaux étudiants inscrits au programme de baccalauréat uniquement, vous avez jusqu’au 31 mai 2022 pour vous désinscrire de vos cours et être remboursé.




Préalables
Programme(s) : 7483, 7883
             
  Profils(s) : Tous profils  
             
    ELE140    
             
Programme(s) : 7694
             
  Profils(s) : Tous profils  
             
    ELE140 ET *INF147    
             
Unités d'agrément
Total d'unités d'agrément : 64,8 50,0 % 50,0 %




Qualités de l'ingénieur

Qn
Qualité visée dans ce cours  
Qn
  Qualité visée dans un autre cours  
  Indicateur enseigné
  Indicateur évalué
  Indicateur enseigné et évalué



Descriptif du cours

Au terme de ce cours, l’étudiant ou l'étudiante aura acquis une vue d'ensemble de l’architecture des processeurs dans un système ordiné et de la méthodologie de conception de processeurs dans les circuits intégrés programmables (FPGA).

Familiarisation avec l’organisation et l’architecture des ordinateurs. Introduction au fonctionnement interne des calculateurs. Architecture et fonctions respectives des éléments essentiels d’un processeur : arithmétique des processeurs, modes d’adressage, jeu d’instructions, unité de contrôle et microprogrammation. Classification des architectures. Mesure de performances. Pipeline : principe, arithmétique et instructions, fonctionnement. Hiérarchie de mémoire. Processeurs parallèles et parallélisme.

Séances de laboratoire au cours desquelles l’étudiant fera la conception, d’un processeur validé sur un circuit intégré programmable (FPGA).

Note sur le préalable INF147 : il est préalable OU concomitant (il peut être suivi en même temps).




Objectifs du cours
  • Familiariser l’étudiant(e) avec l’historique du développement technologique des processeurs ainsi que la terminologie et les éléments de performance utilisés dans ce domaine;
  • Étudier les concepts de fonctionnement des processeurs évolués;
  • Étudier les architectures courantes utilisées pour la réalisation de processeurs;
  • Appliquer une méthodologie de conception de systèmes numériques complexes, de la spécification jusqu'à la mise en oeuvre sur un circuit intégré programmable (décrire le design et ses bancs d'essai; valider la fonctionalité par simulation; faire la synthèse et placement routage; et vérifier le fonctionnement sur une carte de prototypage);
  • Développer une expérience pratique de conception de systèmes numériques complexes, basée sur des processeurs avec un langage de description de haut niveau (VHDL).



Stratégies pédagogiques

Tel que spécifié dans les règlements des études de premier cycle, la charge de travail  requise pour atteindre les objectifs de ce cours de quatre (4) crédits est de 180 heures, soient les heures suivantes sans compter les heures d'étude pour les examens:

Trois (3) heures de cours magistral par semaine
Quatre (4) heures de travail personnel par semaine
Trois (3) heures de laboratoire par semaine
Dix (10) heures au total par semaine

 




Utilisation d’appareils électroniques

L'accès à un ordinateur personnel est obligatoire. Les projets exigent l'installation sur votre ordinateur de logiciels d'aide à la conception de systèmes numériques. Une carte de prototypage FPGA sera utilisée.




Horaire
Groupe Jour Heure Activité
01 Mardi 13:30 - 16:30 Laboratoire (Groupe B)
Mercredi 08:30 - 11:30 Laboratoire (Groupe A)
Jeudi 13:30 - 17:00 Activité de cours
02 Mardi 18:00 - 21:00 Laboratoire
Jeudi 18:00 - 21:30 Activité de cours



Coordonnées de l’enseignant
Groupe Nom Activité Courriel Local Disponibilité
01 Kuljeet Kaur Activité de cours Kuljeet.Kaur@etsmtl.ca A-3322
01 Louis-Philip Béliveau Laboratoire (Groupe A) louis-philip.beliveau.1@ens.etsmtl.ca
01 Alexandre Linteau Laboratoire (Groupe B) alexandre.linteau.1@ens.etsmtl.ca
02 Ibtissam Kaissoumi Activité de cours cc-Ibtissam.Kaissoumi@etsmtl.ca A-2608
02 Hachem Bensalem Laboratoire bensalem.hachem@gmail.com



Cours
Contenus traités dans le cours Nombre d'heures

Introduction

  • Mise en contexte du cours dans le programme
  • Processeurs et ses applications, principaux termes

0,5

Langage de description de haut niveau (VHDL)

  • Rappel sur les notions de base : entité et architecture, processus, signaux, variables, simulation par événements, librairies, paquetages std_logic et numeric_std, attributs, modèles de délai
  • Bancs d’essai et vérification fonctionnelle : générateurs déterministes et pseudo-aléatoires, moniteurs, modèles de référence, structures de banc d’essai, messages usager, lecture et écriture de fichiers textes et procédures surchargées, études de cas
  • VHDL pour la description de circuits numériques : circuits combinatoires (astuces, multiplexeurs, décodeurs, UAL) et circuits séquentiels (processus synchrones, registres, registres à décalage, compteurs, fichiers de registres)

5,5

Unité arithmétique et logique des processeurs

  • Représentation des nombres, conversion, précision (troncature et arrondi) et complément
  • Rappel sur les additionneurs et soustracteurs
  • Fonctionnement d’une unité arithmétique et logique

3

Introduction aux processeurs

  • Historique et évolution des technologies et des processeurs
  • Architecture et organisation des processeurs
  • Fonctionnement : interface logiciel – matériel, niveau des langages, jeu d’instructions, RISC vs CISC
  • Microcontrôleur vs microprocesseur
  • Systèmes embarqués

0,5

Jeu d’instructions - encodage

  • Types d’opérandes et d’instructions : bascule, registre et mémoire
  • Modes d’adressage
  • Formats d’instructions du processeur MIPS
  • Exemples de code : décisions, boucles itératives, tableaux
  • Caractéristiques du jeux d’instructions de principaux processeurs

3,5

Structure et fonctionnement du processeur MIPS monocycle (1 cycle par instruction)

  • Organisation interne : chemin de données, banc de registres, mémoires d’instructions et de données, chemin du compteur de programme, unité de contrôle
  • Structures d’unité de contrôle : signaux de contrôle, décodeur d’instructions

4

Évaluation mi-trimestre - Intra

3

Mesure des performances

  • Définition
  • Comparaison quantitative
  • Notions sur le CPI
  • Méthodes de mesure des performances

1

Processeurs multi-cycles

  • Introduction au pipeline : principe, performances (débit, latence), étages de traitement, diagramme du pipeline
  • Processeurs multi-cycles avec et sans pipeline
  • Unité de contrôle de processeurs multi-cycles avec pipeline
  • Unité de contrôle de processeurs multi-cycles sans pipeline : machine à états finis (circuits cablés, ROM, PLA, microprogramme, séquenceur)

7

Pipeline et parallélisme

  • Aléas de données : principe, unités de détection et d’envoi
  • Aléas de contrôle : types, pénalités, suspension, prédictions statique et dynamique
  • Parallélisme d’instructions et processeurs superscalaire : réordonnancement, renommage des registres, exécution par prédicat, spéculation
  • Retour sur les performances

4

Hiérarchie mémoire

  • Principes de la localité
  • Niveaux de cache
  • Évolution des hiérarchies mémoires
  • Types de mémoires

3

Retour sur l'unité arithmétique et logique des processeurs

  • Multiplication des nombres : architecture parallèle, et algorithmes séquentiels de multiplication de nombres signées et non signées
  • Décaleurs
  • Arithmétique à virgule flottante (norme IEEE 754)

3

Procédures, piles et passage de paramètres

  • Appel d’une procédure
  • Retour d’une procédure
  • Passage de paramètres : registre et pointeur de pile
  • Récursivité
  • Exemple d’application

1

Total

39




Laboratoires et travaux pratiques
Projet Description Nombre de semaines
P1 Conception et vérification fonctionnelle d’une unité arithmétique et logique en VHDL 4
P2 Conception d’un processeur MIPS 1 cycle/instruction 5
P3 Conception d’un processeur MIPS avec pipeline 3
  Total 12



Utilisation d'outils d'ingénierie

Indissociable du cours et du laboratoire. Utilisation du logiciel de simulation ModelSim de Siemens et de l'outil de conception sur FPGA Quartus d'Intel.




Évaluation
Description Pondération Consignes
Examen intra* 20 % Calculatrice autorisée. Documentation limitée à 1 feuille manuscrite 8 ½ x 11 recto verso (écrite à la main, pas de photocopie).
Examen final 30 % Calculatrice autorisée. Documentation limitée à 2 feuilles manuscrites 8 ½ x 11 recto verso (écrite à la main, pas de photocopie).
Mini-Quiz 3 4 % Aucune documentation permise, calculatrice autorisée. Fait en ligne sur Moodle d'une durée de 20 minutes pendant une séance de laboratoire sous surveillance Zoom (caméra obligatoire).
Autres Mini-Quiz  6 % Trois meilleures notes des autres Mini-Quiz. Aucune documentation permise, calculatrice autorisée. Faits en ligne sur Moodle d'une durée de 15 minutes chacun pendant les séances de laboratoire sous surveillance Zoom (caméra obligatoire).
Trois projets 40 % La présence aux séances de laboratoire est obligatoire. Une pénalité pouvant aller jusqu'à 20% peut être appliquée pour l'absence ou la non-participation aux activités.

* La date de l’examen intra peut être modifiée sur un préavis de deux (2) semaines.

Un seuil de passage de 50% est exigé pour le total des éléments à caractère individuel (intra, examen final, projet 1 et les Mini-quiz) pour passer le cours.

La note de passage du cours n'est pas fixée à 50%.




Date de l'examen final
Votre examen final aura lieu pendant la période des examens finaux, veuillez consulter l'horaire à l'adresse suivante : http://etsmtl.ca/Etudiants-actuels/Baccalaureat/Examens-finaux


Politique de retard des travaux
Tout travail (devoir pratique, rapport de laboratoire, rapport de projet, etc.) remis en retard sans motif valable, c’est-à-dire autre que ceux mentionnés dans le Règlement des études (1er cycle, article 7.2.7 b / cycles supérieurs, article 6.5.4 b) se verra attribuer la note zéro, à moins que d’autres dispositions ne soient communiquées par écrit par l’enseignant dans les consignes de chaque travail à remettre ou dans le plan de cours pour l’ensemble des travaux.

Dispositions additionnelles

Aucun retard sans motif raisonnable n'est accepté.




Absence à un examen
Dans les cinq (5) jours ouvrables suivants, la tenue de son examen, l’étudiant devra justifier son absence d’un examen durant le trimestre auprès de la coordonnatrice – Affaires départementales qui en référera au directeur du département ou du SEG. Pour un examen final, l’étudiant devra justifier son absence auprès du Bureau du registraire. Dans tous les cas, l’étudiant doit effectuer sa demande en complétant le formulaire prévu à cet effet qui se trouve dans son portail Mon ÉTS/Formulaires. Toute absence non justifiée par un motif majeur (maladie certifiée par un billet de médecin, décès d’un parent immédiat, Activité compétitive d’un étudiant appartenant à un club scientifique ou un club sportif d’élite de l’ÉTS ou au programme « Alliance sport étude » ou autre) à un examen entraînera l’attribution de la note zéro (0).



Plagiat et fraude
Les clauses du « Règlement sur les infractions de nature académique de l’ÉTS » s’appliquent dans ce cours ainsi que dans tous les cours du département. Les étudiants doivent consulter le Règlement sur les infractions de nature académique (https://www.etsmtl.ca/docs/ETS/Gouvernance/Secretariat-general/Cadre-reglementaire/Documents/Infractions-nature-academique ) pour identifier les actes considérés comme étant des infractions de nature académique ainsi que prendre connaissance des sanctions prévues à cet effet.  À l’ÉTS, le respect de la propriété intellectuelle est une valeur essentielle et les étudiants sont invités à consulter la page Citer, pas plagier ! (https://www.etsmtl.ca/Etudiants-actuels/Baccalaureat/Citer-pas-plagier).



Documentation obligatoire
  • PATTERSON, D.A., HENNESSY, J.L., Computer Organization and Design - The hardware/software interface, 5e édition, Morgan Kaufmann, 2014.



Ouvrages de références
  • STALLINGS, W., Computer Organization and Architecture, Designing for Performance, 6th Edition, Prentice Hall, 2003.
  • PONG, P.C., FPGA Prototyping by VHDL Example, 3e édition, Wiley, 2007.
  • ASHENDEN, P.J., The Designer's Guide to VHDL, 3e édition, Elsevier, 2008.

 




Adresse internet du site de cours et autres liens utiles

https://ena.etsmtl.ca/