Académique Documents
Professionnel Documents
Culture Documents
com
Résumé—Cet article traite du rôle du Field Programmable consomme une quantité d'énergie considérablement faible, en plus
Gate Array (FPGA) dans les applications de l'Internet des objets d'être de faible coût dans des volumes élevés. Malgré les grands
(IoT). Les avantages des FPGA par rapport aux ASIC et aux avantages de l'utilisation des ASIC, ils présentent également un grand
microcontrôleurs sont soulignés pour justifier l'inclinaison de inconvénient car ils ne disposent pas de la fonction de reconfigurabilité.
l'industrie vers davantage d'applications basées sur l'IoT-FPGA. Cela signifie qu'une fois qu'un ASIC a été fabriqué, l'utilisateur ne peut
De plus, cet article met en évidence l'architecture matérielle pas l'utiliser pour effectuer une opération pour laquelle il n'a pas été
interne du FPGA qui est le principal catalyseur de la fonction de conçu. Cela a aidé les scientifiques et les chercheurs à proposer le
reconfigurabilité des FPGA. Cette caractéristique est ce qui
concept d'un FPGA (Field-Programmable Gate Array). Comme son nom
rend les FPGA plus précieux par rapport à l'architecture fixe
l'indique, un FPGA surpasse les ASIC en étant un dispositif
des microcontrôleurs. Ensuite, plusieurs applications basées
reconfigurable qui peut être programmé pour effectuer plusieurs
sur l'IoT sont discutées dans lesquelles les FPGA montrent la
opérations sans avoir besoin de le reconditionner. Ceci est pris en
supériorité. Ces applications incluent l'interfaçage de FPGA
charge par la structure interne d'un FPGA illustré à la Fig. 1 qui se
avec des dispositifs de périphérie basés sur l'IoT et des
dispositifs FPGA de système sur puce (SoC) avec un accent compose de plusieurs blocs logiques programmables qui peuvent être
particulier sur le FPGA SmartFusion2 SoC de Microsemi. reconfigurés pour exécuter plusieurs fonctions, en plus de
Finalement, l'interconnexion programmable qui relie les différents blocs logiques
entre eux. En outre, les FPGA ont un coût de développement très faible
Mots clés—FPGA, IdO, ASIC, Reconfigurabilité, SoC, et un délai de commercialisation court par rapport aux ASIC.
SmartFusion2.
je. jeNTRODUCTION
L'évolution de la technologie numérique a connu de multiples
percées au cours des dernières décennies. La première étincelle a peut-
être été déclenchée par Gordon Moore lorsqu'il a prédit que le nombre
de transistors sur une puce doublerait tous les deux ans. La prédiction
de Moore semble avoir pris de l'ampleur avec le nombre de transistors
passant de 32 en 1965 à 1 milliard en 2007, et elle continue sans
l'ombre d'un doute [1]. L'industrie des circuits numériques s'est
appuyée pendant de nombreuses années sur la technologie des
transistors à jonction bipolaire (BJT). Cela a permis des avancées dans la
conception et le développement de circuits intégrés spécifiques à une
application (ASIC) conçus spécifiquement pour un usage particulier.
Fig. 1. Schéma fonctionnel d'un FPGA [2]
L'utilisation de BJT, bien qu'elle nous offre de nombreux avantages,
comporte de nombreux inconvénients. L'un des inconvénients majeurs Ce document commence par souligner la raison de l'essor des
des BJT est la consommation élevée car il s'agit d'un transistor FPGA, puis aborde l'architecture matérielle du FPGA, suivi d'une
fonctionnant en courant. Ce problème limite l'évolutivité des comparaison entre les capacités des FPGA et des microcontrôleurs
applications qui utilisent des BJT, car l'extension d'un ASIC pour IoT modernes. Ensuite, l'article traite des applications IoT
incorporer des opérations gourmandes en calcul signifie également industrielles dans lesquelles les FPGA se sont avérés d'une grande
plus de puissance. En conséquence, cette préoccupation a donné lieu à utilité. Ceux-ci incluent l'interfaçage des FPGA avec des dispositifs
la naissance de la technologie CMOS. L'introduction des transistors de périphérie basés sur l'IoT et des applications FPGA de système
CMOS dans le monde numérique a permis à la loi de Moore de persister sur puce (SoC). Enfin, l'article propose une nouvelle application qui
et de se poursuivre pendant de plus en plus d'années puisqu'elle peut utiliser la large gamme de capacités au sein du FPGA.
permet aux fabricants de mettre plus de transistors dans la même puce
avec un taux de consommation d'énergie inférieur.
II. FPGA TOPOLOGIE
La reconfigurabilité matérielle est l'une des fonctionnalités les plus
La nature des ASIC leur permet d'effectuer une seule fonction. En
intéressantes qui permet aux FPGA de s'adapter à divers scénarios en
conséquence, la mise en œuvre ASIC d'un circuit numérique possède de
termes de sécurité, d'efficacité énergétique et de fonctionnalités [3]. En
nombreux avantages qui aident à améliorer les performances du
raison de leurs excellentes caractéristiques, les possibilités
circuit. Les avantages de l'utilisation des implémentations ASIC incluent
d'applications basées sur FPGA sont infinies. D'autre part, l'introduction
des capacités très hautes performances puisque la puce a été fabriquée
de l'IoT a complètement révolutionné le domaine de la technologie.
avec une fonction spécifique à l'esprit. Ça aussi
Maintenant que les FPGA peuvent être utilisés dans les domaines IoT, il
A. Architecture matérielle Fig. 2. Structure interne d'un bloc logique programmable [2]
Il existe principalement deux fabricants géants de
B. Avantages des FPGA
puces FPGA qui dominent le marché de nos jours ; Altera
qui a été racheté par Intel en 2015 pour environ 16,7 La comparaison entre les FPGA et les dispositifs de pointe IoT
milliards de dollars US, et Xilinx qui est considéré comme modernes est l'un des sujets les plus discutables dans le monde
le pionnier de l'industrie de fabrication de FPGA [10]. Si technologique. Récemment, des scientifiques ont essayé de peser
elle devait être examinée, l'architecture matérielle des les avantages et les inconvénients des FPGA par rapport aux
FPGA fabriqués par les deux sociétés n'aurait que des microcontrôleurs comme Raspberry Pi et Particle Photon. Malgré le
différences mineures, les deux sociétés s'accordant sur fait que les microcontrôleurs sont des dispositifs de périphérie à
l'implémentation matérielle globale. La structure interne usage général relativement moins chers qui sont capables
d'un FPGA est la principale technologie de pilotage de la d'effectuer beaucoup de calcul de périphérie, les FPGA sont
fonction de programmabilité de la puce. En effet, un toujours un acteur majeur en matière de calcul intensif. Les
FPGA se compose de différents blocs programmables microcontrôleurs compatibles avec le cloud comme Raspberry Pi et
qui permettent à l'utilisateur final de personnaliser la Photon sont connus pour leur efficacité à collecter des données
puce sur le terrain sans avoir à reconcevoir la puce à brutes à partir de capteurs au niveau de la couche physique.
partir de zéro. D'autre part, ils n'ont pas la puissance de traitement requise pour
effectuer des calculs très exigeants comme le traitement d'images
Les blocs logiques se composent principalement d'unités de
et de signaux.
mémoire, de logique et de multiplicateur. Ces unités sont entourées de
plusieurs blocs d'E/S programmables qui sont utilisés pour interfacer Les microcontrôleurs peuvent également être considérés comme
les blocs logiques internes avec le monde externe. En zoomant sur l'une une implémentation ASIC car ils offrent principalement une architecture
des unités logiques d'une architecture FPGA standard, une table de fixe. Cela signifie que les microcontrôleurs souffrent des mêmes
correspondance (LUT) est utilisée pour stocker les sorties d'une fonction inconvénients que les ASIC par rapport aux FPGA. Cela est évident
booléenne spécifique qui correspondent à des entrées spécifiques. d'après le petit nombre de ports d'entrée et de sortie dans Raspberry Pi
L'existence d'une LUT est l'une des principales raisons d'une exécution et Photon. D'un autre côté, le FPGA offre un nombre énorme de ports
rapide dans un FPGA, car la complexité d'exécution de la fonction est d'E/S par rapport à ces microcontrôleurs. Par conséquent, c'est là que le
similaire à celle d'une table de hachage. Si les entrées sont connues, le FPGA offre un avantage sur les microcontrôleurs car il peut être adapté
FPGA peut générer la sortie en un rien de temps puisque les sorties aux besoins exacts d'une application spécifique, contrairement à leurs
sont stockées dans cette LUT. En plus de la LUT, le FPGA dispose homologues qui sont limités par les ports fabriqués et donc on ne peut
également d'un fichier de registre dédié qui doit être utilisé comme ni étendre les entrées ni les sorties si l'application l'exige. plus d'entre
mémoire à accès aléatoire (RAM). De plus, une unité logique contient eux, ni d'économiser certaines ressources si elles sont en excès. Par
également des bascules spécifiques afin de servir d'éléments de conséquent, le principal avantage d'un FPGA par rapport à tout ASIC ou
mémoire pour la sortie de ce bloc. Enfin, le FPGA utilise des MUX afin de microcontrôleur est le fait qu'il permet aux développeurs de concevoir
router différentes entrées vers la sortie en cas d'opérations et d'essayer différentes implémentations et configurations et d'évaluer
conditionnelles. La famille de puces Virtex-7 est considérée comme la leurs performances sur le terrain avant de passer à l'étape de
technologie de pointe sur le marché actuel des FPGA. Il est optimisé fabrication qui coûte énormément de ressources. En conséquence,
pour les performances et l'intégration du système à 28 nm et est utilisé certains fabricants de microcontrôleurs implémentent une architecture
dans une large gamme d'applications, notamment les réseaux 10G à de microcontrôleur nouvellement proposée sur un FPGA afin de
100G, les radars et le prototypage ASIC. pouvoir manipuler la conception presque sans frais. Une fois que le
concepteur est satisfait des performances de son design, celui-ci peut
Par exemple, l'architecture Virtex-7 FPGA contient jusqu'à
ensuite être gravé sur une puce dédiée prête à être vendue aux
485 760 cellules logiques, 2 800 tranches DSP, avec 37 080 Kbits de
consommateurs. En revanche, l'implémentation d'une architecture de
blocs mémoire embarqués, 56 émetteurs-récepteurs GTX 12,5 Go/s,
FPGA sur un microcontrôleur n'est pas possible.
Il y a encore un autre aspect dans lequel les FPGA surpassent les microcontrôleurs, et c'est le traitement parallèle. Le implémenter les filtres d'image sur le FPGA sont déjà flashés dans la
processeur d'un microcontrôleur ordinaire a généralement une routine spécifique à suivre ; récupérer, décoder et exécuter. Il puce. Une sélection déclenche des broches d'entrée-sortie à usage
commence par extraire une instruction de la mémoire d'instructions, puis il essaie de comprendre la signification de cette instruction général (GPIO) associées sur un microcontrôleur Raspberry Pi qui
et exécute ensuite l'instruction en conséquence. Il ne fait qu'une instruction à la fois. Cela signifie qu'un microcontrôleur est communique par conséquent avec le décodeur d'un FPGA. Une fois le
uniquement capable d'exécuter des instructions de manière séquentielle et qu'il a donc une limitation sur le nombre d'instructions traitement de l'image terminé, le FPGA envoie l'image de sortie à un
pouvant être traitées simultanément. D'autre part, les FPGA bénéficient de la possibilité d'exécuter plusieurs instructions écran d'ordinateur via un connecteur de matrice vidéo graphique (VGA).
simultanément. Ceci est pris en charge par la brillante architecture interne qui sépare différentes unités logiques au sein de la même La figure 3 montre le schéma fonctionnel du système. Étant donné
puce de sorte que chaque unité logique puisse fonctionner indépendamment. Par conséquent, deux unités logiques peuvent effectuer qu'un utilisateur doit accéder à l'application du serveur Web via
deux opérations entièrement différentes sans affecter le résultat de l'autre. Cette fonctionnalité FPGA peut être exploitée dans des l'adresse IP du R-Pi, l'application est basée sur l'IoT.
applications qui nécessitent un traitement parallèle des données. Par exemple, le traitement d'images est connu pour être l'une des
opérations les plus gourmandes en calculs. Un microcontrôleur ne peut parcourir que les pixels d'une image les uns après les autres,
alors que l'architecture des FPGA peut être exploitée pour diviser l'image en plusieurs sections indépendantes et affecter chaque
section à un groupe d'unités logiques différentes. De cette façon, le traitement des images sur les FPGA est beaucoup plus rapide par
rapport à l'alternative aux microcontrôleurs. deux unités logiques peuvent effectuer deux opérations entièrement différentes sans
affecter le résultat de l'autre. Cette fonctionnalité FPGA peut être exploitée dans des applications qui nécessitent un traitement
parallèle des données. Par exemple, le traitement d'images est connu pour être l'une des opérations les plus gourmandes en calculs.
Fig. 3. Schéma fonctionnel du système de l'interface R-Pi avec FPGA dans l'IoT
Un microcontrôleur ne peut parcourir que les pixels d'une image les uns après les autres, alors que l'architecture des FPGA peut être
candidature [5]
exploitée pour diviser l'image en plusieurs sections indépendantes et affecter chaque section à un groupe d'unités logiques
différentes. De cette façon, le traitement des images sur les FPGA est beaucoup plus rapide par rapport à l'alternative aux
En raison de la structure matérielle FPGA, [5] a mentionné qu'il y avait un temps d'exécution
microcontrôleurs. deux unités logiques peuvent effectuer deux opérations entièrement différentes sans affecter le résultat de l'autre.
réduit lorsque les opérations de traitement d'image lourdes étaient effectuées sur le FPGA par
Cette fonctionnalité FPGA peut être exploitée dans des applications qui nécessitent un traitement parallèle des données. Par exemple,
rapport au traitement basé sur un serveur Web. L'idée de découpler les capacités de traitement
le traitement d'images est connu pour être l'une des opérations les plus gourmandes en calculs. Un microcontrôleur ne peut parcourir
du FPGA de la couche physique des périphériques IoT et de la couche d'application des services
que les pixels d'une image les uns après les autres, alors que l'architecture des FPGA peut être exploitée pour diviser l'image en
Web constitue un moyen robuste d'effectuer des calculs complexes tout en améliorant le temps
plusieurs sections indépendantes et affecter chaque section à un groupe d'unités logiques différentes. De cette façon, le traitement
d'exécution et l'utilisation des ressources. De plus, un tel modèle permet à tout appareil IoT doté
des images sur les FPGA est beaucoup plus rapide par rapport à l'alternative aux microcontrôleurs. Par exemple, le traitement
de normes de communication, telles que l'USB largement utilisé, abréviation de Universal Serial
d'images est connu pour être l'une des opérations les plus gourmandes en calculs. Un microcontrôleur ne peut parcourir que les pixels d'une image les uns après les autres, alors que l'architecture des FPGA peut être exploitée pour diviser l'image en plusieurs sections indépendantes et affecter cha
Bus, de s'interfacer facilement avec une carte FPGA. De même, un autre avantage réside dans
En général, les FPGA ne nécessitent généralement l'efficacité du codage ; étant donné que toutes sortes de traitements complexes sont effectués sur
pas une horloge aussi rapide que les microcontrôleurs, la structure FPGA en utilisant le codage HDL, le dispositif IoT interfacé peut simplement utiliser un
car les FPGA sont de nature très rapide car ils langage de programmation de haut niveau tel que C, Python ou Java qui sont couramment utilisés
n'entraînent pas la surcharge des microcontrôleurs lors par les programmeurs. Cependant, il peut y avoir des inconvénients avec un tel modèle ; par
de l'exécution du code logiciel [11-14]. Contrairement exemple, l'interfaçage d'un appareil périphérique IoT nécessiterait que le FPGA soit physiquement
aux microcontrôleurs Raspberry Pi 3 et Particle Photon, à proximité, à condition que l'interface utilise une norme de communication filaire telle qu'un
le FPGA Xilinx VC707 peut exécuter des instructions en câble USB. Avec cette possibilité de limitation, la section suivante explore les applications récentes
parallèle, ce qui augmente encore sa vitesse. Si nous qui utilisent la structure FPGA intégrée avec un traitement softcore dans un seul appareil, un
devions comparer le VC707 et le Raspberry Pi 3 et système sur puce (SoC). à condition que l'interface utilise une norme de communication filaire
Particle Photon, nous constaterions que les FPGA offrent telle qu'un câble USB. Avec cette possibilité de limitation, la section suivante explore les
généralement un plus grand nombre de GPIO. Cela offre applications récentes qui utilisent la structure FPGA intégrée avec un traitement softcore dans un
un moyen plus flexible de conception de système du seul appareil, un système sur puce (SoC). à condition que l'interface utilise une norme de
point de vue de l'utilisateur. Les FPGA et les communication filaire telle qu'un câble USB. Avec cette possibilité de limitation, la section suivante
microcontrôleurs offrent à la fois une communication explore les applications récentes qui utilisent la structure FPGA intégrée avec un traitement
filaire et sans fil qui permet à l'utilisateur d'interfacer les softcore dans un seul appareil, un système sur puce (SoC).
nécessite de modifier partiellement ou même complètement les composants matériels, ce qui peut être
économiquement coûteux et prendre du temps. Pour cela, [17] a proposé une conception SoC basée sur FPGA qui peut
répondre aux besoins susmentionnés et résoudre les problèmes. En utilisant le FPGA Zynq de Xilinx, un SoC
programmable, ainsi que deux cœurs ARM, l'article présente une configuration expérimentale ainsi que des résultats
graphiques qui montrent une comparaison entre une implémentation logicielle utilisant la programmation C et
l'implémentation matérielle utilisant le FPGA Zynq. La mise en œuvre consiste en la synthèse de crypto-moteurs pour
les algorithmes suivants ; Advanced Encryption Standard (AES), Data Encryption Standard (DES), Rivest & Shamir &
Adleman (RSA) et Secure Hash Algorithm (SHA). Chacune des fonctions a également sa contrepartie logicielle à des fins
d'évaluation. Les crypto-moteurs sont mappés sur la carte qui abrite le SoC FPGA ou Zynq. Ensuite, Zhou et al. effectuer
des analyses sur le temps de traitement, la consommation d'énergie et des comparaisons d'énergie pour le cryptage et
le décryptage La mise en œuvre consiste en la synthèse de crypto-moteurs pour les algorithmes suivants ; Advanced
Encryption Standard (AES), Data Encryption Standard (DES), Rivest & Shamir & Adleman (RSA) et Secure Hash Algorithm
Fig. 6. Conception proposée du système de compteur d'énergie intelligent [18]
(SHA). Chacune des fonctions a également sa contrepartie logicielle à des fins d'évaluation. Les crypto-moteurs sont
mappés sur la carte qui abrite le SoC FPGA ou Zynq. Ensuite, Zhou et al. effectuer des analyses sur le temps de L'utilisation de la conception proposée sur la figure 6 présente de
traitement, la consommation d'énergie et des comparaisons d'énergie pour le cryptage et le décryptage La mise en nombreux avantages et l'un d'entre eux est la mise en œuvre du
œuvre consiste en la synthèse de crypto-moteurs pour les algorithmes suivants ; Advanced Encryption Standard (AES), contrôleur de puissance et du compteur de puissance avec la structure
Data Encryption Standard (DES), Rivest & Shamir & Adleman (RSA) et Secure Hash Algorithm (SHA). Chacune des FPGA en utilisant seulement quelques machines à états [18]. Bien que
fonctions a également sa contrepartie logicielle à des fins d'évaluation. Les crypto-moteurs sont mappés sur la carte qui l'intégration de ces deux composants dans la structure permet des
abrite le SoC FPGA ou Zynq. Ensuite, Zhou et al. effectuer des analyses sur le temps de traitement, la consommation calculs et des opérations plus rapides, ils simplifient également la
d'énergie et des comparaisons d'énergie pour le cryptage et le décryptage production en étant intégrés sur une seule puce.
Le principal avantage réside peut-être dans les aspects de sécurité du système. En utilisant un seul appareil pour les fonctions IV. PROPOSÉ CONCEPTUEL MODEL POUR FPGA COMME UN
de mesure et de contrôle du système de compteur d'énergie intelligent, les protections physiques et cybernétiques deviennent plus EDGE réEVICE
simples à réaliser. En termes de sécurité physique, la protection devient plus facile car un seul appareil peut être concentré pour la
L'une des formes de divertissement les plus consommées à notre
protection contre le clonage par ingénierie inverse et les attaques [18]. La maintenance serait plus compliquée si le système se
époque est le streaming vidéo. Des millions de personnes diffusent des
composait de plusieurs composants matériels au lieu d'un seul périphérique SoC. En ce qui concerne la cybersécurité, l'appareil ne
vidéos chaque jour à partir de services de streaming. Il existe un grand
nécessite qu'un seul jeu de clés et les algorithmes nécessaires pour que l'unité SoC unique protège les données stockées dans la
nombre de fournisseurs de services en ligne qui fournissent ces services de
mémoire du système et les données transmises et reçues. Par ailleurs, SmartFusion2 SoC FPGA dispose d'une technologie de stockage
streaming aux utilisateurs finaux. Cependant, une vidéo typique peut exister
spéciale pour la configuration des éléments de structure qui met tout attaquant dans une situation très difficile et incapable de rétro-
dans plusieurs formats vidéo. De plus, tous les appareils de streaming ne
concevoir un point de départ pour les algorithmes de sécurité utilisés. De plus, le dispositif SoC FPGA utilise des flux de bits cryptés et
prennent pas en charge tous les formats ; par exemple, certains
d'autres algorithmes de chargement de clés robustes basés sur la cryptographie qui garantissent l'immunité contre le reniflage de
smartphones ne prennent pas en charge la norme vidéo H.265 ou HEVC [20].
données et d'autres attaques de ce type. L'article va plus loin pour mettre en évidence la sécurité de l'appareil en mentionnant que les
Avec la possibilité d'avoir différents formats vidéo, une vidéo source d'entrée
FPGA SoC SmartFusion2 peuvent agir comme la racine de confiance matérielle (RoT). Un RoT matériel est considéré comme le
peut différer d'une vidéo de sortie, un scénario qui se produit généralement
composant le plus sécurisé d'un système qui détient des clés de sécurité et des algorithmes critiques pour la protection. Un autre
lorsque la vidéo brute est capturée et codée dans un format et que le
avantage important est la capacité de mises à jour autonomes à distance de l'appareil. Étant donné que la puce prend en charge la
fournisseur de services de streaming convertit la vidéo codée dans un autre
communication sans fil, les mises à jour à distance peuvent être envoyées en toute sécurité sur le réseau via le flux binaire crypté pour
format pour son consommateurs. Cette conversion est connue sous le nom
configurer la structure FPGA. Enfin, la structure FPGA peut être utilisée pour mettre en œuvre des circuits de détection d'effraction. Les
de transcodage. Le transcodage vidéo implique la modification dynamique
circuits de détection d'effraction possèdent la capacité de déterminer si la conception ou la puce fait l'objet d'attaques matérielles.
des paramètres de codage de telle sorte qu'il fournisse une hétérogénéité
Dans le cas d'une telle attaque, une action appelée mise à zéro se produit qui est essentiellement l'effacement des paramètres
des systèmes d'extrémité et que le format vidéo devienne portable parmi de
sensibles dans l'appareil pour empêcher l'accès non autorisé et la divulgation de données secrètes. En garantissant un niveau de
nombreux autres avantages. Heureusement, il existe de nombreuses
sécurité avancé contre une variété de menaces physiques et cybernétiques, et en se combinant avec les autres avantages, un FPGA
entreprises basées sur le cloud qui peuvent fournir des services de
SoC devient un choix idéal pour les applications intelligentes basées sur l'IoT. la structure FPGA peut être utilisée pour mettre en
transcodage en temps réel tels que Wowza [21].
œuvre des circuits de détection d'effraction. Les circuits de détection d'effraction possèdent la capacité de déterminer si la conception
ou la puce fait l'objet d'attaques matérielles. Dans le cas d'une telle attaque, une action appelée mise à zéro se produit qui est Par souci de simplicité, considérons un exemple où un
essentiellement l'effacement des paramètres sensibles dans l'appareil pour empêcher l'accès non autorisé et la divulgation de Raspberry Pi, un appareil périphérique IoT, est en fonctionnement
données secrètes. En garantissant un niveau de sécurité avancé contre une variété de menaces physiques et cybernétiques, et en se pour capturer une vidéo en direct dans un système de maison
combinant avec les autres avantages, un FPGA SoC devient un choix idéal pour les applications intelligentes basées sur l'IoT. la intelligente à des fins de sécurité. Les données brutes de sa
structure FPGA peut être utilisée pour mettre en œuvre des circuits de détection d'effraction. Les circuits de détection d'effraction capture sont encodées dans une vidéo au format H.264 avant de
possèdent la capacité de déterminer si la conception ou la puce fait l'objet d'attaques matérielles. Dans le cas d'une telle attaque, une les transmettre au courtier en nuage de transcodage vidéo comme
action appelée mise à zéro se produit qui est essentiellement l'effacement des paramètres sensibles dans l'appareil pour empêcher Wowza et aux fournisseurs de services. Cette vidéo est ensuite
l'accès non autorisé et la divulgation de données secrètes. En garantissant un niveau de sécurité avancé contre une variété de transcodée en plusieurs autres formats, dont l'un peut être
menaces physiques et cybernétiques, et en se combinant avec les autres avantages, un FPGA SoC devient un choix idéal pour les MPEG-4. La vidéo transcodée est mise à disposition sur Internet
applications intelligentes basées sur l'IoT. une action appelée mise à zéro se produit et consiste essentiellement en l'effacement de pour être diffusée par le propriétaire de la maison. Supposons
paramètres sensibles dans l'appareil pour empêcher l'accès non autorisé et la divulgation de données secrètes. En garantissant un qu'un utilisateur final tente de diffuser cette vidéo à partir d'un
niveau de sécurité avancé contre une variété de menaces physiques et cybernétiques, et en se combinant avec les autres avantages, smartphone doté du codec vidéo pour les médias MPEG-4.
un FPGA SoC devient un choix idéal pour les applications intelligentes basées sur l'IoT. une action appelée mise à zéro se produit et L'utilisateur doit simplement connecter le téléphone à Internet et
consiste essentiellement en l'effacement de paramètres sensibles dans l'appareil pour empêcher l'accès non autorisé et la divulgation diffuser à partir de l'adresse IP qui peut être hébergée directement
de données secrètes. En garantissant un niveau de sécurité avancé contre une variété de menaces physiques et cybernétiques, et en par le courtier de transcodage ou un service de streaming vidéo.
se combinant avec les autres avantages, un FPGA SoC devient un choix idéal pour les applications intelligentes basées sur l'IoT. Figure.
Bien que cette recherche n'ait couvert qu'une fraction des applications
proposées dans la littérature, il existe d'innombrables travaux de recherche
effectués et en cours sur les FPGA SoC et l'étendue de leurs capacités. Le site
Web officiel de Microsemi propose une large gamme d'applications et leurs
conceptions suggérées pour aider à accélérer les recherches dans le
domaine [19]. Les domaines d'application comprennent, sans s'y limiter, les
réseaux d'accès qui doivent être évolutifs, gérables et nécessitent des
systèmes de synchronisation, des solutions d'enregistrement vidéo de
diffusion qui nécessitent un traitement en temps réel lourd, des réseaux de
communication qui doivent fournir une meilleure couverture pour le cloud
computing et le streaming multimédia pour un grand nombre de
Fig. 7. Transcodage vidéo à l'aide d'un courtier cloud
consommateurs, la protection des données et la sécurité des réseaux
sensibles dans les grandes entreprises, la défense militaire qui impose un
Il faut noter que le transcodage vidéo est une opération de calcul
système capable de traitement du signal élevé et d'opérations de
complexe et lourde et, pour cette raison, il n'est généralement effectué
chronométrage précises, le diagnostic et la surveillance médicaux qui
sur aucun périphérique périphérique. Dans notre exemple, le
nécessitent la précision des données, des solutions de système de stockage
transcodage est effectué par un courtier cloud tiers où il utilise des
et, enfin et surtout, des applications intelligentes qui nécessitent une
ressources cloud pour faire le travail. Bien que les plateformes cloud
puissance de traitement énorme, entre autres fonctionnalités. Toutes ces
incluent des techniques d'optimisation pour accélérer les différents
exigences peuvent être satisfaites par l'utilisation d'un FPGA en raison de son
processus qu'elles exécutent, elles seront très certainement plus lentes
architecture matérielle, ce qui lui confère la puissance ultime de
par rapport à une implémentation matérielle des mêmes processus. De
reprogrammabilité matérielle.
plus, la vidéo encodée du R-Pi nécessite une quantité considérable de
bande passante réseau pour
envoyer la vidéo au courtier cloud. La sécurité des données encodées [3] R. Karam, T. Hoque, S. Ray, M. Tehranipoor et S. Bhunia, « Protection robuste du flux
de bits dans les systèmes basés sur FPGA par le biais de l'obscurcissement à faible
entre R-Pi et le courtier cloud peut être un autre problème puisque le
surcharge » Conférence internationale sur l'informatique ReConFigurable et les
courtier peut, au mieux, assurer la sécurité des données uniquement FPGA (ReConFig), Cancun, 2016, p. 1-8.
entre lui-même et le fournisseur de services de streaming. Afin
[4] A. Putnam, J. Gray, M. Haselman, S. Hauck, S. Heil, A. Hormati, J. Kim,
d'atténuer voire d'éliminer ces problèmes, nous suggérons une S. Lanka, J. Larus, E. Peterson, S. Pope, AM Caulfield, A. Smith, J.
implémentation matérielle du transcodage vidéo à l'aide d'un FPGA Thong, PY Xiao, D. Burger, ES Chung, D. Chiou, K. Constantir, J.
SoC. En d'autres termes, le R-Pi enverrait la vidéo codée à un appareil Demme, H. Esmaeilzadeh, J. Fowers et GP Gopal, « A
SoC FPGA au lieu d'un courtier en nuage et SmartFusion2 de Microsemi Reconfigurable Fabric for Accelerating Large-Scale Services de
centre de données. Communication de l'ACM, vol. 59, non. 11,
est une sélection idéale comme appareil SoC FPGA. L'utilisation de cette 2016, p. 114-122.
conception améliore non seulement le temps d'exécution du processus
[5] A. Rupani, P. Whig, G. Sujediya et P. Vyas, "Une technique robuste pour le
de transcodage vidéo, mais augmente également l'aspect de la sécurité traitement d'images basée sur l'interfaçage de Raspberry-Pi et FPGA utilisant
des données, grâce aux flux binaires cryptés de SmartFusion2 qui l'IoT," Conférence internationale sur l'informatique, les communications et
peuvent être facilement mis en œuvre. Avoir le SoC FPGA connecté à un l'électronique (Comptelix), Jaipur, 2017, p. 350-353.
module de communication sans fil, il peut transmettre la vidéo [6] S. Dhote, P. Charjan, A. Phansekar, A. Hegde, S. Joshi et J. Joshi, "Utilisation de
transcodée à un fournisseur de services de streaming vidéo en l'interface FPGA-SoC pour le traitement d'images à faible coût basé sur l'IoT,"
Conférence internationale sur les progrès de l'informatique, des communications
douceur. De plus, étant donné que le SoC FPGA prend en charge les
et de l'informatique (ICACCI), Jaipur, 2016, p. 1963-1968.
normes de communication filaire, il peut être attaché et connecté
[7] M. Rao, J. Coleman et T. Newe, "Un noyau ESP IPSec reconfigurable basé
localement et en toute sécurité au R-Pi lui-même afin que les données sur FPGA adapté aux applications IoT," 10e Conférence internationale
codées puissent être transcodées en temps réel sans mettre en sur la technologie de détection (STIC), Nankin, 2016, p. 1-5.
mémoire tampon une grande partie des données. La figure 8 montre la [8] M. Rao, T. Newe, I. Grout, E. Lewis et A. Mathur, « Core IPSec
conception proposée de notre discussion utilisant un FPGA SoC au lieu reconfigurable basé sur FPGA adapté aux applications IoT » Conférence
d'un courtier en nuage pour le transcodage vidéo. internationale IEEE sur l'informatique et les technologies de
l'information ; Informatique et communications omniprésentes ;
Informatique fiable, autonome et sécurisée ; Intelligence omniprésente
et informatique, Liverpool, 2015, p. 2212-2216.
[9] T. Gomes, S. Pinto, T. Gomes, A. Tavares et J. Cabral, "Vers un périphérique de
périphérie basé sur FPGA pour l'Internet des objets," 20e conférence de
l'IEEE sur les technologies émergentes et l'automatisation d'usine (ETFA),
Luxembourg, 2015, p. 1-4.
[10] "Intel rachète Altera pour 16,7 milliards de dollars alors que les fabricants de puces
se consolident", CNET, 2018. [En ligne]. Disponible : https://www.cnet.com/news/
intel-to-buyaltera-for-16-7b. [Consulté : 01 mai 2018].
[11] Xilinx.com, 2019. [En ligne]. Disponible : https://www.xilinx.com/support/
documentation/boards_and_kits/vc707/ug885_VC707_Eval_Bd.pdf.
sécurisés. Explorer les fonctionnalités du dispositif FPGA [19] "Applications en vedette pour FPGA et SoC", Microsemi, 2018. [En ligne].
SmartFusion2 SoC de Microsemi, Disponible : https://www.microsemi.com/product-directory/1636-
fpgasoc#applications.
RÉFÉRENCES [20] T. Schiesser, "Guide d'encodage et de lecture HEVC/H.265",TechSpot,
2018. [En ligne]. Disponible : https://www.techspot.com/article/1131-
[1] P. Alfke, "20 ans d'évolution du FPGA de la logique de la colle au composant
hevc-h256-enconding-playback/.
principal du système," Symposium IEEE Hot Chips 19 (HCS), Stanford,
Californie, 2007, p. 1-19. [21] "Transcoder les flux en direct",Wowza, [En ligne]. Disponible:
https://www.wowza.com/docs/wowza-transcoder. [Consulté :
[2] Maxfield, Clive. Le guide Design Warriors des FPGA : appareils, outils 5 mai-2018].
et flux. Newnes, 2011.