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.

LX21EVK01: LX21EVK01 BIST Disables I2C Communication

Part Number: LX21EVK01

I am using the DS92LX2121/DS92LX2122 evaluation kit LX21EVK01 configured as directed in the evaluation kit for the built in self test.  I would like to use the DS92LX2122  BIST register (0x24) to enable and disable the BIST.  I can successfully enable the BIST by setting BIST register (0x24) bit 0 to 1, but once the BIST has been enabled no further I2C communication seems possible. as the device does not acknowledge further communication.  Thus, I can enable the BIST over I2C but cannot disable it or complete any other communication once the BIST has been enabled.  I run into this same I2C communication problem if the BIST is enabled using the BIST_EN pin, although communication can be resumed after the BIST has been disabled by the BIST_EN pin in this case.  Is this a known problem and is there a way to stop the BIST using I2C?

Thanks  


  • Hi Brian,

    Perhaps this thread will help: e2e.ti.com/.../605801

    Are you trying to write the deserializer I2C register locally, or remotely from the serializer?

    Regards,
    I.K.
  • I.K.,

    Thank you for the reply and thread link.  I am writing to the deserializer I2C register locally, thus unfortunately the answer given in the other thread does not solve my problem.  Writing directly to the deserializer I find that all I2C communication is disabled after the BIST has been enabled.  I'm using the default register values for all other registers, although I have tried remotely waking the serializer prior to enabling the BIST and found no difference.  I'm using an external clock for the BIST if that makes any difference.  

  • Hi Brian,

    Sorry for the delay, it's been pretty busy. I will try and see if I can recreate this issue in the lab tomorrow.

    Regards,
    I.K.
  • Hi Brian,

    It turns out that this is actually expected behavior for these devices. When the device is put into BIST mode a pre-programmed sequence is sent from the serializer to the deserializer on the forward channel. This includes i2c information. So i2c communication won't work (including reading the error counter register) until the BIST is complete because the i2c interface is already occupied by BIST transactions.

    Regards,
    I.K.
  • I.K.

    Thank you for your answer.  I can understand why the BIST would make I2C communication inoperable, but this does make the deserializer BIST register (0x24) useless.  You can use it to enable the BIST with I2C but then you cannot disable the BIST without shutting down power because all I2C communication is disabled by the BIST and the BISTEN pin will not shut it down.  You will also never be able to read the BIST register in anything but the normal operation state.  The register is useless and should be removed from the datasheet to prevent confusion.    

    Also, I've been reading the error counter register (BIST_ERR 0x25) after the BIST has been disabled and it still always reads 0x00 even when I know there has been multiple errors as detected by the PASS pin.  I'm planning on just doing a workaround using the PASS pin, but it would be nice to know why it isn't working.  

    Thanks,

    Brian

  • Hi Brian,

    Apologies for the delay. Are you still having issues with the BIST register? It is strange that the PASS pass is reporting errors while the register is not. Have you tried introducing errors yourself (e.g. interrupting the link) to see how the register responds?

    Regards,
    I.K.
  • Hi I.K.,

    I was never able to get the BIST register to read out anything other than 0x00.  I have tried interrupting the link with no effect, still 0x00.  I am using the PASS pin as a workaround so the register is no longer critical to me and I have done no further investigation.

    Thanks,

    Brian