<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: I2S time slots and DMA buffers in Processor Expert Software</title>
    <link>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169689#M313</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I know I am ridiculously late to this thread, but I just came across it(!).&amp;nbsp; I just want anyone reading to know that the offset addresses, minor/major-loop counters, and half-full interrupts in the Kinetis DMA allow that DMA engine to FULLY deinterleave the I2S/SAI timeslot information into individual double-buffered linear sample arrays (arranged as a contiguous block) with no CPU overhead.&amp;nbsp; See my original port on this.&amp;nbsp; As pointed out in other discussions, this whole arrangement of timeslots thru the I2S/SAI FIFO interface relies on matching count operations at both the source and destination, but it works very nicely!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 02 Jul 2013 00:18:12 GMT</pubDate>
    <dc:creator>egoodii</dc:creator>
    <dc:date>2013-07-02T00:18:12Z</dc:date>
    <item>
      <title>I2S time slots and DMA buffers</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169687#M311</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I want to use the DMA controller with the I2S interface (now the SAI on the 120MHz Kinetis K60). &amp;nbsp;When I go to setup a DMA channel with PE, it allows me to define the number of time slots but only one buffer to transmit or receive from.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It would seem that if the DMA channel could split up the time slots, it would require X number of buffers for X number of time slots but I don’t see any capability to set up this buffer structure.&amp;nbsp; Can PE arrange to DMA time slots to separate buffers?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Jun 2012 03:06:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169687#M311</guid>
      <dc:creator>future_boston</dc:creator>
      <dc:date>2012-06-06T03:06:01Z</dc:date>
    </item>
    <item>
      <title>Re: I2S time slots and DMA buffers</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169688#M312</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The SAI device (on the Kinetis 120MHz) does not allow division of “Time slots” data stream. &lt;BR /&gt;Data frames (x frames) are stored in a one data stream buffer. Data arrangement in the data buffer is dependent on the sequence transmission "Time slots" 0,1,2,... in frame.&lt;BR /&gt;For a I2S codec are used only 2 time slots (0,1) and data arrangement in buffer is &lt;/P&gt;&lt;P&gt;Slot:&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;BR /&gt;LeftChannel, RightCHannel,&amp;nbsp;&amp;nbsp;&amp;nbsp; // Sample 0&lt;BR /&gt;LeftChannel, RightCHannel,&amp;nbsp;&amp;nbsp;&amp;nbsp; // Sample 1&lt;BR /&gt;LeftChannel, RightCHannel,&amp;nbsp;&amp;nbsp;&amp;nbsp; // Sample 2&lt;BR /&gt;LeftChannel, RightCHannel,&amp;nbsp;&amp;nbsp;&amp;nbsp; // Sample 3&lt;BR /&gt;...&lt;BR /&gt;LeftChannel, RightCHannel,&amp;nbsp;&amp;nbsp;&amp;nbsp; // Sample n&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;=&amp;gt; Buffer arrangement:&amp;nbsp; uint16_t Buffer[2][SampleNum];&amp;nbsp; // first index: 0 = LeftChannel, 1= RightChanne&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Sep 2012 08:46:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169688#M312</guid>
      <dc:creator>jiri_rezler</dc:creator>
      <dc:date>2012-09-24T08:46:15Z</dc:date>
    </item>
    <item>
      <title>Re: I2S time slots and DMA buffers</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169689#M313</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I know I am ridiculously late to this thread, but I just came across it(!).&amp;nbsp; I just want anyone reading to know that the offset addresses, minor/major-loop counters, and half-full interrupts in the Kinetis DMA allow that DMA engine to FULLY deinterleave the I2S/SAI timeslot information into individual double-buffered linear sample arrays (arranged as a contiguous block) with no CPU overhead.&amp;nbsp; See my original port on this.&amp;nbsp; As pointed out in other discussions, this whole arrangement of timeslots thru the I2S/SAI FIFO interface relies on matching count operations at both the source and destination, but it works very nicely!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jul 2013 00:18:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169689#M313</guid>
      <dc:creator>egoodii</dc:creator>
      <dc:date>2013-07-02T00:18:12Z</dc:date>
    </item>
    <item>
      <title>Re: I2S time slots and DMA buffers</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169690#M314</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Can you provide a link to your original post on this. I'd like to see it, and couldn't find it among your activity.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Nov 2014 15:08:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169690#M314</guid>
      <dc:creator>bosleymusic_com</dc:creator>
      <dc:date>2014-11-12T15:08:44Z</dc:date>
    </item>
    <item>
      <title>Re: I2S time slots and DMA buffers</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169691#M315</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I don't use PE, and my 'demo' is not for Version 2 silicon, but you should still get some ideas on how to use DMA to create double-buffer linear data areas:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/thread/81904"&gt;is there any demo code for using I2S?&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Nov 2014 15:47:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/I2S-time-slots-and-DMA-buffers/m-p/169691#M315</guid>
      <dc:creator>egoodii</dc:creator>
      <dc:date>2014-11-12T15:47:38Z</dc:date>
    </item>
  </channel>
</rss>

