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.

RTOS/AWR1843: About DPC of AWR1843.

Part Number: AWR1843

Tool/software: TI-RTOS

In aoaprochwa.h (C:\ti\mmwave_sdk_03_01_00_02\packages\ti\datapath\dpc\dpu\aoaproc)
Line:128 to 140;

We have 3 questions.

1. #define DPU_AOAPROCHWA_NUM_ANGLE_BINS 64
Can we change DPU_AOAPROCHWA_NUM_ANGLE_BINS ourselves?
How would we do if it can do it?

2. When elevation is enabled, FFT buffers can hold a maximum of 64 objects.
Does this mean that it will crash if the number of targets exceeds 64?
Or it only holds up to 64 targets.

3. A: Hwa memory size (M3) = 16KB(at Line:129) and A: Hwa memory size (M2+M3) = 32KB(at Line:136)
Can we change Hwa memory size (M3) ourselves?
How would we do if it can do it?


Regards,
JuiYang

  • Hi
    #1 changing the number of angle bins requires changing the HWA config.
    #2 increasing the max number of objects would require increasing the allocated memory. This means changing the memory map
    #3 The size of HWA memories M0, M1, M2, M3 is fixed to 16KB each.

    Thank you
    Cesar
  • Hi Cesar,

    Thank you.
    I still have two questions.

    1.Can I change Hwa memory size to be 64KB when elevation is enabled?
    Because our client want the maximum of objects to be 128 when elevation is enabled.
    At the same time size of azimuth FFT will be 128.

    How would we do if it can do it?

    2.If I change the parameter in aoaprochwa.h and use setenv.bat build a new one.
    Will the DPC be configured as a HW?

    Regards,
    JuiYang

  • Hi,

    Can you please send me the doc section of lines of code you are looking at for

    - elevation enabled
    - maximum number of objects

    thank you
    Cesar
  • Hi Cesar,

    #define DPU_AOAPROCHWA_NUM_ANGLE_BINS 128
    #define DPU_AOAPROCHWA_MAX_OBJ_WITH_3_TX_ANT 128

    In C:\ti\mmwave_sdk_03_01_00_02\packages\ti\datapath\dpc\dpu\aoaproc\aoaprochwa.h (Line:125~133)

    Regards,
    JuiYang

  • Hi,

    I looked the SDK 3.1 OOB demo code and the comments are correct. When elevation is enabled we are limited by HWA memory sizes and can only support 64 objects..

    If you need to detect more objects you will need to wait for SDK 3.2 release by end May which will support AoA on DSP and will have more flexibility.

    In SDK 3.1 only HWA AoA is supported

    thank you
    Cesar


    /*! When elevation is enabled, FFT buffers can hold a maximum of 64 objects.
    A: Hwa memory size (M3) = 16KB
    B: Azimuth FFT size = 64
    C: Complex sample size = 4 bytes
    Maximum number of objects = A / (B*C) = 64*/
    #define DPU_AOAPROCHWA_MAX_OBJ_WITH_3_TX_ANT 64

    /*! With elevation disabled, FFT buffers can hold a maximum of 256 objects.
    A: Hwa memory size (M2+M3) = 32KB
    B: Azimuth FFT size = 64
    C: log magnitude sample size = 2 bytes
    Maximum number of objects = A / (B*C) = 256 */
    #define DPU_AOAPROCHWA_MAX_OBJ_WITH_2_TX_ANT 256
  • Hi Cesar,

    We still have a question.
    We use AWR1843-EVM when elevation is enabled. [4Rx, 3Tx (15deg + Elevation)]
    But why the number of detected object can be more than 64. (Maximum number of objects in aoaprochwa.h)

    Regards,
    JuiYang

  • Hi,

    This is a good question.

    Let me look into it

    Just give me a few days

    thank you
    Cesar
  • Hi,

    I checked with the development team.

    They mentioned that in SDK 3.1 demo they implemented some "chunking" During a frame, 64 objects are detected, however the display buffer is a circular buffer that keeps a history of last 256 objects detected. This is the reason why the Visualizer shows Number of detected objects larger than 64.

    I will close this thread now

    Thank you
    Cesar
  • Hi,

    I have discussed this question again with the SDK development team.

    In the mmWave SDK 3.1 there are some improvements. There is no more 64 objects limitation when elevation is used. The maximum objects processed with elevation is defined in "objectdetection.c" by "#define DPC_OBJDET_MAX_NUM_OBJECTS 500U"

    This value can be increased up to 2K as long as there is sufficient memory for "DPIF_PointCloudCartesian"

    I hope this helps your project

    thank you
    Cesar
  • Hi Cesar,

    Thanks for your update. I'm not sure where the memory allocation for the DPIF_PointCloudCartesian datatype is handled, but can you provide any more information on the points-per-scan upper bound given the memory allocation defined for the DPIF_PointCloudCartesian datatype in the most current version of SDK 3.1?

    My experience with the 1843BOOST has been that the sensor will die for scans containing above ~300 points. I haven't been able to get near the 500 point limit, and so I'm wondering if pushing beyond that is actually feasible (you mentioned up to 2k points) given the current memory allocation for the DPIF_PointCloudCartesian datatype.

    Thanks,

    Carl

  • Hi,
    Sorry for the delay

    For SDk 3.1 the memory allocation of point cloud is coming from the general local memory available on MSS which is shared with a lot of other allocations so it depends on how much is left on the heap although the heap itself may be increased as there is a lot of memory on the MSS left.

    For SDK 3.2 which uses the DSP the memory allocation is different since DSP memory is used.

    Notice that higher number of points translates to higher processing cycles. SO, yoy may hit a limitation there.

    It is very unusual to expect so many detections every frame

    The 2K limit is due to HWA, it is unlikely to be reached as we do the intersection of doppler and range CFARs and each is hard limited to 1K [due to other limits doppler is below 512] so even with very low cfar threshold, you are unlikely to hit 2K.

    Thank you
    Cesar