Verification -- Basic Concepts ~ 2. Verification Stages
Verification Stages
Verification 的不同阶段可能因所使用的特定验证流程或方法而异。
但是,Verification 中的一些常见阶段包括:
- 规划:在此阶段,定义验证目标、目的和范围,并制定验证计划。
- 测试平台开发:此阶段设计开发一个测试平台环境,该环境可以激发设计并为测试提供适当的输入。
- 测试创建:在此阶段,根据验证计划中指定的要求和方案创建测试。
- 测试执行:在设计上执行上一阶段创建的测试,并分析结果。
- 覆盖率分析:分析设计的覆盖率指标,以确定可能存在的任何覆盖率差距。
- 调试:此阶段设计识别和解决在前面阶段发现的任何设计问题或 bug。
- 闭合:在最后阶段,对验证结果进行分析,以确定设计是符合要求的规范,并正式结束验证过程。
level
Verification 可以在设计中的不同抽象级别或层次结构中执行。以下是一些常用的验证级别:
- 单元级别:这是最低级别的验证,涉及验证设计中的单个模块。他通常涉及运行功能模拟和执行代码覆盖率分析。例如,4 位加法器模块。
- 模块级别:在此级别,将多个模块集成在一起并进行验证。目标是确保在相互连接时正常工作。模块级验证通常涉及运行定向测试、随机测试和覆盖率分析。例如,DRAM 控制器。
- 子系统级别:此级别涉及验证一组协同工作以执行特定功能的模块。在此级别,重点是验证模块之间的接口,并确保子系统满足其功能要求。例如,GPU可能由多个模块组成,例如渲染引擎,着色器核心,内存接口和显示控制器。
- 芯片级、SOC(片上系统)级别:这是最高级别的验证,涉及验证整个芯片或SOC,包括所有子系统及其互连。目标是确保整个系统满足其功能要求并按预期工作。这通常涉及运行系统级仿真、性能分析和形式验证。例如,由处理器内核、内存控制器和多个外设 IP 块 (如 USB、以太网和 SATA)组成的 SOC。
每个级别的验证都建立在前一个级别的基础上,有助于确保最终产品满足其功能要求。