Pourquoi les FPGA sont incroyables pour l'émulation de jeu rétro
Agence web » Actualités du digital » Pourquoi les FPGA sont incroyables pour l’émulation de jeu rétro

Pourquoi les FPGA sont incroyables pour l’émulation de jeu rétro

L’utilisation de FPGA pour répliquer des systèmes de jeux vidéo classiques est une pratique qui prend de l’ampleur depuis quelques années maintenant, mais en quoi ces projets diffèrent-ils de l’émulation logicielle standard ? Et le prix d’entrée élevé en vaut-il la peine pour la plupart des utilisateurs ?

Que signifie FPGA ?

FPGA signifie field-programmable gate array, un type de circuit intégré qui peut être reconfiguré après fabrication. Contrairement à une puce informatique traditionnelle, les FPGA utilisent des blocs logiques programmables et des interconnexions qui peuvent être reconfigurées pour répondre à une variété d’objectifs différents.

Essentiellement, un FPGA peut être reprogrammé pour agir comme n’importe quel type de circuit numérique. Cela peut être fait encore et encore en chargeant simplement une nouvelle configuration dans la RAM pour émuler un type de puce différent. Alors que les anciens FPGA utilisaient des schémas de circuit, les nouveaux utilisent plutôt la programmation textuelle pour décrire le comportement.

Gros plan d'un circuit intégré FPGA Xilinx.

Ces puces ont une grande variété d’utilisations différentes, en particulier dans l’accélération de l’IA et l’apprentissage automatique. Microsoft s’est associé à Intel pour améliorer la recherche Bing à l’aide de la famille de FPGA Arria d’Intel. Ils sont utilisés dans les systèmes de traitement du signal et de l’image et jouent un rôle unique en aidant les concepteurs à prouver les concepts aux premiers stades du développement.

Étant donné que les FPGA peuvent être reprogrammés pour se comporter comme différents types de circuits encore et encore, ils sont également parfaits pour l’émulation de matériel de jeu vidéo. Au lieu d’exécuter un émulateur dans un logiciel, les FPGA émulent efficacement différents systèmes de jeux vidéo au niveau matériel.

EN RELATION: Qu’est-ce que l’apprentissage automatique ?

Comment fonctionne l’émulation de système FPGA ?

L’émulation FPGA nécessite que quelqu’un écrive un « noyau » pour le matériel qui reproduit le comportement du matériel d’origine. Ce processus implique souvent une ingénierie inverse du matériel d’origine et même un « décapsulage » où le couvercle de protection d’un dissipateur de chaleur intégré est retiré pour révéler la matrice à l’intérieur.

Cela permet une inspection visuelle du circuit intégré pour aider à la production d’un noyau FPGA fonctionnel. Ce processus délicat implique l’utilisation de produits chimiques comme l’acide sulfurique et l’acétone, la chaleur, des respirateurs et beaucoup de patience. Des images de référence sont ensuite prises et les cœurs sont écrits dans un langage de description matérielle (HDL) qui peut être interprété par un FPGA.

Le processus d’apprentissage, d’ingénierie inverse et d’écriture d’un cœur FPGA peut prendre des mois et beaucoup de dévouement. De manière impressionnante, bon nombre de ces cœurs sont ensuite mis à disposition gratuitement dans l’intérêt de la préservation du matériel. Les cœurs sont généralement publiés dans un état bêta afin qu’ils puissent être améliorés et que le développement puisse durer des années.

Malgré l’émulation du matériel d’origine, l’émulation FPGA est toujours sujette aux erreurs, tout comme l’émulation logicielle. Les cœurs sont régulièrement mis à jour au fur et à mesure que de nouveaux correctifs et modifications sont mis en œuvre dans le but d’obtenir une émulation matérielle parfaite.

Quels sont les avantages du FPGA ?

L’émulation matérielle FPGA est ce qui se rapproche le plus de la lecture sur un système d’origine, elle offre donc une expérience authentique. Cela peut inclure des bizarreries qui étaient présentes sur le matériel d’origine, en supposant que le noyau fournit une réplique 1: 1 de l’original. Les problèmes tels que la latence qui peuvent être présents avec les émulateurs logiciels sont résolus puisque l’émulation se déroule à un niveau (matériel) beaucoup plus bas.

Le matériel d’origine peut ne pas être fiable, surtout à mesure qu’il vieillit. Reproduire le comportement des circuits d’origine avec un FPGA est un moyen de préserver le matériel d’origine et peut être déployé encore et encore. Lorsque ces projets sont rendus open source, n’importe qui peut en bénéficier à condition de posséder le matériel FPGA prérequis.

Un Commodore Amiga A500 vintage sur fond blanc.

Pour la plupart des gens, il est plus pratique de posséder un seul matériel qui peut être reprogrammé à la volée. Le matériel d’origine peut être coûteux, prendre de la place et être difficile à trouver dans le cas d’ordinateurs rares et de cartes d’arcade. Ce matériel ne rajeunit pas et, comme la production a cessé il y a longtemps, il peut être difficile à réparer ou à remplacer.

Étant donné que le système est émulé au niveau matériel, les systèmes doivent pouvoir s’interfacer avec à peu près n’importe quel matériel conçu pour cette plate-forme. Cela inclut les cartouches, les périphériques et les accessoires d’origine qui n’étaient pas nécessairement pris en compte lors de l’écriture du noyau.

Ceci est différent des émulateurs logiciels qui doivent prendre en compte les différents appareils que l’opérateur souhaite utiliser (comme un pistolet léger, par exemple).

MiSTer : Émulation matérielle FPGA pour la maison

MiSTer FPGA est un projet FPGA open source dédié à l’émulation et à la préservation des consoles, des ordinateurs personnels et des machines d’arcade. C’est le projet le plus réussi de ce type, avec des centaines de cœurs disponibles et en développement actif.

Le seul composant « requis » pour exécuter un MiSTer FPGA est le DE10-Nano, un petit appareil de type Raspberry Pi qui abrite un système sur puce Cyclone V. La carte peut être étendue avec de la RAM supplémentaire, un concentrateur USB et des extensions d’entrée/sortie qui ajoutent des fonctionnalités telles que la sortie VGA, la sortie SCART ou la sortie JAMMA pour les armoires d’arcade.

DE-10 Nano FPGA

Pour commencer, vous aurez besoin d’un DE10-Nano, d’un boîtier et d’un peu de refroidissement. Pour une émulation plus avancée, une extension de RAM est nécessaire. Vous pouvez étendre votre configuration MiSTer FPGA en fonction de votre objectif en utilisant des modules complémentaires de revendeurs tels que MiSTer Addons ou Ultimate MiSTer. Vous devrez ensuite configurer votre carte SD avec la dernière version de MiSTer.

Le processus est plus complexe que l’utilisation d’émulateurs « traditionnels », mais nécessite toujours des fichiers de données et des ROM, tout comme un émulateur logiciel. Si vous êtes un passionné qui souhaite une expérience comparable au matériel d’origine, rien ne vaut MiSTer. Pour d’autres, c’est beaucoup de dépenses pour accomplir quelque chose qui peut être fait gratuitement via l’émulation logicielle.

EN RELATION: Comment jouer à vos jeux NES, SNES et autres jeux rétro préférés sur votre PC avec un émulateur

Analogique Pocket : Émulation matérielle FPGA en déplacement

L’Analogue Pocket est un ordinateur de poche portable multi-système qui utilise l’émulation FPGA pour s’interfacer avec les cartouches Game Boy, Game Boy Color et Game Boy Advance d’origine. Il existe également des adaptateurs de cartouche supplémentaires pour les systèmes Game Gear, Neo Geo Pocket, Atari Lynx et TurboGrafx-16.

FPGA portable de poche analogique

Le système prend en charge les avancées modernes telles que la possibilité de suspendre le jeu en mettant la console en veille. Le Pocket a un bel écran qui recrée des caractéristiques telles que des motifs de grille de pixels et des effets de rétroéclairage LCD. Il peut également être connecté à une station d’accueil (vendue séparément) pour être lu sur un téléviseur via HDMI.

À 219,99 $, c’est un bel ordinateur de poche qui plaira à tous ceux qui possèdent une collection saine de cartouches originales. Il n’est pas possible de charger des ROM à partir d’un logiciel, mais l’Analogue Pocket est compatible avec n’importe quel linker qui fonctionne avec le matériel d’origine.

Les inconvénients des FPGA pour le jeu rétro

Le plus gros inconvénient de l’utilisation de FPGA pour jouer à des jeux rétro est le prix. Les émulateurs logiciels modernes fonctionnent sur à peu près n’importe quel appareil, des anciens ordinateurs aux smartphones. La plupart sont gratuits et beaucoup sont des projets entièrement open source. Certains ont subi des décennies de développement et sont hautement configurables.

Le MiSTer FPGA et Analogue Pocket sont des passe-temps coûteux. Le projet MiSTer, en particulier, pourrait facilement coûter plus de 500 $ avec suffisamment d’add-ons, et bien que ce soit une grande valeur par rapport à une seule carte d’arcade ou un ordinateur domestique rare, c’est une vente difficile pour quiconque ne recherche pas pixel- parfaite émulation.

Ensemble préconfiguré MiSTer

La disponibilité est également une préoccupation. Au moment d’écrire ces lignes en février 2022, le DE-10 Nano est épuisé partout et l’Analogue a une liste d’attente d’un an pour le prochain lot de consoles Pocket. Les choses sont aggravées par la pénurie mondiale de semi-conducteurs et les revendeurs qui facturent des prix exorbitants sur les sites Web des revendeurs.

L’émulation logicielle et le matériel moderne ont atteint un niveau où de nombreux joueurs occasionnels ne remarqueront pas la différence entre un émulateur logiciel et le matériel d’origine. Les projets FPGA comme MiSTer et le Pocket s’adressent directement aux passionnés. Le prix et la disponibilité devraient s’améliorer avec le temps, de sorte que l’avenir de l’émulation au niveau matériel FPGA est très prometteur.

Autres façons d’imiter les classiques

Il existe actuellement des moyens moins chers et plus faciles d’entrer dans l’émulation. Il y a de fortes chances que l’appareil que vous utilisez pour lire ceci puisse exécuter un émulateur multi-système comme RetroArch.

L’une des meilleures machines d’émulation domestique à l’heure actuelle est la Xbox Series S (ou Series X), qui peut être trouvée relativement facilement et utilisée pour exécuter un grand nombre de cœurs RetroArch. Si vous recherchez quelque chose de portable, consultez plutôt les derniers émulateurs portables sous Linux et Android.

★★★★★