CS 61 C Machine Structures Lecture 1 Introduction

  • Slides: 25
Download presentation
CS 61 C – Machine Structures Lecture 1 – Introduction 8/25/2003 Brian Harvey (www.

CS 61 C – Machine Structures Lecture 1 – Introduction 8/25/2003 Brian Harvey (www. cs. berkeley. edu/~bh) John Wawrzynek (Warznek) (www. cs. berkeley. edu/~johnw) www-inst. eecs. berkeley. edu/~cs 61 c/ CS 61 C L 01 Introduction (1) Harvey / Wawrzynek Fall 2003 © UCB

What are “Machine Structures”? Application (ex: browser) Software Hardware Operating Compiler System Assembler (Windows

What are “Machine Structures”? Application (ex: browser) Software Hardware Operating Compiler System Assembler (Windows 2 K) Processor Memory I/O system 61 C Instruction Set Architecture Datapath & Control Digital Design Circuit Design transistors * Coordination of many levels (layers) of abstraction CS 61 C L 01 Introduction (2) Harvey / Wawrzynek Fall 2003 © UCB

61 C Levels of Representation temp = v[k]; v[k] = v[k+1]; v[k+1] = temp;

61 C Levels of Representation temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; High Level Language Program (e. g. , C) Compiler Assembly Language Program (e. g. , MIPS) Assembler Machine Language Program (MIPS) Machine Interpretation lw lw sw sw 0000 1010 1100 0101 Hardware Architecture Description (e. g. , Verilog Language) Architecture Implementation Logic Circuit Description (Verilog Language) CS 61 C L 01 Introduction (3) $t 0, 0($2) $t 1, 4($2) $t 1, 0($2) $t 0, 4($2) 1001 1111 0110 1000 1100 0101 1010 0000 0110 1000 1111 1001 1010 0000 0101 1100 1111 1000 0110 0101 1100 0000 1010 1000 0110 1001 1111 wire [31: 0] data. Bus; reg. File registers (databus); ALUBlock (in. A, in. B, databus); wire w 0; XOR (w 0, a, b); AND (s, w 0, a); Harvey / Wawrzynek Fall 2003 © UCB

Anatomy: 5 components of any Computer Personal Computer Processor Control (“brain”) Datapath (“brawn”) Memory

Anatomy: 5 components of any Computer Personal Computer Processor Control (“brain”) Datapath (“brawn”) Memory (where programs, data live when running) Devices Input Output Keyboard, Mouse Disk (where programs, data live when not running) Display, Printer CS 61 C L 01 Introduction (4) Harvey / Wawrzynek Fall 2003 © UCB

Overview of Physical Implementations The hardware out of which we make systems. ° Integrated

Overview of Physical Implementations The hardware out of which we make systems. ° Integrated Circuits (ICs) • Combinational logic circuits, memory elements, analog interfaces. ° Printed Circuits (PC) boards • substrate for ICs and interconnection, distribution of CLK, Vdd, and GND signals, heat dissipation. ° Power Supplies • Converts line AC voltage to regulated DC low voltage levels. ° Chassis (rack, card case, . . . ) • holds boards, power supply, provides physical interface to user or other systems. ° Connectors and Cables. CS 61 C L 01 Introduction (5) Harvey / Wawrzynek Fall 2003 © UCB

Integrated Circuits (2003 state-of-the-art) Bare Die ° Primarily Crystalline Silicon ° 1 mm -

Integrated Circuits (2003 state-of-the-art) Bare Die ° Primarily Crystalline Silicon ° 1 mm - 25 mm on a side ° 2003 - feature size ~ 0. 13 um = 0. 13 x 10 -6 m ° 100 - 400 M transistors ° (25 - 100 M “logic gates") ° 3 - 10 conductive layers Chip in Package ° “CMOS” (complementary metal oxide semiconductor) - most common. ° Package provides: • spreading of chip-level signal paths to board-level • heat dissipation. ° Ceramic or plastic with gold wires. CS 61 C L 01 Introduction (6) Harvey / Wawrzynek Fall 2003 © UCB

Printed Circuit Boards ° fiberglass or ceramic ° 1 -20 conductive layers ° 1

Printed Circuit Boards ° fiberglass or ceramic ° 1 -20 conductive layers ° 1 -20 in on a side ° IC packages are soldered down. CS 61 C L 01 Introduction (7) Harvey / Wawrzynek Fall 2003 © UCB

Technology Trends: Memory Capacity (Single-Chip DRAM) • Now 1. 4 X/yr, or 2 X

Technology Trends: Memory Capacity (Single-Chip DRAM) • Now 1. 4 X/yr, or 2 X every 2 years. • 8000 X since 1980! CS 61 C L 01 Introduction (8) year 1980 1983 1986 1989 1992 1996 1998 2000 2002 size (Mbit) 0. 0625 0. 25 1 4 16 64 128 256 512 Harvey / Wawrzynek Fall 2003 © UCB

Technology Trends: Microprocessor Complexity Moore’s Law Itanium 2: 410 Million Athlon (K 7): 22

Technology Trends: Microprocessor Complexity Moore’s Law Itanium 2: 410 Million Athlon (K 7): 22 Million Alpha 21264: 15 million Pentium Pro: 5. 5 million Power. PC 620: 6. 9 million Alpha 21164: 9. 3 million Sparc Ultra: 5. 2 million 2 X transistors/Chip Every 1. 5 years Called “Moore’s Law” CS 61 C L 01 Introduction (9) Harvey / Wawrzynek Fall 2003 © UCB

Technology Trends: Processor Performance Intel P 4 2000 MHz (Fall 2001) 1. 54 X/yr

Technology Trends: Processor Performance Intel P 4 2000 MHz (Fall 2001) 1. 54 X/yr CS 61 C L 01 Introduction (10) Harvey / Wawrzynek Fall 2003 © UCB

Computer Technology - Dramatic Change! ° Processor • 2 X in speed every 1.

Computer Technology - Dramatic Change! ° Processor • 2 X in speed every 1. 5 years (since ‘ 85); 100 X performance in last decade. ° Memory • DRAM capacity: 2 x / 2 years (since ‘ 96); 64 x size improvement in last decade. ° Disk • Capacity: 2 X / 1 year (since ‘ 97) • 250 X size in last decade. CS 61 C L 01 Introduction (11) Harvey / Wawrzynek Fall 2003 © UCB

Computer Technology - Dramatic Change! ° State-of-the-art PC when you graduate (at least): •

Computer Technology - Dramatic Change! ° State-of-the-art PC when you graduate (at least): • Processor clock speed: 5000 Mega. Hertz (5. 0 Giga. Hertz) • Memory capacity: 4000 Mega. Bytes (4. 0 Giga. Bytes) • Disk capacity: 2000 Giga. Bytes (2. 0 Tera. Bytes) • New units! Mega => Giga, Giga => Tera CS 61 C L 01 Introduction (12) Harvey / Wawrzynek Fall 2003 © UCB

CS 61 C: So what's in it for me? ° Learn some of the

CS 61 C: So what's in it for me? ° Learn some of the big ideas in CS & engineering: • 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 • Compilation v. interpretation thru system layers • Principles/Pitfalls of Performance Measurement CS 61 C L 01 Introduction (13) Harvey / Wawrzynek Fall 2003 © UCB

Others Skills learned in 61 C ° Learning C • If you know one,

Others Skills learned in 61 C ° Learning C • If you know one, you should be able to learn another programming language largely on your own • 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 • We think of hardware at the abstract level, with only a little bit of physical logic to give things perspective • CS 150, 152 teach this CS 61 C L 01 Introduction (14) Harvey / Wawrzynek Fall 2003 © UCB

Course Lecture Outline ° Number representations ° C-Language (basics + pointers) ° Storage management

Course Lecture Outline ° Number representations ° C-Language (basics + pointers) ° Storage management ° Assembly Programming ° Floating Point Brian and I will take ° Performance turns covering these ° I/O Interrupts topics. ° Disks, Networks ° Caches ° Virtual Memory ° CPU organization ° Introduction to Verilog (HDL) ° Pipelining ° Logic Design ° Advanced Topics CS 61 C L 01 Introduction (15) Harvey / Wawrzynek Fall 2003 © UCB

Texts ° Required: Computer Organization and Design: The Hardware/Software Interface, Second Edition, Patterson and

Texts ° Required: Computer Organization and Design: The Hardware/Software Interface, Second Edition, Patterson and Hennessy (COD) ° Required: The C Programming Language, Kernighan and Ritchie (K&R), 2 nd edition ° Reading assignments on handout, in reader, and on web page Read P&H Chapter 1 and sections 4. 1 & 4. 2, and K&R Chapters 1 -4 as soon as possible this week. CS 61 C L 01 Introduction (16) Harvey / Wawrzynek Fall 2003 © UCB

Tried-and-True Technique: Peer Instruction ° Increase real-time learning in lecture, test understanding of concepts

Tried-and-True Technique: Peer Instruction ° Increase real-time learning in lecture, test understanding of concepts vs. details ° As complete a “segment” ask multiple choice question • 1 -2 minutes to decide yourself • 3 minutes in pairs/triples to reach consensus. Teach others! • 5 -7 minute discussion of answers, questions, clarifications CS 61 C L 01 Introduction (17) Harvey / Wawrzynek Fall 2003 © UCB

Class Meetings ° Monday Lecture ° Discussion Session (1 hour), Mon. or Tue. °

Class Meetings ° Monday Lecture ° Discussion Session (1 hour), Mon. or Tue. ° Wednesday Lecture ° Lab Session (2 hours), Wed. or Thur. ° Friday Lecture There IS discussion and lab this week… CS 61 C L 01 Introduction (18) Harvey / Wawrzynek Fall 2003 © UCB

Homework, Labs and Projects ° Lab exercises (every week) ° Homework exercises (every week)

Homework, Labs and Projects ° Lab exercises (every week) ° Homework exercises (every week) • Due Monday Mornings. - HW 1 is included in the handout, and posted on the webpage (Due Wednesday next week only. ) ° Projects (every 2 to 3 weeks) ° All exercises, reading, homeworks, projects in course reader and on course web page. CS 61 C L 01 Introduction (19) Harvey / Wawrzynek Fall 2003 © UCB

3 Course Exams • Midterm 1: Tu 7 pm Oct 7 th, room TBA

3 Course Exams • Midterm 1: Tu 7 pm Oct 7 th, room TBA - Give 2 hours for 1 hour exam - Open Book / Notes - Review sessions TBA • Midterm 2: Th 7 pm Nov 13 th, room TBA • Final: Wed Dec 10, 8 -11 am - First week after final class. - You’ll be done with 61 C early. CS 61 C L 01 Introduction (20) Harvey / Wawrzynek Fall 2003 © UCB

Your final grade ° Grading 15 Homeworks 6 Projects 2 Midterms Final exam TOTAL

Your final grade ° Grading 15 Homeworks 6 Projects 2 Midterms Final exam TOTAL 15 x 2 6 x 10 2 x 30 30 pts. 60 60 50 200 ° Grade distributions. Absolute scale – no curve. > 180 A+ 175 A 170 A 165 B+. . . 125 D- CS 61 C L 01 Introduction (21) Harvey / Wawrzynek Fall 2003 © UCB

Course Problems…Cheating ° What is cheating? • Studying together in groups is encouraged. •

Course Problems…Cheating ° What is cheating? • Studying together in groups is encouraged. • Turned in work must be your own. • Common examples of cheating: running out of time on a assignment and then pick up output, take homework from box and copy, person asks to borrow solution “just to take a look”, copying an exam question, … ° Cheating on homeworks; -4 points for that assignment ° Cheating on projects / exams; At least, 0 points for that project / exam. In most cases, F in the course. ° For serious and repeated instances will refer you to Office of Student Judicial Affairs. CS 61 C L 01 Introduction (22) Harvey / Wawrzynek Fall 2003 © UCB

Enrollment ° We will not be enforcing the CS 61 B prerequisite this semester.

Enrollment ° We will not be enforcing the CS 61 B prerequisite this semester. ° Our goal is to accommodate everyone on the wait list. ° Two new sections have been added: 018 LAB W 12 -2 P, 271 SODA 118 DIS M 1 -2 P, 3102 ETCHEVERRY 019 LAB W 6 -8 P, 271 SODA 119 DIS M 6 -7 P, 3 EVANS CS 61 C L 01 Introduction (23) Harvey / Wawrzynek Fall 2003 © UCB

Teaching Assistants ° Dan Adkins (also Head TA) ° Paul Burstein ° Michael Hamler

Teaching Assistants ° Dan Adkins (also Head TA) ° Paul Burstein ° Michael Hamler ° Benjamin Huang ° Alexandre Joly CS 61 C L 01 Introduction (24) Harvey / Wawrzynek Fall 2003 © UCB

Summary ° Continued rapid improvement in Computing • 2 X every 1. 5 years

Summary ° Continued rapid improvement in Computing • 2 X every 1. 5 years in processor speed; every 2. 0 years in memory size; every 1. 0 year in disk capacity; Moore’s Law enables processor (2 X transistors/chip ~1. 5 yrs) ° 5 classic components of all computers Control Datapath Memory Input Output Processor CS 61 C L 01 Introduction (25) Harvey / Wawrzynek Fall 2003 © UCB