Hey all; I hope you’re all doing good.
My DUT (wrriten in vhdl) has 3 interfaces of the same bus protocol “pro”.
I have pro_itf interface
interface pro_itf
bit [5:0] a;
bit [5:0] b;
endinterface
then a container of that interface
interface arr_pro_itf
pro_itf pro_itf_array[2];
endinterface
In uvm tb_top module
i intstantiated the container
module top
arr_pro_itf arr_pro_vitf;
dut dut_i();
//to map dut signals to my sv interfaces I did as follows
genvar idx;
generate
for(idx=0;idx<=itf_num;idx++) begin
arr_pro_vitf.pro_itf_array[idx].a=assign dut_i.a[idx];
end
endgenerate
The compiler prints me an error about indexing (idx)