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.

IWRL6432: CCNT for EDMA Configuration Transmitting ADC Buffer Data to HWA

Part Number: IWRL6432

Hello! I have a question while reviewing the range processing DPU source code, regarding to the EDMA transmission between ADC buffer and HWA.

In the function rangeProcHWA_ConfigEDMA_DataIn(), the EDMA is configured as follows:

My questions are:

  • Why is DPParams->numTxAntennas the value for shadowParams.cCnt?
  • Why shadowParam.srcAddr are the same for the two parameter sets? I'm assuming that one is for the transmitting the ping buffer while the other is for the pong buffer.

I'm assuming that the ADC buffer is in Single-Chirp Mode, which means that each Tx chirp will trigger the EDMA transmission for 3 Rx channels ADC data. And the bytePerRxChan matches this configuration:

From the range processing DPU block diagram, the ping and pong ADC buffers are adjacent:

It confuses me that if shadowParams.cCnt is 2 when 2 Tx antennas are used, isn't the EDMA accessing the pong ADC buffer as well when transmitting the ping buffer and vice versa? 

Thank you!

  • Hello,

    We will get back to you within 24 hours.

    Best Regards,

    Pedrhom

  • Hello.

    Apologies for the delay in response.

    Why is DPParams->numTxAntennas the value for shadowParams.cCnt?

    I believe the cCNT represents the number of times the EDMA runs, so since you need two chirps to trigger the HWA for range processing, you need to run the EDMA twice to move data from the ADC buffer to the HWA, once for each chirp.

    Why shadowParam.srcAddr are the same for the two parameter sets? I'm assuming that one is for the transmitting the ping buffer while the other is for the pong buffer.

    This plays directly into the previous point, as you are reading from the same ADC buffer, but are writing the data to either the ping or the pong path, which is why the source address is the same, but the destination is what varies.

    Sincerely,

    Santosh

  • Hello Santosh, thank you for your reply!

    However, I still have some confusion:

    • Since the ADC buffer is in the Single-Chirp Mode, which means that an interrupt will be sent to EDMA when one 1 chirp (for example, Tx0) is received by the 3 Rx antennas and save to ADC buffer (for example, the Ping buffer). At this time, Tx1 has not finish its transmission yet so the Pong buffer doesn't have the latest data. If we transfer with CCNT as 2, aren't we sending old data to the HWA since we are reading data from 2 Tx chirps?
    • The above description is based on my assumption (could be wrong) that the ADC buffer is in the Single-Chirp Mode because I couldn't find any code that configures the mode for ADC buffer, for example changing ADCBUFNUMCHRPPING. Could you point me to the location where the ADC buffer mode is configured for the motion and presence detection demo?

    Thanks,

    Ziang

  • Just an update and I think I figured it out.

    For an AB-Synchronized transfer, the CCNT will be the number of trigger event for this PaRAM to be satisfied.

    As a result, the EDMA that transfers the ADC data will not exhaust it PaRAM until two Tx worth of Rx antenna data has been transferred, which will then trigger the signature transfer.

    I would still like your input into this and please correct me if I'm wrong.

    Also as mentioned above, I would like to know where the configuration for modes of ADC buffer happens.

  • Hello Ziang.

    I am looking into this and will provide a response by end of day tomorrow.

    Sincerely,

    Santosh

  • As a result, the EDMA that transfers the ADC data will not exhaust it PaRAM until two Tx worth of Rx antenna data has been transferred, which will then trigger the signature transfer.

    I would still like your input into this and please correct me if I'm wrong.

    This is correct.  I think somewhere in the documentation it is mentioned that the term chirp is a misnomer in some parts, as sometimes a chirp will refer to the individual chirp and sometimes it will refer to a chirp as the completion of the two "chirps".  So yes the transfer will only be triggered once it gets the data from the 2 TX's.

    Also as mentioned above, I would like to know where the configuration for modes of ADC buffer happens.

    I believe this is controlled by ChirpTxMimoPatSel, which controls how the device is going to chirp(either in TDMA_2TX or BPM_2TX mode), but let me confirm this and I will provide a follow up by tomorrow.

    Sincerely,

    Santosh