Presentation is loading. Please wait.

Presentation is loading. Please wait.

CPSC 321 Computer Architecture Fall 2006 Lecture 1 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Copyright.

Similar presentations


Presentation on theme: "CPSC 321 Computer Architecture Fall 2006 Lecture 1 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Copyright."— Presentation transcript:

1 CPSC 321 Computer Architecture Fall 2006 Lecture 1 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Copyright (C) 2001 UCB

2 Course Instructor Rabi Mahapatra E-mail: (rabi@cs.tamu.edu),rabi@cs.tamu.edu Sections: 501-503:MWF 12:40 – 1:30 PM 520B, HRBB tel: 845-5787 Office Hours: After the Class

3 TA Information Suman K Mandal Email: Office: Office Hours: Lei Wu Phone: E-mail: (leiwu@tamu.edu)leiwu@tamu.edu Office: 526, HRBB tel: 571-2640 Office Hour: TBD

4 Course Information [contd…] Grading: Projects, Assignments, Exams –Assignments20% –Mid Term 25% –Finals25% –Projects30% Labs –MIPS (Assembly Programming), Verilog (HDL) Projects –Project 1: MIPS –Projects 2 & 3: Verilog (Datapath Design)

5 Course Information [contd…] Book (Required) –Computer Organization and Design: The Hardware/Software Interface, Third Edition, David A. Patterson and John L. Hennessy, Morgan Kaufmann Publishers. Do not get second edition REFERENCES: –Digital Design M. Morris Mano, 3 rd Edition, Prentice Hall –The Verilog Hardware Description Language Thomas & Morby, 5 th Edition, Kluwer Academic Publishers –Check the course webpage for other materials and links

6 Course Information [contd…] Course Webpage –http://courses.cs.tamu.edu/rabi/cpsc321/ CS Accounts –Use your CS accounts to turnin and check any email regarding course

7 Course Overview Arithmetic Single/multicycle Datapaths Computer Arithmetic Datapaths

8 Course Overview [contd…] IFetchDcdExecMemWB IFetchDcdExecMemWB IFetchDcdExecMemWB IFetchDcdExecMemWB PipeliningMemory Systems Performance Memory

9 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 Experience with the design process in the context of a large complex (hardware) design. –Functional Spec --> Control & Datapath --> Physical implementation –Modern CAD tools

10 Computer Architecture - Definition Computer Architecture = ISA + MO Instruction Set Architecture –What the executable can “see” as underlying hardware –Logical View Machine Organization –How the hardware implements ISA ? –Physical View

11 Computer Architecture – Changing Definition 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 2000s: Computer Architecture Course: –Non Von-Neumann architectures, Reconfiguration DNA Computing, Quantum Computing ????

12 Some Examples … °Digital Alpha(v1, v3)1992-97RIP soon °HP PA-RISC(v1.1, v2.0)1986-96RIP soon °Sun SPARC(v8, v9)1987-95 °SGI MIPS(MIPS I, II, III, IV, V)1986-96 °IA-16/32 (8086,286,386, 486,1978-1999 Pentium, MMX, SSE, …) °IA-64 (Itanium)1996-now °AMD64/EMT642002-now °IBM POWER (PowerPC,…)1990-now °Many dead processor architectures live on in °microcontrollers

13 The MIPS R3000 ISA (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

14 CPSC 321 “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

15 Impact of changing ISA Early 1990’s Apple switched instruction set architecture of the Macintosh –From Motorola 68000-based machines –To PowerPC architecture Intel 80x86 Family: many implementations of same architecture –program written in 1978 for 8086 can be run on latest Pentium chip

16 Factors affecting ISA ??? Computer Architecture Technology Programming Languages Operating Systems History Applications Cleverness

17 ISA: Critical Interface instruction set software hardware Examples: 80x86 50,000,000 vs. MIPS 5500,000 ???

18 The Big Picture Control Datapath Memory Processor Input Output Since 1946 all computers have had 5 components!!!

19 Example Organization TI SuperSPARC tm TMS390Z50 in Sun SPARCstation20 Floating-point Unit Integer Unit Inst Cache Ref MMU Data Cache Store Buffer Bus Interface SuperSPARC L2 $ CC MBus Module MBus L64852 MBus control M-S Adapter SBus DRAM Controller SBus DMA SCSI Ethernet STDIO serial kbd mouse audio RTC Floppy SBus Cards

20 Technology Trends 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!

21 °In ~1985 the single-chip processor (32-bit) and the single-board computer emerged °In the 2002+ timeframe, these may well look like mainframes compared single-chip computer (maybe 2 chips) DRAM YearSize 198064 Kb 1983256 Kb 19861 Mb 19894 Mb 199216 Mb 199664 Mb 1999256 Mb 20021 Gb Microprocessor Logic Density DRAM chip capacity Technology Trends

22 Smaller feature sizes – higher speed, density ECE/CS 752; copyright J. E. Smith, 2002 (Univ. of Wisconsin)

23 Technology Trends Number of transistors doubles every 18 months (amended to 24 months) ECE/CS 752; copyright J. E. Smith, 2002 (Univ. of Wisconsin)

24 Levels of Representation 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) 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 ALUOP[0:3] <= InstReg[9:11] & MASK

25 Execution Cycle Instruction Fetch Instruction Decode Operand Fetch Execute Result Store Next Instruction 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

26 The Role of Performance

27 Example of Performance Measure

28 Performance Metrics Response Time –Delay between start end end time of a task Throughput –Numbers of tasks per given time New: Power/Energy –Energy per task, power

29 Examples (Throughput/Performance) Replace the processor with a faster version? –3.8 GHz instead of 3.2 GHz Add an additional processor to a system? –Core Duo instead of P4

30 Measuring Performance Wall-clock time –or- Total Execution Time CPU Time –User Time –System Time Try using time command on UNIX system

31 Relating the Metrics Performance = 1/Execution Time CPU Execution Time = CPU clock cycles for program x Clock cycle time CPU clock cycles = Instructions for a program x Average clock cycles per Instruction

32 Amdahl’s Law Pitfall: Expecting the improvement of one aspect of a machine to increase performance by an amount proportional to the size of improvement

33 Amhdahl’s Law [contd…] A program runs in 100 seconds on a machine, with multiply operations responsible for 80 seconds of this time. How much do I have to improve the speed of multiplication if I want my program to run five times faster ? Execution Time After improvement = (exec time affected by improvement/amount of improvement) + exec time unaffected exec time after improvement = (80 seconds / n) + (100 – 80 seconds) We want performance to be 5 times faster => 20 seconds = 80/n seconds / n + 20 seconds 0 = 80 / n !!!!

34 Amdahl’s Law [contd…] Opportunity for improvement is affected by how much time the event consumes Make the common case fast Very high speedup requires making nearly every case fast Focus on overall performance, not one aspect

35 Summary Computer Architecture = Instruction Set Architure + Machine Organization All computers consist of five components –Processor: (1) datapath and (2) control –(3) Memory –(4) Input devices and (5) Output devices Not all “memory” are created equally –Cache: fast (expensive) memory are placed closer to the processor –Main memory: less expensive memory--we can have more Interfaces are where the problems are - between functional units and between the computer and the outside world Need to design against constraints of performance, power, area and cost

36 Summary Performance “eye of the beholder” Seconds/program = (Instructions/Pgm)x(Clk Cycles/Instructions)x(Seconds/Clk cycles) Amdahl’s Law “Make the Common Case Faster”


Download ppt "CPSC 321 Computer Architecture Fall 2006 Lecture 1 Introduction and Five Components of a Computer Adapted from CS 152 Spring 2002 UC Berkeley Copyright."

Similar presentations


Ads by Google