Découvrez les principes liés à la programmation FPGA d'un point de vu matériel comme logiciel et lancer vous sans crainte dans le développement d'applications à l'aide de LabVIEW FPGA.
1. DÉMYSTIFIER LA
PROGRAMMATION AVEC LabVIEW
FPGA
COMPRENDRE LES SPÉCIFICITÉS DU
M AT É R I E L E T S A P R O G R A M M AT I O N
NI DAYs 2014/ PARIS / 11/02/2014
2. UNE ÉQUIPE, DES COMPÉTENCES
>
Une équipe de développeurs certifiés LabVIEW
>
Un partenariat fort avec National Instrument depuis 1990
Mesure, Traitement
LabVIEW, RT, FPGA,
Système distribué, ClientTestStand
du Signal
Serveur, Plug-ins…
Intégration d’équipement
mesure
Système distribué, ClientServeur, Plug-ins…
8. Présentation du FPGA
QU’EST-CE QUE LE FPGA ?
FPGA : Field Programmable Gate Array
Circuits intégrés reprogrammables inventés en 1985
9. Présentation du FPGA
QU’EST-CE QUE LE FPGA ?
3 parties :
- Matrice de blocs logiques programmables
- Blocs d’entrées/sorties
- Interconnections programmables
10. Présentation du FPGA
QU’EST-CE QUE LE FPGA ?
Le FPGA : composant entièrement programmable
Téléchargement possible d’une nouvelle application.
Modification
Mise à jour
Changement d’utilisation
11. Présentation du FPGA
AVANTAGE DU FPGA
Cadencement matériel
Temps réel
Fiabilité
Temps de réponse rapide et stable.
Création de fonctionnalités personnalisées
12. Présentation du FPGA
FPGA CHEZ NATIONAL INSTRUMENTS
Matériel
Ethernet RIO
Single board
cRIO
CVS
Série R USB
PXI série R
FlexRIO
13. Présentation du FPGA
CHOIX DU MATÉRIEL
Entrées/Sorties
• Nombre
• Type (tension, courant,…)
• Conditionnement
Acquisition
• Fréquence
• Précision
Intégration
• Facture de forme
• Environnement d’utilisation
FPGA
• Taille
14. Présentation du FPGA
LANGAGE
Langage de programmation : VHDL (VHSIC (Very High Speed Integrated Circuits) Hardware
Description Language)
Langage décrit par la norme IEEE-1607 daté de 1987 pour sa première version.
17. Utilisation du FPGA
QUE FAIRE AVEC UN FPGA
Acquisition
de données
Traitement
temps réel
Autre
• Acquisition / Génération
• Analogique
• Digitale
• Régulation
• Filtrage
• FFT
• Tout ce que vous pouvez
imaginer
18. Utilisation du FPGA
QUELQUES EXEMPLES
Acquisition
spécifique
• Carte multi-trigger
• Fréquence variable
• Filtrage
Acquisition
rapide
• FFT à 200MHz point par point
(FlexRIO)
Traitement
vidéo
• Analyse et comparaison d’images
19. Utilisation du FPGA
QUELQUES EXEMPLES
Détection
d’avalanche
•
•
•
•
Embarqué
Autonome
Robuste
Environnement
sévère
20. Utilisation du FPGA
QUELQUES EXEMPLES
Régulation rapide
Pour tests de freins
• Acquisition
• Filtrage
• Régulation (1kHz pour
un moteur de 450kW)
• Sécurité
22. Utilisation du FPGA
QUELQUES EXEMPLES
Communication
•
•
•
•
•
16 voies RS422
Acquisition
Génération
Vitesses non standard
Maîtrise du temps
23. Utilisation du FPGA
CE QUE NE FAIT PAS LE FPGA
Stockage
de données • Limite en mémoire
Post
traitement
• Limite de place sur
le FPGA
Affichage
• Pas d’affichage
direct
28. Présentation du FPGA
LANGAGE
Programmer FPGA sans maîtrise du VHDL
Vous connaissez donc déjà le langage de programmation …
Un projet,
Des boucles
Des structures
Des conditions
Des fonctions
Des VIs
Des méthodes
Des propriétés
Etc.
32. Programmation
POUR RÉDUIRE LE TEMPS DE
COMPILATION
Serveur de
compilation linux
Ferme de PC
Cloud
• Serveur dédié
• Plusieurs machines pour compiler
plusieurs codes en parallèle
• Serveur National Instruments dédié
33. Programmation
MISE AU POINT
Une fois compilé, l’utilisation des outils LabVIEW n’est plus possible !
Possibilités :
>
Démarrer la face avant, indicateurs et contrôles sont accéssibles.
>
Emuler le FPGA en activant le mode simulation sur les cartes.
34. Programmation
LABVIEW
> L’utilisation de LabVIEW.
> Boucles
> Conditions
> Séquences
> Machines à états
> ….
> Palette limitée
> Des sous-palettes supplémentaires
> (FPGA Math & Analysis)
> Des sous-palettes en moins (chaînes de caractères)
35. Programmation
LABVIEW
Cahier des charges :
> Acquisition à période variable de 10ms à 100s
> Déclenchement d’alarme en cas de dépassement de seuil
> Démarrage automatique du code
Organigramme :