Table of Contents
A scientific and technological effort to identify
Amorphous computing is
Properties of our model
Why is this interesting?
How can we program amorphous stuff?
“Angiogenesis” (Ron Weiss)
Some general tools for building structure in amorphous systems
Cleverness makes better Coordinates
Local coordinate systems can be combined.
By combining these ideas, we can obtain detailed topological control, and embody the control mechanisms in a language…
A botanical metaphor
Start with Vdd, Vss, and a Poly Contact
The poly contact sprouts a growing point that bifurcates and then grows toward the pheromones secreted by Vdd and Vss.
When the growing poly gets close to Vdd and Vss it is stopped by a short-range inhibition
The poly growing points die off, but first they sprout P and N transistor diffusion growing points, which grow toward Vdd and Vss, where they drop contacts.
The diffusions also grow toward each other. When they hit they form a new poly contact and poly growing point.
The process then repeats, growing the next inverter.
This process repeats to make an arbitrarily long chain of ugly, but topologically correct inverters.
This very parallel process can be described using a serial process metaphor. The growing points provide a serial locus of control, even though the implementation is in terms of a uniform state machine in each computational particle
The growing points created by the poly contact growing point have independent existence.
Growing points can join as well as split.
The Challenge of Amorphous Computing