WireWorld Computer Home Elements Gates Devices Modules Units Appliances  

WireWorld Computer

Introduction

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.

Binary to BCD converter
Binary to BCD converter
What is WireWorld
 

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:

   •  empty 
Indicates WireWorld's breadboard, the background where all the magic happens
   •  copper 
Indicates the conductive wires on which the electrons live
   •  head 
Indicates the head of the electrons
   •  tail 
Indicates the tail of the electrons

With the examples on this website, every state looks like this:

empty cell
empty
copper cell
copper
electron's head
head
electron's tail
tail

All of WireWorld's electrons have a head and a tail to indicate direction of flow.

The Rules of WireWorld

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:

  • empty → empty
  • head → tail
  • tail → copper
  • copper → head, if exactly one or two of the neighbouring cells are heads

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.

Transmitting a basic signal

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.

 
Wires and Electrons
 

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.

Transmitting zeros and ones

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.


Bit pattern 1011

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.

Contact Me

This website contains my take on the marvelous WireWorld Computer
For questions, remarks or useful supplements (sorry, no javascript available)

Last update: September 2nd 2022

Camiel Wijffels
×
#