Interactive 8-bit Adder From Discrete Components
During my 3rd year of studies, my semi-conductor physics lecturer found out I was interested in making a transistor-transistor logic (TTL) circuit and together we came up with the idea to make an 8-bit adder using discrete transistors with LEDs to demonstrate the adding mechanism in TTL. The outline of the project is this: make an interactive display piece for outreach which should demonstrate transistor logic and show how much transistors have shrunk since their invention. The piece should teach about computing at a simple level including giving reason to learn about binary. In order to do this, I first drew a logic gate circuit and then learned how to make each gate using npn bipolar transistors. Once complete, I drew the full circuit diagram and added LEDs to show the logic level at certain points.
My first attempt at the full adder circuit was a failure. I did not realise that the diode drop across the NPNs would be so large and so learned why all logic is typically inverted, the hard way. The signals would always be too weak to light an LED after two or three gates. It turns out that inverting all logic gives 5V off the top of the gate whenever it is not open and then 0V when the gate is open. Using the 5V for inputs to other gates, and for LEDs, is a must. Using this new knowledge, and the added money of the outreach budget, the project has taken a turn towards professionally produced PCBs instead of strip board.
The display board uses an Arduino Uno to convert the binary values from each input and output to each adder circuit to convert binary to human readable decimal. This board works flawlessly and contains a 12V regulator. Despite working, the separate power supply and the piece requiring two power supplies, has led us to redesign this, using the same pieces but including a built in power supply to provide both +12V and +5V rails for the Arduino and adder boards respectively. This working board and not working adder circuits can be seen on the right.