Forum Discussion
Altera_Forum
Honored Contributor
9 years agoHello, guys. I"m also trying to use mSGDMA IP.
So I have a question regarding data length. Did you try to use data length not multiple of data bus width? My configuration is as follows Transfer mode: MM->ST Data width: 32 DAta FIFO depth: 256 Descriptor fifo: 128 Maximum Transfer Length: 1 KB Length width: 20 Transfer Type: Unaligned access Burst Enable: on Maximum Burst Count: 64 Force Burst Alignment: off Packet Enable: On Channel Enable: On, 4 Error Enable: On, 8 From what I see in simulations: If I set Descriptor as follows: Start addr: whatever (let's take 0x0) Length : 51 ( any not multiple of 4 bytes) Flags: Go,SOP,ErrDonEn,Channel,Error,!EOP So msgdma initiates two transfers: 1. Read burst request for 12 * 4 bytes 2. Read request for the last data for 3 bytes But in the result on ST interface we get 52 bytes without any notice that the last byte is invalid (cause no EoP thus no empty signal) So does anyone knows method of transferring not multiple of bus width bytes via MM->ST interface?