Sometimes the key to everything is to find the right words... the right words to explain a concept, the right words to feed into a search engine. I've learned some new words to explain the BitGrid, and they help tie it into the history of computing a bit better, and give context. The two words are
systolic array
The bitgrid as I imagined it way back in the 1980s is a systolic array. It takes information, and processes pieces of it simultaneously. It's an extension of the then-common idea of a bit-slice processor, which was used to create
really fast custom processors before the microprocessor really took off.
The BitGrid is a minimalist bidirectional systolic array. According to the
wikipedia entry on the subject, the pros and cons of systolic arrays are:
Pros
Cons
- Expensive
- They are a highly specialized for particular applications.
- Difficult to build
The fact that I want to process 4 bits at a time means that each cell is almost trivial, a 4bit wide 4address line EEPROM table, for a total of 64 bits of information. This makes it cheap and easy to design and build, pretty much wiping out the Cons in the table above. I don't have a way to get silicon,
yet but I expect it should be the matter of getting a cell and it's addressing logic right, then replicating a big grid of these onto a single chip.
I've figured out that a
n bit multiplier requires n*(n-1) cells. A divider takes the same number of cells. Adding and subtracting n bits requires n cells.
It's amazing how little of this can be found via a straightforward Google search, unless you know exactly which
magic words to use. Semantic web searches will add value, should they ever actually get here.