Von-Neumann Model
Von-Neumann proposed his computer architecture design in 1945 which was later known as Von-Neumann Architecture. It consisted of a Control Unit, Arithmetic, and Logical Memory Unit (ALU), Registers and Inputs/Outputs.
Von Neumann architecture is based on the stored-program computer concept, where instruction data and program data are stored in the same memory. This design is still used in most computers produced today.
A Von Neumann-based computer:
- Uses a single processor
- Uses one memory for both instructions and data.
- Executes programs following the fetch-decode-execute cycle
Components of Von-Neumann Model:
- Central Processing Unit
- Buses
- Memory Unit
Central Processing Unit
The part of the Computer that performs the bulk of data processing operations is called the Central Processing Unit and is referred to as the CPU.
The Central Processing Unit can also be defined as an electric circuit responsible for executing the instructions of a computer program.
The CPU performs a variety of functions dictated by the type of instructions that are incorporated in the computer.
The major components of CPU are Arithmetic and Logic Unit (ALU), Control Unit (CU) and a variety of registers.
Arithmetic and Logic Unit (ALU)
The Arithmetic and Logic Unit (ALU) performs the required micro-operations for executing the instructions. In simple words, ALU allows arithmetic (add, subtract, etc.) and logic (AND, OR, NOT, etc.) operations to be carried out.
Control Unit
The Control Unit of a computer system controls the operations of components like ALU, memory and input/output devices.
The Control Unit consists of a program counter that contains the address of the instructions to be fetched and an instruction register into which instructions are fetched from memory for execution.
Registers
Registers refer to high-speed storage areas in the CPU. The data processed by the CPU are fetched from the registers.
Following is the list of registers that plays a crucial role in data processing.
Registers | Description |
---|---|
MAR (Memory Address Register) | This register holds the memory location of the data that needs to be accessed. |
MDR (Memory Data Register) | This register holds the data that is being transferred to or from memory. |
AC (Accumulator) | This register holds the intermediate arithmetic and logic results. |
PC (Program Counter) | This register contains the address of the next instruction to be executed. |
CIR (Current Instruction Register) | This register contains the current instruction during processing. |
Buses
Buses are the means by which information is shared between the registers in a multiple-register configuration system.
A bus structure consists of a set of common lines, one for each bit of a register, through which binary information is transferred one at a time. Control signals determine which register is selected by the bus during each particular register transfer.
Von-Neumann Architecture comprised of three major bus systems for data transfer.
Bus | Description |
---|---|
Address Bus | Address Bus carries the address of data (but not the data) between the processor and the memory. |
Data Bus | Data Bus carries data between the processor, the memory unit and the input/output devices. |
Control Bus | Control Bus carries signals/commands from the CPU. |
Memory Unit
A memory unit is a collection of storage cells together with associated circuits needed to transfer information in and out of the storage. The memory stores binary information in groups of bits called words. The internal structure of a memory unit is specified by the number of words it contains and the number of bits in each word.
Two major types of memories are used in computer systems:
- RAM (Random Access Memory)
- ROM (Read-Only Memory)