And in some cases, smaller than a transistor (as commonly packaged).
74AUP1T97 comes in a variety of packages, some less than 1mm square. It’s a clever mix of gates internally which can be turned into many common AND/OR type functions depending on how you hook up the pins.
There's actually five of them, not just one: the ’57, ’58, ’97/’157, ’98/’158, and ’99. (Plus four more if you count the open-drain-output types released only by Fairchild, but I don't as they're too annoying to source reliably.)
These guys are super useful. Unfortunately it's somewhat unobvious how best to use them, since the manufacturer literature is written in a very obtuse way. Except for the ’99, they're all just two-input multiplexers. Some have an input inverted and some have an output inverted. The ’99 adds an output enable line and a fourth input, which it XORs with the output. It's much easier to design with these things when you think of them as multiplexers!
I've made a nice chart that I use to help design with these parts, but it's on my work machine and I'm too lazy to log in on a weekend to retrieve it. I've made a lot of nice charts and references... I should figure out somewhere to publish them....
Page 5 of this old NXP PDF was the starting point I used:
but I removed the redundant entries (most of us know how logic families work by the time this chart is useful...) and added the descriptions of what the parts really are inside.
Yes, thanks for expanding on that. I used the ‘97 most recently so it was the part number I remembered.
The open drain ones make good level translators as well, since the output can be pulled up to a different voltage.
If you find that chart, I’d love to see it!
(I'm not sure about that image host, but a screenshot seemed the easiest way to get it free of the corporate G Suite, with no-strings-attached absolutely guaranteed.)
There's more than just the five gates previously discussed because this was supposed to be a general list of all multifunction gates: that is, if you need to implement anything other than the obvious functions, start here first.
There were also three notes attached to the columns:
1. XNOR = 2-XOR with 1 inverted input = A XOR !B
2. A | !B = 2-OR with 1 inverted input = 2-NAND with 1 inverted input:
A | !B = !(!A & B)
3. A & !B = 2-AND with 1 inverted input = 2-NOR with 1 inverted input:
A & !B = !(!A | B)
74AUP1T97 comes in a variety of packages, some less than 1mm square. It’s a clever mix of gates internally which can be turned into many common AND/OR type functions depending on how you hook up the pins.