<?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: SIMD Instructions - Cortex M7 in MCUXpresso SDK</title>
    <link>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748669#M545</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;Could you tell us which MCU are you using?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;BR /&gt;Carlos Mendoza&lt;BR /&gt;Technical Support Engineer&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 29 Dec 2017 17:48:35 GMT</pubDate>
    <dc:creator>Carlos_Mendoza</dc:creator>
    <dc:date>2017-12-29T17:48:35Z</dc:date>
    <item>
      <title>SIMD Instructions - Cortex M7</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748668#M544</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I want to use the SIMD and other CM7 instructions in my application.&amp;nbsp; It is not clear to me whether the SDK/CMSIS or compiler has either built-ins functions or macros that support them.&amp;nbsp; I see that the cmsis_gcc.h file contains some macros for the SIMD intrinsics, but they seem to be guarded by some #if defined statements, and the symbols do not appear to be defined anywhere (one of the symbols is __ARM_ARCH_7EM__, is that the architecture of the CM7?).&amp;nbsp; Also, if I look at the gnu C documentation, there appears to possibly be some built-in functions for these intrinisics. However, it is not clear to me whether MCUXpresso is using the GNU c compiler (all the pre-processor symbols seem to indicate so, however, the current toolchain is listed as "NXP MCU Tools" - though I assume they are just vendor specific compilations of GNU tools).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bottom line, there are some specific CM7 core instructions I would like to take advantage of without needing to write assembly routines.&amp;nbsp; How do I go about doing so?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Dec 2017 14:55:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748668#M544</guid>
      <dc:creator>ivekengineer</dc:creator>
      <dc:date>2017-12-27T14:55:46Z</dc:date>
    </item>
    <item>
      <title>Re: SIMD Instructions - Cortex M7</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748669#M545</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;Could you tell us which MCU are you using?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;BR /&gt;Carlos Mendoza&lt;BR /&gt;Technical Support Engineer&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 29 Dec 2017 17:48:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748669#M545</guid>
      <dc:creator>Carlos_Mendoza</dc:creator>
      <dc:date>2017-12-29T17:48:35Z</dc:date>
    </item>
    <item>
      <title>Re: SIMD Instructions - Cortex M7</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748670#M546</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;KV58F1M0xxx24.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;One of the things I noticed is that I assumed the functions were not available because the C indexer shows them as gray ( in &lt;SPAN style="display: inline !important; float: none; background-color: transparent; color: #3d3d3d; font-family: Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; font-size: 15px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px; word-wrap: break-word;"&gt;cmsis_gcc.h, line 963 and following) &lt;/SPAN&gt;- indicating that the C indexer does not see the following symbols defines:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#if ((defined (__ARM_ARCH_7M__&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ) &amp;amp;&amp;amp; (__ARM_ARCH_7M__&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; == 1)) || \&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (defined (__ARM_ARCH_7EM__&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ) &amp;amp;&amp;amp; (__ARM_ARCH_7EM__&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; == 1)) || \&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (defined (__ARM_ARCH_8M_MAIN__ ) &amp;amp;&amp;amp; (__ARM_ARCH_8M_MAIN__ == 1)) || \&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (defined (__ARM_ARCH_8M_BASE__ ) &amp;amp;&amp;amp; (__ARM_ARCH_8M_BASE__ == 1))&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, when I compile, I am not getting any errors using these intrinsics - so either the values are recognized natively by the compiler, or these symbols are being defined somewhere that the Eclipse C indexer (and myself) cannot see.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It may turn out that I don't need to use these intrinsics because I just found the NXP RTCESL library which may end up giving me what I am looking for (which is efficient fixed point math using supporting the Cortex-M7 core).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also, I noticed that the cmsis_gcc.h file does not contain the _SMLAL and _UMLAL instructions which I was thinking I might try to use - but that seems to be more of a CMSIS choice to not include those rather than anything NXP specific.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jan 2018 16:18:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748670#M546</guid>
      <dc:creator>ivekengineer</dc:creator>
      <dc:date>2018-01-02T16:18:07Z</dc:date>
    </item>
    <item>
      <title>Re: SIMD Instructions - Cortex M7</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748671#M547</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;I have had a similar issue recently. and this is what i got .&amp;nbsp; It depends on the kind of compiler you are using. if you have included the cmsis files in your project, then in your project tree within your IDE, you can find&amp;nbsp;&amp;nbsp;cmsis_compiler.h within the cmsis folder. that defines the compiler your project will compile with. ( GNU Compiler,&amp;nbsp;IAR Compiler,&amp;nbsp;TI Arm Compiler,TASKING Compiler,COSMIC Compiler). so depending on which compiler you are using,&amp;nbsp; you need to define some&amp;nbsp;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;#define symbols for generic C/C++ source code. for those #defines that you need , check this link&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&lt;A class="link-titled" href="https://www.keil.com/pack/doc/CMSIS/Core/html/group__compiler__conntrol__gr.html" title="https://www.keil.com/pack/doc/CMSIS/Core/html/group__compiler__conntrol__gr.html"&gt;Compiler Control&lt;/A&gt;&amp;nbsp;.&amp;nbsp; &amp;nbsp;if you&amp;nbsp; are using arm cortex m4 with FPU and your compiler is &lt;SPAN style="color: #3d3d3d;"&gt;GNU Compiler&lt;/SPAN&gt;, you need to define&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE style="width: 710px;"&gt;&lt;TBODY&gt;&lt;TR class="" style="height: 25px;"&gt;&lt;TD align="right" class="" style="background-color: #f9fafc; border-top: 1px solid #c3cfe6; border-bottom: none; border-left: none; border-right: none; margin: 4px; padding: 1px 0px 0px 8px; height: 25px; width: 46px;" valign="top"&gt;````#define&amp;nbsp;&lt;/TD&gt;&lt;TD class="" style="background-color: #f9fafc; border-top: 1px solid #c3cfe6; border-bottom: none; border-left: none; border-right: none; margin: 4px; padding: 1px 0px 0px 8px; height: 25px; width: 632px;" valign="bottom"&gt;&lt;P&gt;&lt;A href="https://www.keil.com/pack/doc/CMSIS/Core/html/group__compiler__conntrol__gr.html#ga43ab3e79ec5ecb615f1f2f6e83e7d48a" style="color: #4464a5; font-weight: bold; text-decoration: none;"&gt;__ARM_ARCH_7EM__&lt;/A&gt;&amp;nbsp; &amp;nbsp;1&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR class="" style="height: 50px;"&gt;&lt;TD class="" style="color: #555555; background-color: #f9fafc; border: none; margin: 4px; padding: 0px 8px 4px; height: 50px; width: 46px;"&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD class="" style="color: #555555; background-color: #f9fafc; border: none; margin: 4px; padding: 0px 8px 4px; height: 50px; width: 632px;"&gt;&lt;P&gt;#define __ARM_FEATURE_DSP 1&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in the&amp;nbsp;cmsis_gcc.h&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and the project should compile fine without problems&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Feb 2019 10:53:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/748671#M547</guid>
      <dc:creator>richardmensah</dc:creator>
      <dc:date>2019-02-01T10:53:39Z</dc:date>
    </item>
    <item>
      <title>Re: SIMD Instructions - Cortex M7</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/1408704#M3576</link>
      <description>&lt;P&gt;I am trying to use simd instructions on CM7 (RT1010, RT1050...). I tried to set those macro to 1. It did not work. So I add arm_neon.h path to project properties (C/C++ build -&amp;gt; Settings -&amp;gt; Includes). So now I can compile my simdy code. and got more erroes. So I tried ...&amp;nbsp;&lt;/P&gt;&lt;P&gt;-mcpu=cortex-a7 -mfpu=neon&lt;/P&gt;&lt;P&gt;--with-arch=armv7-a --with-fpu=vfpv3-d16&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;.... and bunch of other options on the Internet I can find .... but I am still getting this error. Any suggestions?&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;C:\nxp\MCUXpressoIDE_11.4.1_6260\ide\tools\lib\gcc\arm-none-eabi\10.2.1\include/arm_neon.h:10403:1: error: inlining failed in call to 'always_inline' 'vld1q_u8': target specific option mismatch&lt;BR /&gt;10403 | vld1q_u8 (const uint8_t * __a)&lt;BR /&gt;| ^~~~~~~~&lt;/P&gt;</description>
      <pubDate>Thu, 03 Feb 2022 17:04:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/SIMD-Instructions-Cortex-M7/m-p/1408704#M3576</guid>
      <dc:creator>ykim</dc:creator>
      <dc:date>2022-02-03T17:04:04Z</dc:date>
    </item>
  </channel>
</rss>

