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.

DS110DF111: SMBUS EEPROM configuration

Part Number: DS110DF111

We have two retimers on out latest design that we cannot seem to get configured using the eeprom.  

To start with how does the DS110DF111 know the physical address of the EEPROM?  

If I use a 24C02 EEPROM, its A0, A1, A2 pin can be configured to create an SMBUS (write) address between 0xA0 thru 0xAE.

Does the DS110DF111 expect a certain address that must be used?  If so what is this address?  

Can you provide me with a simple hex file that will work with two devices that are chained?  Just so we can test both devices?

The physical address of our re-timers are 0x34 and 0x36.

Will the device keep reading bytes from the eeprom until address 0xFF ?  or will it stop prior to that

  • Al,

    The EEPROM physical address must be at 0xA0.  It will only look for the EEPROM at A0.

    I have attached a EEPROM file for 2 retimers at addresses 0x34 and 0x36, this file uses a 1KB EEPROM size.

    :2000000073001000330000720000B10000F000000000000000000000000000000000000017
    :200020000000000000000000000000000000000000000000000083C93693A218100041E8B8
    :20004000964601238A000026007280018408C43F1F3602950020402860482A50584AB4EA98
    :20006000CCD2F37C800000000000000029000000000000000083C93693A218100041E8962C
    :200080004601238A000026007280018408C43F1F3602950020402860482A50584AB4EACC22
    :2000A000D2F37C800000000000000029000000000000000083C93693A218100041E8964672
    :2000C00001238A000026007280018408C43F1F3602950020402860482A50584AB4EACCD256
    :2000E000F37C800000000000000029000000000000000083C93693A218100041E896460103
    :20010000238A000026007280018408C43F1F3602950020402860482A50584AB4EACCD2F323
    :200120007C800000000000000029000000000000000000000000000000000000000000009A
    :2001400000000000000000000000000000000000000000000000000000000000000000009F
    :2001600000000000000000000000000000000000000000000000000000000000000000007F
    :2001800000000000000000000000000000000000000000000000000000000000000000005F
    :2001A00000000000000000000000000000000000000000000000000000000000000000003F
    :2001C00000000000000000000000000000000000000000000000000000000000000000001F
    :2001E0000000000000000000000000000000000000000000000000000000000000000000FF
    :200200000000000000000000000000000000000000000000000000000000000000000000DE
    :200220000000000000000000000000000000000000000000000000000000000000000000BE
    :2002400000000000000000000000000000000000000000000000000000000000000000009E
    :2002600000000000000000000000000000000000000000000000000000000000000000007E
    :2002800000000000000000000000000000000000000000000000000000000000000000005E
    :2002A00000000000000000000000000000000000000000000000000000000000000000003E
    :2002C00000000000000000000000000000000000000000000000000000000000000000001E
    :2002E0000000000000000000000000000000000000000000000000000000000000000000FE
    :200300000000000000000000000000000000000000000000000000000000000000000000DD
    :200320000000000000000000000000000000000000000000000000000000000000000000BD
    :2003400000000000000000000000000000000000000000000000000000000000000000009D
    :2003600000000000000000000000000000000000000000000000000000000000000000007D
    :2003800000000000000000000000000000000000000000000000000000000000000000005D
    :2003A00000000000000000000000000000000000000000000000000000000000000000003D
    :2003C00000000000000000000000000000000000000000000000000000000000000000001D
    :2003E0000000000000000000000000000000000000000000000000000000000000000000FD
    :00000001FF
    

    Regards,

    Lee

  • Thanks Lee. I am analyzing the file you sent me. The Base Header = 0x730010 (3 bytes). CRC_EN = NO, ADDR Map Enable = Yes, EEPROM > 256 Bytes = Yes, COMMON_CHANNEL = Yes. Why is EEPROM > 256 = 1(Yes) ? We are not using an EEPROM greater than 256 bytes, so this is conflicting
  • Hi,

    The file can be modified to use a small EEPROM.  The top line changes a bit and the end of line CRC values changes as well.

    :200000005300100033007200B100F000000000000000000000000000000000000000000037

    The base header is now 0x53

    The address locations have shifted to account for the smaller EEPROM.

    Regards,

    Lee

  • Lee, thank you very much for this. We added the new line to the file and it loaded successfully !! So my next question is exactly how did you create this file in SigCon Architect? Can you provide details on how we can generate this same file here ? A screen capture of the EEPROM setting window would be helpful.
  • Hi Al,

    Using the EEPROM tab in Sigcon Architect. 

     

    1. Added four retimers at Addresses 0x30 - 0x36

    2. Click: "Update Slot from Device (4x)".  Need to update for each Slot #.

    3. Click: "Write to EEPROM Hex". Save file.

    4. I needed to modify the file in the first line to account for the smaller EEPROM which is not supported in the Sigcon Architect retimer profile.

    Regards,

    Lee

  • Thanks. This is what we needed to create an EEPROM file that would work in our design. Just to recap, even though there are no devices in the SMBUS chain with the address of 0x30 and 0x32, we have to account for them in the EEPROM file creation?
  • Hi Al,

    Yes, the data format needs to reserve space for them. 

    Regards,

    Lee