logo Insalogo Insa

Architecture logicielle et matérielle des systèmes informatiques

Objectifs

A la fin de ce module, l¿étudiant devra avoir compris et pourra expliquer (principaux concepts) :
- Manipulation de différents types d¿automates, la théorie des langages, parseurs, compilateurs ;
- Fonctionnement et développement d'un compilateur, gestion de la mémoire ;
- Spécification des architectures matérielles dans un langage haut niveau ;
- Prise en compte des contraintes matérielles spécifiques aux systèmes embarqués à ressources limitées.

L¿étudiant devra être capable de :
- Créer des parseurs de fichiers de données, des compilateurs et prendre en compte l¿environnement de développement de l¿application (embarqué ou non). Une ouverture vers la génération de code sera abordée.
- Comprendre et maîtriser les architectures des processeurs : pipeline, aléas de branchement, unité de prédiction de branchement, DMA, MMU (pagination et segmentation), aléas de données, multi-cœurs
- De sélectionner une architecture processeur adaptée à l¿application logicielle et à l¿environnement.
- Spécifier un système informatique matériel dans un langage concurrent utilisé largement dans l¿industrie, VHDL et implémenter son système dans un FPGA.

Pré-requis

Programmation en C

Evaluation

L'évaluation des acquis d'apprentissage est réalisée en continu tout le long du semestre. En fonction des enseignements, elle peut prendre différentes formes : examen écrit, oral, compte-rendu, rapport écrit, évaluation par les pairs...