<div class='slidealt'>Expérimentez des extensions de <a title='virtualisation pour plateformes hétérogènes à base de processeurs ARM' href='/fr/produits/'>virtualisation KVM</a></div> <div class='slidealt'>Faites appelle à des <a title='services de full virtualisation pour kvm sur coeur ARM' href='/fr/services/'>services de virtualisation sur mesure</a></div> <div class='slidealt'>Virtualisation KVM des E/S's pour coeurs ARMv7, ARMv8 <a title='extensions de virtualisation de plateforme VFIO des E/S par kvm sur arm en logiciel libre' href='/fr/solutions/guides/vfio-sur-arm/'>par extensions VFIO/IOMMU</a></div> <div class='slidealt'>Projets de recherche de virtualisation <a title='kvm en logiciel libre pour ARM multicoeur' href='/fr/innovation/'>pour les systèmes embarqués et le cloud</a></div> <div class='slidealt'>Solutions de virtualisation pour systèmes <a title='solutions en logiciels libres de virtualisation pour ARMv7-ARMv8' href='/fr/solutions/'>hétérogènes multicoeur ARM</a></div>

Virtual Open Systems - Publications scientifiques

Virtio-FPGA : une solution de virtualisation pour les FPGA attachés à un SoC

Virtio-FPGA - Solution de virtualisation pour les FPGA attachés à un SoC - conférence ESARS-ITEC 2023

Évènement

La conférence internationale de 2023 sur les systèmes électriques pour les avions, les chemins de fer, la propulsion des navires et les véhicules routiers - ESARS - et la conférence internationale sur l'électrification des transports International Transportation Electrification Conference - ITEC, (ESARS-ITEC 2023).

Mots-clés

FPGAs, virtio, Manageur FPGA, VFIO.

Auteurs

Anna Panagopoulou, Michele Paolino, Daniel Raho (Virtual Open Systems SAS).

Résumé

Récemment, les accélérateurs FPGA ont gagné en popularité car ils constituent un moyen approprié de répondre aux exigences des applications en temps réel en matière de calcul intensif et de faible consommation d'énergie. Les systèmes de transport électrique modernes (tels que les avions et les véhicules routiers) peuvent grandement bénéficier des FPGA intégrés, qui intègrent à la fois des caractéristiques de haute performance et de flexibilité dans un seul SoC. En même temps, la virtualisation des ressources FPGA vise à renforcer ces systèmes avec une forte isolation, consolidation et sécurité. Dans cet article, nous présentons un nouveau cadre de virtualisation destiné aux dispositifs FPGA attachés à un SoC, dans une configuration Linux et QEMU/KVM. Nous utilisons Virtio pour permettre la configuration des ressources FPGA à partir de systèmes invités de manière efficace. Nous utilisons également les technologies Linux VFIO et Device Tree Overlays afin de rendre les ressources FPGA dynamiquement accessibles aux systèmes invités. La capacité de configurer et d'utiliser dynamiquement les ressources FPGA à partir d'un environnement de virtualisation est décrite en détail. La procédure d'évaluation de la solution est présentée et la surcharge de virtualisation est considérée comme minime (environ 10 %) lors de l'accès aux dispositifs FPGA à partir de systèmes invités.

Introduction

Au cours des dernières années, les FPGA attachés à un SoC sont apparus comme une architecture d'un grand intérêt pour les systèmes de transport électrique. Il s'agit d'une formation qui offre à la fois des gains de performance et de flexibilité, car elle combine un calcul polyvalent et un calcul hautement spécialisé sur une seule carte. En même temps, la virtualisation des ressources FPGA des FPGA rattachés à un SoC permet de créer des interfaces standardisées pour accéder au matériel hétérogène reconfigurable.

La virtualisation des ressources FPGA est un objectif non trivial, en raison de la nature unique des FPGA; le matériel est tellement modifiable qu'il introduit de grands défis dans l'exposition d'une couche unifiée pour les ressources virtuelles. L'objectif de la solution proposée est de relever certains des défis de la virtualisation FPGA des SoC ARM, sur la base d'API et d'environnements bien connus et acceptés. Dans cet article, nous allons présenter Virtio-FPGA; un prototype initial construit pour Linux et Qemu/KVM, qui vise à fournir des accès transparents et dynamiques du matériel FPGA aux systèmes invités.

Accès complet à cette article scientifique

Identifiant ou inscription pour visualiser l'information complète