systemverilog — скилл для Claude Code: правила FPGA и ASIC
Скилл задаёт агенту правила проектирования на SystemVerilog: модульность, синхронные схемы, тайминги и верификация. Пригодится, если вы пишете RTL для FPGA или ASIC.
npx skills add Mindrally/skills --skill systemverilog -a claude-codeЧто делает systemverilog
Скилл превращает ассистента в эксперта по SystemVerilog для FPGA и ASIC: он подсказывает, как разбивать проект на мелкие переиспользуемые модули, заводить interface-блоки и держать единый стиль именования. Отдельный блок про синхронный дизайн — приоритет одного клокового домена, обработка CDC для нескольких клоков, синхронный сброс вместо асинхронного, отказ от комбинационных петель и латчей.
По таймингам скилл советует заводить XDC-файлы рано и регулярно смотреть отчёты Static Timing Analysis, а нарушения чинить пайплайнингом или оптимизацией логики. Есть разделы про расход ресурсов (LUT/FF/BRAM, инференс RAM через reg [], встроенные IP-ядра вроде AXI и DSP), про снижение мощности через clock gating и про верификацию: самопроверяющиеся тестбенчи, assert для проверки свойств, поведенческая и постсинтезная симуляция, ILA для отладки на живом железе.
Практическая оговорка одна: это набор текстовых правил, а не линтер и не синтезатор. Отчёты таймингов, ILA и XDC-файлы остаются вашей работой в вендорской тулчейне — скилл лишь держит агента в рамках этих практик, когда тот пишет или правит RTL.
Какие задачи решает
- разбить крупный дизайн на переиспользуемые модули
- настроить корректный переход между клоковыми доменами
- закрыть тайминги на высокой частоте через пайплайнинг
- снизить расход LUT, FF и BRAM
- написать самопроверяющийся тестбенч с assert-проверками
Примеры запросов агенту
- Разбей этот модуль на подмодули с interface-блоками и единым стилем именования
- Проверь мой код на комбинационные петли и латчи, предложи синхронный сброс
- Добавь пайплайн-стадии в этот модуль, чтобы убрать критический путь
Как установить systemverilog
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill systemverilog -a claude-code2Вручную: положить файлы
~/.claude/skills/systemverilog/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/systemverilog/
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill systemverilog -a codex2Вручную: положить файлы
.agents/skills/systemverilog/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill systemverilog -a cursor2Вручную: положить файлы
.cursor/skills/systemverilog/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install Mindrally/skills systemverilog2Вручную: положить файлы
.github/skills/systemverilog/SKILL.md1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill systemverilog -a gemini-cli2Командой платформы
gemini skills install https://github.com/Mindrally/skills --path systemverilogВручную: положить файлы
.devin/skills/systemverilog/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill systemverilog -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о systemverilog
Как установить systemverilog в Claude?
Выполните npx skills add Mindrally/skills --skill systemverilog -a claude-code. Файл скилла появится по пути ~/.claude/skills/systemverilog/SKILL.md.
Что делает этот скилл?
Даёт агенту набор правил по SystemVerilog для FPGA и ASIC: модульная структура, синхронный дизайн, работа с таймингами, оптимизация ресурсов и мощности, верификация.
Скилл сам проверяет тайминги и синтезирует проект?
Нет. Он влияет на то, как агент пишет и правит RTL, а отчёты Static Timing Analysis, XDC-файлы и отладку через ILA вы ведёте в своей среде разработки.
Исходный текст
SKILL.md · Apache-2.0
--- name: systemverilog description: SystemVerilog development guidelines for FPGA and ASIC design covering modular design, verification, and timing optimization. metadata: maintainer: Mindrally source: https://github.com/Mindrally/skills --- # SystemVerilog Development You are an expert in SystemVerilog for FPGA and ASIC design, verification, and hardware optimization. ## Modular Design & Code Organization - Structure designs into small, reusable modules to enhance readability and testability - Begin with a top-level module and decompose into sub-modules - Use clear `interface` blocks for module connections - Maintain consistent coding style and naming conventions ## Synchronous Design Principles - Prioritize single clock domains for simpler timing analysis - Implement proper clock domain crossing (CDC) handling for multi-clock designs - Prefer synchronous over asynchronous reset to ensure predictable behavior - Avoid combinational loops and latches ## Timing Closure & Constraints - Establish XDC (Xilinx Design Constraints) files early - Review Static Timing Analysis reports regularly - Use timing reports to identify critical path bottlenecks - Address violations through pipelining or logic optimization - Deploy pipelining in high-frequency designs to reduce critical path loads ## Resource Utilization & Optimization - Write efficient code for LUT/FF/BRAM usage - Use `reg []` for RAM inference - Minimize unnecessary register usage - Leverage built-in IP cores (AXI interfaces, DSP blocks, memory controllers) - Select appropriate optimization priorities (area vs. speed) ## Power Optimization - Implement clock gating for dynamic power reduction - Enable power-aware synthesis for low-power applications - Minimize switching activity in non-critical paths ## Verification & Debugging ### Testbenches - Develop comprehensive testbenches covering typical and edge cases - Use `assert` statements for property checking - Implement self-checking testbenches ### Simulation - Run behavioral and post-synthesis simulations - Use Integrated Logic Analyzer (ILA) for real-time debugging - Apply assertion-based verification to catch protocol violations ## Advanced Techniques ### Clock Domain Crossing - Apply synchronizers or FIFOs for safe CDC implementation - Use proper handshaking protocols - Verify CDC paths thoroughly ### Interface Optimization - Optimize AXI interfaces for high-throughput with proper burst sizing - Implement efficient handshaking protocols - Balance latency and throughput ### Pipelining - Implement fine-tuned pipeline stages for performance-critical modules - Balance pipeline depth with latency requirements - Use retiming for optimization
© Mindrally · Apache-2.0 · Mindrally/skills