Communitygithub.com

CATEular/skill

Crear o editar layouts de Virtuoso con tecnología verificada, PCells, geometría de pines, capas, vías, restricciones de enrutamiento y matching; exportar GDS y ejecutar o interpretar comprobaciones DRC, LVS y PEX. Se usa para diseño físico y verificación de layout; los problemas de conexión y la creación de testbenches esquemáticos usan habilidades hermanas correspondientes.

¿Qué es skill?

Esta habilidad permite a un agente de IA realizar diseño físico y verificación de layouts en el entorno Cadence Virtuoso. El agente puede leer layouts existentes, colocar dispositivos usando PCells verificados, dibujar geometría de pines y vías, y aplicar restricciones de enrutamiento y matching. También puede exportar GDS y ejecutar o interpretar comprobaciones DRC, LVS y PEX. Está diseñada para trabajar con tecnologías y PDKs específicos, consultando la base de datos tecnológica en lugar de depender de estados históricos. La habilidad se integra con otras habilidades hermanas para la creación de testbenches y la optimización de parámetros, y sigue un flujo de edición paso a paso que incluye verificación de geometría y validación mediante capturas de pantalla. Es compatible con las plataformas Virtuoso y utiliza tanto APIs de Python como de SKILL para la interacción con el entorno de diseño.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/CATEular/skill/tree/HEAD/skills/virtuoso-workflow/virtuoso-layout

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Virtuoso Layout

Gestiona la lectura de layouts, colocación de dispositivos, matching y enrutamiento, pines/vías, GDS y DRC/LVS/PEX. Una vez completada la verificación física, pasa las mediciones de post-simulación a virtuoso-testbench y la optimización de parámetros a virtuoso-params.

Verificaciones previas

Lee primero las convenciones de la plataforma y el protocolo de configuración del entorno, luego lee la configuración local compartida y conecta según sea necesario. Define claramente lib/cell/view, PDK, enlace tecnológico, versión esquemática, área objetivo, matching, corriente y requisitos parasitarios. Consulta el enlace tecnológico desde la base de datos; no confíes en el estado del historial.

Lee layout-python-api.md, layout-skill-api.md y verifica las firmas reales de instalación. La interfaz de enlace tecnológico se encuentra en library-python-api.md.

Flujo de edición

  1. Lee la jerarquía, los dispositivos reales y la geometría de los terminales, las capas/propósitos legales, la cuadrícula de fabricación, viaDefs y el layout existente. No adivines coordenadas de conexión basándote en capturas de pantalla.
  2. Define la estrategia de colocación y enrutamiento, explicando las restricciones de simetría, matching, concéntricas, guard ring, alimentación y señales sensibles requeridas. Las reglas provienen del PDK real seleccionado en la configuración; no uses valores fijos de otros procesos.
  3. Por defecto usa modify(); solo usa create() para vistas nuevas; primero verifica si se va a sobrescribir. Genera dispositivos con PCells y parámetros confirmados, evitando dibujar a mano dispositivos complejos del proceso.
  4. En Python usa coordenadas como tupla/lista; las coordenadas SKILL son generadas por el constructor de la API. Verifica si se pueden crear label/via/PCell mediante script usando las funciones reales y la versión actual, sin heredar conclusiones antiguas de "debe ser GUI".
  5. Usa direcciones de enrutamiento y cuadrícula acordes a las reglas del proceso; el enrutamiento a 90° es un punto de partida común, pero la dirección y el ángulo los determina el PDK. Coloca los labels de pines en la capa/forma correcta; un label no equivale automáticamente a un pin con terminal eléctrico completo.
  6. Guarda, relee la geometría y los puertos, y verifica con captura de pantalla. Si el zoom oculta formas pequeñas, lee primero la cantidad de formas y el bbox; no las crees de nuevo.

Verificación y entrega

Prepara el stream map / deck / top cell según verification.md, exporta el nuevo GDS de esta ejecución y revisa el log de la ejecución actual. Reporta el estado de DRC, LVS y PEX por separado; no se puede inferir que uno pase porque otro pasó. Si no hay herramienta, licencia o deck, entrega el layout y el plan de verificación, indicando claramente que no se ejecutó.

Tras cambiar el layout, regenera los resultados de verificación correspondientes; está prohibido usar PEX antiguo como resultado del layout actual. La entrega incluye la ubicación del layout, GDS, logs de verificación actuales, elementos no resueltos y el estado de post-simulación solicitado por el usuario.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Skills relacionados