PowerVR MBX in iPhone

Rob Evans

Newcomer
It seems that the iPhone main chip contains a PowerVR MBX 3D graphics processor.

From http://iphone.fiveforty.net/wiki/in..._flash.m68ap.production/DeviceTree.m68ap.img2

device 0 (10 rec)
"device_type" => 0x78626D
"clock-ids" => 0x2
"reg" => (8) "\x00\x00\x00\x03\x00\x00\x00\x01"
"power-gates" => 0x2
"clock-gates" => 0x13
"compatible" => (13) "mbx,s5l8900x\x00"
"interrupt-parent" => 0x403BD0
"name" => 0x78626D
"interrupts" => 0xC
"AAPL,phandle" => 0x40C570

N.B. 0x78626D is ASCII for xbm - mbx in reverse format.
 
MBX libraries are also mentioned in crash logs:-
0x31baf000 - 0x31bb1fff MBXConnect UUID (B5E73A95A84E4706A922D56674D4809D) /System/Library/Frameworks/MBXConnect.framework/MBXConnect
0x31bb4000 - 0x31be5fff OpenGLES UUID (3405A88B732E4DF3A127E182483D9E69) /System/Library/Frameworks/OpenGLES.framework/OpenGLES
 
The following graphics-related MBX strings can be found in file57 in the zip file at the top of this page:

Code:
AppleMBXDevice(%p): Graphics hang with pending 2D blit.  Free slots=%d, IntStatus=%08x
 AppleMBXDevice(%p): Graphics Restart. Known MBX hardware issue (rdar://4809859)
    AppleMBXDevice(%p): TA not idle, deferring graphics restart
 AppleMBXDevice(%p): Graphics Restart during 3D Blit.  Dummy page corrupted=%d, 3DR=%d, ISP=%d, EVM=%d
  AppleMBXDevice(%p): Graphics Restart during 3D Render.  Dummy page corrupted=%d, 3DR=%d, ISP=%d, EVM=%d
    EnableGLClockgateWorkaround AppleMBXDevice(%p) - Warning: Switching clockgate workaround modes when the HW is not idle.  Results undefined.
    %s: EnableGLClockgateWorkaround key of wrong type
 AppleMBXDevice(%p)::flushWrapperCache: blit cache flush took too long
  AppleMBX: Failed to add a surface mapping because prepare() failed or couldn't fit in MMU.  Skipping command.
   AppleMBXDevice(%p)::interruptHander: got MBX1_INT_TA_STREAM_ERR
 Invalid surface %08lx while processing command sequence.  Aborting command buffer.
   virtual bool AppleMBXDevice::start(IOService*)  mbx-clockgate   chip-revision   AppleMBX: Disabling auto clock gating because this is a EVT0/EVT1   AppleMBX: Enabling auto clock-gating: %d
   IOCoreSurfaceRoot   %s: IOCoreSurfaceRoot not available or of the wrong class
  compatible  mbx,s5l8900x    true    false   AppleMBX: Detected %s.  SupportsWriteCombining: %s
 PPPPPPPP    -RRRRRGGGGGBBBBB    --------RRRRRRRRGGGGGGGGBBBBBBBB      AppleMBXDevice(%p)::start - Failed to setup 3D blit support
    IOMobileFramebuffer AppleMBX Workaround: Clock gating disabled
AppleMBXUserClient  AppleMBXUserClient(%p)::mapSurface - Failed to malloc MBXSurface
   Failed to look up CoreSurfaceID %x
 Failed to lock a CoreSurfaceBuffer: err=%x
 AppleMBX mapSurface: too large to map: size=%ld max allowed=%d
 AppleMBXUserClient(%p)::wireSurface - Failed to create wired MBXSurface
    AppleMBXUserClient(%p)::wireSurface - Failed to wire MBXSurface
    AppleMBX wrapSurface: too large to map: size=%d max allowed=%d
   AppleMBXUserClient(%p)::addRenderTarget: Failed to run AddRenderTarget command
    cleanupMemInfo: failed to clean up surface
 Failed to unlock a CoreSurfaceBuffer
   PVR:     (%u,%s)
   Debug assertion failed! PVRDebugAssertFail
 
now to find out whether this is part of the SoC or a standalone chip!

Oh my oh my... this is quite interesting. You can almost draw a block diagram just from the list of devices. Some interesting bits and pieces:

- ARM1176jzf-s - ARM11 with Trustzone (allows you to run a virtual CPU with security features, so in kind of sandbox)
- Interrupt controller : PL092 and DMA controller : PL080. These are off-the-shelf IP blocks from ARM itself.
- Security IP: looks like there's a HW RNG, SHA1 and PKE (private key accelerator ??) block.
- Looks like there's a CLCD and LCD controller. In other words there are in fact two LCD controllers, one for RAM-less and one for RAM-based LCDs.
- NAND flash controller with seperate ECC block
- NOR flash controller
- JPEG accelerator
- H.264 accelerator - thing is called h264bpd -> h.264 base-line profile decoder ?
- TV output (but is not used by Apple...)
- MPVD... multi-purpose video decoder or something ?
- MBX.. yes it's there
- MPL = mobile pixel link, LM2511 is National IC, was spotted in several teardowns
- TSL2561.. why is this IC in there ? This is a light sensor. To do backlight dimmning of the LCD depending on ambient light ?
- micron2020 camera ... yes CMOS camera sensor from Micron
- EDRAM ???
- NVRAM, next to NAND flash ?
- There seems to be an unique ID
 
From the page of ARM:
http://www.arm.com/products/CPUs/ARM1176.html

Optional Vector Floating Point coprocessor (ARM1176JZF-S)
Powerful acceleration for embedded 3D-graphics


But i'm not sure about how powerful it is. For instance today the Axim X51V, Nokia N93i and Nokia N95 are indeed powerful but the rest (even with dedicated gpu) are just a bluff with a crappy performance (Even Sony Ericssons with a OMAP 2420).
 
So all the rumors of nVidia winning a contract with Apple for the iPOD and iphone were wrong?
 
The acceleration for 3D from the vector floating point co-processor isn't 3D-specific acceleration; it's just an FPU for floating point support which could be used in operations like T&L. That processor on the ARM page is just the ARM11 CPU, not a CPU + GPU.

The Sony Ericssons with lower graphics processor performance don't use the OMAP2420; they use a chip with a smaller graphics core, the PNX4008, configured with an MBX Lite, no VGP Lite, no FPU, and an ARM9.
 
Last edited by a moderator:
Yep, poor Arun's wet dream.
Hey, I'm openly more biased towards PowerVR than any other semiconductor company out there, from a technological perspective. It's not my fault if there aren't enough opportunities to show them some love! :)

Honestly, I hadn't even realized that Samsung had a MBX license before all this. I obviously hadn't done my homework! (but fwiw, it seems that EE Times also got this partially wrong, because Samsung is not a 'new partner'. So, who is this new mystery partner? Hmmm!)
 
So did nVidia win a design contract with Apple for anything?


I'm wondering if the speculation was right on a nVidia+Apple contract, but they just got the target device wrong?


Was a contract ever hinted at in Imagination Technologies confrence calls?
 
So did nVidia win a design contract with Apple for anything?
There is a pretty good chance that the next-gen high-end iPod is based on the same application processor as the iPhone IMO, so no. I don't really see NVIDIA fitting in the iPod Nano at this point either... So unless Apple decides to change their lineup, I don't see how they could possibly fit in, and even then it wouldn't make much sense.

Their next-gen platform, which will tape-out probably in a few months at worst if it remains on schedule, will probably compete for the next-gen iPhone and iPod, but that's another thing completely, and in the end, 'compete' is exactly what they'll do - they don't have a magic backdoor here, so it's hard to judge their chances of success without knowing anything about that upcoming chip.
 
So did nVidia win a design contract with Apple for anything?


I'm wondering if the speculation was right on a nVidia+Apple contract, but they just got the target device wrong?


Was a contract ever hinted at in Imagination Technologies confrence calls?

Portal Player was in Gen 7 iPods and was displaced by Samsung in Gen 8. nVidia bought off Portal Player afterwards.

Apple's notebooks use nVidia's GPU though.
 
Portal Player was in Gen 7 iPods and was displaced by Samsung in Gen 8. nVidia bought off Portal Player afterwards.
I never managed to find any confirmation that PP was displaced by Samsung in the 'iPod with Video', except by the fact that NVIDIA only had $10M of PP revenue in Q107, and this roughly corresponds to their non-Apple revenue iirc. So, any link to a reliable proof of that, and any info on exactly when it happened? :)
 
I never managed to find any confirmation that PP was displaced by Samsung in the 'iPod with Video', except by the fact that NVIDIA only had $10M of PP revenue in Q107, and this roughly corresponds to their non-Apple revenue iirc. So, any link to a reliable proof of that, and any info on exactly when it happened? :)

http://ce.seekingalpha.com/article/16904

I remember PLAY had more than $100M in annual revenues before it losts everything and sold itself to NVDA.

They lost the iPod Nano socket to Samsung, but still has the Video iPod music decoding socket.

Video iPod uses Alphamosaic's (acquired by Broadcom) display decode chip though. I believe there were some rumors saying nVidia designed out Broadcom on the next gen iPod, but Apple has not announced their plans for next gen iPod yet.
 
Indication from Imagination Technologies that they were in the iPhone was inferred by considering the description and timetable for launch of the unnamed "other high profile handsets" in the following comment from their recent financial statements:
In the mobile phone market segment there are over 45 handsets that are based on our technologies. These include handsets from Nokia, Sony Ericsson, Motorola, NEC, Fujitsu, Mitsubishi, Panasonic, Sharp and Motorola. We continue to have a growing position in the Japanese mobile phone market through our very strong ranging across the latest DoCoMo phones. In addition to Sony Ericsson’s W850i, M600i, and P990i models and Nokia’s N93 and N93i models which are already shipping, we are now seeing, albeit a little later than forecast, a growing number of other high profile phones which are now shipping, or about to ship, in western markets. Amongst these are the acclaimed Nokia N95, Nokia E90, the Motorola MotoRIZR Z8 and MotoQ q9 and Sony Ericsson P1i. We also expect other high profile handsets to begin shipment starting from the second quarter of the current financial year. These new phones, targeted at western as well as global markets should significantly accelerate the volume ramp up for FY 07/08 whilst also demonstrating the real benefit of graphics for both the user interface and application content.
The possibilities for the configuration of the custom Samsung solution are numerous with options for the full or Lite versions of MBX, an accompanying VGP, the CPU variant, and the clock speeds.

Although today's announcement, that an "international electronics systems company" has licensed Imagination Technologies' "next generation graphics and video IP cores" under a "multi-use" agreement, combined with Apple's policy for secrecy about the identity of their parts' suppliers suggests that the announcement is about them, the "next generation" qualifier in the announcement would, in conventional Imgtec PR terms, refer to SGX. This would imply the possibility for SGX based iPhone, iPod, and Apple TV follow-ups, but it would leave unclear which MBX cores were licensed for the first iPhone. The ARM R-S (MBX Lite with no VGP Lite) agreement taken in January 2004 by Samsung covered just the S3C2460 at the time.

If Apple's design priority for the custom Samsung solution in this first iPhone was performance, a full MBX and also the VGP were probably included. If the CPU core really is at least a >500-MHz ARM11 and the GPU corresponds at a reasonable fraction of that, the hardware would overtake OMAP2420 systems finally as the most powerful in the portable sector.
 
Last edited by a moderator:
Back
Top