UVM自学笔记:项目之五——完善agent(driver、monitor、sequencr)
目录
1.driver的编写
我们将driver的所有信号都完善,并且在reset_phase执行reset_do()命令,对所有信号进行上电复位的初始化。完善好的driver代码如下:
2.monitor代码编写:
在编写monitor的时候,采用了和编写driver不同的方式,这种方式实现起来相对简单一些,具体思路就是控制好每个时钟上升沿是否检测地址、控制信号以及数据信号,如果检测到了,就将数据打包入m_trans内,然后打印到控制台上。由于比较简单,就不多赘述了。直接上代码
3.slave_module的完善
4.跑一下testcase
20笔trans,10笔读,10笔写。具体的trans如下,来自于driver和monitor(一共20笔)
...................................................3-17
用vcs看一下波形
截至目前,已经完成了agent内的所有组件的编写,接下来我们要将验证平台与DUT相连接,然后完成scoreboard的编写。