CS61C Machine Structures. Lecture 1 Introduction. 8/25/2003 Brian Harvey. John Wawrzynek (Warznek) www-inst.eecs.berkeley.

Similar documents
CS61C Machine Structures. Lecture 1 Introduction. 8/27/2006 John Wawrzynek (Warzneck)

ECE 15B COMPUTER ORGANIZATION

CS61C : Machine Structures

What are Machine Structures? Lecture 1 Introduction C. * Coordination of many. levels (layers) of abstraction

CS430 - Computer Architecture William J. Taffe Fall 2002 using slides from. CS61C - Machine Structures Dave Patterson Fall 2000

Intro to Math 230 Assembly Language Programming. Lecture # 01 01/15/08

levels (layers) of abstraction I stand on the shoulders of giants Lecture #1 Introduction Are Computers Smart? Where does CS61C fit in?

CS61C : Machine Structures

levels (layers) of abstraction

CS61C : Machine Structures

Are Computers Smart? To a programmer: Lecture #1 Introduction & Numbers Andy Carle. Are Computers Smart? What are Machine Structures?

CS61C : Machine Structures

ELEC 5200/6200. Computer Architecture & Design. Victor P. Nelson Broun 326

CS61C : Machine Structures

I stand on the shoulders of giants. Lecture #1 Introduction Where does CS61C fit in? Are Computers Smart?

CS61C : Machine Structures

CS61C : Machine Structures

EECE 321: Computer Organization

Handouts. (CSC-3501) Lecture 1 (15 Jan 2008) Seung-Jong Park (Jay) Class information. Schedule (check online frequently)

CS61C : Machine Structures

CS61C : Machine Structures

CS61C Machine Structures. Lecture 8 - Introduction to the MIPS Processor and Assembly Language. 9/14/2007 John Wawrzynek

CS/COE0447: Computer Organization

CS61C C/Assembler Operators and Operands Lecture 2 January 22, 1999 Dave Patterson (http.cs.berkeley.edu/~patterson)

CS61CL : Machine Structures

Computer Architecture Computer Architecture. Computer Architecture. What is Computer Architecture? Grading

Computer Architecture

IT 252 Computer Organization and Architecture. Introduction. Chia-Chi Teng

ECE 154A. Architecture. Dmitri Strukov

EEC170 Computer Architecture. Lecture 1: Introduction to Computer Architecture

CS64 Computer Organization

Computer Architecture. Fall Dongkun Shin, SKKU

CPS104 Computer Organization Lecture 1

ECE 15B Computer Organization Spring 2011

CPS104 Computer Organization Lecture 1. CPS104: Computer Organization. Meat of the Course. Robert Wagner

What is this class all about?

What is this class all about?

מבנה מחשבים Amar Lior Based on lectures notes from Arie Schlesinger

EE141- Spring 2004 Introduction to Digital Integrated Circuits. What is this class about?

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from David Culler, UC Berkeley CS252, Spr 2002

CS61C : Machine Structures

What is this class all about?

Computer Architecture

CS61C Machine Structures. Lecture 13 - MIPS Instruction Representation I. 9/26/2007 John Wawrzynek. www-inst.eecs.berkeley.

EE141- Spring 2007 Introduction to Digital Integrated Circuits

CPE300: Digital System Architecture and Design. Fall 2011 MW 17:30-18:45 CBC C316

Lecture 1: CS/ECE 3810 Introduction

EEM 486: Computer Architecture

COMPUTER ORGANIZATION (CSE 2021)

The Beauty and Joy of Computing

EE141- Spring 2002 Introduction to Digital Integrated Circuits. What is this class about?

URL: Offered by: Should already know how to design with logic. Will learn...

ECE232: Hardware Organization and Design

Lecture #1. Teach you how to make sure your circuit works Do you want your transistor to be the one that screws up a 1 billion transistor chip?

COMPUTER ORGANIZATION (CSE 2021)

CMSC 611: Advanced Computer Architecture

CS61C : Machine Structures

Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10. Fall Lecture #1. Agenda

CPE300: Digital System Architecture and Design

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction

CSE Introduction to Computer Architecture

Review: Performance Latency vs. Throughput. Time (seconds/program) is performance measure Instructions Clock cycles Seconds.

Instructors. ECE 152 Introduction to Computer Architecture. Undergrad Teaching Assistants. Course Website. Textbook.

CS 3410: Intro to Computer System Organization and Programming

UCB CS61C : Machine Structures

EE108B: Digital Systems II EE108B. Digital Systems II. Major Topics. What EE108b is About

Computer Architecture

Jin-Fu Li. Department of Electrical Engineering. Jhongli, Taiwan

ECE520 VLSI Design. Lecture 1: Introduction to VLSI Technology. Payman Zarkesh-Ha

CSE 141: Computer Architecture. Professor: Michael Taylor. UCSD Department of Computer Science & Engineering

Computer Architecture. Introduction. Lynn Choi Korea University

ECE/CS 552: Introduction To Computer Architecture 1

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

CS61C : Machine Structures

Moore s Law. CS 6534: Tech Trends / Intro. Good Ol Days: Frequency Scaling. The Power Wall. Charles Reiss. 24 August 2016

Inf2C - Computer Systems Lecture 1 Course overview & the big picture

How What When Why CSC3501 FALL07 CSC3501 FALL07. Louisiana State University 1- Introduction - 1. Louisiana State University 1- Introduction - 2

CS 6534: Tech Trends / Intro

Digital Integrated Circuits

Introduction to Computer Systems

CS61C : Machine Structures

Five classic components

EE382 Processor Design. Class Objectives

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

ECE232: Hardware Organization and Design

Agenda. Old School CS61c. Agenda. New School CS61c 8/26/10. CS 61C: Great Ideas in Computer Architecture (Machine Structures)

CS 0449 Intro to Systems Software Fall Term: 2181

Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model

Concurrency & Parallelism, 10 mi

COMP3221: Microprocessors and. Embedded Systems

Chapter 1 Introduction. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

UC Berkeley CS61C : Machine Structures

Computer Architecture = CS/ECE 552: Introduction to Computer Architecture. 552 In Context. Why Study Computer Architecture?

Evolution of Computers & Microprocessors. Dr. Cahit Karakuş

ECE 468 Computer Architecture and Organization Lecture 1

Computer Technology => Dramatic Change COMP Microprocessors and Embedded Systems. Lecture 1: Introduction

14:332:331. Lecture 1

CSE : Introduction to Computer Architecture

Processor. Lecture #2 Number Rep & Intro to C classic components of all computers Control Datapath Memory Input Output

UC Berkeley CS61C : Machine Structures

Transcription:

CS61C 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/~cs61c/ CS 61C L01 Introduction (1)

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

61C Levels of Representation High Level Language Program (e.g., C) Compiler Assembly Language Program (e.g.,mips) Assembler Machine Language Program (MIPS) Machine Interpretation Hardware Architecture Description (e.g., Verilog Language) Architecture Implementation Logic Circuit Description (Verilog Language) temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; lw $t0, 0($2) lw $t1, 4($2) sw $t1, 0($2) sw $t0, 4($2) 0000 1001 1100 0110 1010 1111 0101 1000 1010 1111 0101 1000 0000 1001 1100 0110 1100 0110 1010 1111 0101 1000 0000 1001 0101 1000 0000 1001 1100 0110 1010 1111 wire [31:0] databus; regfile registers (databus); ALU ALUBlock (ina, inb, databus); wire w0; XOR (w0, a, b); AND (s, w0, a); CS 61C L01 Introduction (3)

Anatomy: 5 components of any Computer Personal Computer 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 61C L01 Introduction (4)

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 61C L01 Introduction (5)

Integrated Circuits (2003 state-of-the-art) Bare Die Primarily Crystalline Silicon 1mm - 25mm on a side 2003 - feature size ~ 0.13um = 0.13 x 10-6 m 100-400M transistors (25-100M 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 61C L01 Introduction (6)

Printed Circuit Boards fiberglass or ceramic 1-20 conductive layers 1-20in on a side IC packages are soldered down. CS 61C L01 Introduction (7)

Technology Trends: Memory Capacity (Single-Chip DRAM) size 1000000000 100000000 10000000 1000000 100000 10000 1000 1970 1975 1980 1985 1990 1995 2000 Year Now 1.4X/yr, or 2X every 2 years. 8000X since 1980! year size (Mbit) 1980 0.0625 1983 0.25 1986 1 1989 4 1992 16 1996 64 1998 128 2000 256 2002 512 CS 61C L01 Introduction (8)

Technology Trends: Microprocessor Complexity 100000000 Itanium 2: 410 Million Athlon (K7): 22 Million 10000000 1000000 Moore s Law i80386 i80486 Pentium Alpha 21264: 15 million Pentium Pro: 5.5 million PowerPC 620: 6.9 million Alpha 21164: 9.3 million Sparc Ultra: 5.2 million 100000 i80286 10000 i8086 2X transistors/chip Every 1.5 years i8080 1000 i4004 1970 1975 1980 1985 1990 1995 2000 Year Called Moore s Law CS 61C L01 Introduction (9)

Technology Trends: Processor Performance 900 800 700 600 500 400 300 200 100 0 1.54X/yr 87 88 89 90 91 92 93 94 95 96 97 DEC Alpha 21264/600 DEC Alpha 5/500 DEC Alpha 5/300 DEC Alpha 4/266 IBM POWER 100 Intel P4 2000 MHz (Fall 2001) CS 61C L01 Introduction (10)

Computer Technology - Dramatic Change! Processor 2X in speed every 1.5 years (since 85); 100X performance in last decade. Memory DRAM capacity: 2x / 2 years (since 96); 64x size improvement in last decade. Disk Capacity: 2X / 1 year (since 97) 250X size in last decade. CS 61C L01 Introduction (11)

Computer Technology - Dramatic Change! State-of-the-art PC when you graduate (at least): Processor clock speed: Memory capacity: 5000 MegaHertz (5.0 GigaHertz) 4000 MegaBytes (4.0 GigaBytes) Disk capacity: 2000 GigaBytes (2.0 TeraBytes) New units! Mega => Giga, Giga => Tera CS 61C L01 Introduction (12)

CS61C: 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 61C L01 Introduction (13)

Others Skills learned in 61C 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 61C L01 Introduction (14)

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

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), 2nd 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 61C L01 Introduction (16)

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 61C L01 Introduction (17)

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 61C L01 Introduction (18)

Homework, Labs and Projects Lab exercises (every week) Homework exercises (every week) Due Monday Mornings. - HW1 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 61C L01 Introduction (19)

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

Your final grade Grading 15 Homeworks 15 x 2 30pts. 6 Projects 6 x 10 60 2 Midterms 2 x 30 60 Final exam 50 TOTAL 200 Grade distributions. Absolute scale no curve. > 180 A+ 175 A 170 A- 165 B+... 125 D- CS 61C L01 Introduction (21)

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 61C L01 Introduction (22)

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

Teaching Assistants Dan Adkins (also Head TA) Paul Burstein Michael Hamler Benjamin Huang Alexandre Joly CS 61C L01 Introduction (24)

Summary Continued rapid improvement in Computing 2X 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 (2X transistors/chip ~1.5 yrs) 5 classic components of all computers Control Datapath Memory Input Output Processor CS 61C L01 Introduction (25)