<?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>Vybrid Processors中的主题 Re: Vybrid Strange Memory Overwrite</title>
    <link>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359209#M3689</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think you should try updating compiler. D-5 5.17.1 was released almost immediately after 5.17. I remember heaving big problems with 5.17.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 14 Aug 2014 17:36:38 GMT</pubDate>
    <dc:creator>kef2</dc:creator>
    <dc:date>2014-08-14T17:36:38Z</dc:date>
    <item>
      <title>Vybrid Strange Memory Overwrite</title>
      <link>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359208#M3688</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We have a strange problem on Vybrid M4 using MQX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Platform: PCM052&lt;/P&gt;&lt;P&gt;MQX-Version: 4.0.1 with PCM052- and ADC-Patch applied&lt;/P&gt;&lt;P&gt;DS-5 V5.17&lt;/P&gt;&lt;P&gt;Code Region: OnChip SysRAM0 0x3f00 0000-0x3f03 fff0&lt;/P&gt;&lt;P&gt;Data Region: GfxRAM0 0x3f40 0000-0x3f47 ffff&lt;/P&gt;&lt;P&gt;Shared Data (MCC): OnChip SysRAM1 0x3f04 0000-0x3f04 fff0&lt;/P&gt;&lt;P&gt;Stack starts at TCML_END: 0x1f80 7ff0&lt;/P&gt;&lt;P&gt;Librarys: PSP, BSP, MCC, RTCS (UDP only)&lt;/P&gt;&lt;P&gt;Tasks: MQX Idle, User Main-Task (1500Bytes Stacksize), User Task2 (1000Bytes Stacksize)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We have a periodic function, which is calculating some values. From time to time it happens, that values are corrupted (random numbers without meaning in this context), i.e. we do not see the expected values in the debugger. With ULinkPro Trace we found out, that this error occurs in combination with an interrupt (GPIO and also ADC0/1). Further analysis show that the StackPointer is rather high with ~28kByte. In the TCML-Memory there are just 32kBytes available, so we assume that in corner cases the stack pointer overflows and overwrite the CPU registers with wrong values, which are then written into our value buffers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is a stack pointer size of 28kByte in MQX normal or is this a exception here?&lt;/P&gt;&lt;P&gt;Are there any techniques to keep the stack pointer lower?&lt;/P&gt;&lt;P&gt;Is there a possibility in DS-5 to monitor the stack pointer and break in case of overflow?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance,&lt;/P&gt;&lt;P&gt;Johannes&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Aug 2014 14:55:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359208#M3688</guid>
      <dc:creator>johannestraxler</dc:creator>
      <dc:date>2014-08-14T14:55:44Z</dc:date>
    </item>
    <item>
      <title>Re: Vybrid Strange Memory Overwrite</title>
      <link>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359209#M3689</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think you should try updating compiler. D-5 5.17.1 was released almost immediately after 5.17. I remember heaving big problems with 5.17.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Aug 2014 17:36:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359209#M3689</guid>
      <dc:creator>kef2</dc:creator>
      <dc:date>2014-08-14T17:36:38Z</dc:date>
    </item>
    <item>
      <title>Re: Vybrid Strange Memory Overwrite</title>
      <link>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359210#M3690</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I just checked the version string in detail. It is already 5.17.1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ARM DS-5 (DS-5 Vybrid Edition)&lt;/P&gt;&lt;P&gt;Version: 5.17.1&lt;/P&gt;&lt;P&gt;Build number: 5171010&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EDIT: I just updated to the newest DS-5 (DS-5 Vybrid Edition, Version: 5.19.0, Build number: 5190027) and the problem still exists.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Aug 2014 06:09:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359210#M3690</guid>
      <dc:creator>johannestraxler</dc:creator>
      <dc:date>2014-08-18T06:09:33Z</dc:date>
    </item>
    <item>
      <title>Re: Vybrid Strange Memory Overwrite</title>
      <link>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359211#M3691</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/timesyssupport"&gt;timesyssupport&lt;/A&gt; can you&amp;nbsp; help with this case?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Aug 2014 22:15:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359211#M3691</guid>
      <dc:creator>karina_valencia</dc:creator>
      <dc:date>2014-08-18T22:15:03Z</dc:date>
    </item>
    <item>
      <title>Re: Vybrid Strange Memory Overwrite</title>
      <link>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359212#M3692</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Johannes,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you tried building your application against MQX 4.0.2? If this is an issue with stack size, here is a useful document that details how to minimize stack usage and debugging the stack:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0472e/CJAIIDCG.html" title="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0472e/CJAIIDCG.html"&gt;http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0472e/CJAIIDCG.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Timesys Support&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Aug 2014 15:34:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359212#M3692</guid>
      <dc:creator>timesyssupport</dc:creator>
      <dc:date>2014-08-19T15:34:09Z</dc:date>
    </item>
    <item>
      <title>Re: Vybrid Strange Memory Overwrite</title>
      <link>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359213#M3693</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Johannes,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MQX is preemptive OS, which has as many stacks as many tasks. 28k is total stacks size? I don't think MQX uses so much stack space. Most likely it is some data arrays allocated on stack. Perhaps you have some function scope non-static const array, or array of pointers to non-const strings? Missing const and static keywords may make your stack big.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Aug 2014 06:49:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359213#M3693</guid>
      <dc:creator>kef2</dc:creator>
      <dc:date>2014-08-20T06:49:18Z</dc:date>
    </item>
    <item>
      <title>Re: Vybrid Strange Memory Overwrite</title>
      <link>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359214#M3694</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, we will then first check, if there is indeed any stack overflow and then search for arrays, which are put on the stack, to reduce general stack size.&lt;/P&gt;&lt;P&gt;Updating to MQX4.0.2 has not been done so far, but I think that it is not a MQX bug.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Aug 2014 07:03:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Vybrid-Processors/Vybrid-Strange-Memory-Overwrite/m-p/359214#M3694</guid>
      <dc:creator>johannestraxler</dc:creator>
      <dc:date>2014-08-20T07:03:12Z</dc:date>
    </item>
  </channel>
</rss>

