カテゴリー
category_fr

développement FPGA

Qu’est-ce que le développement FPGA ?

Le développement FPGA est la conception personnalisée d’un FPGA pour développer un circuit intégré avec les fonctionnalités souhaitées.

FPGA signifie “Field Programmable Gate Array” : c’est un circuit intégré dont les fonctions peuvent être programmées sur le site de développement. A l’intérieur d’un FPGA se trouve un grand nombre de circuits, y compris des unités arithmétiques, de la mémoire, des registres et des circuits logiques simples.

Sans aucune modification, il s’agit simplement d’un ensemble de circuits sans aucune fonctionnalité mais, en combinant les circuits internes et en concevant les circuits logiques, le développeur peut librement fournir la fonctionnalité qu’il souhaite.

Comme les FPGA, il existe des circuits intégrés à application spécifique (ASIC) qui peuvent être personnalisés selon les souhaits de l’utilisateur. Toutefois, cela implique de concevoir des fonctions personnalisées avant que le circuit intégré ne soit fabriqué. Cela prend du temps pour la conception et le développement. Une fois que le produit est en production, la fonctionnalité ne peut pas être modifiée librement sur le terrain.

Utilisations du développement FPGA

Le développement FPGA est essentiel pour le développement d’appareils électroniques et de cartes contenant des circuits intégrés. Le développement FPGA est utilisé dans le développement d’appareils électroniques dans les télécommunications, l’automobile, l’équipement médical, l’électronique grand public et tous les autres domaines.

Le développement FPGA présente l’avantage de pouvoir programmer les fonctions requises dans des FPGA, de les placer dans des appareils électroniques pour les vérifier sur des appareils réels et de renvoyer les résultats. Par rapport à la conception ASIC, le temps de développement est plus court et il est plus facile de refaire et de mettre au point.

Un autre inconvénient est le coût de production plus élevé par rapport aux ASIC. Il y a eu une tendance à utiliser les FPGA dans la phase de développement et à mettre les ASIC sur le produit final après que la conception a été finalisée. Toutefois, les améliorations récentes de la technologie de fabrication des semi-conducteurs ont permis une meilleure intégration et une réduction des coûts des FPGA. De plus en plus de FPGA sont utilisés dans les produits finaux.

Principe du développement FPGA

Le flux de développement des FPGA est fondamentalement le même que pour le développement d’autres circuits intégrés, tels que les ASIC : alors que dans le développement des ASIC, le département de fabrication est responsable du processus de prototypage, dans le développement des FPGA, le développeur FPGA est également responsable du processus de mise en œuvre du programme sur la puce réelle, qui correspond au prototype de l’ASIC.

Le flux de développement FPGA comprend les processus suivants.

1. Détermination des spécifications

Les spécifications, telles que les fonctions à mettre en œuvre dans le FPGA, les interfaces avec d’autres composants du système dans lequel le FPGA sera intégré, les contraintes de temps, etc. sont compilées et le FPGA qui répond aux spécifications est élagué.

2. Conception de circuits logiques

Les opérations logiques sont décrites à l’aide de langages de description du matériel tels que VHDL et Verilog-HDL.

3. Vérification fonctionnelle

La simulation fonctionnelle est effectuée pour vérifier que le comportement du circuit logique est correct.

4. Compilation

Les équations logiques des portes du FPGA sont générées à partir de la description HDL, et les équations logiques sont ensuite optimisées pour générer une liste de réseaux. Chaque circuit est ensuite placé sur le FPGA réel et le câblage entre les circuits est déterminé. Cette série de processus est appelée compilation.

5. Vérification de la synchronisation

Sur la base des informations de placement et de routage, le temps de retard physique est simulé pour confirmer que les contraintes de temps sont satisfaites.

6. Téléchargement

Les données du circuit généré sont téléchargées sur le FPGA. Grâce à ce processus, le développement FPGA, qui n’était qu’un réseau de portes, est transformé en circuit souhaité par le développeur.

7. Vérification du fonctionnement du FPGA

Le FPGA est exploité pour vérifier qu’il n’y a pas de défauts fonctionnels ou de performances insuffisantes. Il existe deux types de vérification du fonctionnement : l’un consiste à installer le FPGA sur une carte d’évaluation et à exécuter une simulation d’évaluation ; l’autre consiste à monter le FPGA dans un système et à le faire fonctionner. La vérification du dispositif réel est adaptée aux FPGA à grande taille de grille car elle nécessite moins de temps pour la vérification.

Autres informations sur le développement FPGA

1. Langages de programmation pour le développement FPGA

Le HDL, qui est utilisé pour écrire le code du FPGA, est un langage de bas niveau. Il était autrefois difficile à écrire à moins d’être un ingénieur en matériel capable de concevoir des circuits. Aujourd’hui, des plateformes logicielles intégrées permettent le développement FPGA dans un autre langage de programmation sans connaissance du HDL.

La plateforme permet la fonctionnalité des FPGA en convertissant les langages de haut niveau en langages de niveau inférieur. Il est également possible d’utiliser des modèles d’apprentissage profond entraînés créés dans les cadres Tensorflow et Pytorch pour accélérer les FPGA.

2. Efficacité matérielle

Les dispositifs tels que les ASIC utilisent des sauts entre le programme et la mémoire. Cela consomme de l’énergie pour stocker et récupérer les données et réduit les performances en temps réel. Les FPGA n’ont pas besoin de sauter entre le programme et la mémoire. Cela permet un stockage et une récupération efficaces des données. Les FPGA peuvent également décharger les tâches gourmandes en énergie.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です