Von Neumann architecture is modern & common structure of a computer, An IAS (Institute for Advanced Study) computer, it consists of 03 primary components : (1) Central Processing Unit (CPU) (2) Main Memory Unit (3) Input/Output (I/O) Device

Central Processing Unit
- Central Processing Unit (CPU) consists of – (1) Control Unit (CU) (2) Arithmetic Logic Unit (ALU) (3) Registers, to process input store and output results.
Registers
(1) Accumulator : Stores the results of calculations made by ALU.
(2) Program Counter (PC) : Keeps track of the memory location of the next instructions to be dealt with.
(3) Memory Address Register (MAR) : It stores the memory locations of instructions that need to be fetched from memory or stored into memory.
(4) Memory Data Register (MDR) : It stores instructions fetched from memory or any data that is to be transferred to, and stored in, memory.
(5) Current Instruction Register (CIR) : It stores the most recently fetched instructions while it is waiting to be coded and executed.
(6) Instruction Buffer Register (IBR) : The instruction that is not to be executed immediately is placed in the instruction buffer register IBR.
Differences Between Von Neumann and Harvard Architecture
- The main difference between both Architecture model is Von Neumann Architecture model stores both program data and instruction data in the same memory where Harvard Architecture model separates the storage and signal paths for data and instructions.
- SCADA & PLC – The primary difference between a SCADA (Supervisory Control and Data Acquisition) is software used in Von Neumann Architecture and PLC (Programmable Logic Controller) is hardware used in Harvard Architecture.
Flynn’s Taxonomy
- M.J. Flynn classified computer system’s organisation based on the number of instructions as well as data items that are changed at the same time. There are 04 categories in Flynn’s taxonomy :

- SISD (Single instruction stream, single data stream)
- SIMD (Single instruction stream, multiple data stream)
- MISD (Multiple instruction stream, single data stream)
- MIMD (Multiple instruction stream, multiple data stream)
