This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AWR1843: Window coefficient generation function for HWA

Part Number: AWR1843

Hello, I've noticed that in the objectdetection.c file provided in the mmWave SDK, the DSP Range DPU calls the `

DPC_ObjDetDSP_genWindow()` function whereas the HWA Range DPU calls the `mathUtils_genWindow()` function to generate window coefficients. I'm getting significantly different results using these two functions, and using the DPC_ObjDetDSP_genWindow() seems to minimize error for me. Note, I've tried with Blackman/Hanning window as well as using Q15/Q17/Q19 formats.
My questions are:
1. What are the differences between these two functions, and why do they provide such different results?
2. Which function should the HWA call to generate window coefficients, in order to perform FFTs correctly.
Would really appreciate your insight, thank you!
  • Please give us some time to check with demo development team

    thank you

    Cesar

  • Hi,

    Here is some additional information for these functions

    The "mathUtils_genWindow()" was created initially for the HWA and it generates the window with configurable Q format, but always as uint32 per sample. Also since HWA can be configured to use  the half of the window coefficients, to save memory, this function has option to generate only half of the window size, in addition to full window size.

    The other function DPC_ObjDetDSP_genWindow() which calls mmwavelib_windowCoef_gen() was  created for DSP application, also has configurable Q format, but in addition it could store the output in int32 or int16 per sample, (input argument windowDatumType).

     Another  difference between the two function is the way how they calculate the window. The DSP version is optimized for real time calculation, it does call math sin/cos functions once, and then generates coefficients recursively, while the “HWA” version calls math sin/cos functions for every coefficient.

    So for the same window type (Blackman,Hanning,…), same Q format, same windowDatumType, same length, and full window option (for function meant for  HWA), the outputs should be almost identical.

    Since you see  a difference I recommend to plot the windows on top of each other and visually inspect the difference.

    It is possible that there is some corner case bug.

    Thank you

    Cesar