Electrical – SPI Isolation with Open Drain MISO

isolationschottkyspi

So I am trying to interface a slave device to a master uC through an ADUM4151 SPI Isolator and am getting confused on where I need pullups for the MISO line as I see it a few ways in reference designs.

My slave device's MISO is open drain, so he needs a 5k pullup. I'm then putting him through the ADUM4151 and straight to my uC (through 100ohm resistor). I don't have any other slaves on the bus so I figure this should be the end of it. However, I see a few designs where a schottky diode is placed with its cathode facing the output on the isolated/uC side of the isolator and then another pullup before going to the uC.

Can anyone explain to me what the point of that would be? I've read a few things stating it "converts the isolators push-pull output to open drain." But seems like I'm going to be sending current into an output pin through the diode when MISO is pulled low. I figure it'd only be useful with other slaves on the processor side of the isolation so I probably don't need it, but would like to understand the point/purpose.

Best Answer

I see a few designs where a schottky diode is placed with its cathode facing the output on the isolated/uC side of the isolator and then another pullup before going to the uC. Can anyone explain to me what the point of that would be?

It sounds like you are looking at this schematic from the above datasheet....

enter image description here

If we look at a single channel, it looks like this...

schematic

simulate this circuit – Schematic created using CircuitLab

Here, diode D1 converts the push/pull output of the isolator to effectively an open collector output.

Here are the possible cases for the above circuit with MCU being an open-collector pin and OUTPUT being a push-pull pin:

MCU: Pull Low, ISOLATOR: Pull Low

No problems.

MCU: Hi-Z, ISOLATOR: Pull Low

No problems. Current flows though R1 and D1 into OUT, the MCU sees a low.

MCU Hi-Z, ISOLATOR: Drive High

No problems. R1 pulls MCU input line high, MCU sees high.

MCU: Pull-low, ISOLATOR: Drive High

Yikes. If the two directly connected, then they would fight it out and one would burn up. But adding D1 prevents current from flowing from the high OUT into the low MCU.

R1 is needed for the case where OUTPUT is high and the MCU is not pulling down. In this case, R1 will pull up so both see the line as high.

Make sense?