views:

325

answers:

3

If I understand correctly modern computers are modeled after the von Neumann architecture. I have sometimes seen reference to alternatives, but haven't really seen any very good descriptions of how non-von Neumann architectures would be organised and function. Does anyone have any examples? What are the advantages / disadvantages of alternative computer organization?

+2  A: 

I believe the most common one would be the Harvard architecture or the Modified Harvard architecture which is used in a lot of ARM based chips. I am sure there are many differences, but here is one that stands out

In a computer using the Harvard architecture, the CPU can both read an instruction and perform a data memory access at the same time, even without a cache.

Bob
Another advantage is that that means that you cannot treat instructions as data, and THAT means that with the right computer design you literally cannot hack the machine through software. I heard about a voting machine that used this architecture and the only reason it was hacked was because of a faulty cartridge design allowing them to slip a jump instruction into a buffer overrun, which then they pieced together a turing-complete language from bits of functions (which took man months to do) . For more, see http://www.grc.com/sn/sn-211.txt and search for: "That's shocking. You know,"
RCIX
Although, to be fair, with OS support some Von Neumann archs such as x86 has support for W^X. That means that if you write to a page of memory you can not execute it and if you execute it you can not write to it.. The x86 supports this in hardware with the NX bit.
Earlz
A: 

Examples of non von Neumann machines are the dataflow machines and the reduction machines. In both of these cases there is a high degree of parallelism, and instead of variables there are immutable bindings between names and constant values. non von Neumann is usually reserved for machines that represent a radical departure from the von Neumann model, and is therefore not normally applied to multiprocessor or multicomputer architectures, which effectively offer a set of cooperating von Neumann machines.

meena
A: 

Cellular automata - this predated neural network, but the ideas are very similar.

http://en.wikipedia.org/wiki/Cellular_automaton

Neural networks can be viewed as a form of cellular automata, or a distinct non-von Neuman architecture of their own.

http://en.wikipedia.org/wiki/Neural_network

Larry Watanabe