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.

MMWAVE-MCUPLUS-SDK: Question about the setting of HWA local max in SDK 4.2.0.3 DDMA demo

Hi,

In mmwave_mcuplus_sdk_04_02_00_03\ti\datapath\dpc\dpu\dopplerprocDDMA\src\dopplerprochwaDDMA.c, we can find below code in DPU_DopplerProcHWA_configHwaCFARAzimFFT(). We know the input formatter of local max is 32-bit complex data.

hwaParamCfg[paramsetIdx].source.srcRealComplex = 0; /* Fixed for Local Max */

hwaParamCfg[paramsetIdx].source.srcWidth = HWA_SAMPLES_WIDTH_32BIT; /* Fixed for Local Max */
hwaParamCfg[paramsetIdx].source.srcSign = obj->cfarAzimFFTCfg.localMaxIOCfg.input.isSigned;
hwaParamCfg[paramsetIdx].source.srcConjugate = 0;
hwaParamCfg[paramsetIdx].source.srcScale = 0;


But in DPU_DopplerProcHWA_config(), we found input data format of local max is 16-bit real data.

obj->cfarAzimFFTCfg.azimFFTIOCfg.output.bytesPerSample = sizeof(uint16_t);
...
obj->cfarAzimFFTCfg.localMaxIOCfg.input.isReal = 1;
obj->cfarAzimFFTCfg.localMaxIOCfg.input.bytesPerSample = obj->cfarAzimFFTCfg.azimFFTIOCfg.output.bytesPerSample;
obj->cfarAzimFFTCfg.localMaxIOCfg.input.isSigned = obj->cfarAzimFFTCfg.azimFFTIOCfg.output.isSigned;


The input formatter setting of local max and real local max input data format are different. This confused me and my customer. Would you pls kindly check and explain?

Is the input formatter of local max setting to 32-bit complex data to let the HW to do get 4 16-bit data one time? Is this the reason to fetch 3x4 matrix though using 3x3 matrix in local max?


Thanks,
Chris

  • Hi Chris,

                 Below is the snip from TRM of local maxima with the blue marking (this is the one array that is passed):

               The input formatter of local max setting is set to 32-bit complex data so as to get with 3 samples, the 24 bytes of data in one shot for 3 x 4 array as mentioned in the TRM (in section of local max).

               As SRCACNT is set to 2 - (3 samples) of 32-bit complex(8 bytes) are taken together in a single shot. The input to local formatter is expected to be 16-bit log-mag output.

               Let me please know if you have any questions.

    Thanks and Regards,

    Akshay

  • Akshay,

    Thanks for your reply.

    The real input data format of local max is 16-bit. After the HWA gets 4 16-bit samples by input formatter setting with complex 32-bit, it will re-org the input 64-bit data inside local max engine to get correct 4 samples?

    Best Regards,

    Chris

  • Hi Chris,

                 Yes that's right

                 Let me know if you have further queries.

    Regards,

    Akshay