CS152 Computer Architecture and Engineering Lecture 1 Introduction and Five Components of a Computer January 21, 2004 John Kubiatowicz (www.cs.berkeley.edu/~kubitron)

Slides:



Advertisements
Similar presentations
CEG3420 L1 Intro.1 Copyright (C) 1998 UCB CEG3420 Computer Design Lecture 1 Philip Leong.
Advertisements

CSE 340 Computer Architecture Spring 2014 MIPS ISA Review
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
CPSC 321 Computer Architecture Fall 2006 Lecture 1 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Copyright.
CPE 731 Advanced Computer Architecture Instruction Set Principles Dr. Gheith Abandah Adapted from the slides of Prof. David Patterson, University of California,
CPSC 321 Computer Architecture Spring 2005 Lecture 1 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Adapted.
EEM 486 EEM 486: Computer Architecture Lecture 1 Course Introduction and the Five Components of a Computer.
מבנה מחשבים הרצאה 1 מבנה מחשבים Lecture 1 Course Introduction Eytan Ruppin and Alon Schclar Slides from Randy H. Katz, John Wawrzynek and Dan Garcia Berkeley.
ENEE350 Spring07 1 Ankur Srivastava University of Maryland, College Park Adapted from Computer Organization and Design, Patterson & Hennessy, © 2005.”
CS152 / Kubiatowicz Lec1.1 ©UCB Spring 20011/16/01 CS152 Computer Architecture and Engineering Lecture 1 Introduction and Five Components of a Computer.
מבנה מחשבים הרצאה 1 מבנה מחשבים Lecture 1 Course Introduction Yehuda Afek and Yossi Matias Slides from Randy H. Katz, and John Wawrzynek Berkeley.
ECE 232 L2 Basics.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 2 Computer.
CS472 COMPUTER ARCHITECTURE AND ASSEMBLY LANGUAGE –Bruce D’Ambrosio Dearborn, –Text: Computer Organization and Design.
1  2004 Morgan Kaufmann Publishers Lectures for 3rd Edition Note: these lectures are often supplemented with other materials and also problems from the.
CPEN Digital System Design Chapter 10 – Instruction SET Architecture (ISA) © Logic and Computer Design Fundamentals, 4 rd Ed., Mano Prentice Hall.
CS / Schlesinger Lec1.1 1/20/99©UCB Spring 1999 Computer Architecture Lecture 1 Introduction and Five Components of a Computer Spring, 1999 Arie Schlesinger.
1 CSE SUNY New Paltz Chapter 1 Introduction CSE-45432Introduction to Computer Architecture Dr. Izadi.
CIS 314 : Computer Organization Lecture 1 – Introduction.
CS152 Computer Architecture and Engineering Lecture 1 Introduction and Five Components of a Computer January 21, 2004 John Kubiatowicz (
ELEN 350 Computer Architecture Spring 2005 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Adapted from CPSC.
CS152 / Kubiatowicz Lec1.1 1/20/99©UCB Spring 1999 CS152 Computer Architecture and Engineering Lecture 1 Introduction and Five Components of a Computer.
CS152 / Kubiatowicz Lec1.1 ©UCB Fall 19998/23/99 CS152 Computer Architecture and Engineering Lecture 1 Introduction and Five Components of a Computer August.
August 26 TA: Angela Van Osdol Questions?. What is a computer? Tape drives? Big box with lots of lights? Display with huge letters? Little box with no.
ECE 232 L1 Intro.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 1 Introduction.
CS152 / Spring 2002 Lec1.1 CS152 Computer Architecture and Engineering Lecture 1 Introduction and Five Components of a Computer.
CENG311 Computer Architecture Kayhan Erciyes. CS231 Assembly language and Digital Circuits Instructor:Kayhan Erciyes Office:
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
Cs 152 L1 Intro.1 Patterson Fall 97 ©UCB ECE 366 Computer Architecture Lecture 1-2 Shantanu Dutt ( Adapted from (with adds.
Summary: Computer System Components Proc Caches Busses Memory I/O Devices: Controllers adapters Disks Displays Keyboards Networks.
Digital Systems Design L01 Introduction.1 Digital Systems Design Lecture 01: Introduction Adapted from: Mary Jane Irwin ( )
Compsci Today’s topics l Binary Numbers  Brookshear l Computer Architecture  Notes from David A. Patterson and John L. Hennessy, Computer.
Cs 152 L1 Intro.1 Patterson Fall 97 ©UCB What is “Computer Architecture” Computer Architecture = Instruction Set Architecture + Machine Organization.
Patterson Fall 97 ©UCB CS/EE 362 Hardware Fundamentals Lecture 8 (Chapter 1: Hennessy and Patterson) Winter Quarter 1998 Chris Myers.
International Technology University CEN 951 Computer Architecture Lecture 2 Five Components of a Computer.
COMP3221 lec04--prog-model.1 Saeid Nooshabadi COMP 3221 Microprocessors and Embedded Systems Lecture 4: Programmer’s Model of Microprocessors
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 12 Overview and Concluding Remarks.
Computer Organization and Design Computer Abstractions and Technology
Computer Architecture Mehran Rezaei
CS35101 Computer Architecture Spring 2006 Week 1 Slides adapted from: Mary Jane Irwin ( Course url:
Cps-104 Intro.1 ©GK Spring 1999 CPS104 Computer Organization Lecture 1 January 14, 1999 Gershon Kedem Slides available on:
CS152 / Fall 2002 Lec 1.1 Computer Organization Lecture 1 Course Introduction and the Five Components of a Computer Modified From the Lectures of Randy.
Computer System Design Lecture 1 Wannarat Suntiamorntut.
Introduction to Computer Organization
by Computer System Design Lecture 1 Wannarat Suntiamorntut
Computer Organization CS224 Fall 2012 Lesson 22. The Big Picture  The Five Classic Components of a Computer  Chapter 4 Topic: Processor Design Control.
Computer Architecture CPSC 350
 Lecture 2 Processor Organization  Control needs to have the  Ability to fetch instructions from memory  Logic and means to control instruction sequencing.
CPSC 321 Computer Architecture Summer 2005 Lecture 1 Introduction and Five Components of a Computer Praveen Bhojwani Adapted from CS 152 Spring 2002 UC.
1 chapter 1 Computer Architecture and Design ECE4480/5480 Computer Architecture and Design Department of Electrical and Computer Engineering University.
Lecture 1: Computer Architecture and Technology Professor Mike Schulte Computer Architecture ECE 201.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
EEL5708/Bölöni Lec 3.1 Fall 2006 Sept 1, 2006 Lotzi Bölöni EEL 5708 High Performance Computer Architecture Lecture 3 Review: Instruction Sets.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization.
CSIE30300 Computer Architecture Unit 01: Introduction Hsin-Chou Chi [Adapted from material by and
Compsci Today’s topics l Operating Systems  Brookshear, Chapter 3  Great Ideas, Chapter 10  Slides from Kevin Wayne’s COS 126 course l Performance.
EEL5708/Bölöni Lec 3.1 Fall 2004 Sept 1, 2004 Lotzi Bölöni Fall 2004 EEL 5708 High Performance Computer Architecture Lecture 3 Review: Instruction Sets.
Cs 152 L1 Intro.1 Patterson Fall 97 ©UCB CS152 Computer Architecture and Engineering Lecture 1 August 27, 1997 Dave Patterson (http.cs.berkeley.edu/~patterson)
1 TM 1 Embedded Systems Lab./Honam University ARM Microprocessor Programming Model.
1 CHAPTER 1 COMPUTER ABSTRACTIONS AND TECHNOLOGY Parts of these notes have been adapter from those of Prof. Professor Mike Schulte, Prof. D. Patterson,
New-School Machine Structures Parallel Requests Assigned to computer e.g., Search “Katz” Parallel Threads Assigned to core e.g., Lookup, Ads Parallel Instructions.
By Wannarat Computer System Design Lecture 1 Wannarat Suntiamorntut.
CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十九年度第二學期.
CS152 / Kubiatowicz Lec1.1 ©UCB Spring 20031/22/03 CS152 Computer Architecture and Engineering Lecture 1 Introduction and Five Components of a Computer.
Computer Organization and Architecture Lecture 1 : Introduction
Computer Architecture CSCE 350
Appendix A Classifying Instruction Set Architecture
T Computer Architecture, Autumn 2005
Guest Lecturer TA: Shreyas Chand
COMS 361 Computer Organization
CS4100: 計算機結構 Course Outline
Presentation transcript:

CS152 Computer Architecture and Engineering Lecture 1 Introduction and Five Components of a Computer January 21, 2004 John Kubiatowicz ( lecture slides:

CS152 / Kubiatowicz Lec1.2 1/21/04©UCB Spring 2004 What is “Computer Architecture” Computer Architecture = Instruction Set Architecture + Machine Organization + …..

CS152 / Kubiatowicz Lec1.3 1/21/04©UCB Spring 2004 Instruction Set Architecture (subset of Computer Arch.)... the attributes of a [computing] system as seen by the programmer, i.e. the conceptual structure and functional behavior, as distinct from the organization of the data flows and controls the logic design, and the physical implementation. – Amdahl, Blaaw, and Brooks, 1964SOFTWARE -- Organization of Programmable Storage -- Data Types & Data Structures: Encodings & Representations -- Instruction Set -- Instruction Formats -- Modes of Addressing and Accessing Data Items and Instructions -- Exceptional Conditions

CS152 / Kubiatowicz Lec1.4 1/21/04©UCB Spring 2004 °1950s to 1960s: Computer Architecture Course: Computer Arithmetic °1970s to mid 1980s: Computer Architecture Course: Instruction Set Design, especially ISA appropriate for compilers °1990s: Computer Architecture Course: Design of CPU, memory system, I/O system, Multiprocessors, Networks °2010s: Computer Architecture Course: Self adapting systems? Self organizing structures? DNA Systems/Quantum Computing? Computer Architecture’s Changing Definition

CS152 / Kubiatowicz Lec1.5 1/21/04©UCB Spring 2004 The Instruction Set: a Critical Interface instruction set software hardware

CS152 / Kubiatowicz Lec1.6 1/21/04©UCB Spring 2004 Example ISAs (Instruction Set Architectures) °Digital Alpha(v1, v3) °HP PA-RISC(v1.1, v2.0) °Sun Sparc(v8, v9) °SGI MIPS(MIPS I, II, III, IV, V) °Intel(8086,80286,80386, ,Pentium, MMX,...)

CS152 / Kubiatowicz Lec1.7 1/21/04©UCB Spring 2004 MIPS R3000 Instruction Set Architecture (Summary) °Instruction Categories Load/Store Computational Jump and Branch Floating Point -coprocessor Memory Management Special R0 - R31 PC HI LO OP rs rt rdsafunct rs rt immediate jump target 3 Instruction Formats: all 32 bits wide Registers Q: How many already familiar with MIPS ISA?

CS152 / Kubiatowicz Lec1.8 1/21/04©UCB Spring 2004 Organization Logic Designer's View ISA Level FUs & Interconnect °Capabilities & Performance Characteristics of Principal Functional Units (e.g., Registers, ALU, Shifters, Logic Units,...) °Ways in which these components are interconnected °Information flows between components °Logic and means by which such information flow is controlled. °Choreography of FUs to realize the ISA °Register Transfer Level (RTL) Description

CS152 / Kubiatowicz Lec1.9 1/21/04©UCB Spring 2004 The Big Picture Control Datapath Memory Processor Input Output °Since 1946 all computers have had 5 components

CS152 / Kubiatowicz Lec1.10 1/21/04©UCB Spring 2004 Sample Organization: It’s all about communication °All have interfaces & organizations °Um…. It’s the network???! Proc Caches Busses Memory I/O Devices: Controllers adapters Disks Displays Keyboards Networks Pentium III Chipset

CS152 / Kubiatowicz Lec1.11 1/21/04©UCB Spring 2004 What is “Computer Architecture”? I/O systemInstr. Set Proc. Compiler Operating System Application Digital Design Circuit Design Instruction Set Architecture Firmware °Coordination of many levels of abstraction °Under a rapidly changing set of forces °Design, Measurement, and Evaluation Datapath & Control Layout

CS152 / Kubiatowicz Lec1.12 1/21/04©UCB Spring 2004 Forces on Computer Architecture Computer Architecture Technology Programming Languages Operating Systems History Applications Cleverness

CS152 / Kubiatowicz Lec1.13 1/21/04©UCB Spring 2004 Technology °In ~1985 the single-chip processor (32-bit) and the single-board computer emerged => workstations, personal computers, multiprocessors have been riding this wave since °In the timeframe, these may well look like mainframes compared single-chip computer (maybe 2 chips) DRAM YearSize Kb Kb Mb Mb Mb Mb Mb Gb Microprocessor Logic DensityDRAM chip capacity

CS152 / Kubiatowicz Lec1.14 1/21/04©UCB Spring 2004 Technology => dramatic change °Processor logic capacity: about 30% per year clock rate: about 20% per year °Memory DRAM capacity: about 60% per year (4x every 3 years) Memory speed: about 10% per year Cost per bit: improves about 25% per year °Disk capacity: about 60% per year Total use of data: 100% per 9 months! °Network Bandwidth Bandwidth increasing more than 100% per year!

CS152 / Kubiatowicz Lec1.15 1/21/04©UCB Spring 2004 Performance Trends Microprocessors Minicomputers Mainframes Supercomputers 1995 Year Log of Performance

CS152 / Kubiatowicz Lec1.16 1/21/04©UCB Spring 2004 Processor Performance (SPEC) RISC introduction Did RISC win the technology battle and lose the market war? performance now improves ~60% per year (2x every 1.5 years)

CS152 / Kubiatowicz Lec1.17 1/21/04©UCB Spring 2004 Applications and Languages °CAD, CAM, CAE,... °Lotus, DOS,... °Multimedia,... °The Web,... °JAVA,... °The Net => ubiquitous computing °???

CS152 / Kubiatowicz Lec1.18 1/21/04©UCB Spring 2004 Measurement and Evaluation Architecture is an iterative process -- searching the space of possible designs -- at all levels of computer systems Good Ideas Mediocre Ideas Bad Ideas Cost / Performance Analysis Design Analysis Creativity

CS152 / Kubiatowicz Lec1.19 1/21/04©UCB Spring 2004 Computers in the News: New IBM Transistor °Announced 12/10/02 °6nm gate length!!! °Details: Still to be announced

CS152 / Kubiatowicz Lec1.20 1/21/04©UCB Spring 2004 Computers in the news: Tunneling Magnetic Junction

CS152 / Kubiatowicz Lec1.21 1/21/04©UCB Spring 2004 Computers in the News: Sony Playstation 2000 °(as reported in Microprocessor Report, Vol 13, No. 5) Emotion Engine: 6.2 GFLOPS, 75 million polygons per second Graphics Synthesizer: 2.4 Billion pixels per second Claim: Toy Story realism brought to games!

CS152 / Kubiatowicz Lec1.22 1/21/04©UCB Spring 2004 Where are we going?? CS152 Spring ‘99  Arithmetic Single/multicycle Datapaths IFetchDcdExecMemWB IFetchDcdExecMemWB IFetchDcdExecMemWB IFetchDcdExecMemWB PipeliningMemory Systems I/O

CS152 / Kubiatowicz Lec1.23 1/21/04©UCB Spring 2004 Maybe even Quantum Computing: Use of “Spin” °Particles like Protons have an intrinsic “Spin” when defined with respect to an external magnetic field °Kane Proposal: use of impurity Phosphorus in silicon Spin of odd proton is used to represent the bit Manipulation of this bit via “Hyperfine” interaction with electrons °Quantum Computers: Factor numbers in Polynomial time! Classically this is (sub)exponential problem Just cool? North South Spin ½ particle: (Proton/Electron) Representation: |0> or |1>

CS152 / Kubiatowicz Lec1.24 1/21/04©UCB Spring 2004 CS152: So what's in it for me? °In-depth understanding of the inner-workings of modern computers, their evolution, and trade-offs present at the hardware/software boundary. Insight into fast/slow operations that are easy/hard to implementation hardware Out of order execution and branch prediction °Experience with the design process in the context of a large complex (hardware) design. Functional Spec --> Control & Datapath --> Physical implementation Modern CAD tools °BUILD A REAL PROCESSOR You will build pipelines that operate in realtime Some of you may even design out-of-order processors °Designer's "Conceptual" toolbox.

CS152 / Kubiatowicz Lec1.25 1/21/04©UCB Spring 2004 Conceptual tool box? °Evaluation Techniques/Testing methodologies °Levels of translation (e.g., Compilation) °Levels of Interpretation (e.g., Microprogramming) °Hierarchy (e.g, registers, cache, mem,disk,tape) °Pipelining and Parallelism °Static / Dynamic Scheduling °Indirection and Address Translation °Synchronous and Asynchronous Control Transfer °Timing, Clocking, and Latching °CAD Programs, Hardware Description Languages, Simulation °Physical Building Blocks (e.g., CLA) °Understanding Technology Trends

CS152 / Kubiatowicz Lec1.26 1/21/04©UCB Spring 2004 Course Structure ° Design Intensive Class to 150 hours per semester per student MIPS Instruction Set ---> Standard-Cell implementation ° Modern CAD System (WorkView): Schematic capture and Simulation Design Description Computer-based "breadboard" Behavior over time Before construction °Lectures (rough breakdown): Review: 2 weeks on ISA, arithmetic, Logic, Verilog 1 1/2 weeks on technology, HDL, and arithmetic 3 1/2 weeks on testing, standard Proc. Design and pipelining 1 1/2 weeks on advanced pipelining and modern superscalar design 2 weeks on memory and caches 1 1/2 weeks on Memory and I/O ?? Guest lectures/Special lectures (Quantum computing?) 2 weeks exams, presentations

CS152 / Kubiatowicz Lec1.27 1/21/04©UCB Spring 2004 Project Simulates Industrial Environment °Project teams have 4 or 5 members in same discussion section Must work in groups in “the real world” °Communicate with colleagues (team members) Communication problems are natural What have you done? What answers you need from others? You must document your work!!! Everyone must keep an on-line notebook °Communicate with supervisor (TAs) How is the team’s plan? Short progress reports are required: -What is the team’s game plan? -What is each member’s responsibility?

CS152 / Kubiatowicz Lec1.28 1/21/04©UCB Spring 2004 Things We Hope You Will Learn from 152 °Keep it simple and make it work Fully test everything individually and then together Retest everything whenever you make any changes Last minute changes are big “no nos” °Group dynamics. Communication is the key to success: Be open with others of your expectations and your problems Everybody should be there on design meetings when key decisions are made and jobs are assigned °Planning is very important: Promise what you can deliver; deliver more than you promise Murphy’s Law: things DO break at the last minute -Don’t make your plan based on the best case scenarios -Freeze you design and don’t make last minute changes °Never give up! It is not over until you give up.

CS152 / Kubiatowicz Lec1.29 1/21/04©UCB Spring 2004 What you should know from 61C, 150 °Basic machine structure processor, memory, I/O °Read and write basic C programs compile, link, load & execute °Read and write in an assembly language MIPS preferred °Understand the concept of virtual memory °Logic design logical equations, schematic diagrams, FSMs, components °Single-cycle processor

CS152 / Kubiatowicz Lec1.30 1/21/04©UCB Spring 2004 Levels of Representation (61C Review) High Level Language Program Assembly Language Program Machine Language Program Control Signal Specification Compiler Assembler Machine Interpretation temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; lw$15,0($2) lw$16,4($2) sw$16,0($2) sw$15,4($2) °°°° ALUOP[0:3] <= InstReg[9:11] & MASK

CS152 / Kubiatowicz Lec1.31 1/21/04©UCB Spring 2004 Levels of Organization Processor Computer Control Datapath MemoryDevices Input Output Workstation Design Target: 25% of cost on Processor 25% of cost on Memory (minimum memory size) Rest on I/O devices, power supplies, box

CS152 / Kubiatowicz Lec1.32 1/21/04©UCB Spring 2004 Instruction Set Architecture: What Must be Specified? Instruction Fetch Instruction Decode Operand Fetch Execute Result Store Next Instruction °Instruction Format or Encoding how is it decoded? °Location of operands and result where other than memory? how many explicit operands? how are memory operands located? which can or cannot be in memory? °Data type and Size °Operations what are supported °Successor instruction jumps, conditions, branches fetch-decode-execute is implicit!

CS152 / Kubiatowicz Lec1.33 1/21/04©UCB Spring 2004 Next Time: MIPS I Instruction set

CS152 / Kubiatowicz Lec1.34 1/21/04©UCB Spring 2004 MIPS Addressing Modes/Instruction Formats oprsrtrd immed register Register (direct) oprsrt register Base+index + Memory immed oprsrt Immediate immed oprsrt PC PC-relative + Memory All instructions 32 bits wide

CS152 / Kubiatowicz Lec1.35 1/21/04©UCB Spring 2004 MIPS I Operation Overview °Arithmetic Logical: Add, AddU, Sub, SubU, And, Or, Xor, Nor, SLT, SLTU AddI, AddIU, SLTI, SLTIU, AndI, OrI, XorI, LUI SLL, SRL, SRA, SLLV, SRLV, SRAV °Memory Access: LB, LBU, LH, LHU, LW, LWL,LWR SB, SH, SW, SWL, SWR

CS152 / Kubiatowicz Lec1.36 1/21/04©UCB Spring 2004 Miscellaneous MIPS I instructions °breakA breakpoint trap occurs, transfers control to exception handler °syscallA system trap occurs, transfers control to exception handler °coprocessor instrs.Support for floating point °TLB instructionsSupport for virtual memory: discussed later °restore from exceptionRestores previous interrupt mask & kernel/user mode bits into status register °load word left/rightSupports misaligned word loads °store word left/rightSupports misaligned word stores

CS152 / Kubiatowicz Lec1.37 1/21/04©UCB Spring 2004 And in conclusion... °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, memory (2X transistors/chip/ ~1.5 yrs) °5 classic components of all computers Control Datapath Memory Input Output } Processor