<?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: How to read/write external memory using EBI module in MPC5xxx</title>
    <link>https://community.nxp.com/t5/MPC5xxx/How-to-read-write-external-memory-using-EBI-module/m-p/265065#M222</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;CW stationery contains initialization for the external memory that is present on EVB. See file MPC5566_HWInit.c, function INIT_ExternalBusAndMemory.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Internal address space is defined fixed within range 0x2000_0000-0x3FFF_FFFF. That’s fixed.&lt;/P&gt;&lt;P&gt;For particular chip selects you can select ranges (that must be within EBI range above and not overlapped) using base address EBI_BRn[BA] and address mask EBI_ORn[AM]. Address mask actually specifies size of address space addressed by particular chip select.&lt;/P&gt;&lt;P&gt;Base address and mask are both in format: 0b111x_xxxx_xxxx_xxxx_x000_0000_0000_0000&lt;/P&gt;&lt;P&gt;Ones from left side are taken from EBI fixed address range and zeros from right side specifies address granularity that is minimum CS addressable area (2^15 = 32kB).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CS lines are automatically driven during access to the particular CS area, for instance see following read and write considering basese address is set for 0x20000000:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vuint32_t longword0 = 0;&lt;/P&gt;&lt;P&gt;/* test write */&lt;/P&gt;&lt;P&gt;*(vuint32_t*)(0x20000000) = 0xBABADEDA;&lt;/P&gt;&lt;P&gt;/* test read */&lt;/P&gt;&lt;P&gt;longword0 = *(vuint32_t*)(0x20000000);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note that also MMU table entry must be set properly to allow access to external bus space (function INIT_ExternalBusAndMemory handles it as well).&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 31 May 2013 11:24:13 GMT</pubDate>
    <dc:creator>davidtosenovjan</dc:creator>
    <dc:date>2013-05-31T11:24:13Z</dc:date>
    <item>
      <title>How to read/write external memory using EBI module</title>
      <link>https://community.nxp.com/t5/MPC5xxx/How-to-read-write-external-memory-using-EBI-module/m-p/265064#M221</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;Hi Team,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am new to MPC5566, trying to interface MR4A16B SRAM to MPC5566 using EBI module.&lt;/P&gt;&lt;P&gt;- I configured EBI register&lt;/P&gt;&lt;P&gt;- Configured corresponding SIU_PCR register to select the requried functionality.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Now, my doubt is how to Read/Write address/data... which register i need to use to write/read.&lt;/P&gt;&lt;P&gt;eg: CS[0] functionality is choosen from SIU_PCR register. if i want to make CS[0] line HIGH or LOW how to drive?&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;PLease help in understandig this and to solve.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Jagadeesha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 May 2013 07:08:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/How-to-read-write-external-memory-using-EBI-module/m-p/265064#M221</guid>
      <dc:creator>jagadeeshalaksh</dc:creator>
      <dc:date>2013-05-30T07:08:50Z</dc:date>
    </item>
    <item>
      <title>Re: How to read/write external memory using EBI module</title>
      <link>https://community.nxp.com/t5/MPC5xxx/How-to-read-write-external-memory-using-EBI-module/m-p/265065#M222</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;CW stationery contains initialization for the external memory that is present on EVB. See file MPC5566_HWInit.c, function INIT_ExternalBusAndMemory.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Internal address space is defined fixed within range 0x2000_0000-0x3FFF_FFFF. That’s fixed.&lt;/P&gt;&lt;P&gt;For particular chip selects you can select ranges (that must be within EBI range above and not overlapped) using base address EBI_BRn[BA] and address mask EBI_ORn[AM]. Address mask actually specifies size of address space addressed by particular chip select.&lt;/P&gt;&lt;P&gt;Base address and mask are both in format: 0b111x_xxxx_xxxx_xxxx_x000_0000_0000_0000&lt;/P&gt;&lt;P&gt;Ones from left side are taken from EBI fixed address range and zeros from right side specifies address granularity that is minimum CS addressable area (2^15 = 32kB).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CS lines are automatically driven during access to the particular CS area, for instance see following read and write considering basese address is set for 0x20000000:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;vuint32_t longword0 = 0;&lt;/P&gt;&lt;P&gt;/* test write */&lt;/P&gt;&lt;P&gt;*(vuint32_t*)(0x20000000) = 0xBABADEDA;&lt;/P&gt;&lt;P&gt;/* test read */&lt;/P&gt;&lt;P&gt;longword0 = *(vuint32_t*)(0x20000000);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note that also MMU table entry must be set properly to allow access to external bus space (function INIT_ExternalBusAndMemory handles it as well).&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 31 May 2013 11:24:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/How-to-read-write-external-memory-using-EBI-module/m-p/265065#M222</guid>
      <dc:creator>davidtosenovjan</dc:creator>
      <dc:date>2013-05-31T11:24:13Z</dc:date>
    </item>
  </channel>
</rss>

