380 likes | 389 Vues
Explore the components of a von Neumann machine, the fetch-decode-execute cycle, memory organization, and alternatives to von Neumann architecture.
E N D
Chapter 5 Computing Components
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
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
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
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 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
von Neumann Architecture Figure 5.1 The von Neumann architecture
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 Components • Arithmetic Logic Unit • Control Unit • Registers CPU REG (holds data) CU (The Boss) MEMORY program ALU (does the work)
Arithmetic/Logic Unit • Performs basic arithmetic operations: • Adding • Multiplying • Dividing • Performs logical operations such as AND, OR, and NOT • Example: RGB color mixing
Registers • Contain the data that the CPU is processing “at the moment” • There is a set of registers
Control Unit • Control unit controls the instruction cycle • Reads in a SW program, one instruction at a time • Tells the ALU what to do
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
The Fetch-Execute Cycle The Control Unit makes the CPU go through the following cycle: • Fetch the next instruction • Decode the instruction • Execute the instruction • the cycle repeats – forever!
Memory Mixes • Computers contain a mix of different kinds of memory • Why???? • Will it always be this way?
Memory and the Memory Pyramid Cache Capacity Cost & Speed Main RAM Flash RAM Magnetic Disk Tape
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
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
Primary vs Secondary • Computers have a BALANCE of Primary and Secondary Memory • Trade offs: • Speed • Size • Cost
Secondary Memory • Secondary memory is • Big • Cheap • Slower than Primary Memory • Examples: • Magnetic Disk • CD Rom • Flash (Solid State Drives)
Magnetic Tape • The first truly mass auxiliary storage device was the magnetic tape drive • Cassette Tapes are still used for large data backups (“I’m not dead yet!”) Figure 5.4 A magnetic tape 5-17
Others?? • DNA • Practical? • Size? • Speed? • Extreme? • Maybe • Other technologies may prevail 5-17
Magnetic Disks • A read/write head travels across a spinning magnetic disk, retrieving or recording data Figure 5.5The 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
QUESTION TIME • Does the PERFECT MEMORY EXIST?? • What would be its characteristics?? Does anybody have a Solid State Drive (SSD) ??
Von BOTTLENECK • Von Neumann has a fundamental limitation: • The SHARED BUS!!
Alternatives to von Neumann • Several alternative architectures exist • Some are used to enhance von Neumann • Examples: • Synchronous Processing (Parallel) • Pipelining (Serial)
Synchronous processing • One approach to parallelism is to have multiple processors apply the same program to multiple data sets 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
Pipelining • Arranges processors in tandem, where each processor contributes one part to an overall computation Figure 5.8 Processors in a pipeline
Pipelining Examples • Like a manufacturing assembly line (cars) • Some series of tasks can be pipelined • Example: game video processing • Build vector model • Wrap vectors in bitmaps • Generate camera view