Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Chapter 1

Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

Chapter 1
Von Neumann Architecture and Basic Gates
Objectives:
At the end of the lesson, the students should be able to:
• Evaluate the Von Neumann Architecture, and
• Identify the importance of basic logics and its applications.

What is a 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.
This architecture was first proposed by John von Neumann, a Hungarian-American mathematician
and physicist, in the mid-20th century.
Before the invention of Von Neumann Architecture, computers followed other designs, such
as the Harvard Architecture, where memory and processing units were separated. The
development of Von Neumann Architecture enabled a more efficient way to store and execute
instructions, which significantly improved the overall performance of computers.
The core concept of this architecture is that it treats both instructions and data uniformly.
This means that the same memory and processing resources are used to store and manipulate
both program instructions and the data being processed. This design greatly simplifies the
structure and operations of a computer, making it easier to understand and implement.

Key Components of Von Neumann Architecture


There are four main components within the Von Neumann Architecture. These components
work together to enable processing, storage, and communication within the computer system. They
are:
1. Central Processing Unit (CPU): The part of a computer that carries out instructions and
performs arithmetic, logical, and control operations.
2. Memory: A place where the computer stores and retrieves data and instructions. Memory is
divided into two types: primary memory, such as Random Access Memory (RAM), and
secondary memory, like hard disk drives and solid-state drives.
3. Input-Output (I/O) devices: Components responsible for interfacing the computer with the
external world. Examples of I/O devices include keyboards, mice, printers, and monitors.
4. System Bus: A communication pathway that connects the CPU, memory, and I/O devices,
enabling data and control signals to flow between these components.

1|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

The Von Neuman Architecture

https://www.studysmarter.co.uk/

Von Neumann Architecture Diagram Explanation


To better understand Von Neumann Architecture, it's important to examine a diagram
representing its layout. Here's an explanation of each of the components as they relate to the
architecture:
The CPU is responsible for executing instructions and performing arithmetic and logical
operations. It is subdivided into the Arithmetic Logic Unit (ALU) and Control Unit (CU). The ALU is
responsible for arithmetic and logical computations, while the CU coordinates the activities of the
CPU, memory, and I/O devices in accordance with the program instructions.
Memory in Von Neumann Architecture is a unified storage area that holds both instructions
and data. This means that the contents of memory can be interpreted as either an instruction to the
CPU or as data to be processed. The advantage of this design is that it allows for flexibility in how
programs and data are stored and manipulated.
The System Bus serves as the central communication channel among different
components. It consists of three types of buses: data bus, address bus, and control bus. The data
bus is responsible for transferring data between components, the address bus for transmitting
memory addresses, and the control bus for coordinating the activities of various components.
Consider a simple program that calculates the sum of two numbers, 'A' and 'B'. The program
instructions and the variables 'A' and 'B' would all be stored in the memory. The CPU retrieves and
processes these instructions, and the result would be stored back into the memory, which could
then be accessed by the I/O devices for display.
Finally, the I/O devices function as the bridge between the computer and the outside world.
They take input from users and provide output for them to interact with. These devices are
connected to the rest of the system through the System Bus, enabling the exchange of data and
control signals between them and other components.

2|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

Features of Von Neumann Architecture


The Von Neumann Architecture is characterized by its simplicity and unified approach to
handling instructions and data. This design principle has a significant influence on the overall
structure and operation of the computer system. Key features of the architecture include:
• Unified memory structure: Both instructions and data are stored together in the
same memory.
• Sequential instruction processing: Program instructions are executed one after
another in a linear sequence.
• Shared system bus: Components are interconnected through a central
communication pathway, allowing for efficient communication and coordination.
• Modularity: The architecture is suitable for a wide range of computer systems, from
simple microcontrollers to complex supercomputers, by scaling memory and
processing capabilities.

Advantages and limitations of Von Neumann Architecture


Von Neumann Architecture has several advantages and limitations in comparison to other
computer architectures. These can largely be attributed to its design principles and the way it
handles instructions and data.

Advantages of Von Neumann Architecture include:


• Design simplicity: The unified memory structure and single system bus make the
architecture easy to understand, design, and implement. This simplicity has contributed to
its widespread adoption in the computer industry.
• Efficient resource usage: The architecture allows for better utilization of memory
resources, as instructions and data can be stored in the same memory locations, reducing
wasted memory space.
• Scalability: This architecture can adapt to various hardware configurations, which enables
it to support computers of varying levels of complexity and capabilities.
• Compatibility: The modular nature of Von Neumann Architecture makes it easy to develop
software that is compatible across different computer systems, simplifying software design
and development.

Von Neumann bottleneck/disadvantages:


The single system bus can be a performance bottleneck, as it restricts the speed at which
data and instructions can be transferred between components. This limitation can lead to slower
overall processing performance when dealing with large amounts of data or complex tasks.
• Sequential instruction processing: The linear execution of program instructions can limit
parallelism and reduce the potential for performance improvement through parallel
processing techniques, such as those used in modern multi-core processors.

3|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

• Increased power consumption: As components are continuously working together, the


demand for power increases, resulting in higher energy consumption and potential heat
dissipation issues.

Role of the memory and input/output devices


In Von Neumann Architecture, memory and input/output devices play critical roles in
ensuring the efficient flow of data and instructions throughout the computer system.
Understanding their specific functions can help illustrate the overall operation of the architecture.

The memory component in Von Neumann Architecture consists of primary and secondary
memory:
• Primary memory (RAM): This is volatile memory that stores program instructions, data, and
intermediate results during the execution of a program. It allows for rapid access by the CPU
and is essential for the normal operation of a computer.
• Secondary memory: This refers to non-volatile storage devices such as hard disk drives
and solid-state drives, which store data and instructions even when the computer is
powered off. These storage devices provide long-term storage for programs and files.

The unified memory design in Von Neumann Architecture offers several advantages, such
as improved memory efficiency, greater flexibility in how programs and data are stored, and the
ability to dynamically allocate memory as needed. However, it also contributes to the Von
Neumann bottleneck, as a single system bus can limit the speed at which data and instructions are
transferred between components.
Input/output devices serve as the primary means of communication between the computer
and its users. Common examples include:
• Input devices: Keyboards, mice, touchscreens, scanners, and microphones all provide
user input to the computer system.
• Output devices: Monitors, speakers, and printers display the results of computations and
enable users to visualize and interpret the information.

Common applications of Von Neumann Architecture


Von Neumann Architecture has been widely adopted in various computer systems and
applications due to its simplicity, flexibility, and compatibility. Some common applications include:

• Personal computers (PCs) and laptops: The majority of modern PCs and laptops use the
Von Neumann Architecture for their central processing and memory management. This
architecture is well-suited for general-purpose computing, with its modular design and
unified memory structure allowing for efficient resource utilization and easy software
development.
• Microcontrollers: These small computers are embedded in a wide range of electronic
devices, such as home appliances, automotive systems, and industrial automation

4|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

equipment. The simplicity and scalability of the Von Neumann Architecture make it ideal for
microcontroller implementation, as it can be easily adapted to fit the specific requirements
of each application.
• Embedded systems: Similar to microcontrollers, embedded systems are computer
systems designed for specific tasks and are often integrated into larger devices or systems.
Such systems typically have constrained resources and require efficient use of memory and
processing capabilities, which is facilitated by the Von Neumann Architecture.
• Supercomputers and high-performance computing clusters: While the bottleneck
issues associated with Von Neumann Architecture can limit parallelism and performance in
some cases, many supercomputers and high-performance computing clusters still employ
the principles of this architecture in their design. Modifications, such as the use of multiple
processors and advanced memory management strategies, help to mitigate the inherent
limitations and provide the necessary performance for computationally intensive tasks.

Real-world examples of Von Neumann Architecture systems


Over the years, numerous computer systems have been built using the Von Neumann
Architecture. Some notable real-world examples include:
• ENIAC (Electronic Numerical Integrator and Computer): ENIAC, considered one of the
first general-purpose electronic computers, was developed in the 1940s to perform
complex arithmetic and solve mathematical problems. Although it was not based on the
Von Neumann Architecture initially, it was later modified to incorporate the principles of this
architecture, laying the foundation for modern computer systems.
• EDVAC (Electronic Discrete Variable Automatic Computer): Built in the late 1940s,
EDVAC was one of the earliest computers to fully implement the Von Neumann
Architecture. Its design was significantly influenced by John von Neumann's paper "First
Draft of a Report on the EDVAC," which first introduced the concepts of the stored-program
computer and the Von Neumann Architecture.
• IBM 701: Introduced in 1952, the IBM 701 was IBM's first commercially available scientific
computer. It was designed based on the Von Neumann Architecture, featuring a single
memory storage for both instructions and data, as well as a single system bus for
communication between components.
• Intel 4004: Developed in 1971, the Intel 4004 was the first commercially available
microprocessor to implement the Von Neumann Architecture. It served as the foundation
for the modern era of personal computing and established the architecture as the de facto
standard for computer system design.
• Modern computer systems: Today, most personal computers, laptops, smartphones, and
a wide range of embedded systems use the Von Neumann Architecture. For instance,
devices based on Intel and AMD processors, as well as ARM-based devices such as those
running on Apple's A-series chips, all follow the principles of the Von Neumann
Architecture.

5|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

Evolution of Von Neumann Architecture over time


The Von Neumann Architecture has undergone significant transformations since its
conception in the mid-20th century. As computer hardware and software technologies advanced,
modifications to the architecture have been made to accommodate new capabilities, improve
performance, and address limitations. Here are some notable milestones in the evolution of Von
Neumann Architecture:

• Introduction of pipelining: Pipelining is a technique that allows multiple instructions to be


executed simultaneously at different stages of processing. By taking advantage of
parallelism, pipelining enhances the overall throughput of a computer system without
increasing the operating frequency of the processor.
• Adoption of caches: To overcome the Von Neumann bottleneck and improve memory
access speed, cache memory was introduced. Cache memory is a small, high-speed
memory that temporarily stores frequently accessed data and instructions, reducing the
time spent on accessing the main memory. This enhances the overall performance of
computer systems built on the Von Neumann Architecture.
• Development of multiprocessor systems: Multiprocessor systems use multiple
interconnected CPU cores or processors, enabling parallel execution of tasks. These
systems overcome the limitations of sequential instruction processing in Von Neumann
Architecture and enhance overall performance, particularly for computationally intensive
tasks.
• Integration of input/output controllers: To further address the performance limitations
caused by the single system bus, input-output controllers (I/O controllers) have been
integrated into the Von Neumann Architecture in modern systems. I/O controllers
streamline communication between I/O devices and other components, relieving the
bottleneck in the system bus and improving the system's overall performance.

The future of Von Neumann Architecture


As technology advances and the demand for more powerful and energy-efficient computing
systems grows, the future of Von Neumann Architecture is subject to adaptation and potential
replacement by alternative architectures. Several directions are being explored, including:
• Non-Von Neumann Architectures: Continued research and development into alternative
computer architectures, such as Dataflow Architectures and Neural Network Architectures,
aim to address the limitations of Von Neumann Architecture by offering novel approaches
to memory management, parallelism, and data processing.
• Quantum Computing: Quantum computing represents a paradigm shift in computing
technology, harnessing the principles of quantum mechanics to process information in a
fundamentally different way compared to classical computing. Quantum computers have
the potential to solve complex problems that are currently intractable for classical
computers, ushering in a new era of computational capabilities.

6|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

• Further advancements in parallel processing: Ongoing research into parallel processing


aims to improve the parallel execution of tasks beyond the current limitations of pipelining
and multiprocessor systems. These advancements may include new parallel computing
models, programming paradigms, and hardware architectures, allowing computer systems
to efficiently harness parallelism and overcome performance bottlenecks.
• Memory-driven computing: Memory-driven computing is an emerging computing
paradigm that seeks to bridge the gap between memory and processing by rethinking the
traditional hierarchy of memory, storage, and processing units. By reducing data movement
and enabling more efficient access to data, memory-driven computing aims to overcome
the performance limitations of traditional Von Neumann Architecture systems.

The System Bus


The primary pathway between the CPU and memory. The speed is derived from the number
of parallel channels (16 bit, 32 bit, etc.) and clock speed. Also known as a "front side bus," it is
faster than the peripheral bus (PCI, ISA, etc.), but slower than the backside bus.

The Data Bus


In computer architecture, a bus is a subsystem that transfers data or power between
computer components inside a computer or between computers. Unlike a point-to-point
connection, a bus can logically connect several peripherals over the same set of wires.
Early computer buses were literally parallel electrical buses with multiple connections, but the
term is now used for any physical arrangement that provides the same logical functionality as a
parallel electrical bus. Modern computer buses can use both parallel and bit-serial connections,
and can be wired in either a multidrop (electrical parallel) or daisy chain topology, or connected by
switched hubs, as in the case of USB.
On typical 80x86 systems, the data bus contains eight, 16, 32, or 64 lines.

80x86 Processor Data Sizes


Processor Data Bus Size
8088 8
80188 8
8086 16
80186 16
80286 16
80386sx 16
80386dx 32
80486 32
80586 class/ Pentium (Pro) 64

7|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

The Address Bus


A collection of wires connecting the CPU with main memory that is used to identify
particular locations (addresses) in main memory. The width of the address bus (that is, the number
of wires) determines how many unique memory locations can be addressed. Modern PCs and
Macintoshes have as many as 36 address lines, which enables them theoretically to access 64 GB
(gigabytes) of main memory. However, the actually amount of memory that can be accessed is
usually much less than this theoretical limit due to chipset and motherboard limitations.

80x86 Family Address Bus Sizes


Processor Address Bus Size Max Addressable Memory
8088 20 1,048,576 One Megabyte
8086 20 1,048,576 One Megabyte
80188 20 1,048,576 One Megabyte
80186 20 1,048,576 One Megabyte
80286 24 16,777,216 Sixteen Megabytes
8038sx 24 16,777,216 Sixteen Megabytes
8038dx 32 4,294,976,296 Four Gigabytes
80486 32 4,294,976,296 Four Gigabytes
80586/ Pentium (Pro) 32 4,294,976,296 Four Gigabytes

Logic Gates
Digital electronic circuits operate with voltages of two logic levels; namely Logic Low and
Logic High. The range of voltages corresponding to Logic Low is represented with ‘0’. Similarly, the
range of voltages corresponding to Logic High is represented with ‘1’.
The basic digital electronic circuit that has one or more inputs and single output is known as
Logic gate. Hence, the Logic gates are the building blocks of any digital system. We can classify
these Logic gates into the following three categories.
• Basic gates
• Universal gates
• Special gates

Basic Gates
We can implement Boolean functions by using basic gates. The basic gates are AND, OR & NOT
gates.

AND gate
An AND gate is a digital circuit that has two or more inputs and produces an output, which is
the logical AND of all those inputs. It is optional to represent the Logical AND with the symbol ‘.’.

8|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

The following table shows the truth table of 2-input AND gate.
A B Y = A.B
0 0 0
0 1 0
1 0 0
1 1 1
Here A, B are the inputs and Y is the output of two input AND gate. If both inputs are ‘1’, then
only the output, Y is ‘1’. For remaining combinations of inputs, the output, Y is ‘0’.

The following figure shows the symbol of an AND gate, which is having two inputs A, B and one
output, Y.

This AND gate produces an output Y, which is the logical AND of two inputs A, B. Similarly, if
there are ‘n’ inputs, then the AND gate produces an output, which is the logical AND of all those
inputs. That means, the output of AND gate will be ‘1’, when all the inputs are ‘1’.

OR gate
An OR gate is a digital circuit that has two or more inputs and produces an output, which is
the logical OR of all those inputs. This logical OR is represented with the symbol ‘+’.

The following table shows the truth table of 2-input OR gate.

A B Y=A+B
0 0 0
0 1 1
1 0 1
1 1 1
Here A, B are the inputs and Y is the output of two input OR gate. If both inputs are ‘0’, then
only the output, Y is ‘0’. For remaining combinations of inputs, the output, Y is ‘1’.

The following figure shows the symbol of an OR gate, which is having two inputs A, B and one
output, Y.

9|L A BO RATO RY M A N UA L ARNOLD M. NARTE


WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

This OR gate produces an output Y, which is the logical OR of two inputs A, B. Similarly, if
there are ‘n’ inputs, then the OR gate produces an output, which is the logical OR of all those inputs.
That means, the output of an OR gate will be ‘1’, when at least one of those inputs is ‘1’.

NOT gate
A NOT gate is a digital circuit that has single input and single output. The output of NOT gate
is the logical inversion of input. Hence, the NOT gate is also called as inverter.

The following table shows the truth table of NOT gate.

A Y = A’
0 1
1 0
Here A and Y are the input and output of NOT gate respectively. If the input, A is ‘0’, then the
output, Y is ‘1’. Similarly, if the input, A is ‘1’, then the output, Y is ‘0’.

The following figure shows the symbol of NOT gate, which is having one input, A and one output, Y.

This NOT gate produces an output Y, which is the complement of input, A.

Universal gates
NAND & NOR gates are called as universal gates. Because we can implement any Boolean
function, which is in sum of products form by using NAND gates alone. Similarly, we can implement
any Boolean function, which is in product of sums form by using NOR gates alone.

NAND gate
NAND gate is a digital circuit that has two or more inputs and produces an output, which is
the inversion of logical AND of all those inputs.

The following table shows the truth table of 2-input NAND gate.

A B Y = A.B

0 0 1
0 1 1
1 0 1
1 1 0

10 | L A B O R A T O R Y M A N U A L ARNOLD M. NARTE
WESTERN INSTITUTE OF TECHNOLOGY ITPD1 – PLATFORM TECHNOLOGIES 1

Here A, B are the inputs and Y is the output of two input NAND gate. When both inputs are ‘1’, the
output, Y is ‘0’. If at least one of the input is zero, then the output, Y is ‘1’. This is just opposite to that
of two input AND gate operation.

The following image shows the symbol of NAND gate, which is having two inputs A, B and one
output, Y.

NAND gate operation is same as that of AND gate followed by an inverter. That’s why the
NAND gate symbol is represented like that.

NOR gate
NOR gate is a digital circuit that has two or more inputs and produces an output, which is
the inversion of logical OR of all those inputs.

The following table shows the truth table of 2-input NOR gate

A B Y = A+B
0 0 1
0 1 0
1 0 0
1 1 0
Here A, B are the inputs and Y is the output. If both inputs are ‘0’, then the output, Y is ‘1’. If
at least one of the input is ‘1’, then the output, Y is ‘0’. This is just opposite to that of two input OR
gate operation.

The following figure shows the symbol of NOR gate, which is having two inputs A, B and one output,
Y.

NOR gate operation is same as that of OR gate followed by an inverter. That’s why the NOR
gate symbol is represented like that.

Special Gates
Ex-OR & Ex-NOR gates are called as special gates. Because, these two gates are special
cases of OR & NOR gates.

11 | L A B O R A T O R Y M A N U A L ARNOLD M. NARTE

You might also like