微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > 我对这段OVM代码搞不懂?

我对这段OVM代码搞不懂?

时间:10-02 整理:3721RD 点击:
我在学习OVM是,仿照它提供的xbus代码,发现有这么一段,很难搞懂!那位大侠帮帮我啊!
virtual protected function void perform_transfer_coverage();
-> cov_transaction;
for (int unsigned i = 0; i < trans_collected.size; i++) begin
addr = trans_collected.addr + i;
data = trans_collected.data[i];
wait_state = trans_collected.wait_state[i];
-> cov_transaction_beat;
end
endfunction : perform_transfer_coverage
主要是不知道为何要这样去给addr,data,wait_state赋值!

赋值后腰发给scoreboard的吧

你打算怎么复制呢?没把问题表述清楚

这个task用于sample coverage数据,它触发了两个event,cover_transaction和cover_transaction_beat,分别用于sample cover_trans和cover_trans_beat两个covergroup。
for loop只是将每一个data的读/写地址/数据送给 protected变量addr, data, wait_state等,以供covergroup cov_trans_beat 来采集而已。

楼上的正解

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top