附录 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 的一般步骤:

  1. 在 Tcl 脚本中导入 PA 模型
  2. 将 PA 的端口连接到 DUT 的对应信号
  3. PA 内部包含预定义的断言,自动验证 DUT 行为是否符合预期模型
  4. PA 内部优化了抽象模型,证明速度比手写断言快

各 PA 概览

PA用途关键特性
jasper_cache缓存验证验证缓存一致性、替换策略、命中/缺失
jasper_datapath数据通路验证数据传输正确性、背压、流控
jasper_model_fifoFIFO 模型上溢/下溢检测、数据完整性、指针检查
jasper_model_mem存储器模型读写冲突、数据保持、地址映射
jasper_model_multiplier乘法器模型验证乘法结果正确性
jasper_model_divider除法器模型验证除法/取余结果、除零处理
jasper_scoreboard计分板验证数据包顺序、完整性、无丢失
jasper_power_sequencer电源定序器验证电源状态转换顺序
jasper_model_frequency_jitter频率抖动扩频时钟验证

来源文档

  • proof_accelerators/jasper_cache.pdf
  • proof_accelerators/jasper_datapath.pdf
  • proof_accelerators/jasper_datapath_1port.pdf
  • proof_accelerators/jasper_datapath_1port_2clk.pdf
  • proof_accelerators/jasper_datapath_fifo.pdf
  • proof_accelerators/jasper_datapath_mem.pdf
  • proof_accelerators/jasper_model_cache_way.pdf
  • proof_accelerators/jasper_model_divider.pdf
  • proof_accelerators/jasper_model_fifo.pdf
  • proof_accelerators/jasper_model_fifo_priority.pdf
  • proof_accelerators/jasper_model_frequency_jitter.pdf
  • proof_accelerators/jasper_model_mem.pdf
  • proof_accelerators/jasper_model_mem_priority.pdf
  • proof_accelerators/jasper_model_mpram.pdf
  • proof_accelerators/jasper_model_multiplier.pdf
  • proof_accelerators/jasper_model_ram.pdf
  • proof_accelerators/jasper_power_sequencer.pdf
  • proof_accelerators/jasper_scoreboard.pdf
  • proof_accelerators/jasper_scoreboard_2.pdf
  • proof_accelerators/jasper_scoreboard_3.pdf
  • proof_accelerators/jasper_scoreboard_free.pdf
  • proof_accelerators/jasper_scoreboard_priority.pdf