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.

ADS52J90: PRBS Polynomial

Part Number: ADS52J90

Hello, 

Can you please describe the PRBS patterns (23-bit and 9-bit) supported by the device? I don't see any mention of polynomials or reset values in the datasheet.

  • Hello Tyler,

    Thank you for the interest in ADS52J90 device.

    Regarding the question on PRBS patterns, I will check with the team and get back to you by mid next week.
  •  after enabling PRBS mode and selecting the PRBS generator mode, follow below steps to detect valid PRBS pattern on the LVDS data. It is assumed that device is configured in 14 bit LVDS serialization factor.

    1)      Apply a trigger pulse on the TX_TRIG pin (This will start the PRBS pattern with seed value).

    2)      Depending on the PRBS_MODE bit logic, the device gives out the respective seed value as listed below. So RTL logic that looks for valid PRBS data on the device output in the FPGA should wait for valid seed value.

    1. Seed value for PRBS_MODE = 0 -> “00111000000010”
    2. Seed value for PRBS_MODE = 1 -> “10001101111110”

    3)      The next value can be calculated from this seed value using the logic given below.

    1. a.      Logic to get next data for PRBS_MODE = 0.

    Initial PRBSdata = "01010011011100000001010"

    Following steps calculates next PRBS data sent out be device:

    PRBSdata(22 to 12) <= PRBSdata(10 to 0)

    PRBSdata(15)   <=   PRBSdata(17)              xor        PRBSdata(22)

    PRBSdata(14)   <=   PRBSdata(16)   xor    PRBSdata(21)

    PRBSdata(13)   <=   PRBSdata(15)   xor    PRBSdata(20)

    PRBSdata(12)   <=   PRBSdata(14)   xor    PRBSdata(19)

    PRBSdata(11)   <=   PRBSdata(13)   xor    PRBSdata(18)

    PRBSdata(10)   <=   PRBSdata(12)   xor    PRBSdata(17)

    PRBSdata(9)     <=   PRBSdata(11)   xor    PRBSdata(16)

    PRBSdata(8)     <=   PRBSdata(10)   xor    PRBSdata(15)

    PRBSdata(7)     <=   PRBSdata(9)    xor      PRBSdata(14)

    PRBSdata(6)     <=   PRBSdata(8)    xor      PRBSdata(13)

    PRBSdata(5)     <=   PRBSdata(7)    xor      PRBSdata(12)

    PRBSdata(4)     <=   PRBSdata(6)    xor      PRBSdata(11)

    PRBSdata(3)     <=   PRBSdata(5)    xor      PRBSdata(10)

    PRBSdata(2)     <=   PRBSdata(4)    xor      PRBSdata(9)

    PRBSdata(1)     <=   PRBSdata(3)    xor      PRBSdata(8)

    PRBSdata(0)     <=   PRBSdata(2)    xor      PRBSdata(7)

    PRBS_OUT     <=   (PRBSdata(15 to 2) + 8192)   when   (PRBSdata(15 to 2) > 8192)   else ( PRBSdata(15 to 2) – 8192)

     

    1. b.     Logic to get next data for PRBS_MODE = 1

    Initial PRBSdata = "00000000000110111111001"

    Following steps calculates next PRBS data sent out be device:

    PRBSdata(15)   <=     PRBSdata(4) xor PRBSdata(8)

    PRBSdata(14)   <=     PRBSdata(3) xor PRBSdata(7)

    PRBSdata(13)   <=     PRBSdata(2) xor PRBSdata(6)

    PRBSdata(12)   <=     PRBSdata(1) xor PRBSdata(5)

    PRBSdata(11)   <=     PRBSdata(0) xor PRBSdata(4)

    PRBSdata(10)   <=     PRBSdata(4) xor PRBSdata(8) xor PRBSdata(3)

    PRBSdata(9)     <=     PRBSdata(3) xor PRBSdata(7) xor PRBSdata(2)

    PRBSdata(8)     <=     PRBSdata(2) xor PRBSdata(6) xor PRBSdata(1)

    PRBSdata(7)     <=     PRBSdata(1) xor PRBSdata(5) xor PRBSdata(0)

    PRBSdata(6)     <=     PRBSdata(0) xor PRBSdata(4) xor PRBSdata(4) xor PRBSdata(8)

    PRBSdata(5)     <=     PRBSdata(4) xor PRBSdata(8) xor PRBSdata(3) xor PRBSdata(3) xor PRBSdata(7)

    PRBSdata(4)   <=     PRBSdata(3) xor PRBSdata(7) xor PRBSdata(2) xor PRBSdata(2) xor PRBSdata(6)

    PRBSdata(3)   <=     PRBSdata(2) xor PRBSdata(6) xor PRBSdata(1) xor PRBSdata(1) xor PRBSdata(5)

    PRBSdata(2)   <=     PRBSdata(1) xor PRBSdata(5) xor PRBSdata(0) xor PRBSdata(0) xor PRBSdata(4)

    PRBSdata(1)   <=     PRBSdata(0) xor PRBSdata(4) xor PRBSdata(4) xor PRBSdata(8) xor PRBSdata(4)   xor

         PRBSdata(8) xor PRBSdata(3)

    PRBSdata(0)   <=     PRBSdata(4) xor PRBSdata(8) xor PRBSdata(3) xor PRBSdata(3) xor PRBSdata(7)   xor

         PRBSdata(3) xor PRBSdata(7) xor PRBSdata(2)

    PRBS_OUT     <=   (PRBSdata(15 to 2) + 8192)   when   (PRBSdata(15 to 0) > 8192)   else ( PRBSdata(15 to 0) – 8192)

    Thanks!