<?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: About performance of SDRAM in IMXRT1050/60-EVK(B) in i.MX RT Crossover MCUs</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/About-performance-of-SDRAM-in-IMXRT1050-60-EVK-B/m-p/783738#M610</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The performance results you've collected look as the realistic ones. The reason is that TCM is accessed with the internal 64-bit wide AXI bus at core clock frequency, whereas SDRAM is accessed through the external (to the core) SEMC module on only 16-bit wide bus with lower clock frequency and higher latency. So, there seems to be no way to increase the code execution performance from SDRAM.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Artur&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 31 Oct 2018 09:12:02 GMT</pubDate>
    <dc:creator>art</dc:creator>
    <dc:date>2018-10-31T09:12:02Z</dc:date>
    <item>
      <title>About performance of SDRAM in IMXRT1050/60-EVK(B)</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/About-performance-of-SDRAM-in-IMXRT1050-60-EVK-B/m-p/783737#M609</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am hoping to use SDRAM somehow at high speed, but now it is very slow than TCM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I measured performance of "Number of calls to vApplicationIdleHook per sec".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"vApplicationIdleHook" is as follows.&amp;nbsp;This makes it possible to know how many times the vApplicationIdleHook was called in one second.&lt;/P&gt;&lt;DIV style="color: #d4d4d4; background-color: #1e1e1e; font-weight: normal; font-size: 16px;"&gt;&lt;DIV&gt;&lt;SPAN style="color: #4ec9b0;"&gt;uint32_t&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;g_u32CurrentRun&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;=&lt;/SPAN&gt; &lt;SPAN style="color: #b5cea8;"&gt;0u&lt;/SPAN&gt;&lt;SPAN style="color: #d4d4d4;"&gt;;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt;DefKERNEL_SECTION_ITCM&lt;/SPAN&gt; &lt;SPAN style="color: #569cd6;"&gt;void&lt;/SPAN&gt; &lt;SPAN style="color: #dcdcaa;"&gt;vApplicationIdleHook&lt;/SPAN&gt;&lt;SPAN style="color: #d4d4d4;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #569cd6;"&gt;void&lt;/SPAN&gt;&lt;SPAN style="color: #d4d4d4;"&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #4ec9b0;"&gt;uint32_t&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;primask;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;__asm&lt;/SPAN&gt; &lt;SPAN style="color: #9cdcfe;"&gt;volatile&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #ce9178;"&gt;"MRS&lt;/SPAN&gt; &lt;SPAN style="color: #f44747;"&gt;%&lt;/SPAN&gt;&lt;SPAN style="color: #ce9178;"&gt;0, primask"&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;:&lt;/SPAN&gt; &lt;SPAN style="color: #ce9178;"&gt;"=r"&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;(primask) );&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;__asm&lt;/SPAN&gt; &lt;SPAN style="color: #9cdcfe;"&gt;volatile&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #ce9178;"&gt;"cpsid i"&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;: : :&lt;/SPAN&gt; &lt;SPAN style="color: #ce9178;"&gt;"memory"&lt;/SPAN&gt;&lt;SPAN style="color: #d4d4d4;"&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;g_u32CurrentRun&lt;/SPAN&gt;&lt;SPAN style="color: #d4d4d4;"&gt;++&lt;/SPAN&gt;&lt;SPAN style="color: #d4d4d4;"&gt;;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;__asm&lt;/SPAN&gt; &lt;SPAN style="color: #9cdcfe;"&gt;volatile&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #ce9178;"&gt;"MSR primask,&lt;/SPAN&gt; &lt;SPAN style="color: #f44747;"&gt;%&lt;/SPAN&gt;&lt;SPAN style="color: #ce9178;"&gt;0"&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;: :&lt;/SPAN&gt; &lt;SPAN style="color: #ce9178;"&gt;"r"&lt;/SPAN&gt; &lt;SPAN style="color: #d4d4d4;"&gt;(primask) :&lt;/SPAN&gt; &lt;SPAN style="color: #ce9178;"&gt;"memory"&lt;/SPAN&gt;&lt;SPAN style="color: #d4d4d4;"&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;other condition is as follows.&lt;BR /&gt;1. Kernel is on TCM.&lt;BR /&gt;2. Kernel is on SDRAM with chache&lt;BR /&gt;3. kernel is on SDRAM wtihout cache.&lt;/P&gt;&lt;P&gt;In all conditions, I used IMXRT1060-EVK with MCUXPresso IDE(GCC 7.2.1 20170904 (release) [ARM/embedded-7-branch revision 255204]) &amp;amp; -O2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a result is as follows. (A larger number indicates a higher performance)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="performance.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/66598i52995C75435FA652/image-size/large?v=v2&amp;amp;px=999" role="button" title="performance.png" alt="performance.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;With TCM you get nearly maximum performance&lt;/STRONG&gt;, but SDRAM is not far from that.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there any way to get SDRAM performance a bit more?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for reference, I atached projet File and xlsx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We are looking forward to your advice.&lt;/P&gt;&lt;P&gt;T.Kashiwagi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 30 Oct 2018 15:40:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/About-performance-of-SDRAM-in-IMXRT1050-60-EVK-B/m-p/783737#M609</guid>
      <dc:creator>Takashi_Kashiwagi</dc:creator>
      <dc:date>2018-10-30T15:40:25Z</dc:date>
    </item>
    <item>
      <title>Re: About performance of SDRAM in IMXRT1050/60-EVK(B)</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/About-performance-of-SDRAM-in-IMXRT1050-60-EVK-B/m-p/783738#M610</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The performance results you've collected look as the realistic ones. The reason is that TCM is accessed with the internal 64-bit wide AXI bus at core clock frequency, whereas SDRAM is accessed through the external (to the core) SEMC module on only 16-bit wide bus with lower clock frequency and higher latency. So, there seems to be no way to increase the code execution performance from SDRAM.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Artur&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 31 Oct 2018 09:12:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/About-performance-of-SDRAM-in-IMXRT1050-60-EVK-B/m-p/783738#M610</guid>
      <dc:creator>art</dc:creator>
      <dc:date>2018-10-31T09:12:02Z</dc:date>
    </item>
    <item>
      <title>Re: About performance of SDRAM in IMXRT1050/60-EVK(B)</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/About-performance-of-SDRAM-in-IMXRT1050-60-EVK-B/m-p/783739#M611</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Petukhov&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for the advice!!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;gt; The reason is that TCM is accessed with the internal 64-bit wide AXI bus at core clock frequency, whereas SDRAM is accessed through the &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;gt; external (to the core) SEMC module on only 16-bit wide bus with lower clock frequency and higher latency.&amp;nbsp;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;I thought that it will be a little earlier because there is a cache, but I understood that it will not be &lt;SPAN&gt;earlier&lt;/SPAN&gt;.&lt;/P&gt;&lt;P&gt;(I want the DDR 2 interface......)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;T.Kashiwagi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE data-fulltext="" data-placeholder="翻訳" dir="ltr"&gt;&lt;/PRE&gt;&lt;P&gt;.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 31 Oct 2018 12:14:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/About-performance-of-SDRAM-in-IMXRT1050-60-EVK-B/m-p/783739#M611</guid>
      <dc:creator>Takashi_Kashiwagi</dc:creator>
      <dc:date>2018-10-31T12:14:42Z</dc:date>
    </item>
  </channel>
</rss>

