74LVX245 -- what the heck?! - Page 1
Forum section: electronics / projects

author: ebastler
author_rank: Super Contributor
timestamp: May 12, 2020, 05:46:16 am
content: Here's a trap for young players -- and, as I just demonstrated, not-so-young ones too...The 74LVX logic series' common trait is "low voltage operation, 5V tolerant inputs". They run from a single 3.3V supply, produce the expected full swing output (0 to 3.3V), and accept input levels up to 5V without complaining. So they are convenient to interface 3.3V circuits, say FPGAs, to legacy 5V logic environments. There's the usual set of 74 series logic gates etc., which provide 5V tolerance on all their inputs.And then there's the 74LVX245, an octal bus transceiver... According to this older ST Micro datasheet, it behaves just like all its siblings:https://www.st.com/resource/en/datasheet/CD00001340.pdf. But today, only ON Semiconductor (ex Fairchild) makes the LVX series, and theirs are like this:https://www.mouser.de/datasheet/2/308/MC74LVX245-D-1811198.pdfNotice that little "application note" on the front page?QuoteCannot?!What the heck -- isn't that the whole reason to exist for this logic family?! Inspection of the "recommended operating conditions" reveals that only the two control lines are 5V tolerant on this particular chip, but the 8-bit bus is not. Guess what -- it's the bus I wanted to interface to the outside world...From personal experience I can now confirm that the chip does indeed not handle 5V on those inputs well, but will let them raise the 3.3V supply voltage -- thank you very much!Does anyone happen to know the back story here? Was this chipmeantto perform as one would expect (and as formerly advertised by ST Micro), but Fairchild got the implementation wrong and had to limit its advertised functionality? It's hard to imagine that they intentionally designed such a compromised thing?!By the way: I did discover the 74LVCseries from TI and Nexperia in the meantime, and am hoping for a happy ending...Edit: And it seems ON Semi also makes the 74LCXseries, which also fixes this problem.

author: magic
author_rank: Super Contributor
timestamp: May 12, 2020, 05:51:45 am
content: Is the bus bidirectional by any chance? Then you have your answer - it's not the inputs that have the diode.

author: ebastler
author_rank: Super Contributor
timestamp: May 12, 2020, 05:58:52 am
content: Yes, it's a bi-directional bus driver. (But it misbehaves also in an application where I use it strictly uni-directionally, to translate eight inputs from 5V to 3.3V.)I agree that the bi-directional capability of the bus is probably behind the limitation ON Semi designed into this circuit. But why didn't they get it right?! Did ST Micro have a better implementation, or did they never realize the problem? Why can TI and Nexperia make their 74LVC245 perform as one would expect (hopefully)?

author: magic
author_rank: Super Contributor
timestamp: May 12, 2020, 06:08:56 am
content: I suppose it's the body diode of the output PMOS. If LVC doesn't have this limitation then maybe they found some way to disconnect it when the bus is in input mode, bus as soon as you switch to output I presume there will be problems if the other end still drives high.

author: ebastler
author_rank: Super Contributor
timestamp: May 12, 2020, 06:17:24 am
content: Quote from: magic on May 12, 2020, 06:08:56 amActively driving the outputs (to 3.3V) while the host still applies 5V is nasty, of course. But when you just switch the direction to output while not enabling the outputs yet, Nexperia explicitly states their 74LVCs will handle 5V just fine:https://www.mouser.de/datasheet/2/916/74LVC_LVCH245A-1389000.pdf

author: Pinkus
author_rank: Frequent Contributor
timestamp: May 12, 2020, 08:24:36 am
content: While I cannot help with the LVX245 this might be helpful for selecting a different chip: I recently used a 74AC16245 (16 channel, there should be also a 8 channel version) for bidirectional 3V <> 5V conversion. No problems.

author: magic
author_rank: Super Contributor
timestamp: May 12, 2020, 09:58:40 am
content: Quote from: ebastler on May 12, 2020, 06:17:24 amThat should be good, then. They must be using some clever little circuit to block flow in either direction when the output is off, maybe it would make an interesting teardown if someone is into CMOS technology.Not sure why LVX doesn't attempt to solve it other than not solving it is the easiest thing to do

author: ebastler
author_rank: Super Contributor
timestamp: May 12, 2020, 10:42:14 am
content: Quote from: Pinkus on May 12, 2020, 08:24:36 amHmm, I wasn't aware that the AC series could be used for voltage translation, and the datasheet seems to state that inputs shouldn't be driven above Vcc?Do you mean the SN74LVCH16T245 from TI by any chance? They have dual supply voltages, and can hence do "proper" level translation -- including the up-conversion from 3.3V outputs to 5V. I was wondering whether I should use those for level-shifting my outputs: At the moment I am using the FPGA's 3.3V outputs directly, which is fine when interfacing with old TTL logic, but marginal when interfacing with HC and other families with a 2.5V threshold.

author: SiliconWizard
author_rank: Super Contributor
timestamp: May 12, 2020, 03:28:15 pm
content: Never used the LVX series. I find this odd. How can they state "With 5 V−Tolerant Inputs"? Marketing mystery.I've used the LVC245 that works fine though - it does really have 5V-tolerant inputs when powered @3.3V.

author: Buriedcode
author_rank: Super Contributor
timestamp: May 12, 2020, 03:47:03 pm
content: I've seen this before, and a few times I've seen people recommend the 245 (LVX, VHC) for 5 -> 3.3V conversion even though the outputs aren't 5v tolerant. Datasheets have indeed been vague about this, with different manufacturers leaving out the caveat "5v - tolerant inputs are /OE and DIR" - that are the only true inputs of the device. Quite a few "maker" modules used the VHC245 for 5 -> 3.3V IO without realizing the problems it causes at the low voltage IO end.The TI datasheet for the LVC245 does indeed explicitly state that:Quote

author: SiliconWizard
author_rank: Super Contributor
timestamp: May 12, 2020, 04:08:40 pm
content: Quote from: Buriedcode on May 12, 2020, 03:47:03 pmYeah - I understand the why, but I still think the datasheet is confusing, and I personally consider this design to be a fucked-up design. Very limited use if only /OE and DIR are really 5V-tolerant.

author: Pinkus
author_rank: Frequent Contributor
timestamp: May 12, 2020, 04:40:10 pm
content: Quote from: ebastler on May 12, 2020, 10:42:14 amI checked the PCB: you are right, it is a 74ALVC164245DGG (I shall update this in the schematics) and yes, it has dual power supply. One note: do not let the direction pins float. You need a definate direction which you do not have until the mikrocontroller was programmed. Use pull up or pull down resistors for them, otherwise the level shifter might be destroyed soon after the first power up.

author: ebastler
author_rank: Super Contributor
timestamp: May 12, 2020, 06:23:44 pm
content: Quote from: Pinkus on May 12, 2020, 04:40:10 pmGood point, thank you. In my case I'm driving the bus drivers from an FPGA, which I have set up to have pullups on its I/Os already while its configuration is being loaded from flash. I hope that will take care of things.

author: Buriedcode
author_rank: Super Contributor
timestamp: May 12, 2020, 07:22:42 pm
content: Quote from: SiliconWizard on May 12, 2020, 04:08:40 pmWell, as far as I am aware, the 245 is the only bidirecitonal device in the VHC (or LVX) family, so as the input/output design (5v tolerant on input) is the same for all members of the family, I don't know why they would redesign it just for one device. Over voltage tolerance isn't the only reason to use the 245 in the LVX family, so it's not like it's useless.The problem is the datasheets are pretty much the same for all members of the logic family, so I assume they just used the same specs for the family, but added the caveat for this one device - and some manufacturers appear to have left this out. I spotted it in quite a few datasheets many years ago when designing mixed level systems (fairchild, TI, ON semi) but in recent years, the exception seems to have either been left out or... implicit in the "Recommended Operating Conditions" Input voltage - simply leaving out "Vin" leaving only the T/R and /OE. The OP is correct, in that it is indeed a gotcha.Note I only spotted this on the VHC and LVX families, not the LVC. I haven't seen any indications there is a problem in the AHC family either, but I don't know if thats because by design, or simply poor documentation.

author: ebastler
author_rank: Super Contributor
timestamp: May 12, 2020, 07:44:55 pm
content: Quote from: Buriedcode on May 12, 2020, 07:22:42 pmIt certainly gotme.QuoteThe LVC documentation seems very explicit in confirming that also the bus I/Os of the '245 will be 5V tolerant. I'm banking on that, have parts on order...