125 #ifndef ARM_MATH_CM0_FAMILY 137 uint32_t j, k = 0u, count, blkCnt, outBlockSize, blockSize1, blockSize2, blockSize3;
154 if(srcALen >= srcBLen)
163 outBlockSize = (2u * srcALen) - 1u;
169 j = outBlockSize - (srcALen + (srcBLen - 1u));
199 pOut = pDst + ((srcALen + srcBLen) - 2u);
215 blockSize1 = srcBLen - 1u;
216 blockSize2 = srcALen - (srcBLen - 1u);
217 blockSize3 = blockSize1;
237 pSrc1 = pIn2 + (srcBLen - 1u);
245 while(blockSize1 > 0u)
258 sum += *px++ * *py++;
260 sum += *px++ * *py++;
262 sum += *px++ * *py++;
264 sum += *px++ * *py++;
278 sum += *px++ * *py++;
329 blkCnt = blockSize2 >> 2u;
476 blkCnt = blockSize2 % 0x4u;
491 sum += *px++ * *py++;
492 sum += *px++ * *py++;
493 sum += *px++ * *py++;
494 sum += *px++ * *py++;
507 sum += *px++ * *py++;
546 sum += *px++ * *py++;
582 count = srcBLen - 1u;
585 pSrc1 = pIn1 + (srcALen - (srcBLen - 1u));
595 while(blockSize3 > 0u)
609 sum += *px++ * *py++;
611 sum += *px++ * *py++;
613 sum += *px++ * *py++;
615 sum += *px++ * *py++;
628 sum += *px++ * *py++;
655 float32_t *pIn2 = pSrcB + (srcBLen - 1u);
678 tot = ((srcALen + srcBLen) - 2u);
680 if(srcALen > srcBLen)
683 j = srcALen - srcBLen;
689 else if(srcALen < srcBLen)
695 pIn2 = pSrcA + (srcALen - 1u);
711 for (i = 0u; i <= tot; i++)
717 for (j = 0u; j <= i; j++)
720 if((((i - j) < srcBLen) && (j < srcALen)))
723 sum += pIn1[j] * pIn2[-((int32_t) i - j)];
float float32_t
32-bit floating-point type definition.
void arm_correlate_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst)
Correlation of floating-point sequences.