chapter 5 computing components. the (meta) big idea cool, idea but maybe too big data – must be...
TRANSCRIPT
The (META) BIG IDEACool, idea but maybe too big
• DATA– Must be stored somewhere in a storage device
• PROCESSING– Data must be moved around and manipulated
5-2
Chapter Goals• Components of a von Neumann machine
• Von Neumann fetch-decode-execute cycle– What does “running a program” mean, anyway?
• Limitations of von Neumann architecture
5-3
Chapter Goals• Memory “Pyramid”– Memory has characteristics and trandoffs– Primary vs Secondary memory
• Primary memory organization (RAM)• Secondary memory (auxiliary storage devices)
• Alternatives to von Neumann architecture
5-4
We need Some Abstraction!!!
• Real hardware is messy • Especially Intel architecture because of
backward compatibility (aka legacy issues)• We need some simpler models (abstractions)
of von Neumann architecture
Who has been to Disneyland?
Von Nuemann Architecture
• The parts are connected to one another by a collection of wires called a bus
5-9
Figure 5.2 Data flow through a von Neumann architecture
Von Nuemann Architecture
• The bus is SHARED by several devices• This affects how data flows
• ANALOGY:– Who do you call most on your cell phone?– Some devices communicate more than others
5-10
RAM
• Memory is a collection of cells, each with a unique physical address
• How many data bits?
• How many address bits?
Page 122 5-8
CPU
CPU Components
• Arithmetic Logic Unit• Control Unit• Registers
5-15
ALU(does the work)
REG(holds data)
CU(The Boss)
MEMORY program
Arithmetic/Logic Unit
• Performs basic arithmetic operations:– Adding– Multiplying– Dividing
• Performs logical operations such as AND, OR, and NOT– Example: RGB color mixing
5-16
Registers
• Contain the data that the CPU is processing “at the moment”
• There is a set of registers
5-17
Control Unit
• Control unit controls the instruction cycle
• Reads in a SW program, one instruction at a time
• Tells the ALU what to do
5-18
Control Unit
• There are two special registers in the control unit
– The instruction register (IR) contains the instruction that is being executed
– The program counter (PC) contains the address of the next instruction to be executed
5-19
The Fetch-Execute Cycle
The Control Unit makes the CPU go through the following cycle:
1) Fetch the next instruction2) Decode the instruction3) Execute the instruction– the cycle repeats – forever!
5-20
Memory Mixes
5-22
• Computers contain a mix of different kinds of memory
• Why????
• Will it always be this way?
Primary and Secondary Storage
• Primary Storage – aka “Main Memory” (usually RAM)– the “working memory” of the CPU– Fast– High $ per byte
• Secondary Storage – where all the stuff that is not being worked on “now” is stored (usually
DISK)– Slow– Low $ per byte
5-24
Primary Memory - RAM
• RAM stands for Random Access Memory– Any location can be accessed quickly,– Same amount of time to access any location (aka
‘random’)
• RAM is volatile– Data is LOST when the power is turned off
• Primary (Main) memory is – Volatile– Limited– Expensive
5-25
Primary vs Secondary
• Computers have a BALANCE of Primary and Secondary Memory
• Trade offs:– Speed– Size– Cost
5-26
Secondary Memory
• Secondary memory is – Big– Cheap– Slower than Primary Memory
• Examples:– Magnetic Disk– CD Rom– Flash (Solid State Drives)
5-27
Magnetic Tape
• The first truly mass auxiliary storage device was the magnetic tape drive
• Cassette Tapes are still used for large data backups
Figure 5.4 A magnetic tape 5-17
Magnetic Disks
• A read/write head travels across a spinning magnetic disk, retrieving or recording data
Figure 5.5 The organization of a magnetic disk
5-18
Compact Disks
• A CD drive uses a laser to read information stored optically on a plastic disk
• CD-ROM is Read-Only Memory– Approximately 700MB
• DVD stands for Digital Video Disk– Approximately 4 GB
5-30
QUESTION TIME
• Does the PERFECT MEMORY EXIST??
• What would be its characteristics??
5-31
Does anybody have a Solid State Drive (SSD)
??
Alternatives to von Neumann
• Several alternative architectures exist• Some are used to enhance von Neumann• Examples:– Synchronous Processing (Parallel)
– Pipelining (Serial)
5-33
Synchronous processing
• One approach to parallelism is to have multiple processors apply the same program to multiple data sets
5-34
Figure 5.7 Processors in a synchronous computing environment
Some Parallel Architecture Examples
• Google– Many servers in one building (“Server Farm”)
• SETI– Geographically Distributed Processors
• Quad Core and Tilera– Several CPUs on one chip
5-35
Pipelining
• Arranges processors in tandem, where each processor contributes one part to an overall computation
5-36
Figure 5.8 Processors in a pipeline