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.

AFE7950: My AFE7950 device may fail during a bringoup

Part Number: AFE7950

My AFE7950 device may fail during a bringoup. Please help me analyze the issue. Thank you.

The txt file was generated by me using Latte, and the bringpp. c file was converted into C language according to the txt document.

When executing the program, bringpp. c will return an error on line 13463.

My board uses AFE7590+LMK+FPGA. I am using the SPI interface of FPGA to configure AFE7950.

Is the error returned while executing load the serdes firmware?

8400.Afe79xxPg1.txtbringup.c

  • Hi Yake,

    Are you able to share the Script that was used to generate the log file you attached? We can test this on our side and see if there are any issues with the script itself. 

    To help figure out the exact cause of the error can you also add a read of register 0xF0 before the poll and share the value of this register before the poll? 

    Regards,

    David Chaparro

  • script.rar

    AFE ID: 0[../src/CAFE2p1/Afe79xx/Src/tiAfe79_basicFunctions.c][ti_afe79_afeSpiPollWrapper][605]ERROR:POLL Fail: Address: 0xF0, lsb: 0, msb: 0, Expected Value: 0x1, Read Value: 0x0

    Hi David,

    This is my script file and the result of running the bringup program. The value of register 0xF0 is 0, and the expected value is 1.

    At present, I only use the LMK chip configured in the software to provide AFE with a clock, with REFCLK of 491.52Mhz and SYSREF of 2.8022Mhz.

    After configuring the LMK clock, I directly executed the bringup program and returned an error. Do I have anything else to do with FPGA?

  • afe.rar

    Hi David,

          Please ignore the attachment in my previous reply. The compressed package I uploaded contains py scripts, txt files, and the bringup C program.  

          The following is the console printed information when the program runs incorrectly, this time on line 15096. 

    AFE ID: 0[../src/CAFE2p1/Afe79xx/Src/tiAfe79_basicFunctions.c][ti_afe79_afeSpiPollWrapper][605]ERROR:POLL Fail: Address: 0xF0, lsb: 0, msb: 0, Expected Value: 0x1, Read Value: 0x0

    AFE ID: 0[../src/app/bringup.c][AFE_Bringup][15096]ERROR:AFE FROM FILE POLL Failed: 0x00f0[0:0] = 0x0001

           I found that the current of the device was too high when the error occurred. The voltage I provided to the device is 5V, and the maximum current is 4.5A.

           At this stage, I just want to test whether AFE can work properly, so I want its tx channel to output a frequency so that I can see the signal on the spectrometer. I'm not sure if there are any errors in my script. Can you help me check?

           I have another question, is the sysref signal provided to AFE by the LMK chip?  Are these three parameters related to this clock:useSpiSysref、continuousSysref,sysrefTermination ?

  • Hello, do you have any suggestions for the script I uploaded?

  • Hi Yake,

    Just to confirm, are you using the AFE7950EVM or a custom board? When using the AFE7950EVM we recommend using a power supply capable of 5V, 5A, as during the bringup there are current spikes that the power supply must be capable of supporting. Before bringing up the AFE are you also making sure that the LMK has been programmed and have a stable output?

    If you are using the AFE EVM then the LMK is providing the SYSREF to the AFE. The three parameters that you mention are related to the SYSREF but in different cases. The useSpiSysref is for using a sysref that is internal to the AFE and the AFE will ignore any SYSREF inputs. The continuousSysref sets the AFE to expect the SYSRE input to be continuous instead of pulsed or single shot. The sysrefTermination controls the internal SYSREF termination. The SYSREF termination is programmable between 100Ω, 150Ω and 300Ω. 


    Regards,

    David Chaparro