Part I Background and Motivation June 2005 Computer Architecture, Background and Motivation
I Background and Motivation Provide motivation, paint the big picture, introduce tools: Review components used in building digital circuits Present an overview of computer technology Understand the meaning of computer performance (or why a 2 GHz processor isn’t 2 as fast as a 1 GHz model) Topics in This Part Chapter 1 Combinational Digital Circuits Chapter 2 Digital Circuits with Memory Chapter 3 Computer System Technology Chapter 4 Computer Performance June 2005 Computer Architecture, Background and Motivation
3 Computer System Technology Interplay between architecture, hardware, and software Architectural innovations influence technology Technological advances drive changes in architecture Topics in This Chapter 3.1 From Components to Applications 3.2 Computer Systems and Their Parts 3.3 Generations of Progress 3.4 Processor and Memory Technologies 3.5 Peripherals, I/O, and Communications 3.6 Software Systems and Applications June 2005 Computer Architecture, Background and Motivation
3.1 From Components to Applications Figure 3.1 Subfields or views in computer system engineering. June 2005 Computer Architecture, Background and Motivation
What Is (Computer) Architecture? Figure 3.2 Like a building architect, whose place at the engineering/arts and goals/means interfaces is seen in this diagram, a computer architect reconciles many conflicting or competing demands. June 2005 Computer Architecture, Background and Motivation
3.2 Computer Systems and Their Parts Figure 3.3 The space of computer systems, with what we normally mean by the word “computer” highlighted. June 2005 Computer Architecture, Background and Motivation
Price/Performance Pyramid Differences in scale, not in substance Figure 3.4 Classifying computers by computational power and price range. June 2005 Computer Architecture, Background and Motivation
Automotive Embedded Computers Figure 3.5 Embedded computers are ubiquitous, yet invisible. They are found in our automobiles, appliances, and many other places. June 2005 Computer Architecture, Background and Motivation
Personal Computers and Workstations Figure 3.6 Notebooks, a common class of portable computers, are much smaller than desktops but offer substantially the same capabilities. What are the main reasons for the size difference? June 2005 Computer Architecture, Background and Motivation
Computer System Components Traditionally, we often group functional computer components into five classic categories: Input Systems (e.g. keyboard, mouse) Output Systems (e.g. Monitor display, printer) Memory (contains stored programs and memory) Control (component that controls memory, I/O, datapath) Datapath (component that performs arithmetic operations) Input Systems Controller Memory Datapath (regs., ALU) Output Systems Processor (CPU) I/O systems
Inside the CPU (a more detailed look) Block diagram of a simple, generic CPU: CPU Interrupt signals Instruction Decoder & CPU Controller Control FSM Control signals tristate buf Arithmetic- Logic Unit PC Bus to memory system & I/O ports A ALU mux B … mux mux Data path mux Write ports Registers Read ports
3.3 Generations of Progress Table 3.2 The 5 generations of digital computers, and their ancestors. Generation (begun) Processor technology Memory innovations I/O devices introduced Dominant look & fell 0 (1600s) (Electro-) mechanical Wheel, card Lever, dial, punched card Factory equipment 1 (1950s) Vacuum tube Magnetic drum Paper tape, magnetic tape Hall-size cabinet 2 (1960s) Transistor Magnetic core Drum, printer, text terminal Room-size mainframe 3 (1970s) SSI/MSI RAM/ROM chip Disk, keyboard, video monitor Desk-size mini 4 (1980s) LSI/VLSI SRAM/DRAM Network, CD, mouse,sound Desktop/ laptop micro 5 (1990s) ULSI/GSI/ WSI, SOC SDRAM, flash Sensor/actuator, point/click Invisible, embedded June 2005 Computer Architecture, Background and Motivation
Electronic Numerical Integrator And Computer Eckert and Mauchly ENIAC (1946) Electronic Numerical Integrator And Computer Eckert and Mauchly University of Pennsylvania Proposed to develop a computer for the calculation of Trajectory tables for weapons during WWII (Army Ballistics Research Laboratory) Started 1943 Finished 1946 Too late for war effort Used to help determine feasibility of H-bomb Used until 1955
ENIAC – some details Decimal (not binary!) Its memory contained 20 accumulators of 10 digits. 10 vacuum tubes represented each digit. Programmed manually by switches 18,000 vacuum tubes 30 tons 1500 square feet 140 kW power consumption 5,000 additions per second
Princeton IAS Computer (1952) Smithsonian Image 95-06151
1947 – Eckert-Mauchly developed their own Computer Corporation Commercial Computers 1947 – Eckert-Mauchly developed their own Computer Corporation UNIVAC I (Universal Automatic Computer) Designed to perform mainly scientific calculations (e.g. US Bureau of Census 1950 calculations) Became part of Sperry-Rand Corporation Late 1950s - UNIVAC II Faster More memory
Punched-card processing equipment 1953 - the 701 Early IBM computers Punched-card processing equipment 1953 - the 701 IBM’s first stored program computer Scientific calculations 1955 - the 702 Business applications Lead to 700/7000 series
Transistors The second generation of technology: Transistors replaced vacuum tubes Smaller Cheaper Less heat dissipation Solid State device Made from Silicon (from sand) Invented 1947 at Bell Labs William Shockley et al. Discrete components
IBM 360 (1964)
Replaced (& not compatible with) 7000 series IBM 360 series Introduced in 1964 Replaced (& not compatible with) 7000 series First planned “family” of computers Similar or identical instruction sets Similar or identical O/S Increasing speed Increasing number of I/O ports (i.e. more terminals) Increased memory size Increased cost Multiplexed switch structure
Small, could sit on a lab bench Relatively cheap: $16,000 DEC PDP-8 (1964) Also introduced in 1964 First minicomputer Did not need room w. A/C Small, could sit on a lab bench Relatively cheap: $16,000 Compared to $100k+ for IBM 360 Embedded applications & Original Equipment Manufacturers (OEM) allowed users to buy PDP-8 machines and integrate them into a total system for resale.
IC Production and Yield Figure 3.8 The manufacturing process for an IC part. June 2005 Computer Architecture, Background and Motivation
Effect of Die Size on Yield Figure 3.9 Visualizing the dramatic decrease in yield with larger dies. Die yield =def (number of good dies) / (total number of dies) Die yield = Wafer yield [1 + (Defect density Die area) / a]–a Die cost = (cost of wafer) / (total number of dies die yield) = (cost of wafer) (die area / wafer area) / (die yield) June 2005 Computer Architecture, Background and Motivation
3.4 Processor and Memory Technologies Figure 3.11 Packaging of processor, memory, and other components. June 2005 Computer Architecture, Background and Motivation
Computer Architecture, Background and Motivation Moore’s Law Figure 3.10 Trends in processor performance and DRAM memory chip capacity (Moore’s law). June 2005 Computer Architecture, Background and Motivation
Device Size Scaling Trends Based on ITRS ’97-03 roadmaps (1 µm) Virus Protein molecule Naïve linear extrapolations Effective gate oxide thickness DNA/CNT radius Silicon atom Hydrogen atom
Trend of Min. Transistor Switching Energy Based on ITRS ’97-03 roadmaps fJ Node numbers (nm DRAM hp) Practical limit for CMOS? aJ Naïve linear extrapolation zJ
Pitfalls of Computer Technology Forecasting “DOS addresses only 1 MB of RAM because we cannot imagine any applications needing more.” Microsoft, 1980 “640K ought to be enough for anybody.” Bill Gates, 1981 “Computers in the future may weigh no more than 1.5 tons.” Popular Mechanics “I think there is a world market for maybe five computers.” Thomas Watson, IBM Chairman, 1943 “There is no reason anyone would want a computer in their home.” Ken Olsen, DEC founder, 1977 “The 32-bit machine would be an overkill for a personal computer.” Sol Libes, ByteLines June 2005 Computer Architecture, Background and Motivation
3.5 Input/Output and Communications Figure 3.12 Magnetic and optical disk memory units. June 2005 Computer Architecture, Background and Motivation
Communication Technologies Figure 3.13 Latency and bandwidth characteristics of different classes of communication links. June 2005 Computer Architecture, Background and Motivation
3.6 Software Systems and Applications Figure 3.15 Categorization of software, with examples in each class. June 2005 Computer Architecture, Background and Motivation
High- vs Low-Level Programming Figure 3.14 Models and abstractions in programming. June 2005 Computer Architecture, Background and Motivation