Emotion Engine A look at the microprocessor at the center of the PlayStation2 gaming console Charles Aldrich.

Slides:



Advertisements
Similar presentations
DSPs Vs General Purpose Microprocessors
Advertisements

Computer Architecture and the Fetch-Execute Cycle Parallel Processor Systems.
Chapter 1 An Introduction To Microprocessor And Computer
Microprocessors. Von Neumann architecture Data and instructions in single read/write memory Contents of memory addressable by location, independent of.
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
PlayStation2 as a General Purpose Computer (The Emotion Engine vs. general PC architectures)
Chris Foster Brian Moore Scott Thibaudeau Overview I/O EE – Emotion Engine!! Graphics Synthesizer Comparison.
Processor Technology and Architecture
Chapter 5: Computer Systems Organization Invitation to Computer Science, Java Version, Third Edition.
Computational Astrophysics: Methodology 1.Identify astrophysical problem 2.Write down corresponding equations 3.Identify numerical algorithm 4.Find a computer.
Chapter 4 Processor Technology and Architecture. Chapter goals Describe CPU instruction and execution cycles Explain how primitive CPU instructions are.
GCSE Computing - The CPU
architectural overview
1 Chapter 4 The Central Processing Unit and Memory.
PlayStation 2 Architecture Irin Jose Farid Momin Quy Ngo Olivia Wong.
Inside The CPU. Buses There are 3 Types of Buses There are 3 Types of Buses Address bus Address bus –between CPU and Main Memory –Carries address of where.
GPGPU overview. Graphics Processing Unit (GPU) GPU is the chip in computer video cards, PS3, Xbox, etc – Designed to realize the 3D graphics pipeline.
SUPERSCALAR EXECUTION. two-way superscalar The DLW-2 has two ALUs, so it’s able to execute two arithmetic instructions in parallel (hence the term two-way.
1 Instant replay  The semester was split into roughly four parts. —The 1st quarter covered instruction set architectures—the connection between software.
Computer performance.
Cell Architecture. Introduction The Cell concept was originally thought up by Sony Computer Entertainment inc. of Japan, for the PlayStation 3 The architecture.
1 Copyright © 2011, Elsevier Inc. All rights Reserved. Appendix E Authors: John Hennessy & David Patterson.
Ross Brennan On the Introduction of Reconfigurable Hardware into Computer Architecture Education Ross Brennan
Verification and Performance Estimation Environment for 3D Graphics Geometry Acceleration System Young-Su Kwon.
Semiconductor Memory 1970 Fairchild Size of a single core –i.e. 1 bit of magnetic core storage Holds 256 bits Non-destructive read Much faster than core.
Simultaneous Multithreading: Maximizing On-Chip Parallelism Presented By: Daron Shrode Shey Liggett.
Lecture#14. Last Lecture Summary Memory Address, size What memory stores OS, Application programs, Data, Instructions Types of Memory Non Volatile and.
3 1 3 C H A P T E R Hardware: Input, Processing, and Output Devices.
Microcontrollers Microcontroller (MCU) – An integrated electronic computing device that includes three major components on a single chip Microprocessor.
David Carter SCEE Technology Group
Computer Graphics Graphics Hardware
Company LOGO High Performance Processors Miguel J. González Blanco Miguel A. Padilla Puig Felix Rivera Rivas.
Chapter 2 The CPU and the Main Board  2.1 Components of the CPU 2.1 Components of the CPU 2.1 Components of the CPU  2.2Performance and Instruction Sets.
Measuring System Performance The speed of a computer is often referred to as THROUGHPUT. This is very difficult to measure. It can be done with Measures.
Chapter 2 Parallel Architecture. Moore’s Law The number of transistors on a chip doubles every years. – Has been valid for over 40 years – Can’t.
RISC By Ryan Aldana. Agenda Brief Overview of RISC and CISC Features of RISC Instruction Pipeline Register Windowing and renaming Data Conflicts Branch.
Kevin Eady Ben Plunkett Prateeksha Satyamoorthy.
Computer Organization - 1. INPUT PROCESS OUTPUT List different input devices Compare the use of voice recognition as opposed to the entry of data via.
University of Illinois at Chicago Electronic Visualization Laboratory (EVL) SuperDuperNetworking Transforming Supercomputing …from the point of view of.
Vector/Array ProcessorsCSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Vector/Array Processors Reading: Stallings, Section.
3/29: Processors Roll Call Lecture: CPU’s Other (?)
The fetch-execute cycle. 2 VCN – ICT Department 2013 A2 Computing RegisterMeaningPurpose PCProgram Counter keeps track of where to find the next instruction.
Department of Industrial Engineering Sharif University of Technology Session# 6.
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
Stored Programs In today’s lesson, we will look at: what we mean by a stored program computer how computers store and run programs what we mean by the.
Motherboard A motherboard allows all the parts of your computer to receive power and communicate with one another.
Academic PowerPoint Computer System – Architecture.
Sony PlayStation 3 Sony also laid out the technical specs of the device. The PlayStation 3 will feature the much-vaunted Cell processor, which will run.
Chapter 5: Computer Systems Design and Organization Dr Mohamed Menacer Taibah University
Playstation2 Architecture Architecture Hardware Design.
THE MICROPROCESSOR A microprocessor is a single chip of silicon that performs all of the essential functions of a computer central processor unit (CPU)
Succeeding with Technology Chapter 2 Hardware Designed to Meet the Need The Digital Revolution Integrated Circuits and Processing Storage Input, Output,
The Central Processing Unit (CPU)
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
Emotion Engine™ AKA the “Playstation 2” Architecture Or The progeny of a MIPS and a DSP By Idan Gazit – June 2002.
Computer Architecture Lecture 24 Parallel Processing Ralph Grishman November 2015 NYU.
GPGPU introduction. Why is GPU in the picture Seeking exa-scale computing platform Minimize power per operation. – Power is directly correlated to the.
Interrupts and Exception Handling. Execution We are quite aware of the Fetch, Execute process of the control unit of the CPU –Fetch and instruction as.
CPIT Program Execution. Today, general-purpose computers use a set of instructions called a program to process data. A computer executes the.
Software Design and Development Computer Architecture Computing Science.
Computer Graphics Graphics Hardware
GCSE Computing - The CPU
Graphics Processor Graphics Processing Unit
Chapter 10: Computer systems (1)
Visit for more Learning Resources
Cell Architecture.
THE CPU i Bytes 1.1.
Computer Graphics Graphics Hardware
GCSE Computing - The CPU
Presentation transcript:

Emotion Engine A look at the microprocessor at the center of the PlayStation2 gaming console Charles Aldrich

The PlayStation2 Unlike many of the devices we have looked at, the PS2 seeks to do a specific task very well, namely 3D Gaming As a result the construction of the platform is different from most computers The EmotionEngine is also quite different as a result of this

The PlayStation2 EmotionEngine is specifically designed to handle several tasks (in order of importance) –Geometry Calculations –Behaviour/World Simulation –System Functions

Creating Graphics The EmotionEngine is not responsible for creating and displaying graphics, rather it is responsible for passing a list of rendering commands to the graphics synthesizer The graphics synthesizer, in the PS2 is a souped up video accelerator

EmotionEngine basic architecture MIPS III core A Vector Unit (actually made up of 2, VU0 and VU1) Floating Point Image Processing Unit (does mpg2) Graphics Interface Unit RDRAM interface I/O interface DMA Controller (10 channel)

*Image courtesy of arstechnica.com

Architecture, cont. All components are connected via a 128-bit internal bus Toshiba, who developed the EmotionEngine (and licensed it to Sony) decided, early on, that the EmotionEngine was not going to be a general purpose microprocessor rather it was only going to be designed to run 3D games This allowed the design team to determine the roles of the various internal devices during design

Architecture, cont. The idea was to set up the various components to work in groups to accomplish set tasks –CPU + FPU: basic program control, housekeeping, etc –CPU + FPU + VU0: behavior, physics calculations, etc –VU1: simple geometry calculations that produce display lists which are sent directly to the Graphics Synthesizer –IPU: image decompression Next we’ll look at how each of these groups work together

CPU/FPU/VU0 group Both the FPU and the VU0 have a dedicated 128-bit bus, so they do not need to use the shared system bus The dedicated bus allows the VU0 to function as a MIPS III coprocessor The VU0 and the CPU share the ScratchPadRam (16k of very fast RAM) The SPRAM functions as a workspace where both the CPU and the VU0 work together on a piece of data before sending it out over the system bus

VU1/Graphics Synthesizer Similar to the VU0 and the CPU, the VU1 has a dedicated 128-bit bus connection to the Graphics Interface Do not work as closely as the VU0 and CPU, neither controls the other

MIPS III Core details The EmotionEngine uses a specialized version of the MIPS architecture – bit registers –2 64-bit integer ALUs –128-bit load/store unit –Branch execution unit –FPU Coprocessor –Vector Coprocessor

MIPS III Core details, cont. Cache –16k instruction –8k data Capable of speculative execution –2 part branch-prediction mechanism –Fairly simple

MIPS III Core details, cont. Pipeline –Relatively short, 6 stage pipeline 1. PC Select 2. Instruction fetch 3. Instruction decode and register read 4. Execute 5. Cache access 6. Write back FPU coprocessor is fairly standard

SIMD The emotion engine takes advantage of SIMD (Single Instruction stream, Multiple Data stream)

SIMD, cont. As the picture shows, parallel streams of data all have the same instructions done to it The EmotionEngine supports (using both ALUs) 128-bit integer SIMD in several configurations –16 8-bit ops/cycle –8 16-bit ops/cycle –4 32-bit ops/cycle

Visual Power The EmotionEngine is best suited for precision graphics, and the power of the processor comes from the Vector Processing units As we’ve discussed already, there are two vector units The two are similar on an architectural level, but very different on a functional level

VU0 128-bit SIMD/VLIW design Works as a coprocessor with the CPU Has its own set of bit FPRs (floating point registers) Also has bit integer registers for integer operations

VU1 Has all the architectural features of VU0 Also has some additions which pertain to geometry functions in coordination with the Graphics Synthesizer This includes the addition of the EFU (Elementary Functional Unit) which does basic math essential to geometric processing

Basic Stats Clock Speed Mhz Transistors Million Memory - 32MB (Direct RDRAM) Memory Bandwidth - 3.5GB/sec

Performance Numbers Floating Point Gigaflops Perspective Transformation - 66 Million Polygons/sec Lighting - 38 Million Polygons/sec Fog - 36 Million Polygons/sec Curved Surface Generation (Bezier) - 16 Million Polygons/sec

Conclusion The EmotionEngine is clearly a very capable graphics processor, but its true power is most evident when placed in the context of the PS2 which was designed to take advantage of the processors specific architecture