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

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement





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
  • *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)

6

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

Évaluation mi-trimestre - Intra

3

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

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

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

Hiérarchie mémoire

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

3

Total

39

* Notions vue en fin de trimestre

 

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 Mentor Graphics Corporation et de l'outil de conception sur FPGA Quartus d'Intel (anciennement Altera).