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.

AFE7920: Buggy AGC/ALC initialization

Part Number: AFE7920
Other Parts Discussed in Thread: AFE7903

We are using the AGC/ALC on a AFE7903 to switch the LNA. The behaviour was allways not as expected and we were unable to get it running also with your help. See https://e2e.ti.com/support/rf-microwave-group/rf-microwave/f/rf-microwave-forum/1360886/afe7903-lna-bypass-gain-alc-lna-gain-compensation-issue?tisearch=e2e-sitesearch&keymatch=afe7903%2520agc#

But now I was able to get it running as expected and described in your documents. The reason was, that the initialization is buggy. If I configure everything, the ALC LNA compensation don't work. But if I'm calling AFE.agcAlcConfiguration() again after AFE.deviceBringup() it works as expected. So there is some initialization bug.

We are using the newest SW 2.9.

  • Hi Christian,

    Yes, I have observed similar recently as well. You can either call agcAlcConfiguration() after the bringup or you can add this code after AFE.deviceBringup() to properly set the paramters in the AFE:

    AFE.deviceBringup()
    CAFE.closeAllPages(0)
    
    ## LNA bypass setup
    for ch in range(4):
        if sysParams.agcParams[ch].lnaEn:
    		#info(sysParams.agcParams[ch].lnagain0)
    		val = sysParams.agcParams[ch].lnagain0			# LNA bypass value 
    		device.writeReg(0x12, 0x1<<ch)                  # open RX_TOP page
    		device.writeReg(0x4BC, (val&0xff))              # lnagain0[7:0]
    		device.writeReg(0x4BD, ((val >> 8) &0x7))       # lnagain0[10:8]
    		device.writeReg(0x12,0)                         # close RX_TOP page

    The lnaGain0 param (which specifies how much the DSA should increase once LNA is bypassed) is bugged and not set correctly, and is by default set to 0. Then, when the LNA is bypassed, the AFE reduces the DSA by lnaGain0, which it thinks is 0, so this looks like the LNA bypass is not working.

    You can use the above code to directly set the lnaGain0 parameter in the correct register. Note that lnaGain0 has a resolution of 1/32 dB, so set lnaGain0 to be 32 times your LNA gain. For example, for a 15 dB LNA, set lnaGain0 = 480.

    Thanks!

    Aman

  • Hi Aman

    Thanks for the clarification. Any idea when this get fixed in the SW?