Systèmes embarqués 1 (INFO741_IAI)
Volume horaire
Présentation
Cet enseignement a pour objectif de présenter les caractéristiques des systèmes embarqués. Les aspects matériels et logiciels sont abordés dans une approche système. Les notions importantes liées à la gestion des systèmes embarqués sont abordées et mises en pratique dans un mini-projet (Entrées-Sorties, interruptions, partage du temps CPU, programmation multi-threads, fonctionnalités d'un noyau de système d'exploitation, ...).
Objectifs
Ce cours vise à rendre l'élève apte à : |
Niveau |
A l'issue de ce cours l'élève sera capable : |
---|---|---|
définir les caractéristiques techniques et fonctionnelles d'un système embarqué |
Application |
d'identifier, répertorier et prendre en compte les contraintes imposées par l'environnement (consommation énergétique, température, humidité, encombrement, vibrations, capacité de stockage en mémoire, coût) |
de proposer une solution technologique pour réaliser un système embarqué | ||
de proposer et justifier une solution d'implémentation du logiciel embarqué (avec ou sans OS) | ||
spécifier et concevoir un logiciel embarqué |
Maîtrise |
de décrire et d'expliquer le rôle et le fonctionnement d'un pilote de périphérique dans un système d'exploitation |
de spécifier, concevoir et réaliser une application logicielle embarquée simple utilisant des échanges avec l'extérieur (gestion d'Entrées/Sorties, mise en œuvre des interruptions, mémoires partagées, ...) | ||
de déterminer la criticité du traitement logiciel (notion de temps réel, d'ordonnancement, de gestion des priorités et de multitâche) | ||
de déterminer la nécessité d'un système d'exploitation embarqué, temps réel ou non |
Pré-requis
IGI503 Numération et Algorithmique
Plan du cours
Plan du cours
- Architecture générale d’un système embarqué
- Caractéristiques : aspects techniques et fonctionnels
- Contraintes des systèmes embarqués
- Système d’exploitation (OS):
- Comprendre le rôle d’un Système d’exploitation
- Connaître les spécificités d’un système d’exploitation dédié à un système embarqué
- Savoir déterminer la nécessité de mise en œuvre d’un système d’exploitation temps réel (notion de criticité)
- Système embarqué avec OS
- Du logiciel embarqué simple à l’application embarquée s’appuyant sur un système d’exploitation
- Entrées/Sorties
- Comprendre le rôle d’un pilote de périphérique et être capable de l’exploiter dans une application
- Comprendre et mettre en œuvre la gestion d’un circuit d’interface d’E/S
- Comprendre le mécanisme d’interruptions et savoir le mettre en œuvre
Travaux pratiques
Organisée sous forme de mini-projets, la mise en application des connaissances enseignées dans ce module a pour but bien évidemment d'appuyer les concepts vus en cours mais également d'apporter des notions complémentaires (assembleur, environnement de développement, cross-compilation, programmation de système embarqué, gestion des entrées-sorties, modules noyau, ...).
Différents supports seront utilisés dans ces TP-projets (linux embarqué, système Androïd)
Informations complémentaires
Bibliographie