UVM中phase的执行顺序

1 uvm中引入phase的原因代码的书写顺序会影响代码的实现(代码之间存在依赖关系,如代码b依赖于代码a),所以区分出build_phase、connect_phase等,让被依赖的phase(代码a)先执行,依赖的phase(代码b)后执行,这样可以解决因代码顺序杂乱可能会引发的问题。
2 uvm中phase的执行顺序
按上图所示顺序自上而下执行不同phase,且同类phase执行完后, 需要进行等待同步 ,然后才能执行下一类phase。而同类phase中不同component在uvm树种执行顺序如下:build_phase:在uvm树中依据自上而下的顺序启动,顺序运行除了build_phase之外的function phase:在uvm树中依据自下而上的顺序启动,顺序运行task_phase:在uvm树中依据 自下而上的顺序启动,同时运行 (通过fork...join_none多线程方式)直系关系的component兄弟关系的component:在uvm树中依据字典序叔侄关系的component:在uvm树中依据深度优先(即优先侄component执行)3 uvm中引入objection的原因上文提到代码会依据不同phase的顺序自上而下执行,且同类phase执行完后, 需要进行等待同步 。而引入objection就是为了更好的控制同类phase中执行代码的同步用的。
4 uvm中引入domain的原因体现不同component的独立性。例如,把两个时钟域隔开, 这样两个时钟域内的各个动态运行( run_time) 的phase就可以不必同步了。使用该机制可以搭建多时钟域dut的uvm仿真平台。
注意:domain 只能隔离run-time的phase , 对于其他phase, 其实还是同步的, 即两个domain的run_phase依然是同步的, 其他的function phase也是同步的。

事件驱动的体系结构的一些想法
不再被闹钟“吓”醒?LED灯光佛系起床方式成亮点
iPhone8发布会倒计时:iPhone8、iPhone8Plus、iPhoneX即将上市,iPhone 8发布会6大亮点汇总
如何把控A型应急照明集中电源的切换時间
冷链温湿度监测系统的功能介绍
UVM中phase的执行顺序
吉利与FF联手,两个“疯子”的梦想秀,20亿能让贾跃亭梦想成真?
到底哪个国家的5G芯片最强?
PADS 9.0新增的无模命令Z 的使用详解
河北联通在雄安新区首次发布了5G品牌标识5Gn以及7+33+n 5G网络部署
电子管调频收音机的简单制作
怎样导出苹果手机中的QQ聊天记录,详细教程推荐
降噪无线蓝牙音质排名 目前降噪效果最好的耳机
人工智能未来十大趋势
变频器对电机的损伤包括哪几个方面?是如何对电机产生不良影响的?
钠离子电池的优势有哪些呢
世纪龙的《区块链文件分享溯源》应用案例成功入选
COFT控制模式的Buck LED驱动芯片中COFF的配置和注意事项
小米电视5系列到底值不值购买
当下是智能门锁竞争尤为激烈 智能锁将迎来黄金发展期