Forum Discussion

daimatsu_kiki's avatar
daimatsu_kiki
Icon for New Contributor rankNew Contributor
11 months ago

About mSGDMA core settings

I have a project in Quartus 18.0 that incorporates Nios2 for Cyclone IVE.

In this project, packets received over Triple-Speed Ethernet are forwarded to an external SDRAM via mSGDMA.

There is a setting in the mSGDMA core configuration that I don't understand: what is the 'Maximum Transfer Length' parameter in the mSGDMA core for transferring what data from where to where?(User Guide: UG-0185 Chapter.30 'Modular Scatter-Gather DMA core')

I thought this was a parameter for transferring incoming packets from mSGDMA to SDRAM, but when I checked with Signal Tap it seems to be different.When the FPGA receives a 1518-byte packet with 'Maximum Transfer Length=1KB', mSGDMA seems to transfer all the packet data to SDRAM in a single transfer.I would have expected the transfer to SDRAM to be split into two transfers.

Could you please tell me what the 'Maximum Transfer Length' setting is?

P.S. mSGDMA is Memory-Mapped to Streaming mode and prefetcher enabled.

5 Replies

  • tehjingy_Altera's avatar
    tehjingy_Altera
    Icon for Regular Contributor rankRegular Contributor

    Hi


    The Maximum Transfer Length parameter is the maximum length a data could be stored in a descriptor.

    A descriptor sets up the transfer parameters for a DMA channel transfer. If in general the data you are passing is smaller you could set this parameter to be smaller to increase the performance.


    Regards

    Jingyang, Teh


    • daimatsu_kiki's avatar
      daimatsu_kiki
      Icon for New Contributor rankNew Contributor

      Thank you for your answer.


      Maximum Transfer Length parameter is the maximum value that can be set in the length field of the descriptor, isn't it?


      For example, when the FPGA receives a 1518-byte packet with 'Maximum Transfer Length=1KB', will the mSGDMA controller create two descriptors?
      (Descriptor 1: Length = 1024,
      Descriptor 2: Length = 494)


      Regards

  • tehjingy_Altera's avatar
    tehjingy_Altera
    Icon for Regular Contributor rankRegular Contributor

    Hi


    As we do not receive any response from you on the previous question/reply/answer that we have provided. Please login to ‘https://supporttickets.intel.com/s/?language=en_US’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.


    Regards

    Jingyang, Teh