<?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>S12 / MagniV MicrocontrollersのトピックRe: Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309917#M10337</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;the memory relationship between the .prm file and global address is as below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;S12G128 .prm&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | S12G128 global address copied from datasheet:&lt;/P&gt;&lt;P&gt;SEGMENTS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_WRITE&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x2000 TO&amp;nbsp;&amp;nbsp; 0x3FFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM_C000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xC000 TO&amp;nbsp;&amp;nbsp; 0xFEFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x088000 TO 0x08BFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x20000 to 0x23FFF&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x098000 TO 0x09BFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x24000 to 0x27FFF&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0A8000 TO 0x0ABFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x28000 to 0x2BFFF&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0B8000 TO 0x0BBFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x2C000 to 0x2FFFF&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0C8000 TO 0x0C93FF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x30000 to 0x34000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0C_A000&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0CA000 TO 0x0CBFFF; | &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0E&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0E8000 TO 0x0EBFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x38000 to 0x3BFFF&lt;/P&gt;&lt;P&gt;END&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 03 Apr 2014 09:24:59 GMT</pubDate>
    <dc:creator>007</dc:creator>
    <dc:date>2014-04-03T09:24:59Z</dc:date>
    <item>
      <title>Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309916#M10336</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello, I have a memory mapping question about S12G chip.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I checked the generated prm file of MC9S12G128 project, it is as below, there are page 08 to page 0E, the map file is same as it, the .text is generated to PAGE_0E of 0xE8000. But the memory map defined in S12G reference manual is not same as it, the paging window is at 0x00000,0x04000, 0x08000, 0x30000, 0x34000, 0x38000, 0x3C000, 0x3FFFF, please see the attached doc. So it is confused how MCU access the address, like 0xE8000 in the .map file. Which memory mapping control register is used to map the location, PPAGE? But it defines only bit[17:14] of global address[17:0], 0xE8000 is a 19 bit address.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SEGMENTS&amp;nbsp; /* Here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_WRITE&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x2000 TO&amp;nbsp;&amp;nbsp; 0x3FFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM_C000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xC000 TO&amp;nbsp;&amp;nbsp; 0xFEFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x088000 TO 0x08BFFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x098000 TO 0x09BFFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0A8000 TO 0x0ABFFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0B8000 TO 0x0BBFFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0C8000 TO 0x0C93FF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0C_A000&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0CA000 TO 0x0CBFFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0E&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0E8000 TO 0x0EBFFF;&lt;/P&gt;&lt;P&gt;END&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Apr 2014 08:49:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309916#M10336</guid>
      <dc:creator>007</dc:creator>
      <dc:date>2014-04-03T08:49:09Z</dc:date>
    </item>
    <item>
      <title>Re: Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309917#M10337</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;the memory relationship between the .prm file and global address is as below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;S12G128 .prm&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | S12G128 global address copied from datasheet:&lt;/P&gt;&lt;P&gt;SEGMENTS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_WRITE&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x2000 TO&amp;nbsp;&amp;nbsp; 0x3FFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM_C000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xC000 TO&amp;nbsp;&amp;nbsp; 0xFEFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x088000 TO 0x08BFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x20000 to 0x23FFF&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x098000 TO 0x09BFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x24000 to 0x27FFF&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0A8000 TO 0x0ABFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x28000 to 0x2BFFF&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0B8000 TO 0x0BBFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x2C000 to 0x2FFFF&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0C8000 TO 0x0C93FF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x30000 to 0x34000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0C_A000&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0CA000 TO 0x0CBFFF; | &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_0E&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x0E8000 TO 0x0EBFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0x38000 to 0x3BFFF&lt;/P&gt;&lt;P&gt;END&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Apr 2014 09:24:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309917#M10337</guid>
      <dc:creator>007</dc:creator>
      <dc:date>2014-04-03T09:24:59Z</dc:date>
    </item>
    <item>
      <title>Re: Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309918#M10338</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;PRM file uses paged addresses like 0x98000, where 0x9 is PPAGE setting and 0x8000 is CPU address. S12G paged address 0x98000 corresponds to global address 9*psize + (0x8000 - pstart) = 0x24000, where psize is the size of PPAGE window = 0x4000 and pstart is PPAGE window offset = 0x8000. &lt;/P&gt;&lt;P&gt;Global address is address used by flash controller when you specify what part of flash to erase or program.&lt;BR /&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Apr 2014 11:47:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309918#M10338</guid>
      <dc:creator>kef2</dc:creator>
      <dc:date>2014-04-03T11:47:38Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309919#M10339</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;The MCU has global and local memory map (let's talk about G128).&lt;/P&gt;&lt;P&gt;If you do not want to write &lt;SPAN class="&amp;amp;quothighlight&amp;quot;"&gt;&lt;STRONG&gt;flash&lt;/STRONG&gt;&lt;/SPAN&gt; memory by your SW then you can forget at global memory map because it is used only when &lt;SPAN class="&amp;amp;quothighlight&amp;quot;"&gt;&lt;STRONG&gt;flash&lt;/STRONG&gt;&lt;/SPAN&gt; is written. Entire &lt;SPAN class="&amp;amp;quothighlight&amp;quot;"&gt;&lt;STRONG&gt;flash&lt;/STRONG&gt;&lt;/SPAN&gt; can be accessed by PPAGE:WindowOffest address where PPAGE is in the range 08~0F and window is in the range 8000~BFFF. (As you can see &lt;SPAN class="&amp;amp;quothighlight&amp;quot;"&gt;&lt;STRONG&gt;flash&lt;/STRONG&gt;&lt;/SPAN&gt; is not &lt;SPAN class="&amp;amp;quothighlight&amp;quot;"&gt;&lt;STRONG&gt;linear&lt;/STRONG&gt;&lt;/SPAN&gt; and routines are not allowed to exceed 16kB (size of window)). There are a part of memory which can be accessed also by local 16bit address (so called NON_BANKED memory space). It uses addresses 1400~1FFF; 4000~7FFF and C000~FFFF. Of course, these spaces can be also accessed by PPAGE:WindowOffest addressing mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have attached excel sheet, we prepared, to help better understand memory mapping of S12G devices.&lt;/P&gt;&lt;P&gt;Moreover I have attached example code which places data to different &lt;SPAN class="&amp;amp;quothighlight&amp;quot;"&gt;&lt;STRONG&gt;flash&lt;/STRONG&gt;&lt;/SPAN&gt; areas. (prepared under CodeWarrior v.5.1)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Ladislav&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 Apr 2014 13:51:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309919#M10339</guid>
      <dc:creator>lama</dc:creator>
      <dc:date>2014-04-09T13:51:22Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309920#M10340</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you Edward and Lama! Very clear excel.&lt;/P&gt;&lt;P&gt;I checked the debugger Assembly window of CW5.1, its instruction address seems logical address (page address). I also found CALL and RTC instructions are used to page memory access, like below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Asm&lt;/P&gt;&lt;P&gt;_ENABLE_COP(1)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CALL 0x8000, 0x0E&lt;/P&gt;&lt;P&gt;main()&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CALL 0x806B, 0x0E&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I'm writing a bootloader for S12G, so I need know the conversion of global address and page address, because the address in S-record is page address, yet to program flash, it is global address.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I'm getting clear of it. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;dp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Apr 2014 02:44:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309920#M10340</guid>
      <dc:creator>007</dc:creator>
      <dc:date>2014-04-10T02:44:22Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Re: Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309921#M10341</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;thank you.&lt;/P&gt;&lt;P&gt;I would like to add some code examples which can help you. You will find there also converision routines from local t gloabal address.&lt;/P&gt;&lt;P&gt;Regarding bootloader, i would like to suggest you to read &lt;A href="http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4258.pdf" title="http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4258.pdf"&gt;http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4258.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;which presents bootloader for S12G device. The source code SW files can be found at:&lt;/P&gt;&lt;P&gt;&lt;A href="http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4258SW.zip?&amp;amp;Parent_nodeId=&amp;amp;Parent_pageType=" title="http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4258SW.zip?&amp;amp;Parent_nodeId=&amp;amp;Parent_pageType="&gt;http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4258SW.zip?&amp;amp;Parent_nodeId=&amp;amp;Parent_pageType=&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There is SRecCvt mentioned in the application note which converts banked S record to required form because the bootloader accepts s-records with global (linear) addressing. All records must be aligned to 32 bytes and the length of records must be 32 bytes. You can find it in the attachment with some devices adddedet to DeviceInfo.Dat file. Original version can be found at &lt;A href="https://www.freescale.com/webapp/Download?colCode=SRECCVTSW&amp;amp;appType=license&amp;amp;location=null&amp;amp;Parent_nodeId=&amp;amp;Parent_pageType=" title="https://www.freescale.com/webapp/Download?colCode=SRECCVTSW&amp;amp;appType=license&amp;amp;location=null&amp;amp;Parent_nodeId=&amp;amp;Parent_pageType="&gt;https://www.freescale.com/webapp/Download?colCode=SRECCVTSW&amp;amp;appType=license&amp;amp;location=null&amp;amp;Parent_nodeId=&amp;amp;Parent_pageType…&lt;/A&gt;&amp;nbsp; (it is easy to add any device to the DeviceInfo.Dat file)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Ladislav&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Apr 2014 09:35:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309921#M10341</guid>
      <dc:creator>lama</dc:creator>
      <dc:date>2014-04-11T09:35:57Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Re: Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309922#M10342</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Many thanks Ladislav!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have ever read &lt;A class="jive-link-external-small" href="http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4258SW.zip?&amp;amp;Parent_nodeId=&amp;amp;Parent_pageType=" style="font-size: 12.800000190734863px; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #6a737b;"&gt;AN4258SW.pdf before&lt;/A&gt;, thanks for sharing the source code. &lt;/P&gt;&lt;P&gt;I prefer to do the logical to global address conversion in bootloader runtimely.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 Apr 2014 06:01:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309922#M10342</guid>
      <dc:creator>007</dc:creator>
      <dc:date>2014-04-14T06:01:09Z</dc:date>
    </item>
    <item>
      <title>Re: Why the memory mapping defined in S12G prm file is different with the global address range described in S12G datasheet?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309923#M10343</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi lama&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;When I do not use the global address，the local address&amp;nbsp; will convert to global address &lt;SPAN&gt;automatically？&lt;SPAN style="font-family: Helvetica;"&gt; C000~FFFF can be accessed &lt;SPAN&gt;directly&amp;nbsp; Is it physical address？&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt; Can i think local address is logical address&amp;nbsp; and global address&amp;nbsp; is physical&amp;nbsp; address？local address convert to global address by S12 MMC？ &lt;SPAN&gt;Finally，How to work &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;S12 MMC ？&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Apr 2016 12:30:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Why-the-memory-mapping-defined-in-S12G-prm-file-is-different/m-p/309923#M10343</guid>
      <dc:creator>jinpengxiao</dc:creator>
      <dc:date>2016-04-18T12:30:06Z</dc:date>
    </item>
  </channel>
</rss>

