I have never fully understood how computers work functionally, until I discovered WireWorld. All concepts of the basics of computers suddenly became very clear to me. How the components within the CPU are interconnected, the parallel processing of signals and the massive delay in assembly language processing.
Although WireWorld was invented back in 1984 and the WireWorld Computer was build in 1992, I only discovered WireWorld in 2009. Since then I have been fully committed to WireWorld and especially to the WireWorld Computer.
Thanks to all who made the WireWorld Computer possible.
WireWorld is a cellular automaton on an infinite square grid, created by Brain Silverman back in 1984. The automaton is similar to J. H. Conway’s well-known Game of Life. WireWorld became widely known as it was described in Scientific American in January 1990.
The WireWorld computer is, according to Quinapalus.com, "as far as we know, the first ever computer implemented as a cellular automaton that you might reasonably want to write a program for". The WireWorld Computer was designed primarily by David Moore and Mark Owen.
As with all cellular automata, time proceeds in discrete steps called generations. Within the grid, each cell can be in one of four different states:
With the examples on this website, every state looks like this:
All of WireWorld's electrons have a head and a tail to indicate direction of flow.
With each generation, the state of a cell can change, depending on the current state of the cell and its eight neighbors. The following rules apply to change:
A row of copper cells, a wire, is located on the grid, the breadboard. An electron moves along this wire, head forward, at the rate of one cell per generation.
This wire gives us the opportunity to transport electrons from one point to another. By using a series of electrons we can transport data. In our case the wire is divided into segments of 6 cells, employing the 6-micron technology. The copper dots alongside the wire are used only to create visible fixed points.
If there is an electron head at the beginning of a segment it is on. This represents a binary 1. If the segment is empty it is off. This represents a binary 0. The segments and the data must be synchronized in order to communicate correctly.
The top wire contains a steady stream of zeros and the bottom wire contains a steady stream of ones. The segment distribution is clearly shown at the bottom wire.
In this design the data is four bits of length, or 24 cells (4 x 6). The top wire contains a start-of-data indicator and the bottom wire contains the bit pattern 1011. When transmitting data, the least-significant-bit-first technique is used as it allows for a simpler design of the WireWorld Computer.