<?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: Choosing between ITCM and DTCM on IMXRT in i.MX RT Crossover MCUs</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Choosing-between-ITCM-and-DTCM-on-IMXRT/m-p/899363#M2921</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi John&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt;&amp;nbsp;&lt;EM style="background-color: #ffffff; color: #000000; "&gt;Is there a simple guide that illustrates why this is so? I'd be interested to know why R/W variables shouldn't be put in ITCM or why code shouldn't be put in DTCM.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;The best performance is achieved by placing the instruction in ITCM and the data in DTCM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cortex-M7 is equipped with a superscalar.&amp;nbsp;Because of this, Cortex-M7 partially processes instructions simultaneously.&amp;nbsp;Therefore, ITCM and DTCM have different I / F bit widths and numbers.&lt;/P&gt;&lt;P&gt;The connection between ITCM, DTCM and CPU (TCU) is as follows:(The access bit width of ITCM is 64 bit * 1, and t&lt;SPAN&gt;he access&amp;nbsp;bit width of DTCM is 32 bit * 2.&lt;/SPAN&gt;)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="fig01.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/80812iE7C3C674061C3FEF/image-size/large?v=v2&amp;amp;px=999" role="button" title="fig01.png" alt="fig01.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://www.aps-web.jp/academy/m7/06/" title="https://www.aps-web.jp/academy/m7/06/"&gt;バスアーキテクチャ｜Cortex-M7編&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you want to know more info, Please confirm "Arm Cortex-M7 Processor Technical Reference Manual 5.8. TCM interfaces.(&lt;A href="http://infocenter.arm.com/help/index.jsp?lang=en"&gt;http://infocenter.arm.com/help/index.jsp?lang=en&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;RM&amp;nbsp;describes&amp;nbsp;that&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;SPAN style="color: #000000; background-color: #ffffff; font-size: small;"&gt;The&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #000000; background-color: #ffffff; font-size: small;"&gt;&lt;EM&gt;Prefetch Unit&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff; font-size: small;"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;(PFU) can fetch instructions from any of the TCM interfaces. The&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #000000; background-color: #ffffff; font-size: small;"&gt;&lt;EM&gt;Load Store Unit&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff; font-size: small;"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;(LSU) and the AHBS interface can each read and write data using any of the TCM interfaces. Best performance is achieved if code is placed in ITCM and data in DTCM. However, there is no functional restriction in which TCM, code and data is placed.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;T.Kashiwagi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 25 Apr 2019 01:11:47 GMT</pubDate>
    <dc:creator>Takashi_Kashiwagi</dc:creator>
    <dc:date>2019-04-25T01:11:47Z</dc:date>
    <item>
      <title>Choosing between ITCM and DTCM on IMXRT</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Choosing-between-ITCM-and-DTCM-on-IMXRT/m-p/899362#M2920</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I believe that ITCM can be used for R/W variables as well as code. Similarly DTCM be used for code as well as R/W variables. I assume that code, (and const data?), should be placed in ITCM and R/W&amp;nbsp;variables should be placed in DTCM. Is there a simple guide that illustrates why this is so? I'd be interested to know why R/W variables shouldn't be put in ITCM or why code shouldn't be put in DTCM.&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;John&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 17 Apr 2019 15:30:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Choosing-between-ITCM-and-DTCM-on-IMXRT/m-p/899362#M2920</guid>
      <dc:creator>jaldridge</dc:creator>
      <dc:date>2019-04-17T15:30:19Z</dc:date>
    </item>
    <item>
      <title>Re: Choosing between ITCM and DTCM on IMXRT</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Choosing-between-ITCM-and-DTCM-on-IMXRT/m-p/899363#M2921</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi John&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt;&amp;nbsp;&lt;EM style="background-color: #ffffff; color: #000000; "&gt;Is there a simple guide that illustrates why this is so? I'd be interested to know why R/W variables shouldn't be put in ITCM or why code shouldn't be put in DTCM.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;The best performance is achieved by placing the instruction in ITCM and the data in DTCM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cortex-M7 is equipped with a superscalar.&amp;nbsp;Because of this, Cortex-M7 partially processes instructions simultaneously.&amp;nbsp;Therefore, ITCM and DTCM have different I / F bit widths and numbers.&lt;/P&gt;&lt;P&gt;The connection between ITCM, DTCM and CPU (TCU) is as follows:(The access bit width of ITCM is 64 bit * 1, and t&lt;SPAN&gt;he access&amp;nbsp;bit width of DTCM is 32 bit * 2.&lt;/SPAN&gt;)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="fig01.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/80812iE7C3C674061C3FEF/image-size/large?v=v2&amp;amp;px=999" role="button" title="fig01.png" alt="fig01.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://www.aps-web.jp/academy/m7/06/" title="https://www.aps-web.jp/academy/m7/06/"&gt;バスアーキテクチャ｜Cortex-M7編&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you want to know more info, Please confirm "Arm Cortex-M7 Processor Technical Reference Manual 5.8. TCM interfaces.(&lt;A href="http://infocenter.arm.com/help/index.jsp?lang=en"&gt;http://infocenter.arm.com/help/index.jsp?lang=en&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;RM&amp;nbsp;describes&amp;nbsp;that&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;SPAN style="color: #000000; background-color: #ffffff; font-size: small;"&gt;The&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #000000; background-color: #ffffff; font-size: small;"&gt;&lt;EM&gt;Prefetch Unit&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff; font-size: small;"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;(PFU) can fetch instructions from any of the TCM interfaces. The&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #000000; background-color: #ffffff; font-size: small;"&gt;&lt;EM&gt;Load Store Unit&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff; font-size: small;"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;(LSU) and the AHBS interface can each read and write data using any of the TCM interfaces. Best performance is achieved if code is placed in ITCM and data in DTCM. However, there is no functional restriction in which TCM, code and data is placed.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;T.Kashiwagi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Apr 2019 01:11:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Choosing-between-ITCM-and-DTCM-on-IMXRT/m-p/899363#M2921</guid>
      <dc:creator>Takashi_Kashiwagi</dc:creator>
      <dc:date>2019-04-25T01:11:47Z</dc:date>
    </item>
    <item>
      <title>Re: Choosing between ITCM and DTCM on IMXRT</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Choosing-between-ITCM-and-DTCM-on-IMXRT/m-p/899364#M2922</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Takashi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for this answer. I understand this a bit better now.  I'm &lt;/P&gt;&lt;P&gt;getting used to where to find information, between NXP and ARM documents.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;John Aldridge&lt;/P&gt;&lt;P&gt;John Aldridge CEng MIET - Senior Design Engineer - Direct: +44 1903 737353 &lt;/P&gt;&lt;P&gt;- Fax:  - E-Mail: JAldridge@parker.com&lt;/P&gt;&lt;P&gt;Parker Hannifin Manufacturing Ltd - Electromechanical &amp;amp; Drives Division &lt;/P&gt;&lt;P&gt;Europe - New Courtwick Lane ? Littlehampton? West Sussex, UK ? BN17 7RZ&lt;/P&gt;&lt;P&gt;Phone.: + 44 (0)1903 737000 - Fax: + 44 (0)1903 737 123&lt;/P&gt;&lt;P&gt;Parker Hannifin Manufacturing Ltd - Registered in London no 4806503&lt;/P&gt;&lt;P&gt;Registered Office - Parker House ? 55 Maylands Ave ? Hemel Hempstead ? HP2 &lt;/P&gt;&lt;P&gt;4SJ ? United Kingdom&lt;/P&gt;&lt;P&gt;  &lt;A href="https://community.nxp.com/www.parker.com/eme" target="test_blank"&gt;www.parker.com/eme&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Apr 2019 07:54:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Choosing-between-ITCM-and-DTCM-on-IMXRT/m-p/899364#M2922</guid>
      <dc:creator>jaldridge</dc:creator>
      <dc:date>2019-04-25T07:54:30Z</dc:date>
    </item>
  </channel>
</rss>

