vivado-timing-closure

vivado-timing-closure is a skill for Claude Code, Codex from mapleleavessssssss-wq/vivado-mcp. It costs 56 tokens per session (1,022 once invoked), scanned A, original, Apache-2.0.

A Vivado workflow for finding and fixing setup, hold, and pulse-width timing problems in FPGA designs. Timing closure means meeting the required signal timing without changing the design's intended behavior.

In plain words
What is it for?
It helps inspect timing reports, utilization, warnings, clock constraints, and critical paths, then validate authorized RTL, XDC, or implementation-strategy changes.
Why use it?
A design can pass basic checks yet fail at its target clock speed because of long logic paths, routing, clock, or constraint problems. This workflow compares evidence against a baseline and tests one likely cause at a time.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit It helps inspect timing reports, utilization, warnings, clock constraints, and critical paths, then validate authorized RTL, XDC, or implementation-strategy changes.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/mapleleavessssssss-wq/vivado-mcp/vivado-timing-closure
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add mapleleavessssssss-wq/vivado-mcp --skill vivado-timing-closure
Clone the repo
git clone --depth 1 https://github.com/mapleleavessssssss-wq/vivado-mcp

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for vivado-timing-closure

README.md
[![agentmods](https://agentmods.dev/badge/skills/mapleleavessssssss-wq/vivado-mcp/vivado-timing-closure/github.svg)](https://agentmods.dev/skills/mapleleavessssssss-wq/vivado-mcp/vivado-timing-closure)
Your own site
<a href="https://agentmods.dev/skills/mapleleavessssssss-wq/vivado-mcp/vivado-timing-closure"><img src="https://agentmods.dev/badge/skills/mapleleavessssssss-wq/vivado-mcp/vivado-timing-closure/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for vivado-timing-closure

Your own site · 80×15
<a href="https://agentmods.dev/skills/mapleleavessssssss-wq/vivado-mcp/vivado-timing-closure"><img src="https://agentmods.dev/badge/skills/mapleleavessssssss-wq/vivado-mcp/vivado-timing-closure.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 56 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,022 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00056 $0.01022
Opus 5.5 $0.00022 $0.00409
Sonnet 5.5 $0.00011 $0.00204
Haiku 4.5 $0.00006 $0.00102

Measured 23d ago against content hash 71932f8f62bb, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

vivado-timing-closure scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 23d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/vivado-timing-closure/SKILL.md · 45 lines

How it starts

The opening of the file, as written. The whole thing — 45 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Vivado 时序收敛

可用入口:get_project_info、get_timing_report、get_utilization_report、get_critical_warnings、get_cdc_report、run_tcl、safe_tcl。

只分析时不启动构建;用户要求优化时继续完成已授权的 RTL/XDC/策略修复。保持接口、目标频率和功能语义;改变这些条件需要对应授权。此流程不包含硬件编程。

记录可比较的基线

现场用 get_project_info 确认工程、器件与 run;报告必须对应当前 source/XDC。离线输入不需要 Vivado 会话,但结论只覆盖所给文件。

get_timing_report(session_id="design", output_format="json")
get_timing_report(output_format="json", report_file="/work/reports/before.rpt")

记录 provenance、stage、context、parse_status、metrics 和 verdict。setup、hold、pulse_width 的缺失值是 null,不能当作零。met_observed_checks 只说明已观察指标满足;verdict.signoff 为 false,不等于完整签核。

需要比较时,用宿主文件工具把返回的完整 JSON 正文原样保存为新基线文件,包含 schema、来源和上下文;不要只存 metrics,也不要把原始 Tcl 文本传给 baseline_file。MCP 不会自动写入报告。

分类后修复

  • 先核对时钟与约束覆盖,再解释最差路径。有现场会话时用 run_tcl 获取 report_clock_interaction -return_string、report_methodology -return_string;离线缺少旁证时列为未验证。CDC 嫌疑需要结构与协议证据。
  • 用返回路径与可用资源/告警报告区分逻辑深度、扇出/布线、拥塞、I/O 约束和时钟问题;现场可调用 get_utilization_report、get_critical_warnings。布局策略不能修复逻辑协议错误。
  • 一次只验证一个根因假设。保留 baseline 和最佳候选,记录具体 RTL/XDC/策略变更。用户输入的路径/对象通过 safe_tcl,不要拼入原始 Tcl。
  • set_false_path 和 multicycle 不是性能优化手段;它们与 waiver 只能依据真实功能关系,不能用于消除真实违例。没有协议证据时报告不确定性,继续不依赖该例外的分析。
  • CDC 嫌疑通过 get_cdc_report 与实际同步结构核对。set_clock_groups 会覆盖重叠路径的 set_max_delay -datapath_only;用 report_exceptions 核实生效范围。set_bus_skew 需用独立 report_bus_skew 检查,不能从 WNS 推断。

同条件复测

重跑受影响阶段后读取新报告,或对新保存的原始报告进行离线比较:

get_timing_report(session_id="design", output_format="json", baseline_file="/work/reports/baseline.json")
get_timing_report(output_format="json", report_file="/work/reports/after.rpt", baseline_file="/work/reports/baseline.json")

先读 comparison.status 与 reasons,再解释 deltas。不同/未知设计或阶段不能比较;即使 design/device/stage 相同,约束身份未知时差值仅为观察,不证明优化效果。该接口的比较 authoritative 为 false,须用独立的输入、约束和路径覆盖记录说明可比性。

收敛验收需同一当前 post-route 设计的 setup/hold/pulse-width、完整约束覆盖、route、DRC/methodology 和适用 CDC 检查。仅 WNS 改善或摘要非负不够。达到目标后交付证据;连续两轮无实质改善时保留最佳结果并重新归因,受总预算限制停止,不把停滞称成功。报告数值变化、可比性、变更、剩余违例和未验证检查。

Read the full file on GitHub · 45 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 23d ago First seen · 45 lines · 56 tokens per session scan A 71932f8f62bb

Subscribe to this mod's changes

vivado-timing-closure is a skill published in the GitHub repository mapleleavessssssss-wq/vivado-mcp (157 stars, last pushed 24d ago), licensed Apache-2.0. It adds 56 tokens to every session and 1,022 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-23.

Related

Other skills, from other repositories

readable-verilog-generator

Use when creating, writing, reviewing, annotating, repairing, refactoring, or validating readable Verilog RTL, including synthesizable Verilog-2001 .v files, existing-RTL analysis, semantic comment annotation, testbench scaffold planning, ASIC-quality review, local or remote Vivado/xsim validation, evidence-backed…

Eriemon/verilog-generator · 77 tokens

drc-fix

Diagnose and fix Design Rule Check (DRC) violations in a layout or GDS. Use when the user says "fix DRC", "DRC clean", "resolve spacing errors", "my layout fails DRC", or shares a DRC report from Calibre, Klayout, or Magic.

vibeic/vibe-ic · 67 tokens

hw-debug-loop

Closed-loop hardware debug methodology for half-duplex protocol ICs when BFM passes but real-silicon connecttest FAILs (Category B/C from the A/B/C extraction-gap analysis). Use after spec-to-rtl + flowcompliancecheck have all PASSed, the SOF has been burned to FPGA, and the host-side acceptance test (e.g.…

vibeic/vibe-ic · 191 tokens

lvs-triage

Triage Layout-vs-Schematic (LVS) mismatches — missing connections, short/open nets, device parameter mismatches, unmatched instances. Use when the user says "LVS", "layout vs schematic", "LVS mismatch", "netlist compare", "Calibre LVS", "Netgen".

vibeic/vibe-ic · 68 tokens

synth-doctor

Automatically diagnose and fix EDA tool failures. Parses Yosys synthesis and OpenROAD P&R logs, classifies errors into known patterns, and provides actionable fix commands. Triggers when: synthesis fails, P&R fails, 'why did synth fail', 'fix synthesis error', 'DRC violation', or any EDA tool error during Phase 2.…

vibeic/vibe-ic · 93 tokens

fpga-led-probe-allocation

Codify FPGA LED probe allocation patterns (instantaneous / pulse-stretched / sticky / byte-display) and produce an FPGA-top template with comment-table mapping (LED → signal → expected behaviour per test stage). Use when a fresh agent has to verify a chip on a DE10-Lite-class board with no scope and only the on-board…

vibeic/vibe-ic · 91 tokens