Computer Organization and Design Computer Abstractions and Technology

Slides:



Advertisements
Similar presentations
Slide 1Michael Flynn EE382 Winter/99 EE382 Processor Design Stanford University Winter Quarter Instructor: Michael Flynn Teaching Assistant:
Advertisements

CSE 340 Computer Architecture Spring 2014 MIPS ISA Review
TU/e Processor Design 5Z0321 Processor Design 5Z032 Computer Systems Overview Chapter 1 Henk Corporaal Eindhoven University of Technology 2011.
Computer Architecture & Organization
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
Introduction Digital systems (logic design, digital logic, switching circuits) are employed in: computers data communication control systems many other.
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.”
Chapter 1. Introduction This course is all about how computers work But what do we mean by a computer? –Different types: desktop, servers, embedded devices.
Computer Organization and Design David. Paterson and John L. Hennessy
Computer Architecture Instructor: Wen-Hung Liao Office: 大仁樓三樓 Office hours: TBA Course web page:
1  1998 Morgan Kaufmann Publishers Lectures for 2nd Edition Note: these lectures are often supplemented with other materials and also problems from the.
ECE 232 L2 Basics.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 2 Computer.
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.
ECE 232 L1 Intro.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 1 Introduction.
Chapter 1 Sections 1.1 – 1.3 Dr. Iyad F. Jafar Introduction.
CENG311 Computer Architecture Kayhan Erciyes. CS231 Assembly language and Digital Circuits Instructor:Kayhan Erciyes Office:
CSE378 Gen. Intro1 Machine Organization and Assembly Language Programming Machine Organization –Hardware-centric view (in this class) –Not at the transistor.
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
Computer Architecture and Organization
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 ( )
CS 61C L01 Introduction (1) Garcia, Spring 2004 © UCB Lecturer PSOE Dan Garcia CS61C www page www-inst.eecs.berkeley.edu/~cs61c/
1 Computer Systems. 2 Introduction – What is a Computer? This course is all about how computers work What do computer and computer system mean to you?
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.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
COMP3221 lec04--prog-model.1 Saeid Nooshabadi COMP 3221 Microprocessors and Embedded Systems Lecture 4: Programmer’s Model of Microprocessors
1 Computer System Organization I/O systemProcessor Compiler Operating System (Windows 98) Application (Netscape) Digital Design Circuit Design Instruction.
Computer Architecture Mehran Rezaei
CS35101 Computer Architecture Spring 2006 Week 1 Slides adapted from: Mary Jane Irwin ( Course url:
1 International Technology University CEN 951 Computer Architecture Lecture 1 - Introduction.
Cps-104 Intro.1 ©GK Spring 1999 CPS104 Computer Organization Lecture 1 January 14, 1999 Gershon Kedem Slides available on:
Computer Architecture And Organization UNIT-II General System Architecture.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
Computer Organization & Assembly Language © by DR. M. Amer.
Computer Architecture CPSC 350
Computer Architecture 2 nd year (computer and Information Sc.)
 Lecture 2 Processor Organization  Control needs to have the  Ability to fetch instructions from memory  Logic and means to control instruction sequencing.
Computer Architecture Lec 06: Computer Architecture Introduction.
1 chapter 1 Computer Architecture and Design ECE4480/5480 Computer Architecture and Design Department of Electrical and Computer Engineering University.
Adapted from Computer Organization and Design, Patterson & Hennessy, UCB ECE232: Hardware Organization and Design Part 5: MIPS Instructions I
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
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
Lecture 2: Instruction Set Architecture part 1 (Introduction) Mehran Rezaei.
Compsci Today’s topics l Operating Systems  Brookshear, Chapter 3  Great Ideas, Chapter 10  Slides from Kevin Wayne’s COS 126 course l Performance.
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)
Computer Architecture Opening Yu-Lun Kuo 郭育倫 Department of Computer Science and Information Engineering Tunghai University Taichung, 40704, Taiwan R.O.C.
1 TM 1 Embedded Systems Lab./Honam University ARM Microprocessor Programming Model.
CHAPTER 2 Instruction Set Architecture 3/21/
1 CHAPTER 1 COMPUTER ABSTRACTIONS AND TECHNOLOGY Parts of these notes have been adapter from those of Prof. Professor Mike Schulte, Prof. D. Patterson,
CC311 Computer Architecture Chapter 1 Computer Abstraction & Technology.
Computer Organization IS F242. Course Objective It aims at understanding and appreciating the computing system’s functional components, their characteristics,
CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十九年度第二學期.
Computer Organization and Architecture Lecture 1 : Introduction
Overview Instruction set architecture (MIPS)
Instruction Set Architecture
Computer Architecture CSCE 350
EEL 4713/EEL 5764 Computer Architecture
T Computer Architecture, Autumn 2005
INTRODUCTION TO COMPUTER ARCHITECTURE
Welcome to Architectures of Digital Systems
What is Computer Architecture?
COMS 361 Computer Organization
CS4100: 計算機結構 Course Outline
Presentation transcript:

Computer Organization and Design Computer Abstractions and Technology CEN 316 Computer Architecture for Computer Science Dr. Mansour Al Zuair References: www.cs.berkeley.edu/~patterson Dr. Hisham Al Twaijry presentations www.cs.berkeley.edu/~lazzaro Greet class

Class Objectives You want to call yourself a “computer scientist” You need to make a purchasing decision or offer “expert” advice? Understand the interface between the software and hardware. The basis of understanding the program performance design the system software (compiler, OS) for a new processor To learn the factors affecting the performance of a program and how to improve the performance choose right computers for a set of applications in a project. interpret the benchmark figures given by salespersons. Write efficient programs To learn the principles for designing processors and systems and To learn the system configuration trade-off techniques to improve the performance of hardware

Class Objectives Understand assembly-language programming Write assembler-language programs for MIPS Know how programs translate to machine language Learn system functional partition and interfaces Processor, memory, input/output Understand performance assessment & components Interpret measures and avoid common flaws Know how system characteristics affect performance Understand basic computer arithmetic Understand how computer “executes” instructions Understand basics of modern memory and I/O systems

Computer architecture forces and trends Today’s Lecture Computer architecture forces and trends Technology Semiconductor Magnetic storage System price/performance 1965..today Future Define Computer Architecture Levels of abstraction Computer system organization

Computer Architecture Instruction Set Architecture + Machine Organization Instruction set What does the machine understand? What does the machine need to understand? What is the interface between hardware and software? Machine organization How does it work? How do we design a computer? How does the speed depend on the design?

Anatomy: 5 components of any Computer Personal Computer Keyboard, Mouse Computer Processor Memory (where programs, data live when running) Devices Disk (where programs, data live when not running) Control (“brain”) Input Datapath (“brawn”) Output That is, any computer, no matter how primitive or advance, can be divided into five parts: 1. The input devices bring the data from the outside world into the computer. 2. These data are kept in the computer’s memory until ... 3. The datapath request and process them. 4. The operation of the datapath is controlled by the computer’s controller. All the work done by the computer will NOT do us any good unless we can get the data back to the outside world. 5. Getting the data back to the outside world is the job of the output devices. The most COMMON way to connect these 5 components together is to use a network of busses. Display, Printer

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.

Tech. Trends: Microprocessor Complexity 2X transistors/Chip Every 1.5 to 2.0 years Called “Moore’s Law”

Technology Trends: Memory Capacity (Single-Chip DRAM) Now 1.4X/yr, or 2X every 2 years.

Moore’s Law Transistors Per Die Pentium™ Processor 8080 8086 80286 Intel386™ Intel486™ 2000 1970 1975 1980 1985 1990 1995 4004 108 107 106 105 104 103 102 101 1 16M 1K 4K 16K 64K 256K 1M 4M Moore’s Law: No. Transistors per chip increases 4 every 3 years CAGR = 60%

Workstation Performance Improving 54% per year Performance Growth H P 9 / 7 5 S U N - 4 2 6 M I 1 B R 3 8 D E C A l p h a X O W Y e r f o m n c Workstation Performance Improving 54% per year

System Price/Performance 1977 1965 2005 IBM System 360/50 0.15 MIPS 64 KB $1M $6.6M per MIPS DEC VAX11/780 1 MIPS 1 MB $200K $200K per MIPS Intel Xeon Dual core 3 GH More than 18000 MIPS $2000 $.11 per MIPS

Types of computers

Types of microprocessors

Program Performance Where is this topic covered How this component affect performance HW or SW component Not this course Determine both the number of source-level statements and the number of IO operations executed Algorithm Chapter 2 and 3 Determine the number of machine instructions for each source level statement Programming language, compiler and architecture Chapters 5,6, and 7 Determine how fast instructions can be executed Processor and memory system Chapter 8 Determine how fast I/O operations may be executed I/O system

Below your Program

Where is “Computer Architecture and Engineering”? I/O system Processor Compiler Operating System (Windows 2K) Application (Netscape) Digital Design Circuit Design Instruction Set Architecture Datapath & Control transistors Memory Hardware Software Assembler Coordination of many levels of abstraction

Key Concepts of Abstraction Instruction Set Architecture (ISA) Functional interface for assembly-language programmer Examples: MIPS, SPARC, PowerPC, HP PA, Alpha, Intel (x86), IBM System/390, IBM AS/400 Implementation (Machine Organization) Partitioning into units and logic design Examples Intel386 CPU, Intel486 CPU, Pentium® Processor, Pentium® II Processor, .. Alpha 21064, 21164, 21264

Key Concepts of Abstraction Realization Physical fabrication and assembly Examples IBM 703(?) built with vacuum tubes and 7090(?) built with transistors Pentium Processor in 0.8 mm, 0.6mm, 0.35 mm BiCMOS/CMOS

Forces on Computer Architecture Technology Programming Languages Operating systems History Applications Organizational techniques

Instruction Set Architecture “... Consists of: Organization of storage Data types Encoding and representations (instruction formats) Instruction (or Operation Code) Set Modes for addressing data Items and instructions Program visible exceptional conditions Specifies requirements for binary compatibility across implementations

MIPS I Instruction Set Architecture Instruction Categories Load/Store Computational Jump and Branch Floating Point coprocessor Memory Management Special Three instruction Formats R0 - R31 PC HI LO OP rs rt rd sa funct immediate jump target

Execution Cycle Obtain instruction from program storage Fetch Decode Operand Execute Result Store Next Obtain instruction from program storage Determine required actions and instruction size Locate and obtain operand data Compute result value or status Deposit results in storage for later use Determine successor instruction Conceptual Sequence: Programmer’s view of single instruction execution ISAs generally adopt with limited, specified exceptions

Machine Organization Capabilities & performance of functional units (FUs) registers, ALU Ways in which these components are interconnected nature of information flows between components Choreography of FUs to realize the ISA Register Transfer Level Description Also called microarchitecture or design architecture Logic Designer's View ISA Level FUs, control units, interconnect