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.

ISO7741: SPI communication will have error at 15MHz

Part Number: ISO7741
Other Parts Discussed in Thread: ISO7641FM

Hi,

my customer is using ISO7741 as SPI isolator, 

with the batch whose silk screen shows 01AQ9ST, the SPI communication is correct at both 10MHz clock and 15MHz clock.

with the batch whose silk screen shows 9AATTET, the SPI communication is correct at 10MHz, but failed at 15MHz.

The schematic is as below: the left side is C2000 MCU, the right side is ARM.

We test by sending number from -20000 to 10000 from right to left, incrementing 1 per data, and then print out the received data.

We will find the received data will be wrong(random value) only at 15MHz and with 9AATTET batch ISO7741. We test on the same board and this phenomenon goes with this device.

We've checked the voltage rail and it's stable.

We are not able to locate which pin is wrong.

We've measured both input and output of ISO7741, there is no pulse missing, and input to output delay is within 10ns for both good device and bad device.

So our suggestion is to ship the bad device to BU to do the analysis.

If you have any other suggestion, please let me know.

  • Hi Howard,

    Thanks for reaching out. Before we look at the issue being with a particular lot of devices, let's try to understand the issue and application better so that we rule out possibility of issue in the application.

    Please note that, with the propagation delay that ISO7741 supports, the maximum SPI speed that you can expect is 15MHz. Hence, the test that customer is conducting is already at the max limit of ISO7741. If there are any further delays introduced by device or other components / parasitics on the PCB then it is possible to only achieve lower speeds than 15MHz.

    Since the propagation delay of device can vary from one device to another, it is possible to see that some device might meet 15MHz even with higher delay outside device while others might not meet 15MHz. Since you are also saying that 10MHz has no issues with both devices, it further assures the fact that 15MHz is marginally failing due to overall propagation delay of system.

    If customer would like to meet 15MHz, then they would have to strictly make sure external delays are minimized. ISO7741 meets 15MHz in datasheet specified test conditions but in real application, it depends a lot on external delays. Hence, please do let customer know that the issues seems to be due to operating device at its max SPI speeds and unlikely to be an issue with any particular batch.

    If customer still likes to have device that supports higher SPI speeds then they may take a look at ISO7641FM which has lower propagation delay than ISO7741. Hence, ISO7641FM will offer slightly higher SPI speeds. Please note that ISO7741 is superior in performance compared to ISO7641FM in most specifications except for the timing characteristics. Thanks.

    Regards,
    Koteshwar Rao

  • Rao,

    why you say 15MHz is at its max SPI speeds? The datasheet says it can support 100MHz data rate.

    15MHz here referes to SPI clock switching frequency.

    Good device clock waveform:

    Bad device clock waveform:

  • Hi Howard,

    Please allow me to clarify why the max SPI speed of ISO7741 will be 15MHz.

    ISO7741 supports max datarate of 100Mbps which means that it can allow transfer of a clock with frequency 50MHz (50MHz clock = 100Mbps bit stream) continuously uninterrupted. But SPI is a two-way communication protocol and hence the round trip delay matters here. i.e., the overall propagation delay of device for transferring a data requrest in one direction and then receiving a response in the other direction matters and is the deciding factor for achieving max SPI speed.

    Hence, the max SPI speed can be expressed as below,

    f(SPI-max) = 1 / [ max( tpHL(max), tpLH(max) ) * 4 ].

    Since max of tpHL(max) and tpLH(max) from datasheet is 16ns from ISO7741 datasheet for 5V supply, f(SPI-max) will be 15.6MHz. Please note that this is still a theoretical data assuming datasheet test conditions. If there is additional delay added by the MCUs or external components / parasitics, then the max SPI speed achieved will be further lower.

    Similarly, the max SPI speed for ISO7641FM will be 23.8MHz.

    I hope this explains and clarifies your doubts. Please do discuss and clarify to customer that 15MHz is achievable only when there is no further delay added by overall system. Since propagation delay will be different from one part to another, it is possible that some parts might still work and some might not.

    Please also note that all the data and clock transferred are <100Mbps and there is no bit error produced by ISO7741. But because of propagation delay, the MCU might attempt reading a little too early or late and hence reading wrong data. There is no data corruption or error by ISO7741, this is more related to considering device propagation delay into account by the MCU software.

    Let me know if you have any further questions, thanks.

    Regards,
    Koteshwar Rao