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 )

Interactive Flip Flop Hierarchy digital logic circuit, with Boolean function

In the multivibrator pages you are introduced to a host of latches and flipflops. The interactive figure above shows the hierarchy that links the different types of multivibrators. The most basic multivibrator circuit is the Set Reset. Then with the addition of an inverter (i.e. a single transistor), you can change a Set Reset multivibrator to a Data multivibrator. Next we can build upon the Data circuit to create a JK circuit. Finally, with the JK you can implement a Toggle circuit. Our interactive figure presents a fairly exhaustive lineage.

From a classical perspective a multivibrator is either a latch or a flipflop. Many people don’t recognize this division of class. Purists, however, understand the terms to refer to different levels of sophistication. In that view, a latch is a transparent or level-sensitive multivibrator. This distinction means that while the signal C of a latch is asserted (ON) the output of the latch will respond to changes at the input. On the other hand, a flipflop will only change its output state at the edge of the clock signal, i.e. while the clock signal is changing from one value to another. All the circuits in the interactive figure above are flipflops. Turn the C signal ON and then play around with the other input signals. You will see that nothing changes at the outputs. But if you cycle the clock signal C, then the changes you make at the input will cause changes at the output.

For another illustration, Figure 1 below shows two data multivibrators. One is a latch and one is a flipflop. Play around with them to see the difference. First, set C = ON then play with D. Second, turn D = ON and play with C.

Interactive digital logic circuit: two data multivibrators.