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.

SN74ALVC245 input pullups required when CPU outputs go highz?

Other Parts Discussed in Thread: SN74ALVC245, SN74LVCH8T245

I'm considering using the SN74ALVC245 8 bit transceiver in an application between a CPU and some other devices.

While researching a possible alternative to this part I came across the higher output SN74LVCH8T245, which in addition to advising the provisioning of OE as desired for startup, warns that because the inputs are always on, regardless of the state of OE, they cannot be left floating and therefore must be pulled up / down.  I assume this is for the usual reason: excessive current consumption near the CMOS P/N thresholds.

My issue:

On reset my SoC configures all of its pins as inputs (highz).  I have no control over this and would really prefer to avoid adding pullups (even weak ones) to every input for the usual reasons (cost, power).   I do have one pullup on the OE line that is driven by a GPIO and I expect that GPIO to go highz during reset as well, but in this case the OE will float to 3.3V and disable the transceiver outputs.

Questions:

1) Despite the fact I see no such warning in the SN74ALVC245 8 bit transceiver datasheet, does the same restriction about "no floating inputs" apply?  In other words, is there any risk to excessive power consumption / undesired behavior with the transceiver when the CPU outputs go highz?

2) Does having OE enabled or disabled change anything?  Is the device inherently "safe" if the outputs are disabled?

  • Hi Doug ,

    First of all , for any device its not recommended to have inputs or floating which will cause undesired outputs and conflicting logic outputs by picking up random signals. I have attached a good read about slow or floating inputs here.

    Regarding SN74LVCH8T245 has internal bus hold circuitry which will keep the unused and undriven inputs at some logic level and hence don't recommend (and don't require )pullup/ pulldown resistors externally connected which saves real estate on the board .

    1) It is highly recommended to have inputs connected to valid logic level if not being used (grounded or Vcc) .It starts to consume huge currents in mA (excessive power)around Vin=Vcc/2 which can be damaging to the device and reliability of the part (undesired behavior ).

    2)OE pin needs to be connected to Vcc through a pull-up resistor if the requirement is to have high-Z on power up/ power down .

  • It sounds like if I go with the SN74ALVC245 I'll need some weak pullups/pulldowns and if I go with the SN74LVCH8T245 the bus hold feature will effectively take care of the issue (and it should considering I can't/shouldn't externally strap that device).

    However, I am still concerned that the SN74LVCH8T245 datasheet says the inputs must be driven and not floated. That seems to contradict the point of bus hold.

    I suppose if there is any real question about this I should just go with the SN74ALVC245 and externally strap the inputs to ensure its operation is deterministic.

    If you have any other feelings on the matter I'm all ears.
  • yes, you can use the SN74ALVC245 and make sure all the inputs are deterministic at any point in time . Never leave it floating .
  • As it turns out some of the signals for the busses I'm using definitely need pullups so if I can't use pullups on parts equipped with bus hold the decision is made for me -- I need to go back to the SN74ALVC245 (non-bus-hold part). Shame, really, as I like the power-saving feature of bus hold.

    Thanks for the help.