# Harvard and Von Neumann Architecture explanation with block diagram

## Harvard and Von Neumann Architecture with diagram explanation

Harvard architecture is developed to overcome the bottleneck of Von-Neumann Architecture. In Harvard architecture, it contains separate buses and storages for instructions and data.

The major advantages of having separate busses for data and instructions is that the central procession unit can access instructions and write and read data at the same time.

It stores machine instructions and data separately that are connected to totally different busses so that both tasks can be executed simultaneously and execution speed will be increased.

Let’s talk about the structure of Harvard architecture.

1. Buses: It is used as a signal pathway for instructions and data. in this architecture, there are separate buses for both data and instruction. There are different types of buses they are as follows: Data Bus, Data Address Bus, Instruction bus, Instruction Address bus.

2. Operational Registers: In Harvard architecture different types of registers used which are used for storing addresses of different types of instructions. some registers are memory data registermemory address registers.

3. Program Counter: program counter has the location of the next instruction to be executed. And program counter passes the next address to the memory address register.

4. ALU: Arithmetic Logic Unit is responsible for all the calculations required such as Multiplication, Addition, Subtraction, comparison, Logical operators and other arithmetic operators.

5. Control Unit (CU): CU is also a part of the central processing unit (CPU). CU operates all the processor control signals, Input/output devices, movement of data and instructions within the systems.

6. Input/Output Stream: I/P devices are used to read data into the main memory with the help of central processing unit (CUP) input instructions. It gives the information from the system as output are displayed through output devices. In simple word, computer systems give the result of processing (computation) with the help of O/P devices.

### Von Neumann Architecture

This architecture is published by Jhon von Neumann in 1945. This architecture contains major components like control unit (CU), memory Unit, ALU, inputs/outputs, and registers. This concept is based on the stored-program computer concept. Where program data an instruction data are stored in the same memory. Von Neumann design still used in most computers produces to date.

1. CPU: CPU is an electronic circuit unit which is responsible for the execution of the instruction of a computer program. The central processing unit is the primary component of a computer system that processes instructions. It runs the OS and applications, constantly receiving input from the user or active software programs.

2. Registers: It is a kind of memory wont to quickly accept, store, and transfer data and directions that are getting used immediately by the central processing unit.

 MAR Memory Address Register Holds the memory location of data that needs to be accessed MDR Memory Data Register Holds data that is being transferred to or from memory AC Accumulator Where intermediate arithmetic and logic results are stored PC Program Counter Contains the address of the next instruction to be executed CIR Current Instruction Register Contains the current instruction during processing

3. ALU: Arithmetic Logic Unit is responsible for all the calculations required such as Multiplication, Addition, Subtraction, comparison, Logical operators and other arithmetic operators.

4. Control Unit (CU): CU is also a part of the central processing unit (CPU). CU operates all the processor control signals, Input/output devices, movement of data and instructions within the systems.

5. Buses: It is used as a signal pathway for instructions and data. in this architecture, It is used to connect all the components of the computer’s CUP and Memory unit.

6. Memory Unit: The memory unit consists of Random-access memory (RAM), sometimes mentioned as primary or main memory. Unlike a tough drive (secondary memory), this memory is fast and also directly accessible by the CPU. RAM is split into partitions. Each partition of it consists of an address and its contents. The address will uniquely identify every location within the memory. Loading data from permanent memory (hard drive), into the faster and directly accessible temporary memory (RAM), allows the CPU to work much quicker.