Sunday, November 17, 2013

History of Computer Science: Von Neumann Architecture

Computers that were developed in the earlier era had fixed programs. These computers or devices are not completely obsolete. People use these machines because of their simplicity and for training students. You can take an example of a simple calculator; all it does is some basic mathematical operations. Can it do text processing? Absolutely not! How would you feel, if you had to reprogram your device every time your requirements changed or use different devices for different purposes? Tedious right! It led to the invention of stored-program computer.

Von Neumann Model, developed in 1945 is the base of a stored-program computer in which data and instructions are in the same electronic memory. This fact distinguishes it from the Harvard model which stores data and instructions in different memory. On a large scale this treatment of instructions as data is what makes compilers, assemblers and other automated programming model possible.  ENIAC discussed in earlier blog is a stored-program computer. Though Von Neumann Model was developed as early as in World War II, yet it is one of the most popular architecture even today. It has three main components: memory that stores instructions and data, a control unit and arithmetic and logic unit that moves the data and program in and out of memory along with executing these instructions, the last one being a bus through which data flows between the other components.

Von Neumann Model has its drawbacks and few mentioned are:
  • It performs inefficiently under modern pipelining architecture.
  • One program may break other’s programs, including the operating system and even crash the system.

Program modification by design or by accident can cause a serious bottleneck for this architecture. However, most of these problems can be alleviated by using branch prediction logic, using hybrid architecture by using a cache to separate data and instructions.  This architecture is one of the major milestones in computer science history and its simplicity has maintained its popularity all along.
References:                                                                                        

No comments:

Post a Comment