1 / 37

Chapter 1 Computer Abstraction and Technology

Chapter 1 Computer Abstraction and Technology. Introduction. This course is all about how computers work The third revolution for civilization Faster computers have made applications (science fiction) that were economically infeasible suddenly become practical Automatic teller machine (ATM)

Download Presentation

Chapter 1 Computer Abstraction and Technology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 1Computer Abstraction and Technology

  2. Introduction • This course is all about how computers work • The third revolution for civilization • Faster computers have made applications (science fiction) that were economically infeasible suddenly become practical • Automatic teller machine (ATM) • Computers in automobiles • Laptop • Human genome project • WWW

  3. Introduction • But what do we mean by a computer? • Different types: desktop, servers, embedded devices • Different uses: automobiles, graphics, finance, genomics… • Different manufacturers: Intel, Apple, IBM, Microsoft, Sun… • Different underlying technologies and different costs! • Analogy: Consider a course on “automotive vehicles” • Many similarities from vehicle to vehicle (e.g., wheels) • Huge differences from vehicle to vehicle (e.g., gas vs. electric) • Best way to learn: • Focus on a specific instance and learn how it works • While learning general principles and historical perspectives

  4. Processors sold in 1998-2002 Embedded CPU: CPU core

  5. What you can learn? • How are programs in high-level language (C or Java), translated into hardware language and how hardware executes it? • What is the interface between S/W and H/W, and how does S/W instruct the H/W to perform needed functions? • What determines the performance of a program, and how can a programmer improve performance? • What techniques can be used by hardware designers to improve performance?

  6. Why learn this stuff? • You want to call yourself a “computer scientist” • You want to build software people use (need performance) • You need to make a purchasing decision or offer “expert” advice • Both Hardware and Software affect performance: • Algorithm determines number of source-level statements and I/O operations executed • Language/Compiler/Architecture determine # of machine instructions for each source statement (Chapter 2 and 3) • Processor/Memory determine how fast instructions are executed (Chapter 5, 6, and 7) • I/O system (hardware and OS) determines how fast is I/O • Assessing and Understanding Performance in Chapter 4

  7. What is a computer? • 5 Components: • input (mouse, keyboard) • output (display, printer) • memory (disk drives, DRAM, SRAM, CD) • the processor (datapath and control): Our primary focus: • implemented using millions of transistors • Impossible to understand by looking at each transistor • Or include Network

  8. Inside processor chip

  9. PC Board

  10. Abstraction • Delving into the depths reveals more information • An abstraction omits unneeded detail, helps us cope with complexityWhat are some of the details that appear in these familiar abstractions?

  11. How do computers work? • Need to understand abstractions such as: • Applications software • Systems software • Assembly Language • Machine Language • Architectural Issues: i.e., Caches, Virtual Memory, Pipelining • Sequential logic, finite state machines • Combinational logic, arithmetic circuits • Boolean logic, 1s and 0s • Transistors used to build logic gates (CMOS) • Semiconductors/Silicon used to build transistors • Properties of atoms, electrons, and quantum dynamics • So much to learn!

  12. Why not simply write code in assembly? • Why not simply convert HLL statements into bits for the hardware to interpret?

  13. The role of the compiler • The compiler translates a HLL program into the machine language for the given ISA • Compilers allow software developers to work at the HLL level without worrying about low-level details of the underlying machine • The compiler writer’s first responsibility is to ensure that the machine language program • Exactly matches the functionality of the HLL program • Exactly conforms to the ISA specification • Compiler product differentiators include • Speed of code execution on the hardware • Code density (reduces memory requirements) • Compilation speed (how long from HLL to machine code) • Debugging capabilities

  14. Instruction Set Architecture • A very important abstraction • interface between hardware and low-level software • standardizes instructions, machine language bit patterns, etc. • advantage: different implementations of the same architecture • disadvantage: sometimes prevents using new innovationsTrue or False: Binary compatibility is extraordinarily important? • Modern instruction set architectures: • IA-32, PowerPC, MIPS, SPARC, ARM, and others

  15. Instruction Set Architecture software instruction set hardware

  16. What is Computer Architecture? Computer Architecture = Instruction Set Architecture + Machine Organization

  17. What is Computer Architecture? Application Operating System Compiler Firmware Instruction Set Architecture Instars. Set Proc. I/O system Datapath & Control Digital Design Circuit Design Layout

  18. The ISA and computer hardware • The designer of computer hardware (CPU, caches, MM, and I/O) must first ensure that the hardware correctly executes the machine code specified in the ISA spec • Hardware product differentiators include • Performance (emphasis of this course) • Power dissipation (a huge issue today!) • Cost (die size, package pin count, cooling costs) • Reliability, availability, serviceability • Ability to upgrade

  19. Software and hardware Central Processing Unit instructions operands Level1 Data Cache Level1 Instruction Cache Level2 Cache Interconnect disk keyboard/mouse Main Memory Input/ Output network etc

  20. Historical Perspective • ENIAC built in World War II 1943 was the first general purpose computer • Used for computing artillery firing tables • 80 feet long by 8.5 feet high and several feet wide • Each of the twenty 10 digit registers was 2 feet long • Used 18,000 vacuum tubes • Performed 1900 additions per second • Programming manually by plugging cables and setting switches • Since then:Moore’s Law: transistor capacity doubles every 18-24 months • http://www.intel.com/research/silicon/mooreslaw.htm

  21. Historical Perspective • By W. Shockley, J. Bardeen, W. Brattain of Bell Lab. in 1947 • Much more reliable than vacuum tubes • Electronic switches in “solids”

  22. Historical Perspective • 1950

  23. Historical Perspective • 1971年第一個微處理器:Intel 4004 108 KHz, 0.06 MIPS 2300 transistors (10 microns) Bus width: 4 bits Memory: 640 bytes For Busicom calculator

  24. Historical Perspective • 1977年Apple II: Steve Jobs, Steve Wozniak

  25. Historical Perspective • 1981年IBM PC: Intel 8088, 4.77MHz

  26. Historical Perspective • 1979: 1st electronic spreadsheet (VisiCalc for Apple II) by Don Bricklin and Bob Franston “The kill app for early PCs” Followed by dBASE II, ...

  27. Historical Perspective • 1980s • New processor architectures were introduced: • RISC (Reduced Instruction Set Computer) IBM: John Cocke UC Berkeley: David Patterson Stanford: John Hennessy • Commercial RISC processors introduced around 1985 􀁺 MIPS: MIPS Sun : Sparc IBM : Power RISC HP : PA-RISC DEC : Alpha • They compete with CISC (complex instruction set computer) processors, mainly Intel x86 processors, for the next 15 years

  28. Performance

  29. Factor for improvement • Several factors: IC technology: clock rate, power, transistors per chip • Computer architecture: pipeline, cache, MMX, instructions per cycle • Mass market: market share, revenue, applications

  30. VLSI Tech

  31. Technology Trends: Memory Capacity(1 Chip DRAM) year size(Mbit) 1980 0.0625 1983 0.25 1986 1 1989 4 1992 16 1996 64 2000 256 1.4X/yr, or doubling every 2 years 4000X since 1980

  32. Technology Trends:Microprocessor Capacity

  33. Moore’s law

  34. Make it into conductor: • diffuse, bombard ions • Make it into insulator: silicon oxide (glass) • Make it into switch: transistor

  35. Semiconductor Processing

  36. Fallacies and Pitfalls • Fallacy (wrong belief): Computers have been built in the same, old-fashioned way for too long, and this antiquated model of computation is running out of steam. • Pitfall (easily made mistake): Ignoring inexorable progress of hardware when planning a new system.

More Related