Design of Embedded and real-time systems

linfo2315  2024-2025  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
  • 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
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
  • A la fin du cours, les étudiants.es seront capables de: 
    • Concevoir et implémenter une application baremetal, 
    • Comprendre les concepts de RTOS,
    • Concevoir et implémenter des applications sur un RTOS,
    • Programmer en Rust pour systèmes embarqués,
    • Concevoir et implémenter des systèmes sur une architecture multi-coeur avec communication entre coeurs.
  • Chaque étudiant aura à sa disposition un ESP32-LoRa-v3 (dual-core Xtensa).
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.
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 2 notes: (1) un projet accompagné d'une démonstration durant le quadrimestre ainsi que (2) un examen écrit durant la session de juin.
  • Le projet et sa démonstration comptent pour 7 points. Lors de la démonstration du projet les étudiants seront amenés à implémenter des fonctionalités supplémentaires et utiliser d'autres capteurs afin de montrer les compétences acquises. 
  • L'examen écrit compte pour 13 points. 
En cas de seconde session, la note de session remplace toutes les notes obtenues précédemment.
L'utilisation d'IA générative n'est pas autorisée pour ce cours.
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