CMCS 411-101 Computer Architecture Lecture 1 Introduction and Overview January 29, 2000 www.csee.umbc.edu/~younis/CMSC411/ CMSC411.htm Mohamed Younis.

Slides:



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

Syllabus Instructor: Dr. Wesam Ashour
TU/e Processor Design 5Z0321 Processor Design 5Z032 Computer Systems Overview Chapter 1 Henk Corporaal Eindhoven University of Technology 2011.
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
CSE431 L01 Introduction.1Irwin, PSU, 2005 CSE 431 Computer Architecture Fall 2005 Lecture 01: Introduction Mary Jane Irwin ( )
CPSC 321 Computer Architecture Fall 2006 Lecture 1 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Copyright.
CMSC411/Computer Architecture These slides and all associated material are © 2003 by J. Six and are available only for students enrolled in CMSC411. Introduction.
CPSC 321 Computer Architecture Spring 2005 Lecture 1 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Adapted.
מבנה מחשבים הרצאה 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.”
Computer Organization: Introduction Spring 2006 Jen-Chang Liu ( )
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.
CS472 COMPUTER ARCHITECTURE AND ASSEMBLY LANGUAGE –Bruce D’Ambrosio Dearborn, –Text: Computer Organization and Design.
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.
ELEN 350 Computer Architecture Spring 2005 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Adapted from CPSC.
Computer Organization and Assembly language
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.
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 ( )
ECE 4436ECE 5367 Introduction to Computer Architecture and Design Ji Chen Section : T TH 1:00PM – 2:30PM Prerequisites: ECE 4436.
Introduction Course Overview and Basic understanding of Computer Architecture.
Computer Architecture ECE 4801 Berk Sunar Erkay Savas.
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.
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 Architecture And Organization UNIT-II General System Architecture.
Computer System Design Lecture 1 Wannarat Suntiamorntut.
by Computer System Design Lecture 1 Wannarat Suntiamorntut
Computer Architecture CPSC 350
EEL 4713/EEL 5764 Computer Architecture Spring Semester 2004 Instructor: Dr. Shonda Walker Required Textbook: Computer Organization & Design, by Patterson.
CPSC 321 Computer Architecture Summer 2005 Lecture 1 Introduction and Five Components of a Computer Praveen Bhojwani Adapted from CS 152 Spring 2002 UC.
S.J.Lee 1 컴퓨터 구조 강좌개요 순천향대학교 컴퓨터학부 이 상 정. S.J.Lee 2 교 재교 재 J.L.Hennessy & D.A.Patterson Computer Architecture a Quantitative Approach, Second Edition.
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.
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)
1 CHAPTER 1 COMPUTER ABSTRACTIONS AND TECHNOLOGY Parts of these notes have been adapter from those of Prof. Professor Mike Schulte, Prof. D. Patterson,
CSE431 L01 Introduction.1Irwin, PSU, 2005 CSE 431 Computer Architecture Fall 2005 Lecture 01: Introduction Mary Jane Irwin ( )
By Wannarat Computer System Design Lecture 1 Wannarat Suntiamorntut.
CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十九年度第二學期.
Computer Organization and Architecture Lecture 1 : Introduction
Chapter 1 Computer Abstractions and Technology
CMSC 611 Advanced Computer Arch.
Computer Architecture CSCE 350
EEL 4713/EEL 5764 Computer Architecture
T Computer Architecture, Autumn 2005
CMSC 611 Advanced Computer Arch.
Welcome to Architectures of Digital Systems
COMS 361 Computer Organization
CS4100: 計算機結構 Course Outline
Computer Architecture
Presentation transcript:

CMCS 411-101 Computer Architecture Lecture 1 Introduction and Overview January 29, 2000 www.csee.umbc.edu/~younis/CMSC411/ CMSC411.htm Mohamed Younis CMCS 411, Computer Architecture 1

Lecture’s Overview Course resources, syllabus and work load Grade structure and policy Teaching style and philosophy An introduction to computer architecture The importance of studying computer architecture Organization and anatomy of computers The impact of microelectronics technology on computers The evolution of the computer industry and generations Mohamed Younis CMCS 411, Computer Architecture 2

Instructor will stay after class to answer questions Course Resources Instructor: Dr. Mohamed Younis Office: ECS 233-D E-mail: younis@cs.umbc.edu Office hours: Monday and Wednesday 4:15-5:15 PM Research interest: Real-time systems, Fault tolerant computing, Compiler-based analysis, Operating systems, Tool support for embedded systems TA: Mr. Shanmugavel Ponnusamy Office: ECS 334 E-mail: sponnu1@umbc.edu Office hours: Tuesday and Thursday 2:45-3:45 PM Textbook: Computer Organization and Design, The hardware/software interface, 2nd Edition David A. Patterson and John L. Hennessy Morgan Kaufmann Publishers, ISBN 1-55860-428-6 Web page: www.csee.umbc.edu/~younis/CMSC411/CMSC411.htm Instructor will stay after class to answer questions Mohamed Younis CMCS 411, Computer Architecture 3

Course Syllabus 1. Performance Evaluation Measures of performance Benchmarks and metrics 2. Instruction Set Architecture Instruction formats & semantics Addressing modes 3. Machine Arithmetic ALU design Integer multiplication & division Floating-point arithmetic 4. Processor Design Datapath design Instruction exec. & sequencing Hardwired & microcode control Pipelining 5. Hardware Design Languages Design with a simplified VHDL Modeling and simulation 6. Memory Hierarchy Cache design & evaluation Virtual addressing Performance evaluation 7. Input/Output Types of I/O devices Device access and interface Device control I/O performance 8. Multiprocessor (time permitting) Interconnection networks Programming issues Mohamed Younis CMCS 411, Computer Architecture 4

Course Workload Assignments Exams Projects 6 assignments will be given. The 5 best grades will be averaged and normalized to %25 of the final grade An average assignments requires about 3-4 hours to perform Assignments are due in class on the due date (not later) Exams A midterm exam is scheduled on March 26th during scheduled class time The final exam is scheduled on May 21st during 6:00pm - 8:00pm Final Exam is comprehensive covering all what is covered in the class Projects 2 projects will be given contributing 10% and 15% to the final grades Projects are mainly hardware design assignments using a simple features of the VHDL hardware design language Projects must be finished and submitted on time to earn a grade Mohamed Younis CMCS 411, Computer Architecture 5

Grade structure and policy Assignments are due in class (Late assignments are not accepted) UMBC rules apply to cheating/copying You may work together and discuss homework and the project. You must do your own work and not copy from anyone else You better off skipping an assignment or get a partial credit Copying/cheating will result in a minimum punishment of a zero grade for the assignment or project Mohamed Younis CMCS 411, Computer Architecture 6

Teaching Style and Philosophy Instructor’s role Facilitate and guide the students to the fundamental concepts Make it simple and elaborate with examples Relate as much as possible to available products Prepare class notes to be as rich and comprehensive as possible Student’s role Focus on understanding and digesting the concept Do not worry about the grade more than concepts, soon will be a professional Slow down the instructor if you do not understand and raise questions Be prepared to answer an oral quiz, when you get involved in a side talk TA’s role Help students with questions related to their assignments Resolve computer and tool issues related to projects Grade assignments and projects Exams will question the level of understanding of fundamental concepts Mohamed Younis CMCS 411, Computer Architecture 7

Introduction & Motivation Computer systems are responsible of 5-10% of the gross national product of the US Has the transportation industry kept pace with the computer industry, a coast to coast trip would take 5 seconds and cost 50 cents WWW, ATM, DNA mapping, … are among the applications that were economically infeasible suddenly became practical Cashless society, anywhere computing, automated intelligent highways… are next computer science fiction expected to become a reality Computer architecture has been at the core of such technological development and is still on a forward move Mohamed Younis CMCS 411, Computer Architecture 8

What is “Computer Architecture”? Instruction Set Architecture Machine Organization Interfaces Compiler/System View “Building Architect” Hardware Components Logic Designer’s View “Construction Engineer” Mohamed Younis CMCS 411, Computer Architecture 9

Instruction Set Architecture ... 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, 1964 -- Organization of Programmable Storage -- Data Types & Data Structures: Encoding & Representation -- Instruction Set -- Instruction Formats -- Modes of Addressing and Accessing Data Items and Instructions -- Exceptional Conditions SOFTWARE The instruction set architecture distinguishes the semantics of the architecture from its detailed hardware implementation * Slide is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 10

The Instruction Set: a Critical Interface Examples: DEC Alpha (v1, v3) 1992-1997 HP PA-RISC (v1.1, v2.0) 1986-1996 Sun Sparc (v8, v9) 1987-1995 SGI MIPS (MIPS I, II, III, IV, V) 1986-1996 Intel (8086,80286,80386, 80486,Pentium, MMX, ...) 1978-2000 The instruction set can be viewed as an abstraction of the H/W that hides the details and the complexity of the H/W instruction set software hardware * Figure is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 11

MIPS R3000 Instr. Set Arch. (Summary) Instruction Categories Load/Store Computational Jump and Branch Floating Point coprocessor Memory Management Special Registers R0 - R31 PC HI LO OP rs rt rd sa funct immediate jump target 3 Instruction Formats: all 32 bits wide * Slide is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 12

Machine Organization 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 functional units to realize the instruction set architecture Register Transfer Level Description Logic Designer's View ISA Level Functional Units & Interconnect Design state of art organization in 1990 * Slide is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 13

Example Organization TI SuperSPARCtm TMS390Z50 in Sun SPARCstation20 Floating-point Unit Integer Unit Inst Cache Ref MMU Data Store Buffer Bus Interface SuperSPARC L2 $ CC MBus Module MBus L64852 MBus control M-S Adapter SBus DRAM Controller DMA SCSI Ethernet STDIO serial kbd mouse audio RTC Boot PROM Floppy Cards * Slide is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 14

General Computer Organization Processor Computer Control Datapath Memory Devices Input Output e.g., Keyboard, mouse, disk Coordination for proper operation e.g. Printer, Monitor, disk Connections for Information flow Every piece of every computer, past and present, can be placed into input, output, memory, datapath and control The design approach is constrained by the cost and size and capabilities required from every component An example design target can be 25% of cost on Processor, 25% of cost on minimum memory size, rest on I/O devices, power supplies, and chassis 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. Mohamed Younis CMCS 411, Computer Architecture 15

Levels of Representation High Level Language Program temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; Compiler lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) Assembly Language Program Assembler Machine Language Program 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 Machine Interpretation Control Signal Specification ALUOP[0:3] <= InstReg[9:11] & MASK ° * Slide is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 16

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 * Slide is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 17

Levels of Abstraction S/W and H/W consists of hierarchical layers of abstraction, each hides details of lower layers from the above layer The instruction set arch. abstracts the H/W and S/W interface and allows many implementation of varying cost and performance to run the same S/W * Figure is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 18

Forces on Computer Architecture Programming languages might encourage architecture features to improve performance and code size, e.g. Fortran and Java Operating systems rely on the hardware to support essential features such as semaphores and memory management Technology always raises the bar for what could be done and changes design’s focus Applications usually derive capabilities and constrains, e.g. embedded computing History always provides the starting point and filter out mistakes Computer Architecture Technology Programming Languages Operating Systems History Applications History/Applications matters because 1) People buy computers to run programs 2) Most people don;’t write own programs 3) Documented IDA interface means people ship binary machine code * Figure is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 19

Technology => dramatic change Processor logic capacity: about 30% increase per year clock rate: about 20% increase per year Higher logic density gave room for instruction pipeline & cache Memory DRAM capacity: about 60% increase per year (4x every 3 years) Memory speed: about 10% increase per year Cost per bit: about 25% improvement per year Performance optimization no longer implies smaller programs Disk Capacity: about 60% increase per year Computers became lighter and more power efficient Mohamed Younis CMCS 411, Computer Architecture 20

Technology Impact on Processors In ~1985 the single-chip processor and the single-board computer emerged In the 2002+ timeframe, today’s mainframes may be a single-chip computer * Figure is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 21

Processor Performance (SPEC) RISC introduction Performance now improves ­ 50% per year (2x every 1.5 years) * Slide is courtesy of Dave Patterson Mohamed Younis CMCS 411, Computer Architecture 22

Technology Impact on Design DRAM capacity has been consistently quadrupled every 3 years, resulting over 16,000 times in 20 years Programming is more concerned with cache and no longer constrained by RAM size Processor organization is becoming the main focus performance optimization Technology advances got H/W designer to focus not only performance but on functional integration and power consumption (e.g. system on a chip) Mohamed Younis CMCS 411, Computer Architecture 23

Integrated Circuits: Fueling Innovation The manufacture of a chip begins with silicon, a substance found in sand Silicon does not conduct electricity well and thus called semiconductor A special chemical process can transform tiny areas of silicon to either: . Excellent conductors of electricity (like copper) . Excellent insulator from electricity (like glass) . Areas that can conduct or insulate under a special condition (a switch) A transistor is simply an on/off switch controlled by electricity Integrated circuits combines dozens of hundreds of transistors in a chip Advances of the IC technology affect H/W and S/W design philosophy Mohamed Younis CMCS 411, Computer Architecture 24

Microelectronics Process Silicon ingot are 6-12 inches in diameter and about 12-24 inches long The manufacturing process of integrated circuits is critical to the cost of a chip Impurities in the wafer can lead to defective devices and reduces the yield Mohamed Younis CMCS 411, Computer Architecture 25

Computer Generations Computers were classified into 4 generations based on revolutions in the technology used in the development By convention, commercial electronic computers are take to be the first generation rather than the electromechanical machines that preceded them Today computer generations are not commonly referred to due to the long standing of the VLSI technology and the lack of revolutionary technology in sight Mohamed Younis CMCS 411, Computer Architecture 26

Historical Perspective After adjusting for inflation, price/performance has improved by about 240 million in 45 years (about 54% per year) Mohamed Younis CMCS 411, Computer Architecture 27

Conclusion So what's in it for you? In-depth understanding of the inner-workings of modern computers, their evolution, and trade-offs present at the hardware/software boundary. Experience with the design process in the context of a reasonable size hardware design Why should a programmer care? In the 60’s and 70’s performance was constrained by the size of memory, not an issue today Performance optimization needs knowledge of memory hierarchy, instruction pipeline, parallel processing, etc. Systems’ programming is highly coupled with the computer organization We will take a break and talk about class philosophy. Computer architecture is at the core of computer science & Eng. Mohamed Younis CMCS 411, Computer Architecture 28