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.

DS250DF410: DS250DF410 EEPROM image

Part Number: DS250DF410
Other Parts Discussed in Thread: USB2ANY

Hello,

I have some questions about the EEPROM image of DS250DF410. Current the device is not working.

(1) We are using master mode, which is EN_SMB pin floating. I suppose the address will not matter in the master mode.

(2) We changed the ADAPT_MODE to 0x02, would you please help check our image what else do I need to change possibly?

There is no option to upload the hex file, can I upload it for your review? Thanks.

Thanks.

  • Here is the hex:

    :20000000700010003300003300003300003300000000000000000000000000000000000094
    :20002000000000000000000000000000000000000000000073000630210F00A0F46D102DA9
    :20004000C9E5600015A2BB182A402310FC7B60001A40400040508090C0D0D1D5D8EAF7FD6E
    :20006000EEEFFF000000000034428000000521344813A9001F9FF12248C300900F000000D5
    :20008000000000000000000000000000000000000000000000000000000000000000000060
    :2000A000000000000000000000000000000000000000000000000000000000000000000040
    :2000C000000000000000000000000000000000000000000000000000000000000000000020
    :2000E000000000000000000000000000000000000000000000000000000000000000000000
    :200100000000000000000000000000000000000000000000000000000000000000000000DF
    :200120000000000000000000000000000000000000000000000000000000000000000000BF
    :2001400000000000000000000000000000000000000000000000000000000000000000009F
    :2001600000000000000000000000000000000000000000000000000000000000000000007F
    :2001800000000000000000000000000000000000000000000000000000000000000000005F
    :2001A00000000000000000000000000000000000000000000000000000000000000000003F
    :2001C00000000000000000000000000000000000000000000000000000000000000000001F
    :2001E0000000000000000000000000000000000000000000000000000000000000000000FF
    :200200000000000000000000000000000000000000000000000000000000000000000000DE
    :200220000000000000000000000000000000000000000000000000000000000000000000BE
    :2002400000000000000000000000000000000000000000000000000000000000000000009E
    :2002600000000000000000000000000000000000000000000000000000000000000000007E
    :2002800000000000000000000000000000000000000000000000000000000000000000005E
    :2002A00000000000000000000000000000000000000000000000000000000000000000003E
    :2002C00000000000000000000000000000000000000000000000000000000000000000001E
    :2002E0000000000000000000000000000000000000000000000000000000000000000000FE
    :200300000000000000000000000000000000000000000000000000000000000000000000DD
    :200320000000000000000000000000000000000000000000000000000000000000000000BD
    :2003400000000000000000000000000000000000000000000000000000000000000000009D
    :2003600000000000000000000000000000000000000000000000000000000000000000007D
    :2003800000000000000000000000000000000000000000000000000000000000000000005D
    :2003A00000000000000000000000000000000000000000000000000000000000000000003D
    :2003C00000000000000000000000000000000000000000000000000000000000000000001D
    :2003E0000000000000000000000000000000000000000000000000000000000000000005F8
    :00000001FF

  • I found out that in the global register, 0xFC should enable all 4 channels,

    I am not sure about the global 0xFF

  • Hi,

    Have you tried configuring the device with SigCon architect in SMBus target/slave mode?  If so, are you able to observe CDR lock?  What is the data rate of the data in your system?

    Also, what is the retimer SMBus address?  This does matter while in controller/master mode.

    Thanks,
    Drew

  • Hi Drew,

    Thanks for the reply!

    I will try to change global 0xFC to enable all 4 channels first, the default setting is only 1 channel enabled.

    The 410 SMBUS device address hardware strapping is 0x44, I only connected 410 retimer SMBUS to EEPROM. And 410 retimer is in master mode.

    I did not reserved the slave mode strapping, so I can not access the 410 retimer through USB dongle I suppose.

  • I tried to save global 0xFC, it seems can not be saved.

  • Hi Gang,

    When trying to access channel registers, can you confirm that you are following a procedure similar to below?

    I did not reserved the slave mode strapping, so I can not access the 410 retimer through USB dongle I suppose.

    The device can be accessed after it loads EEPROM.  I think I see one issue that may be creating challenges.  The EEPROM hex file is dependent on the device address.  We need to ensure that the EEPROM is configured for a device at address 0x44.

    Thanks,
    Drew

  • Hi Drew,
    Please let me re-phase my current situation.

    (1) I did not reserve the master/slave enabled strapping, it can only be in the master mode, which means I can not use the USB dongle to access the retimer;

    (2) I am stuck at the stage of which EEPROM to use. For this rev if the retimer can successfully boot from the EEPROM is fine, I don't need to access the retimer. 

  • Here is the steps for generating the hex, can you please help check?Steps.docx

  • Hi Gang,

    (1) I did not reserve the master/slave enabled strapping, it can only be in the master mode, which means I can not use the USB dongle to access the retimer;

    I understand that strapping for slave mode is not present.  The reason I highlight that the device can be accessed in slave mode after an EEPROM is loaded is because sometimes it is necessary to debug the device.  For example, it can be useful to access the device once the EEPROM is loaded to ensure that the EEPROM was configured correctly.

    Regarding the steps, I created a hex file for you with adapt mode 2, as well as steps for this.  Unfortunately, Sigcon architect has a bug when it comes to placing the address header for addresses other than 0x30, so we must manually do this.  I've attached hex files for device addresses 0x30 and 0x44 for comparison.

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/138/addr_5F00_0x44.hex

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/138/addr_5F00_0x30.hex

    eeprom_modification.docx

    Thanks,

    Drew

  • Thanks Drew.

    I definitely will add slave strapping and I2C access to the retimer for monitoring in the next rev.

    I tried addr_0x44.hex, still the connection is down. Can you please help review the schematic to find anything wrong?

    Out caps are on the other side, and EEPROM model is M24C08-RMN6TP

    www.digikey.com/.../1663582

  • Hi Gang,

    Thank you for sharing your schematic. READ_EN should be pulled low in order to start EEPROM read function.

    Can you confirm the data rate in your application?

    Thanks,
    Drew

  • Hi Drew,
    I had a week off, here is the measurement, it seems something wrong and EEPROM loading never happened.

    25M clock is there;

    Even with EN_SMB floating, there is no I2C toggling, both SDC and SDA are always high;

    ALL_DONE_N and READ_EN_EN connected together, high.

  • Hi Drew,

    Can you please suggest an I2C EEPROM with SO8 package? Is it possible that EEPROM does not acknowledge and retimer halt the communication?

  • Gang:

       Response maybe delayed due to holiday.

    Regards

    brian

  • I just understood the READ_EN should be GND.

    Since I am using only a single retimer, and make READ_EN_N solid GND, and leave ALL_DONE_N unconnected. Is this OK?

  • Hi Drew,

    The 0x44 EEPROM loading is completed after connecting READ_EN_N to GND, however the link is still down.

    We tried to downgrade the link to 10G, but still no help.

    Do you still have further suggestions? Thanks.

  • Hi Gang,

    Glad to hear EEPROM is loading now.  What data rate are you using?  What sort of test pattern are you using?

    Thanks,

    Drew

  • Hi Drew,

    The data rate is for the EEPROM side or data link side?

    For the data link, we tried 10G and 25G, none works. Below is our set up, and we tested from the ethernet switch side for the link status.

    CPU TX ==>0.22uF==>retimer==>0.1uF ==> ethernet switch RX

    CPU RX <==0.22uF<==retimer<==0.1uF <== ethernet switch TX

  • Hi Gang,

    Thanks for the update.  I was curious about the data link side.  Sounds like you're testing with 25.78125 Gbps and 10.3125 Gbps.  In terms of data pattern, it seems like you're using standard ethernet traffic.

    I'm looking into this and will get back to you with another update within the next day.

    Thanks,

    Drew

  • Hi Drew,

    Let me explain our 10G and 25G, we can control the ethernet switch side speed only, CPU side is 25G by default.

    For example, for 25G, we set ethernet switch to 25G, and CPU side is 25G by default, the link is 25G with or without the retimer.

    For 10G, we set ethernet switch to 10G, and CPU side is still 25G. If there is no retimer in the middle, CPU side will drop to 10G after auto negotiation.

  • Hi Gang,

    I apologize, I didn't realize you were using an ethernet specification implementing auto negotiation.  Auto negotiation typically occurs at a lower data rate than supported by CDR.  Consequently, in order to support auto-negotiation, we typically recommend configuring the retimer to transmit "raw" (un-retimed) data while the data cannot be locked to.  This can be accomplished by following the register writes below, which is an excerpt from our programming guide.

    Alternatively, to test if auto-negotiation is causing issues in your system, you could try disabling it and seeing if a link can be established.  Please try these suggestions and let me know if they help.

    Thanks,

    Drew

  • Hi Drew,

    What we did for EEPROM update, I will try it next Monday:

    (1) load 0x44.hex in EEPROM page

    (2) go to low level page, and uncheck bit 7,6,5 in register 1E for all 4 channels

    (3) go to EEPROM page, update slot from device and then write to EEPROM

  • Hi Gang,

    Thanks for the update.  Looking forward to hearing your results next week.

    Thanks,
    Drew

  • Hi Drew,

    We tried the modified EEPROM, but the link is still down. We also tried disable the auto negotiation on ethernet switch, same result.

    Would you please help double check whether the below image is correct?

    I can not attach a file into this forum, I paste the modified image with RAW selected here:

    :20000000700010003300003300003300003300000000000000000000000000000000000094
    :20002000000000000000000000000000000000000000000073000630210F00A0F46D102DA9
    :20004000C825600015A2BB182A202310FC7B60001A40400040508090C0D0D1D5D8EAF7FD4F
    :20006000EEEFFF000000000034428000000521344813A9001F9FF12248C300900F000000D5
    :20008000000000000000000000000000000000000000000000000000000000000000000060
    :2000A000000000000000000000000000000000000000000000000000000000000000000040
    :2000C000000000000000000000000000000000000000000000000000000000000000000020
    :2000E000000000000000000000000000000000000000000000000000000000000000000000
    :200100000000000000000000000000000000000000000000000000000000000000000000DF
    :200120000000000000000000000000000000000000000000000000000000000000000000BF
    :2001400000000000000000000000000000000000000000000000000000000000000000009F
    :2001600000000000000000000000000000000000000000000000000000000000000000007F
    :2001800000000000000000000000000000000000000000000000000000000000000000005F
    :2001A00000000000000000000000000000000000000000000000000000000000000000003F
    :2001C00000000000000000000000000000000000000000000000000000000000000000001F
    :2001E0000000000000000000000000000000000000000000000000000000000000000000FF
    :200200000000000000000000000000000000000000000000000000000000000000000000DE
    :200220000000000000000000000000000000000000000000000000000000000000000000BE
    :2002400000000000000000000000000000000000000000000000000000000000000000009E
    :2002600000000000000000000000000000000000000000000000000000000000000000007E
    :2002800000000000000000000000000000000000000000000000000000000000000000005E
    :2002A00000000000000000000000000000000000000000000000000000000000000000003E
    :2002C00000000000000000000000000000000000000000000000000000000000000000001E
    :2002E0000000000000000000000000000000000000000000000000000000000000000000FE
    :200300000000000000000000000000000000000000000000000000000000000000000000DD
    :200320000000000000000000000000000000000000000000000000000000000000000000BD
    :2003400000000000000000000000000000000000000000000000000000000000000000009D
    :2003600000000000000000000000000000000000000000000000000000000000000000007D
    :2003800000000000000000000000000000000000000000000000000000000000000000005D
    :2003A00000000000000000000000000000000000000000000000000000000000000000003D
    :2003C00000000000000000000000000000000000000000000000000000000000000000001D
    :2003E0000000000000000000000000000000000000000000000000000000000000000002FB
    :00000001FF

    Here is the original 0x44.hex, there are differences in line2,3 and32, and I think "33" was not included after load the 0x44.hex into the software.

    :20000000700010003300003300003300003300000000000000000000000000000000000094
    :20002000000033000000000000000000000000000000000073000630200300A0F46D102D83
    :20004000C9C5600015A2BB182A402310FC7B60001A40400040508090C0D0D1D5D8EAF7FD8E
    :20006000EEEFFF000000000034428000000521344813A9001F9FF12248C300900F000000D5
    :20008000000000000000000000000000000000000000000000000000000000000000000060
    :2000A000000000000000000000000000000000000000000000000000000000000000000040
    :2000C000000000000000000000000000000000000000000000000000000000000000000020
    :2000E000000000000000000000000000000000000000000000000000000000000000000000
    :200100000000000000000000000000000000000000000000000000000000000000000000DF
    :200120000000000000000000000000000000000000000000000000000000000000000000BF
    :2001400000000000000000000000000000000000000000000000000000000000000000009F
    :2001600000000000000000000000000000000000000000000000000000000000000000007F
    :2001800000000000000000000000000000000000000000000000000000000000000000005F
    :2001A00000000000000000000000000000000000000000000000000000000000000000003F
    :2001C00000000000000000000000000000000000000000000000000000000000000000001F
    :2001E0000000000000000000000000000000000000000000000000000000000000000000FF
    :200200000000000000000000000000000000000000000000000000000000000000000000DE
    :200220000000000000000000000000000000000000000000000000000000000000000000BE
    :2002400000000000000000000000000000000000000000000000000000000000000000009E
    :2002600000000000000000000000000000000000000000000000000000000000000000007E
    :2002800000000000000000000000000000000000000000000000000000000000000000005E
    :2002A00000000000000000000000000000000000000000000000000000000000000000003E
    :2002C00000000000000000000000000000000000000000000000000000000000000000001E
    :2002E0000000000000000000000000000000000000000000000000000000000000000000FE
    :200300000000000000000000000000000000000000000000000000000000000000000000DD
    :200320000000000000000000000000000000000000000000000000000000000000000000BD
    :2003400000000000000000000000000000000000000000000000000000000000000000009D
    :2003600000000000000000000000000000000000000000000000000000000000000000007D
    :2003800000000000000000000000000000000000000000000000000000000000000000005D
    :2003A00000000000000000000000000000000000000000000000000000000000000000003D
    :2003C00000000000000000000000000000000000000000000000000000000000000000001D
    :2003E0000000000000000000000000000000000000000000000000000000000000000000FD
    :00000001FF

  • Hi Gang,

    I'm working on reviewing your hex files.  Also, I have been able to upload files to E2E just by "clicking and dragging" to the forum.

    Thanks,
    Drew

  • Hi Gang,

    I think there was a related question that may be relevant.  If this is a 25G-KR link, please also disable link training.  Our retimers do not pass through link training coefficients.

    https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1188652/ds250df410-interface-forum

    Thanks,
    Drew

  • Hi Drew,

    Asok is my coworker, and we are working the same board. We tried disabling training and auto-negotiation, still not working.

    Can we borrow or rent the EVK for debugging? 999 dollars is bit pricy for us.

  • Hi Gang,

    Do you need EVM for high speed testing, or just USB2ANY?  Note that EVM requires Huber+Suhner MXP connectors for high speed evaluation.

    We also have a separate USB2ANY adapter.

    https://www.ti.com/tool/USB2ANY

    Thanks,

    Drew

  • Hi Drew,

    Whichever you think can help us trace our current status is what we need. We are stuck here currently.

  • Hi Drew,

    Is it possible we can have a phone call or google meet to discuss?

    Thanks.

  • Hi Gang,

    Yes we can have a phone call.  I sent you an e2e "friend request".  Please accept this so that we can exchange contact information.  I also have a board I can let you borrow.

    Thanks,

    Drew