Saturday, October 31, 2015

Digital Circuit Simulator


As a homage to George Boole [Birthday 2nd Nov] ........

Digital Circuits are magical! It was in late 1995, in my second semester of engineering, that I was first introduced to the wonderful world of digital electronics. My first reaction was 'Wow! it's just like lego'.... It has been 20 years since and the feeling of 'wow' remains ever fresh. 

It was in 1999, after I had been introduced and reasonably marinated in another magical world - computer programming, that I could give tangible shape to my fascination with digital electronics.

I wrote Digital Circuit Simulator in the summer of 1999. Digital Circuit Simulator is a playground for experimenting with various constructs of basic Digital Electronics, using gates, flip-flops, switches and clocks, by using a drag and drop interface.

DCS also helps isolate and refactor a portion of circuit as a reusable component - integrated circuit, which can then be used as building blocks for bigger circuits.




Like I said, it has been 20 years and I still find myself tinkering with the application, trying to solve arbitrary digital electronic problems.

This program was possibly my first reasonably complex large scale application. After two decades of writing code, it is a refreshing perspective to browse through the source code and relive the past and smile at my own coding.

Today, I have taken it on myself to refactor the old code and give it a face lift. Have moved the old code to maven and uploaded to Git.. it would be a good past time to keep tinkering with it and refactor it and add some new features.

Maybe, 20 more years down the line, I will still smile at my attempts :). Below is the Git repository for this application.

https://github.com/deb-sandeep/DigitalCircuitSim

Some more images of the simulator -