2 ms·
There are two major competitors to the Von Neumann architecture, and then a few speculative ones. The most popular one is Harvard architecture, where code and
by gpcz 13y ago
There are two major competitors to the Von Neumann architecture, and then a few speculative ones. The most popular one is Harvard architecture, where code and data are in separate memories (improves security and performance, but makes loading code difficult). Most modern processors operate like a Harvard architecture machine when they are running directly from cache, but they act like Von Neumann machines when they have access to RAM. This means that they get some of the performance benefits, but you need hacky things like W^X to get (partially) the security benefits.
The other one is dataflow architecture, which involves representing programs as a digraph where nodes represent instructions. Data flows through edges from one instruction to the next non-deterministically. This was popular research material in the late 70s and early 80s, but there were efficiency concerns.
IBM (and Von Neumann) also dabbled with making computers that resembled neural networks, but VN passed away before he could dedicate a lot of time to it. AFAIK IBM's neural computer is still in research phase.
I'd say Von Neumann machines "won" for a few reasons. First, Von Neumann consulted for IBM in the department that developed their first commercially-sold computers, so he got a lot of creative control. Second, as Hennessey and Patterson wrote in Computer Architecture: A Quantitative Approach, advocates of Von Neumann computers regarded HA machines as reactionary, implying there was even some religion back then. Third, Von Neumann architecture machines are significantly easier to load programs into. My guess is that a combination of business/political concerns on IBM's part in the 50s and 60s combined with momentum and switching costs is the main reason VN machines continue to win.