I was testing the TI TXB0108 today to shift 3.3V from a MCU to a DSP. The DSP connector only has 17 digital inputs, and a ground (no VCC), and expects 0-5V. The 3.3 and 5V power are both being supplied on the MCU side. I first tested the output with a scope, and got nice clean transitions. However, once I added a cable (twisted pair ribbon, but only 18" long), the first 50-100 us of the rise was a mess, and then it quickly reached 5V, with a relatively quick fall.
I'm curious what I could do differently. This application does not require a timing signal, only 16 bits and a strobe bit (to latch the input). The strobe will only fire at most 10 times per second (pulse of any length > 250 us) but there needs to be sub-millisecond delay. And as far as I can tell, the DSP input is buffered, so there should be much of any current draw (but I haven't verified this yet). Also, although the logic level translator is bidirectional, the signal will only -ever- go from the MCU to the DSP.
Of course (sadly), I can't reproduce the problem today. I get -exactly- the same scope trace with the following:
- scope tied directly to level translator
- scope connected through 18" of twisted ribbon to level translator
- scope connected through 18" of twisted ribbon to 100 Ohm resistors to level translator
- scope connected through 18" of twisted ribbon to buffer to level translator
I didn't have enough resistors to try more than 1 bit and the strobe, so I wasn't able to test more. However, I did occasionally get flaky results with the ribbon tied directly to the level translator, so I added the buffer (which has 6 channels), so I could get at least 5 bits - and it was rock solid.
Image: Y1 is strobe, Y2 is bit0. The strobe is delayed by 50us.