FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
5875 Discussions

SGDMA is not generating SOP/EOP

Honored Contributor I

I'm using the mem-to-stream configuration of the SGMDA IP. I'm using SignalTap to monitor the transfers. I do see the data transferring but there is no sop or eop with the transfer. I am using the API so this looks like it should be easy: 


alt_avalon_sgdma_construct_mem_to_stream_desc ( 

&TxMemPktsToCaviumDesc_DMA[k][i], // descriptor 

i==0?&TxMemPktsToCaviumDesc_DMA[k][i+1]:0, // next descriptor 

TxMemPacketsToCaviumBuf[i+(k*8)], // read pointer 

0, // buffer length (in bytes) 

0, // write not fixed 

1, // SOP enabled for avalon-st interface 

1, // EOP enabled for avalon-st interface 

0 /* there is only 1 channel */ ); 


I can get just an eop if I specify GENERATE_EOP in the DESC_CONTROL BIT Map. 

Does anyone know what the issue might be?
0 Kudos
1 Reply
Honored Contributor I

I didn't get any ideas from the forum but what I found out is the descriptor is controlling the SOP/EOP generation. After I set the WRITE_FIXED_ADDRESS bit in the descriptor.control field I started getting SOP/EOPs. I'm still confused why I have to set the descriptor.control fields instead of the API parameters for SOP and EOP.