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.

DS32EL0124/0421

Other Parts Discussed in Thread: DS32EL0124, DS32EL0421

Hello all,

my customer has problems to force our DS32EL0124 in the Locked mode.

Every feedback to overcome this situation is welcome.

Best regards

Egon

  • Hello all,

    attached a detailed desciption about the DS32EL0124 behavior:
    the customer addsonPins GB_RX_P/N a 3125 MHz, 8b/10b coded signal with an diff. amplidude of 600mV.
    Firts the customer sends only K28.5 word condinues and with a stable clock.
    Customer adds on GPIO0 the signal "Signal Detect RxIN0" via SMBus -> LED-V2 illuminates permanent.
    On the GPIO1 customer adds the signal "CDR Lock" -> LED-V3 flashes with a frequency of 2-4 Hz.

    With this setup the system gets not locked.

    The customer found a way to gets the system locked:
    He switches between k28.5 words and frames with different data = Dxy,z words.
    By switching between twelve k28.5 words and twenty Dxy.z words it was possible to lock the system.
    This status is stable up to 24 hours.

    Today the customer starts the system and after 3 upt to 4 hours the system gets locked without any
    action from the customer side.

    Best regards

    Egon
  • Hi Egon,

    It is challenging for us to determine what is the cause behind this particular pattern requirement. Can you provide a schematic or let us know what the setup is between DS32EL0421 and DS32EL0124?

    In particular, I'm interested in the RS and DC_B, as this effects the LOCK behavior of the FPGA-Link chipset (see Table 2 in the datasheet).

    Regards,

    Michael
  • Hello Michael,

    attached the schematic.

    Best regards

    Egon

  • Hello Michael,

    I talked to the customer. He did not use our DS32EL0421 as transmitter !

    die input signal is generated from an optical to electronical converter (SFP Modul Avago AFBR-57R5AEZ). (sfp.png)

    followed from a Gbit Crosspoint Switch (gbsw.png) and finally to our DS32EL0124.

     the customer try to reset the high-speed channel using the reset signal Reg[0x20] (Device Config) but also this do not work.

    Best regards

    Egon NB4N840M-D.pdf DS_AFBR-57R5AEZ_29Jan20130.pdf

  • Hi Egon,

    Thanks for the schematics and datasheets. These are helpful.

    It looks like RS_B = High and DC_B = Low, so Remote Sense is disabled and DC-Balance is enabled. This allows the DS32EL0124 to be used with any transmitter, so long as the transmitter encodes data in the same way that the DS32EL0421 does and is AC coupled. From the schematic, I can see the AC coupling at the output of the AFBR transceiver, and the DS32EL0124 schematic looks correct.

    Would you be able to get some more information about the transmitter and how the transmitter works, since they are not using the DS32EL0421?

    For example, it is important to keep the TXIN4 parallel input (Data Valid Input) to the transmitter high for 110 LVDS clock periods to allow the deserializer to lock properly. Also, it would be good for us to know whether any signal conditioning is being applied at the transmitter output. If the signal is overequalized, this can present issues for the DS32EL0124 to achieve lock, and it may be possible that a more transition-dense pattern, such as a combination of K28.5 and Dxy.z words, is creating a scenario that the DS32EL0124 can remain locked.

    Regards,

    Michael

  • Hi Egon,

    I also have another comment. Can the customer also AC-couple between the NB4N840M crosspoint output and the DS32EL0124 input?

    Even though the CML output level from the crosspoint should not be an issue, using an AC-coupling cap between crosspoint and DS32EL0124 will isolate the common mode of our DS32EL0124 from the other components in the signal path without interfering with signal integrity, since the data should already be DC-balanced according to their schematic.

    Thanks,

    Michael
  • It looks like RS_B = High and DC_B = Low, so Remote Sense is disabled and DC-Balance is enabled. This allows the DS32EL0124 to be used with any transmitter, so long as the transmitter encodes data in the same way that the DS32EL0421 does and is AC coupled. From the schematic, I can see the AC coupling at the output of the AFBR transceiver, and the DS32EL0124 schematic looks correct.

    Would you be able to get some more information about the transmitter and how the transmitter works, since they are not using the DS32EL0421?

    The transmitter is an ALTERA Cyclone-V FPGA that is connected to an electrical-optical converter (AFBR57). When the FPGA starts up it sends first an endless stream of K28.5 Characters.

    For example, it is important to keep the TXIN4 parallel input (Data Valid Input) to the transmitter high for 110 LVDS clock periods to allow the deserializer to lock properly. Also, it would be good for us to know whether any signal conditioning is being applied at the transmitter output. If the signal is overequalized, this can present issues for the DS32EL0124 to achieve lock, and it may be possible that a more transition-dense pattern, such as a combination of K28.5 and Dxy.z words, is creating a scenario that the DS32EL0124 can remain locked.

    As mentioned in my first mail an in the description above the Serializer is starting to send K28.5 characters only . In my case 110 LVDS clock periods equal about 360 nsec. Right ? So every K28.5 sequence that is longer than 360nsec should be Ok.

    Lets assume the serializer is active sending K28.5

    Lets assume that the deserializer-board (DS32EL0124) was powered down and is now powered on

    Now I have to set the cross-switch to a defined value and from that moment on the K28.5 stream is input to the DS32EL0124

    Then for at least some seconds nothing more happens to the system.

    When I decide to start data transmission I use a self written tool to activate data. That means that the Serializer is now sending 12 K-characters followed by 20 D-characters

    followed again by 12 K-characters and so on.

    So the condition you require with 110 LVDS clocks should be fulfilled.

     

    I add the answers from my customer in green.

     

    Best regards

    Egon

  • Hi Michael,

    my customer found in the meantime a procedure which forces our part to get locked:

    Attached registers are set:

    R[0x02] = 0x11: GPIO0 Signal detected @ RX0
    R[0x03] = 0x31: GPIO1 CDR Lock
    R[0x22] = 0x61: DeviceConfig + NRZ + Descramble overwrite
    R[0x21] = 0x02: RemoteSense aus, DC Balance ein …
    R[0x2D] = 0x01: Disable Exit when Threshold exceeded
    R[0x2B] = 0x06: Assert Reset CDR+Data Event Count (*)
    R[0x2B] = 0x00: Release Reset (*)

    After this its absolute neccessary to switch from permanet K28.5 data to different data. The customer has to switch from two times data
    to K28.5 data than the device gets locked and remains in the locked state. If the customer misses the last two register settings the PLL never lockes.

    Can you explain this behaivior?

    Best regards

    Egon
  • Hi Egon,

    I reviewed the register writes and they seem reasonable to me. I am currently unable to determine why this particular mixture of K28.5 and D-characters allows the device to lock.

    However, it makes some sense that resetting the CDR and then releasing the reset (last 2 steps) may allow the PLL to attain lock. The deserializer may be stuck in a state where RxIN is detected, but the CDR has not attained lock. At this point, my thought is that, even though the customer set the overwrite values in Reg 0x22 and Reg 0x21, they do not take effect until the Deserializer re-enters the IDLE state again, which occurs when a forced CDR reset is initiated.

    Since the descrambler and NRZI decoder are disabled by user overwrite, I'm curious about what happens if the customer sets DC_B = 1 so that these features are disabled by default and the deserializer locks to incoming random data. Does this have any effect?

    Thanks,

    Michael
  • Hello Michael,

    attached the answer from my customer:

    I changed the pull-down to a pull-up at pin DC_Bn. So I now have the configuration: RSn=1 and DC_Bn=1 on power-up.

     

    In the first try I didn’t change any registers so the Descrambler and the NRZI ist still on all the time -> CDR ist not locking (LED ist blinking)

    And the signal at the LVDS output looks strange because DC-Balance decoding is missing.

     

     

    In the second try I also changed two register settings:

    R[0x22] = 0x65 = Overwrite NRZ, Descrambler, Decode Bypass and Device Config

    R[0x21] = 0x02 = NRZ off, Descrambler off, Do not bypass DC Balance, Remote Sense disable, DC Balance enable

     

    I still get the unlocked CDR. But when I use my special procedure by switching from K28.5 to Dx.y I get a lock.

    But there‘ s one drawback: The DC-Balance decoder is not working correctly because I get no data-valid on RxOUT4.

    Instead I see something that looks like a fifth Bit.

     Best regards

    Egon

     

  • Hi Egon,

    From this feedback, it looks like the correct setting should be maintained at RS_B = High, DC_B = Low, just like they had before.

    I spent some more time thinking about this issue, and I am wondering if it's possible to try a direct AC-coupled connection from your FPGA source to the DS32EL0421. This will eliminate the possibility of the optical transceiver or crosspoint switch affecting the signal. I currently cannot think of a reason why the transceiver or crosspoint switch may have an effect here, but performing this test will help us isolate the signal stream so that there are no extra components in the signal path. Please ask the customer to try this and let us know the result.

    Also, for our understanding, is there a specific Dx.y character they are sending to get lock to work, or can it be any of the Dx.y characters?

    Thanks,

    Michael