<?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>i.MX ProcessorsのトピックRe: SMP Cache Coherency on i.MX6</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/SMP-Cache-Coherency-on-i-MX6/m-p/778720#M120972</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;Hello,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; Please check design, using the recent Design Checklist in Hardware Development Guide for i.MX 6.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fcache.nxp.com%2Fassets%2Fdocuments%2Fdata%2Fen%2Fuser-guides%2FIMX6DQ6SDLHDG.pdf" rel="nofollow" target="_blank"&gt;http://cache.nxp.com/assets/documents/data/en/user-guides/IMX6DQ6SDLHDG.pdf&lt;/A&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;In particular:&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;- VDD_SOC_IN requires a 66 uF bulk capacitance.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;- Minimum 85mohm external ESR is required for VDD_HIGH_CAP.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; Refer to EB814 for details. &lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;SPAN style="text-decoration: underline;"&gt;&lt;A href="http://cache.nxp.com/files/32bit/doc/eng_bulletin/EB814.pdf"&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;A href="http://cache.nxp.com/files/32bit/doc/eng_bulletin/EB814.pdf" target="test_blank"&gt;http://cache.nxp.com/files/32bit/doc/eng_bulletin/EB814.pdf&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;You may create request (ticket) about some non-published i.MX6 cache implementation details.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;A class="link-titled" href="https://www.nxp.com/support/support:SUPPORTHOME?tid=sbmenu" title="https://www.nxp.com/support/support:SUPPORTHOME?tid=sbmenu"&gt;Support|NXP&lt;/A&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Have a great day,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Yuri&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Note: If this post answers your question, please click the Correct Answer &lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;button. Thank you!&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 28 Feb 2018 04:05:38 GMT</pubDate>
    <dc:creator>Yuri</dc:creator>
    <dc:date>2018-02-28T04:05:38Z</dc:date>
    <item>
      <title>SMP Cache Coherency on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/SMP-Cache-Coherency-on-i-MX6/m-p/778719#M120971</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've been having problems with the cache coherency on the i.MX6 SABRE Lite.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As I understand it, providing that I set up the MMU/caches/SCU/SMP bit correctly, I should not have to perform any explicit cache operations in order for the cached memory to be kept coherent between multiple cores.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I writing a custom bootloader, and the issue that I'm having is that sometimes when I power the board (at least once in every 10 runs), the cache coherency seems to not be working properly, but other times it appears to be working fine. In the cases where it is not working, I can attach a debugger and see that the memory is not coherent between the cores.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My boot sequence is as follows (in pseudocode)&amp;nbsp;-&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;boot_entry_point: &lt;BR /&gt; if (core 0) [invalidate whole&amp;nbsp;SCU; Enable SCU] &lt;BR /&gt; disable dcache &lt;BR /&gt; disable icache &lt;/SPAN&gt;&lt;SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt; disable mmu &lt;BR /&gt; enable SMP (including setting ACTLR.FW bit)&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt; invalidate &lt;/SPAN&gt;&lt;SPAN&gt;TLB &lt;BR /&gt; invalidate dcache &lt;BR /&gt; invalidate icache &lt;BR /&gt; enable mmu &lt;BR /&gt; enable dcache &lt;BR /&gt; enable icache &lt;BR /&gt; if (core 0) [GOTO core0_specific] &lt;BR /&gt; else [GOTO coreN_specific] &lt;BR /&gt;&lt;BR /&gt;core0_specific: &lt;BR /&gt; invalidate l2cache &lt;BR /&gt; enable l2cache &lt;BR /&gt; start cores 1..N at address boot_entry_point &lt;BR /&gt; branch to main &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;BR /&gt;coreN_specific: &lt;BR /&gt; branch to main &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;For the coherent memory areas, I have the MMU Map setup as Shared, Inner and Outer Write Back Write Allocate.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I have also implemented any relevant Errata from the i.MX6 Dual/Quad Chip Errata (e.g. ERR004325), though I believe that the coherency doesn't work too often for it to be down to a chip Errata.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I have a Zynq 7000 board (ARM A9 Dual Core) running very similar code that does not show any problems. Is there any reason why the cache coherency would not work as I expect on the i.MX6 SABRE Lite?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Jon&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Feb 2018 15:09:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/SMP-Cache-Coherency-on-i-MX6/m-p/778719#M120971</guid>
      <dc:creator>jonathanankers</dc:creator>
      <dc:date>2018-02-27T15:09:24Z</dc:date>
    </item>
    <item>
      <title>Re: SMP Cache Coherency on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/SMP-Cache-Coherency-on-i-MX6/m-p/778720#M120972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;Hello,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; Please check design, using the recent Design Checklist in Hardware Development Guide for i.MX 6.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fcache.nxp.com%2Fassets%2Fdocuments%2Fdata%2Fen%2Fuser-guides%2FIMX6DQ6SDLHDG.pdf" rel="nofollow" target="_blank"&gt;http://cache.nxp.com/assets/documents/data/en/user-guides/IMX6DQ6SDLHDG.pdf&lt;/A&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;In particular:&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;- VDD_SOC_IN requires a 66 uF bulk capacitance.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;- Minimum 85mohm external ESR is required for VDD_HIGH_CAP.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp; Refer to EB814 for details. &lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;SPAN style="text-decoration: underline;"&gt;&lt;A href="http://cache.nxp.com/files/32bit/doc/eng_bulletin/EB814.pdf"&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;A href="http://cache.nxp.com/files/32bit/doc/eng_bulletin/EB814.pdf" target="test_blank"&gt;http://cache.nxp.com/files/32bit/doc/eng_bulletin/EB814.pdf&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;You may create request (ticket) about some non-published i.MX6 cache implementation details.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;A class="link-titled" href="https://www.nxp.com/support/support:SUPPORTHOME?tid=sbmenu" title="https://www.nxp.com/support/support:SUPPORTHOME?tid=sbmenu"&gt;Support|NXP&lt;/A&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Have a great day,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Yuri&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Note: If this post answers your question, please click the Correct Answer &lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;button. Thank you!&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Feb 2018 04:05:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/SMP-Cache-Coherency-on-i-MX6/m-p/778720#M120972</guid>
      <dc:creator>Yuri</dc:creator>
      <dc:date>2018-02-28T04:05:38Z</dc:date>
    </item>
  </channel>
</rss>

