Are Computers Smart inst eecs berkeley edu cs61c CS61C Machine Structures To a programmer Lecture 1 Introduction Numbers Very complex operations functions map lambda x x x 1 2 3 4 Automatic memory management List l new List Basic structures Integers floats characters plus minus print commands Computers are smart 2005 06 20 Andy Carle A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 1 Are Computers Smart A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 2 What are Machine Structures In real life Application ex browser Only a handful of operations Compiler Software and or not or nand nor Hardware No memory management Only 2 values Assembler 61C Operating System WinXP Processor Memory I O system Instruction Set Architecture Datapath Control Digital Design Circuit Design 0 1 or hi lo or on off 3 if you count undef transistors Computers are dumb Coordination of many levels layers of abstraction A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 3 61C Levels of Representation Compiler Assembly Language Program e g MIPS Assembler Machine Language Program MIPS Machine Interpretation Anatomy 5 components of any Computer temp v k v k v k 1 v k 1 temp High Level Language Program e g C lw lw sw sw 0000 1010 1100 0101 Personal Computer t0 0 2 t1 4 2 t1 0 2 t0 4 2 1001 1111 0110 1000 1100 0101 1010 0000 A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 4 Computer 0110 1000 1111 1001 1010 0000 0101 1100 1111 1001 1000 0110 0101 1100 0000 1010 1000 0110 1001 1111 Hardware Architecture Description Logic Logisim etc Processor Control brain Datapath brawn Architecture Implementation Memory where programs data live when running Devices Input Output Keyboard Mouse Disk where programs data live when not running Display Printer Logic Circuit Description Logisim etc CS 61C L01 Introduction Numbers 5 A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 6 A Carle Su 2005 UCB Overview of Physical Implementations Integrated Circuits 2003 state of the art The hardware out of which we make systems Primarily Crystalline Silicon Bare Die Integrated Circuits ICs Combinational logic circuits memory elements analog interfaces 1mm 25mm on a side 2003 feature size 0 13 m 0 13 x 10 6 m 100 400M transistors Printed Circuits PC boards substrate for ICs and interconnection distribution of CLK Vdd and GND signals heat dissipation 25 100M logic gates 3 10 conductive layers Power Supplies Converts line AC voltage to regulated DC low voltage levels Chip in Package CMOS complementary metal oxide semiconductor most common Package provides Chassis rack card case holds boards power supply provides physical interface to user or other systems spreading of chip level signal paths to board level heat dissipation Ceramic or plastic with gold wires Connectors and Cables A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 7 A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 8 Printed Circuit Boards Technology Trends Memory Capacity Single Chip DRAM size 1000000000 fiberglass or ceramic 100000000 1 20 conductive layers 10000000 1 20in on a side 1000000 100000 IC packages are soldered down 10000 1000 1970 1975 1980 1985 1990 1995 Year Now 1 4X yr or 2X every 2 years 8000X since 1980 A Carle Su 2005 UCB Technology Trends Microprocessor Complexity 100000000 Itanium 2 41 Million Athlon K7 22 Million Alpha 21264 15 million Pentium Pro 5 5 million PowerPC 620 6 9 million Alpha 21164 9 3 million Sparc Ultra 5 2 million 10000000 Moore s Law Pentium i80486 1000000 i80386 i80286 100000 2X transistors Chip Every 1 5 years i8086 10000 i8080 i4004 1000 1970 1975 1980 1985 Year CS 61C L01 Introduction Numbers 11 1990 1995 2000 Called Moore s Law A Carle Su 2005 UCB size Mbit 0 0625 0 25 1 4 16 64 128 256 512 A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 10 Technology Trends Processor Performance Performance measure CS 61C L01 Introduction Numbers 9 2000 year 1980 1983 1986 1989 1992 1996 1998 2000 2002 900 800 700 600 500 400 300 200 100 0 Intel P4 2000 MHz Fall 2001 DEC Alpha 21264 600 1 54X yr DEC Alpha 5 500 DEC Alpha 5 300 DEC Alpha 4 266 IBM POWER 100 87 88 89 90 91 92 93 94 95 96 97 year We ll talk about processor performance later on CS 61C L01 Introduction Numbers 12 A Carle Su 2005 UCB Computer Technology Dramatic Change Computer Technology Dramatic Change We ll see that Kilo Mega etc are incorrect later Memory DRAM capacity 2x 2 years since 96 64x size improvement in last decade Processor Speed 2x 1 5 years since 85 100X performance in last decade Disk State of the art PC when you graduate at least Processor clock speed 5000 MegaHertz 5 0 GigaHertz Memory capacity 4000 MegaBytes 4 0 GigaBytes Disk capacity 2000 GigaBytes 2 0 TeraBytes New units Mega Giga Giga Tera Capacity 2x 1 year since 97 250X size in last decade Tera Peta Peta Exa Exa Zetta Zetta Yotta 1024 CS 61C L01 Introduction Numbers 13 A Carle Su 2005 UCB CS 61C L01 Introduction Numbers 14 A Carle Su 2005 UCB Others Skills learned in 61C CS61C So what s in it for me Learn some of the big ideas in CS engineering Learning C If you know one you should be able to learn another programming language largely on your own 5 Classic components of a Computer Data can be anything integers floating point characters a program determines what it is Stored program concept instructions just data Principle of Locality exploited via a memory hierarchy cache Greater performance by exploiting parallelism Principle of abstraction used to build systems as layers Given that you know C or Java should be easy to pick up their ancestor C Assembly Language Programming This is a skill you will pick up as a side effect of understanding the Big Ideas Hardware design Compilation v interpretation thru system layers We think of hardware at the abstract level with only a little bit of physical logic to give things perspective Principles Pitfalls of Performance Measurement CS 150 152 teach this CS 61C L01 Introduction Numbers 15 A Carle Su 2005 UCB Course Lecture Outline A Carle Su 2005 UCB Texts Number representations C Language basics pointers Storage management Assembly Programming Floating Point make ing an Executable Logic Design Introduction to Logisim CPU organization Pipelining Caches Virtual Memory Performance I O Interrupts Disks Networks Advanced Topics CS 61C L01 Introduction Numbers 17 CS 61C L01 Introduction Numbers 16 Required Computer Organization and Design The Hardware Software Interface Third Edition Patterson and Hennessy COD The second edition is far inferior and is not
View Full Document
Unlocking...