【发布时间】:2020-07-19 17:37:33
【问题描述】:
我有一个带有 2 个相同类型接口的 DUT。我创建了 2 个代理来驱动这两个接口。我的想法是在接口端口上驱动相同的信号来测试特定的场景。因此,我想创建一个序列并将其驱动到代理的两个序列器。但我得到一个错误。代码如下:
my_sequencer m_seqr[2];
my_sequence m_seq;
for(int i=0; i<2; i++) begin
fork
int idx = i;
m_seq.start(p_sequencer.m_seqr[i];
join_none
end
我没有展示完整的代码来保持帖子的简短。我认为我的声明和初始化是正确的,因为我有一个类似的测试,其中 2 个序列输入 2 个序列发生器正常工作。
我的问题是如何实现将相同序列驱动到 2 个或更多序列器的目标?
错误如下(未添加完整的错误行):
uvm_test_top.m_env.m_my_agent_env.m_my_agent[1].m_seqr@@m_in_seq%0d[SEQ_NOT_DONE] Sequuence .... already started
【问题讨论】:
标签: system-verilog uvm