<?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>Kinetis MicrocontrollersのトピックRe: Erasing NOR block 0</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236342#M5474</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The flash memory controller will come up in a valid configuration with the cache and prefetch buffers enabled.&lt;/P&gt;&lt;P&gt;If a firmware driver is used to program flash values, then a flush of the cache might be needed. The cache has no means of snooping to know when a program operation occurs, so a flush is needed to ensure that the cache does not return stale data.&lt;/P&gt;&lt;P&gt;Wish it helps.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;best regards,&lt;/P&gt;&lt;P&gt;Ma Hui&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 16 Jan 2014 02:42:34 GMT</pubDate>
    <dc:creator>Hui_Ma</dc:creator>
    <dc:date>2014-01-16T02:42:34Z</dc:date>
    <item>
      <title>Erasing NOR block 0</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236340#M5472</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;I'm working writing a custom bootloader for a MK20FN1MVMD12, but I'm running into an issue when I erase block 0. After erasing the entire block by successively calling the erase sector command, any software reads to an address in block 0 results in reading the previous value (not 0xFF). No error is being reported, and the "read 1s section" command indicates that everything was erased properly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Some potentially important information:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;This only happens when I erase block 0.&lt;/LI&gt;&lt;LI&gt;I read the data by doing something like "data = ( ( volatile uint32 * )0x00000000 )[ offset ]" where offset is a value &amp;lt; ( block size / 4 ).&lt;/LI&gt;&lt;LI&gt;I am executing out of RAM while performing the erase.&lt;/LI&gt;&lt;LI&gt;The FTFE is unsecure at all times during this process.&lt;/LI&gt;&lt;LI&gt;If I attempt to write &amp;gt;= 0xC1 bytes after erasing the block, I am able to read properly, but no data is actually written at that point. Any subsequent write calls complete as expected.&lt;/LI&gt;&lt;LI&gt;If I use a debugger to look at the erased block, I see that everything was erased, and all subsequent reads in my code work properly.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any thoughts?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jan 2014 17:27:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236340#M5472</guid>
      <dc:creator>jBrizzle</dc:creator>
      <dc:date>2014-01-15T17:27:24Z</dc:date>
    </item>
    <item>
      <title>Re: Erasing NOR block 0</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236341#M5473</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am checking this issue. I will let you know when there with any updated info.&lt;/P&gt;&lt;P&gt;Thank you for the patience.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Ma Hui&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jan 2014 02:06:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236341#M5473</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2014-01-16T02:06:53Z</dc:date>
    </item>
    <item>
      <title>Re: Erasing NOR block 0</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236342#M5474</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The flash memory controller will come up in a valid configuration with the cache and prefetch buffers enabled.&lt;/P&gt;&lt;P&gt;If a firmware driver is used to program flash values, then a flush of the cache might be needed. The cache has no means of snooping to know when a program operation occurs, so a flush is needed to ensure that the cache does not return stale data.&lt;/P&gt;&lt;P&gt;Wish it helps.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;best regards,&lt;/P&gt;&lt;P&gt;Ma Hui&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jan 2014 02:42:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236342#M5474</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2014-01-16T02:42:34Z</dc:date>
    </item>
    <item>
      <title>Re: Erasing NOR block 0</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236343#M5475</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The cache was definitely the problem for me. My NOR driver was not flushing the cache after it wrote or erased which was causing all my problems.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your help,&lt;/P&gt;&lt;P&gt;Jordan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jan 2014 15:16:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Erasing-NOR-block-0/m-p/236343#M5475</guid>
      <dc:creator>jBrizzle</dc:creator>
      <dc:date>2014-01-16T15:16:23Z</dc:date>
    </item>
  </channel>
</rss>

