CIT 668: System Architecture Computer Systems Architecture I
Topics System Components Processor Memory Storage Network Operating System Images courtesy of Majd F. Sakr or from Wikipedia unless otherwise noted.
A Single CPU Computer Components
Von Neumann Architecture Single storage for both data and commands Storage separate from control unit RAM CPU The Brain von Neumann
The 5 Von Neumann Components Input/Output CPU and ALU Memory
Motherboard
The Processor
The Processor The Brain: a functional unit that interprets and carries out instructions (mathematical operations) Also called a CPU (actually includes CPU + ALU) Consists of hundreds of millions of transistors.
Instruction Set Architecture (ISA) Every processor has its own set of operations Written in binary machine language (ML) Each instruction consists of operator + operand Assembly language is humanly-readable ML Category Example Arithmetic Add, subtract, multiply, divide Logic And, or, not, exclusive ov Program Control Branch (conditional), call, jump Data Movement Move, load, store I/O Read, write
Source Code to Machine Language
Program Execution Cycle Fetch/Execute Cycle Fetch: retrieve instruction from memory Execute: decode instruction, fetch operands, execute instruction, store results to memory (if any) Fetch Decode Execute Store
Synchronous Execution Each step waits for click tick to begin A 100 MHz processor uses a clock that ticks 100,000,000 times per second. Fetch Decode Execute Store Cycle speed of 1 GHz: billionths of a second
Processor Components
Processor Layout
From Sand to Silicon Wafers Purification and heating to make a pure silicon crystal. Sand, made up of 25% silicon, is the starting point Slicing the crystal into 300mm wafers for use in photolitho- graphy. 100kg of 99.9999% pure silicon crystal http://www.techzug.com/index.php/miscellaneous/intel-shows-how-a-processor-is-made.html
Photolithography http://cnx.org/content/m1037/latest/ http://www.intel.com/pressroom/kits/events/idffall_2009/photos.htm
Packaging Wafer is cut into dies, each containing one processor. Substrate, die, and heatspreader assembled to make final CPU product for use in a PC. http://www.techzug.com/index.php/miscellaneous/intel-shows-how-a-processor-is-made.html
Processor Components: Control Control Unit Processor’s supervisor Fetch/execute cycle Retrieve instruction Decode instruction Execute actions Program Counter (PC): stores address of instruction to be fetched. Instruction Register (IR): has instruction most recently fetched.
Processor Components: Datapath Register File: General purpose storage locations inside processor that hold addresses or values. Arithmetic Logic Unit: Set of functional units that perform arithmetic and logic operations. A 32-bit processor has registers that are typically 32 bits in size.
Superscalar Architecture Instead of one ALU, use multiple execution units Some execution units are identical to others Others are different: Integer, FPU, multi-media http://www.just2good.co.uk/pipelining.php
AMD Athlon Architecture
Computer System Layers
Moore’s Law – Number of transistors doubles every 18 months More transistors = Cheaper CPUs Higher speeds More features More cache Bring 1ns (11.8 in) cable to illustrate why shrinking transistors can improve speed
Improvements in CPU Clock Speed http://smoothspan.wordpress.com/2007/09/06/a-picture-of-the-multicore-crisis/clock-speed-timeline/
Computation Produces Heat http://en.wikipedia.org/wiki/Heatsink http://en.wikipedia.org/wiki/File:2007TaipeiITMonth_IntelOCLiveTest_Overclocking-6.jpg LN2 cooling http://www.mentor.com/company/news/flomerics-announces-workshops-on-optimizing-data-center-cooling
Processor Power Density Sun’s 10000 Surface Rocket Nozzle 1000 Nuclear Reactor 100 Power Density (W/cm2) Pentium IV Pentium III Pentium II 8086 http://www.ecs.umass.edu/~kundu/ResearchPageFiles/Publications/GMMKeynote.pdf http://www.eng.auburn.edu/~agrawvd/TALKS/WICAT09/VA@UVA.ppt 10 Hot Plate Pentium Pro 4004 8008 8085 386 Pentium® 286 486 8080 Source: Intel 1 1970 1980 1990 2000 2010 Year
The Single CPU is History What can you do with more transistors at same speed? Multicore CPUs Multiple processors (cores) on a single chip Run different programs on each core Some programs can be rewritten to run on multiple cores: PhotoShop, bzip2 Most of you are running multi-core 6-core opteron image from http://en.wikipedia.org/wiki/Opteron http://en.wikipedia.org/wiki/Multi-core_%28computing%29
2011 Server CPUs Intel Xeon AMD Opteron IBM Power 7 Sun Niagara 3 Up to 8 cores @ 1.8 to 3.3 GHz Up to 18 MB L3 cache AMD Opteron 4, 6, 8, or 12 cores @ 1.4 to 3.2 GHz Up to 12 MB L3 cache IBM Power 7 4, 6, or 8 cores @ 3.0 to 4.25 GHz 4 MB L3 cache per core (up to 32MB for 8-core) Sun Niagara 3 16 cores @ 1.67 GHz 6 MB L2 cache
End of Moore’s Law Si ≈ 0.3 nm http://www.indybay.org/newsitems/2006/05/18/18240941.php http://en.wikipedia.org/wiki/Atom Si ≈ 0.3 nm
Better Materials More Machines Better Algorithms Where do we go from here? Better Materials GaAs Diamond More Machines Cloud Containers Better Algorithms Map Reduce Fuzzy Logic http://www.datacenterknowledge.com/archives/2011/01/04/microsofts-high-tech-modular-tractor-shed/ http://www.cloudup.net/why/ http://people.apache.org/~rdonkin/hadoop-talk/hadoop.html http://www.ghanavizi.com/docs/files/parallel/Introduction%20to%20Parallel%20Computing.htm http://web.mit.edu/newsoffice/2010/fuzzy-logic-0103.html
Processor-Memory Gap