Accellera dévoile PSS 2.0 – Prêt pour la production

Nœud source: 1853874

J'ai récemment eu une discussion avec Tom Fitzpatrick de Siemens et Faris Khundakjie d'Intel sur la dernière version de PSS - 2.0. Faris préside le groupe de travail PSS et Tom est vice-président. Dans ce qui suit, je synthétise les commentaires des deux, parfois j'appelle des commentaires individuels intéressants. Ma première question évidente : qu'est-ce qui distingue le 2.0 du 1.0 ? Je m'intéresse à la motivation plutôt qu'aux détails techniques, nous avons donc commencé avec les objectifs de la 1.0 et comment la 2.0 s'est appuyée sur une version anticipée.

Accellera dévoile PSS 2.0

Évolution du PSS

PSS est un écart assez important par rapport à la plate-forme la plus communément comprise pour les tests IP et SoC (UVM). UVM est idéal pour de nombreuses choses, mais pas pour les tests pilotés par logiciel, ni pour le portage de tests entre utilisateurs à différents niveaux d'intégration et sous différentes configurations. Ou même pour prendre en charge la vérification aléatoire contrainte dans un véritable sens au niveau du système. Des besoins vigoureusement revendiqués depuis de nombreuses années par de nombreux experts en vérification. Rien de tout cela ne pourrait être géré confortablement dans un autre tour d'UVM.

Ainsi est né le PSS 1.0 (et un peu plus tard le 1.0a). Il s'écartait d'un environnement connu et n'avait pas l'avantage de s'appuyer sur des solutions établies comme AVM, OVM et Vera comme UVM le pouvait. Tom a déclaré que la première version de PSS avait plus en commun avec la première version de System Verilog. Beaucoup de promesses mais exigeant pas mal de réorientation de la part des utilisateurs et des fournisseurs de solutions. Qui, au fur et à mesure de leur expérience, ont commencé à demander beaucoup de nouvelles fonctionnalités. Ceux-ci convergent maintenant vers la version 2.0, indiquant une plus grande maturation de la norme.

Nouvelles fonctionnalités

Faris a mentionné que 2.0 introduit un modèle de registre dans PSS, pour prendre en charge la configuration par exemple. Désormais, les conceptions de tests PSS peuvent créer des tests avec des références de registre de manière portable. J'ai poussé un peu plus là-dessus. UVM a une modélisation de registre, qu'est-ce qui rend PSS différent ici ? Faris a dit que c'était dans l'abstraction. PSS prend soin d'avoir un modèle agile de registres et de groupes qui n'a pas besoin de reposer sur une instanciation complète. Permettre à la couche de réalisation de déterminer la meilleure façon de les gérer, dans un émulateur par exemple. Ce qui peut sans aucun doute également être mappé dans une réalisation UVM, le cas échéant. Trucs délicats, cette abstraction, mais je vois son point.

La nouvelle version ajoute également beaucoup plus de contrôle sur les scénarios et la façon dont ces scénarios sont composés. Permettre des relations temporelles lorsque vous pouvez avoir des scénarios d'alimentation qui se chevauchent avec des scénarios fonctionnels et de sécurité. Ils ont également ajouté de nombreuses améliorations autour des blocs Exec, cette couche de réalisation critique entre la description de test de haut niveau et le mappage vers UVM, ou C ou quoi que ce soit qui pourrait être la cible. Ces améliorations permettent une plus grande réutilisabilité/portabilité en permettant aux utilisateurs d'ajouter plus de fonctionnalités abstraites aux blocs exec. Pour aider à définir le code procédural en un seul endroit, tout en étant capable de cibler toutes ces différentes réalisations.

Où PSS est-il utilisé ?

Une autre question évidente : comment le PSS est-il utilisé dans la pratique aujourd'hui ? Tom a dit qu'un modèle d'utilisation très populaire est dans les tests (pré-silicium). Lorsque vous commencez à assembler la fonctionnalité SoC, vous devez vous assurer que tout est au moins capable de converser. L'essentiel de la communication au niveau du système, avant même de démarrer le système d'exploitation. Ici, vous pouvez imiter la planification dans votre banc d'essai PSS. Par la suite, une grande chose à propos de la norme est que vous pouvez vous connecter au système d'exploitation via des appels API. Pour commencer à vérifier que le modèle matériel fonctionne correctement avec ce niveau de logiciel. Et vous pouvez commencer à randomiser pour voir ce qui casse. Une application assez convaincante pour les outils basés sur la norme.

Développement de l'écosystème

J'ai terminé avec une question sur l'écosystème de soutien - bibliothèques, formation, etc. Tout d'abord, dans la version 2.0, la norme a devancé les capacités existantes des outils, de sorte qu'ils ont probablement tous du rattrapage à faire et l'écosystème suivra. Faris voit de nombreuses opportunités pour les applications de se développer autour de domaines tels que la sécurité et la cohérence. Celles-ci existent déjà, mais il est utile de voir des implémentations compatibles PSS. De même, il existe de grandes opportunités pour les bibliothèques PSS autour d'autres normes : CXL, PCIe, etc. Être capable d'interagir avec ces normes dans la validation au niveau du système. Tom a ajouté qu'il est également certain que les responsables de la formation sauteront probablement sur PSS 2.0, une fois que les outils seront prêts.

Veulent en savoir plus? Cliquez sur ICI.

Partagez cet article via: Source : https://semiwiki.com/semiconductor-services/298690-accellera-unveils-pss-2-0-production-ready/

Horodatage:

Plus de Semiwiki