《冬夜读书之UVM实战》
文章平均质量分 92
开设本专栏的目的,主要用于反复理解学习张强老师的书籍《UVM实战》一书,在回顾这本书的过程中,会穿插一些验证行业必须学会的重要难点、要点。俗话说,纸上得来终觉浅,绝知此事要躬行。看懂未必真懂,实践方知。我们的口号是:看懂代码不是目的,要以点带面,要举一反三,进而写出高规格的代码!!!
那么菜
仗剑天涯,谁来也不怕
展开
-
#C2#S2.2~S2.3# 加入 factory/objection/virtual interface 机制
读者可以简单地将drop_objection语句当成是finish函数的替代者,只是在drop_objection语句之前必须先调用 raise_objection语句,raise_objection和drop_objection总是成对出现。在UVM验证平台中,只 要一个类使用uvm_component_utils注册且此类被实例化了,那么这个类的main_phase就会自动被调用。一个run_test语句会创建一个my_driver的实例,并且会自动调用my_driver的main_phase。原创 2023-05-23 20:34:14 · 556 阅读 · 0 评论 -
#C2#S2.1# 一个简单的UVM验证平台
类有函数(function),另外还可以有任务(task),通过这些函数和任务可以完成driver的输出激励功能,完 成monitor的监测功能,完成参考模型的计算功能,完成scoreboard的比较功能。在main_phase的声明中,有一个uvm_phase类型的参数phase,在真正的验证平台 中,这个参数是不需要用户理会的。(一)所有派生自uvm_driver的类的new函数有两个参数,一个是string类型的name,一个是uvm_component类型的parent。二是判断的标准是什么。原创 2023-05-06 21:45:17 · 661 阅读 · 0 评论