I wanted to implement the function:

$$Y = \neg (A \land (B \lor C))$$

This is what I came up with, it looks correct to me but I would like a second opinion on that.


simulate this circuit – Schematic created using CircuitLab

  • 2
    \$\begingroup\$ 'it looks correct" - I've had many circcuits that looked correct but turned out to be wrong - that is what simulators are for \$\endgroup\$ – Joren Vaes Aug 23 '17 at 9:15
  • \$\begingroup\$ sorry I dont know how to simulate this or any kind of circuit \$\endgroup\$ – zython Aug 23 '17 at 9:17
  • 1
    \$\begingroup\$ Yet you entered your circuit into a simulator. I'm not an expert on digital simulation, but you could easily just write out a truth table for this logic function, and then do a DC operation point analysis to find all the output voltages of the different nodes (And thus your output) as a function of the input. A lot of simulators will even allow parametric sweep with which you could do the entire simulation of this in one run. \$\endgroup\$ – Joren Vaes Aug 23 '17 at 9:19
  • \$\begingroup\$ sorry I thought the tool was just for designing schematics. can you maybe link me where I can get started quickly to simulate the circuit ? \$\endgroup\$ – zython Aug 23 '17 at 9:20
  • 3
    \$\begingroup\$ How about the "simulate this circuit" button next to the image? \$\endgroup\$ – Brian Drummond Aug 23 '17 at 9:22

From your drawing, I derive this:


simulate this circuit – Schematic created using CircuitLab

Your 10T implementation is correct.

There are alternative 6T implementations as an OAI complex gate:


simulate this circuit

The OAI could be as drawn or the nFETs can be rearranged.

(Note that the bulk nodes of the stacked FETs are drawn inappropriately. I didn't intend to imply these are discrete ICs with the source and bulk nodes shorted... this is just what I pulled from the library.)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.