Design of Embedded and real-time systems

linfo2315  2022-2023  Louvain-la-Neuve

Design of Embedded and real-time systems
5.00 crédits
30.0 h + 30.0 h
Q2
Enseignants
Thèmes abordés
  • Introduction au Verilog (pour les étudiants qui n'ont pas suivi LELEC 2531)
  • Les processeurs embarqués et les «soft-cores» de type Nios ou MicroBlaze sur FPGA
  • Les périphériques standards d'un processeur et développement d'un périphérique dédié
  • Ajout d'instructions spécialisées («custom instructions») à l'architecture du processeur
  • Architecture d'un système dual-core. Problématique de la communication entre cores
  • Systèmes d'exploitation temps-réel : caractérisation et comparaison
  • Etude approfondie d'un OS temps réel open-source (exemple MicroC-OS/II)
  • Méthodologie de programmation d'une application sur un OS temps-réel
  • Linux embarqué. Développement de driver
  • Mise en oeuvre d'une module Wifi connecté à la carte FPGA
Acquis
d'apprentissage

A la fin de cette unité d’enseignement, l’étudiant est capable de :

1 Eu égard au référentiel AA du programme « Master ingénieur civil en informatique », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :
  • INFO1.1-3
  • INFO2.2-4
  • INFO5.2, INFO5.4-5
  • INFO6.3
Eu égard au référentiel AA du programme « Master [120] en sciences informatiques », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :
  • SINF1.M1
  • SINF2.2-4
  • SINF5.2, SINF5.4-5
  • SINF6.3
Les étudiants ayant suivi avec fruit ce cours seront capables de
  • mettre en oeuvre un système multi-coeur sur FPGA à partir d'un soft-core de type Nios ou MicroBlaze incluant les périphériques, les mémoires, les caches, ...
  • faire un choix argumenté entre des OS temps réel tournant sur un système multi-­coeur.
  • utiliser un OS temps réel tournant sur un systèmes multi-coeur en tirant avantage de ces forces
  • programmer de manière efficace une application avec des contraintes temps-réel en mettant en oeuvre une méthodologie rigoureuse.
 
Contenu
  • Les processeurs embarqués
  • Les périphériques standards d'un processeur et développement d'un périphérique dédié
  • Architecture d'un système multi-core. Problématique de la communication entre cores
  • Systèmes d'exploitation temps-réel : caractérisation et comparaison
  • Etude approfondie d'un OS temps réel open-source
  • Méthodologie de programmation d'une application sur un OS temps-réel
  • Linux embarqué.
  • Sécurité des systèmes embarqués
  • Programmation sécurisée avec Rust pour les systèmes embarqués
FPGA et Verilog ne seront pas enseignés cette année.
Méthodes d'enseignement
Le dispositif pédagogique comporte des séances de cours magistral où les principales thématiques sont expliquées. La mise en application se fait au travers de missions que les étudiants réalisent seuls ou en groupe.
Du matériel sera prêté à chaque étudiant inscrit au cours afin qu'il puisse développer une expertise personnelle. 
Modes d'évaluation
des acquis des étudiants
L'évaluation se base sur 3 notes: deux évaluations intermédiaires ainsi qu'une évaluation finale durant la session de juin. Les évaluations intermédiaires comptent chacune pour 1/4 de la note finale. L'évaluation finale compte pour 2/4. 
En cas de seconde session, la note de seconde session remplace toutes les notes obtenues précédemment.
Autres infos
Préalables:
Une connaissance préalable en architecture des ordinateurs ainsi qu'en programmation est requise.
Bibliographie
Faculté ou entité
en charge


Programmes / formations proposant cette unité d'enseignement (UE)

Intitulé du programme
Sigle
Crédits
Prérequis
Acquis
d'apprentissage
Master [120] : ingénieur civil électricien

Master [120] : ingénieur civil en informatique

Master [120] en sciences informatiques

Master [120] : ingénieur civil électromécanicien