Presentation is loading. Please wait.

Presentation is loading. Please wait.

EECE476: Computer Architecture Lecture 0: Computer Architecture Chapter 1 The University of British ColumbiaEECE 476© 2005 Guy Lemieux.

Similar presentations


Presentation on theme: "EECE476: Computer Architecture Lecture 0: Computer Architecture Chapter 1 The University of British ColumbiaEECE 476© 2005 Guy Lemieux."— Presentation transcript:

1 EECE476: Computer Architecture Lecture 0: Computer Architecture Chapter 1 The University of British ColumbiaEECE 476© 2005 Guy Lemieux

2 2 What is this ?

3 3 64 kB Data Cache 64 kB Instr. Cache Load/Store Execution Unit Fetch Scan Align Micro-code Bus Unit HyperTransport DDR Memory Interface 1 MB Unified Instruction/Data Level 2 Cache Floating-Point Unit Memory Controller What is this ? This is an AMD Operton CPU Total Area: 193 mm 2 Look at the relative sizes of each block: 50% cache 23% I/O 20% CPU logic + extra stuff cache memory CPUs dedicate > 50% area for cache memory. In this course, you will learn how to build a CPU like this!

4 4 What is Computer Architecture?

5 5 Historic definition Computer Architecture = Instruction Set Architecture + Computer Organization Term coined by IBMer: Frederick Brooks (~1957)

6 6 What is Instruction Set Architecture? Important acronym: ISA –Instruction Set Architecture The low-level software interface to the machine –Language of the machine –Must translate any programming language into this language –Examples: IA-32 (Intel instruction set), MIPS, SPARC, Alpha, PA-RISC, PowerPC, … Visible to programmer (if desired)!

7 7 Instruction Set Architecture I/O systemInstr. Set Proc. Compiler Operating System Application Digital Design Circuit Design Instruction Set Architecture Firmware Datapath & Control Layout Software Hardware

8 8 Instruction Set Architecture Original definition: … 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, Brooks, 1964

9 9 What is Computer Organization? Computer organization is the implementation of the machine, consisting of two components: –High-level organization Memory system widths, bus structure, CPU internal organization, … –Hardware Precise logic and circuit design, mechanical packaging, … Many implementations are possible for an ISA !!! –Intel i386, i486, Pentium, Pentium II, … –Performance, complexity, cost differences…. Invisible to the programmer (mostly)!

10 10 Computer Organization Example of internal CPU organization

11 11 Your Background You took: –EECE 256 – Intro to digital logic –EECE 259 – Intro to microcomputers –EECE 353/379 – Advanced digital systems Plus, you know how to write software…. Now you’re ready to design an entire computer system! –Come up with an ISA –Design the CPU to run it (organization + hardware)

12 12 Designing a Computer System Now you’re ready to design an entire computer system! –But wait, there are many trade-offs: Cost Complexity Performance Power Consumption The goal of this course is to expose you to these trade- offs so you can make intelligent design decisions!!! –Focus on Cost, Complexity, Performance THIS COURSE – focus “inside the CPU” EECE465 will look “outside the CPU”

13 13 Computing History – Volume 1 Sticks, stones, strings, … –Ancient counting and measuring devices Abacus (~3000BC) Napiers bones (1617) Slide Rule (1625) –Arithmetic aids (e.g., addition, multiplication)

14 14 Computing History – Volume 2 Charles Babbage (1791-1871) –“Grandfather of Computing” –Designed mechanical computers using gears Difference Engine (1822-1833) –Tabulated polynomials using the difference method –Didn’t work, limited tolerances in gear-making technology Analytical Engine (1833-1842) –More general, programmable (punch cards!) –Never built due to financing (& failures with D.E.) In 1855, Swedish family built an operational D.E. !!! –http://en.wikipedia.org/wiki/Charles_Babbage

15 15 Computing History – Volume 2 Augusta Ada King, Countess of Lovelace (1815-1852) –The world’s “First Computer Programmer” –Designed programs to run on Babbage’s Analytical Engine Some controversy over her exact role –Defined an algebra engine Could operate on symbols as well as numbers –http://en.wikipedia.org/wiki/Ada_Lovelacehttp://en.wikipedia.org/wiki/Ada_Lovelace –See also programming language “Ada” (1980) http://en.wikipedia.org/wiki/Ada_programming_language

16 16 Computing History – Volume 3 <1946ENIAC –Univ. of Pennsylvania –18,000 vacuum tubes –30 tons, 80’ x 8.5’ 1949ESDAC –Cambridge University –Stored-program computer 1949Mark I –Harvard University –Harvard Architecture Separate instr. and data memory vs. von Neumann / Princeton 1949BINAC –Eckert-Mauchly Computer Corp. –First Commercial Computer 1951UNIVAC-1 –Remington-Rand –$1,000,000 each –Sold 48 systems 1952IBM 701 –Sold 19 systems 1964IBM System/360 –$5,000,000,000 invested –Computer family, all use same instructions –Computer architecture is born! 1965DEC PDP-8 –First minicomputer –Spawns MULTICS, UNIX, C 1971Intel 4004 –First microprocessor –2,300 transistors

17 17 The Transistor (1947) Invented in 1947 at Bell Labs –Bardeen, Brattain, and Shockley Important because vacuum tubes are unreliable!

18 18 The Integrated Circuit (1958-9) Invented in Texas and California –Robert Noyce, Fairchild Semiconductor –Jack Kilby, Texas Instruments –Noyce was first to patent the idea…. Now, multiple transistors can be placed in one piece of silicon!!!

19 19 Moore’s Law and Intel CPUs Source: IntelIntel

20 20 Moore and moore transistors… Moore’s Law (1965) –Gordon Moore, Fairchild Semiconductor –Noticed 2x number of transistors every 12-18 months "The complexity for minimum component costs has increased at a rate of roughly a factor of two per year. Certainly over the short term this rate can be expected to continue, if not increase. Over the longer term, the rate of increase is a bit more uncertain, although there is no reason to believe it will not remain for nearly constant for at least 10 years. That means by 1975, the number of components per integrated circuit for minimum cost will be 65,000.” "I believe that such a large circuit can be built on a single wafer." 1968: Robert Noyce and Gordon Moore left Fairchild –Founded Intel (short for “INTegrated ELectronics”) 1971: Intel 4004, the world’s first microprocessor!

21 21 More and more transistors… Increasing number of transistors makes it possible to build more complex implementations –eg, i386 to i486 to Pentium …. Complexity allows improved computer organization with higher processing throughput –Really, it is mostly due to improved CPU organization –Modern term for CPU organization CPU Microarchitecture

22 22 Computer Architecture Modern definition Computer Architecture = Instruction Set Architecture + CPU Microarchitecture + Computer Organization [definition by me!] EECE476 (inside the CPU) EECE465 (outside the CPU)

23 23 CPU Microarchitecture –Detailed internal CPU implementation of an ISA Logical organization of CPU internals, including –Cache sizes, organization –Pipeline depth –Number of functional units Methods for enhancing/detecting parallelism during execution –Dependence checking, parallel dispatch, out-of-order completion –Branch prediction, speculation –Another view How to use a 1,000,000,000 transistor budget –Responsible for high-performance in modern CPUs

24 24 ISA & CPU Family Tree


Download ppt "EECE476: Computer Architecture Lecture 0: Computer Architecture Chapter 1 The University of British ColumbiaEECE 476© 2005 Guy Lemieux."

Similar presentations


Ads by Google