How to Build a Simple Relay Computer
Before there were vacuum tube computers -- and long before there were transistor computers -- there were relay computers. Konrad Zuse built a relay computer in 1938, and the Massachusetts Institute of Technology (MIT) had a relay computer -- called the Whirlwind -- in the 1950s. Whirlwind was the fastest and most sophisticated computer of its day. Relay computers were replaced by generations of electronic devices -- tubes, then transistors, then chips -- as computers got faster and faster. Today people build relay computers only as an exercise in nostalgia.
Things You'll Need
- Several hundred relays
- Wire
- Switches
- Power supply
- Diodes
- Resistors
- LEDs
- Keypad
Instructions
-
-
1
Make a block diagram of the computer before you wire anything. This should include buffers, memory, the Central Processing Unit (CPU), Arithmetic Logical Unit (ALU), inputs and outputs. Build the inputs and outputs first so these can be used to test the later components as you build them. A keypad makes a good input device and a panel of Light Emitting Diodes (LEDs) makes a good output device.
-
2
Build the memory and buffers. The memory will hold the program while it is running and buffers are small pieces of memory that are used in various places. For example, the input goes directly to a buffer and stays there until it is processed. A buffer holds the output while it is being read. Buffers are at the inputs and output of the ALU, and data waits in a buffer while it is being read into memory. Both memory and buffers are a series of "latching relays." These are just ordinary relays wired so that when they are activated a current flows through the contacts and the coil of the relay. Once the relay is turned on it stays on, remembering the data.
-
-
3
Wire up the logical and arithmetic gates. When two relays (A and B) have their contacts wired in series, the output is the logical function AND. There is an output if A AND B are activated. If the same two relays were wired so that their contacts were in parallel, the logical function would be OR. There is an output if A OR B is activated. The NOT logical function is achieved by using a relay with normally closed contacts. If there is no input, current can flow through the contacts. If there is input to the relay coil, the contacts open and no current can flow through the contacts. The input and output are in a NOT logical relationship. Arithmetic functions are combinations of logical functions -- this is possible when the numbers are in binary.
-
1
Tips & Warnings
Test each part as it is completed. If you wait until the whole thing is built before testing it, it will be hard to find errors.
The computer is only as reliable as the relays. Use the small, expensive and enclosed type if you can afford them.
References
Resources
- Photo Credit the relay image by Victor M. from Fotolia.com