<?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 code hanging in arm_bitreversal_32() function of CMSIS library in CodeWarrior Development Tools</title>
    <link>https://community.nxp.com/t5/CodeWarrior-Development-Tools/code-hanging-in-arm-bitreversal-32-function-of-CMSIS-library/m-p/314971#M918</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I am using CMSIS 3.2 library along with codewarrior 10.6, with FRDM-K20D50M board, In that I am using &lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;arm_cfft_f32(&amp;amp;arm_cfft_sR_f32_len16, testInput_f32_10khz, ifftFlag, doBitReverse); &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;function present in &lt;STRONG&gt;arm_fft_bin_example_f32 &lt;/STRONG&gt;which is present in CMSIS3.2 library(I reduced the size as it was overflowing the uc 's memory) In that when &lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt; doBitReverse = 1&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; , The code hangs in the highlighted line of the following code which is present in the &lt;STRONG&gt;arm_cfft_f32.c &lt;/STRONG&gt;. When &lt;SPAN style="color: #000000;"&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt; doBitReverse = 0 &lt;/STRONG&gt;&lt;/SPAN&gt;, The code works except the bit reversal is not done. Kindly look into the issue &lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;&lt;STRONG&gt;arm_cfft_f32&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;( &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;const&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;arm_cfft_instance_f32&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; * S, &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;float32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; * p1,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;uint8_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; ifftFlag,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;uint8_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; bitReverseFlag)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;uint32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; L = S-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000c0;"&gt;fftLen&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;, l;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;float32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; invL, * pSrc;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;(ifftFlag == 1u)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f;"&gt;/*&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f; text-decoration: underline;"&gt;Conjugate&lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f;"&gt; input data */&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; pSrc = p1 + 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;for&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;(l=0; l&amp;lt;L; l++) {&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; *pSrc = -*pSrc;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; pSrc += 2;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;switch&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; (L) {&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 16: &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 128:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 1024:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; arm_cfft_radix8by2_f32 ( (&lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;arm_cfft_instance_f32&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; *) S, p1);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;break&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 32:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 256:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 2048:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; arm_cfft_radix8by4_f32 ( (&lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;arm_cfft_instance_f32&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; *) S, p1);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;break&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 64:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 512:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 4096:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-family: Courier New,monospace;"&gt;&lt;SPAN style="font-size: 10pt;"&gt;arm_radix8_butterfly_f32( p1, L, (&lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;float32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; *) S-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000c0;"&gt;pTwiddle&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;, 1);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;break&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; } &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;( bitReverseFlag )&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #000000; background: #ffff00;"&gt;arm_bitreversal_32((&lt;/SPAN&gt;&lt;SPAN style="color: #005032; background: #ffff00;"&gt;uint32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background: #ffff00;"&gt;*)p1,S-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000c0; background: #ffff00;"&gt;bitRevLength&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background: #ffff00;"&gt;,S-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000c0; background: #ffff00;"&gt;pBitRevTable&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background: #ffff00;"&gt;);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;(ifftFlag == 1u)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; invL = 1.0f/(&lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;float32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;)L;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f;"&gt;/*&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f; text-decoration: underline;"&gt;Conjugate&lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f;"&gt; and scale output data */&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; pSrc = p1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;for&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;(l=0; l&amp;lt;L; l++) {&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt; *pSrc++ *= invL ;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; *pSrc = -(*pSrc) * invL;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;pSrc++;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;in the debug window I captured the following result&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13017_13017.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119850i7DC84BB5CC8EBA6D/image-size/large?v=v2&amp;amp;px=999" role="button" title="13017_13017.jpg" alt="13017_13017.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="bitreversal.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44718iE3B563F78D3EDF9D/image-size/large?v=v2&amp;amp;px=999" role="button" title="bitreversal.jpg" alt="bitreversal.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;entering the loop&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13018_13018.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119851iF546DB0D4A91F5CD/image-size/large?v=v2&amp;amp;px=999" role="button" title="13018_13018.jpg" alt="13018_13018.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="entered lop.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44719iC81A690917C7A8A7/image-size/large?v=v2&amp;amp;px=999" role="button" title="entered lop.jpg" alt="entered lop.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;hanged&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13019_13019.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119852i21917991B872FAA1/image-size/large?v=v2&amp;amp;px=999" role="button" title="13019_13019.jpg" alt="13019_13019.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="codehanged.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44720iF263B3B8E4BAECA4/image-size/large?v=v2&amp;amp;px=999" role="button" title="codehanged.jpg" alt="codehanged.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;i/p to CFFT function&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13021_13021.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119853i2B06E811C3CE00C7/image-size/large?v=v2&amp;amp;px=999" role="button" title="13021_13021.jpg" alt="13021_13021.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="ip.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44721i0DA77C449266B3A9/image-size/large?v=v2&amp;amp;px=999" role="button" title="ip.jpg" alt="ip.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The o/p of CFFT without bit reversal&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13022_13022.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119854iA8922587D81ACDB3/image-size/large?v=v2&amp;amp;px=999" role="button" title="13022_13022.jpg" alt="13022_13022.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="op.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44722i2CB1965C0BA5F29E/image-size/large?v=v2&amp;amp;px=999" role="button" title="op.jpg" alt="op.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Kind Regards&lt;/P&gt;&lt;P&gt;Amit Kumar&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-337849"&gt;K20-CMSIS-Test-30-06-2014.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 02 Jul 2014 10:12:12 GMT</pubDate>
    <dc:creator>Amit_Kumar1</dc:creator>
    <dc:date>2014-07-02T10:12:12Z</dc:date>
    <item>
      <title>code hanging in arm_bitreversal_32() function of CMSIS library</title>
      <link>https://community.nxp.com/t5/CodeWarrior-Development-Tools/code-hanging-in-arm-bitreversal-32-function-of-CMSIS-library/m-p/314971#M918</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;I am using CMSIS 3.2 library along with codewarrior 10.6, with FRDM-K20D50M board, In that I am using &lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;arm_cfft_f32(&amp;amp;arm_cfft_sR_f32_len16, testInput_f32_10khz, ifftFlag, doBitReverse); &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;function present in &lt;STRONG&gt;arm_fft_bin_example_f32 &lt;/STRONG&gt;which is present in CMSIS3.2 library(I reduced the size as it was overflowing the uc 's memory) In that when &lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt; doBitReverse = 1&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; , The code hangs in the highlighted line of the following code which is present in the &lt;STRONG&gt;arm_cfft_f32.c &lt;/STRONG&gt;. When &lt;SPAN style="color: #000000;"&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt; doBitReverse = 0 &lt;/STRONG&gt;&lt;/SPAN&gt;, The code works except the bit reversal is not done. Kindly look into the issue &lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;&lt;STRONG&gt;arm_cfft_f32&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;( &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;const&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;arm_cfft_instance_f32&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; * S, &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;float32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; * p1,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;uint8_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; ifftFlag,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;uint8_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; bitReverseFlag)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;uint32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; L = S-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000c0;"&gt;fftLen&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;, l;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #005032;"&gt;float32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; invL, * pSrc;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;(ifftFlag == 1u)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f;"&gt;/*&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f; text-decoration: underline;"&gt;Conjugate&lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f;"&gt; input data */&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; pSrc = p1 + 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;for&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;(l=0; l&amp;lt;L; l++) {&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; *pSrc = -*pSrc;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; pSrc += 2;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;switch&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; (L) {&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 16: &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 128:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 1024:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; arm_cfft_radix8by2_f32 ( (&lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;arm_cfft_instance_f32&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; *) S, p1);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;break&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 32:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 256:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 2048:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; arm_cfft_radix8by4_f32 ( (&lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;arm_cfft_instance_f32&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; *) S, p1);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;break&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 64:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 512:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; 4096:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-family: Courier New,monospace;"&gt;&lt;SPAN style="font-size: 10pt;"&gt;arm_radix8_butterfly_f32( p1, L, (&lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;float32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt; *) S-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000c0;"&gt;pTwiddle&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;, 1);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;break&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; } &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;( bitReverseFlag )&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #000000; background: #ffff00;"&gt;arm_bitreversal_32((&lt;/SPAN&gt;&lt;SPAN style="color: #005032; background: #ffff00;"&gt;uint32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background: #ffff00;"&gt;*)p1,S-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000c0; background: #ffff00;"&gt;bitRevLength&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background: #ffff00;"&gt;,S-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #0000c0; background: #ffff00;"&gt;pBitRevTable&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background: #ffff00;"&gt;);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="min- padding: 0px; text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;(ifftFlag == 1u)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; invL = 1.0f/(&lt;/SPAN&gt;&lt;SPAN style="color: #005032;"&gt;float32_t&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;)L;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f;"&gt;/*&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f; text-decoration: underline;"&gt;Conjugate&lt;/SPAN&gt;&lt;SPAN style="color: #3f7f5f;"&gt; and scale output data */&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; pSrc = p1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #7f0055;"&gt;&lt;STRONG&gt;for&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000;"&gt;(l=0; l&amp;lt;L; l++) {&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt; *pSrc++ *= invL ;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; *pSrc = -(*pSrc) * invL;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;pSrc++;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000;"&gt; &lt;SPAN style="font-size: 10pt; font-family: Courier New,monospace;"&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="western" style="text-align: justify;"&gt;&lt;SPAN style="color: #000000; font-family: Courier New,monospace;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;in the debug window I captured the following result&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13017_13017.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119850i7DC84BB5CC8EBA6D/image-size/large?v=v2&amp;amp;px=999" role="button" title="13017_13017.jpg" alt="13017_13017.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="bitreversal.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44718iE3B563F78D3EDF9D/image-size/large?v=v2&amp;amp;px=999" role="button" title="bitreversal.jpg" alt="bitreversal.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;entering the loop&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13018_13018.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119851iF546DB0D4A91F5CD/image-size/large?v=v2&amp;amp;px=999" role="button" title="13018_13018.jpg" alt="13018_13018.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="entered lop.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44719iC81A690917C7A8A7/image-size/large?v=v2&amp;amp;px=999" role="button" title="entered lop.jpg" alt="entered lop.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;hanged&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13019_13019.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119852i21917991B872FAA1/image-size/large?v=v2&amp;amp;px=999" role="button" title="13019_13019.jpg" alt="13019_13019.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="codehanged.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44720iF263B3B8E4BAECA4/image-size/large?v=v2&amp;amp;px=999" role="button" title="codehanged.jpg" alt="codehanged.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;i/p to CFFT function&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13021_13021.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119853i2B06E811C3CE00C7/image-size/large?v=v2&amp;amp;px=999" role="button" title="13021_13021.jpg" alt="13021_13021.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="ip.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44721i0DA77C449266B3A9/image-size/large?v=v2&amp;amp;px=999" role="button" title="ip.jpg" alt="ip.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The o/p of CFFT without bit reversal&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="13022_13022.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/119854iA8922587D81ACDB3/image-size/large?v=v2&amp;amp;px=999" role="button" title="13022_13022.jpg" alt="13022_13022.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="op.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/44722i2CB1965C0BA5F29E/image-size/large?v=v2&amp;amp;px=999" role="button" title="op.jpg" alt="op.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Kind Regards&lt;/P&gt;&lt;P&gt;Amit Kumar&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-337849"&gt;K20-CMSIS-Test-30-06-2014.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 02 Jul 2014 10:12:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-Development-Tools/code-hanging-in-arm-bitreversal-32-function-of-CMSIS-library/m-p/314971#M918</guid>
      <dc:creator>Amit_Kumar1</dc:creator>
      <dc:date>2014-07-02T10:12:12Z</dc:date>
    </item>
  </channel>
</rss>

