1 / 15

Computer Architecture

Dive into the basics of computer organization and design, learning about processors, memory systems, and performance analysis. Explore modern instruction set architectures and practical applications for building processors.

jdill
Download Presentation

Computer Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer Architecture • Instructor: Wen-Hung Liao • E-mail: whliao@cs.nccu.edu.tw • Office: 大仁樓三樓 200312 • Office hours: TBA • Course web page: http://www.cs.nccu.edu.tw/~whliao/cod2005/ • Textbook: Patterson and Hennessy, Computer Organization and Design, 3rd Edition. • Companion website

  2. Chapter 1Computer Abstractions and Technology

  3. Introduction • Rapidly changing field: • vacuum tube -> transistor -> IC -> VLSI • doubling every 1.5 years: • memory capacity • processor speed (Due to advances in technology and organization)

  4. Moore’s Law (Example)

  5. Things you’ll be learning • How computers work, a basic foundation • How to analyze their performance • Issues affecting modern processors (caches, pipelines, parallel computing)

  6. Why learn this stuff? • you want to call yourself a “computer scientist” • you want to build software people use (need performance) • you need to make a purchasing decision or offer “expert” advice

  7. Prerequisite • Some background in assembly language • Boolean algebra • Logic design

  8. What is a computer? • Components: • input (mouse, keyboard...) • output (display, printer...) • storage(disk drives, CD…) • memory (DRAM, SRAM...) • data path • control • network • Our primary focus: the processor (data path and control) • implemented using millions of transistors • Impossible to understand by looking at each transistor

  9. H i g h - l e v e l s w a p ( i n t v [ ] , i n t k ) l a n g u a g e { i n t t e m p ; p r o t e m p = v [ k ] ; v [ k ] = v [ k + 1 ] ; v [ k + 1 ] = t e m p ; } C c o m p i l e r s w a p : A s s e m b l y m u l i $ 2 , $ 5 , 4 l a n g u a g e p r o g r a m a d d $ 2 , $ 4 , $ 2 ( f o r M I P S ) l w $ 1 5 , 0 ( $ 2 ) l w $ 1 6 , 4 ( $ 2 ) s w $ 1 6 , 0 ( $ 2 ) s w $ 1 5 , 4 ( $ 2 ) j r $ 3 1 A s s e m b l e r B i n a r y m a c h i n e 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 l a n g u a g e 0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 1 p r o g r a m 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ( f o r M I P S ) 1 0 0 0 1 1 0 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 Below your program g r a m ( i n C ) • High-level programming language- Fortran- C/C++- Java • Assembly language: machine dependent • Machine language: consists of binarydigits,or ‘bits’ of information

  10. Instruction Set Architecture • A very important abstraction • interface between hardware and low-level software • standardizes instructions, machine language bit patterns, etc. • Advantage: different implementations of the same architecture • Disadvantage: sometimes prevents using new innovations

  11. Modern instruction set architectures • 80x86/Pentium/K6,PowerPC, DEC Alpha, MIPS, SPARC, HP, IA-64 • RISC vs. CISC architecture

  12. Where we are headed • A specific instruction set architecture (Chapter 2) • Arithmetic and how to build an ALU (Chapter 3) • Assessing and understanding performance (Chapter 4) • Constructing a processor to execute our instructions (Chapter 5) • Pipelining to improve performance (Chapter 6) • Memory: caches and virtual memory (Chapter 7) • Storage, Networks, and Other Peripherals (Chapter 8) • Multiprocessors (Chapter 9)

  13. Homework • Read Chapter 1 of textbook. • Download appropriate SPIM simulator for your computer.

  14. The Chip Manufacturing Process

  15. Integrated IC Cost (empirical) Question: What is the approximate relationship between cost and die area?

More Related