Coursebooks 2017-2018

PDF
 

Projet de systems-on-chip

CS-309

Lecturer(s) :

Beuchat René

Language:

Français

Résumé

L'objectif de ce cours est de s'approprier les connaissances nécessaires pour réaliser du développement "full stack" depuis le hardware jusqu'au software application et s'exécutant sur un système d'exploitation Linux. La base des laboratoires est une plateforme embarquée basée sur un SOC FPGA & ARM.

Contenu

Ce cours-labos va surtout permettre aux étudiants de comprendre les liens entre une  application, un operating system (Linux) et le matériel informatique. Une plateform ayant une  FPGA et 2 processeurs ARM intégrés est utilisée comme support des labos.

Ce cours est centré sur des laboratoires pratiques à réaliser par les étudiants. Généralement une introduction d'une heure est suivie de 1 à 3 sessions pour réaliser des mini-projets par groupes.

Lors des laboratoires, les travaux seront effectués sur des cartes FPGA-SOC avec processeurs embarqués sous forme softcore (NIOSII) et/ou hardcore (ARM). Des interfaces programmables simples et complexes seront développées en VHDL pour s'interfacer avec des modules externes à contrôler. La méthodologie pas-à-pas sera utilisée pour arriver à la réalisation de systèmes relativement complexes.

Les sujets suivants seront étudiés et au final une application complète sera implémentée :

  1. Analyse du système : Multicore ARMs, FPGA, I/Os, et interfaces programmables spécialisées ;
  2. Design et simulation d'une interface programmable en VHDL, pour un ADC permettant de lire des joysticks analogiques, et un contrôle de servo-moteurs ;
  3. Design et simulation d'un accélérateur spécifique en VHDL pour une caméra thermique ;
  4. Test du système spécifique avec développement de logiciel en C avec des outils de cross-debugging (baremetal coding) ;
  5. Boot et test d'un système embarqué, baremetal design ;
  6. Installation d'un OS: Adaptation et compilation de Linux pour la carte de laboratoire ;
  7. Mini-projet final où les étudiants utiliseront leurs connaissances pour capturer une image thermique et à l'aide de joystick définiront divers paramètres et afficheront les résultats sur un affichage LCD ou écran VGA.

Mots-clés

Micro-controllers, Micro-contrôleurs, FPGA, SOC, Embedded Systems, Logic Analyzer, Oscilloscope, projects, work in groups, C, VHDL.

Compétences requises

Cours prérequis obligatoires

Concepts importants à maîtriser

Les étudiants doivent connaître l'architecture d'un processeur, d'un système informatique, quelques notions de programmation en C, en langage assembleur et en VHDL.

Acquis de formation

A la fin de ce cours l'étudiant doit être capable de:

Compétences transversales

Méthode d'enseignement

Travail attendu

Méthode d'évaluation

  1. Rapports réguliers (70%)
  2. Présentation orale finale (15%)
  3. Démonstration (15%)

Encadrement

Office hours Non
Assistants Oui
Forum électronique Oui

Ressources

Service de cours virtuels (VDI)

Non

Sites web
Liens Moodle

Préparation pour

CS-473: Embedded Systems

CS-476: Real Time Embedded systems

In the programs

Reference week

 MoTuWeThFr
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15     
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22     
Under construction
 
      Lecture
      Exercise, TP
      Project, other

legend

  • Autumn semester
  • Winter sessions
  • Spring semester
  • Summer sessions
  • Lecture in French
  • Lecture in English
  • Lecture in German