VIP20
本课程属于:026-断言与随机激励 芯片设计与FPGA · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录 咨询 / 购买

随机用例编写与仿真加速实战

📚 共计 30 章节
第01章
验证方法论概述
为什么需要随机验证?定向测试的局限性,随机验证的核心思想。
方法论基础
第02章
SystemVerilog随机化基础
rand与randc关键字,随机变量的声明与约束块。
SV随机化
第03章
约束块语法详解
约束表达式、权重分布、条件约束、foreach约束。
约束语法
第04章
随机化函数
randomize()函数,pre_randomize与post_randomize回调。
函数回调
第05章
常见随机化场景
随机地址、随机数据、随机长度、随机使能信号。
场景实战
第06章
约束求解器原理
约束求解的机制,如何避免求解失败。
原理调试
第07章
随机化调试技巧
打印随机值,使用$urandom_range,种子管理。
调试技巧
第08章
功能覆盖率基础
covergroup与coverpoint,仓(bin)的定义。
覆盖率基础
第09章
交叉覆盖率
cross覆盖率的定义,过滤非法组合。
交叉覆盖率
第10章
覆盖率驱动的验证
收集覆盖率,分析未覆盖点,调整随机约束。
驱动闭环
第11章
SystemVerilog断言(SVA)基础
立即断言与并发断言,assert/assume/cover。
SVA断言
第12章
SVA序列与属性
sequence定义,property定义,时钟与复位。
序列属性
第13章
SVA在随机验证中的应用
用断言检查随机激励的正确性。
SVA随机
第14章
UVM简介
UVM是什么?为什么用UVM?UVM的基本架构。
UVM架构
第15章
UVM组件
uvm_component与uvm_object,uvm_driver、uvm_monitor、uvm_scoreboard。
组件UVM
第16章
UVM序列与序列器
uvm_sequence、uvm_sequencer,如何发送随机激励。
序列激励
第17章
UVM配置机制
uvm_config_db,如何灵活配置验证环境。
配置UVM
第18章
UVM工厂模式
factory override,实现用例的灵活替换。
工厂重载
第19章
仿真加速概述
为什么仿真慢?加速的常见思路。
加速概述
第20章
编译优化
增量编译、预编译库、优化编译选项。
编译优化
第21章
仿真波形管理
只dump关键信号,使用VCD/FSDB的差异。
波形调试
第22章
多核并行仿真
如何利用多核CPU加速回归测试。
并行多核
第23章
仿真性能分析
识别仿真瓶颈,使用profiling工具。
性能分析
第24章
事务级建模(TLM)
用TLM减少仿真事件,提升速度。
TLM建模
第25章
硬件加速仿真
Emulation与FPGA原型验证简介。
EmulationFPGA
第26章
随机种子管理
种子与复现,回归测试中的种子策略。
种子回归
第27章
回归测试自动化
Makefile/脚本管理回归,结果自动比对。
自动化脚本
第28章
覆盖率合并
多用例覆盖率合并,分析整体验证进度。
合并覆盖率
第29章
验证计划与度量
如何制定验证计划,用度量判断验证完成度。
计划度量
第30章
综合实战案例
一个完整的随机验证项目从零到一。
实战项目