K60 eDMA performance

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

K60 eDMA performance

K60 eDMA performance

   1.  K60 eDMA

  • 16-channel implementation
  • Local memory containing transfer control descriptors for each of the 16 channels
  • 32-byte TCD stored in local memory for each channel



   2.  DMA memory to memory performance

  • In the traditional M2M data movement, performance is best expressed as the peak data transfer rates
  • In most implementations, this transfer rate is limited by the speed of the source and destination address spaces.

    3.  eDMA peak transfer rate

pastedImage_4.png

  4. Performance test

        With K60 100MHz (TWR-K60D100M), implement internal SRAM-SRAM eDMA data transfer. If  transfer size setting as 32-bit in TCD Transfer Attributes (DMA_TCD_ATTR), there will has one wait state during each read/write. That's why the DMA performance doesn't up to 200MB/s as the manual stated.

      We highly recommend setting DMA transfer size to 16-byte at DMA_TCD_ATTR register, it will much increase the DMA performance.(Get 162MB/s transfer rate with TWR-K60D100M board.)

  1. 5.  Testing code attached.







Labels (1)
%3CLINGO-SUB%20id%3D%22lingo-sub-1112262%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EK60%20eDMA%20performance%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1112262%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CSTRONG%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%26nbsp%3B%26nbsp%3B%201.%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3EK60%20eDMA%3C%2FSPAN%3E%3C%2FSTRONG%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CUL%3E%3CLI%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E16-channel%20implementation%3C%2FSPAN%3E%3C%2FLI%3E%3CLI%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3ELocal%20memory%20containing%20transfer%20control%20descriptors%20for%20each%20of%20the%2016%20channels%3C%2FSPAN%3E%3C%2FLI%3E%3CLI%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E32-byte%20TCD%20stored%20in%20local%20memory%20for%20each%20channel%3C%2FSPAN%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%20style%3D%22margin-top%3A%20auto%3B%20margin-bottom%3A%20auto%3B%22%3E%3CSTRONG%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Times%20New%20Roman'%2C'serif'%3B%22%3E%26nbsp%3B%26nbsp%3B%202.%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20%23464646%3B%22%3EDMA%20memory%20to%20memory%20performance%3C%2FSPAN%3E%3C%2FSTRONG%3E%20%3CSTRONG%20style%3D%22color%3A%20%23464646%3B%20font-size%3A%2032.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%22%3E%3CBR%20%2F%3E%20%3C%2FSTRONG%3E%3C%2FP%3E%3CUL%3E%3CLI%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3EIn%20the%20traditional%20M2M%20data%20movement%2C%20performance%20is%20best%20expressed%20as%20the%20peak%20data%20transfer%20rates%20%3C%2FSPAN%3E%3C%2FLI%3E%3CLI%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3EIn%20most%20implementations%2C%20this%20transfer%20rate%20is%20limited%20by%20the%20speed%20of%20the%20source%20and%20destination%20address%20spaces.%3C%2FSPAN%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%20style%3D%22margin-top%3A%20auto%3B%20margin-bottom%3A%20auto%3B%22%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%203.%26nbsp%3B%20%3C%2FSPAN%3E%3CSTRONG%20style%3D%22color%3A%20%23464646%3B%20font-size%3A%2012.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%22%3EeDMA%20peak%20transfer%20rate%3C%2FSTRONG%3E%3C%2FP%3E%3CP%20style%3D%22margin-top%3A%20auto%3B%20margin-bottom%3A%20auto%3B%22%3E%3CSTRONG%20style%3D%22color%3A%20%23464646%3B%20font-size%3A%2012.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22pastedImage_4.png%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22pastedImage_4.png%22%20style%3D%22width%3A%20652px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F50285iFB045E54A22FE7DA%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22pastedImage_4.png%22%20alt%3D%22pastedImage_4.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSTRONG%3E%3C%2FP%3E%3CP%3E%3C%2FP%3E%3CP%20style%3D%22margin-top%3A%20auto%3B%20margin-bottom%3A%20auto%3B%22%3E%26nbsp%3B%20%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E4.%20%3C%2FSPAN%3E%3CSTRONG%20style%3D%22color%3A%20%23464646%3B%20font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%22%3EPerformance%20test%3CBR%20%2F%3E%20%3C%2FSTRONG%3E%3CSTRONG%3E%3CBR%20%2F%3E%3C%2FSTRONG%3E%3C%2FP%3E%3CP%20style%3D%22margin-top%3A%204.0pt%3B%20margin-bottom%3A%20auto%3B%20margin-left%3A%20.4in%3B%20text-indent%3A%20-20.15pt%3B%22%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3EWith%20K60%20100MHz%20(TWR-K60D100M)%2C%20%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3Eimplement%20internal%20SRAM-SRAM%20%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3EeDMA%20data%20transfer.%20If%26nbsp%3B%20transfer%20size%20setting%20as%2032-bit%20in%20TCD%20Transfer%20Attributes%20(DMA_TCD_ATTR)%2C%20there%20will%20has%20one%20wait%20state%20during%20each%20read%2Fwrite.%20That's%20why%20the%20DMA%20performance%20doesn't%20up%20to%20200MB%2Fs%20as%20the%20manual%20stated.%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%20%3CBR%20%2F%3E%20%3C%2FSPAN%3E%3C%2FP%3E%3CP%20style%3D%22margin-top%3A%204.0pt%3B%20margin-bottom%3A%20auto%3B%20margin-left%3A%20.4in%3B%20text-indent%3A%20-20.15pt%3B%22%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20We%20highly%20recommend%20setting%20DMA%20transfer%20size%20to%2016-byte%20at%20DMA_TCD_ATTR%20register%2C%20it%20will%20much%20increase%20the%20DMA%20performance.(%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3EGet%20162MB%2Fs%20transfer%20rate%20with%20TWR-K60D100M%20board.)%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%20%3CBR%20%2F%3E%20%3C%2FSPAN%3E%3C%2FP%3E%3COL%20style%3D%22list-style-type%3A%20decimal%3B%22%3E%3CLI%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E5.%26nbsp%3B%20Testing%20code%20attached.%3C%2FSPAN%3E%3C%2FLI%3E%3C%2FOL%3E%3CP%20style%3D%22margin-top%3A%204.0pt%3B%20margin-bottom%3A%20auto%3B%20margin-left%3A%20.4in%3B%20text-indent%3A%20-20.15pt%3B%22%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3C%2FSPAN%3E%3C%2FP%3E%3CP%20style%3D%22margin-top%3A%204.0pt%3B%20margin-bottom%3A%20auto%3B%20margin-left%3A%20.4in%3B%20text-indent%3A%20-20.15pt%3B%22%3E%3CSPAN%20style%3D%22font-size%3A%2010.0pt%3B%20font-family%3A%20'Lucida%20Sans%20Unicode'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3C%2FSPAN%3E%3C%2FP%3E%3CP%20style%3D%22margin-top%3A%20auto%3B%20margin-bottom%3A%20auto%3B%22%3E%3CSPAN%20style%3D%22font-size%3A%2012.0pt%3B%20font-family%3A%20'Arial'%2C'sans-serif'%3B%20color%3A%20black%3B%22%3E%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1112262%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3EKinetis%20K%20Series%20MCUs%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
No ratings
Version history
Last update:
‎03-31-2015 02:37 AM
Updated by: