In this paper we describe the structure, function, and manufacturing characteristics of the Cell Matrix computing architecture, which we believe is highly appropriate for atomic-scale fabrication.
The Cell Matrix is simple. It is composed of a matrix of nodes (cells), identical elements whose function is specified by a changeable memory incorporated into each node. Cells operate in two modes, a control mode during which their memory is being modified by a neighbor, and a data mode during which they are computing outputs based on their memory and their neighbors' outputs. The matrix is computationally complete; any function that can be realized by a Turing machine can be implemented on a Cell Matrix. In fact, it is possible to directly map traditional computer components such as CPU chips and memory modules onto a Cell Matrix. However, the architecture supports much more.
The fine granularity of the Cell Matrix affords excellent control over the use of the underlying hardware. A single cell can be configured to act as a small-scale logic block, i.e., a multiplexer or a piece of wire. More complex units are assembled out of these simpler blocks. Thus the Cell Matrix allows hardware to be customized to a given problem, leading to greater problem-solving efficiency.
This architecture provides a fundamental advantage over conventional FPGA-based reconfigurable systems. An FPGA is an externally controlled device, whereas a Cell Matrix is internally controlled. Internal control means the cells of the matrix are able to analyze and reconfigure each other autonomously. Thus the Cell Matrix is a self-configurable device.
Self-configurability is key to efficient control of extremely large reconfigurable arrays. In essence, since cells configure each other, having more cells also gives you more controllers. Large arrays can therefore be configured without necessarily increasing configuration time. Thus the Cell Matrix provides the architectural foundation needed, and currently lacking, for utilizing the extremely large switch counts which nanotechnology may make possible. The self-configurability of the Cell Matrix also affords opportunities in evolvable hardware, fault tolerance, embryonics, and other exotic areas.
The Cell Matrix has a number of manufacturing advantages over other computing architectures. The entire matrix consists of a single repeating unit. There are no connections among nonadjacent elements, no size-based distinctions in structure, no location-based distinctions among cells. This means if you can build a single cell (containing less than 1Kb of memory and a few dozen gates), you can build an arbitrarily large matrix, by connecting single cells along their edges. This is in sharp contrast to most other arrayed devices, including FPGAs and memories. Additionally, while most architectures search for ways to utilize three-dimensional manufacturing, a Cell Matrix is best realized as a 3D structure, and therefore may be uniquely suited to 3D nanoscale manufacturing.