0% found this document useful (0 votes)
10 views6 pages

Understanding Von Neumann Architecture

Uploaded by

ameenacandling
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views6 pages

Understanding Von Neumann Architecture

Uploaded by

ameenacandling
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Von Neumann Architecture

Von Neumann Architecture refers to a design model for computers where the
processing unit, memory, and input-output devices are interconnected
through a single, central system bus.

Features of Von Neumann Architecture:

1) CPU is the brain of the computer


2) Direct access between CPU and memory
3) Memory unit consist of programs and data
4) Stored programs are made up of sequentially written instructions.

Central Processing Unit (CPU)

● Also known as microprocessor

Features of CPU:

● It is installed on an integrated circuit on microchip

● It is responsible for the processing and execution of all the instructions


in computer.

Components of CPU:

● ALU: Full form=Arithmetic Logic Unit

⮚ IT carries out the arithmetic and logical operations

⮚ A multi core computer have more than 1 ALU

⮚ It decodes the instructions during fetch decode execute


cycle.
● CU: Full form= Control Unit

⮚ It reads the instruction from memory

⮚ It ensures synchronization of data and instructions in


computer
⮚ It helps in fetch-decode-execute cycle

● Registers: small temporary holding places for data and instructions.

⮚ CIR= current instruction register holds the current instruction


being decoded and executed.
⮚ ACC= Accumulator temporarily holds data before and after
carrying out arithmetic and logical calculations.
⮚ MAR= Memory address register holds the address of memory
location currently being read from and written to.
⮚ MDR= Memory data register holds the data that has been
read from or ready to be written to the memory.
⮚ PC= Program counter holds the address where the next
instruction to be read is located.
● Buses: pathways that carries the data and instructions within the
computer.
⮚ Data bus:
🡪it is bi-directional
🡪carries the data between CPU and memory and to or from
the input and output devices.
⮚ Address Bus:

� It is uni-directional

� It carries the address of data or instructions from CPU to


memory.
⮚ Control Bus:

� It is bi-directional
� It carries the control signals from the control unit to other
components of computer.

Fetch Execute Decode Cycle


● The program counter(PC) contains the address of the next instruction
to be fetched.
● The address contained in PC is copied to the memory address
register(MAR) through the address bus.
● Control unit sends signals through the control bus.

● The instruction contained in the memory address present in the MAR is


placed in the memory data register(MDR) through data bus.
● The entire instruction is copied from MDR and placed in Current
Instruction register(CIR).
● Control unit again sends signals to manage the process.

● The value in PC is then incremented so that it points to the next


instruction to be fetched.
● The address part of the instruction is placed in the MAR.

● The instruction is finally decoded and is then executed.

Cores

● It is a combination of ALU, control unit and registers.

● CPU can have multiple cores.

● A dual-core processor has two cores

● A quad-core processor has four cores

● Each core runs separate fetch, decode, execute cycles, independently


from one another and at the same time (simultaneously).
● Multiple cores enables multitasking (running more than one program at
the same time)
● Some programs cannot be split between cores

● The more cores a computer has the more instructions that can be
executed per second resulting in better performance.

Cache
● Cache is a small amount of memory situated within or close to the CPU
with very fast read/write speeds
● It is used for storing frequently used instructions/data, recently used
instructions, and instructions that are to be fetched and executed next
in a process.
● The impact of increasing the amount of cache is that more data can be
stored there and accessed faster than if it was in RAM …which
improves the performance of the CPU.

System Clock
● Clock synchronises all computer operations.

● Each core has a clock speed

● The clock speed is how many instructions the core can execute each
second
● The clock speed is measured in Hertz

● Modern cores can execute billions of instructions per second

● A gigahertz (GHz) is a billion instructions per second

● A megahertz (MHz) is a million instructions per second

● A CPU core with a clock speed of 3.4GHz can execute 3.4 billion
instructions per second

Factors affecting Computer Processing:

● Increasing the width of address bus and data bus.

● Increasing the clock speed.


● Using multiple cores in CPU.

● Using cache memories.

Instruction Set
● An instruction set is a list of all the commands that can be processed by
a CPU
● Each command has a unique binary code.

● Opcode determines the operation to be performed.

● Operand is the data or register in memory on which the action is to be


taken.

Embedded System
● An embedded system is a computer systems with a either one function
or limited specific functions built within a larger mechanical device
● Its purpose is to control the device and allow a user to interact with it

● It runs on firmware and does not have additional peripherals

● An embedded system is different to a general purpose computer system


like a laptop or desktop computer which can be used to perform many
different tasks
● It uses microprocessors.

● Some embedded systems are microcontrollers meaning they are part of


an integrated circuit with built in memory.

Advantages of Embedded System:

● low power consumption

● small physical size

● low cost to manufacturer


● they can be controlled remotely

● can operate in real time and respond to inputs very quickly

● efficient since they are dedicated to one task.

Disadvantages of Embedded System:

● Difficult to upgrade.

● Troubleshooting problems is only limited to technicians.

● Once accessed via internet it becomes prone to hackers

● Preferred to be thrown away rather than repaired due to lack of


technical education.

Applications:

Common questions

Powered by AI

The Von Neumann bottleneck arises from the shared bus used for both data and instruction transfers, creating a throughput limitation that can slow down processing as the CPU waits for instructions and data to arrive . Modern computing faces this bottleneck particularly in data-intensive applications. Architectural innovations, such as increasing bus widths, incorporating caches, and developing multi-core processors, help mitigate this by enhancing data access speeds and parallelizing processes . Alternative architectures like Harvard architecture can also address these issues by separating instruction and data pathways, reducing competition for bandwidth .

Increasing the width of the address bus and data bus enhances system processing efficiency by allowing more data and memory addresses to be accessed during each cycle. A wider address bus enables a larger addressable memory space, which can accommodate more data, essential for applications requiring large datasets . Similarly, a wider data bus increases the volume of data that can be transferred at one time, reducing the number of cycles needed for data transmission and thus speeding up data-intensive operations. Together, these enhancements reduce the time spent accessing memory, thereby improving overall system throughput .

Registers within the CPU serve crucial roles in processing instructions by temporarily holding data and addresses needed for execution. Types of registers include the Current Instruction Register (CIR), which stores the instruction currently being decoded and executed; the Accumulator (ACC), which holds intermediate data for arithmetic and logical operations; the Memory Address Register (MAR), which stores the address of the memory location to be accessed; the Memory Data Register (MDR), which holds data read from or to be written to memory; and the Program Counter (PC), which indicates the next instruction's address . These registers facilitate quick data access and manipulation, enhancing processing speed .

The system clock synchronizes all operations within a CPU, providing a timing signal that coordinates the execution of instructions across various components . Clock speed, measured in Hertz, determines how many instructions a core can process per second, with higher speeds allowing more instructions to be executed, thereby improving computational performance . Modern CPUs operate in gigahertzes, allowing the execution of billions of instructions per second, directly impacting the overall speed and efficiency of the computer system .

Von Neumann Architecture is characterized by a single central system bus connecting the processing unit, memory, and input-output devices, allowing direct access between the CPU and memory . This architecture includes a CPU, which is considered the 'brain' of the computer, storing programs and data in memory together, thereby enabling sequential instruction execution . These features impact performance by potentially creating a bottleneck due to the single bus system, which can limit data throughput and slow down processing speed. Furthermore, having a unified memory for instructions and data can lead to inefficiencies, commonly referred to as the von Neumann bottleneck .

Cores and cache memory both enhance CPU performance, but in different ways. Multiple cores enable parallel processing, allowing multiple fetch-decode-execute cycles to occur simultaneously, which improves multitasking and increases the number of instructions that can be executed per second . Cache memory, on the other hand, provides a small, high-speed storage area closer to the CPU for frequently or recently used data, reducing the latency compared to accessing data from RAM and thus speeding up program execution . While cores improve throughput by increasing parallelism, the cache improves access speed by minimizing data retrieval times from slower memory sources.

The fetch-decode-execute cycle involves multiple steps and components: The Program Counter (PC) points to the next instruction to be fetched, which is then sent to the Memory Address Register (MAR) via the address bus . Next, the Control Unit sends signals through the control bus to retrieve the instruction, which is then stored in the Memory Data Register (MDR) via the data bus. The instruction is copied to the Current Instruction Register (CIR), decoded, and finally executed. The cycle requires synchronization among the ALU, Control Unit, Registers (PC, MAR, MDR, CIR), and the buses (data, address, control).

Increasing cache size can significantly boost CPU performance by allowing more data to be stored and accessed quickly than if it were stored in slower RAM, thus reducing the time required for memory accesses and improving execution speeds for frequently used instructions . However, larger caches consume more space and power, and beyond a certain point, their performance benefit may diminish due to increased access latency and energy consumption. Additionally, cache coherency can become more complex with larger caches, particularly in multi-core systems, potentially offsetting the performance gains .

An instruction set is a collection of commands that a CPU can execute, each associated with a unique binary code . Within an instruction set, opcodes define the operation to be performed, such as arithmetic or logic functions, while operands specify the data or memory locations involved in the operation . These components work together to allow the CPU to perform diverse tasks by decoding and executing a wide array of instructions efficiently .

Embedded systems differ from general-purpose computing systems in that they are designed for specific tasks within larger mechanical devices, whereas general-purpose systems like laptops can perform a wide range of functions . Advantages of embedded systems include low power consumption, small size, low manufacturing cost, and real-time operation capability . However, they have disadvantages such as difficulty in upgrading, limited troubleshooting capability requiring specialized knowledge, vulnerability to hacking, and often being non-repairable, leading to disposal rather than repair .

You might also like