0
\$\begingroup\$

I'm doing a layout for someone who has asked for a USB interface on a micro that is running at 2.5V. As far as I can tell after researching this, you can't run USB down to 2.5V. So, I did a bit of digging aorund for a level shifter and found this:

http://www.ti.com/lit/ds/symlink/txs0202.pdf

On first glance it looks like just what I need. I can run the high voltage side from a 3V3 reg off the USB 5V and the processor side can run off 2V5.

However, the data sheet says:

The TXS0202 is a 2-bit voltage level translator optimised for use in Interchip USB (IC-USB) applications.

It has a diagram of it interfacing between a micro and an HD SIM card.

So, my questions are:

  1. Is it right the USB will not work correcty running the micro at 2.5V?
  2. Will the TXS0202 work if it's connected to a cabled interface on the high voltage side?
  3. If point 2 is no, can I actually do what I need to? Are there simple devices that will level shift for cabled interfaces?

I would have throught there must be devices to do this, there must be scores of examples of micros running at less then 3V3 that have a USB interface. I cannot find anything other than three devices that all say they are for "inter chip" interfaces. I appreciate inter chip doesn't specifically say on the same board, but the typcial application diagrams seem to imply that - or at least that's what I'm inferring.

\$\endgroup\$
5
  • \$\begingroup\$ Most micros with a USB interface are designed to accept USB-level voltages on the USB pins, even if the MCU power supply is lower - they often have a different power supply for the internal USB module. What micro are you using? \$\endgroup\$ Aug 29, 2018 at 16:33
  • \$\begingroup\$ STM32F302. The datasheet says: VDD USB operating voltage(2) Min = 3V. From what I have gathered you have to drive the line at 3V for USB to work and I can see nothing in the datasheet that says it has any sort of level sifting if you run the micro at less than 3V. \$\endgroup\$
    – DiBosco
    Aug 29, 2018 at 16:36
  • 1
    \$\begingroup\$ Datasheet also says: "The STM32F302xB/STM32F302xC USB functionality is ensured down to 2.7 V but not the full USB electrical characteristics which are degraded in the 2.7-to-3.0 V VDD voltage range." \$\endgroup\$
    – DiBosco
    Aug 29, 2018 at 16:37
  • \$\begingroup\$ I believe that gives you your answer; the USB module will not function at 2.5V. \$\endgroup\$ Aug 29, 2018 at 16:43
  • \$\begingroup\$ Well, it answers one of my questions. ;-) \$\endgroup\$
    – DiBosco
    Aug 29, 2018 at 16:46

1 Answer 1

1
\$\begingroup\$
  1. Is it right the USB will not work correcty running the micro at 2.5V?

Per STM32F datasheet, the lowest core VDD to work with USB is 2.7 V, although it is a stretch. The MCU might receive USB packets well, but protocol responses will be too weak for a standard USB host to understand. So, running the MCU at 2.5 V would need some level translation, and not just translation, but it better be something that resembles USB FS PHY drivers.

  1. Will the TXS0202 work if it's connected to a cabled interface on the high voltage side?

The TXS0202 is designed for INTER_CHIP (logic-level) communication (There is some obscure addition to USB for FS mode; there is also HSIC - high-speed inter-chip protocol). The TXS0202 has some integrated pull-ups and pull-downs, so I would be hesitant to use it to drive open USB standard, these pulls might violate standard signal levels/states and confuse standard USB host.

  1. If point 2 is no, can I actually do what I need to? Are there simple devices that will level shift for cabled interfaces?

I would consider some general-purpose level shifters, uni-directional, like 74LVC2T45, although no guarantee, and good testing/validation will be required. Maybe some older simple "Q-switches" will work, PI4ULS3V302 from Pericom/Diodes. MAX3372-3379 might be considered.

Solution to the typical discrepancy between the trend to use low-voltage cores and USB protocol (3.3-V signaling and 5-V tolerant) is not to use the embedded USB PHY, but use an external USB PHY connected to MCU via UTMI+ or ULPI bus. The ULPI PHYs will take care of the level translation, but you might need to use a bigger variant of STM32 processors, with ULPI interface.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.