La vérification open source n’est pas aussi simple que la conception
La vérification logicielle open source de la conception matérielle open source telle que RISC-V présente de nombreux nouveaux défis.
L’attrait du matériel open source réside dans la possibilité pour les concepteurs de créer leurs propres plates-formes basées sur le processeur. Les défenseurs pensent que les systèmes open source disponibles gratuitement encourageront une nouvelle vague d’innovation en matière de processeurs et créeront de nouveaux segments de marché. Ces défenseurs soulignent la quantité croissante d’IP open source disponibles et implémentées dans de nombreuses nouvelles conceptions de puces. Mais qu’en est-il de la vérification ?
Alors que la communauté de conception est encouragée, les ingénieurs de vérification sont prudents. Dans le passé, les architectures de jeux d’instructions (ISA) utilisées avec les processeurs basés sur la propriété intellectuelle (IP) provenaient d’une seule source, par exemple Arm, Intel, AMD, etc. Ces ISA utilisaient des outils et des méthodologies de vérification de l’industrie.
Cependant, les concepteurs utilisant des processeurs RISC-V utilisant des ISA open source devront assurer le flux de vérification de leurs processeurs personnalisés et de leur matériel open source sur puce (SoC).
Les communautés de l’automatisation de la conception électronique (EDA) et de la propriété intellectuelle craignent de devoir concevoir un flux de vérification personnalisé et non testé pour le matériel open source basé sur RISC, encore relativement nouveau.
Ces préoccupations ont été discutées lors du récent panel virtuel DVCon 2021. Brian Bailey, de Semiconductor Engineering, a animé le panel d’experts en vérification de conception et de promoteurs open source pour relever les défis de la vérification. Ce qui suit sont les déclarations de positionnement éditées de chacun des panélistes, qui donnent le ton du débat plus détaillé qui peut être vu sur le site DVCon 2021.
Jean-Marie Brunet/AED de Siemens : Pour ceux d’entre nous dans le domaine de vérification de l’assistance matérielle, le problème du matériel open-source est vraiment comme d’habitude. Vous avez besoin de vues, de RTL qui compile, d’un banc de test qui s’exécute, etc. Ce n’est pas très différent de ce qui est généralement fourni par un fournisseur de vérification, de simulation et de prototypage de système matériel. Mais d’un point de vue de haut niveau, les systèmes open source ne sont pas trop différents.
Ashish Darbari/Axiomis : Je tiens à souligner que l’open source ne signifie pas que tout est gratuit. Dans le contexte du test et de la vérification, les outils open source ne se traduisent pas automatiquement par une vérification de haute qualité car l’utilisation de ces outils nécessite une expertise à développer et beaucoup d’efforts humains, que nous ne pouvons pas ignorer. De plus, dans le contexte de l’open source, la conception du matériel est très différente de celle du logiciel car le logiciel peut être corrigé, mais pas le matériel.
Cela m’amène au côté qualité de la question de la vérification. Ce qui est vraiment important dans le contexte de l’open source et beaucoup moins dans le contexte d’un développement propriétaire, c’est l’aspect visibilité, transparence et reproductibilité. Ainsi, n’importe quel outil pourrait être utilisé pour reproduire les résultats, les plans de vérification et la stratégie. Tout est transparent. Je pense que cela demande beaucoup d’efforts et que cela est largement pris pour acquis. Si nous pouvons réellement faire ce niveau de travail, qui est transparent et visible et est de haute qualité, je pense que beaucoup de choses fonctionneraient plutôt bien – dans la vérification open source.
Simon Davidmann/Imperas : Notre objectif est vraiment sur le logiciel et aider les gens à mettre le logiciel en marche. C’est pourquoi nous pensions que RISC-V n’était qu’un autre ISA – nous en avons 13 ou 14 que nous prenons en charge. Ensuite, nous avons réalisé que tout l’intérêt autour de RISC-V ne concernait pas le logiciel mais plutôt la façon dont les gens peuvent concevoir les processeurs. C’est à ce moment-là que nous sommes passés davantage à la vérification autour de RISC-V.
Le problème pour moi concerne le matériel open source de qualité. Le défi du coût ne concerne pas les outils de vérification individuels, mais la réalisation de la vérification. Je pense qu’en réalité, vous devriez acheter, emprunter et mendier tout ce que vous pouvez pour obtenir une vérification de meilleure qualité. Peu importe que cette qualité provienne des outils et processus open source ou commerciaux. Vous devez utiliser les meilleures technologies disponibles.
Serge Leef/DARPA : Quand j’étais dans l’espace commercial EDA, je n’ai jamais été particulièrement partisan de l’open source « quoi que ce soit », y compris la vérification open source. Mais ce que j’ai vu depuis lors, c’est que lorsque les gens essaient d’accélérer la simulation, les performances informatiques générales dépassent toujours les accélérateurs. La loi de Moore atteignant la fin du chemin, nous ne pouvons plus nous attendre à ce que les fréquences d’horloge continuent d’augmenter. C’est pourquoi de plus en plus de personnes envisagent d’utiliser l’informatique distribuée pour prendre en charge la simulation et la vérification sur le cloud. Mais lorsque vous passez au cloud, vous avez souvent besoin de beaucoup de licences, ce qui devient vite prohibitif.
C’est pourquoi la communauté que je sers dans l’écosystème de la défense examine de près la vérification open source en raison de son coût abordable. L’écosystème de la défense est une sorte de communauté défavorisée parce qu’elle n’a aucune capacité d’achat coordonnée et qu’elle a des mandats contractuels très compliqués.
L’un des programmes dont j’ai hérité est un simulateur analogique appelé Zeiss, qui est spécifiquement ciblé pour de nombreux cas, un degré élevé de développement de parallélisme. J’ai une communauté grandissante qui l’utilise avec beaucoup de succès et le coût des licences individuelles est nul. Ainsi, les utilisateurs peuvent évoluer. L’un des domaines que nous étudions est de savoir si nous devons faire quelque chose de similaire pour l’assimilation numérique, en particulier la simulation événementielle.
L’espoir est que le noyau de simulation puisse être mieux mappé sur le cloud afin qu’il puisse évoluer de manière linéaire avec l’ajout d’instances. Cela permettrait l’utilisation de stratégies de calcul haute performance (HPC) et peut-être incorporer des instances et des émulateurs F1. C’est pourquoi, dans ma communauté, le problème de la vérification open source est motivé par le coût.
Tao Liu/Google : Ce voyage pour nous a commencé il y a deux ou trois ans surtout avec l’arrivée du monde RISC-V. Ce que nous avons remarqué, c’est qu’il n’y avait pas de solution de vérification open source à ce moment-là. Beaucoup de gens s’étaient investis dans la conception du matériel open source mais très peu dans la vérification. Nous avons donc commencé à développer notre propre vérification pour la plate-forme RISC-V. Nous avons été confrontés à de nombreux défis, tels que comment généraliser la plate-forme de vérification pour s’adapter à différentes exigences. La grande question était de savoir comment nous pouvions créer quelque chose qui pouvait être facilement personnalisé et intégré dans notre environnement de conception.
Un autre problème qui s’est posé était le défi entre les outils open source et gratuits. En général, l’open-source n’a pas à être gratuit. L’open source est quelque chose qui est mis à disposition et à partir duquel quelqu’un peut s’appuyer dessus, mais un outil gratuit est une autre dimension du problème. (Source de l’image : DVCon 2021, Twitter)