本章目录:
1. 浅谈一下phase机制
在不同的时间做不同的事情,这是phase机制的特点,将UVM仿真阶段层次化。
注意的是:左边9个phase是串行执行的,而run phase衍生出来的12个task(其实是由4个task加上pre和post构成)和run的关系是并行执行的。但是12个phase也是按先后顺序执行的。为了避免不必要的干扰,用户可以选择run_phase,或者12个phase中的若干来完成激励,但是请不要将它们混合起来使用,因为这样容易导致执行关系的不明确。
上图是各个phase的功能及典型应用,其中最主要的就是要了解build、connect、run、report,重中之重!!!
- 这九个phase中,除了build phase和final phase是自顶向下顺序执行的以外,其余的7个phase都是自底向上执行的;
- 每个类中的所有phase都是串行执行的,而各个类中的同一个phase是并行执行的,当所有类中的某个phase都执行完成之后,在执行下一个phase。比如:每个类都先并行执行build phase,当所有的类都执行完该机制之后,它们紧接着并行执行下一个机制,即connect phase,依次执行。
- 只有run phase是耗时的,为task phase,其它都是function phase。
=======================================================================
未完待续…
声明
本人所有系列的文章,仅供学习,不可商用,如有侵权,请告知,立删!!!
本人主要是记录学习过程,以供自己回头复习,再就是提供给后人参考,不喜勿喷!!!
如果觉得对你有用的话,记得收藏+评论!!!