I am trying to use the dsp.CICDecimatior function and comparing the output to a C code algorithm that I have. The CIC decimator is configured as decimation of 8, 3 sections and differential delay equals 1.
below is the code used and attached I have the input vector:
CIC1 = dsp.CICDecimator(8,1,3);
CIC1.SectionWordLengths=[32 32 32 32];
CIC1.FixedPointDataType='Specify word lengths'
The output looks mirrored as you can see in the figure below:
I am confident that the C code output is correct, because I have compared it to the following C++ :
Both produced the same output, so the issue have to be in my Matlab code.
Any ideas why the Matlab output is mirrored?