Please note: We are aware of an issue affecting replies on the Arm Community forums, which may not be loading as expected.

We apologize for any inconvenience and appreciate your patience while we investigate and work to resolve the issue.

Thank you for your understanding.


This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

CMSIS DSP Convolution example ??HELP??

I am new to the CMSIS DSP libraries and was going through the convolution example www.keil.com/.../arm_convolution_example_f32_8c-example.html. I understand the flow and my only confusion is the output generated and stored in testRefOutput_f32[].

If I do a direct convolution using arm_conv_f32(), I get a different output (see below ConvOutput[]) which matches what I get in Matlab using the conv() function or doing an fft convolution (z=ifft(fft(x,length(x)+length(y)-1).*fft(y,length(x)+length(y)-1))) with the 2 input arrays testInputA_f32[] and testInputB_f32[].

I am a bit confused as to the different outputs and any insight would be very helpful.

ConvOutput[]={-0.755308018,1.229485034,0.10131416,1.016604633,3.502613814,-1.963654563,6.472972163,3.478031305,1.954949486,6.648379937,-3.996195718,1.792012056,-0.586438574,-7.447816242,-1.3
84041433,-10.65744205,-6.240046558,-6.524235584,-6.546002989,-3.739002659,-3.087535502,0.184150477,2.158228464,3.786510619,0.834278033,5.400613305,2.731501134,7.403361883,4.647
78187,2.080267431,-4.808539835,2.749673099,-7.002291217,2.748762471,-4.448640435,0.981555193,0.704749604,0.552720292,-3.828611537,4.703986428,-6.858765161,8.759337937,-10.91725
001,-3.994683449,-9.327700559,-5.014144908,-8.460611773,1.599489267,-15.68536376,-0.39188456,7.548501968,-2.311238772,2.634787105,1.761418676,0.969400228,10.43300656,-1.8420863
56,4.297158491,3.565491908,3.209464906,-3.744203172,5.569915527,-0.109928189,5.582024558,13.78780707,0.642280568,14.36921433,1.686617503,0.212125507,1.343078987,6.937862136,1.0
99071806,-0.251404117,-0.173721376,-7.797617973,6.528383368,-8.177245377,1.726289794,2.163856296,11.02343867,-1.56735296,-4.690185416,2.686433843,3.9438**141,11.81517545,5.1683
66058,2.191606134,1.55918133,4.009872096,2.852416683,1.00816686,-6.369077828,-1.809436282,11.83796165,-4.108340361,4.469680087,3.357955135,-2.674046562,8.960443814,-6.809969954
,-0.914164719,9.112410682,5.461497019,-1.336679247,-2.214374312,-1.564298107,-6.913312679,8.904012238,-3.878144422,6.878010209,-5.203537038,3.369907792,0.845670751,-2.007356641
,-1.06352301,1.370684564,1.200765603,-6.276606386,3.905318469,-3.352637676,1.498066762,0.902210557,0.602243835,-1.40873175,0.312370773,0.34844076,-0.032509683}

[Some of the numbers might have '*' as the robot detects some numbers as spam]