Pass-Transistor Logic

In the BUF, NOT, AND, NAND, OR, and NOR gates described earlier, the input signals and internal data signals are only used to drive control terminals on the transistors. By comparison, transistors Tr3 and Tr4 in the XOR and XNOR gates shown above are connected so that input and internal data signals pass between their data terminals. This technique is known as pass-transistor logic. It can be attractive in that it minimizes the number of transistors required to implement a function, but it’s not necessarily the best approach. Strange and unexpected effects can ensue if you’re not careful and you don’t know what you’re doing.

An alternative solution for an XOR is to invert the output of the XNOR shown above with a NOT. Similarly, an XNOR can be constructed by inverting the output of the XOR shown above with a NOT. Although these new implementations each now require six transistors rather than four, they are more robust because the NOT gates buffer the outputs and provide a higher drive capability. In many cases, XORs and XNORs are constructed from combinations of the other primitive gates. This increases the transistor count still further, but once again results in more robust solutions.

Having said all this, pass-transistor logic can be applicable in certain situations for designers who do know what they’re doing. In the discussions above, it was noted that it is possible to create an AND using a single transistor and a resistor. Similarly, it’s possible to create an OR using a single transistor and a resistor, and to create an XOR or an XNOR using only two transistors and a resistor. If you’re feeling brave, try to work out how to achieve these minimal implementations for yourself.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *