Taking inspiration from Roelh's "Simple Relay ALU" and from JHallen's one found in the "Single Board Relay Computer" I designed a version that is providing 10 functions (1 addition, 6 bitwise logics, 1 shifter and 2 trivial ones) with the same 16 relays for 8bit as in Konrad Zuse's one, and keeping the fast carry feature. And with just 12 relays it is possible to have ADD, AND, OR and even SHR (shift right), and SHL using the addition, for me the sweet spot to be used. The NOT (useful also for the subtractions) in my case is coming from the A registry relays.
The diagrams below show the connections of the bit slice with full adder and logic outputs, and the functionalities available.

The fixed numbers 0 and 1 are coming from the instruction.decoding, while a multiplexer 4:1 (done with 6 4PDTs) selects for F0 among instruction values, A, not A, or An+1 (for the shift right). A 2:1 multiplexer (done with 2 4PDTs) is added at the end to select among ADD or bitwise logic function result
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.
This page is kept just as an old reference. The updated proposal with better graphic and designs are at https://hackaday.io/project/167879-optimized-alus-for-relay-based-computers
Are you sure? yes | no
Nice design, Stefano ! Your signal A comes from a register... do you have spare contacts there ?
Are you sure? yes | no
thank you! :)
regarding register contacts: yes, but probably just one of the 4 pairs of contacts is available. The others are used for the value, the inverse of the value and the zero circuit used in the jump counter
ps: if needed I can free up one more pair of contacts and use the zero circuit of the ALU result register, where I should still have 2 free pairs of contacts for each bit also there if needed
curious to know what you have in mind!
Are you sure? yes | no
I have a suggestion for you, see it here: https://hackaday.io/project/162246-simple-relay-alu/log/169305-if-you-dont-have-any-dollars
Provided that you already have the A register, it will cost just 2 relays per bit. Only 2 contacts of the A register are used, and the A and B relays can be controlled with a simple on-off switch. I don't think this can be done any simpler.
Are you sure? yes | no
Stefano, did you also look at my relay computer, https://hackaday.io/project/11012-risc-relay-cpu ? That also has a relay ALU, but it is more complicated because it can do decimal (BCD) arithmetic as well as straight binary.
The recent RR6 relay computer http://www.xpl0.org/rr6/ may also interest you.
Are you sure? yes | no
Both Risc Relay CPU an RR6 are very nice designs, but I'm more interested in "minimal" ones: I bought 60 relays for 50eur and hope to be able to build an 8 bit ccomputer (and spare some of them), with the help of a punched card reader device that I think is the perfect fits in such builds!
I'm writing down the page to describe it and as the relays arrive (shipping was for free so you cannot pretend speed) I will also start to build it!
Stay tuned :)
Are you sure? yes | no
Here you are: https://hackaday.io/project/167895-super-micro-relay-computer :)
Are you sure? yes | no