the power to play [games consoles]

Download The power to play [games consoles]

If you can't read please download the document

Upload: m

Post on 21-Sep-2016

219 views

Category:

Documents


1 download

TRANSCRIPT

  • power to play Mike Froggatt describes the technological and marketing factors that have transformed the games console into a powerful computing device and the home gateway to the Internet

    revolution has occurred in the landscape of home computing. In the mid 1990s, if you had asked someone A to identify the most powerful

    computer in their home, they would probably have pointed at a PC or home computer. Today, that title is, more likely than not, held by a games console.

    Consoles are on a fast track of technological evolution that threatens to outstrip the incremental advances. of the PC marketplace. Every five years or so there is a metaphorical 'extinction event' where the technology of the previous generation of consoles is swept away, only to be replaced by a new generation that has absorbed all the intervening architectural and semiconductor process improvements. Consoles do not have to provide the backward compatibility of the PC, so at each generation the designers are free to pick the technology delivering the best price/performance ratio.

    Hi'storical perspective The meteoric rise in the performance of games consoles began around 1994, when the transition from 16 bit to 3 2 bit systems heralded a radical shift in hardware architectures and approaches to software development. The hardware of the 16 bit generation was epitomised by the Super Nintendo Entertainment System (SNES) and the Sega Megadrive. These coupled off-the-shelf CPUs (the 65 8 1 6 in the case of the SNES and the 68000 in the case of the Megadrive) with custom logic for graphics and audio. The executable programs were provided on mask programmed ROM cartridges, placing severe limitations on the size of applications that could be developed. Despite the emphasis on graphics, these were not rendering systems as we would understand the term today. Instead, rather than drawing objects into a frame buffer to produce

    the final image, the picture was built up by layering a number of elements, typically referred to as sprites and playfields, at display time. Sprites were used to represent the player or computer-controlled characters, while playfields showed the two-dimensional landscape the characters were moving across. These elements were blended together at display time by the display controller, imposing critical demands on the memory bandwidth. If, at any point, the number of elements requested by the application exceeded the memory bandwidth, then some elements would simply not be used, so that parts of characters would 'disappear' from the display.

    Sprites were typically defined as small bitmaps (for example 1 6 x 1 6 or 3 2 x 3 2 pixels), while playfields were represented as a two- 1 Sprites and playfields

    tile definitions

    resulting display

    Hi 1 4 2

    sprite definition

    IEE REVIEW MARCH 2002 13

  • 16 bit

    CPU display controller .--_._______________________ i i buiidframe n-1

    32 bit

    CPU drawing engine disp!ay controller -----_______________________

    i j build frame n-i

    fetch data for sprites and playfields as

    display is generated

    ________________..__________

    draw frame n-1 '

    draw shapes into framebuffer ! display frame n+ l

    display framebuffer

    generation dimensional array of tile identifiers, similar to a sequences for 16 and 32 bit svstems character-mapped display (Fig. 1) . The tile

    identifier referenced a tile definition, also a small bitmap. This indirection in the memory layout for playfields allowed for the efficient re- use of a single tile definition in many locations on the playfield, but was highly unsuitable for

    being calculated; an autonomous rendering engine is drawing the components of frame. n into the display buffer, and the image of frame n- 1 is being displayed (Fig. 2).

    The shift to 32 bit architectures.marked two further significant technological changes. First, software was increasingly distributed on CD, as opposed to ROM cartridges. Secondly, game programmers began to use more sophisticated software engineering techniques, relying on core operating systems, libraries and high-level languages such as C. 16 bit consoles, in contrast, had booted directly into games which, in turn, had been developed almost. exclusively in assembly language.

    The additional capacity afforded by CD (and subsequently DVD in the current generation of consoles) allowed the creation of game worlds of ever greater complexity (Figs 3 ) , while the extensive manufacturing infrastructure for CDS allowed the market to respond to the popularity -or otherwise-of individual titles in a way that had not been possible with the extensive lead times required for ROM cartridge production. The capacity to handle larger, more complex games would have been pointless without a corresponding increase in the productivity of developers-made possible by the adoption of higher-level programming tools. In particular, the use of system libraries to simplify the most commonly required programming tasks represented . a fundamental change in the attitude of the development community, which had hitherto been highly suspicious of third- party libraries.

    14 IEE REVIEW MARCH 2002

  • It required just two integrated circuits to implement the hardware core of the Playstation: a RISC CPU core (combined with a coprocessor designed to accelerate the mathematical operations required to manipulate 3D objects), and an autonomous drawing engine that read a display list from memory and could draw lines, triangles and other geometric primitives into the frame buffer. The level of semiconductor integration was, for the time, simply staggering. It had taken ten years for the appearance of a semiconductor process capable of integrating 1 million transistors onto a single device and capable of turning the 2 0 0 0 0 discrete components of System G into those two ICs. PlayStation was a standard-bearer for the

    ' principles of system-on-chip integration, and set the trend for the extensive semiconductor integration that is to be seen in the current generation of consoles.

    For any other consumer electronics product, this aggressive application of technology would have resulted in a retail price beyond the means of all but the wealthiest enthusiast. In the games industry, however, the console hardware is merely an enabler for the purchase of software. A licensing fee associated with each unit of software allows the console manufacturer to sell hardware at little or no profit, keeping the retail

    price low and encouraging market acceptance. Like the PC, the games console will benefit from advances in processing technology- with one subtle difference. In the PC market, technological improvements can lead either to cost reductions or enhanced performance. The performance specifications of a console are, however, ,fixed over its lifetime, and, consequently, all yield improvements are used solely to reduce costs. Indeed console manufacturers are often at some pains to maintain performance characteristics in the face of changing component specifications.

    The challenge of authenticity With a business model predicated on the purchase of software, it becomes imperative to protect against unauthorised copying. Indeed, given the aggressive pricing of consoles, a manufacturer who is able to sell hardware but not software can be in a worse position than one who cannot sell anything at all! Understandably, considerable effort has been expended in developing techniques for authenticating software that is to be run on a console. The authentication procedure is two-fold: first, it protects against unauthorised duplication; secondly, it ensures that a software title will only run on a machine corresponding to the

    .

    IEE REVIEW MARCH 2002 15

  • emotion engine

    I

    data memory

    t 4

    DMA controller

    vu1

    b

    3 U 5 6.

    3 _.

    3 m

    I

    32 Mbyte direct RAMBUS memory

    graphics synthesiser

    pipelines

    4 Mbyte embedded DRAM

    4 PlayStation 2 graphics architedture (sound and I/O systems omitted)

    geographic region in which the software is licensed. While perhaps no authentication scheme is entirely secure, the increasing complexity of consoles is, in itself, a deterrent, since it makes the task of reverse-engineering the authentication process ever more difficult.

    The labours of Hercules To fully appreciate the architecture of any of the current generation of games consoles, it is necessary to understand the kinds of operations that they need to perform. There are six basic operational requirements.

    Game logic This provides overall control of the software running on the console, and is primarily responsible for sequencing of the stages of a game, e g introduction, game-play and end of game In general, core game logic has to process large quantities of data, as there is likely to be at least one composite software object for each object in the game-world, imposing heavy loads on the CPU's data and instruction caches

    Physical simulation and mathematical modelling Simulation and modelling are becoming an

    increasingly important, and computationally intensive, aspect of game programming. Kinematics techniques from robotics research are used to calculate the position of a character's limbs in space, and are invaluable for matching a character's movements to the current game environment, allowing, for example, feet to realistically track over uneven ground. Mass- spring systems are used to dynamically model the movement of cloth and fabrics, and racing games require increasingly accurate modelling of suspension, mass distribution and engine behaviour.

    .--

    Geometry processing At its simplest, this is the process by which points in the virtual 3D space are mapped onto 2D locations on the TV screen. The operation is complicated by the impossibility of effecting a full range of transformations on a 3D vector-notably the perspective transformation- using linear algebra with three component vectors and 3x3 matrices. To resolve the prob1em;a point in 3D space, (X, Y, Z) say, is represented by a homogeneous vector (x, y, z, w), where x=wX, y=wY and z=wZ. The w component is normally 1 , but can vary

    16 IEE REVIEW MARCH 2002

  • according to the transformation applied Hence the most common operations in geometry processing are the multiplication of a homogeneous vector by a 4x4 transformation matrix, followed by normalisation (the division of the resulting vector by its w component)

    Geometry processing also increasingly involves converting higher-order surfaces, such as quadratic or cubic surfaces, into the format required for rendering (usually triangles) In

    console are manifold and exacting. There must be adequate CPU power to run the core of the game (with software that is often unfriendly to both instruction and data caches); physical simulation and mathematical modelling requires floating-point computational per- formance that, until recently, was restricted to supercomputers, and rendering performance is expected to be of the order of gigapixels per

    second-independent of the size and style of general, a higher-order surface is a far geometric primitive being drawn more compact representation of a The architecture of the Sony curved surface than a set of Playstation 2, launched in the UK triangles-an important consider- November 2 0 0 0 , illustrates ation given the constraints on con- ow one team of console sole performance currently posed designers have addressed by limited memory bandwidth. these demanding requirements

    Rendering Game logic runs on the Rendering is the process by Emotion Engine (EE) Core-a which a description of a shape, 128 bit variant of the MIPS e.g. as a triangle, is converted processor family. The EE Core into a visible shape on the is a true 128 bit design, screen. It may also include allowing a 128 bit mapping a portion of an image homogeneous vector of four onto the shape (texture 3 2 bit single-precision mapping), or interpolating floating-point values to be colour values across the shape processed as an atomic to simulate lighting. Rendering quantity. In addition to offers ample scope for the instruction and data application of parallelism, as the caches, the EE Core operations applied are usually the same for 5 The PlavStation 2s many pixels (chough with different data values), indicating that SIMD (single instruction, multiple data) approaches may be appropriate

    massive heatsink SlSO serves as an EMC

    sheild

    110 processing In the past, I/O processing requirements would have been limited to simple digital control pads However, current systems are increasingly expected to interface with an extensive range of peripherals, including force-feedback analogue control pads, industry-standard interfaces such as USB or IEEE1394, and Ethernet controllers and hard discs, not forgetting the systems primary storage controller (typically a CD or DVD-ROM drive)

    Audio Current systems are expected to provide multiple channels of audio at near-CD quality. This audio signal, including audio data streamed from disk, is then processed through an effects unit to produce the final stereo, or multi- channel signals.

    Implementation in Playstation 2 The performance demands on todays games

    incorporates a so-called scratchpad memory that can be filled and emptied via .direct memory access (DMA) . This provides fast, deterministic access to data that is only operated on once and then returned to main memory-a common requirement in multimedia processing, which is poorly supported by traditional caching methods.

    Physical simulation and maths processing are performed on Vector Unit 0 (VUO), which is closely coupled to the EE Core. While VU0 can operate as a coprocessor to the EE Core, it is also a fully independent processor, with its own registers, instruction and data memories. Both VU0 andVU1 (below) utilise a long instruction word (LIW) architecture, where four multiply- accumulate (MAC) operations, plus a further operation (load/store, divide etc), can be issued in a single clock cycle.

    The second vector processor, VU1, is dedicated to geometry processing. Because it is expected to deal with relatively large quantities of data, the instruction and data memories for VU1 are four times the size of those in VU0 ( 1 6 kbyte each, as opposed to 4 kbyte). VU1 also includes an additional computation unit to support trigonometric operations, and has

    IEE REVIEW MARCH 2002 17

  • 6 High integi levels contril Playstation 2 PCB

    ~ ~

    special instructions that allow i t to compatibllity. This support for backward communicate efficiently with the Playstation 2s compatibility is a unique feature in recent graphics processor. Since vu1 1s a fully console designs. The IOP interfaces to the programmable processor, it can control pads, memory cards and DVD support any type of higher- drive, and in future will also be order surface that the responsible for communicating programmer wishes to with the hard disk and Ethernet implement-including adapter. A multi-tasking kernel techniques such as enables the IOP to time slice

    between the different I/O subdivision surfaces which, until recently, were devices, and allows developers solely within the domain of high-end, off-line rendering Finally, 48 channels of audio are systems provided by the SPU2 -a derivation

    Image rendering is performed of the sound processor included in by the Graphics Synthesiser (GS). the Playstation. SPU2 incorporates This integrates 16 rendering two sound processor cores, allowing pipelines (allowing 16 pixels to be the output of one to be modulated produced per clock cycle) with 4 by the other. The SPU2 supports megabytes of embedded DRAM The CD quality audio, and latter is used to hold the display compressed audio using buffers, and acts as a temporary store for images used in texture A speed-based memory mapping The GSs embedded hierarchy is a key feature DRAM is a scarce resource, and of the Playstation 2 textures are only loaded as and when architecture, with each of required, using a dedicated DMA channel from the processing units, the the EE.The GS offers unprecedented bandwidth. EE, the GS and the two vector units 48 Gbyte/s is available to the rendering incorporating an element of fast, local memory pipelines-five to six times the memory that acts as a buffer between the processing unit bandwidth available to graphics processors with and the Playstation 2s main memory. This off-chip memory. design is crucial in minimising memory access

    I/O processing is off-loaded onto a separate latency, and reduces the instances when multiple processor The 110 Processor (IOP) is components may be attempting to use the

    main CPU bus simultaneously. An intelligent, multi-channel DMA

    controller supports high efficiency transfers between the individual PlayStation 2 subsystems and leaves the EE Core free to execute game code. Main memory on the Playstation 2 is provided by

    32Mbytes of direct rambus memory (RDRAM), in a

    3.2 Gbyte/s, two-channel con- guration. Along with providing

    excellent bandwidth, direct RDRAM has the added benefit of small, low-pin-count packaging. Alternative memory technologies

    to add their own I/O modules.

    ADPCM encoding.

    would require approximately twice the PCB area to deliver similar capacity and bandwidth.

    Architecture to implementation In console design, architectural innovation is of little value unless it is matched by a physical implementation that delivers a reliable and cost- effective end product. First and foremost in the

    18 I E E REVIEW MARCH 2002

  • realisation of this goal is the aggressive use of semiconductor technology. In the case of Playstation 2, the EE Core, the twin vector units,. the DMA controller plus ancillary systems are all integrated on a single die,.while the GS forms another single IC. Both devices were originally deployed, in a 0.25 pm process, and have subsequently migrated to a 0.18 pm process. Similar integration levels are found on the IOP, which combines the I/O processing core with a virtually complete I/O subsystem, including the USB and IEEEl394 interfaces.

    Thermal management on the Playstation 2. is handled by a metal pressing that serves as heat sink for the EE, GS and RDRAM memory, and also provides electromagnetic shielding (Fig. 5). A complex arrangement of high and low-aspect ratio fins on the shielding allows the entire system to be cooled with a single, low-diameter fan. The resulting design is highly compact, providing sufficient free internal space to house the forthcoming 3.5 in hard disk drive (Fig. 6).

    .

    The next' level With designers unconstrained by the PC's need

    for backward compatibility and software licensing strategies that underwrite innovative hardware design, the spectacular improvements in console performance are set to continue. Today, cutting-edge research in graphics, software engineering and artificial intelligence - is being applied in game software. Tomorrow, radical ideas in computing hardware will find their first expression in games consoles. The modern games console 'is undoubtedly a lot of fun; it's also the most exacting mass-market test- bed for the best and the latest in computer engineering.

    Acknowledgement The author would like to thank Mark Breugelmans of Sony Computer Entertainment Europe's Technology Group for his assistance in the preparation of this article.

    0 IEE: 2002 Mike Froggatt AMIEE is Senior Programmer with Sony Computer Entertainment Europe, Quern House, Mill Court, Great Shelford, Cambridge CB2 5LD (tel +44 (0) 1223 847800; Mike-Froggatt@scee,net).

    ~

    Fax back 009 Faxback010

    IEE REVIEW MARCH 2002 19