invitation to computer science 6th edition
DESCRIPTION
Invitation to Computer Science 6th Edition. Chapter 5 Computer Systems Organization. Objectives. In this chapter, you will learn about: The components of a computer system The Von Neumann architecture Non-Von Neumann architectures. Introduction. Computer organization - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/1.jpg)
Invitation to Computer Science 6th Edition
Chapter 5
Computer Systems Organization
![Page 2: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/2.jpg)
Invitation to Computer Science, 6th Edition 2
Objectives
In this chapter, you will learn about:
• The components of a computer system
• The Von Neumann architecture
• Non-Von Neumann architectures
![Page 3: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/3.jpg)
Introduction
• Computer organization– Branch of computer science that studies computers
in terms of their major functional units and how they work
• Concept of abstraction – Used throughout computer science– Without it, it would be virtually impossible to study
computer design or any other large, complex system
Invitation to Computer Science, 6th Edition 33
![Page 4: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/4.jpg)
Invitation to Computer Science, 6th Edition 4
Figure 5.1 The Concept of Abstraction
![Page 5: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/5.jpg)
Invitation to Computer Science, 6th Edition 55
The Components of a Computer System
• Von Neumann architecture is based on the following three characteristics– Four major subsystems called memory, input/output,
the arithmetic/logic unit (ALU), and the control unit– The stored program concept– The sequential execution of instructions
![Page 6: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/6.jpg)
Invitation to Computer Science, 6th Edition 6
Figure 5.2 Components of the Von Neumann Architecture
![Page 7: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/7.jpg)
Invitation to Computer Science, 6th Edition 7
Memory and Cache
• Memory – Functional unit of a computer that stores and
retrieves the instructions and the data being executed
• Random access (RAM)– Access technique used by computer memory
• Read-only memory (ROM)– Information is prerecorded during manufacture
![Page 8: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/8.jpg)
Invitation to Computer Science, 6th Edition 8
Memory and Cache (continued)
• With a cell size of 8 bits:– The largest unsigned integer value that can be
stored in a single cell is 11111111 (255)
• [0 . . (2N – 1)]– Range of addresses available on a computer
• When dealing with memory:– Distinguish between an address and the contents
of that address
![Page 9: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/9.jpg)
Invitation to Computer Science, 6th Edition 9
Figure 5.3 Structure of Random Access Memory
![Page 10: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/10.jpg)
Invitation to Computer Science, 6th Edition 10
Figure 5.4 Maximum Memory Sizes
![Page 11: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/11.jpg)
Invitation to Computer Science, 6th Edition 11
Memory and Cache (continued)
• Basic memory operations – Fetching and storing
• Memory access time– Typically about 5 to 10 nsec
• Memory registers– Used to implement the fetch and store operations
• Memory Address Register (MAR) – Holds the address of the cell to be fetched or stored
![Page 12: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/12.jpg)
Invitation to Computer Science, 6th Edition 12
Memory and Cache (continued)
• Memory Data Register (MDR)– Contains data value being fetched or stored
• Two-dimensional structure– Memory organization
• Memory locations – Stored in row major order
• Selection lines– Row selection line– Column selection line
![Page 13: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/13.jpg)
Invitation to Computer Science, 6th Edition 13
Figure 5.5 Organization of Memory and the Decoding Logic
![Page 14: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/14.jpg)
Invitation to Computer Science, 6th Edition 14
Figure 5.6 Two-Dimensional Memory Address Organization
![Page 15: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/15.jpg)
Invitation to Computer Science, 6th Edition 15
Memory and Cache (continued)
• Fetch/store controller– Determines whether we put contents of a memory
cell into the MDR or put the contents of the MDR into a memory cell
• Cache memory– Principle of Locality: when the computer uses
something, it will probably use it again very soon, and it will probably use the “neighbors” of this item very soon
![Page 16: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/16.jpg)
Invitation to Computer Science, 6th Edition 16
Figure 5.7 Overall RAM Organization
![Page 17: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/17.jpg)
Invitation to Computer Science, 6th Edition 17
Input/Output and Mass Storage
• Input/output (I/O) units – Devices that allow a computer system to
communicate and interact with the outside world as well as store information
• Volatile memory– Information disappears when power is turned off
• Nonvolatile storage– Role of mass storage devices such as disks and
tapes
![Page 18: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/18.jpg)
Invitation to Computer Science, 6th Edition 18
Input/Output and Mass Storage (continued)
• Input/output devices come in two basic types– Those that represent information in human-readable
form for human consumption– Those that store information in machine-readable
form for access by a computer system
• Disk – Stores information in units called sectors
• Fixed number of sectors are placed in a concentric circle on the surface of the disk, called a track
![Page 19: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/19.jpg)
Invitation to Computer Science, 6th Edition 19
Figure 5.8 Overall Organization of a Typical Disk
![Page 20: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/20.jpg)
Invitation to Computer Science, 6th Edition 20
Input/Output and Mass Storage (continued)
• Seek time– Time needed to position the read/write head over the
correct track
• Latency – Time for the beginning of the desired sector to rotate
under the read/write head
• Transfer time – Time for the entire sector to pass under the
read/write head and have its contents read into or written from memory
![Page 21: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/21.jpg)
Invitation to Computer Science, 6th Edition 21
Input/Output and Mass Storage (continued)
• Sequential access storage device (SASD) – Does not require that all units of data be identifiable
via unique addresses
• Direct access storage devices– Much faster at accessing individual pieces of
information
• I/O controller– Has small amount of memory (I/O buffer)– I/O control and logic: ability to handle mechanical
functions of the I/O device
![Page 22: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/22.jpg)
Invitation to Computer Science, 6th Edition 22
Figure 5.9 Organization of an I/O Controller
![Page 23: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/23.jpg)
Invitation to Computer Science, 6th Edition 23
The Arithmetic/Logic Unit
• Subsystem that performs addition, subtraction, and comparison for equality
• Components– Registers, interconnections between components,
and the ALU circuitry
• Register – Storage cell that holds the operands of an arithmetic
operation and holds its result
• Bus– Path for electrical signals
![Page 24: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/24.jpg)
Invitation to Computer Science, 6th Edition 24
Figure 5.10 Three-Register ALU Organization
![Page 25: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/25.jpg)
Invitation to Computer Science, 6th Edition 25
Figure 5.11 Multiregister ALU Organization
![Page 26: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/26.jpg)
Invitation to Computer Science, 6th Edition 26
Figure 5.12 Using a Multiplexor Circuit to Select the Proper ALU Result
![Page 27: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/27.jpg)
Invitation to Computer Science, 6th Edition 27
Figure 5.13 Overall ALU Organization
![Page 28: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/28.jpg)
Invitation to Computer Science, 6th Edition 28
The Control Unit
• Stored program– Sequence of machine language instructions stored
as binary values in memory
• Control unit– Tasks: fetch, decode, and execute
![Page 29: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/29.jpg)
Invitation to Computer Science, 6th Edition 29
Machine Language Instructions
• Instructions that can be decoded and executed by the control unit of a computer
• Operation code field – Unique unsigned integer code assigned to each
machine language operation recognized by the hardware
• Address field(s) – Memory addresses of values on which the operation
will work
![Page 30: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/30.jpg)
Invitation to Computer Science, 6th Edition 30
Figure 5.14 Typical Machine Language Instruction Format
![Page 31: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/31.jpg)
Invitation to Computer Science, 6th Edition 31
Machine Language Instructions (continued)
• Instruction set– Set of all operations that can be executed by a
processor
• Reduced instruction set computers or RISC machines– Include as little as 30–50 instructions
• Complex instruction set computers (CISC machines)– Include 300–500 very powerful instructions
![Page 32: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/32.jpg)
Invitation to Computer Science, 6th Edition 32
Machine Language Instructions (continued)
• Classes of machine language instructions– Data transfer– Arithmetic– Compare– Branch
![Page 33: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/33.jpg)
Invitation to Computer Science, 6th Edition 33
Machine Language Instructions (continued)
• Data transfer operations– Move values to and from memory and registers– Instruction Examples: Load X: Load register R with the contents of memory cell X
STORE X: Store the contents of register R into memory cell X
MOVE X Y: Copy the contents of memory cell X into memory cell Y
![Page 34: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/34.jpg)
Invitation to Computer Science, 6th Edition 34
Machine Language Instructions (continued)
• Arithmetic/logic operations– Move values to and from memory and registers– Instruction Examples:
ADD X, Y, Z (Three – address instruction)
CON(Z) = CON(X) + CON(Y)
ADD X, Y (Two – address instruction)
CON(Y) = CON(X) + CON(Y)
ADD X (One – address instruction)
R = CON(X) + R
![Page 35: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/35.jpg)
Invitation to Computer Science, 6th Edition 35
Machine Language Instructions (continued)
• Compare operations– Compare two values and set an indicator on the basis of
the results of the compare; set status register (or we call condition register, special register) bits
– Instruction Examples: COMPARE X, Y
CON(X) > CON(Y) set GT = 1, EQ = 0, LT = 0
CON(X) = CON(Y) set GT = 0, EQ = 1, LT = 0
CON(X) < CON(Y) set GT = 0, EQ = 0, LT = 1
![Page 36: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/36.jpg)
Invitation to Computer Science, 6th Edition 36
Machine Language Instructions (continued)
• Branch operations– Jump to a new memory address to continue processing
– Instruction Examples: JUMP X (unconditionally)
JUMPGT X / JUMPEQ X / JUMPLT X
JUMPGE X / JUMP LE X
HALT
![Page 37: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/37.jpg)
Invitation to Computer Science, 6th Edition 37
Control Unit Registers and Circuits
• Program counter (PC)– Holds the address of the next instruction to be
executed
• Instruction register (IR)– Holds a copy of the instruction fetched from memory
• Instruction decoder– Determines what instruction is in the IR
![Page 38: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/38.jpg)
Invitation to Computer Science, 6th Edition 38
Figure 5.15 Examples of Simple Machine Language Instruction Sequences
![Page 39: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/39.jpg)
Invitation to Computer Science, 6th Edition 39
Figure 5.16 Organization of the Control Unit Registers and Circuits
![Page 40: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/40.jpg)
Invitation to Computer Science, 6th Edition 40
Figure 5.17 The Instruction Decoder
![Page 41: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/41.jpg)
Invitation to Computer Science, 6th Edition 41
Putting All the Pieces Together–the Von Neumann Architecture
• Program execution phases– Fetch, decode, and execute
• Von Neumann cycle– The repetition of the fetch/decode/execute phase
![Page 42: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/42.jpg)
Invitation to Computer Science, 6th Edition 42
Figure 5.18 The Organization of a Von Neumann Computer
![Page 43: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/43.jpg)
Invitation to Computer Science, 6th Edition 43
Figure 5.19 Instruction Set for Our Von Neumann Machine
![Page 44: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/44.jpg)
Invitation to Computer Science, 6th Edition 44
Non-Von Neumann Architectures
• Problems that computers are being asked to solve – Have grown significantly in size and complexity
• Important limit on increased processor speed – Inability to place gates close together on a chip
• Slowing down– Rate of increase in performance of newer machines
• Von Neumann bottleneck– Inability of the sequential one-instruction-at-a-time
Von Neumann model to handle today’s large-scale problems
![Page 45: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/45.jpg)
Invitation to Computer Science, 6th Edition 45
Figure 5.20 Graph of Processor Speeds, 1945 to the Present
![Page 46: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/46.jpg)
Non-Von Neumann Architectures (continued)
• Parallel processing– Building computers not with one processor, but with
tens, hundreds, or even thousands
• SIMD parallel processing– ALU is replicated many times– Each ALU has its own local memory where it may
keep private data
• MIMD parallel processing– All processors are replicated– Every processor is capable of executing its own
separate programInvitation to Computer Science, 6th Edition 46
![Page 47: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/47.jpg)
Invitation to Computer Science, 6th Edition 47
Figure 5.21 A SIMD Parallel Processing System
![Page 48: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/48.jpg)
Invitation to Computer Science, 6th Edition 48
Non-Von Neumann Architectures (continued)
• Scalability – It is possible to match the number of processors to
the size of the problem• Massively parallel MIMD machines
– Have achieved solutions to large problems thousands of times faster than is possible using a single processor
• Grid computing – Enables researchers to easily and transparently
access computer facilities without regard for their location
![Page 49: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/49.jpg)
Invitation to Computer Science, 6th Edition 49
Summary of Level 2
• Chapter 4 – Looked at the basic building blocks of computers:
binary codes, transistors, gates, and circuits
• Chapter 5– Examined the standard model for computer design,
called the Von Neumann architecture
• System software– Intermediary between the user and the hardware
components of the Von Neumann machine
![Page 50: Invitation to Computer Science 6th Edition](https://reader035.vdocument.in/reader035/viewer/2022081501/56813c4e550346895da5cc01/html5/thumbnails/50.jpg)
Summary
• Computer organization – Examines different subsystems of a computer:
memory, input/output, arithmetic/logic unit, and control unit
• Machine language – Gives codes for each primitive instruction the
computer can perform and its arguments
• Von Neumann machine– Sequential execution of a stored program
• Parallel computers– Improve speed by doing multiple tasks at one time
Invitation to Computer Science, 6th Edition 50