Honored Contributor II
10-25-2011 03:10 PM
Hi!I use DMA chaining app generated by MegaWizard. Inside I use find_mem_bar(bar_table, 6'b000001, 28, rc_slave_bar), which finds my first BAR (that is BAR0 256 MBytes, addr: 10000000, Non-Prefetchable). Having found the BAR, I try this: ebfm_barwr_imm(bar_table, rc_slave_bar, 17'h1FFFC, 32'hDEAD_BEEF, 4, 0), where DEAD_BEEF is my data, 4 is length, 0 is tclass, 17'h1FFFC is offset. Well, it works, but I can't use 1FFFF offset size - it won't send anything. I think that's because only 1FFFC can be divided by 4, by why is that so? What do I do if I need offset that is not dividable by 4? If the offset can not be divided by 8 (but can be by 4), sop and eop come simultaneously, and there is some mess in the wave (like with 1FFFC). Why? Does it mean that I can only use offsets that are aligned like this?