This Unit: Putting It All Together. CIS 371 Computer Organization and Design. Sources. What is Computer Architecture?

Similar documents
This Unit: Putting It All Together. CIS 501 Computer Architecture. What is Computer Architecture? Sources

Unit 11: Putting it All Together: Anatomy of the XBox 360 Game Console

This Unit: Putting It All Together. CIS 371 Computer Organization and Design. What is Computer Architecture? Sources

Spring 2010 Prof. Hyesoon Kim. Xbox 360 System Architecture, Anderews, Baker

Xbox 360 high-level architecture

Xbox 360 Architecture. Lennard Streat Samuel Echefu

CONSOLE ARCHITECTURE

Spring 2011 Prof. Hyesoon Kim

Computer Systems Architecture I. CSE 560M Lecture 19 Prof. Patrick Crowley

IBM "Broadway" 512Mb GDDR3 Qimonda

Power 7. Dan Christiani Kyle Wieschowski

Evolution of CPUs & Memory in Video Game Consoles. Curtis Geiger & Matthew Meehan

CSCI-GA Multicore Processors: Architecture & Programming Lecture 10: Heterogeneous Multicore

Introduction to Microprocessor

Spring 2010 Prof. Hyesoon Kim. AMD presentations from Richard Huddy and Michael Doggett

CSE : Introduction to Computer Architecture

Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model

Outline Marquette University

Processing Unit CS206T

Computer Architecture. Introduction. Lynn Choi Korea University

EE282 Computer Architecture. Lecture 1: What is Computer Architecture?

Roadrunner. By Diana Lleva Julissa Campos Justina Tandar

Microarchitecture Overview. Performance

Parallel Computing: Parallel Architectures Jin, Hai

Computer Architecture. Fall Dongkun Shin, SKKU

Advanced Computer Architecture

NVIDIA GTX200: TeraFLOPS Visual Computing. August 26, 2008 John Tynefield

Introduction to Computing and Systems Architecture

Computer System architectures

Figure 1-1. A multilevel machine.

Vector Processors and Graphics Processing Units (GPUs)

CS427 Multicore Architecture and Parallel Computing

Memory Systems IRAM. Principle of IRAM

Intel released new technology call P6P

Microarchitecture Overview. Performance

Workload Optimized Systems: The Wheel of Reincarnation. Michael Sporer, Netezza Appliance Hardware Architect 21 April 2013

CPU Architecture Overview. Varun Sampath CIS 565 Spring 2012

Multimedia in Mobile Phones. Architectures and Trends Lund

Computer Evolution. Computer Generation. The Zero Generation (3) Charles Babbage. First Generation- Time Line

Putting it all Together: Modern Computer Architecture

GPU Architecture. Michael Doggett Department of Computer Science Lund university

Computer Organization

CSE 591/392: GPU Programming. Introduction. Klaus Mueller. Computer Science Department Stony Brook University

All About the Cell Processor

GPGPU, 1st Meeting Mordechai Butrashvily, CEO GASS

Microelectronics. Moore s Law. Initially, only a few gates or memory cells could be reliably manufactured and packaged together.

Sony/Toshiba/IBM (STI) CELL Processor. Scientific Computing for Engineers: Spring 2008

Computer Systems Architecture

HP PA-8000 RISC CPU. A High Performance Out-of-Order Processor

CS 152, Spring 2011 Section 10

Computer Evolution. Budditha Hettige. Department of Computer Science

EN164: Design of Computing Systems Topic 06.b: Superscalar Processor Design

IT 252 Computer Organization and Architecture. Introduction. Chia-Chi Teng

Computer Architecture

! Readings! ! Room-level, on-chip! vs.!

Computer & Microprocessor Architecture HCA103

Lecture 1: Introduction

Architectures. Michael Doggett Department of Computer Science Lund University 2009 Tomas Akenine-Möller and Michael Doggett 1

Intel Many Integrated Core (MIC) Matt Kelly & Ryan Rawlins

CSE 591: GPU Programming. Introduction. Entertainment Graphics: Virtual Realism for the Masses. Computer games need to have: Klaus Mueller

Lecture 21: Parallelism ILP to Multicores. Parallel Processing 101

Administrivia. HW0 scores, HW1 peer-review assignments out. If you re having Cython trouble with HW2, let us know.

William Stallings Computer Organization and Architecture 8 th Edition. Chapter 18 Multicore Computers

Portland State University ECE 588/688. Graphics Processors

CS 152 Computer Architecture and Engineering. Lecture 16: Graphics Processing Units (GPUs)

Chapter 2: Computer-System Structures. Hmm this looks like a Computer System?

HW Trends and Architectures

Uniprocessor Computer Architecture Example: Cray T3E

Computer Architecture s Changing Definition

MICROPROCESSOR TECHNOLOGY

Fundamentals of Computers Design

UNIT 8 1. Explain in detail the hardware support for preserving exception behavior during Speculation.

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 1. Computer Abstractions and Technology

Fundamentals of Computer Design

Trends in the Infrastructure of Computing

EC 513 Computer Architecture

HISTORY OF MICROPROCESSORS

Computer Architecture!

Reader's Guide Outline of the Book A Roadmap For Readers and Instructors Why Study Computer Organization and Architecture Internet and Web Resources

Challenges for GPU Architecture. Michael Doggett Graphics Architecture Group April 2, 2008

EN164: Design of Computing Systems Lecture 24: Processor / ILP 5

Computer Architecture!

Fundamentals of Computer Design

INTEL Architectures GOPALAKRISHNAN IYER FALL 2009 ELEC : Computer Architecture and Design

History. PowerPC based micro-architectures. PowerPC ISA. Introduction

CSCI 402: Computer Architectures. Parallel Processors (2) Fengguang Song Department of Computer & Information Science IUPUI.

Anatomy of AMD s TeraScale Graphics Engine

CS 152, Spring 2011 Section 8

Advanced processor designs

IBM's POWER5 Micro Processor Design and Methodology

Introduction to Multicore architecture. Tao Zhang Oct. 21, 2010

Von Neumann architecture. The first computers used a single fixed program (like a numeric calculator).

Ron Kalla, Balaram Sinharoy, Joel Tendler IBM Systems Group

Hakam Zaidan Stephen Moore

CC312: Computer Organization

The University of Texas at Austin

Manycore Processors. Manycore Chip: A chip having many small CPUs, typically statically scheduled and 2-way superscalar or scalar.

AMD Radeon HD 2900 Highlights

SYSTEM BUS AND MOCROPROCESSORS HISTORY

Portland State University ECE 588/688. Cray-1 and Cray T3E

Transcription:

This Unit: Putting It All Together CIS 371 Computer Organization and Design Unit 15: Putting It All Together: Anatomy of the XBox 360 Game Console Application OS Compiler Firmware CPU I/O Memory Digital Circuits Gates & Transistors Anatomy of a game console Microsoft XBox 360 Focus mostly on CPU chip Briefly talk about system Graphics processing unit (GPU) I/O and other devices CIS 371 (Martin): Xbox 360 1 CIS 371 (Martin): Xbox 360 2 Sources Application-customized CPU design: The Microsoft Xbox 360 CPU story, Brown, IBM, Dec 2005 http://www-128.ibm.com/developerworks/power/library/pa-fpfxbox/ XBox 360 System Architecture, Andrews & Baker, IEEE Micro, March/April 2006" Microprocessor Report" IBM Speeds XBox 360 to Market, Krewell, Oct 31, 2005" Powering Next-Gen Game Consoles, Krewell, July 18, 2005 What is Computer Architecture? The role of a computer architect: Technology Logic Gates SRAM DRAM Circuit Techniques Packaging Magnetic Storage Flash Memory Design Plans Manufacturing Goals Function Performance Reliability Cost/Manufacturability Energy Efficiency Time to Market Computer PCs Servers PDAs Mobile Phones Supercomputers Game Consoles Embedded CIS 371 (Martin): Xbox 360 3 CIS 371 (Martin): Xbox 360 4

Microsoft XBox Game Console History XBox First game console by Microsoft, released in 2001, $299 Glorified PC 733 Mhz x86 Intel CPU, 64MB DRAM, NVIDIA GPU (graphics) Ran modified version of Windows OS ~25 million sold XBox 360 Second generation, released in 2005, $299-$399 All-new custom hardware 3.2 Ghz PowerPC IBM processor (custom design for XBox 360) ATI graphics chip (custom design for XBox 360) 50+ million sold Microsoft Turns to IBM for XBox 360 Microsoft is mostly a software company Turned to IBM & ATI for XBox 360 design Sony & Nintendo also turned to IBM (for PS3 & Wii, respectively) Design principles of XBox 360 [Andrews & Baker] Value for 5-7 years! big performance increase over last generation Support anti-aliased high-definition video (720*1280*4 @ 30+ fps)! extremely high pixel fill rate (goal: 100+ million pixels/s) Flexible to suit dynamic range of games! balance hardware, homogenous resources Programmability (easy to program)! listened to software developers CIS 371 (Martin): Xbox 360 5 CIS 371 (Martin): Xbox 360 6 More on Games Workload XBox 360 System from 30,000 Feet Graphics, graphics, graphics Special highly-parallel graphics processing unit (GPU) Much like on PCs today But general-purpose, too The high-level game code is generally a database management problem, with plenty of object-oriented code and pointer manipulation. Such a workload needs a large L2 and high integer performance. [Andrews & Baker] Wanted only a modest number of modest, fast cores Not one big core Not dozens of small cores (leave that to the GPU) Quote from Seymour Cray CIS 371 (Martin): Xbox 360 7 CIS 371 (Martin): Xbox 360 [Krewell, Microprocessor Report, Oct 21, 2005] 8

XBox 360 System XBox 360 Xenon Processor ISA: 64-bit PowerPC chip RISC ISA Like MIPS, but with condition codes Fixed-length 32-bit instructions 32 64-bit general purpose registers (GPRs) ISA Extended with VMX-128 operations 128 registers, 128-bits each Packed vector operations Example: four 32-bit floating point numbers One instruction: VR1 * VR2! VR3 Four single-precision operations Also supports conversion to Microsoft DirectX data formats Similar to Altivec (and Intel s MMX, SSE, SSE2, etc.) Works great for 3D graphics kernels and compression CIS 371 (Martin): Xbox 360 [Andrews & Baker, IEEE Micro, Mar/Apr 2006] 9 CIS 371 (Martin): Xbox 360 10 XBox 360 Xenon Processor Peak performance: ~75 gigaflops Gigaflop = 1 billion floating points operations per second Pipelined superscalar processor 3.2 Ghz operation Superscalar: two-way issue VMX-128 instructions (four single-precision operations at a time) Hardware multithreading: two threads per processor Three processor cores per chip XBox 360 Xenon Chip (IBM) 165 million transistors IBM s 90nm process Three cores 3.2 Ghz Two-way superscalar Two-way multithreaded Shared 1MB cache Result: 3.2 * 2 * 4 * 3 = ~77 gigaflops CIS 371 (Martin): Xbox 360 11 CIS 371 (Martin): Xbox 360 [Andrews & Baker, IEEE Micro, Mar/Apr 2006] 12

Xenon Processor Pipeline Four-instruction fetch Two-instruction dispatch Five functional units VMX128 execution decoupled from other units 14-cycle VMX dot-product Branch predictor: 4K G-share predictor Unclear if 4KB or 4K 2-bit counters Per thread XBox 360 Memory Hiearchy 128B cache blocks throughout 32KB 2-way set-associative instruction cache (per core) 32KB 4-way set-associative data cache (per core) Write-through, lots of store buffering Parity 1MB 8-way set-associative second-level cache (per chip) Special skip L2 prefetch instruction MESI cache coherence Error Correcting Codes (ECC) 512MB GDDR3 DRAM, dual memory controllers Total of 22.4 GB/s of memory bandwidth Direct path to GPU (not supported in current PCs) CIS 371 (Martin): Xbox 360 [Brown, IBM, Dec 2005] 13 CIS 371 (Martin): Xbox 360 14 Xenon Multicore Interconnect XBox 360 System CIS 371 (Martin): Xbox 360 [Brown, IBM, Dec 2005] 15 CIS 371 (Martin): Xbox 360 [Andrews & Baker, IEEE Micro, Mar/Apr 2006] 16

XBox Graphics Subsystem 10.8 GB/s FSB bandwidth link each way Graphics Parent Die (ATI) 232 million transistors 500 Mhz 48 unified shader ALUs Mini-cores for graphics 22.4 GB/s DRAM bandwidth 28.8 GB/s link bandwidth CIS 371 (Martin): Xbox 360 [Andrews & Baker, IEEE Micro, Mar/Apr 2006] 17 CIS 371 (Martin): Xbox 360 [Andrews & Baker, IEEE Micro, Mar/Apr 2006] 18 GPU daughter die (NEC) 100 million transistors 10MB edram Embedded NEC Electronics Anti-aliasing Render at 4x resolution, then sample Z-buffering Track the depth of pixels 256GB/s internal bandwidth CIS 371 (Martin): Xbox 360 [Andrews & Baker, IEEE Micro, Mar/Apr 2006] 19 Putting It All Together Unit 0: Abstraction and design goals Unit 1: ISAs Unit 2/3: Digital logic & single-cycle datapath Unit 4: Arithmetic Unit 5/6: Pipelining & performance Unit 7/8: Caches & virtual memory Unit 9: Superscalar Unit 10: Lab hints Unit 11: Static & Dynamic Scheduling Unit 12: Multicore Unit 13/14: Vectors/Power CIS 371 (Martin): Xbox 360 20