<?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>MPC5xxxのトピックRe: FLASH B erase error MPC5676</title>
    <link>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079095#M16232</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;As I mentioned, there's no problem with your code. The interlock write just must fall within block B, that means you need to write to 0x10_0010, not to 0x10_0000. &lt;/P&gt;&lt;P&gt;Regarding SSD driver - I would need to see your code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 28 Apr 2020 08:10:31 GMT</pubDate>
    <dc:creator>lukaszadrapa</dc:creator>
    <dc:date>2020-04-28T08:10:31Z</dc:date>
    <item>
      <title>FLASH B erase error MPC5676</title>
      <link>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079092#M16229</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;I have problems with Erase block B flash MPC5676.&lt;/P&gt;&lt;P&gt;Block A erase ok, L0~L9, M1~M0 and L0/M0 &amp;lt;&amp;nbsp; &amp;nbsp;update help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="flash_b.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/98674iAF099945D3209480/image-size/large?v=v2&amp;amp;px=999" role="button" title="flash_b.png" alt="flash_b.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//----------------code test FLASH_B&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DCACHE_Disable();&amp;nbsp; withh/winout&lt;/P&gt;&lt;P&gt;FLASH_B.HLR.R = 0xB2B22222; //password&lt;BR /&gt;FLASH_B.HLR.B.HBLOCK = 0x00 ; //unlock all blocks in high address space&lt;BR /&gt; //Erase&lt;BR /&gt; FLASH_B.MCR.B.ERS = 1;&lt;BR /&gt;FLASH_B.HSR.B.HBSEL = 0x01;&amp;nbsp; //&amp;nbsp; blocks H0&amp;nbsp;&lt;BR /&gt;*(unsigned int *) 0x100000 = 0xFFFFFFFF;&lt;/P&gt;&lt;P&gt;FLASH_B.MCR.B.EHV = 1;&lt;BR /&gt; while ((FLASH_B.MCR.B.DONE == 0));&lt;BR /&gt; FLASH_B.MCR.B.EHV = 0;&lt;BR /&gt; FLASH_B.MCR.B.ERS = 0;&lt;BR /&gt; peg = FLASH_A.MCR.B.PEG;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//-------------------------updating it help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks,&lt;/P&gt;&lt;P&gt;Carlos.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 25 Apr 2020 02:37:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079092#M16229</guid>
      <dc:creator>CCandido</dc:creator>
      <dc:date>2020-04-25T02:37:18Z</dc:date>
    </item>
    <item>
      <title>Re: FLASH B erase error MPC5676</title>
      <link>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079093#M16230</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Carlos,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the flash is interleaved in high address space:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/101322i491B06D298AEF1C0/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;This helps to improve the performance. In case of non-interleaved flash, two physical reads of flash arrays are needed to fill one cache line. If the flash is interleaved, the blocks are read in parallel, so it looks like only one physical read is necessary.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The interlock write to 0x10_0000 falls to flash block A. So, it does not work as you can see. You need to write to 0x10_0000+16.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Or you can use SSD flash drivers which handle everything on background and you use the flash as linear address space. You do not need to care about blocks A and B ever:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://www.nxp.com/lgfiles/Qorivva/MPC5674F_C90FL_SSD_DRV.exe" title="https://www.nxp.com/lgfiles/Qorivva/MPC5674F_C90FL_SSD_DRV.exe"&gt;https://www.nxp.com/lgfiles/Qorivva/MPC5674F_C90FL_SSD_DRV.exe&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2020 06:11:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079093#M16230</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2020-04-27T06:11:30Z</dc:date>
    </item>
    <item>
      <title>Re: FLASH B erase error MPC5676</title>
      <link>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079094#M16231</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Lukas,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;my code in RAM without ISR and&amp;nbsp;exceptions_table,&lt;/P&gt;&lt;P&gt;so I chose the way to work with interlock.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write flash control address no problem, no near code have,&lt;/P&gt;&lt;P&gt;&amp;nbsp;Erase high-address all space.&lt;/P&gt;&lt;P&gt;have solution do withot SSD driver ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;my test SSD&amp;nbsp; &amp;nbsp;: VLE_ON, COPYRAM_FALSE&lt;/P&gt;&lt;P&gt;ret = pFlashInit( &amp;amp;ssdConfig );&amp;nbsp; call not&amp;nbsp; return&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks,&lt;/P&gt;&lt;P&gt;Carlos&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2020 15:53:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079094#M16231</guid>
      <dc:creator>CCandido</dc:creator>
      <dc:date>2020-04-27T15:53:06Z</dc:date>
    </item>
    <item>
      <title>Re: FLASH B erase error MPC5676</title>
      <link>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079095#M16232</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;As I mentioned, there's no problem with your code. The interlock write just must fall within block B, that means you need to write to 0x10_0010, not to 0x10_0000. &lt;/P&gt;&lt;P&gt;Regarding SSD driver - I would need to see your code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Apr 2020 08:10:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079095#M16232</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2020-04-28T08:10:31Z</dc:date>
    </item>
    <item>
      <title>Re: FLASH B erase error MPC5676</title>
      <link>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079096#M16233</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Lukas,&lt;/P&gt;&lt;P&gt;SSD solved problems,&lt;/P&gt;&lt;P&gt;thanks,&lt;/P&gt;&lt;P&gt;Carlos.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 29 Apr 2020 13:38:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/FLASH-B-erase-error-MPC5676/m-p/1079096#M16233</guid>
      <dc:creator>CCandido</dc:creator>
      <dc:date>2020-04-29T13:38:49Z</dc:date>
    </item>
  </channel>
</rss>

