Composante
ENSEIRB-MATMECA
Code interne
EE9ME357
Description
Cours :
- SoC. Codesign.
- Etat de l'art technologique.
- Blocs IP et composants virtuels.
- Partitionnement matériel-logiciel.
- Description de la mise en oeuvre du codesign avec l’outil Quartus Prime d'Intel (anciennement Altera).
- Description de la mise en oeuvre du codesign avec l’outil Vivado d'AMD (anciennement Xilinx).
TP :
- Grand TP1 : outil Quartus Prime d’Intel :
- Mise en oeuvre du codesign sur une carte Terasic DE10-Standard avec Quartus Prime.
- Construction d'un premier SoPC avec le processeur softcore NIOS II dans le circuit FPGA Intel Cyclone V.
- Construction d'une deuxième SoPC avec en plus une interface VGA. T
- Programmation avec le langage C.
- Mise en oeuvre du noyau Temps Réel µC/OS II.
- Tests logiciels des périphériques matériels des SoPC sans système d'exploitation (bare-metal) puis avec le noyau Temps Réel µC/ OS II.
- Miniprojets (chronomètre, horloge).
- Grand TP2 : outil Vivado d’AMD :
- Mise en oeuvre du codesign sur une carte Digilent ZedBoard avec Vivado HLS.
- Construction d'un SoPC avec le processeur hardcore ARM Cortex-A9 dans le circuit FPGA AMD Zynq.
- Développement en VHDL RTL et intégration d'un périphérique matériel libre (bloc IP compteur 64 bits).
- Programmation en langage C.
- Mise en oeuvre de l'extension Linux Temps Réel dur Xenomai Cobalt. Programmation avec l'API native.
- Tests logiciels du périphérique matériel créé en VHDL RTL sous Linux embarqué puis sous Linux Xenomai Cobalt.
- Mesure des performances Temps Réel et des temps de latence.
- Grand TP3 : outil Vivado d’AMD :
- Ce TP fait le lien avec le cours "Flot de conception numérique avancée" EN325 où la synthèse de haut niveau HLS est étudiée.
- Mise en oeuvre de la synthèse de haut niveau HLS sur une carte Digilent ZedBoard avec Vivado.
- Création d'un algorithme écrit en langage C (fonction polynomiale).
- Synthèse HLS de l'algorithme en vue de créer un bloc IP.
- Construction d'un SoPC avec le processeur hardcore ARM Cortex-A9 dans le circuit FPGA AMD Zynq intégrant le bloc IP obtenu par HLS.
- Programmation en langage C.
- Tests logiciels du périphérique matériel créé en HLS sous Linux embarqué.
Pré-requis obligatoires
Langage VHDL, circuits FPGA, outil AMD Vivado, outil Intel Quartus Prime, langage C, Linux, commandes Linux, programmation système, Linux embarqué, Temps Réel.
Bibliographie
Polycopiés
Modalités de contrôle des connaissances
Évaluation initiale / Session principale - Épreuves
Type d'évaluation | Nature de l'épreuve | Durée (en minutes) | Nombre d'épreuves | Coefficient de l'épreuve | Note éliminatoire de l'épreuve | Remarques |
---|---|---|---|---|---|---|
Contrôle Continu Intégral | Participation Active | 1 | ||||
Contrôle Continu Intégral | Compte-Rendu | 1 |