Putting it in Perspective

Below is a table of the CPUs used in some of the top smartphones on the market, let’s put our newly refreshed knowledge to the test.

  CPU Issue Width Basic Pipeline Clock Speed
Apple iPhone/iPhone 3G Samsung ARM11 single 8-stage 412MHz
Apple iPhone 3GS Samsung ARM Cortex A8 dual 13-stage 600MHz
HTC Hero Qualcomm ARM11 single 8-stage 528MHz
Nokia N97 ARM11 single 8-stage 424MHz
Palm Pre TI ARM Cortex A8 dual 13-stage 600MHz
RIM Blackberry Storm Marvell ARM11 single 8-stage 624MHz
T-Mobile G1 ARM11 single 8-stage 528MHz

 

The first thing you’ll notice is that there are a number of manufacturers of the same CPUs. Unlike the desktop x86 CPU market, there are a multitude of players in the ARM space. In fact, ARM doesn’t manufacture any processors - it simply designs them. The designs are then licensed to companies like Marvell, Samsung, Texas Instruments and Qualcomm. Each individual company takes the ARM core they’ve licensed and surrounds it with other processors (e.g. graphics cores from PowerVR) and delivers the entire solution as a single chip called a System on a Chip (SoC). You get a CPU, GPU, cellular modem and even memory all on a single chip, all with minimal design effort.


A derivative of this is what you'll find in the iPhone 3GS

While it takes ARM a few years to completely architect a new design, their licensees can avoid the painful duty of designing a new chip and just license the core directly from ARM. ARM doesn’t have to worry about manufacturing and its licensees don’t have to focus on building world class microprocessor design teams. It’s a win-win situation for this business.

For the most part, ARM’s licensees don’t modify the design much at all. There are a few exceptions (e.g. Qualcomm’s Snapdragon Cortex A8), but usually the only things that will differ between chips are clock speeds and cache sizes.

The fundamentals of the architectures don’t vary from SoC to SoC, what does change are the clock speeds. Manufacturers with larger batteries and handsets can opt for higher clock speeds, while others will want to ship at lower frequencies. The ARM11 based products all fall within the 400 - 528MHz range. These are all single-issue chips with an 8-stage pipeline.

  iPhone 3G (ARM11) iPhone 3GS (ARM Cortex A8)
Manufacturing Process 90nm 65nm
Architecture In-Order In-Order
Issue Width 1-issue 2-issue
Pipeline Depth 8-stage 13-stage
Clock Speed 412MHz 600MHz
L1 Cache Size 16KB I-Cache + 16KB D-Cache 32KB I-Cache + 32KB D-Cache
L2 Cache Size N/A 256KB

 

The iPhone 3GS and the Palm Pre both ship with a Cortex A8. I’m actually guessing at the clock speeds here, there’s a chance that both of these devices run at closer to 500MHz but it’s tough to tell without querying the hardware at a lower level. The Cortex A8 gives us a deeper pipeline, and thus higher clock speeds, as well as a dual issue front end. The end result is significantly higher performance. Apple promised > 2x performance improvements from the iPhone 3GS over the iPhone 3G, such an increase was only possible with a brand new architecture.

I must stress this again: clock speed alone doesn’t determine the performance of a processor. Gizmodo’s recent N97 review complained about the speed of Nokia’s 424MHz processor (rightfully so). The review continued by saying that HTC uses 528MHz processors, implying that Nokia should do the same. The second part isn’t what Nokia should be doing on its $500+ smartphone, what is inexcusable is the fact that Nokia is not using ARM’s latest and greatest Cortex A8 on such an expensive phone. It’s the equivalent of Dell shipping a high end PC with a Core 2 Duo instead of a Core i7; after a certain price point, the i7 is just expected.

Superscalar to the Rescue More Detail on ARM11 vs. Cortex A8
POST A COMMENT

60 Comments

View All Comments

  • MrJim - Wednesday, July 08, 2009 - link

    Why no mention of the heat issues? Reply
  • ViRGE - Wednesday, July 08, 2009 - link

    Anand, if you haven't already, jailbreak the 3GS and grab SysInfoPlus from Cydia. It may be able to tell you the clock speed of the 3GS's ARM, although to what extent I'm not sure since it hasn't been specifically programmed for the A8. Reply
  • ltcommanderdata - Wednesday, July 08, 2009 - link

    I don't suppose that program can also tell the GPU clock speed too?

    I always thought that the MBX work at bus speed, ie. 103MHz for the iPhone/3G and 133MHz for the 2nd Gen iPod Touch instead of the 60Mhz that Anand has speculated. Assuming the iPhone 3G S has a 150MHz bus speed, the SGX could run at 150MHz which is a reasonable compromise between Anand's 100MHz and 200MHz estimates.
    Reply
  • fyleow - Wednesday, July 08, 2009 - link

    How useful is the new GPU? The iPhone's performance has come a long way from the first generation but I don't see developers taking full advantage of the jump. If you bump up the graphics of your game it might run smoothly on the 3GS but end up lagging on the 1st gen iPhone.

    The increase in load times and battery life is much welcomed, but when do we get to see some apps that take advantage of the upgraded hardware in other more interesting ways? I can see a resolution increase as being one way to do that. The game would look better on a higher resolution screen but performance wouldn't suffer on the older models because the lower resolution would place less demand on the hardware.

    2010 will be an interesting year. There should be a bigger upgrade to the iPhone, most likely a resolution bump and a significantly modified OS that supports background tasks. Apple has been keeping all the devices on the iPhone platform on feature parity so far with the OS upgrades (minus obvious limitations due to hardware differences). It would be interesting to see how they handle the switch and the resulting two classes of phones that come from it (i.e. old "legacy" iPhones/Touch vs new iPhones/Touch).
    Reply
  • ltcommanderdata - Wednesday, July 08, 2009 - link

    You're right that it's difficult to take full advantage of the SGX without writing a separate dedicated code path for it and one for the MBX. However, there are simpler ways to take advantage of the iPhone 3G S power without writing 2 separate code paths. For example, you can scale draw distance based on hardware. Firemint demonstrated the iPhone 3G S accelerating 40 cars in Real Racing compared to 6 in the iPhone 3G, so the potential for better scalable AI is there. For a RPG, perhaps having more NPCs walking around to make the environment more lifelike. This can all be done using existing OpenGL ES 1.1 code playable on all iPhones/Touches, optimizing for each device, without making older iPhone users feel like they are playing some Lite version of the game as implementing shaders and HDR using OpenGL ES 2.0 in the iPhone 3G S might do.

    I believe the reluctance of Apple to change the resolution is that it could break the interface layout for existing apps and/or make things ugly if apps haven't used vector graphics. It would have been nice if they had enforced resolution independence early on, but I don't believe they did. Resolution independence is also what is needed for Apple to introduce an iPhone nano with a smaller screen and presumably smaller resolution.
    Reply
  • smallpot - Wednesday, July 08, 2009 - link

    Thanks for the article Anand. Your long-form articles are the reason Anandtech is my number one tech website. I'm thinking of articles such as this, your articles on SSD performance, and the long-form story behind the RV770. After reading such articles, I really feel like I've learned something, rather than just had performance metrics thrown at me without context. Reply
  • Baron Fel - Tuesday, July 07, 2009 - link

    Interesting article.

    As far as portable gaming goes, the Ipod Touch/iPhone/Zune HD dont have a chance against the DS or even the PSP. The software support just isnt there.

    PSP hardware runs circles around the DS, so why is the DS killing it in sales? Good games.

    and are we getting more SSD articles anytime soon? I think thats what we want to see :D
    Reply
  • ltcommanderdata - Tuesday, July 07, 2009 - link

    Given all the media attention about discoloration and possible heat issues with the iPhone 3G S, I was wondering if you could comment on your experience in this area. Do you think it's a real concern or just stories popularized to generate page hits as Apple related stories tend to do? The latest reports on discoloration indicate that it might actually be from a reaction with some third-party cases that may be reversed by cleaning with alcohol.

    Similarly, there have been lower-key reports of build quality issues with the Palm Pre having a wobbly screen from it's slide-out keyboard. Has this been a major issue for you and do you think it'll be an issue over time?
    Reply
  • Anand Lal Shimpi - Tuesday, July 07, 2009 - link

    I haven't seen anything to indicate heat as being a bigger concern with the 3GS. It's a new processor so there's bound to be some bad chips out there, but I wouldn't be too concerned.

    The build quality on the Pre did bother me. It's something that I think bothered me more because of my experience with the iPhone. The screen was a bit wobbly and overall the device just didn't feel as well put together. Part of it is because of the slide out keyboard, but part of it has to be cost/experience related. I think you'd get used to it over time, but if you then held an iPhone you'd quickly grow tired of the build quality issues once again :)

    Take care,
    Anand
    Reply
  • tomoyo - Tuesday, July 07, 2009 - link

    Btw Anand, the chart for number of stages in the cpus shows the Iphone 3GS as 8 stage instead of 13. Reply

Log in

Don't have an account? Sign up now