System verilog 在面试中解释DUT的验证

System verilog 在面试中解释DUT的验证,system-verilog,verification,uvm,System Verilog,Verification,Uvm,我明天要参加一个面试,几乎在我参加的每一次面试中都有人问我这个问题 给定DUT+规格,如何验证 有人能简单地解释一下我应该如何开始回答这个问题吗?我应该考虑什么(测试计划优先考虑优先级、测试平台环境、覆盖范围等)? 注:答案不必特定于此DUT。我想全面了解如何解释这一点 提前感谢显然,关于如何验证DUT,有很多方法(和很多观点) 这只是众多观点中的一种。即使存在顺序,一些步骤也可以更改,甚至可以根据特定于设计的需求合并或跳过 研究规范(显然) 收集测试需求。 A.高级-块大小、TB的可能用户、所

我明天要参加一个面试,几乎在我参加的每一次面试中都有人问我这个问题

给定DUT+规格,如何验证

有人能简单地解释一下我应该如何开始回答这个问题吗?我应该考虑什么(测试计划优先考虑优先级、测试平台环境、覆盖范围等)?

注:答案不必特定于此DUT。我想全面了解如何解释这一点


提前感谢

显然,关于如何验证DUT,有很多方法(和很多观点)

这只是众多观点中的一种。即使存在顺序,一些步骤也可以更改,甚至可以根据特定于设计的需求合并或跳过

  • 研究规范(显然)
  • 收集测试需求。 A.高级-块大小、TB的可能用户、所需输出、TB的输入类型
    B低级别/详细信息-特定调试要求
  • 开发顶级TB体系结构文档
  • 制定顶级测试计划
  • 可以将顶级测试计划转换为或制定详细的测试计划
  • 开发或衍生功能覆盖率excel表。[大多数模拟器将支持跟踪此类表]
  • 导出随机控制变量列表和变量的范围/约束。[可选]
  • 低级TB文档-描述指定驱动程序、代理、接口
  • 根据上述输入——设计复杂性和tb,制定进度计划。[此步骤本身可以部分进行]
  • 开始脚本开发-用于运行和回归等
  • 根据测试计划开发和部署测试用例
  • 报告/文件错误-监控错误率
  • 监控和测量覆盖率-代码和功能
  • 达到100%的覆盖率(理想情况下),但实际上一些商定的目标和0个错误计数(白日梦)
  • 结束验证并宣布成功
  • <强>路上要考虑的事情>/P> 1) 1)这是系统级、全芯片、块级验证环境还是ASIC或FPGA

    2) 根据复杂性,需要多少级别的结核病

    e、 多块级->少个子系统->单块全芯片环境

    3) 基于项目持续时间和结束时间–您是否需要支持FPGA和/或仿真

    4) 正式验证–哪些是块

    5) 是否需要软件团队的协同仿真。您是否需要使用软件/架构(architecture)团队提供的API

    6) 是否需要生成向量–测试人员向量、提出向量

    7) 您希望如何检查测试通过标准

    a。模型/记分牌-

    一,。架构模型

    二,。事务级模型(以上更详细)

    iii.循环精确模型。(例如仲裁者)

    b。断言–运行时+正式

    8) 重复使用对价

    a。序列

    一,。初始化

    二,。数据/控制

    b。记分牌

    c。代理人

    9) 调试要求

    a。输出格式

    b。用于监视和提取信息的工具


    10) 哪种语言、模拟器和工具最符合要求

    显然,关于如何验证DUT,有很多方法(和很多观点)

    这只是众多观点中的一种。即使存在顺序,一些步骤也可以更改,甚至可以根据特定于设计的需求合并或跳过

  • 研究规范(显然)
  • 收集测试需求。 A.高级-块大小、TB的可能用户、所需输出、TB的输入类型
    B低级别/详细信息-特定调试要求
  • 开发顶级TB体系结构文档
  • 制定顶级测试计划
  • 可以将顶级测试计划转换为或制定详细的测试计划
  • 开发或衍生功能覆盖率excel表。[大多数模拟器将支持跟踪此类表]
  • 导出随机控制变量列表和变量的范围/约束。[可选]
  • 低级TB文档-描述指定驱动程序、代理、接口
  • 根据上述输入——设计复杂性和tb,制定进度计划。[此步骤本身可以部分进行]
  • 开始脚本开发-用于运行和回归等
  • 根据测试计划开发和部署测试用例
  • 报告/文件错误-监控错误率
  • 监控和测量覆盖率-代码和功能
  • 达到100%的覆盖率(理想情况下),但实际上一些商定的目标和0个错误计数(白日梦)
  • 结束验证并宣布成功
  • <强>路上要考虑的事情>/P> 1) 1)这是系统级、全芯片、块级验证环境还是ASIC或FPGA

    2) 根据复杂性,需要多少级别的结核病

    e、 多块级->少个子系统->单块全芯片环境

    3) 基于项目持续时间和结束时间–您是否需要支持FPGA和/或仿真

    4) 正式验证–哪些是块

    5) 是否需要软件团队的协同仿真。您是否需要使用软件/架构(architecture)团队提供的API

    6) 是否需要生成向量–测试人员向量、提出向量

    7) 您希望如何检查测试通过标准

    a。模型/记分牌-

    一,。架构模型

    二,。事务级模型(以上更详细)

    iii.循环精确模型。(例如仲裁者)

    b。断言–运行时+正式

    8) 重复使用对价

    a。序列

    一,。初始化