SlideShare a Scribd company logo
1 of 24
The von Neumann architecture
The von Neumann architecture
Consist of:
1. Main memory
2. Central Processing Unit (CPU) or processor or
core
3. Interconnection between the memory and
the CPU.
CPU
CPU is divided into:
• Control Unit (CU):
– Which instruction in a program should be executed next
• Arithmetic and Logic Unit (ALU):
– Executes the instructions
The von Neumann architecture
Main Memory
• A collection of locations for storing
instructions and data.
• Each location has unique address used to
access the location
Registers
• Registers are very fast storage, reside inside
the CPU.
Some registers have special takes, like
Program counter , which is used to stores
address of the next instruction to be executed.
Data Transfer
• Data transferred between main memory and
CPU through bus wire.
• At the first CPU and main memory are at the
same speed.
Bottleneck problem
• In 2010 CPUs are capable of executing
instructions more than one hundred times
faster than they can fetch items from main
memory.
• In order to address the von Neumann
bottleneck (improve CPU performance), many
modifications have been done in the basic von
Neumann architecture.
MODIFICATIONS TO THE VON
NEUMANN MODEL
• Caching is
methods of
bottleneck.
one of the most widely
addressing the von
used
Neumann
• Caches make it possible for the CPU to quickly
access instructions and data that are in main
memory.
Cache levels
• L1: very fast, very small (inside CPU)
• L2: slower and lager than L1
• L3: slowest cache and largest one
• Cache hit
• Cache miss
Virtual memory
• If we run a very large program or a program
that accesses very large data sets, all of the
instructions and data may not fit into main
memory.
• Virtual memory was developed so that main
memory can function as a cache for secondary
storage.
• Keeping in main memory only the active parts of
the many running programs; those parts that are
idle are kept in a block of secondary storage
called swap space.
• Like CPU caches, virtual memory operates on
blocks of data and instructions. These blocks are
commonly called pages, and since secondary
storage access can be hundreds of thousands of
times slower than main memory access, pages
are relatively large (page size ranges from 4 to 16
KB).
Instruction-level parallelism (ILP)
There are two main approaches to ILP:
1. Pipelining: functional units are arranged in
stages
2. Multiple issue: multiple instructions can be
simultaneously initiated.
• Both approaches are used in virtually all
modern CPUs.
Pipelining
• The principle of
pipelining is similar
to a factory
assembly line.
Image from http://robohub.org/wp-content/uploads/2014/04
Pipeline example
• To add the floating point numbers 9.87 × 10 4
and
steps:
6.54 × 10 3 , we can use the following
if each of the operations takes one nanosecond (10 −9 seconds), the addition
operation will take seven nanoseconds
• if we execute the code:
• the for loop will take something like 7000
nanoseconds.
• As an alternative, suppose we divide our floating point
adder into seven separate pieces of hardware or functional
units.
• The first unit will fetch two operands, the second will
compare exponents, and so on.
• Also suppose that the output of one functional unit is the
input to the next.
• Then a single floating point addition will still take seven
nanoseconds. However, when we execute the for loop, we
can fetch x[1] and y[1] while we’re comparing the
exponents of x[0] and y[0]. More generally, it’s possible for
us to simultaneously execute seven different stages in
seven different additions.
Pipelined Addition. Numbers in the Table Are Subscripts of
Operands/Results
Pipeline performance
• One floating point addition still takes
7 nanoseconds.
• But 1000 floating point additions
now takes 1006 nanoseconds (how?)
Multiple issue
units and connecting them in sequence.
• Multiple issue processors replicate functional
units and try to simultaneously execute
different instructions in a program.
• Pipelines improve performance by taking
individual pieces of hardware or functional
• For example, if we have two complete floating point
adders, we can approximately halve the time it takes to
execute the loop
for (i = 0; i < 1000; i++)
z[i] = x[i] + y[i];
• While the first adder is computing z[0], the second can
compute z[1]; while the first is computing z[2], the
second can compute z[3]; and so on.
• Note: in order to make use of multiple issue, the
system must find instructions that can be executed
simultaneously
References
• An Introduction to Parallel Programming,
Peter Pacheco, 2011, Elsevier
• Parallel Programming (in Arabic),
Abdelrahman Osman, 2016,
https://www.researchgate.net/publication/30
7955739_Parallel_Programming

More Related Content

Similar to Von Neumann Architecture microcontroller.pptx

Module2 MultiThreads.ppt
Module2 MultiThreads.pptModule2 MultiThreads.ppt
Module2 MultiThreads.ppt
shreesha16
 
load-balancing-method-for-embedded-rt-system-20120711-0940
load-balancing-method-for-embedded-rt-system-20120711-0940load-balancing-method-for-embedded-rt-system-20120711-0940
load-balancing-method-for-embedded-rt-system-20120711-0940
Samsung Electronics
 
Digital signal processor architecture
Digital signal processor architectureDigital signal processor architecture
Digital signal processor architecture
komal mistry
 
finaldraft-intelcorei5processorsarchitecture-130207093535-phpapp01.pdf
finaldraft-intelcorei5processorsarchitecture-130207093535-phpapp01.pdffinaldraft-intelcorei5processorsarchitecture-130207093535-phpapp01.pdf
finaldraft-intelcorei5processorsarchitecture-130207093535-phpapp01.pdf
NazarAhmadAlkhidir
 
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptxehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
EliasPetros
 
4.1 Introduction 145• In this section, we first take a gander at a.pdf
4.1 Introduction 145• In this section, we first take a gander at a.pdf4.1 Introduction 145• In this section, we first take a gander at a.pdf
4.1 Introduction 145• In this section, we first take a gander at a.pdf
arpowersarps
 

Similar to Von Neumann Architecture microcontroller.pptx (20)

Module2 MultiThreads.ppt
Module2 MultiThreads.pptModule2 MultiThreads.ppt
Module2 MultiThreads.ppt
 
Parallel Computing-Part-1.pptx
Parallel Computing-Part-1.pptxParallel Computing-Part-1.pptx
Parallel Computing-Part-1.pptx
 
load-balancing-method-for-embedded-rt-system-20120711-0940
load-balancing-method-for-embedded-rt-system-20120711-0940load-balancing-method-for-embedded-rt-system-20120711-0940
load-balancing-method-for-embedded-rt-system-20120711-0940
 
CSA unit5.pptx
CSA unit5.pptxCSA unit5.pptx
CSA unit5.pptx
 
Ch4 memory management
Ch4 memory managementCh4 memory management
Ch4 memory management
 
Nbvtalkatjntuvizianagaram
NbvtalkatjntuvizianagaramNbvtalkatjntuvizianagaram
Nbvtalkatjntuvizianagaram
 
Digital signal processor architecture
Digital signal processor architectureDigital signal processor architecture
Digital signal processor architecture
 
Uni Processor Architecture
Uni Processor ArchitectureUni Processor Architecture
Uni Processor Architecture
 
Ios103 ios102 iv-operating-system-memory-management_wk4
Ios103 ios102 iv-operating-system-memory-management_wk4Ios103 ios102 iv-operating-system-memory-management_wk4
Ios103 ios102 iv-operating-system-memory-management_wk4
 
finaldraft-intelcorei5processorsarchitecture-130207093535-phpapp01.pdf
finaldraft-intelcorei5processorsarchitecture-130207093535-phpapp01.pdffinaldraft-intelcorei5processorsarchitecture-130207093535-phpapp01.pdf
finaldraft-intelcorei5processorsarchitecture-130207093535-phpapp01.pdf
 
UNIT 2.pptx
UNIT 2.pptxUNIT 2.pptx
UNIT 2.pptx
 
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptxehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
 
4.1 Introduction 145• In this section, we first take a gander at a.pdf
4.1 Introduction 145• In this section, we first take a gander at a.pdf4.1 Introduction 145• In this section, we first take a gander at a.pdf
4.1 Introduction 145• In this section, we first take a gander at a.pdf
 
unit 4.pptx
unit 4.pptxunit 4.pptx
unit 4.pptx
 
unit 4.pptx
unit 4.pptxunit 4.pptx
unit 4.pptx
 
Parallelism
ParallelismParallelism
Parallelism
 
Pipelining slides
Pipelining slides Pipelining slides
Pipelining slides
 
Coa.ppt2
Coa.ppt2Coa.ppt2
Coa.ppt2
 
Parallel Algorithms Advantages and Disadvantages
Parallel Algorithms Advantages and DisadvantagesParallel Algorithms Advantages and Disadvantages
Parallel Algorithms Advantages and Disadvantages
 
Unit 1 Computer organization and Instructions
Unit 1 Computer organization and InstructionsUnit 1 Computer organization and Instructions
Unit 1 Computer organization and Instructions
 

Recently uploaded

Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
dannyijwest
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
jaanualu31
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 

Recently uploaded (20)

Introduction to Geographic Information Systems
Introduction to Geographic Information SystemsIntroduction to Geographic Information Systems
Introduction to Geographic Information Systems
 
fitting shop and tools used in fitting shop .ppt
fitting shop and tools used in fitting shop .pptfitting shop and tools used in fitting shop .ppt
fitting shop and tools used in fitting shop .ppt
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
 
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
 
8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptx
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Adsorption (mass transfer operations 2) ppt
Adsorption (mass transfer operations 2) pptAdsorption (mass transfer operations 2) ppt
Adsorption (mass transfer operations 2) ppt
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth Reinforcement
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)
 
Computer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesComputer Graphics Introduction To Curves
Computer Graphics Introduction To Curves
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 

Von Neumann Architecture microcontroller.pptx

  • 1.
  • 2.
  • 3. The von Neumann architecture
  • 4. The von Neumann architecture Consist of: 1. Main memory 2. Central Processing Unit (CPU) or processor or core 3. Interconnection between the memory and the CPU.
  • 5. CPU CPU is divided into: • Control Unit (CU): – Which instruction in a program should be executed next • Arithmetic and Logic Unit (ALU): – Executes the instructions
  • 6. The von Neumann architecture
  • 7. Main Memory • A collection of locations for storing instructions and data. • Each location has unique address used to access the location
  • 8. Registers • Registers are very fast storage, reside inside the CPU. Some registers have special takes, like Program counter , which is used to stores address of the next instruction to be executed.
  • 9. Data Transfer • Data transferred between main memory and CPU through bus wire. • At the first CPU and main memory are at the same speed.
  • 10. Bottleneck problem • In 2010 CPUs are capable of executing instructions more than one hundred times faster than they can fetch items from main memory. • In order to address the von Neumann bottleneck (improve CPU performance), many modifications have been done in the basic von Neumann architecture.
  • 11. MODIFICATIONS TO THE VON NEUMANN MODEL • Caching is methods of bottleneck. one of the most widely addressing the von used Neumann • Caches make it possible for the CPU to quickly access instructions and data that are in main memory.
  • 12. Cache levels • L1: very fast, very small (inside CPU) • L2: slower and lager than L1 • L3: slowest cache and largest one • Cache hit • Cache miss
  • 13. Virtual memory • If we run a very large program or a program that accesses very large data sets, all of the instructions and data may not fit into main memory. • Virtual memory was developed so that main memory can function as a cache for secondary storage.
  • 14. • Keeping in main memory only the active parts of the many running programs; those parts that are idle are kept in a block of secondary storage called swap space. • Like CPU caches, virtual memory operates on blocks of data and instructions. These blocks are commonly called pages, and since secondary storage access can be hundreds of thousands of times slower than main memory access, pages are relatively large (page size ranges from 4 to 16 KB).
  • 15. Instruction-level parallelism (ILP) There are two main approaches to ILP: 1. Pipelining: functional units are arranged in stages 2. Multiple issue: multiple instructions can be simultaneously initiated. • Both approaches are used in virtually all modern CPUs.
  • 16. Pipelining • The principle of pipelining is similar to a factory assembly line. Image from http://robohub.org/wp-content/uploads/2014/04
  • 17. Pipeline example • To add the floating point numbers 9.87 × 10 4 and steps: 6.54 × 10 3 , we can use the following if each of the operations takes one nanosecond (10 −9 seconds), the addition operation will take seven nanoseconds
  • 18. • if we execute the code: • the for loop will take something like 7000 nanoseconds.
  • 19. • As an alternative, suppose we divide our floating point adder into seven separate pieces of hardware or functional units. • The first unit will fetch two operands, the second will compare exponents, and so on. • Also suppose that the output of one functional unit is the input to the next. • Then a single floating point addition will still take seven nanoseconds. However, when we execute the for loop, we can fetch x[1] and y[1] while we’re comparing the exponents of x[0] and y[0]. More generally, it’s possible for us to simultaneously execute seven different stages in seven different additions.
  • 20. Pipelined Addition. Numbers in the Table Are Subscripts of Operands/Results
  • 21. Pipeline performance • One floating point addition still takes 7 nanoseconds. • But 1000 floating point additions now takes 1006 nanoseconds (how?)
  • 22. Multiple issue units and connecting them in sequence. • Multiple issue processors replicate functional units and try to simultaneously execute different instructions in a program. • Pipelines improve performance by taking individual pieces of hardware or functional
  • 23. • For example, if we have two complete floating point adders, we can approximately halve the time it takes to execute the loop for (i = 0; i < 1000; i++) z[i] = x[i] + y[i]; • While the first adder is computing z[0], the second can compute z[1]; while the first is computing z[2], the second can compute z[3]; and so on. • Note: in order to make use of multiple issue, the system must find instructions that can be executed simultaneously
  • 24. References • An Introduction to Parallel Programming, Peter Pacheco, 2011, Elsevier • Parallel Programming (in Arabic), Abdelrahman Osman, 2016, https://www.researchgate.net/publication/30 7955739_Parallel_Programming