附录 DProof Accelerator 选型指南
选型决策树
根据你的设计中包含的硬件结构类型,选择对应的 Proof Accelerator:
设计中有什么硬件结构?
├── 缓存(Cache)
│ ├── 通用缓存验证 → jasper_cache
│ └── 多路组相联 → jasper_model_cache_way
├── FIFO / 缓冲
│ ├── 标准 FIFO → jasper_model_fifo
│ └── 带优先级 FIFO → jasper_model_fifo_priority
├── 存储器
│ ├── 单端口 RAM → jasper_model_ram
│ ├── 多端口 RAM → jasper_model_mpram
│ ├── 通用 Memory → jasper_model_mem
│ └── 带优先级访问 → jasper_model_mem_priority
├── 数据通路
│ ├── 通用 → jasper_datapath
│ ├── 单端口 → jasper_datapath_1port
│ ├── 双时钟(CDC)→ jasper_datapath_1port_2clk
│ ├── 带 FIFO → jasper_datapath_fifo
│ └── 带 Memory → jasper_datapath_mem
├── 算术单元
│ ├── 乘法器 → jasper_model_multiplier
│ └── 除法器 → jasper_model_divider
├── 计分板(Scoreboard)
│ ├── 通用 → jasper_scoreboard
│ ├── 双端口 → jasper_scoreboard_2
│ ├── 多通道 → jasper_scoreboard_3
│ ├── 自由运行 → jasper_scoreboard_free
│ └── 带优先级 → jasper_scoreboard_priority
├── 电源管理
│ └── 电源定序器 → jasper_power_sequencer
└── 其他
└── 频率抖动/扩频时钟 → jasper_model_frequency_jitter
使用方法
使用 Proof Accelerator 的一般步骤:
- 在 Tcl 脚本中导入 PA 模型
- 将 PA 的端口连接到 DUT 的对应信号
- PA 内部包含预定义的断言,自动验证 DUT 行为是否符合预期模型
- PA 内部优化了抽象模型,证明速度比手写断言快
各 PA 概览
| PA | 用途 | 关键特性 |
|---|---|---|
jasper_cache | 缓存验证 | 验证缓存一致性、替换策略、命中/缺失 |
jasper_datapath | 数据通路 | 验证数据传输正确性、背压、流控 |
jasper_model_fifo | FIFO 模型 | 上溢/下溢检测、数据完整性、指针检查 |
jasper_model_mem | 存储器模型 | 读写冲突、数据保持、地址映射 |
jasper_model_multiplier | 乘法器模型 | 验证乘法结果正确性 |
jasper_model_divider | 除法器模型 | 验证除法/取余结果、除零处理 |
jasper_scoreboard | 计分板 | 验证数据包顺序、完整性、无丢失 |
jasper_power_sequencer | 电源定序器 | 验证电源状态转换顺序 |
jasper_model_frequency_jitter | 频率抖动 | 扩频时钟验证 |
来源文档
proof_accelerators/jasper_cache.pdfproof_accelerators/jasper_datapath.pdfproof_accelerators/jasper_datapath_1port.pdfproof_accelerators/jasper_datapath_1port_2clk.pdfproof_accelerators/jasper_datapath_fifo.pdfproof_accelerators/jasper_datapath_mem.pdfproof_accelerators/jasper_model_cache_way.pdfproof_accelerators/jasper_model_divider.pdfproof_accelerators/jasper_model_fifo.pdfproof_accelerators/jasper_model_fifo_priority.pdfproof_accelerators/jasper_model_frequency_jitter.pdfproof_accelerators/jasper_model_mem.pdfproof_accelerators/jasper_model_mem_priority.pdfproof_accelerators/jasper_model_mpram.pdfproof_accelerators/jasper_model_multiplier.pdfproof_accelerators/jasper_model_ram.pdfproof_accelerators/jasper_power_sequencer.pdfproof_accelerators/jasper_scoreboard.pdfproof_accelerators/jasper_scoreboard_2.pdfproof_accelerators/jasper_scoreboard_3.pdfproof_accelerators/jasper_scoreboard_free.pdfproof_accelerators/jasper_scoreboard_priority.pdf