Uvm _tlm_fifo是一个组件类(一端对一端),继承于uvm_component,且内置了多个端口,内部内置了一个Mailbox,该mailbox没有尺寸限制,Uvm _tlm_fifo的多个端口都是利用该mailbox进行数据读写。
Uvm _tlm_fifo有三个参数,继承于component的两个,name 和 parent ,还有一个size,可以自己修改,默认为1,存一个数。
uvm_tlm_analysis_fifo 是一个新的组件,继承于uvm_tlm_fifo ,所以既有面向单一tlm端口的数据缓存特性,还具有一个uvm_analysis_imp 端口uvm_analysis_port端口和write()函数。(即实现一对一,又实现一对多)
uvm_tlm_analysis_fifo一般用于checker里,
这样的话在顶层env层就可以把各个monitor 的analysis_port连接到checker上对应的uvm_tlm_analysis_fifo
(多个port可以连接到同一个export或imp,像reg_agent 总线的monitor的analysis_port还得跟predictor的bus_in 连接)