UVM(八)之transaction及field_automation
field_automation机制的使用
UVM中使用field_automation机制来完成这些事情。
加入了uvm_objection_utils_begin(mac_transaction)这样一句,这句话跟我们前面提到的factory机制时提到的uvm_objection_utils非常相似。事实上,这其实就是factory机制的实现。field_automation机制并不能单独使用宏来实现。
uvm_field_array_A表示的是动态数组,A表示动态数字中存放的内容的类型。
uvm_field_*系列宏具体都做了什么呢?
如上一节讲过的print和compare函数,现在,就可以不用写任何代码就可以调用print了:
transaction使用的一些技巧
1.“尽量做到”
2.在uvm_field_*宏前后使用if语句