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

Size: px
Start display at page:

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

Transcription

1 CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10 1 Agenda Great Ideas in Computer Architecture Administrivia Technology Break How to Talk to a Computer 2 1

2 Agenda Great Ideas in Computer Architecture Administrivia Technology Break How to Talk to a Computer 3 Old School CS61c 4 2

3 New School CS61c Fall Lecture #1 5 Fall Lecture #1 6 3

4 Machine Structures SoHware Hardware Applica6on (ex: browser) Compiler Assembler Processor Memory Datapath & Control Digital Design Circuit Design transistors Opera6ng System (Mac OSX) I/O system CS61C Instruc6on Set Architecture 7 Great Ideas in Computer Architecture Layers of Representa[on/Interpreta[on Moore s Law Principle of Locality/Memory Hierarchy Parallelism Performance Improvement 8 4

5 Machine Interpreta4on Levels of Representa[on/ Interpreta[on High Level Language Program (e.g., C) Compiler Assembly Language Program (e.g., MIPS) Assembler Machine Language Program (MIPS) Hardware Architecture Descrip6on (e.g., block diagrams) Architecture Implementa4on Logic Circuit Descrip6on (Circuit Schema6c Diagrams) 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) Anything can be represented as a number, i.e., data or instruc[ons ! Predicts: 2X Transistors / chip every 2 years Moore s Law # of transistors on an integrated circuit (IC) Gordon Moore Intel Cofounder B.S. Cal 1950! Year 10 5

6 Principle of Locality/ Memory Hierarchy 11 Parallelism 12 6

7 Performance Improvement Matching applica[on to underlying hardware to exploit: Locality Parallelism Special hardware features, like specialized instruc[ons (e.g., matrix manipula[on) Latency How long to set the problem up How much faster does it execute once it gets going It is all about 'me to finish 13 Agenda Great Ideas in Computer Architecture Administrivia Technology Break How to Talk to a Computer 14 7

8 15 Course Informa[on Instructors: Randy Katz, Dave PaHerson Teaching Assistants: Andrew Gearhart, Michael Greenbaum, Conor Hughes, Charles Reiss Textbooks: PaHerson, Hennessey, Computer Organiza'on and Design, 4 th Edi[on Kernighan, Ritchie, The C Programming Language, 2 nd Edi[on Course Web: hhp://inst.eecs.berkeley.edu/~cs61c/fa10 Google Group: 61CFall2010UCB 16 8

9 Course Organiza[on Grading Class Par[cipa[on (5%) Homework (5%) Labs (20%) Projects (40%) Computer Instruc[on Set Simulator Data Parallelism (Map- Reduce on EC2) Computer Processor Design (Logisim) Effort Par'cipa'on Altruism Performance Tuning of a Parallel Applica[on (partnered) Midterm (10%) Final (20%)

10 The Rules (and we really mean it!) 19 Agenda Great Ideas in Computer Architecture Administrivia Technology Break How to Talk to a Computer 20 10

11 Agenda Great Ideas in Computer Architecture Administrivia Technology Break How to Talk to a Computer 21 Speaking to a Computer A word a computer understands called an instruc'on Vocabulary of all words a computer understands are called an instruc'on set Different computers may have different vocabularies (instruc[on sets) Computer vocabulary used in iphone is not same as computer vocabulary used in Macbook laptop Or the same vocabulary iphone and ipad computers have same instruc[on set Why not all the same? Why not all different? What might be pros and cons? 22 11

12 Instruc[on Set in this Class MIPS Invented by my co- author John Hennessy Standard instruc[on set for networking gear Elegant example of instruc[on sets called Reduced Instruc[on Set Computer (RISC) RISC: Limited vocabulary in number of words and in complexity of those words Most popular RISC is ARM (Advanced RISC Machine) 5 billion in 2010, in every cell phone (iphone, ipad, ipod, ) Another popular Instruc[on Set is used in Macbook and in PCs: Intel 80x86 in Core i3, Core i5, Core i7 1/20th as 80x86s made in 2010 (0.3 billion) 23 Example MIPS Instruc[ons Every computer does arithme[c Tell a computer to do addi[on? add a, b, c Add b to c and put sum into a Needs 3 operands: 2 sources + 1 des[na[on for sum Always just 1 opera[on per MIPS instruc[on How write same opera[on in Java? 24 12

13 Guess the other MIPS instruc[ons Subtract c from b and put difference in a? Mul[ply b by c and put product in a? Divide b by c and put quo[ent in a? 25 Guess the other MIPS instruc[ons Java operator &: c & b and put result in a? Java operator : c b and put result in a? Java operator <<: c << b and put result in a? Java operator >>: c >> b and put result in a? 26 13

14 Example Instruc[ons MIPS instruc[ons are inflexible, rigid: Just 1 arithme[c opera[on per instruc[on, Always with 3 operands How write this Java opera[on in MIPS? a = b + c + d + e 27 Comments in MIPS Can add comments to MIPS instruc[on by putng # that con[nues to end of line of text add a, b, c # b + c is placed in a. add a, a, d # b + c + d is now in a. add a, a, e # b + c + d + e is in a

15 Java to MIPS Operators almost iden[cal What is MIPS code that performs same as? a = b + c; d = a e; What is MIPS code that performs same as? f = (g + h) (i + j); 29 Peer Instruc[on For a given func[on, which programming language likely takes the most lines of code? I. Scheme II. Java III. MIPS instruc[ons Put the three representa[ons in order A. Most to least: I, II, III B. I, III, II C. II, III, I D. II, I, III E. III, II, I F. III, I, II 30 15

16 Summary Computer words called instruc[ons Computer vocabulary is instruc[on set MIPS is example instruc[on set in this class Rigid format: 1 opera[on, 2 source operands, 1 des[na[on add, sub, mult, div, and, or, shl, shr Like other programming languages, has comments to help programmer Simple mapping from arithme[c expression in Java to MIPS instru[ons 31 16

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

Agenda. Old School CS61c. Agenda. New School CS61c 8/26/10. CS 61C: Great Ideas in Computer Architecture (Machine Structures) Agenda CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10 1 Great Ideas in Computer Architecture Administrivia

More information

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Introduc)on to Machine Language

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Introduc)on to Machine Language CS 61C: Great Ideas in Computer Architecture (Machine Structures) Introduc)on to Machine Language TA: Sco? Beamer h?p://inst.eecs.berkeley.edu/~cs61c/sp12 1 New- School Machine Structures (It s a bit more

More information

9/9/12. New- School Machine Structures (It s a bit more complicated!) CS 61C: Great Ideas in Computer Architecture IntroducMon to Machine Language

9/9/12. New- School Machine Structures (It s a bit more complicated!) CS 61C: Great Ideas in Computer Architecture IntroducMon to Machine Language CS 61C: Great Ideas in Computer Architecture IntroducMon to Machine Language Instructors: Krste Asanovic Randy H. Katz h

More information

Agenda. Agenda. New School CS61c. Old School CS61c 8/24/12. CS 61C: Great Ideas in Computer Architecture (Machine Structures) Course Introduc?

Agenda. Agenda. New School CS61c. Old School CS61c 8/24/12. CS 61C: Great Ideas in Computer Architecture (Machine Structures) Course Introduc? Agenda CS 61C: Great Ideas in Computer Architecture (Machine Structures) Course Introduc?on Instructors: Krste Asanovic Randy H. Katz hgp://inst.eecs.berkeley.edu/~cs61c/f12 Great Ideas in Computer Architecture

More information

CS64 Computer Organization

CS64 Computer Organization CS64 Computer Organization Lecture 1 Prof. Heather Zheng (1) Your computer never complains about the # of languages you use.. 1 (2) The same program runs on almost all the computers? 2 How Computer Operates

More information

CS 61C: Great Ideas in Computer Architecture (Machine Structures)

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Agenda CS 6C: Great Ideas in Computer Architecture (Machine Structures) Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs6c/fa0 Review Operands of the Computer Memory and Addresses

More information

Agenda. CS 61C: Great Ideas in Computer Architecture (Machine Structures)

Agenda. CS 61C: Great Ideas in Computer Architecture (Machine Structures) CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10 1 Agenda Review Operands of the Computer Memory and

More information

Instructor: Randy H. Katz hap://inst.eecs.berkeley.edu/~cs61c/fa13. Fall Lecture #7. Warehouse Scale Computer

Instructor: Randy H. Katz hap://inst.eecs.berkeley.edu/~cs61c/fa13. Fall Lecture #7. Warehouse Scale Computer CS 61C: Great Ideas in Computer Architecture Everything is a Number Instructor: Randy H. Katz hap://inst.eecs.berkeley.edu/~cs61c/fa13 9/19/13 Fall 2013 - - Lecture #7 1 New- School Machine Structures

More information

CS 61C: Great Ideas in Computer Architecture Strings and Func.ons. Anything can be represented as a number, i.e., data or instruc\ons

CS 61C: Great Ideas in Computer Architecture Strings and Func.ons. Anything can be represented as a number, i.e., data or instruc\ons CS 61C: Great Ideas in Computer Architecture Strings and Func.ons Instructor: Krste Asanovic, Randy H. Katz hdp://inst.eecs.berkeley.edu/~cs61c/sp12 Fall 2012 - - Lecture #7 1 New- School Machine Structures

More information

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

CS61C Machine Structures. Lecture 1 Introduction. 8/27/2006 John Wawrzynek (Warzneck) CS61C Machine Structures Lecture 1 Introduction 8/27/2006 John Wawrzynek (Warzneck) (http://www.cs.berkeley.edu/~johnw/) http://www-inst.eecs.berkeley.edu/~cs61c/ CS 61C L01 Introduction (1) What are Machine

More information

CS 61C: Great Ideas in Computer Architecture Func%ons and Numbers

CS 61C: Great Ideas in Computer Architecture Func%ons and Numbers CS 61C: Great Ideas in Computer Architecture Func%ons and Numbers 9/11/12 Instructor: Krste Asanovic, Randy H. Katz hcp://inst.eecs.berkeley.edu/~cs61c/sp12 Fall 2012 - - Lecture #8 1 New- School Machine

More information

ECE 15B Computer Organization Spring 2011

ECE 15B Computer Organization Spring 2011 ECE 15B Computer Organization Spring 2011 Dmitri Strukov Lecture 1: Introduction Partially adapted from Computer Organization and Design, 4 th edition, Patterson and Hennessy, and classes taught by Patterson

More information

ECE 154A. Architecture. Dmitri Strukov

ECE 154A. Architecture. Dmitri Strukov ECE 154A Introduction to Computer Architecture Dmitri Strukov Lecture 1 Outline Admin What this class is about? Prerequisites ii Simple computer Performance Historical trends Economics 2 Admin Office Hours:

More information

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro Instructors: Vladimir Stojanovic & Nicholas Weaver http://inst.eecs.berkeley.edu/~cs61c/sp16 1 Machine Interpretation

More information

CS 61C: Great Ideas in Computer Architecture. Course Introduction, Number Representation

CS 61C: Great Ideas in Computer Architecture. Course Introduction, Number Representation CS 61C: Great Ideas in Computer Architecture Course Introduction, Number Representation Instructor: Justin Hsia 6/18/2012 Summer 2012 Lecture #1 1 Introducing Your Instructor I m not a professor call me

More information

CS 61C: Great Ideas in Computer Architecture. Course Introduction, Number Representation

CS 61C: Great Ideas in Computer Architecture. Course Introduction, Number Representation CS 61C: Great Ideas in Computer Architecture Course Introduction, Number Representation Instructor: Justin Hsia 6/24/2013 Summer 2013 Lecture #1 1 Introducing Your Instructor I m not a professor call me

More information

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Course Summary

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Course Summary CS 61C: Great Ideas in Computer Architecture (Machine Structures) Course Summary Instructor: Michael Greenbaum 8/9/2011 Summer 2011 -- Lecture #30 1 Agenda Course Summary Administrivia/Project 2 Results

More information

CS 61C Great Ideas in Computer Architecture (a.k.a. Machine Structures) Lecture 1: Course Introduction

CS 61C Great Ideas in Computer Architecture (a.k.a. Machine Structures) Lecture 1: Course Introduction CS 61C Great Ideas in Computer Architecture (a.k.a. Machine Structures) Lecture 1: Course Introduction Instructors: Bernhard Boser Randy H. Katz http://inst.eecs.berkeley.edu/~cs61c/ Agenda Thinking about

More information

ECE 15B COMPUTER ORGANIZATION

ECE 15B COMPUTER ORGANIZATION ECE 15B COMPUTER ORGANIZATION What are Computing Systems? CMOS Camera (courtesy of Samsung Electronics Co., Ltd) Lecture 1 Introduction Dr. Rahul Singh UCLA Gonda Robotic Surgery Center da Vinci surgical

More information

CS 61C: Great Ideas in Computer Architecture. MIPS Instruc,on Representa,on II. Dan Garcia

CS 61C: Great Ideas in Computer Architecture. MIPS Instruc,on Representa,on II. Dan Garcia CS 61C: Great Ideas in Computer Architecture MIPS Instruc,on Representa,on II Dan Garcia 1 Review of Last Lecture Simplifying MIPS: Define instruc?ons to be same size as data word (one word) so that they

More information

CS 110 Computer Architecture. Lecture 2: Introduction to C, Part I. Instructor: Sören Schwertfeger.

CS 110 Computer Architecture. Lecture 2: Introduction to C, Part I. Instructor: Sören Schwertfeger. CS 110 Computer Architecture Lecture 2: Introduction to C, Part I Instructor: Sören Schwertfeger http://shtech.org/courses/ca/ School of Information Science and Technology SIST ShanghaiTech University

More information

CS 61C: Great Ideas in Computer Architecture (Machine Structures) More MIPS Machine Language

CS 61C: Great Ideas in Computer Architecture (Machine Structures) More MIPS Machine Language CS 61C: Great Ideas in Computer Architecture (Machine Structures) More MIPS Machine Language Instructors: Randy H. Katz David A. PaGerson hgp://inst.eecs.berkeley.edu/~cs61c/sp11 1 2 Machine Interpreta4on

More information

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

Intro to Math 230 Assembly Language Programming. Lecture # 01 01/15/08 Intro to Math 230 Assembly Language Programming Lecture # 01 01/15/08 Lecture Overview Course Overview Short history of industry trends and motivation for course need Lab: command line environment review

More information

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

CS61C Machine Structures. Lecture 8 - Introduction to the MIPS Processor and Assembly Language. 9/14/2007 John Wawrzynek CS61C Machine Structures Lecture 8 - Introduction to the MIPS Processor and Assembly Language 9/14/2007 John Wawrzynek (www.cs.berkeley.edu/~johnw) www-inst.eecs.berkeley.edu/~cs61c/ CS 61C L08 C Introduction

More information

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

CS61C C/Assembler Operators and Operands Lecture 2 January 22, 1999 Dave Patterson (http.cs.berkeley.edu/~patterson) CS61C C/Assembler Operators and Operands Lecture 2 January 22, 1999 Dave Patterson (http.cs.berkeley.edu/~patterson) www-inst.eecs.berkeley.edu/~cs61c/schedule.html cs 61C L2 Asm Ops.1 Machine Structures

More information

CS 61C: Great Ideas in Computer Architecture Introduc=on to C, Part I. We are here!

CS 61C: Great Ideas in Computer Architecture Introduc=on to C, Part I. We are here! Agenda CS 61C: Great Ideas in Computer Architecture Introduc=on to C, Part I Instructors: Krste Asanovic Randy H. Katz hgp://inst.eecs.berkeley.edu/~cs61c/f12 Review Compile vs. Interpret Python vs. Java

More information

CS 61C: Great Ideas in Computer Architecture Direct- Mapped Caches. Increasing distance from processor, decreasing speed.

CS 61C: Great Ideas in Computer Architecture Direct- Mapped Caches. Increasing distance from processor, decreasing speed. CS 6C: Great Ideas in Computer Architecture Direct- Mapped s 9/27/2 Instructors: Krste Asanovic, Randy H Katz hdp://insteecsberkeleyedu/~cs6c/fa2 Fall 2 - - Lecture #4 New- School Machine Structures (It

More information

CS 110 Computer Architecture. Lecture 2: Introduction to C, Part I. Instructor: Sören Schwertfeger.

CS 110 Computer Architecture. Lecture 2: Introduction to C, Part I. Instructor: Sören Schwertfeger. CS 110 Computer Architecture Lecture 2: Introduction to C, Part I Instructor: Sören Schwertfeger http://shtech.org/courses/ca/ School of Information Science and Technology SIST ShanghaiTech University

More information

CS 61c: Great Ideas in Computer Architecture

CS 61c: Great Ideas in Computer Architecture Introduction and Number Representation June 23, 2014 Introducing Your Instructor I m not big on formalities, just call me Alan. Upbringing: Born in Cleveland Raised primarily in LA Education: B.S. in EECS

More information

CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and RISC-V Instruction Set Architecture

CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and RISC-V Instruction Set Architecture CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and RISC-V Instruction Set Architecture Instructors: Krste Asanović & Randy H. Katz http://inst.eecs.berkeley.edu/~cs61c 9/7/17

More information

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

Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10. Fall Lecture #9. Agenda CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10 Fall 2010 - - Lecture #9 1 Agenda InstrucTon Stages

More information

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

CS430 - Computer Architecture William J. Taffe Fall 2002 using slides from. CS61C - Machine Structures Dave Patterson Fall 2000 CS430 - Computer Architecture William J. Taffe Fall 2002 using slides from CS61C - Machine Structures Dave Patterson Fall 2000 CS 430 Intro.1 WJ Taffe, Fall 2002 Overview Intro to Machine Structures Organization

More information

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

CS61C Machine Structures. Lecture 1 Introduction. 8/25/2003 Brian Harvey. John Wawrzynek (Warznek) www-inst.eecs.berkeley. 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

More information

CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and MIPS Instruction Set Architecture

CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and MIPS Instruction Set Architecture CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and MIPS Instruction Set Architecture Instructors: Bernhard Boser & Randy H. Katz http://inst.eecs.berkeley.edu/~cs61c/fa16

More information

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro 1 Levels of Representation/Interpretation Machine Interpretation High Level Language Program (e.g., C) Compiler Assembly

More information

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

levels (layers) of abstraction I stand on the shoulders of giants Lecture #1 Introduction Are Computers Smart? Where does CS61C fit in? CS61C L01 Introduction (1) inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #1 Introduction 2006-08-28 There are two handouts today at the front and middle of the room! I stand on the shoulders

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #31 Summary & Goodbye 2007-8-16 Scott Beamer, Instructor Cityware Research Project Connects Bluetooth Users on Facebook CS61C L31 Summary

More information

Agenda. General Organiza/on and architecture Structural/func/onal view of a computer Evolu/on/brief history of computer.

Agenda. General Organiza/on and architecture Structural/func/onal view of a computer Evolu/on/brief history of computer. UNIT I: OVERVIEW Agenda General Organiza/on and architecture Structural/func/onal view of a computer Evolu/on/brief history of computer. Architecture & Organiza/on Computer Architecture is those abributes

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #1 Introduction 2007-01-17 There are two handouts today at the front and middle of the room! CS61C L01 Introduction (1) Lecturer SOE Dan

More information

Computer Architecture. Fall Dongkun Shin, SKKU

Computer Architecture. Fall Dongkun Shin, SKKU Computer Architecture Fall 2018 1 Syllabus Instructors: Dongkun Shin Office : Room 85470 E-mail : dongkun@skku.edu Office Hours: Wed. 15:00-17:30 or by appointment Lecture notes nyx.skku.ac.kr Courses

More information

MIPS Instruc,ons CS 64: Computer Organiza,on and Design Logic Lecture #8

MIPS Instruc,ons CS 64: Computer Organiza,on and Design Logic Lecture #8 MIPS Instruc,ons CS 64: Computer Organiza,on and Design Logic Lecture #8 Ziad Matni Dept. of Computer Science, UCSB Administra:ve Your midterm exam is next week on Thurs. 2/15 2/8/18 Matni, CS64, Wi18

More information

CSSE232 Computer Architecture. Introduc5on

CSSE232 Computer Architecture. Introduc5on CSSE232 Computer Architecture Introduc5on Reading Be:er for you if done before class For today: Ch 1 (esp 1.1-3, 10) App. C Sec5ons 2.4, 3.1-2 Outline Introduc5ons Class details Syllabus, website, schedule

More information

Agenda. Review 2/10/11. CS 61C: Great Ideas in Computer Architecture (Machine Structures)

Agenda. Review 2/10/11. CS 61C: Great Ideas in Computer Architecture (Machine Structures) CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instructors: Randy H. Katz David A. PaGerson hgp://inst.eecs.berkeley.edu/~cs61c/sp11 1 2 New- School Machine Structures (It s a bit more

More information

CS 61C: Great Ideas in Computer Architecture Lecture 2: Introduction to C, Part I

CS 61C: Great Ideas in Computer Architecture Lecture 2: Introduction to C, Part I CS 61C: Great Ideas in Computer Architecture Lecture 2: Introduction to C, Part I Instructors: Vladimir Stojanovic & Nicholas Weaver http://inst.eecs.berkeley.edu/~cs61c/ 1 Agenda Everything is a Number

More information

CSE Introduction to Computer Architecture

CSE Introduction to Computer Architecture -- Introduction to Computer Architecture What is Computer Architecture? (am I in the right class?) Hardware Designer thinks about circuits, components, timing, functionality, ease of debugging Computer

More information

W1005 Intro to CS and Programming in MATLAB. Brief History of Compu?ng. Fall 2014 Instructor: Ilia Vovsha. hip://www.cs.columbia.

W1005 Intro to CS and Programming in MATLAB. Brief History of Compu?ng. Fall 2014 Instructor: Ilia Vovsha. hip://www.cs.columbia. W1005 Intro to CS and Programming in MATLAB Brief History of Compu?ng Fall 2014 Instructor: Ilia Vovsha hip://www.cs.columbia.edu/~vovsha/w1005 Computer Philosophy Computer is a (electronic digital) device

More information

An example Request R1 for 100 bytes Request R2 for 1 byte Memory from R1 is freed Request R3 for 50 bytes What if R3 was a request for 101 bytes?

An example Request R1 for 100 bytes Request R2 for 1 byte Memory from R1 is freed Request R3 for 50 bytes What if R3 was a request for 101 bytes? Agenda CS 61C: Great Ideas in Computer Architecture: Malloc Examples, Introduction to Machine Language Instructor: Michael Greenbaum http://inst.eecs.berkeley.edu/~cs61c/su11 Malloc Review and Examples

More information

Lecture #6 Intro MIPS; Load & Store

Lecture #6 Intro MIPS; Load & Store CS61C L6 Intro MIPS ; Load & Store (1) inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #6 Intro MIPS; Load & Store 2007-7-3 Scott Beamer, Instructor Interesting Research on Social Sites

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #1 Introduction 2008-01-23 There is one handout today at the front and middle of the room! CS61C L01 Introduction (1) Lecturer SOE Dan Garcia

More information

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

I stand on the shoulders of giants. Lecture #1 Introduction Where does CS61C fit in? Are Computers Smart? CS61C L01 Introduction (1) inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #1 Introduction 2008-01-23 There is one handout today at the front and middle of the room! I stand on the shoulders

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c/su06 CS61C : Machine Structures Lecture #14: Combinational Logic, Gates, and State 2006-07-20 CS 61C L14 Combinational Logic (1) Andy Carle What are Machine Structures? Software

More information

CS 61C: Great Ideas in Computer Architecture RISC-V Instruction Formats

CS 61C: Great Ideas in Computer Architecture RISC-V Instruction Formats CS 61C: Great Ideas in Computer Architecture RISC-V Instruction Formats Instructors: Krste Asanović and Randy H. Katz http://inst.eecs.berkeley.edu/~cs61c/fa17 9/14/17 Fall 2017 - Lecture #7 1 Levels of

More information

9/14/17. Levels of Representation/Interpretation. Big Idea: Stored-Program Computer

9/14/17. Levels of Representation/Interpretation. Big Idea: Stored-Program Computer CS 61C: Great Ideas in Computer Architecture RISC-V Instruction Formats Instructors: Krste Asanović and Randy H. Katz http://inst.eecs.berkeley.edu/~cs61c/fa17 Fall 2017 - Lecture #7 1 Levels of Representation/Interpretation

More information

Computer Architecture

Computer Architecture Computer Architecture Virendra Singh Associate Professor Computer Architecture and Dependable Systems Lab Department of Electrical Engineering Indian Institute of Technology Bombay http://www.ee.iitb.ac.in/~viren/

More information

CS 61C: Great Ideas in Computer Architecture. Lecture 3: Pointers. Krste Asanović & Randy Katz

CS 61C: Great Ideas in Computer Architecture. Lecture 3: Pointers. Krste Asanović & Randy Katz CS 61C: Great Ideas in Computer Architecture Lecture 3: Pointers Krste Asanović & Randy Katz http://inst.eecs.berkeley.edu/~cs61c Agenda Pointers in C Arrays in C This is not on the test Pointer arithmetic

More information

CS 61C: Great Ideas in Computer Architecture Compilers and Floa-ng Point. Today s. Lecture

CS 61C: Great Ideas in Computer Architecture Compilers and Floa-ng Point. Today s. Lecture CS 61C: Great Ideas in Computer Architecture s and Floa-ng Point Instructors: Krste Asanovic, Randy H. Katz hdp://inst.eecs.berkeley.edu/~cs61c/fa12 Fall 2012 - - Lecture #13 1 New- School Machine Structures

More information

CS3350B Computer Architecture. Introduction

CS3350B Computer Architecture. Introduction CS3350B Computer Architecture Winter 2015 Introduction Marc Moreno Maza www.csd.uwo.ca/courses/cs3350b What is a computer? 2 What is a computer? 3 What is a computer? 4 What is a computer? 5 The Computer

More information

CS 61C: Great Ideas in Computer Architecture. Lecture 2: Numbers & C Language. Krste Asanović & Randy Katz

CS 61C: Great Ideas in Computer Architecture. Lecture 2: Numbers & C Language. Krste Asanović & Randy Katz CS 61C: Great Ideas in Computer Architecture Lecture 2: Numbers & C Language Krste Asanović & Randy Katz http://inst.eecs.berkeley.edu/~cs61c Numbers wrap-up This is not on the exam! Break C Primer Administrivia,

More information

CS 61C: Great Ideas in Computer Architecture. Lecture 5: Intro to Assembly Language, MIPS Intro. Instructor: Sagar Karandikar

CS 61C: Great Ideas in Computer Architecture. Lecture 5: Intro to Assembly Language, MIPS Intro. Instructor: Sagar Karandikar CS 61C: Great Ideas in Computer Architecture Lecture 5: Intro to Assembly Language, MIPS Intro Instructor: Sagar Karandikar sagark@eecs.berkeley.edu hbp://inst.eecs.berkeley.edu/~cs61c 1 Machine Interpreta4on

More information

COMPUTER ORGANIZATION (CSE 2021)

COMPUTER ORGANIZATION (CSE 2021) COMPUTER ORGANIZATION (CSE 2021) HUGH CHESSER CSEB 1012U Agenda Introduction to course Context Hardware - Integrated Circuits (IC s) Software Assembly Language Reading: Patterson, Sections 1.1 1.3. CSE

More information

WELCOME TO CS 16! Enrollment status: 117/ Problem Solving with Computers-I

WELCOME TO CS 16! Enrollment status: 117/ Problem Solving with Computers-I WELCOME TO CS 16! Problem Solving with Computers-I https://ucsb-cs16-s18-mirza.github.io/ Enrollment status: 117/105 2 About me Diba Mirza (diba@ucsb.edu) PhD (Computer Engineering, UCSD) First year as

More information

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

CPE300: Digital System Architecture and Design. Fall 2011 MW 17:30-18:45 CBC C316 CPE300: Digital System Architecture and Design Fall 2011 MW 17:30-18:45 CBC C316 2 Outline Intro to Computer Systems and Architecture Need for this class Course objectives Views of the general purpose

More information

CS 465 Final Review. Fall 2017 Prof. Daniel Menasce

CS 465 Final Review. Fall 2017 Prof. Daniel Menasce CS 465 Final Review Fall 2017 Prof. Daniel Menasce Ques@ons What are the types of hazards in a datapath and how each of them can be mi@gated? State and explain some of the methods used to deal with branch

More information

EECE 321: Computer Organization

EECE 321: Computer Organization EECE 321: Computer Organization Mohammad M. Mansour Dept. of Electrical and Compute Engineering American University of Beirut Lecture 1: Introduction Administrative Instructor Dr. Mohammad M. Mansour,

More information

CS61C: Great Ideas in Computer Architecture (a.k.a. Machine Structures)

CS61C: Great Ideas in Computer Architecture (a.k.a. Machine Structures) CS61C: Great Ideas in Computer Architecture (a.k.a. Machine Structures) 1 Dr. John Wawrzynek Professor of EECS Profession Musician in New York JPL/NASA space craft data systems PhD Caltech electronic music

More information

CS 61C: Great Ideas in Computer Architecture More RISC-V Instructions and How to Implement Functions

CS 61C: Great Ideas in Computer Architecture More RISC-V Instructions and How to Implement Functions CS 61C: Great Ideas in Computer Architecture More RISC-V Instructions and How to Implement Functions Instructors: Krste Asanović and Randy H. Katz http://inst.eecs.berkeley.edu/~cs61c/fa17 9/14/17 Fall

More information

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

Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10. Fall Lecture #6. Agenda CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10 Fall 2010 - - Lecture #6 1 Agenda Review Overflow

More information

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

CPS104 Computer Organization Lecture 1. CPS104: Computer Organization. Meat of the Course. Robert Wagner CPS104 Computer Organization Lecture 1 Robert Wagner Slides available on: http://www.cs.duke.edu/~raw/cps104/lectures 1 CPS104: Computer Organization Instructor: Robert Wagner Office: LSRC D336, 660-6536

More information

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

IT 252 Computer Organization and Architecture. Introduction. Chia-Chi Teng IT 252 Computer Organization and Architecture Introduction Chia-Chi Teng What is computer architecture about? Computer architecture is the study of building computer systems. IT 252 is roughly split into

More information

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

Review: Performance Latency vs. Throughput. Time (seconds/program) is performance measure Instructions Clock cycles Seconds. Performance 980 98 982 983 984 985 986 987 988 989 990 99 992 993 994 995 996 997 998 999 2000 7/4/20 CS 6C: Great Ideas in Computer Architecture (Machine Structures) Caches Instructor: Michael Greenbaum

More information

CS61CL : Machine Structures

CS61CL : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61CL : Machine Structures Lecture #1 Introduction, C 2009-06-21 Jeremy Huddleston CS61CL L01 Introduction (1) Where does CS61C fit in? http://hkn.eecs.berkeley.edu/student/cs-prereq-chart1.gif

More information

Agenda. Components of a Computer. Computer Memory Type Name Addr Value. Pointer Type. Pointers. CS 61C: Great Ideas in Computer Architecture

Agenda. Components of a Computer. Computer Memory Type Name Addr Value. Pointer Type. Pointers. CS 61C: Great Ideas in Computer Architecture CS 61C: Great Ideas in Computer Architecture Krste Asanović & Randy Katz http://inst.eecs.berkeley.edu/~cs61c And in Conclusion, 2 Processor Control Datapath Components of a Computer PC Registers Arithmetic

More information

ECSE 425 Lecture 1: Course Introduc5on Bre9 H. Meyer

ECSE 425 Lecture 1: Course Introduc5on Bre9 H. Meyer ECSE 425 Lecture 1: Course Introduc5on 2011 Bre9 H. Meyer Staff Instructor: Bre9 H. Meyer, Professor of ECE Email: bre9 dot meyer at mcgill.ca Phone: 514-398- 4210 Office: McConnell 525 OHs: M 14h00-15h00;

More information

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro. Machine Interpreta4on

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro. Machine Interpreta4on CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro Instructors: Krste Asanovic & Vladimir Stojanovic hbp://inst.eecs.berkeley.edu/~cs61c/sp15 1 Levels of RepresentaKon/

More information

CPS104 Computer Organization Lecture 1

CPS104 Computer Organization Lecture 1 CPS104 Computer Organization Lecture 1 Robert Wagner Slides available on: http://www.cs.duke.edu/~raw/cps104/lectures 1 CPS104: Computer Organization Instructor: Robert Wagner Office: LSRC D336, 660-6536

More information

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

מבנה מחשבים Amar Lior Based on lectures notes from Arie Schlesinger מבנה מחשבים 2006 Amar Lior Based on lectures notes from Arie Schlesinger (aries@cs.columbia.edu) Adapted from Computer Organization&Design, H/S interface, Patterson Hennessy@UCB,1999 1 Administration Course

More information

Introduction to Computer Systems

Introduction to Computer Systems Introduction to Computer Systems Syllabus Web Page http://www.cs.northwestern.edu/~pdinda/icsclass Instructor Peter A. Dinda 1890 Maple Avenue, Room 338 847-467-7859 pdinda@cs.northwestern.edu Office hours:

More information

Agenda. Review. Costs of Set-Associative Caches

Agenda. Review. Costs of Set-Associative Caches Agenda CS 61C: Great Ideas in Computer Architecture (Machine Structures) Technology Trends and Data Level Instructor: Michael Greenbaum Caches - Replacement Policies, Review Administrivia Course Halfway

More information

COMPUTER ORGANIZATION (CSE 2021)

COMPUTER ORGANIZATION (CSE 2021) COMPUTER ORGANIZATION (CSE 2021) HUGH CHESSER LAS 1012U Agenda Introduction to course Context Hardware - Integrated Circuits (IC s) Software Assembly Language Reading: Patterson, Sections 1.1 1.3. CSE

More information

Agenda. CS 61C: Great Ideas in Computer Architecture. Lecture 2: Numbers & C Language 8/29/17. Recap: Binary Number Conversion

Agenda. CS 61C: Great Ideas in Computer Architecture. Lecture 2: Numbers & C Language 8/29/17. Recap: Binary Number Conversion CS 61C: Great Ideas in Computer Architecture Lecture 2: Numbers & C Language Krste Asanović & Randy Katz http://inst.eecs.berkeley.edu/~cs61c Numbers wrap-up This is not on the exam! Break C Primer Administrivia,

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures $2M 3D camera Lecture 8 MIPS Instruction Representation I Instructor: Miki Lustig 2014-09-17 August 25: The final ISA showdown: Is ARM, x86, or

More information

Two s Complement Review. Two s Complement Review. Agenda. Agenda 6/21/2011

Two s Complement Review. Two s Complement Review. Agenda. Agenda 6/21/2011 Two s Complement Review CS 61C: Great Ideas in Computer Architecture (Machine Structures) Introduction to C (Part I) Instructor: Michael Greenbaum http://inst.eecs.berkeley.edu/~cs61c/su11 Suppose we had

More information

Computer Systems Architecture Spring 2016

Computer Systems Architecture Spring 2016 Computer Systems Architecture Spring 2016 Lecture 01: Introduction Shuai Wang Department of Computer Science and Technology Nanjing University [Adapted from Computer Architecture: A Quantitative Approach,

More information

ECE 250 / CPS 250 Computer Architecture. Introduction

ECE 250 / CPS 250 Computer Architecture. Introduction ECE 250 / CPS 250 Computer Architecture Introduction Benjamin Lee Slides based on those from Andrew Hilton (Duke), Alvy Lebeck (Duke) Benjamin Lee (Duke), and Amir Roth (Penn) Instructor and Graduate TAs

More information

Lecture 2: Number Representa2on

Lecture 2: Number Representa2on CSE 30: Computer Organization and Systems Programming Lecture 2: Number Representa2on Diba Mirza University of California, San Diego 1 Levels of Representation High Level Language Program (e.g., C) Compiler

More information

Instructors: Randy H. Katz David A. PaGerson hgp://inst.eecs.berkeley.edu/~cs61c/fa10. 10/4/10 Fall Lecture #16. Agenda

Instructors: Randy H. Katz David A. PaGerson hgp://inst.eecs.berkeley.edu/~cs61c/fa10. 10/4/10 Fall Lecture #16. Agenda CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instructors: Randy H. Katz David A. PaGerson hgp://inst.eecs.berkeley.edu/~cs61c/fa10 1 Agenda Cache Sizing/Hits and Misses Administrivia

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 13 MIPS Instruction Representation I New 160 Megapixel camera!! The Seitz 6 x 17 panorama camera sells for $36K, and produces a 21,250 x

More information

WELCOME TO CS 16! Problem Solving with Computers-I.

WELCOME TO CS 16! Problem Solving with Computers-I. WELCOME TO CS 16! Problem Solving with Computers-I https://ucsb-cs16-sp17.github.io/ 2 Instructor Diba Mirza (dimirza@cs.ucsb.edu) PhD (Computer Engineering, UCSD) New teaching faculty at the department

More information

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

Instructor. ECE 152 Introduction to Computer Architecture. Course Website. Undergrad Teaching Assistants Instructor ECE 152 Introduction to Computer Architecture Intro and Overview Copyright 2009 Daniel J. Sorin Duke University Slides are derived from work by Amir Roth (Penn) and Alvy Lebeck (Duke) Spring

More information

CSE Introduction to Computer Architecture. Jeff Brown

CSE Introduction to Computer Architecture. Jeff Brown CSE 141-- Introduction to Computer Architecture What is Computer Architecture? Hardware Designer thinks about circuits, components, timing, functionality, ease of debugging construction engineer Computer

More information

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

Are Computers Smart? To a programmer: Lecture #1 Introduction & Numbers Andy Carle. Are Computers Smart? What are Machine Structures? CS 61C L01 Introduction + Numbers (1) insteecsberkeleyedu/~cs61c CS61C : Machine Structures Lecture #1 Introduction & Numbers 2006-06-26 Are Computers Smart? To a programmer: Very complex operations/functions:

More information

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

Handouts. (CSC-3501) Lecture 1 (15 Jan 2008) Seung-Jong Park (Jay) Class information. Schedule (check online frequently) Computer Architecture (CSC-3501) Lecture 1 (15 Jan 2008) Seung-Jong Park (Jay) http://www.csc.lsu.edu/~sjpark 1 Handouts Class information http://www.csc.lsu.edu/~sjpark/cs3501/overview.html Schedule (check

More information

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

Computer Architecture Computer Architecture. Computer Architecture. What is Computer Architecture? Grading 178 322 Computer Architecture Lecturer: Watis Leelapatra Office: 4301D Email: watis@kku.ac.th Course Webpage: http://gear.kku.ac.th/~watis/courses/178322/178322.html Computer Architecture Grading Midterm

More information

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

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction Ujjwal Guin, Assistant Professor Department of Electrical and Computer Engineering Auburn University, Auburn, AL 36849

More information

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

Inf2C - Computer Systems Lecture 1 Course overview & the big picture Inf2C - Computer Systems Lecture 1 Course overview & the big picture Boris Grot School of Informatics University of Edinburgh Practicalities Lectures: Tue 15:10 16:00 @ Appleton Tower, LT 2 Fri 15:10 16:00

More information

CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design

CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design 2014-1-21 John Lazzaro (not a prof - John is always OK) TA: Eric Love www-inst.eecs.berkeley.edu/~cs152/ Play: 1 Today s lecture

More information

CS 2630 Computer Organization. What did we accomplish in 15 weeks? Brandon Myers University of Iowa

CS 2630 Computer Organization. What did we accomplish in 15 weeks? Brandon Myers University of Iowa CS 2630 Computer Organization What did we accomplish in 15 weeks? Brandon Myers University of Iowa require slide from day 1 Why take 2630? The esoteric answer: Computer Science graduates should have an

More information

Computer Architecture

Computer Architecture 188 322 Computer Architecture Lecturer: Watis Leelapatra Office: 4301D Email: watis@kku.ac.th Course Webpage http://gear.kku.ac.th/~watis/courses/188322/188322.html 188 322 Computer Architecture Grading

More information

CSSE232 Computer Architecture I. Datapath

CSSE232 Computer Architecture I. Datapath CSSE232 Computer Architecture I Datapath Class Status Reading Sec;ons 4.1-3 Project Project group milestone assigned Indicate who you want to work with Indicate who you don t want to work with Due next

More information

EE108B Lecture 2 MIPS Assembly Language I. Christos Kozyrakis Stanford University

EE108B Lecture 2 MIPS Assembly Language I. Christos Kozyrakis Stanford University EE108B Lecture 2 MIPS Assembly Language I Christos Kozyrakis Stanford University http://eeclass.stanford.edu/ee108b 1 Announcements EE undergrads: EE108A and CS106B Everybody else: E40 and CS106B (or equivalent)

More information