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.

AWR2944EVM: Phase Shifter issue

Part Number: AWR2944EVM
Other Parts Discussed in Thread: AWR2944

Hello,

I only activated Tx0 and set the Phase Shifter as follows:
Profile id(0) - Phase Shifter Tx0(deg) : 0
Profile id(1) - Phase Shifter Tx0(deg) : 180
Profile id(2) - Phase Shifter Tx0(deg) : 0
Profile id(3) - Phase Shifter Tx0(deg): 180

I think Phase Shifter works like this:
Chirp0 - Profile id(0)
Chirp1 - Profile id(1)
Chirp2 - Profile id(2)
Chirp3 - Profile id(3)
Chirp4 - Profile id(0)
Chirp5 - Profile id(1)
Chirp6 - Profile id(2)
Chirp7 - Profile id(3)
...
Chirp127 - Profile id(2)
Chirp128 - Profile id(3)
Q1. Is this how Phase Shifter works?

And, the result of phase of 128 chirp through raw data is as shown in the attached picture.

Based on these results, it looks like Phase Shifter is not working properly.

Q2. Is there some problem? and how do I solve this problem?

Thanks,

Jason

  • Here is the result without Phase Shifter, please refer to it.
    Profile id(0) - Phase Shifter Tx0(deg) : 0
    Profile id(1) - Phase Shifter Tx0(deg) : 0
    Profile id(2) - Phase Shifter Tx0(deg) : 0
    Profile id(3) - Phase Shifter Tx0(deg): 0

    I think there is no error.

  • This result is the same as the result without Phase Shifter above, only the scale is different.

  • Hi Jason,

    Can you please elaborate on the following:

    1. The method you used to compute the phase that you have shown in the plots above.
    2. Can you describe the programming performed to introduce the phase shift in your test? This could be the APIs used etc.

    Regards,

    Kaushik

  • Hi Jason,

    Could you please answer my first question?
    -> Q1. Is this how Phase Shifter works?

    For the results, the raw data was used into MATLAB and fft was taken directly for each chirp.
    Then, the phase of the point corresponding to the target distance was checked.
    I don't use any APIs

    These are the results of my own simulation.

    <no shifter>

    <shifter (0->180->0->180) >

    Shouldn't the measurement results be the same as my own simulation results?

    Thanks,

    Jason

  • Hi Jason,

    This is what the per chirp phase shifter API looks like (i.e this is how the programming will be done on the device). Each chirp which is associated with its own ID can be programmed to have a phase shift for each of the transmitter available.

    This would look like:

    Chirp (0) -> Tx0: PhaseShift0; Tx1: PhaseShift1; Tx2: PhaseShift2; Tx3: PhaseShift3.

    Chirp (1) -> Tx0: PhaseShift0; Tx1: PhaseShift1; Tx2: PhaseShift2; Tx3: PhaseShift3.

    Chirp (2) -> Tx0: PhaseShift0; Tx1: PhaseShift1; Tx2: PhaseShift2; Tx3: PhaseShift3.

    .

    .

    . and so on. Each chirp can also be mapped to its own profile ID so there is no dependency on that here.

    • The way you calculate the phase from the ADC data seem okay.
    • Can you once again check and confirm if your programming and simulation are matching?
    • Can you also look at the starting phase of these chirps in time domain as well? (If the scene is completely static for your test duration)

    Regards,

    Kaushik

  • Hi Kaushik,

    sorry. I misunderstood your question and I am answering again.

    2. Can you describe the programming performed to introduce the phase shift in your test? This could be the APIs used etc.
    -> My tool installation environment is as follows: mmwave_mcuplus_sdk_04_05_00_02 / mmwave_studio_03_01_01_00
    -> My HW configuration is as follows: AWR2944 EVM, DCA1000 EVM

    So I'm using 'mmWave Studio 3.1.1.0'.
    I am testing only Tx0 using Phase Shifter (0->180->0->180) as follows:


    Thanks,
    Jason