fpga — скилл для Claude Code: что делает и как установить
Набор правил разработки под FPGA на SystemVerilog в Vivado. Помогает настраивать тайминги, шину AXI, оптимизировать ресурсы и писать тестовые окружения.
npx skills add Mindrally/skills --skill fpga -a claude-codeЧто делает fpga
Скилл добавляет в контекст правила разработки аппаратуры для Vivado и SystemVerilog. Он направляет агента при разбиении проекта на подмодули и настройке синхронного сброса.
Внутри собраны рекомендации по закрытию таймингов с помощью файлов XDC, отчётов STA и конвейеризации. Описаны приёмы экономии ресурсов LUT и блочной памяти, интеграция ядер AXI, а также отладка через логический анализатор ILA.
Набор ориентирован на САПР Vivado, поэтому для сторонних компиляторов и чистого VHDL правила потребуют адаптации.
Какие задачи решает
- настроить временные ограничения через файлы XDC
- реализовать безопасный переход между тактовыми доменами через FIFO
- согласовать протокол шины AXI и пакетную передачу DMA
- написать самопроверяемый тестбенч на SystemVerilog с ассертами
Примеры запросов агенту
- Помоги настроить конвейер в модуле на SystemVerilog, чтобы устранить нарушения таймингов из отчёта Vivado.
- Спроектируй безопасный переход сигналов между тактовыми доменами через квитирование.
- Напиши самопроверяемый тестбенч с ассертами для проверки чтения по шине AXI.
Как установить fpga
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill fpga -a claude-code2Вручную: положить файлы
~/.claude/skills/fpga/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/fpga/
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill fpga -a codex2Вручную: положить файлы
.agents/skills/fpga/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill fpga -a cursor2Вручную: положить файлы
.cursor/skills/fpga/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install Mindrally/skills fpga2Вручную: положить файлы
.github/skills/fpga/SKILL.md1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill fpga -a gemini-cli2Командой платформы
gemini skills install https://github.com/Mindrally/skills --path fpgaВручную: положить файлы
.devin/skills/fpga/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill fpga -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о fpga
Как установить fpga в Claude Code?
Выполните в терминале команду npx skills add Mindrally/skills --skill fpga -a claude-code.
Для чего нужен этот скилл?
Он задаёт правила проектирования цифровых схем, помогая закрывать тайминги, строить конвейеры и распределять ресурсы кристалла в Vivado.
Какие интерфейсы и протоколы охватывает руководство?
Инструкции включают работу с шиной AXI, передачу данных через DMA и безопасный перенос сигналов через границы тактовых доменов.
Исходный текст
SKILL.md · Apache-2.0
--- name: fpga description: FPGA development guidelines covering Vivado, SystemVerilog, timing closure, AXI interfaces, and hardware optimization. metadata: maintainer: Mindrally source: https://github.com/Mindrally/skills --- # FPGA Development You are an expert in FPGA development with Vivado, SystemVerilog, and hardware design optimization. ## Modular Design & Code Organization - Structure designs into small, reusable modules to enhance readability and testability - Start with a top-level design module and gradually break it down into sub-modules - Use SystemVerilog interface blocks for clear interfaces - Maintain consistent naming conventions across modules ## Synchronous Design Principles - Prioritize single clock domains to simplify timing analysis - Favor synchronous reset over asynchronous reset to ensure predictable behavior - Avoid timing hazards during synthesis - Use proper clock domain crossing (CDC) techniques when multiple clocks are required ## Timing Closure & Constraints - Establish timing constraints early using XDC files - Review Static Timing Analysis reports regularly - Identify critical timing paths using Vivado's timing reports - Address violations by adding pipeline stages or optimizing logic - Use multi-cycle path constraints where appropriate ## Resource Utilization & Optimization - Optimize LUTs, flip-flops, and block RAM through efficient SystemVerilog - Leverage Vivado's built-in IP cores (AXI interfaces, DSP blocks, memory controllers) - Select appropriate synthesis strategies based on design priorities - Use `reg []` for RAM inference and minimize register usage - Balance area vs. speed optimization based on requirements ## Power Optimization - Implement clock gating to reduce dynamic power consumption - Use Vivado's power-aware synthesis - Set power constraints for low-power applications - Minimize switching activity in non-critical paths ## Debugging & Simulation - Write detailed, self-checking testbenches covering typical use cases and edge cases - Use SystemVerilog assertions for verification - Run behavioral and post-synthesis simulations - Use Integrated Logic Analyzer (ILA) for real-time signal debugging - Implement assertion-based verification to catch protocol violations ## Advanced Techniques ### Clock Domain Crossing - Use synchronizers or FIFOs to handle CDC safely - Implement proper handshaking protocols ### AXI Protocol Compliance - Ensure proper read/write channel management and handshakes - Optimize for high-throughput with proper burst sizing ### DMA Integration - Configure burst transfers for maximum throughput - Handle buffer management efficiently ### Latency Reduction - Implement fine-tuned pipeline stages strategically - Balance latency vs. throughput requirements
© Mindrally · Apache-2.0 · Mindrally/skills