cse 141 introduction to computer architecture
play

CSE 141-- Introduction to Computer Architecture Jeff Brown CSE - PowerPoint PPT Presentation

CSE 141-- Introduction to Computer Architecture Jeff Brown CSE 141, S2'06 Jeff Brown What is Computer Architecture? Hardware Designer Computer Architect thinks about circuits, thinks about high-level components, timing,


  1. CSE 141-- Introduction to Computer Architecture Jeff Brown CSE 141, S2'06 Jeff Brown

  2. What is Computer Architecture? • • Hardware Designer Computer Architect – thinks about circuits, – thinks about high-level components, timing, components, how they fit functionality, ease of debugging together, how they work together to deliver performance. “construction engineer” “building architect” CSE 141, S2'06 Jeff Brown

  3. Why do I care? • You may actually do computer architecture someday • You may actually care about software performance someday – The ability of application programs, compilers, operating systems, etc. to deliver performance depends critically on an understanding of the underlying computer organization. – That becomes more true every year. – Computer architectures become more difficult to understand every year. CSE 141, S2'06 Jeff Brown

  4. Which is faster? for (i=0; i<N; i=i+1) for (jj=0; jj<N; jj=jj+B) for (j=0; j<N; j=j+1) { for (kk=0; kk<N; kk=kk+B) r = 0; for (i=0; i<N; i=i+1) { for (k=0; k<N; k=k+1) for (j=jj; j<min(jj+B-1,N); j=j+1) r = r + y[i][k] * z[k][j]; r = 0; x[i][j] = r; for (k=kk; k<min(kk+B-1,N); k=k+1) } r = r + y[i][k] * z[k][j]; x[i][j] = x[i][j] + r; } CSE 141, S2'06 Jeff Brown

  5. Which is faster? load R1, addr1 load R1, addr1 store R1, addr2 add R0, R2 -> R3 add R0, R2 -> R3 add R0, R6 -> R7 subtract R4, R3 -> R5 store R1, addr2 add R0, R6 ->R7 subtract R4, R3 -> R5 store R7, addr3 store R7, addr3 CSE 141, S2'06 Jeff Brown

  6. Which is faster? loop1: add ... loop1: add ... load ... load ... add ... add ... bne R1, loop1 bne R1, loop1 loop2: add ... nop load ... nop bne R2, loop2 loop2: add ... load ... bne R2, loop2 CSE 141, S2'06 Jeff Brown

  7. Administration • Instructor: Jeff Brown • Who are you? • TAs: – Will Chang – Steve Checkoway • Grading • Integrity • Course workload CSE 141, S2'06 Jeff Brown

  8. What is Computer Architecture? Computer Architecture = What the machine looks like Machine Organization + Instruction Set Architecture How you talk to the machine CSE 141, S2'06 Jeff Brown

  9. How to Speak Computer High Level Language temp = v[k]; Program v[k] = v[k+1]; v[k+1] = temp; Compiler lw $15, 0($2) Assembly Language lw $16, 4($2) Program sw $16, 0($2) sw $15, 4($2) Assembler 1000110001100010000000000000000 1000110011110010000000000000100 Machine Language 1010110011110010000000000000000 Program 1010110001100010000000000000100 Machine Interpretation Control Signal Spec ALUOP[0:3] <= InstReg[9:11] & MASK CSE 141, S2'06 Jeff Brown

  10. The Instruction Set Architecture • that part of the architecture that is visible to the programmer – opcodes (available instructions) – number and types of registers – instruction formats – storage access, addressing modes – exceptional conditions CSE 141, S2'06 Jeff Brown

  11. The Instruction Set Architecture ° is the agreed-upon interface between all the software that runs on the machine and the hardware that executes it. Application Operating System Compiler Instruction Set Architecture Instr. Set Proc. I/O system Digital Design Circuit Design CSE 141, S2'06 Jeff Brown

  12. The Instruction Execution Cycle Instruction Obtain instruction from program storage Fetch Instruction Determine required actions and instruction size Decode Operand Locate and obtain operand data Fetch Compute result value or status Execute Result Deposit results in storage for later use Store Next Determine successor instruction Instruction

  13. Key ISA decisions destination operand operation y = x + b • operations  how many? source operands  which ones • operands (add r1, r2, r5)  how many?  location  types  how to specify? • instruction format  size  how many formats? CSE 141, S2'06 Jeff Brown

  14. Examples of ISAs • Alpha AXP • Intel IA-32 ("x86") • VAX • MIPS • SPARC • IBM 360 • Intel IA-64 ("Itanium", "IPF") • PowerPC CSE 141, S2'06 Jeff Brown

  15. Computer Organization • Once you have decided on an ISA, you must decide how to design the hardware to execute those programs written in the ISA as fast as possible (or as cheaply as possible, or using as little power as possible, …). • This must be done every time a new implementation of the architecture is released, with typically very different technological constraints. CSE 141, S2'06 Jeff Brown

  16. The Challenge of Computer Architecture • The industry changes faster than any other. • The ground rules change every year. – new problems – new opportunities – different tradeoffs • It’s “all” about making programs run faster than the next guy’s machine. Or more efficiently. CSE 141, S2'06 Jeff Brown

  17. Performance Trends CSE 141, S2'06 Jeff Brown

  18. Technology: Microprocessor Logic Density 10000000 r4400 i8 0 4 8 6 r4000 1000000 i8 0 3 8 6 i8 0 2 8 6 100000 r3010 i8 0 8 6 10000 i8 0 8 0 i8 0 0 8 i4 0 0 4 1000 1970 1975 1980 1985 1990 1995 2000 CSE 141, S2'06 Jeff Brown

  19. Pentium 4 CSE 141, S2'06 Jeff Brown

  20. Pentium 4 CSE 141, S2'06 Jeff Brown

  21. The five classic components of computers Computer Control Input Memory Output Datapath CSE 141, S2'06 Jeff Brown

  22. Course Outline I. Instruction Set Architecture II. Computer System Performance and Performance Metrics III. Computer Arithmetic and Number Systems IV. CPU Architecture V. Pipelining VI. Superscalars VII. The Memory/Cache Hierarchy VIII. Parallel Machines CSE 141, S2'06 Jeff Brown

  23. What you can expect to get out of this class • to become conversant with computer architecture terms and concepts. • to understand fundamental concepts in computer architecture and how they impact computer and application performance. • to be able to read and evaluate architectural descriptions of even today’s most complex processors. • to gain experience designing a working CPU completely from scratch. • to learn experimental techniques used to evaluate advanced architectural ideas. CSE 141, S2'06 Jeff Brown

  24. Key Points • High-performance software requires a deep understanding of the underlying machine organization. • The instruction set architecture defines how software is allowed to use the processor. Multiple computers with vastly different organizations and performance can share an ISA. • Most every component in a computer system falls into one of five categories. CSE 141, S2'06 Jeff Brown

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend