「SV4V」1 Introduction

“有些人相信,我们缺乏能够描述这个完美世界的编程语言……”

​ ——– 《黑客帝国》,1999

硬件验证语言(Hardware Verification Language,HVL)与硬件描述语言(HDL)相比,具有以下典型性质:

  • 受约束的随即激励生成
  • 功能覆盖率
  • 更高层次的结构,尤其是面向对象的编程
  • 多线程及线程间的通信
  • 支持HDL数据类型,如Verilog的四状态数值
  • 集成了事件仿真器,便于对设计施加控制

基本概念

硬件设计:创建一个基于设计规范并能完成特定任务的设备。

硬件验证:确保该设备是对规范的一种准确表达。

测试平台的功能:

  • 产生激励
  • 把激励加到DUT上
  • 捕捉响应
  • 校验正确性
  • 对照整个验证目标测算进展情况

验证方法学的基本原则:

  • 受约束的随即激励
  • 功能覆盖率
  • 使用事务处理器的分层测试平台
  • 对所有测试通用的测试平台
  • 独立于测试平台之外的个性化测试代码
  • 图:覆盖率收敛过程

测试平台构件

  • 总线功能模块(BFM):AMBA、USB、PCI、SPI总线等

###分层的测试平台

  • 信号层:待测设计和把设计连接到测试平台的信号
  • 命令层:驱动器、监视器、断言
    • 驱动器:驱动了待测试设计的输入
    • 监视器:检测信号变化并按命令分组
    • 断言:监视独立信号,寻找穿越整个命令的信号变化
  • 功能层:代理、计分板、校验器
    • 代理:也称事务处理器,接收上层事务,分解成独立命令
    • 计分板:预测事务结果
    • 校验器:比较来自监视器和计分板的命令
  • 场景层:发生器
  • 测试层:测试、功能覆盖率
  • 图:分层测试平台

###仿真环境的阶段

  • 建立(build)
    • 生成配置
    • 建立环境
    • 复位待测设计
    • 配置待测设计
  • 运行(run)
    • 启动环境
    • 运行测试
  • 收尾(wrap-up)
    • 清空
    • 报告
---------Thanks for your attention---------
0%