For a more conventional ALU approach, using resistors in the base connections, the following adder circuit could be used as a starting point. It could also be used for DVTL ( Diode-Vacuum-Tube-Logic).
The top part calculates the (inverted) carry. The lower part calculates the (inverted) sum, with the function SUM = ( ( A or B or Cin ) and /Cout ) or ( A and B and Cin )
The logic equivalent of this circuit is:
With a few extra parts, the carry could be forced to always be active or inactive. In that case the circuit will perform a simple AND (for carry active, /Cout=low) or an OR (for carry not active, /Cout=high).
To connect the /Cout to Cin of the following bit, you will need an extra transistor inverter, or you could use inverted logic for every alternate bit.
To make this into a working ALU, resistor values must be calculated and some parts must be added for optimal circuit response. It is supposed that the circuits connected to the inputs can sink current but also source current (for the OR gate).
It is a simple circuit. It does not have a fast carry.
[ edit oct 2023: pictures were deleted by Hackaday, I re-inserted them ]
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.
A very elegant design. I never would have thought to use the carry out as an input to the sum! I may try adapt this to discrete NMOS logic.
Are you sure? yes | no
Thank you Retrac ! I'm looking forward to seeing this in one of your designs.
Are you sure? yes | no