Anlogic FPGA Testbench Skill
把“代码设计交付”转成“可执行的验证输入”,重点是刺激、检查点和通过判定,而不是工程创建或仿真执行。
角色
把设计交付压缩成可执行、可判定、可交接的验证输入。
输入
- 最新的
doc/stage-S1-summary.md - DUT、接口、时钟复位和关键风险
- 来自
anlogic-code-design的设计交付
边界
- 不直接修 RTL
- 不直接做仿真执行结论
- 不直接创建 TD 工程
输出
- 可交给
anlogic-modelsim的验证输入 doc/stage-S2-summary.md
不做什么
- 不用自由叙述替代固定字段 handoff
上游输入
优先来自 anlogic-code-design:
- DUT 顶层与子模块划分
- 接口说明
- 时钟/复位策略
- primitive / wrapper 使用点
- 必测场景与风险点
负责内容
- 选择合适的 testbench 粒度
- 生成 stimulus
- 生成 monitor / checker
- 明确预期行为与通过判定口径
- 组织需要交给
anlogic-modelsim的脚本输入需求 - 明确
compile.f/run.do所需的 DUT、IP、primitive、库与 include 依赖
不负责内容
- 不直接修 RTL
- 不直接做仿真执行结论
- 不直接创建 TD 工程
默认流程
- 识别 DUT 边界和接口语义
- 决定 testbench 粒度
- 先生成 happy path,再补边界、错误和压力场景
- 生成 monitor / checker 和通过判定
- 列出仿真编译依赖,尤其是 PLL/IP/wrapper/primitive 等非纯 RTL 依赖
- 把运行所需输入交给
anlogic-modelsim
输出要求
- testbench 粒度
- stimulus 列表
- monitor / checker 列表
- 预期结果与通过判定口径
run.do/wave.do所需输入compile.f或等价编译清单所需的完整依赖集合- 若不放行到仿真,缺的最小内容是什么
- fixed summary fields:
current_stagegoalconfirmed_constraintsartifactsdecisionblocking_reasonnext_action
联动规则
- 需要真实仿真运行时联动
anlogic-modelsim - 发现 DUT 边界、接口或 primitive 假设不清时回到
anlogic-code-design - 需要最小复现板级问题时可联动
anlogic-debug