Accueil Instrumentación La tempête parfaite : comment les FPGA, les processeurs multicœurs et la programmation...

La tempête parfaite : comment les FPGA, les processeurs multicœurs et la programmation graphique modifient l'économie de la conception embarquée

Défis de conception des systèmes embarqués
 

Les systèmes embarqués sont constitués de composants matériels et logiciels conçus pour exécuter une fonction spécifique et ont souvent des contraintes de temps réel ou de fiabilité qui vont bien au-delà de l'informatique standard. Pour répondre à ces exigences au niveau matériel, les systèmes embarqués traditionnels intègrent souvent des microcontrôleurs, des processeurs de signaux numériques (DSP) ou des matrices de portes logiques programmables (FPGA). Concernant les logiciels, traditionnellement plusieurs langages ou outils sont nécessaires pour programmer ou configurer chaque élément matériel. Par conséquent, les équipes de conception embarquées traditionnelles ont besoin de membres possédant une vaste expérience en conception de matériel et de logiciels capables d'intégrer du matériel et des logiciels dans des systèmes embarqués typiques.
Avec l'explosion des dispositifs embarqués au cours des dernières décennies, de nombreuses améliorations ont été apportées aux composants matériels et aux outils logiciels. Cependant, malgré l'innovation et l'essor des outils logiciels et des composants matériels, les approches traditionnelles de conception de systèmes embarqués n'ont que peu ou pas évolué et font de plus en plus leurs preuves. Avec l'augmentation rapide des nouvelles normes et protocoles, ainsi que la pression croissante exercée sur les équipes de conception pour accélérer la mise sur le marché des produits, la conception de systèmes embarqués doit subir un changement de paradigme important.
Pour mieux comprendre la nécessité d'une révolution dans la conception de systèmes embarqués, il est utile de considérer les outils et processus actuels. Selon une étude récente du monde embarqué réalisée par UBM Electronics en collaboration avec EE Times et Embedded System Design, il existe des rôles et des processus clairement établis dans la conception de systèmes embarqués. Pour commencer, une équipe de conception de systèmes embarqués compte en moyenne 13,5 membres, dont 62 % sont dédiés aux ressources logicielles tandis que le reste se concentre sur le développement matériel. Ce modèle dans la fonction et la structure de l'équipe de conception embarquée a été constant au cours des cinq dernières années.
Si nous creusons dans les projets embarqués, 43% se concentrent sur le développement de quelque chose de nouveau tandis que les 57% restants sont des améliorations aux systèmes embarqués existants. Les principales raisons d'une mise à niveau sont l'ajout ou l'incorporation de fonctionnalités logicielles nouvelles ou différentes et d'un processeur nouveau ou différent. En moyenne, les projets durent environ 12 mois et en 2011, 57 % des projets se sont terminés en retard ou ont été annulés. De plus, les équipes de conception ont déclaré avoir réutilisé 87 % du code existant, ce qui inclut le code développé en interne, acquis à partir de travaux open source et/ou acheté. Ces tendances dans les projets intégrés ont également été extrêmement constantes d'une année à l'autre au cours des cinq dernières années.
Au-delà du projet et de l'équipe de conception intégrée traditionnels, il est également utile de souligner le processus de conception typique. Une fois l'architecture du système définie sur la base des spécifications du système embarqué, les équipes de conception matérielle et logicielle commencent souvent leur travail séparément. Les ingénieurs en matériel développent l'architecture matérielle, la synthèse et la conception physique du système. Les ingénieurs logiciels travaillent pour développer des logiciels d'application, des compilateurs et, dans certains cas, le système d'exploitation. Au fur et à mesure que les équipes matérielles et logicielles terminent leur travail, il y a un effort d'intégration dans lequel des pilotes logiciels sont développés pour les interfaces matérielles. Cet effort d'intégration est un processus itératif, impliquant souvent des mises à jour de pilotes logiciels ou une synthèse d'interface matérielle.
Compte tenu de l'état actuel de la conception des systèmes embarqués, il existe un besoin évident de changement pour soutenir l'innovation continue tout en maintenant une livraison rapide du produit sur le marché. Ce besoin est exacerbé par le fait que la majorité des répondants à l'étude UBM/EE Times ont déclaré que leur rôle consistait à contribuer à l'intégration du matériel et des logiciels ou micrologiciels. Avec la croissance rapide des progrès des technologies matérielles et des outils logiciels, le défi de l'intégration se profile. Ce défi, s'il n'est pas relevé, conduira à des produits finaux plus chers et pourrait entraver l'expérimentation, la croissance et la mise sur le marché de conceptions plus innovantes.
 

Architecture embarquée standard

 

 
L'architecture matérielle standard élimine une grande partie de l'effort d'intégration qui serait autrement nécessaire. Bien qu'une architecture standard puisse sembler trop restrictive pour l'espace embarqué au premier abord, la standardisation du matériel de bureau est une bonne référence à laquelle se comparer. Au lieu de limiter l'applicabilité des processeurs pour l'informatique quotidienne, une architecture standard a plutôt permis aux développeurs de se concentrer sur leurs compétences et de se spécialiser dans la mise sur le marché de meilleurs composants matériels et logiciels. Grâce à la normalisation, le marché informatique général a bénéficié de systèmes d'exploitation plus robustes, d'applications finales plus raffinées et d'avancées dans les composants matériels sous-jacents. La leçon apprise est que le temps gagné en évitant l'effort d'intégration d'architectures matérielles personnalisées et de composants logiciels associés se traduit par de meilleures solutions finales qui arrivent plus rapidement sur le marché.
L'architecture standard du monde embarqué doit être suffisamment flexible pour s'adapter à divers cas d'utilisation et faciliter les mises à niveau. Compte tenu de ces limitations, l'architecture la plus robuste pour la normalisation dans l'espace de conception embarquée est un microprocesseur et un FPGA fonctionnant ensemble comme une seule unité. Ces deux éléments permettent ensemble une grande flexibilité de conception. Des exemples de cette architecture existent déjà, qui révolutionneront la conception embarquée, et sont entrés sur le marché, tels que la puce Zynq de Xilinx, la puce SmartFusion d'Actel et les produits matériels d'E/S reconfigurables (RIO) de National Instruments.
Un avantage clé d'une architecture standard est que des outils de conception optimisés de haut niveau peuvent être développés et utilisés. À leur tour, des produits plus complexes peuvent être mis sur le marché plus tôt avec des équipes de conception plus petites. Cette transformation est possible car les experts de divers domaines peuvent profiter d'outils de plus haut niveau pour participer davantage à la conception embarquée tout en éliminant le travail d'intégration de divers composants matériels et logiciels.

Avantages de la technologie FPGA

 

 
Pour mieux comprendre l'utilité de l'architecture standard, il est important de clarifier les avantages d'un FPGA dans une conception embarquée. À un niveau supérieur, les FPGA sont des puces programmables qui implémentent des fonctionnalités matérielles personnalisées. L'avènement d'outils de conception de niveau supérieur a permis à ceux qui ont une vaste expérience de la conception de matériel numérique de tirer parti de la technologie FPGA. Les avantages du FPGA sont la fiabilité et le déterminisme du matériel sans le coût initial et la rigidité de la conception ASIC. De plus, les FPGA sont plus avantageux que les processeurs multicœurs qui exécutent beaucoup moins d'instructions en parallèle que les FPGA existants et nécessitent des piles logicielles et des pilotes plus sophistiqués, ce qui diminue la fiabilité par rapport aux FPGA.
Ces avantages font des FPGA l'élément matériel idéal pour le prototypage rapide et l'obtention de hautes performances dans la conception embarquée. La technologie FPGA offre aux concepteurs un accès plus rapide au marché à moindre coût. De plus, la possibilité de charger une nouvelle logique et de redéfinir les connexions dans la structure FPGA permet une utilisation future des conceptions et le bénéfice de mises à niveau plus robustes sans qu'il soit nécessaire de modifier substantiellement le matériel.
 

Exemples de l'industrie

 
La combinaison des processeurs et des FPGA dans la conception de systèmes embarqués se développe dans de nombreux secteurs. Un exemple est ePower Technology, une société danoise qui conçoit des systèmes de contrôle embarqués pour les tests musculaires et les équipements d'entraînement. Le système d'entraînement SYGNUM Power qu'ils ont développé utilise un moteur à cinq phases breveté pour contrôler en douceur l'application de la résistance à la force pendant les mouvements d'exercice. La technologie ePower utilise des FPGA pour piloter des boucles de contrôle à grande vitesse qui maintiennent les points de consigne de vitesse et de position tandis qu'un processeur exécutant un système d'exploitation en temps réel pilote des boucles de contrôle à basse fréquence.
Un autre exemple d'architecture standard se trouve dans le secteur de l'énergie. Xtreme Power est une société basée aux États-Unis qui a conçu un système de stockage d'énergie distribué avec contrôle intégré et basé sur plusieurs processeurs et FPGA. Les FPGA sont utilisés pour prendre des mesures précises et à grande vitesse de l'alimentation triphasée et exécuter des algorithmes avancés pour déterminer la meilleure façon de répondre à l'instabilité du réseau électrique. Pendant ce temps, les processeurs permettent la communication Ethernet avec d'autres nœuds distribués et facilitent l'accès aux données à distance, la gestion du système et les diagnostics.
 

outils de niveau supérieur

 
En plus de l'architecture matérielle standard, des outils de conception de niveau supérieur sont également essentiels pour relever les défis croissants de la conception embarquée. Des outils de plus haut niveau permettent aux experts de divers domaines d'être plus étroitement impliqués dans la conception de systèmes embarqués avec des équipes de conception plus petites et plus efficaces.
L'informatique générale offre la preuve de l'efficacité qui peut être atteinte dans le développement d'applications avec des langages et des outils de conception de niveau supérieur. Sans surprise, le marché de l'embarqué a commencé à voir la croissance d'outils de conception de haut niveau tels que l'outil de synthèse de haut niveau C-to-Gates AutoESL de Xilinx, l'outil de synthèse Catapult C de Mentor Graphics et le dernier logiciel de conception de systèmes NI LabVIEW.
Le passage à des équipes de conception plus petites composées d'experts du domaine et d'architectes système est rendu possible par des outils de conception de niveau supérieur et se traduit par un processus de développement beaucoup plus efficace. Comme mentionné ci-dessus, les équipes de conception embarquées traditionnelles sont beaucoup plus grandes et contiennent beaucoup plus de spécialistes, tels que les concepteurs de FPGA, les concepteurs d'ASIC, les concepteurs de circuits intégrés personnalisés, les concepteurs de logiciels, etc. Ces grandes équipes ont du mal à exécuter tous les besoins de conception en parallèle.
De plus, chaque groupe de spécialistes doit comprendre le problème et les exigences des experts de domaine liés à leur spécialisation avant de pouvoir exécuter les exigences. En conséquence, les équipes de conception traditionnelles ont du mal à progresser, modifiant souvent les exigences en raison de l'écueil consistant à associer les exigences du marché aux fonctions du système et aux problèmes de communication entre les experts en la matière et les spécialistes de la conception.
 

Exemples de l'industrie

 
Il existe plusieurs exemples industriels précieux qui illustrent la puissance des outils de conception de niveau supérieur et des équipes de conception plus petites. Un exemple de ceci est Ventura Aerospace Inc., une petite entreprise qui dessert l'industrie du fret aérien avec des restrictions de fret strictes et une technologie de lutte contre les incendies. Ventura Aerospace a choisi de s'appuyer sur une petite équipe d'experts et de concepteurs de systèmes ainsi que sur le logiciel de conception de systèmes graphiques NI LabVIEW et le matériel NI RIO pour développer un système de contrôle d'extinction d'incendie pour FedEx. En utilisant l'architecture LabVIEW RIO de NI, composée d'un logiciel de conception de système graphique et de matériel RIO, l'équipe de Ventura Aerospace a été en mesure de fournir une solution plus abordable, de meilleure qualité et plus rapide que la plupart de ses concurrents plus importants. Le succès de l'équipe de conception de Ventura Aerospace est la preuve vivante que les petites équipes peuvent être plus efficaces et gagner des parts de marché sur des concurrents traditionnels plus ancrés dans la conception lorsqu'elles utilisent les bons outils. Cet exemple illustre également la puissance d'un logiciel de conception de système de haut niveau fonctionnant conjointement avec une architecture matérielle standard.
Une autre mesure du succès des petites équipes peut être observée dans le nombre croissant de petites entreprises plus innovantes, ainsi que dans les actifs acquis par des concurrents plus grands et plus traditionnels. Un exemple de cela avec la conception intégrée est la vente des actifs de la rétine et du glaucome d'OptiMedica à Topcon. OptiMedica est une petite start-up californienne qui a réussi à créer un dispositif médical ophtalmique innovant utilisant du matériel basé sur FPGA et des outils de conception de systèmes graphiques de National Instruments. Basé à Tokyo, au Japon, Topcon a été créé en 1932 et est l'un des principaux fabricants mondiaux de systèmes de positionnement, GPS, optométriques et de contrôle ophtalmique. La vente des actifs d'OptiMedica pour la rétine et le glaucome à Topcon indique le succès qui peut être obtenu dans une industrie établie par une petite équipe utilisant du matériel FPGA ainsi que des outils de conception de système.
 

L'avenir de la conception de systèmes embarqués

 
La prochaine étape dans l'évolution des outils de conception embarqués est l'intégration de l'architecture matérielle standard avec des outils de conception de système de haut niveau, ce qui élimine le développement d'intergiciels. Un exemple de plate-forme matérielle et logicielle intégrée dans l'espace embarqué est l'architecture RIO LabVIEW de National Instruments. Ces plates-formes intégrées combinent les atouts d'une architecture matérielle standard avec les avantages d'outils de conception de systèmes de haut niveau.
L'avenir de la conception de systèmes embarqués réside dans ces plates-formes intégrées, qui permettent une innovation plus rapide et plus rentable..

 

 


Mots clés
exemples de systèmes embarqués