Harvard Vs Von Newman Architecture
Harvard Architecture was used earlier, and Von Newman Architecture is currently using now a days. Let’s see Harvard Vs Von Newman Architecture.
Harvard Architecture was introduced in 1939. According to this architecture, Instructions and data are in two different memories. Data will be in one memory and instruction will be in another memory. It requires extra hardware’s. As Harvard architecture contains two memories, So it use separate buses for data and separate buses for instructions.
Normally, Flash memory is used as program memory and SRAM or EEPROM is used as Data memory.
Von Neumann Architecture
The von Neumann architecture is a computer architecture made on 1945 by physicist John von Neumann. According to Von Neumann Architecture, Instruction and data are kept in the same memory.
Data: All variables and constants i.e. int a=2, b=3 etc are data.
Program: Programs are set of instructions, which are used to perform actions on data. i.e. ADD, SUB, MOVE etc.
This design is still use in almost all computers using today. This architecture contains three main components.
- i. Main Memory: It is single primary storage i.e RAM.
- ii. CPU: CPU includes the ALU, CU and Registers to execute the instructions.
- iii. I/O devices: Input devices enter the data or instructions into the system and Output devices display the corresponding results. As, keyboard and mouse are input devices and Monitor is an Output device.
Note: Von Newman architecture is also known as Stored Program computer
Comparison in Harvard Vs Von Newman Architecture
|Point of Comparison||Von Newman Architecture||Harvard Architecture|
||It has only one memory for both data and Program instructions.||It has two separate memories, one for data and other for Program instructions.|
|Hardware Requirements||Requires less hardware’s. Because it use Single memory and memory buses . It also require cache memory.||Requires more hardware’s. Because it use separate memory and memory buses. It does not require cache memory.|
|Speed of execution||Speed of execution is slower since it cannot fetch the data and instructions at the same time. Because Fetching the instructions and transferring of data, can’t perform at the same time.||Speed of execution is faster because the processor fetches data and instructions simultaneously. Because Data transfer and instruction fetch, can perform at the same time.|
|Space requirements||It Requires less space as “empty memory” of data can use by instructions and vice versa.||It Requires More space as “empty memory” of data cannot use by instructions and vice versa.|
|Controlling||Speed of execution is slow. So, It use registers to speed up.||Speed of execution is fast.|
|Execution||Its execution is simple||Its execution is Complex.|
|Environment||It is better for desktop computers, laptops, workstations and high performance computers||It is mostly use in micro-controllers and signal processing (DSP).|