Von Neumann architecture is an early, influential type of computing structure. It primarily consists of memory chips that are able to both hold and process data. Each chip has the ability to perform different tasks, depending on how it is affected by the operation executed before it. In this architecture, each computer would have memory, mechanisms for output and input, a central control, a place for central arithmetic, and external storage.
Computers with Von Neumann architecture are known as stored-program. This means that the computer does not need external switches or other influences in order to run. All instructions and data are stored in random-access memory (RAM).
Von Neumann architecture was created in the mid 1940s by John von Neumann, a pioneering computer scientist. Born in 1903, he also wrote several mathematics papers with highly influential theories which have been in use for many decades. He described the structure necessary for creating a functional computer in one of these papers. This programming structure forms the base for a significant percentage of current computing architecture.
Before the Von Neumann system, computers were essentially designed rather than being programmed. Once a machine was assembled, it could only perform one function. In order to change what the computer did, it was necessary to rewire, add components, or otherwise alter the physical structure of the machine.
While many modern computers continue to have some base in Von Neumann architecture, some programmers have started to discard the concept for more efficient models. A phenomenon known as the Von Neumann bottleneck is one of the primary problems with the structure. The problem with the bottleneck is that the operations which process information and data share the same bus, which is the transportation method for these elements. This affects the efficiency and overall ability of the system.
In modern times, this architecture has often been replaced with Harvard architecture. It is also a stored-program type of architecture. Harvard architecture manages storage, data, and instructions in a similar way, but has more resources for transporting information. The structure has dedicated data buses for transporting instructions and memory, so that more functions can operate at the same time. While the Harvard architecture has grown in popularity, there are still some who prefer the simpler Von Neumann architecture, which can be a more accessible format for beginning computer programmers in particular.