[ NOTE: The data in this archived post refers to the iPhone 3G and 2G iPod touch and earlier. ]
With the launch of the iTunes App Store and the arrival of “iPhone 2.0" just days away, the buzz surrounding the many games that will make their debut when the store goes live is growing louder and louder. The previews we’ve seen over the past few months leave no room for doubt that the iPhone is an extremely capable gaming device and that we will see some very solid titles available on launch day. Given this, we thought it a particularly good time to have a look at just what makes the iPhone thusly capable.
There has been much coverage of the rich Software Development Kit (SDK) Apple has made available, at no cost, to developers. The Cocoa programming environment with its collection of robust frameworks and APIs–not the least of which is OpenGL ES–gives developers an elegant and powerful way to interact with the iPhone hardware. Less has been said, however, about the hardware itself. What gear gives the iPhone its game?
The iPhone’s core system-on-a-chip (SoC) hardware is a Samsung S5L8900. Being a SoC, the device consists of various discrete components that have been integrated into a single device in order to provide a wide range of functionality in a small, low-cost package. Two components are of particular importance in quantifying such a device’s ability to function as a game platform: the processor core and the graphics hardware.
The Samsung chipset at the heart of the iPhone utilizes a 32-bit RISC ARM processing core, the ARM1176JZ(F)-S v1.0. The ARM device is capable of running at 620MHz, but Apple has downclocked it to 412MHz, presumably in the interest of extending battery life. (Apple has, at least once in the past, adjusted the clockspeed of both the processor and the system bus via firmware update.) Unlike the original iPhone, the 3G iPhone and the original iPod touch, the second-generation iPod touch features an ARM1176 v4.0 core running at 532MHz.
Some notable features of the ARM processor in the iPhone:
- High performance integer processor:
- 8-stage integer pipeline delivers high clock frequency
- Separate load-store and arithmetic pipelines
- Branch Prediction and Return Stack
- Up to 675 Dhrystone 2.1 MIPS in 0.13u process
- High performance memory system
- Supports 4-64k cache sizes
- Optional tightly coupled memories with DMA for multi-media applications
- Quad-ported AMBA 3 AXI bus interface speeds instruction and data access
- ARMv6 memory system architecture accelerates OS context-switch
- Vector Floating Point coprocessor for powerful acceleration of embedded 3D-graphics
The Samsung SoC also features an implementation of Imagination Technologies’ PowerVR MBX Lite 3D accelerator, likely running at the iPhone’s bus speed of 103MHz. This fourth-generation PowerVR chipset is basically an evolution of the second-generation graphics hardware used in the Sega Dreamcast (an amazing console, to those unaware) and which, like its console predecessor, utilizes a unique tile-based rendering system.
Unique patent protected tiling technology enables on-chip processing of hidden surface removal (pixel perfect and submission order independent) and pixel blending, and enables deferred rendering, eliminating all unnecessary access to off-chip memory. The decoupling of geometry and vertex processing from the rasterisation process enables higher throughput while maximizing tolerance to system latencies. Advanced tiling and culling algorithms are implemented in hardware, which i combination with seamless scene complexity management and compression enable support for arbitrarily complex scenes in limited memory footprints with lowest memory bandwidth usage.
The MBX Lite is capable of providing fill rates exceeding 135 million pixels per second and a throughput of 1.7 million triangles per second, depending on configuration.
The MBX Lite in the iPhone is paired with the PowerVR VGP Lite vertex geometry processor which greatly reduces the burden of the main processor by taking on complex 3D vertex calculations.
The POWERVR Vertex Geometry Processor (VGP) is a high-performance, fully programmable floating-point SIMD coprocessor carefully matched to the requirements of 3D. Designed for optimal geometry processing (including transformation and lighting), the VGP offloads these highly compute-intensive tasks from the host CPU resulting in a significant reduction in power consumption. With an instruction set carefully designed to allow common geometry operations to be performed in a minimal number of instructions, the VGP is capable of four floating-point operations per clock.
The processing hardware sitting at the heart of both the iPhone and iPod touch makes them no slouch when it comes to pushing polygons to the screen. As shown earlier in an iPod Hacks post, the iPhone compares rather favorably to the Sony PSP and Nintendo DS.
- Sony PSP
- Processor: MIPS CPU @ 222 or 333MHz (selectable)
- Screen: 480×272 pixels
- Input: D-pad, analog stick
- Nintendo DS
- Processor: two ARM CPUs (67MHz and 33MHz)
- Screen: two 256×192 pixel screens
- Input: D-pad, touch-screen
- Processor: ARM CPU @ 412MHz (532MHz in 2G iPod touch)
- Screen: 480×320 pixels
- Input: multitouch, accelerometer
The iPhone offers the most screen real estate and arguably the fastest processor of the lot. But while Apple’s device is dramatically more powerful than the DS for both graphics and number crunching, the PSP’s graphics engine has substantially more polygon pushing power than the iPhone’s MBX Lite + VGP Lite arrangement. And while outclassed in this area of the PSP’s particular strength, we look to the iPhone’s unique combination of Wii (accelerometer) and DS (touchscreen) controls along with the unprecedentedly approachable App Store to make it every bit as significant a mobile games platform as Sony’s offering, moving forward.
More source information:
- “PowerVR MBX in iPhone," Beyond3D Forum
- “iPhone Processor: What’s With This “S5L8900?"," Gearlog
- “Under the Hood: Inside the Apple iPhone," Embedded.com
- “PowerVR," Wikipedia
- “N93 vs N92," 3G Forum
- “OpenGL ES vs. Direct3DMobile," GameDev.Net Forums
- “2nd Generation iPod Touch Faster than iPhone," Touch Arcade
[ Post updated on 11/23/2008 to reflect new information that has come to light ]
tag: iPhone specs