Apple S1 Analysis

One of the biggest issues with the smartwatch trend that I’ve seen is that as a result of most companies entering the market with smartphone backgrounds, we tend to see a lot of OEMs trying to shove smartphone parts into a smartwatch form factor. There have been a lot of different Android Wear watches, but for the most part everything seems to use Qualcomm’s Snapdragon 400 without the modem. Even though A7 is relatively low power for a smartphone, it’s probably closer to the edge of what is acceptable in terms of TDP for a smartwatch. Given that pretty much every Android Wear watch has around a 400 mAh battery at a 3.8 or 3.85 volt chemistry to attempt to reach 1-2 days of battery life and a relatively large PCB, the end result is that these smartwatches are really just too big for a significant segment of the market. In order to make a smartwatch that can scale down to sizes small enough to cover most of the market, it’s necessary to make an SoC specifically targeted at the smartwatch form factor.


Capped Apple S1 SoC (Image Courtesy iFixit)

The real question here is what Apple has done. As alluded to in the introduction, it turns out the answer is quite a bit. However, this SoC is basically a complete mystery. There’s really not much in the way of proper benchmarking tools or anything that can be run on the Watch to dig deeper here. Based on teardowns, this SoC is fabricated on Samsung’s 28nm LP process, although it’s not clear which flavor of LP is used. It’s pretty easy to eliminate the high power processes, so it’s really just a toss-up between HKMG and poly SiON gate structure. For those that are unfamiliar with what these terms mean, the main difference that results from this choice is a difference in power efficiency, as an HKMG process has less leakage power. Given how little cost is involved in this difference in process compared to a move to 20/14nm processes, it’s probably a safe bet that Apple is using an HKMG process here especially when we look at how the move from 28LP to 28HPm at TSMC dramatically affected battery life in the case of SoCs like Snapdragon 600 and 800.


Decapped & Labeled S1 SoC (Image Courtesy ABI Research)

We also know that binaries compiled for the watch target ARMv7k. Unfortunately, this is effectively an undocumented ISA. We know that Watch OS is built on iOS/Darwin, so this means that a memory management unit (MMU) is necessary in order to make it possible to have memory protection and key abstractions like virtual memory. This rules out MCU ISAs like ARMv7m even if it's possible to add an MMU to such an architecture, so it’s likely that we’re looking at some derivative of ARMv7-A, possibly with some unnecessary instructions stripped out to try and improve power consumption.

The GPU isn’t nearly as much of a mystery here. Given that the PowerVR drivers present in the Apple Watch, it’s fairly conclusive that the S1 uses some kind of PowerVR Series 5 GPU. However which Series 5 GPU is up to debate. There are reasons to believe it may be a PowerVR SGX543MP1, however I suspect that it is in fact PowerVR's GX5300, a specialized wearables GPU from the same family as the SGX543 and would use a very similar driver. Most likely, dedicated competitive intelligence firms (e.g. Chipworks) know the answer, though it's admittedly also the kind of information we expect they would hold on to in order to sell it to clients as part of their day-to-day business activities.

In any case, given that native applications won’t arrive until WatchOS 2 is released I don’t think we’ll be able to really do much in the way of extensive digging on what’s going on here as I suspect that graphics benchmarks will be rare even with the launch of WatchOS 2.

Meanwhile, after a lot of work and even more research, we're finally able to start shining a light on the CPU architecture in this first iteration of Apple's latest device. One of the first things we can start to look at is the memory hierarchy, which is information crucial to applications that require optimization to ensure that code has enough spatial and/or temporal locality to ensure that code is performant.

As one can see, there’s a pretty dramatic fall-off that happens between 28 and 64KB of “DRAM”, as we exit the local maximum of L1 data cache, so we can safely bet that the L1 data cache size is 32KB given current shipping products tend to fall somewhere between 32 and 64KB of L1 data cache. Given the dramatic fall-off that begins to happen around 224KB, we can also safely bet that we’re looking at a 256KB L2 combined cache which is fairly small compared to the 1-2MB shared cache that we might be used to from today’s large smartphone CPUs, but compared to something like an A5 or A7 it’s about right.

If Apple had just implemented the Cortex A7 as their CPU of choice, the obvious question at this point is whether they’ve really made anything “original” here. To try and dive deeper here, we can start looking past the memory hierarchy and looking closer at the machine itself. One of the first things that is obvious is that we’re looking at a CPU with a maximum frequency of 520 MHz, which is telling of the kind of maximum power that Apple is targeting here.

Apple S1 CPU Latency and Throughput
Instruction Throughput (Cycles/Result) Latency (Cycles/Result)
Loads (ldr reg,[reg]) 1 N/A
Stores (str reg,[reg]) 1 N/A
Move (mov reg, reg) 1/2 -
Integer Add (add reg, reg, imm8) 1/2 -
Integer Add (add reg,reg,reg) 1 1
Integer Multiply (mul reg,reg,reg) 1 3
Bitwise Shift (lsl reg,reg) 1 2
Float Add (vadd.f32 reg,reg,reg) 1 4
Double Add (vadd.f64 reg,reg,reg) 1 4
Float Multiply (vmul.f32 reg,reg,reg) 1 4
Double Multiply (vmul.f64 reg,reg,reg) 4 7
Double Divide (vdiv.f64 reg,reg,reg) 29 32

Obviously, talking about the cache hierarchy isn’t enough, so let’s get into the actual architecture. On the integer side of things, integer add latency is a single cycle, but integer multiplication latency is three cycles. However, due to pipelining integer multiplication throughput can produce a result every clock cycle. Similarly, bitshifts take two cycles to complete, but the throughput can be once per clock. Attempting to interleave multiplies and adds results in only achieving half the throughput. We can guess that this is because the integer add block and the integer multiply block are the same block, but that doesn’t really make sense because of just how different addition and multiplication are at the logic level.

Integers are just half of the equation when it comes to data types. We may have Booleans, characters, strings, and varying bit sizes of integers, but when we need to represent decimal values we have to use floating point to enable a whole host of applications. In the case of low power CPUs like this one, floating point will also often be far slower than integers because the rules involved in doing floating point math is complex. At any rate, a float (32-bit) can be added with a throughput of one result per cycle, and a latency of four cycles. The same is true of adding a double or multiplying a float. However, multiplying or dividing doubles is definitely not a good idea here because peak throughput of multiplying doubles is one result per four clock cycles, with a latency of 7 clock cycles. Dividing doubles has a peak throughput of a result every 29 clock cycles, with a latency of 32 clock cycles.

If you happen to have a webpage open with the latency and throughput timings for Cortex A7, you’d probably guess that this is a Cortex A7, and you’d probably be right as well. Attempting to do a load and a store together has a timing that indicates these are XOR operations which cannot be executed in a parallel manner. The same is true of multiplication and addition even though the two operations shouldn’t have any shared logic. Conveniently, the Cortex A7 has a two-wide pipeline that has similar limitations. Cortex A5 is purely single-issue, so despite some similarity it can't explain why addition with an immediate/constant value and a register can happen twice per clock.

Given the overwhelming amount of evidence at the timing level of all these instructions, it’s almost guaranteed that we’re looking at a single core Cortex A7 or a derivative of it at 520 MHz. Even if this is just a Cortex A7, targeting a far lower maximum clock speed means that logic design can prioritize power efficiency over performance. Standard cells can favor techniques and styles that would otherwise unacceptably compromise performance in a 2+ GHz chip could be easily used in a 520 MHz chip such as device stacking, sleepy stack layout, higher Vt selection with negative active body biasing, and other techniques that would allow for either lower voltage at the same frequency, or reduced capacitance in dynamic power and reduced static leakage. Given that Cortex A7 has generally been a winning design for perf/W metrics, I suspect that key points of differentiation will come from implementation rather than architecture for the near future. Although I was hoping to see Apple Watch on a more leading-edge process like 14LPP/16FF+, I suspect this will be deferred until Apple Watch 2 or 3.

Design WatchOS: Time and Notifications
Comments Locked

270 Comments

View All Comments

  • Tams80 - Tuesday, July 21, 2015 - link

    One more point to add:

    While this is essentially a piece of jewellery, it is also a throw away commodity. The battery will degrade quickly with it's intended use, and as far as I know is not replaceable. This is more acceptable for a base piece of technology, so prices can be high. For an accessory though? The price is far too high.

    It can't really be compared to jewellery though. Jewellery lasts a long time, and is often handed down. What it lacks in features, it makes up for in longevity.
  • dan98 - Wednesday, July 22, 2015 - link

    "You haven't tried many watches, and by the sounds of it, none to the same extent as the Apple Watch. If that is the case, then I don't think you are qualified to make a comparison to them, as a professional reviewer. "

    Bizarre point. The reviewer doesn't make any comparisons, other than to those he has tried.

    "You do know that there are smartwatches out there that take standard watch straps? You do know that there are countless different designs of standard watch straps?"

    Bad point. Where did he mention just the strap? He's talking about the discomfort of the wearable as a whole.

    "What ergonomic annoyances? The watch goes on your wrist, and in many cases never needs to come off. In return watches tell the time, often the date and day, and sometimes more. How is glancing at a watch less ergonomic than getting your phone out of wherever it is and checking it?"

    Bad point. The ergonomic annoyances of watches are clear and obvious to most people. ie. they catch on things, add bulk to the arm, and require care to avoid damage in certain situations. Its a question of whether these annoyances are outweighed by the advantages of the watch in question.

    "Total fluff, and no shit Sherlock"

    ? This is a non-point which only serves to underline the commenter's bizarre stance.
  • yhselp - Wednesday, July 22, 2015 - link

    The first proper, in-depth review of any wearable that I am aware of. Thank you for taking the time to do it right, the end result is a very valuable (in many respects) piece of work. This, in my opinion, is the most 'AnandTech' article since Anand left and it's very welcome -- I've now read one too many articles here where the reviewer explains himself and tries to justify his opinion in a manner as if to ward off the expected flamers in the comments. I believe that loyal and regular AnandTech reader values your opinion as it is, unbiased and as objective as possible; do not be deterred by fanboys and haters -- there's no need to cater to them.
  • beggerking@yahoo.com - Wednesday, July 22, 2015 - link

    review is totally biased... 12 hr battery life?

    search for android watch phone. there are android watch phones that are FULL phones with dual core/ quad core cpu that has 3 day battery life, along with waterproof , micro sd, etc etc and the price is between $100-300
  • beggerking@yahoo.com - Wednesday, July 22, 2015 - link

    "I don’t know if Apple will succeed in convincing others of the utility of a watch, but they’ve definitely convinced me."

    right. now how much $$ did Crapple deposit into your bank account?
  • S2k15 - Wednesday, July 29, 2015 - link

    What has to happen in someone's life, that they become such a hateful and shitty human being like yourself? Do you have evidence that this author was paid off? If not, shut the fuck up and spare us your attempts at slander and character assassination.

    Also, I hope you're not older than 5 yrs old, which is the only thing that would excuse the sheer stupidity of the using the word "Crapple". It's sad that comment sections have been flooded with absolute trash posts like yours.
  • allajunaki - Thursday, July 23, 2015 - link

    Wow, Anandtech Comments used to be filled with smart people. Sadly, most of the comments seems to come from trolls. And I have a sneaky feeling that most of it are from a few. Unfortunately, instead of reading anything constructive, all I read is haters hating, and defenders defending. And most of it has no objective, or constructive content.
    I have been an Anadtech visitor for the last 15 or so years. I never once had to question the integrity of this website. Its sad that other commentators do not share the same sentiment.
    Folks, best way to shut a troll, is by ignoring them.
    Anandtech, can we have Comment Votes (Like Arstechnica) ?
  • Spencer Andersen - Thursday, July 23, 2015 - link

    It is sad to see so many negative people commenting on every tech site. I guess people just need to prove they have some superior intellect or knowledge that makes them better than others to be happy.
    I sometimes feel bad for these talented individuals doing these reviews who put their knowledge to the web only for it to be dissected and misconstrued by the masses every single time. The truth is if these commenters were happy with their lives they wouldn't feel the need to constantly challenge or put others down. It's a huge problem with the world today, rather than work together and bring each other up so we can reach higher existence we choose to be selfish and think about ourselves and drag each other down.
    I for one love Anandtech and visit it because these people know stuff about tech I never will so I value their opinions. I got some great information from this article as I do from every other article and thats why I keep coming back. So to all the malcontents out there talking all that trash, take a magnesium calcium supplement for witch your probably deficient in and chill the flip out. Enjoy this great website built off the efforts and contributions of many talented people. And click on damn add every once in a while to support them, its not going to kill you to loose a few seconds of your life.
  • jonminchoi - Thursday, July 23, 2015 - link

    As an owner of the Apple Watch, I'd like to provide some comments to the review, and to the general state of the comments.

    First, a review (and by extension the reviewer) is not the ultimate source of truth in the universe, but rather is a mere opinion of a collected group, providing some form of technical evidence to ground their claims. Depending on the site, the aforementioned evidence could be extremely detailed and scientific, or it could be somewhat subjective.

    It is entirely your choice as the reader to agree with the reviewer's words, but please, do not belittle the reviewer or the article. Even if you are gifted with literary ability that far exceeds his (which I would think is extremely unlikely), it does not give you the right to bully and patronize others.

    I, for one, agree with most of what the reviewer mentioned: the Apple Watch has never given me trouble with the battery life. I doubt there is a huge population of Apple Watch users who have actual need to keep the Watch on for longer than 18 hours (the battery life stated by Apple, which seems very underestimated). I have not had much trouble with the actual function of the Apple Watch, as I use it mostly for parsing notifications more effectively than the use of just my iPhone would allow. Taptic Feedback works very well, and I am able to respond to most notifications without disrupting my coworkers in an extremely quiet work environment. Although there is some noticeable loading time for apps that require the use of iOS, this fact has never bothered me to the point of being a dealbreaker.

    At the end of the day, I'm able to afford the price of the Apple Watch, and have thus far enjoyed the benefits of ownership. While there are still some things I wish Apple could improve in both hardware and software, I have not regretted my purchase.

    I think both the moderators of Anandtech as well as its readers would benefit from a more contributive and constructive discussion.
  • gamer1000k - Thursday, July 23, 2015 - link

    While I'm no Apple fan (and will never own an iPhone and by proxy and Apple Watch unless some major changes occur at Apple), I will admit that this watch is a neat piece of technology. Sure it has some first gen quirks and will likely be orphaned rapidly as new and improved models come out, but Apple did put some effort into this and I look forward to seeing their competitors up their game in response so I can get those products once the prices come down. Still, I'm a little annoyed at how much media attention and hype Apple gets for a product that really isn't all that different from existing android smartwatches. (And yes, this article does read a little like a kid at christmas who got a shiny new toy. At least the final conclusion comes back to reality and recognizes this is a first gen product with some major drawbacks so we should wait for the next version.)

    Granted, it's not the piece of technology I would have designed (and I heartily agree that it costs entirely too much for what it is), but the same could be said for pretty much all smartwatches at this point. I'm a little disappointed with Apple's (and most other companies) approach to the smartwatch and trying to pack too much power into a device that doesn't really need it.

    I think Pebble's approach is the most logical at this point. It displays notifications, has a microphone, and even runs simple apps all while maintaining a week's worth of battery life and an always-on e-paper display. The LCD and relatively beefy CPU on the Apple watch and others allow for flashier interfaces and apps, but I'm still not sure how that really adds to the smartwatch experience at this point.

    I'll keep an open mind and see what happens over the next few months, but right now I see the smartwatch primarily as a notification accessory for a phone and have a hard time visualizing how it will work as an application platform beyond the most basic apps given the tiny screen.

Log in

Don't have an account? Sign up now