<?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: imx51: eim bursting question in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349605#M48491</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Hi, Igor!&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;But here (from my code):&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt; "ldr r0,=0xB8000000;" //load FPGA start address - source&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;is aligned to any reasonable burst! it is a start address of ChipSelect1, and our FPGA.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Also I set page size and burst size to 32 (we checked 16 also).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;In my variant of code i expect to see {one address, 16 beat} burst, according to 8 destination 32 bit registers, and our 16bit FPGA bus.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 11 Aug 2014 19:49:06 GMT</pubDate>
    <dc:creator>alexlys</dc:creator>
    <dc:date>2014-08-11T19:49:06Z</dc:date>
    <item>
      <title>imx51: eim bursting question</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349602#M48488</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi! I am testing our imx51 based device, which have FPGA connected to EIM CS1 signal. We need to test maximal performance on read and write, to and from FPGA.&lt;/P&gt;&lt;P&gt;Just now we are testing read from FPGA. Next will be Write to.&lt;/P&gt;&lt;P&gt;Our FPGA bus is 16 bit and is multiplexed. To try synchro burst mode on read, I just use u-boot code and standalone testing application.&lt;/P&gt;&lt;P&gt;My code is very simple, i just try to read 8 32-bit registers of ARM using one instruction ldm _address,{8 registers}.&lt;/P&gt;&lt;P&gt;Thing is working and with eim clock division 2 or 3 (weim clock is about 100 mhz), we can correctly read data from FPGA. But we see, that&lt;/P&gt;&lt;P&gt;this reading consists of 4 burst, where sequence {address, pulse, pulse, pulse, pulse } is for each. So we see, that every burst reads 4 16 bit words from our 16 bit bus, then there is a pause of approximately 5-6 clock, then again 4 16bit words burst...&lt;/P&gt;&lt;P&gt;So when I hoped to see long 16 pulse burst...I see four short four words burst, with quite long pauses.&lt;/P&gt;&lt;P&gt;Question - is it possibe to have 16 pulse burst for such instruction in our configuration of FPGA bus?&lt;/P&gt;&lt;P&gt;We have played with page size, burst length, etc fields in ChipSelect config registers but cannot make bursts longer.&lt;/P&gt;&lt;P&gt;I m quite novice in this tech, so it looks like I'm in some trap... Help pls.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this is code of reading and dumping data from FPGA&lt;/P&gt;&lt;P&gt;##################&lt;/P&gt;&lt;P&gt;&amp;nbsp; asm volatile(&lt;/P&gt;&lt;P&gt;&amp;nbsp; "push {r0,r1,r4-r11};" //save regs&lt;/P&gt;&lt;P&gt;&amp;nbsp; //&lt;/P&gt;&lt;P&gt;&amp;nbsp; "ldr r0,=0xB8000000;" //load FPGA start address - source&lt;/P&gt;&lt;P&gt;&amp;nbsp; "ldr r1,=DataArray;"&amp;nbsp; //load destinaton address, my static data array&lt;/P&gt;&lt;P&gt;&amp;nbsp; //&lt;/P&gt;&lt;P&gt;&amp;nbsp; "ldm&amp;nbsp; r0, {r4-r11};" //load regs from FPGA -HERE WE HAVE 4 BURSTS, 4*16 bit words each&lt;/P&gt;&lt;P&gt;&amp;nbsp; "stm&amp;nbsp; r1, {r4-r11};" //store regs to mem&lt;/P&gt;&lt;P&gt;&amp;nbsp; "pop&amp;nbsp; {r0,r1,r4-r11};" //restore regs&lt;/P&gt;&lt;P&gt;&amp;nbsp; );&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dumpArray(DataArray,16); // here we are dumping array from memory to console&lt;/P&gt;&lt;P&gt;#################&lt;/P&gt;&lt;P&gt;Alex.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Aug 2014 09:58:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349602#M48488</guid>
      <dc:creator>alexlys</dc:creator>
      <dc:date>2014-08-11T09:58:20Z</dc:date>
    </item>
    <item>
      <title>Re: imx51: eim bursting question</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349603#M48489</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;...deleted&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Aug 2014 10:04:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349603#M48489</guid>
      <dc:creator>alexlys</dc:creator>
      <dc:date>2014-08-11T10:04:15Z</dc:date>
    </item>
    <item>
      <title>Re: imx51: eim bursting question</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349604#M48490</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alex,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;shortly, memory address should be aligned according to burst size, that is&lt;/P&gt;&lt;P&gt;for 8 beat burst:&lt;/P&gt;&lt;P&gt;address starts with 0xxxx00,0xxxx10,0xxxx20,0xxxx50 e.t.c. according to PSZ setting.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;chip&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Aug 2014 14:49:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349604#M48490</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2014-08-11T14:49:41Z</dc:date>
    </item>
    <item>
      <title>Re: imx51: eim bursting question</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349605#M48491</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Hi, Igor!&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;But here (from my code):&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt; "ldr r0,=0xB8000000;" //load FPGA start address - source&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;is aligned to any reasonable burst! it is a start address of ChipSelect1, and our FPGA.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Also I set page size and burst size to 32 (we checked 16 also).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;In my variant of code i expect to see {one address, 16 beat} burst, according to 8 destination 32 bit registers, and our 16bit FPGA bus.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Aug 2014 19:49:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349605#M48491</guid>
      <dc:creator>alexlys</dc:creator>
      <dc:date>2014-08-11T19:49:06Z</dc:date>
    </item>
    <item>
      <title>Re: Re: imx51: eim bursting question</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349606#M48492</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alex,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;you can look at attached example for i.MX51.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;chip&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Aug 2014 23:56:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349606#M48492</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2014-08-11T23:56:28Z</dc:date>
    </item>
    <item>
      <title>Re: imx51: eim bursting question</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349607#M48493</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;As for LDM / STM instructions : according to section 16.2.9 (Load multiple and store &lt;BR /&gt;multiple instructions) of Cortex-A8 Technical Reference Manual :&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;"The processor can load or store two 32-bit registers in each cycle."&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0344h/ch16s02s09.html"&gt;http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0344h/ch16s02s09.html&lt;/A&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Another possible solutions to get (back-to-back) burst accesses :&lt;/P&gt;&lt;P&gt;- enable ARM data cache (this feature has some specifics) ;&lt;/P&gt;&lt;P&gt;- NEON instructions ;&lt;/P&gt;&lt;P&gt;- DMA via the i.MX51 SDMA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Yuri&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Aug 2014 01:15:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349607#M48493</guid>
      <dc:creator>Yuri</dc:creator>
      <dc:date>2014-08-12T01:15:51Z</dc:date>
    </item>
    <item>
      <title>Re: imx51: eim bursting question</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349608#M48494</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;1. data cache was off, but toggling on does not help&lt;/P&gt;&lt;P&gt;2. dma - is the last chance of course&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks for mentioning that Cortex a8 loads 2 regs per clock... may be this is the reason.&lt;/P&gt;&lt;P&gt;Kinda core tells to eim - give me 2 registers! and eim makes 4 beat burst...&lt;/P&gt;&lt;P&gt;then seems we cannot achieve expected 16 beat burst on such an instruction...???&lt;/P&gt;&lt;P&gt;hmm.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Aug 2014 09:22:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx51-eim-bursting-question/m-p/349608#M48494</guid>
      <dc:creator>alexlys</dc:creator>
      <dc:date>2014-08-12T09:22:11Z</dc:date>
    </item>
  </channel>
</rss>

