UVM:10.5.2 聚合参数的优势与问题

前端之家收集整理的这篇文章主要介绍了UVM:10.5.2 聚合参数的优势与问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1.使用聚合参数后,可以将此参数类的指针放在virtual sequencer中:


2.当sequence 要动态改变验证平台某个变量时,如下:



3.甚至可以将interface 也放入聚合参数:



4.这样,无论是driver 还是monitor 中,都可以直接用cfg.vif,不必在使用config_db 来得到interface:


1)因为interface 藏在cfg 里。

2)如果cfg 赋给sequencer,那么10.3.1 的sequencer 也不必使用get 得到接口。


5.my_config是一个object,不是component。使用get时,get_full_name 得到的结果是例化的名字。所以base_test中cfg 的名字要与top_tb中config_db::set一直。如:


或者


6.最方便如下:



7.聚合参数大大方便验证平台的搭建。将这个指针赋给任意的component, 这些components 再也不需要config_db::get。当某个组件要增加一个参数时,只要

1)在聚合类加入此参数。

2)在测试用例中直接为其赋值。

3)然后在验证平台中直接使用。



8.加入不使用聚合类,而是config_db,设置:


driver:


1)减少set,出错概率降低。

2)不完美,成员变量对所有components 可见。

3)降低可重用性。

猜你在找的设计模式相关文章