Claude Code IC 设计与验证应用:Autowire/Lint/UVM/Spec 四个Skill
在 VNC 远程环境中用 Claude Code 终端,围绕 Autowire、Lint、UVM、Spec 四类 IC 设计验证 Skill 完成从 RTL 辅助、静态检查、验证环境到规格文档的提效实践;串讲视频与配套资料见本页下方选集。
~/cxjl_practice/AI_Project
在 VNC 个人工作区用 Claude Code 终端调用四类 IC Skill:ic-design-autowire(顶层接线)、rtl-lint-cdc-runner(Lint/CDC 编排)、uvm-tb-bootstrap(UVM 骨架)、spec-to-testplan(规格→测试计划)。配套示例工程位于 AI_Project/projects/01~04,均以 QSPI / APB mini 为练手载体。
项目串讲视频
配套串讲录屏,帮助快速建立项目全局认知;仅支持在线观看。 访客与未开通实践权限用户每集可试看前 5 分钟。
加载中…
配套资料
串讲 PPT、PDF 等课件,与视频配套使用。 部分资料需开通 IC 仿真实践权限后可查看与下载。
导读:这是什么 · 能学什么 · 怎么学
一、这是什么项目?
本项目不是「学 Prompt 技巧」的泛 AI 课,而是把 Claude Code Skill 落到 IC 设计验证的四条高频链路:RTL 顶层接线、静态检查编排、UVM 环境起步、规格文档转 testplan。
申请 VNC 后平台会在后台为 Claude Code 挂载四类 IC 能力(Autowire / Lint / UVM / Spec);学员侧只需在 ~/cxjl_practice 启动 Claude,按 projects/01~04 示例工程跟练即可。
所有操作在个人工作区副本进行:AI 可辅助生成/修改文件,但地址映射、优先级定级、RTL 最终合入须由人拍板。
二、能学到什么?
按四条 Skill 链路拆解——设计接线、静态分析、验证环境、规格提取。
ic-design-autowire · 顶层自动接线
- 输入:顶层骨架、子模块端口表、filelist、地址映射规范(docs/addr_map_spec.md)。
- 产出:apb_mini_top.v、docs/addr_map.md、docs/autowire_report.md、更新 filelist。
- 硬检查:无双驱动、input 均有驱动、psel 互斥、prdata mux 默认项为 0;禁止改子模块内部 RTL。
- 示例:projects/01_autowire_apb_mini(GPIO/UART/SPI 三路 APB 从机 + 地址译码)。
rtl-lint-cdc-runner · Lint / CDC 编排
- 编排 SpyGlass / sg_shell 或等价 Lint、CDC 脚本;收集 reports/ 下原始 .rpt。
- 产出 reports/summary.md、reports/top_violations.md:按规则聚类 Top 违例,每条带文件:行号。
- 建议动作分三类:改 RTL / 改约束 / 加 waiver——本 Skill 不自动改 RTL、不自动加 waiver。
- 示例:projects/02_lint_cdc_qspi(含故意注入的 CDC 反例,对照 known_issues_seed 验收召回)。
uvm-tb-bootstrap · UVM 环境骨架
- 分三阶段:A 最小可编译(interface + pkg + tb_top + Makefile)→ B sanity 可跑 → C scoreboard/RAL 占位。
- 目标 DUT 示例为 apb_spi_master;产物目录 tb/ 含 agent/env/test/seqs 标准结构。
- 硬检查:make comp 通过;make run_sanity 零 UVM_ERROR/FATAL;TB 不白盒引用 DUT 内部信号。
- 示例:projects/03_uvm_tb_bootstrap_qspi,结构对照 tb_skeleton/EXPECTED_STRUCTURE.md。
spec-to-testplan · 规格转测试计划
- 从 spec / 寄存器手册提取结构化 testplan:表 A 已覆盖、表 B 缺口(含 P0/P1/P2 建议)、表 C TB/DUT 已知问题。
- 可选产出 doc/register_map.md;未写明的行为一律标「待设计确认」,禁止臆造功能。
- 不写测试 SV 代码(与 uvm-tb-bootstrap 分工);优先级最终由验证负责人复核。
- 示例:projects/04_spec_to_testplan_qspi(仅文档输入,无 RTL/TB)。
三、怎么学?
建议按串讲视频 → 环境确认 → 四个示例工程依次跟练 → 个人备忘与复盘。
- 申请 VNC,进入个人工作区;source examapp_user_env.sh,确认 claude 终端可用。
- 按 01→04 顺序进入 AI_Project/projects/ 各子目录,对照 README 的输入/允许/验收清单跟练。
- 在示例工程目录内启动 Claude Code,按场景描述任务(如顶层接线、Lint 报告、UVM 骨架、testplan)。
- 每次只开一个场景,保留终端会话摘要、生成文件 diff、人工复核结论。
- 整理个人使用备忘:常用说法、目录约定、人工必审项。
分周节奏(可按个人情况伸缩)
- 第 1 天 跟串讲 ep1,确认 Claude 终端与 01 工程 README。
- 第 2~3 天 完成 01 Autowire + 02 Lint/CDC 跟练,保存报告与 summary。
- 第 4~5 天 完成 03 UVM 骨架(comp + sanity)与 04 testplan 提取。
- 第 6~7 天(可选) 自选 SOC2.0/QSPI 副本做一轮真实任务;撰写复盘与面试可讲案例。
四 Skill 与设计验证链路(示意)
Spec 驱动计划 → RTL 接线 → 静态检查 → UVM 落地;四类能力由平台在 Claude 侧预置。
架构框图绘制中…
flowchart LR SPEC["spec / datasheet"] SP["spec-to-testplan\n测试计划 / 缺口表"] RTL["RTL / 顶层骨架"] AW["ic-design-autowire\n接线 + addr_map"] LINT["rtl-lint-cdc-runner\nLint / CDC 报告"] UVM["uvm-tb-bootstrap\nTB 骨架 + sanity"] SPEC --> SP SP --> RTL RTL --> AW AW --> LINT LINT --> UVM
实际工程可并行或迭代;Lint 可在接线前后各跑一轮;testplan 可与 TB 开发交叉评审。
典型功能块说明
下表按教学视角归纳常见职责与设计/验证关注点;具体层次名、信号名与协议细节以你手中的 RTL、顶层例化与课程讲义为准。
ic-design-autowire
职责概要:SoC/子系统顶层端口匹配、模块例化、APB/AHB 译码与 hrdata mux。
设计侧:显式 .port() 连接;输出 addr_map + autowire_report;不擅自定地址。
验证侧:编译/elab 通过;未连接 input 列表为空;报告含映射表与悬空说明。
rtl-lint-cdc-runner
职责概要:Lint / CDC / SpyGlass 批跑与违例聚类摘要。
设计侧:scripts/lint.tcl、cdc.tcl;reports/ 归档;无工具时可静态扫描但须声明。
验证侧:summary 含 Error/Warning 计数;Top 违例带文件:行号;建议动作三类齐全。
uvm-tb-bootstrap
职责概要:UVM-1.2 interface/agent/env/test 分层骨架,默认 VCS。
设计侧:Stage A comp → Stage B sanity;scoreboard/RAL 仅占位。
验证侧:make comp & make run_sanity 通过;类名前缀统一;无 DUT 白盒引用。
spec-to-testplan
职责概要:从规格文档提取 testplan 三张表与寄存器映射。
设计侧:表 A/B/C 结构;缺口项带建议 test 名;未决项标待设计确认。
验证侧:与 expected/testplan_template 结构对齐;无臆造寄存器或功能。
项目核心内容(完整范围)
- VNC 个人工作区与 Claude Code 终端环境。
- AI_Project/projects/01~04 示例工程跟练与验收清单自查。
- Autowire / Lint·CDC / UVM 骨架 / Spec→Testplan 全链路体验。
- 人工复核、边界约束与工程化记录(diff、报告、备忘)。
关键难点与常见卡点
- 把 AI 产出当草稿:地址映射、waiver、P0 定级须人审,不可一键合入。
- Skill 边界混淆:Lint Skill 不改 RTL;Spec Skill 不写 SV;Autowire 不改子模块内部。
- 缺少可复现记录:无命令、无 diff、无复核结论则无法复盘或写进简历。
模块级深度讲解(做什么、看什么、怎么验)
Skill 1 · ic-design-autowire(01_autowire_apb_mini)
重点:阅读 docs/addr_map_spec.md 与顶层骨架;触发 Autowire Skill 完成 GPIO/UART/SPI 例化、译码与 prdata mux;核对 autowire_report 未连接列表。
验收:apb_mini_top.v 可编译;addr_map.md 与规范一致;无双驱动、psel 互斥、hrdata 默认 0。
Skill 2 · rtl-lint-cdc-runner(02_lint_cdc_qspi)
重点:准备 filelist 与约束占位;运行或模拟 Lint/CDC 流程;阅读 reports/summary.md 与 top_violations.md,对已知 CDC 反例完成 triage。
验收:报告含 Error/Warning 计数;Top 违例带文件:行号;每条有「改 RTL / 改约束 / waiver」建议之一。
Skill 3 · uvm-tb-bootstrap(03_uvm_tb_bootstrap_qspi)
重点:对照 EXPECTED_STRUCTURE.md;分阶段生成 tb/ 下 interface、agent、env、sanity test;执行 make comp 与 make run_sanity。
验收:编译与 sanity 零 UVM_ERROR/FATAL;类名前缀统一;TB 未引用 DUT 内部信号。
Skill 4 · spec-to-testplan(04_spec_to_testplan_qspi)
重点:仅基于 spec/ 文档输入;产出 testplan.md 表 A(已覆盖)、表 B(缺口 + P0/P1/P2)、表 C(已知问题);可选 register_map.md。
验收:结构与 expected/testplan_template 对齐;无臆造寄存器;未决项标「待设计确认」。
分阶段执行方案(讲义级节奏)
四段跟练对应四个 Skill 示例工程,末段做个人备忘与可选真实 QSPI 副本扩展;每段以各 README 验收清单为过关标准。
本阶段目标:确认 Claude Code 终端与 AI_Project/projects 布局;浏览 01 工程 README。
与导读的衔接:guide_three「如何开始」+ 串讲 ep1。
讲义节奏(参考):建议 1 天。
任务分解:
- source examapp_user_env.sh;claude --version。
- 浏览 AI_Project/projects/ 下 01~04 目录结构。
- 记录个人工作区路径与「只改副本、保留 log」约定。
建议产出(物证):
- 环境检查截图或终端记录
- 四场景与示例工程对照表
过关标准:能口述四类场景分工;找到 01 工程 README。
本阶段目标:完成 01 顶层接线与 02 Lint/CDC 报告聚类;理解「Skill 出草稿、人审定稿」。
与导读的衔接:module_breakdown Skill 1~2。
讲义节奏(参考):建议 2~3 天。
任务分解:
- 01:按 README 输入清单调用 Autowire;复核 addr_map 与 autowire_report。
- 02:跑 lint/cdc 脚本或按 Skill 静态扫描;填写 top_violations triage。
- 对比 known_issues_seed,确认故意 CDC 反例被召回。
- 保存终端摘要与关键 diff,标注人工修改点。
建议产出(物证):
- apb_mini_top.v / addr_map.md
- reports/summary.md
- triage 笔记
过关标准:01 验收清单全勾;02 至少 3 条违例有明确建议动作。
本阶段目标:03 完成 comp + sanity;04 产出结构化 testplan,建立验证计划与 TB 分工意识。
与导读的衔接:module_breakdown Skill 3~4。
讲义节奏(参考):建议 2~3 天。
任务分解:
- 03:Stage A make comp → Stage B make run_sanity;检查 EXPECTED_STRUCTURE。
- 04:从 spec 提取表 A/B/C;与负责人视角复核 P0 缺口。
- 交叉检查:testplan 表 B 项与 03 sanity 覆盖关系。
- 串讲 ep2 仿真实操对照补漏。
建议产出(物证):
- tb/ 目录与 sanity log
- testplan.md
- 可选 register_map.md
过关标准:sanity 通过;testplan 无臆造项且缺口有优先级。
本阶段目标:整理四类 Skill 调用记录与个人备忘;可选在 QSPI/SOC 副本做一轮真实任务。
与导读的衔接:closing_summary「AI 辅助 IC 工程叙事」。
讲义节奏(参考):建议 2~4 天(扩展可选)。
任务分解:
- 每类 Skill 整理一份:输入、产出、复核结论、踩坑。
- 撰写个人 Skill 使用备忘(触发语、目录约定、禁止事项)。
- 可选:复制 SOC2.0 QSPI 到工作区,任选一条 Skill 做真实演练。
- 准备 5 分钟答辩:人机分工 + 一条最有说服力的案例。
建议产出(物证):
- 四类调用记录
- 个人备忘 Markdown
- 可选扩展 diff
- 答辩提纲
过关标准:备忘可给他人上手;能讲清为何某改动必须人审。
避坑手册
- 未经人工复核直接合入 AI 产出——Autowire 改子模块内部、Lint 自动 waiver 等均须人审。
- 把 Claude 产出当 signoff——地址、优先级、约束变更须人工签字或团队流程。
- 跳过验收清单只追「跑通一次」——无 addr_map / summary / sanity log 无法复盘与写简历。
- 四类场景混在一次对话——建议单场景、单工程、单目标,便于 diff 与审计。
完成标准(你做到这些才算真正做完)
- 四个 Skill 各至少一次有效调用,且保留输入/产出/复核记录。
- 01~04 示例工程 README 验收项基本完成(或等价真实项目案例)。
- 个人 Skill 使用备忘成文,含边界说明与常用命令。
- 能 5~10 分钟讲清四 Skill 链路及一次完整跟练案例。
答辩与简历:AI 辅助 IC 工程叙事
强调「人机分工 + 可审计产物」,而非「AI 帮我写完项目」。
能力证据
- 四类 Skill 各至少一份调用记录:输入、产出文件列表、人工复核结论。
- 01~04 示例工程验收项勾选截图或报告路径(addr_map、summary.md、sanity log、testplan.md)。
差异化价值
- 覆盖 RTL 接线 → 静态检查 → UVM 起步 → 验证计划全链路 AI 提效。
- 能讲清每类 Skill 的禁止事项与团队合规习惯(只改副本、保留 log)。
衔接
- 可对接「验证/设计 Skill 持续上线」路线图与 Yrun Agent 平台。
- 可与 SOC2.0 QSPI、CDC flow 等仿真实践项目组合叙述。
建议产出(可用于复盘/求职)
- 至少完成四类 Skill 各一次有效调用记录(输入、输出、人工复核结论)。
- 一份个人 Skill 使用备忘(常用 prompt、目录约定、注意事项)。
典型实验任务清单(1-2-3 步)
- 申请 VNC 后进入个人工作区,确认 Claude Code 终端可用。
- 按串讲依次在 01~04 示例工程中试跑 Autowire、Lint、UVM、Spec 四类场景。
- 整理调用记录与人工复核结论,形成个人使用备忘。
四 Skill 源码路径
官方 Skill 源码位于服务器只读目录;申请 VNC 后平台会自动同步到 Claude 运行时目录(无需手动 ln)。
在 VNC 终端可用下方命令直接查看各 Skill 的 SKILL.md 与目录结构。
/project/AI_Project/skills/
~/cxjl_practice/.claude_runtime/home/.claude/skills/
| Skill | 官方源码 | 运行时路径 | 查看 |
|---|---|---|---|
|
ic-design-autowire Autowire · 顶层自动接线 |
/project/AI_Project/skills/ic-design-autowire/SKILL.md |
~/cxjl_practice/.claude_runtime/home/.claude/skills/ic-design-autowire/SKILL.md |
|
|
rtl-lint-cdc-runner Lint/CDC · 静态检查编排 |
/project/AI_Project/skills/rtl-lint-cdc-runner/SKILL.md |
~/cxjl_practice/.claude_runtime/home/.claude/skills/rtl-lint-cdc-runner/SKILL.md |
|
|
uvm-tb-bootstrap UVM · 验证环境骨架 |
/project/AI_Project/skills/uvm-tb-bootstrap/SKILL.md |
~/cxjl_practice/.claude_runtime/home/.claude/skills/uvm-tb-bootstrap/SKILL.md |
|
|
spec-to-testplan Spec · 规格转测试计划 |
/project/AI_Project/skills/spec-to-testplan/SKILL.md |
~/cxjl_practice/.claude_runtime/home/.claude/skills/spec-to-testplan/SKILL.md |
|
快速开练命令
cd /home/USER/cxjl_practice
source ~/cxjl_practice/examapp_user_env.sh # Bash 终端
claude --version # 在实践目录启动 Claude Code 即可使用四类 IC 能力
ls -la ~/cxjl_practice/AI_Project/projects/ # 01~04 示例工程
cd ~/cxjl_practice/AI_Project/projects/01_autowire_apb_mini && cat README.md
# 四 Skill 源码(申请 VNC 后平台自动同步,可直接查看 SKILL.md)
ls -la ~/cxjl_practice/.claude_runtime/home/.claude/skills/
cat ~/cxjl_practice/.claude_runtime/home/.claude/skills/ic-design-autowire/SKILL.md # Autowire · 顶层自动接线
cat ~/cxjl_practice/.claude_runtime/home/.claude/skills/rtl-lint-cdc-runner/SKILL.md # Lint/CDC · 静态检查编排
cat ~/cxjl_practice/.claude_runtime/home/.claude/skills/uvm-tb-bootstrap/SKILL.md # UVM · 验证环境骨架
cat ~/cxjl_practice/.claude_runtime/home/.claude/skills/spec-to-testplan/SKILL.md # Spec · 规格转测试计划
建议前置基础
建议具备基础 RTL/验证经验;需已申请 VNC 并能在个人工作区使用 Claude Code。