hsb-ip-create-top

Par nvidia · skills

Crée ou explique des wrappers HSB FPGA_top.sv au format fixe à partir de fichiers HOLOLINK_def.svh validés. Ne pas utiliser pour la génération ou la validation de def.

npx skills add https://github.com/nvidia/skills --skill hsb-ip-create-top

HSB IP Create Top Skill

Objectif

Créer un scaffold SystemVerilog au niveau supérieur en format fixe qui instancie HOLOLINK_top et déclare les signaux orientés HSB requis par un HOLOLINK_def.svh validé.

Cette skill possède uniquement le scaffold au niveau supérieur autour du HSB IP :

  • En-tête de licence SPDX/Apache
  • Inclusion de HOLOLINK_def.svh
  • Shell du module FPGA_top
  • Déclarations de signaux orientés HSB
  • Instanciation de HOLOLINK_top
  • commentaires/TODOs pour l'intégration au niveau supérieur

Utilisez hsb-ip-def pour la génération et la validation de HOLOLINK_def.svh. Ne créez ni ne validez le fichier defs ici.

Prérequis

  • Un chemin d'accès validé à HOLOLINK_def.svh ou le contenu du fichier collé est requis avant de générer FPGA_top.sv.
  • La source live HOLOLINK_top.sv est préférée lorsqu'une extraction de port sensible à la source est nécessaire ; les références groupées couvrent la révision connue 16'h2604 et la révision compatible 16'h2603.
  • L'utilisateur doit fournir ou accepter le chemin de sortie lors de l'écriture d'un fichier scaffold.

Instructions

  • Exigez un HOLOLINK_def.svh validé avant de créer FPGA_top.sv. Si l'utilisateur n'en a pas, invoquez ou orientez-le vers hsb-ip-def en premier.
  • Traitez HOLOLINK_top.sv live comme source de vérité pour les ports, directions, grilles de macros et révision IP chaque fois qu'il est disponible.
  • Classifiez d'abord la demande comme Standalone Create Top, Def-Skill Handoff ou Explain. Chargez uniquement les références requises pour ce flux de travail et ne relisez pas la même référence juste pour reconfirmer le formatage.
  • Utilisez references/fixed-format.md comme style de formatage et de nommage inscrit. N'inspectez pas les fichiers top-level d'exemple juste pour confirmer le formatage lors d'une génération normale.
  • Émettez un scaffold en format fixe, pas un top complet de projet. Puisque la conception environnante est inconnue, le module FPGA_top généré n'a normalement aucun port au niveau supérieur.
  • Dérivez les groupes de signaux actifs du fichier defs validé. Ne connectez pas les ports absents de HOLOLINK_top sous l'ensemble de macros actif.
  • Préservez exactement les formes de port HOLOLINK_top : conservez les largeurs de vecteur compacté avant le nom du signal et les dimensions de tableau non compacté après le nom du signal.
  • Quand vous utilisez des références de révision connue groupées, préservez toujours les formes de signal dans references/fixed-format.md, y compris les tableaux non compactés pour les bus *_tdata, *_tkeep et *_tuser multi-interface et la forme APB documentée là.
  • Utilisez un langage indépendant du capteur. Dites « données de capteur », « interface de capteur » et « stream » ; utilisez un langage spécifique à la caméra seulement après que l'utilisateur dise que la conception est spécifique à la caméra.
  • Posez une seule question en langage simple par tour quand des informations manquent. Gardez les questions de sélection de source comme des invites en langage simple plutôt que des boutons radio, des choix structurés ou des invites multi-questions.
  • N'inventez pas de détails d'intégration spécifiques au projet. Laissez des commentaires TODO concis où la conception environnante doit se connecter au HSB.
  • Pour les commentaires du packetizer dans FPGA_top.sv, utilisez un libellé générique tel que « comportement de manipulation de données ».
  • Dans les résumés finaux, incluez le statut de validation/source des defs, la source de la carte de ports utilisée et les groupes de signaux HSB émis. N'énumérez pas ce qui sort du champ d'application du scaffold. Utilisez uniquement cette note générique : « Ce fichier est une référence/modèle pour connecter les signaux au niveau supérieur et le IP compagnon au HSB IP. »

Politique de source HSB IP live

Préférez la source HSB IP live par rapport aux références groupées chaque fois que l'espace de travail de l'utilisateur la fournit. Les références groupées décrivent la révision connue 16'h2604 et la révision rétrocompatible 16'h2603 ; la source live fait autorité pour le IP extrait.

Quand la source est disponible :

  1. Localisez <hsb-ip-root>/top/HOLOLINK_top.sv. Les racines connues incluent hw/nvcpu_dgx_fpga/vrtl/hololink/ et la version publique fpga/nv_hsb_ip/.
  2. Lisez HOLOLINK_REV et HOLOLINK_BACKWARD_COMPAT_REV depuis HOLOLINK_top.sv.
  3. Lisez la déclaration du module HOLOLINK_top pour confirmer les noms de port, directions, largeurs, ordre et grilles ifdef/ifndef.
  4. Si la révision est plus récente, inconnue, ou la source live diffère des références de cette skill, énoncez l'incohérence. Faites confiance à la source live pour l'extraction d'E/S et avertissez que les références groupées peuvent nécessiter une mise à jour.

Quand aucune source n'est disponible, utilisez les références groupées comme orientation de révision connue et dites que le scaffold est basé sur la révision HSB IP supportée par la skill. Si l'utilisateur a déjà autorisé l'utilisation de la référence de port de révision connue groupée quand aucun checkout n'est évident, effectuez une brève recherche des racines évidentes puis procédez avec les références groupées au lieu de poser la question de source live.

Si la racine source n'est pas évidente, posez de manière conversationnelle en un tour :

Avez-vous une source `HOLOLINK_top.sv` du HSB IP actuelle extraite que je dois utiliser pour l'extraction de port, ou dois-je utiliser la référence de port de révision connue groupée de la skill ?

Acceptez soit un chemin soit une réponse « utiliser la référence groupée ».

Chargement des références

Chargez uniquement la référence nécessaire pour la tâche de l'utilisateur :

Fichier Quand charger
references/source-policy.md Trouver la source HSB IP live, gérer les révisions inconnues ou décider la précédence source/référence
references/fixed-format.md Générer ou expliquer le format scaffold FPGA_top.sv fixe
references/handoff-contract.md Gestion des prérequis autonomes ou comportement de handoff def-skill

Décision de flux de travail

  1. Si invoquée par hsb-ip-def après une génération/validation de defs réussie, utilisez Def-Skill Handoff.
  2. Si l'utilisateur demande directement de créer FPGA_top.sv, d'instancier HOLOLINK_top ou de créer un wrapper au niveau supérieur, utilisez Standalone Create Top.
  3. Si l'utilisateur pose des questions sur la gestion de version, les groupes de port ou pourquoi un signal apparaît, utilisez Explain.

Standalone Create Top

À utiliser quand l'utilisateur invoque cette skill directement.

Étapes :

  1. Demandez le chemin vers un HOLOLINK_def.svh validé, ou acceptez le contenu collé. Si l'utilisateur n'a pas de fichier defs, arrêtez et orientez-le vers hsb-ip-def pour le créer et valider en premier.
  2. Si le statut de validation est inconnu, invoquez ou orientez l'utilisateur vers la validation de hsb-ip-def. Ne procédez pas à partir d'un fichier defs non validé.
  3. Si la racine source du HSB IP n'est pas évidente et que la sortie sensible à la source est nécessaire, posez la question de source live depuis « Politique de source HSB IP live » sauf si l'utilisateur a déjà autorisé la solution de secours connue-rev groupée. Ne montrez pas les options de chemin comme des boutons radio. Les racines connues sont des indices de recherche pour l'agent, pas des choix à imposer à l'utilisateur.
  4. Chargez references/source-policy.md et references/fixed-format.md.
  5. Dérivez l'ensemble de macros actif du fichier defs validé.
  6. Dérivez ou vérifiez les groupes de port HOLOLINK_top à partir de la source live quand disponible.
  7. Produisez FPGA_top.sv au format fixe. Si vous écrivez un fichier, le nom de fichier par défaut est FPGA_top.sv sauf si l'utilisateur fournit un chemin.
  8. Expliquez que le résultat est un scaffold d'intégration HSB. Utilisez la note générique de référence/modèle dans ## Instructions ; n'énumérez pas ce qui sort du champ d'application du scaffold.

Def-Skill Handoff

À utiliser quand hsb-ip-def vient de terminer un HOLOLINK_def.svh validé et l'utilisateur choisit de créer un scaffold au niveau supérieur correspondant.

Étapes :

  1. Acceptez le chemin/contenu du fichier defs validé et tout contexte de profil/racine source connu depuis hsb-ip-def.
  2. Ne re-posez pas les décisions relatives au fichier defs déjà complétées par la skill def.
  3. Posez seulement les faits manquants de génération top, tels que le chemin de sortie ou la racine source du HSB IP quand nécessaire. Si la racine source manque, posez la question de source live depuis « Politique de source HSB IP live » sauf si l'utilisateur a déjà autorisé la solution de secours connue-rev groupée ; n'utilisez pas de boutons radio ou choix structurés.
  4. Chargez references/handoff-contract.md et references/fixed-format.md.
  5. Générez le scaffold FPGA_top.sv au format fixe à partir des macros defs actifs et du HOLOLINK_top.sv live quand disponible.
  6. Retournez un résumé concis des groupes de signaux HSB émis, puis utilisez la note générique de référence/modèle dans ## Instructions. N'énumérez pas ce qui sort du champ d'application du scaffold.

Explain

À utiliser quand l'utilisateur demande pourquoi un port ou groupe de signaux apparaît, comment les paramètres de macro affectent le scaffold supérieur ou comment la skill gère les révisions IP.

Étapes :

  1. Pour les questions de port, préférez HOLOLINK_top.sv live quand disponible. Sinon chargez references/fixed-format.md.
  2. Pour les questions de révision/source, chargez references/source-policy.md.
  3. Pour la signification de macro du fichier defs, déférez à hsb-ip-def.

Dépannage

  • Fichier defs manquant ou non validé : arrêtez avant la génération et envoyez l'utilisateur à la validation hsb-ip-def.
  • Révision HSB IP inconnue ou plus récente : préférez la source live si disponible, énoncez l'incohérence et avertissez que les références groupées peuvent nécessiter des mises à jour.
  • Port manquant sous l'ensemble de macros actif : omettez cette connexion et expliquez quelle macro def validée a désactivé le groupe de signaux.

Exemples

  • Utilisez hsb-ip-create-top pour créer un scaffold FPGA_top.sv à partir de mon HOLOLINK_def.svh validé. Utilisez la référence de port de révision connue groupée si aucune extraction de source HSB IP n'est évidente. Traitez comme Standalone Create Top, exigez le fichier defs validé, chargez references/source-policy.md et references/fixed-format.md, utilisez les ports de révision connue groupée après une brève recherche de source, et signalez le statut defs, la source de carte de ports et les groupes de signaux émis.
  • Créez un wrapper FPGA_top.sv au niveau supérieur pour HSB, mais je n'ai pas encore de HOLOLINK_def.svh. Arrêtez avant la génération, orientez l'utilisateur vers hsb-ip-def et demandez un chemin ou contenu de fichier defs validé avant de procéder.
  • Pourquoi le FPGA_top.sv généré inclut-il différents groupes de signaux HSB selon mes macros HOLOLINK_def.svh ? Traitez comme Explain, dites que les macros defs validés gate les groupes de signaux orientés HSB et que la carte de ports HOLOLINK_top.sv live gagne quand disponible ; déférez la sémantique détaillée de macro à hsb-ip-def.

Limitations

  • Ne générez pas HOLOLINK_def.svh.
  • Ne validez pas les fichiers HOLOLINK_def.svh complets.
  • Ne générez pas d'intégration spécifique au projet en dehors du scaffold orienté HSB.
  • N'inférez pas les significations de signal, polarité, sources ou comportement en dehors de la carte de ports HSB.
  • Ne copiez pas la logique de projet d'exemple dans le scaffold sauf si l'utilisateur demande explicitement une adaptation spécifique au projet.

Skills similaires