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.

AFE7900: What is PRBS enable sequence

Part Number: AFE7900


Hi everyone,

I have a problem in RX chain. I want to know why.

So, I want to check SERDES line firstly. But I can't enable the TX PRBS generator.

After initialization sequence which is created by latte scripts, I write E8h to 4141h address of both SERDES's Pages. But I cannot see any different from before on ILA.

Is there any other write process is needed to enable TX PRBS?

The 1STX and 8STX are connected to FPGA. 

  • Is there anybody help me? 

  • Hi Suleyman,

    The issue that you are facing is that for the AFE SERDES registers are internally 16-bits wide. In the register map, the MSB and LSB addresses are directly given as 8-bits wide, but to access these SERDES register both 8-bit registers must be accessed together. 

    This means that to enable the PRBS you should write 0xE8 to 0x4141 followed by writing 0x0 to 0x4140.

    Regards,

    David Chaparro

  • Thank you sir, I also want the enable the RX PRBS Register in 5th and 6th SERDES lane.

    Should I write 0x40 to address 16'h or 0x20 to address 16'h?  

    I want to set the 4084h number of the SERDES page in the SBAU 337 Register Set document. 
    How can I write the address 4084h to activeated PRBS enable?

     

    I want to check the correctness of the SERDES line in the receiving direction of the AFE by activating the PRBS sending feature of the FPGA.
    For this purpose, I need to active the 4084h number of the SERDES page in the SBAU 337 Register Set document. 
    In the document it's written that 4098h, 4099h, 409ah, 409bh addresses must be read to check PRBS errors.
    How can I read that these addresses in SPI? Could you explain the sequence of read of SERDES page.

  • Hi Suleyman,

    To enable the Rx PRBS for the 5th and 6th SERDES lane you should write 0x40 to address 0x16. 

    An example of writing to register 0x4084 is shown below:

    device.writeReg(0x4285,0x00)

    device.writeReg(0x4284,0x06)

    To read registers in the SERDES page you must readback each of the registers twice and only use the second value that is read.
    An example of reading registers in the SERDES page:
    device.readReg(0x4099)
    device.readReg(0x4099) # Only use this value
    device.readReg(0x4098)
    device.readReg(0x4098) # Only use this value

    Regards,

    David Chaparro