My Avalon-ST packages looks like this:
> SOP : __| |_____________________
> CHx : __|0|1|2|3|4|5|6|7|8|9|___
> DATA : __ X X X X X X X X X X ___
> VALID : __|¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬|___
> EOP : ____________________| |___
I’ve tried to feed the avalon_st_transmit function with an array of channel-vectors but it won’t eat it:
avalon_st_transmit(AVALON_ST_VVCT, 0, v_test_in_channel(0 to CHANNELS-1), v_test_in_data(0 to CHANNELS-1), "sourcing input data", C_SCOPE);
When calling the function within a loop, the function will encapsulate every single channal as a package:
for i in 0 to CHANNELS-1 loop
avalon_st_transmit(AVALON_ST_VVCT, 0, v_test_in_channel(i), v_test_in_data(i to i), "sourcing input data", C_SCOPE);
end loop;
What is the right way to do it?