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.

Suggestions for appropriate level shifters

Other Parts Discussed in Thread: SN74AUP1G17, TXB0101, LSF0101, SN74LVC1G07, SN74AUP1T34, SN74AXC1T45, SN74AUP1G34, SN74AUP1G07

I need recommendations for level shifters for 2 shifting scenarios. I have used the TXB & TXS in the past but they caused issues for me.

My first requirement is to level shift SWD debug signals from 3.3V to a selectable voltage which ranges from 1.2V to 3.3V.

SWD has 2 signals

SWCLK is unidirectional and will be pulled low through 100K on the source, 3.3V side of the level shifter. The target side output of the level shifter has no pull up or down and feeds a high impedance processor input.

SWDIO is bi-directional and will be pulled high through a 100K on the 3.3V side of the level shifter. On the low voltage side of the level shifter the signal directly feeds the push-pull IO of the processor.

I was going to use the LSF but I don't now think it is the correct device to use.

My second requirement is a uni-directional single bit level shifter. The source is open drain and will be pulled up to a voltage between 1.0V and 3.3V. The high voltage side needs to behave like an open drain pulled to 3.3V through a resistor, although I can also work with a push pull on this side. My gut on this shifter is to use FETs but the Vth on all FETs I have looked at is too high.

Thoughts/suggestions?

Thanks,

Steve

  • Rohm's RE1J002YN/RU1J002YN/RYC002N05/RYM002N05 is specified for 0.9 V.

  • Downshifting is easy: for the SWCLK signal, you can use a buffer with an overvoltage-tolerant input. The only family for Vcc between 1.2 and 3.3 V is AUP, so use the SN74AUP1G17.

    For SWDIO, you could use the TXB0101 if the devices on both sides have enough drive strength and if the connector does not introduce too much capacitance. TXS does not work for 1.2 V, so for open-drain signals, you'd have to use LSF0101 or a FET. (Open-drain needs pull-ups on both sides, and the signal edges are likely to be too slow with 100 kΩ.)

    For the unidirectional signal, you can use the SN74AUP1T34. If the input signal's edges are slower than 200 ns/V, add a Schmitt-trigger buffer in front of it. If you really want an open-drain output, add an open-drain buffer (SN74LVC1G07) behind it. (A single FET might be simpler …)

  • Hi Steve,

    We just are about to release a new 1 bit level shifter, the SN74AXC1T45, that operates from 0.65V to 3.6V.  It is sampling now.

    For the SWD debug signals,

    Unidirectional down-translation from 3.3V to (1.2V to 3.3V) can be accomplished with SN74AUP1G34 -- just connect the supply to the desired output voltage (1.2 to 3.3V) and input 3.3V. The device has over-voltage tolerant inputs and will not be damaged by taking up to a 3.6V input while operating at 1.2V output. Since this is just a buffer, the input can be pulled low with a 100kohm resistor without any problems.

    For the SWDIO, is there a direction control signal, or does it change direction unexpectedly? Ie do you need auto-bidirectional translation or direction controlled translation?

    For the open-drain output translator, you could use the SN74AUP1G07 -- it is an open-drain buffer that works down to 0.8V supply. You could also use another SN74AXC1T45, or an SN74AUP1G34. I could probably list off a few other recommendations, but I think these are the best options.

    **

    I would probably not recommend the LSF for this application (because of the pull-down and likely limited drive strength/high speed lines), but for your future information, the bias circuit for the LSF should look like this:

    The way your circuit is connected now would draw a great deal of current and likely wouldn't produce the results you are looking for. Please check out our short video training series on the LSF: