Imperas publie des suites de tests de validation de la protection mémoire de l'architecture RISC-V

Imperas Test PMP Risc-V

La firme britannique Imperas Software, qui fournit des solutions de simulation de cœurs RISC-V, vient de rendre publique une suite de tests de validation architecturale pour la protection mémoire des cœurs RISC-V (PMP, Physical Memory Protection). Cette suite est désormais disponible dans une version bêta pour les utilisateurs de l’environnement de vérification ImperasDV, destiné aux ingénieurs de conception de circuits intégrés (*). Une version complète est prévue pour le deuxième trimestre 2022.

Imperas rappelle que le jeu d'instructions ouvert ISA de l'architecture de processeur RISC-V offre aux développeurs une large gamme d'extensions et d'options standard destinées à la conception de puces optimisées. La spécification inclut notamment la fonction PMP comme approche de la protection mémoire qui est essentielle dans les applications de sécurité qui dépendent de profils de protection TEE (Trusted Execution Environments) tels que Keystone, un framework open source permettant de créer des TEE, ou encore OpenTitan, un projet open source qui vise à créer des directives de conception de référence transparentes pour les circuits racines de confiance (RoT, Root of Trust).

Les implémentations de processeurs RISC-V pour applications de sécurité utilisent ce mécanisme de protection de la mémoire physique (PMP) comme moyen d'assurer l'isolation de la mémoire entre les applications de sécurité clés et d'autres activités. La spécification PMP fournit une approche flexible fondée sur des registres de contrôle pour le paramétrage des modes afin de contrôler l'accès à la mémoire. En utilisant ces registres de contrôle, la politique et le fonctionnement des accès mémoire peuvent être configurés sous forme logicielle en s’appuyant sur les ressources matérielles disponibles. Par conséquent, la politique PMP peut être configurée pour contrôler le processus de démarrage initial du processeur, une approche fondamentale, selon Imperas, pour de nombreux systèmes qui s'appuient sur un TEE pour les applications de sécurité.

Dans ce cadre, la vérification fonctionnelle du processeur RISC-V doit garantir que la conception se comporte comme prévu. Dans le cas de la fonctionnalité PMP, en raison du large éventail de configurations et d'implantations possibles, la suite de tests de validation architecturale doit également couvrir les vulnérabilités résultant d'une erreur de conception, susceptibles d’activer une option inutile ou indésirable.

Selon Imperas, si certains développeurs de processeurs entreprennent à la fois les phases de conception et de test d'un projet, l'avantage de faire appel à des suites de tests tiers est qu'une interprétation indépendante de la spécification fournira une protection supplémentaire. Ceci est particulièrement important lorsque les options de spécification sélectionnées pour le périphérique cible sont utilisées pour diriger le plan de test, car une erreur de conception involontaire qui inclut une fonctionnalité inutile et donc non testée peut entraîner une vulnérabilité de sécurité.

« Un élément clé des spécifications privilégiées du RISC-V qui s'avère fondamental pour la sécurité du système d'exploitation et des applications est la fonctionnalité PMP, précise Allen Baum de la société Esperanto Technologies et président du groupe d'experts Architecture Test de l'organisme RISC-V International. Assurer son bon fonctionnement est donc essentiel pour les applications de sécurité, et les suites de tests Imperas PMP sont une contribution à la communauté pour y parvenir. »

(*) La solution intégrée de vérification de processeur RISC-V ImperasDV d’Imperas s’inscrit dans les flux DV (Design Verification) établis, reposant sur les standards UVM et SystemVerilog.