News & Updates

Version 2.24.02.27 released.

29 February 2024

Download new release with more speed, new Python and better look.

Version 2.23.04.28 released.

28 April 2023

Download new release with more speed.

Version 2.23.02.02 released.

3 February 2023

Download new release with more speed and less bugs.

Version 2.22.07.22 released.

23 July 2022

Download new release with new features and Croatian language support.

Version 2.22.03.30 released.

30 March 2022

Download new release.

Version 2.22.01.03 released.

5 January 2022

Download new release with button keyboard shortcuts.

Version 2.21.01.10 released.

14 January 2021

Download new release with fixes in Swedish translation and new Python.

Version 2.20.06.25 released.

25 June 2020

Download new release with new features, bug fixes and Swedish translation.

Version 2.20.01.15 released.

15 January 2020

Download new release with bug fixes.

Oscillation

Consider the following circuit built in the real life:

Oscillator

Here is NAND gate receives constant "1" and its own output as an inputs.
So when the output is 0 it will switch to 1 and immediately after this back to 0. So it will oscillate until one turn off the power. The frequency of the oscillation will depend on parameters of transistors and resistors the gate is built from.
In order to control the frequency of the oscillation one need to add some sort of electrical reactance http://en.wikipedia.org/wiki/Reactance_(electronics) to the circuit. This will allow changing the frequency of oscillation by altering impedance of the reactance. But again in the real life the generated frequency want be stable enough and hence usually a special clock circuit are used instead. Such clock gate is available for you in the Logic Circuit program:

Clock gate

Now taking in consideration that there no easy way to control frequency of oscillation and the fact that the program has clock gate I can think of couple of ways to deal with self oscillating circuits like the one above. One way is to detect the oscillation and stop simulating because otherwise there is no way to control how many oscillations happened during one tick of the clock. The second way is to add some more realistic reactance elements. Apparently adding more realism want ends with just a reactance. Next you will need to match impedances, set some realistic delays on gates, and many other restrictions and complications that usually real hardware engineers facing. And this of course will shift the program from simple and free to professional and very expensive category.
That is why oscillations are not allowed in Logic Circuit and if you try to power up the above circuit the execution will be aborted, power will be turned off, and a message box "Oscillation" will pop up.