导读:作者有幸在中国电子信息领域的排头兵院校“电子科技大学”攻读研究生期间,接触到前沿的数字IC验证知识,旁听到诸如华为海思、清华紫光、联发科技等业界顶尖集成电路相关企业面授课程,对数字IC验证有了一些知识积累和学习心得。为帮助想入门前端IC验证的朋友,思忱一二后,特开此专栏,以期花最短的时间,走最少的弯路,学最多的IC验证技术知识。
文章目录
- 一、学习目标
- 二、Sequence 概述
-
- 2.1、uvm_sequence class 普通成员
- 2.2、Sequence 执行流程
- 2.3、流程到代码的映射
- 2.4、Sequence class要求
- 2.5、sequence class callbacks
- 2.6、User Sequence with callback
- 2.7、工程师可以手动创建和发送sequence_item
- 2.8、Sequencer 与 driver 之间的通信机制
- 2.9、sequence 中的 randc 随机变量
- 2.10、利用rand sequence数组实现不同的应用场景(scenario sequence)
- 2.11、嵌套 sequence
- 2.12、在测试用例中执行user sequences
- 2.13、小结
- 二、配置 sequence
-
- 3.1、基于 instance 配置 sequence
- 3.2、基于 instance 配置 sequence 的好处
- 3.3、基于 sequencer 配置 sequence
- 3.4、基于 sequencer 配置 sequence 的好处
- 3.5、基于 agent 配置 sequence
- 3.6、在phase中隐式执行sequence
- 3.7、显式执行sequence
- 3.8、sequence 的优先级 priority 和权重 weight(了解即可)
- 3.9、Sequencer-Driver 响应端口(response port)
- 3.10、Sequencer - Driver 乱序端口
- 3.11、乱序 Driver
- 3.12、小结
- 参考
一、学习目标
- 通过 uvm_sequence 基类扩展用户 sequence
- 构建复杂的 sequence
- sequence的嵌套:nested_sequence
- 配置sequence
- 配置机制:uvm_config_db #(类型)::set(范围,路径,配置变量,配置值) 【获取用get】
- 在不同的phase阶段执行不同的sequence
- 启动sequence就是通过config_db,所以可以通过config_db可以配置不同的sequence在不同阶段(phase)去启动
- sequence的优先级和权重
- 多种sequence的调度
<