Java Circuit Simulation Workaround ▾

Due to recent changes by Oracle, java applets have become difficult to run in the browser. To mitigate the troubles, Oracle has provided the following websites to help users troubleshoot: and

Even after following the above instructions, loading applets may still show warning concerning “unsigned application” and “unknown publisher”. For Teahlab in particular, these warnings are due to the fact that we have opted not to pay a third party such as Verisign to sign our applets. Any warning that comes up when you try to run our applets should emphasize that our applets will always run with “limited access”, which is Oracle’s way of letting you know that teahlab doesn’t do anything on your computer except running the circuits you see: in other words, our applets are safe to run.


The Teahlab Team

by Isai Damier (Let's connect on twitter @isaidamier )

The basic logic NOT gate circuits: an interactive inverter logic circuit where you see its function.

The NOT gate is an electronic circuit that performs negation. The output of the NOT Boolean operator is true when the input is false, and the output is false when the input is true. Hence, all NOT does is take an operand and negate it. For the sake of argument let us analyze a sentence that uses the word NOT: Good is NOT evil.

Input Output Comment
A Out
0 1 High
1 0 Low

A philosopher will tell us the absence of good does not necessitate the presence of evil. However that may be, our concern here is not meaning. Our concern is the statement. As we show in Table 1, the operand Good can be in two possible states: either it is present or it is not present. As such, we must evaluate the statement for two possibilities. We show the complete evaluation in Table 2.

Case 1 False Good is absent
Case 2 True Good is present

Table 1: possible input conditions

FALSE TRUE Good is absent
TRUE FALSE Good is present

Table 2: Truth Table of complete evaluation

It is typical in engineering to use 1 instead of TRUE and 0 instead of FALSE. Therefore we rewrite the data from Table 2 in Table 3 accordingly.

0 1 Good is absent
1 0 Good is present

Table 3: Truth Table of complete evaluation

For greater detail on the logic significance of the word NOT, read the Boolean Algebra article.

Physical Implementation

In order to apply the principles of Boolean algebra to create real machines that can think and make decisions, we have had to find ways to physically implement the logic operators AND, OR, NOT, etc. To that end, modern day engineering uses transistor networks called logic gates. Hence, a logic gate is actually a group of transistors so arranged as to behave as a Boolean operator.

From a circuit complexity perspective, the most basic logic gate is the NOT gate (aka the Inverter). The NOT gate is made of two transistors, as shown in Figure 1. In theory a NOT gate is really just one transistor. But in practice microchip manufacturers use a pair of transistors to construct the NOT gate.

Inverter digital logic circuit built with cmos transistors.

Figure 1: Interactive transistor circuit of the NOT logic operator


The use of transistors to build logic gates is quite modern. Before transistors we used other devices, such as vacuum tubes (aka thermionic valves). And very soon we may use DNA, or some other abundant material. There are many types of transistors. Our circuit in Figure 1, for example, uses complementary metal–oxide semiconductor (CMOS) technology. Our choice of CMOS is arbitrarily based on the fact that CMOS is by far the dominant technology in use today. The dominance is due to how well CMOS performs in all the important categories: fabrication cost, packing density, loading capacity (i.e. fan–out), operational speed (i.e. propagation delay), noise margin, and power dissipation (i.e. green technology).

There is of course more to transistors than can be presented here; especially since transistors are used for more than just digital systems. And so we refer you to any good micro-electronics textbook.

Alternate Design

Below we show three additional typical constructions of the NOT gate. Each of the constructions presents specific conveniences to designers. If you are very new to digital systems design, you may not understand the importance of the figures below. Still, we include them in this article for the people who may need them.

Inverter digital logic circuit built with universal NOR boolean logic gate.
Figure 2: NOT gate implemented with a NOR gate

Inverter digital logic circuit built with universal NAND boolean logic gate.
Figure 3: NOT gate implemented with a NAND gate

Inverter digital logic circuit built with universal two to one Mux multiplexer boolean logic gate.
Figure 4: NOT gate implemented with a 2X1 Mux