Enseignement Société Événements NI Developer Zone Support Solutions Produits et Services Contacter NI MyNI

Nouveautés de NI LabVIEW FPGA

Chaque nouvelle version du Module NI LabVIEW FPGA inclut de nouvelles fonctionnalités, propriétés intellectuelles (IP) ou fonctions FPGA, des améliorations de performances, des corrections de bogues, etc.

Nouveautés de LabVIEW 2009

  • Estimation précoce des ressources en terme de taille et de vitesse
  • Débogage de la violation de synchronisation avec l'animation du chemin critique
  • Nouvelles IP et IP améliorées de mathématiques et de traitement du signal haut débit
  • Fonctionnalités d'intégration à l'hôte

Nouveautés de LabVIEW 8.6

  • Simulation comportementale améliorée
  • Transformée de Fourier rapide et autres nouvelles IP
  • Support supplémentaire des types de données en virgule fixe
  • IP de niveau composant (CLIP), pour l'importation d'IP externes

Nouveautés de LabVIEW 8.5

  • Assistant FPGA Project Wizard
  • IP de contrôle, de filtrage et de génération de signaux
  • Fonctionnalités de modularité et de réutilisation du code
  • Module LabVIEW Statechart
  • Support des données en virgule fixe au niveau pionnier

Nouveautés de LabVIEW 8.2

  • IP de mathématiques et d'analyse pour FPGA
  • Assistant FPGA Wizard
  • Nouveaux VIs de gestion de la mémoire

Fonctionnalités de LabVIEW 8.0

  • Projet LabVIEW
  • Transferts de données de type DMA
  • E/S de FPGA par glisser-déposer

Fonctionnalités de LabVIEW 7.1

  • Nœud d'interface HDL
  • Boucle cadencée monocycle

Nouveautés de LabVIEW 2009

Visionner la présentation vidéo : Quelles sont les nouveautés de LabVIEW 2009 FPGA ?

Estimation précoce des ressources en terme de taille et de vitesse

Un élément important des demandes des utilisateurs inclut une meilleure estimation de l'utilisation des ressource du FPGA sans attendre la fin de la compilation. Avec LabVIEW 2009, le compilateur présente des estimations de taille et de vitesse de votre conception après l'étape de "synthèse" et vous alerte lorsque ce rapport est prêt pour la visualisation.

Débogage de la violation de synchronisation avec l'animation du chemin critique

Lorsqu'une violation de synchronisation se produit, également dénommée "not meeting timing", il peut être difficile de diagnostiquer le chemin critique et de réduire les contraintes de synchronisation en programmant plus efficacement et en ajoutant des étapes de pipeline. Désormais, les violations de synchronisation génèrent un écran qui montre tous les VI du chemin critique et qui anime l'emplacement du VI sur le diagramme de FPGA. Cette fonctionnalité descend même au niveau du sous-VI pour localiser la source d'une violation de synchronisation.

Nouvelles IP et IP améliorées de mathématiques et de traitement du signal haut débit

Les nouveaux VIs mathématiques haut débit offrent de nouvelles fonctions, comme sinus, cosinus et exponentielle, avec le protocole de handshaking haute vitesse qui leut permet d'être utilisées dans une boucle cadencée monocycle. Vous disposez non seulement de nouvelles fonctions mathématiques, mais vous pouvez aussi les utiliser avec d'autres fonctions dans une chaîne de signaux haut débit comme les fonctions fenêtre, FFT et ré-échantillonnage.

Fonctionnalités d'intégration à l'hôte

Du côté hôte, LabVIEW 2009 ajoute deux nouvelles fonctionnalités importantes. Tout d'abord, NI a exporté une interface C qui permet de communiquer en C avec votre programme LabVIEW FPGA qui s'exécute dans le matériel. La fonctionnalité inclut la lecture/écriture dans les registres, le DMA et les interruptions. Ensuite, LabVIEW 2009 inclut de nouveaux VIs de mise à l'échelle pour certaines fonctions IP FPGA. Par exemple, il existe un VI qui convertit les données brutes FFT en spectre ; un VI qui prépare des coefficients pour les VIs de filtrage FPGA et un VI qui relève fréquence, amplitude et phase et retourne des valeurs à utiliser avec les VIs de génération de signaux.

Nouveautés de LabVIEW 8.6

Voir la présentation vidéo "Nouveautés de LabVIEW FPGA 8.6"

Simulation comportementale améliorée

Pour un développement plus efficace, la simulation comportementale peut être utilisée pour exécuter le code sur l'ordinateur de développement et pour vérifier les fonctionnalités avant la compilation. De plus, dans LabVIEW 8.6, il est possible d'utiliser des programmes LabVIEW qui certifient les vecteurs de test ou les valeurs interactives pour les nœuds d'entrée des E/S du FPGA (field-programmable gate array). Capturez les sorties pour vérification et pour visualisation du comportement du FPGA, exécutez l'hôte simultanément avec le FPGA sur l'ordinateur de développement, et obtenez le registre et les transferts DMA simulés entre le FPGA simulé et le code hôte. Avec ces nouvelles fonctionnalités, il est possible de créer un test de performances du code FPGA et de simuler le système complet, sans devoir compiler systématiquement pour vérifier la logique.

Transformée de Fourier rapide et autres nouvelles IP

Dans LabVIEW 8.6, il est devenu possible de mettre en œuvre sur le FPGA une fonction Transformée de Fourier rapide (FFT) avec fenêtrage. Il s'agissait de l'une des fonctionnalités les plus demandées, et NI a introduit un cœur d'IP personnalisable qui permet d'exécuter la fonction FFT, la fonction FFT inverse, des tailles binaires diverses et différents paramètres de débit. NI a ajouté des fonctions de ré-échantillonnage rationnel, de division, de racine carrée, de filtrage adaptif et de prise en charge du dépassement de capacité en virgule fixe.

Support du mode en virgule fixe

Le type de données en virgule fixe est désormais supporté par quasiment toutes les entrées du FPGA. Ceci inclut le support des fonctions DMA, de mémoire, de filtrage, PID, FFT, et l'ensemble des fonctions arithmétiques. De plus, le type de données en virgule fixe offre une option d'ajout sur le fil d'un bit de dépassement de capacité. NI va continuer à améliorer le support des fonctions en virgule fixe pour résoudre ce défi de conception particulier, nécessaire pour un fonctionnement avec des cibles dont les ressources sont restreintes.

IP de niveau composant (CLIP)

Cette IP de niveau composant est une nouvelle façon d'importer et d'utiliser une IP externe écrite dans un langage de description de matériels (HDL). Les implémentations instanciées avec CLIP sont exécutées en parallèle des diagrammes LabVIEW et on communique avec elles par des nœuds d'E/S créés par l'utilisateur. Avec certaines cibles matérielles, il est possible d'utiliser CLIP pour dialoguer directement avec les broches d'E/S. Les fonctions CLIP ouvrent encore plus la plate-forme FPGA pour inclure tous les types d'IP, qui peuvent se révéler plus adaptées pour s'exécuter en parallèle plutôt que dans des flux de données comme l'exécution du nœud HDL en cours.

HAUT

Fonctionnalités de LabVIEW 8.5

Assistant FPGA Project Wizard

Le nouvel assistant FPGA Project Wizard permet de créer un projet LabVIEW complet, comprenant une cible FPGA et des E/S configurées et prêtes à être programmées. Parce qu'il peut être directement relié à l'assistant FPGA Wizard existant, vous pourrez rapidement générer du code fonctionnel pour les E/S analogiques et numériques, les compteurs et pour les mesures par encodeur en quadrature. L'assistant FPGA Project Wizard est amélioré grâce à de nouvelles options DMA pour le FPGA et à la génération de code sur l'hôte.

IP de contrôle, de filtrage et de génération de signaux

Le Module LabVIEW FPGA 8.5 inclut de nouvelles IP dans la palette FPGA. Quant aux IP existantes, elles ont été améliorées, pour une meilleure utilisation des ressources sur le FPGA.

Contrôle : inclus dans le Toolkit PID, le bloc PID (proportionnelle, intégrale, dérivée) du FPGA fonctionne désormais pour plusieurs voies, afin que les utilisateurs puissent entrer un tableau de voies dans la même logique PID sur le FPGA. Cette amélioration est particulièrement importante pour les applications à grand nombre de voies. Le nombre de voies possibles est passé de 8 à 256, pour une cible à 1 million de portes. De plus, le test de performances pour une seule voie est trois fois plus rapide et utilise presque 20 % de ressources FPGA en moins.

Filtrage : tous les filtres sont également compatibles avec de multiples voies. LabVIEW FPGA inclut également un nouveau filtre de crevasse (notch), qui arrondit les filtres passe-haut et passe-bas de Butterworth existants.

Génération de signaux : en plus du générateur de signaux existants, LabVIEW FPGA offre désormais un générateur de signaux carrés et des générateurs de bruit (gaussien et blanc).

Fonctionnalités de modularité et de réutilisation du code

Contrôles des noms des E/S : intégrez des méthodes, des propriétés et des nœuds d'E/S, dans les sous-VIs, en spécifiant les éléments d'E/S par un fil.

Contrôles de type horloge : utilisez un fil pour spécifier quelle horloge, telle qu'une horloge intégrée ou une horloge dérivée, doit être utilisée pour une boucle de cadencement monocycle particulière.

Nœud de rétrocontrôle amélioré : placez un nœud de rétrocontrôle n'importe où dans un diagramme, afin de sortir du contexte d'une boucle. Les nœuds de rétrocontrôle peuvent s'avérer très utiles pour le stockage d'états ou pour l'utilisation d'un pipeline. Ils fonctionnent désormais partout, y compris dans les sous-VIs.

Module LabVIEW Statechart

NI offre désormais des façons supplémentaires de programmer graphiquement les FPGA. De nombreux concepteurs préfèrent l'utilisation de machines d'états pour représenter le système qu'ils souhaitent construire. Avec ce nouveau module qui supporte LabVIEW FPGA, les concepteurs peuvent non seulement représenter les systèmes à base de FPGA grâce aux diagrammes d'états, mais également les programmer avec le même paradigme visuel.

Support des données en virgule fixe au niveau pionnier

Dans LabVIEW, le support des données en virgule fixe est particulièrement utile pour la programmation de FPGA. Auparavant, LabVIEW FPGA supportait seulement les entiers. Désormais, avec le support de données en virgule fixe, les ingénieurs peuvent intégrer des nombres fractionnaires et les types de données de lageur de bit arbitraire à la programmation de FPGA. LabVIEW 8.5 offre le support de la virgule fixe à un petit nombre de fonctions primitives de mathématiques et de comparaison. Les versions ultérieures de LabVIEW chercheront à étendre ce support pour cet important type de données.

HAUT

Nouveautés de LabVIEW 8.2

IP de mathématiques et d'analyse pour FPGA

Le Module LabVIEW FPGA 8.2 offre de nouvelles fonctions d'analyse natives afin de vous permettre la réutilisation du code des fonctionnalités de base de traitement et de contrôle des signaux communes aux FPGA. Cette nouvelle IP inclut :

  • Mesures du courant continu (DC) et de la valeur efficace (root-mean-square, RMS) : calculez les valeurs de courant continu, de valeur efficace, de somme, de moyenne ou de somme des carrés d'un signal
  • Filtres de Butterworth : filtrez un signal d'entrée en utilisant un filtre de Butterworth configurable avec ce VI Express
  • Mesure de période : calculez la période d'un signal périodique échantillonné au hasard en utilisant la détection de franchissement de seuil

HAUT

Assistant FPGA Wizard

Vous pouvez concevoir des E/S de FPGA et un cadencement pour vos applications d'acquisition de données intelligentes grâce à l'Assistant FPGA Wizard. Cet assistant configuratif permet de sélectionner le cadencement et la synchronisation entre le matériel FPGA et le VI hôte. Après la sélection du cadencement, il est possible de configurer les E/S analogiques, numériques, de compteur ou d'encodeur en quadrature. Une fois la configuration effectuée, il est possible de l'enregistrer et de générer du code hôte et du code FPGA de base. Du code supplémentaire peut-être intégré pour compléter les fonctions de votre application telles que les algorithmes de contrôle, l'enregistrement de données ou la mise en réseau des données.

Nouveaux VIs de gestion de la mémoire

Avec la nouvelle interface de lecture et d'écriture en mémoire, il est désormais possible d'accéder à l'ensemble des 80 Ko de mémoire des circuits à 1 million de portes et des 190 Ko de mémoire des circuits à 3 millions de portes. La mémoire est utilisable pour enregistrer des données à des fins de génération de signaux ou pour éviter de se servir des tableaux qui utilisent inefficacement les portes FPGA.

HAUT

Fonctionnalités de LabVIEW 8.0

Projet LabVIEW

Avec le Projet LabVIEW, il est non seulement possible de cibler et d'ouvrir des VIs dans LabVIEW pour Windows, le Module LabVIEW FPGA, le Module LabVIEW Real-Time et d'autres modules LabVIEW simultanément, mais également de développer des applications LabVIEW FPGA. Comme indiqué ci-dessous, le Projet LabVIEWpeut être utilisé pour créer et pour gérer toutes les ressources FPGA dont :

  • des VIs
  • E/S FPGA
  • des horloges personnalisées
  • des configurations CompactRIO
  • des mémoires FIFO FPGA

Transferts de données de type DMA

Les capacités d'accès direct à la mémoire (DMA) du Module LabVIEW FPGA 8.0 permettent de s'affranchir des limitations de débit entre le matériel FPGA et l'hôte. Alors que les FPGA des matériels à E/S reconfigurables (RIO) peuvent fonctionner à des fréquences allant jusqu'à 20 MHz, les vitesses de streaming de données les plus rapides hors DMA sont d'environ 1 Mo/s. Le Module LabVIEW FPGA 8.0 implémente le DMA sur tous les matériels NI de la Série R et CompactRIO, pour obtenir au mimimum une augmentation des vitesses de streaming de données d'un facteur 20 entre le FPGA et une application hôte, à comparer à d'autres implémentations telles que l'utilisation des requêtes d'interruption.

Le DMA offre un lien direct données-vers-RAM sur la machine hôte. Se baser sur le processeur hôte pour transférer des données en continu du périphérique vers l'hôte conduit souvent à des latences et peut provoquer un goulet d'étranglement du transfert de données. L'utilisation des requêtes d'interruption consomme également des cycles d'horloge du processeur et augmente la charge globale du processeur hôte. Avec LabVIEW FPGA 8.0, on obtient des transferts de données plus efficaces du périphérique vers l'hôte et de l'hôte vers le périphérique qui court-circuitent le processeur, en créant un système d'acquisition de données hautes performances pour toutes les applications.

Pour utiliser le DMA, créez simplement deux mémoires tampon, l'une sur le matériel FPGA et l'autre sur le processeur hôte. LabVIEW va ainsi transférer des données efficacement et de façon transparente sur le bus PCI. Le Module LabVIEW FPGA 8.0 utilise des mémoires FIFO FPGA configurées pour que le DMA écrive et lise la mémoire DMA et qui utilise les méthodes d'appel du FPGA du côté hôte pour créer, lire et écrire à partir de la mémoire hôte. Le DMA améliore de manière significative les performances du matériel RIO, pour des applications telles que l'acquisition de données intelligente avec mise en mémoire tampon, les matériels de communication avec streaming numérique, l'acquisition de données à bord de véhicules et la maintenance préventive.

E/S de FPGA par glisser-déposer

Avec LabVIEW FPGA, il est possible d'accéder rapidement aux E/S des matériels RIO par des fonctions d'E/S matérielles spécifiques (cependant, les palettes de fonctions LabVIEW FPGA mentionnées dans ce document sont spécifiques aux cibles d'exécution FPGA et intègrent des fonctions uniquement disponibles lorsqu'elles ciblent un matériel FPGA ou un émulateur de matériel FPGA). Le Module LabVIEW FPGA permet un accès direct monopoint aux E/S analogiques et numériques, sur du matériel RIO de NI. Avec le Module LabVIEW 8.0 FPGA, il est possible de glisser et de déposer directement des E/S depuis la fenêtre Projet de LabVIEW sur le diagramme du VI FPGA.

Le Module LabVIEW FPGA offre de nombreuses fonctions d'E/S matérielles, dont les suivantes :

  • Entrée analogique
  • Sortie analogique
  • Entrée numérique
  • Sortie numérique
  • Entrée de port numérique
  • Sortie de port numérique
  • Nœud de méthode d'E/S
  • Nœud de propriétés d'E/S

HAUT

Fonctionnalités de LabVIEW 7.1

Boucle cadencée monocycle

La structure de boucle cadencée LabVIEW exécute une boucle d'une période définie. Utilisez la boucle cadencée pour développer des VIs ayant des capacités de cadencement multifréquences, un cadencement précis et une génération de rétrocontrôle sur l'exécution de la boucle d'exécution ou pour modifier dynamiquement les caractéristiques de cadencement ou plusieurs niveaux de priorité d'exécution. Accédez à un tutorial pour obtenir davantage d'informations sur la boucle cadencée. La boucle cadencée monocycle de LabVIEW FPGA est une boucle cadencée spécialisée avec laquelle il est possible de développer des applications LabVIEW FPGA aussi efficacement (en termes de vitesse et d'espace) que par programmation HDL codée à la main. La boucle cadencée monocycle est similaire à un processus cadencé en VHDL. L'ensemble du code LabVIEW situé dans la boucle est une logique combinatoire sur le FPGA, où les entrées proviennent de composants tels que des fonctions d'entrée numérique, des contrôles ou des registres à décalage vers la gauche et les sorties sont des fonctions de sortie numérique, des indicateurs et des registres à décalage vers la droite. Il est aisé de tirer parti d'une boucle cadencée monocycle : utilisez-la comme une boucle While classique.

La boucle cadencée monocycle permet l'exécution de l'ensemble du code d'une boucle pendant un seul et unique cycle d'horloge (25 ns). Bien qu'il existe certaines limitations à la boucle cadencée monocycle, comme de faire en sorte de faire tenir l'exécution de l'ensemble du code pendant seul un cycle d'horloge, son utilisation permet d'obtenir un code particulièrement efficace pour l'exécution des E/S numériques, ainsi qu'une logique et un traitement du signal simples. En savoir plus sur les fonctions de la boucle cadencée monocycle et sur les nœud d'E/S dans LabVIEW FPGA.

Nœud d'interface HDL

Il est possible d'intégrer une IP HDL existante directement dans un VI LabVIEW FPGA grâce au nœud d'interface HDL et de représenter ce code sous la forme d'un unique bloc de fonction dans LabVIEW. Ce code est ensuite réutilisable dans la même application ou dans d'autres applications avec le même bloc de fonction. Si vous avez un bloc de code HDL à utiliser dans un VI FPGA, vous pouvez saisir le code VHDL directement dans le nœud d'interface HDL ou faire référence à un fichier .vhd externe, plutôt que de ré-écrire le code en LabVIEW.

Intégration de code VHDL personnalisé dans un diagramme LabVIEW

HAUT

Acheter LabVIEW FPGA dès maintenant

« Retour vers la page d'accueil LabVIEW FPGA