Exécuter Xilinx Vivado sur un Mac M1

illustrations illustrations illustrations illustrations illustrations illustrations illustrations
post-thumb

Publié le 3 mars 2022 par Andrew Owen (8 minutes)

J’ai déjà écrit sur l’exécution de binaires Intel non Apple sur un Mac M1. Les solutions dont j’ai parlé fonctionnent pour la plupart des applications générales, mais il y avait une application en particulier que je faisais tourner sur Windows 10 et que je voulais vraiment faire fonctionner sur un Mac M1: Xilinx Vivado.

Entre autres choses, Vivado est un outil qui vous permet de construire des cœurs FPGA pour le matériel Xilinx (comme la puce principale utilisée dans le projet Mega 65) à partir du code source. La version de Vivado dont vous avez besoin dépend de votre licence et du matériel pour lequel vous développez, et vous aurez besoin d’un compte Xilinx pour la télécharger. J’utilise l’édition gratuite, qui convient parfaitement au projet Mega 65 car il s’agit d’un projet open source à but non lucratif.

Si vous vous souvenez de la dernière fois, l’émulation x64 sur M1 avec UTM (un wrapper pour QEMU) est lente. La vitesse devrait être légèrement meilleure sur un M1X et continuer à s’améliorer au fur et à mesure qu’Apple sort de nouveaux processeurs plus rapides. Mais pour l’instant, il est préférable d’utiliser le système d’exploitation le plus léger disponible, c’est-à-dire la version la plus ancienne possible.

Les systèmes d’exploitation les plus anciens supportés par Vivado 2021.2 sont les suivants:

  • Windows 10 (1903)
  • Red Hat Enterprise Workstation 7.4
  • CentOS 7.4
  • SUSE Linux Enterprise 12.4
  • Amazon Linux 2 AL2 LTS
  • Ubuntu Linux 16.04

Windows n’est une option que pour ceux qui possèdent une licence de développeur Microsoft. Si vous avez la chance d’en avoir une, vous pouvez utiliser Parallels Desktop pour installer et activer Windows 11 ARM. Il inclut un équivalent de Roseta pour la traduction des binaires Windows x64 en ARM64. C’est de loin la meilleure solution, mais il se peut que vous ne puissiez pas l’utiliser, auquel cas lisez la suite.

Pour des raisons de coût, Amazon et Red Hat sont d’emblée éliminés. La version x64 d’Ubuntu dans la galerie UTM est la 14.04, je suppose donc que la 16.04 sera trop lente. Il nous reste donc CentOS 7.4 et SUSE 12.4. Red Hat a effectivement tué CentOS, les mises à jour complètes de CentOS 7 se terminant en août 2020. Il reste donc SUSE.

Même si j’avais eu le choix, il y avait d’autres raisons de considérer SUSE, notamment son support intégré de qemu-kvm qui devrait améliorer la communication invité-hôte. Le fichier dont vous avez besoin est SLE-12-SP4-Server-DVD-x86_64-Boothole-Respin-DVD1.iso et vous pouvez l’obtenir sur la page downloads.(cliquez sur 12 SP4 dans la section Versions stables). Dne vous débarrassez pas de l’image après l’installation, car vous en aurez besoin pour ajouter certains paquets à votre système.

Les principaux paramètres que j’ai utilisés dans UTM sont les suivants:

  • architecture: x86_64
  • system: Standard PC (i440FX + PIIX, 1996) (pc-1440fx-6.0)
  • emulated display card: Spice QXL GPU (primary, vga-compatible) (qxl-vga)

J’ai activé le partage du presse-papiers et des répertoires. J’ai constaté que la seule façon de faire démarrer l’image ISO était de l’importer à partir de la zone des paramètres du lecteur. J’ai également ajouté un disque IDE. Vivado prend beaucoup d’espace, et il fonctionnera plus rapidement s’il dispose d’un bon espace de stockage à utiliser comme disque de démarrage. J’essaie toujours de déterminer la taille optimale à lui donner, mais en règle générale, plus il y en a, mieux c’est. Je recommande un minimum de 100 Go.

Dans le menu de démarrage, sélectionnez Installation. Le programme d’installation téléchargera un ensemble de fichiers d’installation mis à jour. Vous avez probablement le temps de vous préparer une boisson chaude. Après le redémarrage du programme d’installation, vous pouvez sélectionner une Langue et une Mise en page du clavier. Lisez la licence. Si les conditions vous conviennent, acceptez-les et cliquez sur Suivant.

La section suivante est Enregistrement. Vous pouvez installer le logiciel sans vous enregistrer, mais vous ne recevrez pas les mises à jour. L’enregistrement est gratuit, mais il n’est pas nécessaire pour exécuter Vivado. Cliquez sur Suivant lorsque vous avez terminé. Cliquez sur Suivant pour ignorer Ajouter un produit. Pour Rôle du système, sélectionnez Système par défaut et cliquez sur Suivant.

Dans l’écran Partitionnement suggéré, cliquez sur Modifier les paramètres proposés et décochez la case Proposer une partition domestique séparée. C’est la façon la plus rapide et la plus sale de s’assurer que la partition du système a suffisamment de place pour installer Vivado sans entrer dans les paramètres de l’expert. Je ne sais pas si le fait de changer le Système de fichiers pour la partition racine a un effet sur les performances. Je l’ai laissé à BtrFS. Cliquez sur OK lorsque vous avez terminé, puis sur Suivant.

À partir de là, l’installation se déroule comme n’importe quelle autre installation de Linux. Sélectionnez un fuseau horaire, créez un utilisateur, créez un mot de passe root et ainsi de suite. Vous aurez la possibilité de modifier les paramètres d’installation avant de cliquer sur Installer. Je vous conseille de désactiver le pare-feu, au moins jusqu’à ce que Vivado soit installé. Vous aurez probablement le temps de prendre un repas léger pendant l’installation. Une fois l’installation terminée, vous voudrez probablement désactiver la protection par mot de passe de l’économiseur d’écran.

Vous avez maintenant un système qui fonctionne (lentement). La souris et le clavier sont assez réactifs, mais le lancement des applications prend un temps fou. Ne cliquez pas sans arrêt sur les applications, car vous ouvrirez plusieurs copies, et il vous faudra encore plus de temps pour fermer celles dont vous ne voulez pas.

Pour installer les outils invités SPICE, naviguez vers Applications > Système et ouvrez YaST. Entrez votre mot de passe et sélectionnez Gestion des logiciels. Recherchez spice et spice-vdagent devrait être automatiquement sélectionné. Cliquez sur Accept, et les outils sont installés. Cependant, cela ne vous permet pas d’obtenir des dossiers partagés. Pour cela, vous devrez installer spice-webdavd, qui n’est pas disponible dans YaST. Pour autant que je sache, vous devrez le compiler à partir des sources (https://gitlab.gnome.org/GNOME/phodav). Je n’ai pas encore réussi à le faire. Mais si vous y parvenez, vous pouvez cliquer sur l’icône Dossier partagé dans la fenêtre de la VM et sélectionner un dossier partagé. Vous devriez maintenant pouvoir accéder aux fichiers de votre système de fichiers local.

Naviguez vers Applications > Internet et ouvrez Firefox. Allez sur https://www.xilinx.com/support/download.html et cliquez sur l’installateur Linux unifié. Il sera nommé quelque chose comme Xilinx Unified Installer 2021.2: Linux Self Extracting Web Installer (BIN - 272.8 MB). A ce stade, vous serez invité à vous connecter avec vos identifiants Xilinx. Signez votre vie et cliquez sur Download. Lorsque vous y êtes invité, cliquez sur Enregistrer le fichier. Par défaut, le fichier est enregistré dans le dossier Downloads.

Ouvrez le shell (Applications > Outils système > Terminal), naviguez jusqu’au dossier Downloads et faites un chmod +x sur le binaire pour le rendre exécutable. Exécutez le binaire. N’utilisez pas sudo, ou il ne prendra pas en compte les variables d’environnement X11. Il prendra un certain temps pour se décompresser et se vérifier.

Lorsque l’application est lancée, vous arrivez à l’écran de Bienvenue. Il vous conseille:

Pour réduire le temps d’installation, nous vous recommandons de désactiver tout logiciel antivirus avant de continuer. Veuillez désactiver les paramètres d’économie d’énergie de votre machine (mode veille automatique) lors de l’exécution du programme d’installation.

Saisissez à nouveau vos identifiants Xilinx sur la page Select Install Type. Je vous recommande de sélectionner Download Image (Install Separately) et Selected Product Only (la case Linux devrait déjà être cochée). Définissez le chemin de téléchargement à /home/<username>/Downloads/Vivado, puis cliquez sur Suivant.

Dans l’écran Select Product to Install, sélectionnez Vivado et cliquez sur Next. Si vous utilisez l’édition gratuite, sélectionnez Vivado ML Standard. Sinon, sélectionnez Vivado ML Enterprise. Cliquez ensuite sur Suivant. Sélectionnez les composants dont vous avez besoin et cliquez sur Suivant. Si vous n’êtes pas sûr de ce dont vous avez besoin, conservez les valeurs par défaut. Cliquez ensuite sur Téléchargement. Avec les paramètres par défaut, la taille du téléchargement est de 42,39 Go.

Pour moi, la partie suivante a comporté plusieurs tentatives de téléchargement infructueuses, probablement dues à la réinitialisation des connexions réseau. En répétant le processus pour écrire cet article, le temps de téléchargement a été estimé à plus de 30 heures. Dans la mesure du possible, je recommande vivement d’utiliser une connexion réseau filaire pour cette partie du processus.

Si vous parvenez à le télécharger, vous devrez vous débrouiller tout seul pour le reste de l’installation, car comme prévu, le téléchargement m’a fait faux bond, et je ne vais pas recommencer ce processus une deuxième fois. La première fois, j’ai utilisé l’option de téléchargement et d’installation, et cela a fini par fonctionner pour moi.

En revenant à ma précédente installation de SUSE, j’ai modifié plusieurs paramètres du système. Dans Tweak Tool, j’ai désactivé les animations, ajouté Vivado (et supprimé Xilinx Information Center) dans Startup Applications. Dans Privacy, j’ai désactivé Screen Lock. Dans Power, j’ai réglé Blank Screen sur Never. Dans Utilisateurs, j’ai activé Connexion automatique.

Redémarrez la machine, et vous aurez un Vivado fonctionnel, bien que lent. Je vous suggère d’utiliser un dépôt Git pour vos constructions, ce qui est également une bonne solution de contournement si vous n’avez pas pu configurer les dossiers partagés.