搜索
您的当前位置:首页正文

第一章 功能验证技术与方法学概要

来源:欧得旅游网

1.1 功能验证与验证平台

在芯片设计过程中,验证是覆盖面比较广的课题,其中主要包括功能验证、物理验证、时序验证等内容。
验证平台(testbench)需要提供更多的自动化机制来提高每一个测试用例(testcase)的功能覆盖率和减少创建测试用例的时间。

1.1.1 专用芯片设计流程

1.1.2 什么是验证

验证是确保设计和预定的设计期望一致(吻合)的过程。设计期望通常是通过一个或者多个设计规范来定义的。对于专用集成芯片设计,在不同的阶段存在如下形式的验证。

1.1.3 验证平台可以做些什么

验证平台的主要功能如下。

  1. 产生激励。直接测试和随机测试;
  2. 把激励应用到被测设计中。在验证平台中,实现这种功能的验证组件(VerificationComponent,VC)被称为事务处理器(transactor)或者总线功能模型(BusFunctionModel,BFM)。
  3. 检查结果和验证测试是否通过,也就是确保被测设计的输出和期望一致。通过视图(波形窗口)检查;通过自动化的后处理比较:记录被测设计的输出,通过运行脚本来比对结果;做一个实时的监察器可以及时自动检查。

1.1.4 功能验证流程

验证过程可以被分解成三个主要阶段:制定验证策略和验证计划;创建验证平台,运行和调试;覆盖率分析和回归测试。

1.2 验证技术和验证方法学

本节将介绍三种常用验证手段:白盒、黑盒和灰盒验证;三种主要的验证技术:形式验证、仿真验证和硬件加速验证;三种重要的验证方法学:随机激励生成、断言验证和覆盖率驱动验证。

1.2.1 黑盒、白盒与灰盒验证

  1. 黑盒验证
    黑盒验证(black-box verification)指的是只通过其边界信号来验证一个模块或者设计的功能。黑盒验证的一般的架构如图1-7所示。
    黑盒验证存在下列主要的缺点。
    1)很难验证和设计相关的特点。
    2)很难调试。
    3)要求一个精确的参考模型。
  2. 白盒验证
    在白盒验证中,可以不需要参考模型,因为可以通过在设计内部或者外部输出信号放置监控器和断言来保证设计操作的正确性。
  3. 灰盒验证
    灰盒验证是一个综合了白盒和灰盒的一个手段,也就是在设计内部添加监控器和断言来减少对参考模型的精确要求,在错误发现的时候也减少调试的压力。

1.2.2 验证技术

可以用来作为功能验证的技术主要可以分成以下三类。
1)形式验证(formal verification)。
2)仿真验证(simulation based verification )。
3)硬件辅助加速验证(hardware assisted verification/acceleration and emulation )。

1.2.3 验证存在的挑战

  1. 完备性
  2. 可重用性
  3. 可靠性
  4. 效率
  5. 性能

1.2.4 验证方法学

采用断言验证(ABV)、约束随机激励测试(CRTB)、覆盖率驱动验证(CDV)等技术将大大提高验证效率,为验证团队缩短验证周期,快速定位错误,加速激励生成和有效的实现验证收敛,如图1-12所示。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top