build_phase
build_phase的执行顺序在整个层次上看遵循从上到下,但在一个组件内中的build_phase是顺序顺序执行。create的本质就是创建对象,本质是调用new函数。所以在build_phase中呈现的顺序会出现跳转现象。当在build_phase中执行到create函数时,它会去执行所要创建的组件的new函数,若果所要创建的组件的new函数中,有super.new(),它会再次跳转到父类中的new函数中进行执行,如果父类还有那就继续跳转。执行完毕后,在一层层的回归到最开始的地方。这就是UVM常说的钩子机制,像“钩子”一样,将用户想要的UVM层次给创建出。
顶层basic_test
第二层 env(如果有二个agent,按照深度优先法则,将第一个完全创建完毕后,递归到此处,在执行第二个agent的创建)
第三次agt