Why your next ARM chip might have multiple personalities

Why your next ARM chip might have multiple personalities

Summary: The future of ARM processors is in designs which have multiple personalities and can switch workloads on the fly in order to optimize operations for performance and energy-efficiency.

SHARE:
ARM-twoheads-550px

Yesterday, I wrote a bit about how Samsung is becoming a leader in tablet and smartphone manufacturing because it now has the vertical integration capability to design products in an end-to end fashion, using its own chip designs.

Samsung doesn't just have the ability to produce chips under licenese from other companies with its own semiconductor foundries -- it can also produce its own unique System on a Chip (SoC) designs and combine them with other in-house designed and manufactured components, such as displays, memory, flash storage, wireless chips and even batteries in order to create much more inexpensive mobile devices than ever before.

The best examples of this can be found in the recently launched ARM-based Chromebook as well as in Google's Nexus 10 tablet, both of which feature Samsung's home-grown Exynos 5 (5250) SoC.

The Exynos 5 has the distinction of being the first mass-market SoC to utilize the latest-generation ARM Cortex-A15 architecture, which is a powerful, superscalar design with cores running at very high clock speed and connected to larger amounts of cache (1.7Ghz, 2MB).

It brings unprecedented performance and power efficiency to the Android and Chrome OS platforms like never seen before.

However, the Exynos 5 is not without its limitations. While the ARM Cortex-A15 architecture is powerful, it is not as power-miserly as other ARMv7-compatible chip designs, such as as those which use less-powerful and much slower-clocked groups of ARM Cortex-A7 cores connected to smaller amounts of cache (600Mhz/512). 

Certain types of tasks, for example, such as MP3 and video playback and simpler apps (such as an email or twitter client) are better suited to a lower power, "Little" and slower processor core like the ARM Cortex-A7. But large calculations and large memory operations, such as dealing with 2D and 3D HD graphics, or rendering rich web content are better suited to the ARM Cortex-A15.

biglittletasks

Earlier this year, ARM Holdings, the company which licenses the ARM Cortex architecture to companies like Samsung, Apple, Qualcomm, NVIDIA and Texas Instruments which produce their own CPU designs announced a hybrid system called big.LITTLE Processing.

What big.LITTLE would provide in the future of ARM-based SoCs is nothing short of remarkable. It would combine the superscalar processing power of the Cortex-A15 with the energy-efficient capabilities of Cortex-A7 systems.

So who is going to be the first to come out with a big.LITTLE ARM SoC? Why, that would be Samsung.

At the 2012 Korea Linux Forum, a Linux Foundation event, Samsung presented a very technical presentation on the future of their Exynos processors, currently dubbed the "Exynos.bL". Presumably, this is a glimpse at Exynos 6 or Exynos 7.

Read more

big.LITTLE switchers: Evaluation on Exynos.bL Processor (Korea Linux Forum)

A big.LITTLE scheduler update (LWN.NET, Paul McKenney)

While the subject matter of that presentation is extremely, shall we say, "Maxi-Zoom Dweebie sort of stuff", the meat of the presentation describes a chip that is a hybrid of ARM Cortex-A7 and ARM Cortex-A15, tied together in a cluster of 4 "Big" and 4 "Little" CPU cores, using a cache coherent processor interconnect and interrupt controllers.

The hardware is driven by some very sophisticated tweaks to the mainline Linux kernel's CPU scheduler code, which is being done by the folks over at Linaro. The scheduler can dynamically switch/migrate workloads between the two clusters of chips according to the size or complexity of the operation. 

biglittlecpu-klf

The overall concept of mixing different types of processors in a computer is not new -- what is being described is a form of Asymmetric Multiprocessing, which has been implemented on a number other systems in the past, and is also the way that CPUs offload tasks to GPUs today.

However, the concept is quite new to Linux and to ARM, particularly when mixing different types of CPUs. And what it could do to affect the future of personal computing and mobile devices is significant.

Using this method, these hybridized, dual-personality ARM-chips that use a mix of Big and Little cores would give us the best of both worlds: The performance that we normally see on much more power hogging desktop and server chips, but with the power efficiency of an embedded system.  

Because the scheduler work is being done on Linux first, we're going to see these types of chips appear initially on Android devices and perhaps even low-power Linux servers, and it would not be surprising to see them appear sometime next year, or in early 2014. Samsung will almost certainly be first to market with them.

The big.LITTLE IP can obviously be licensed by any ARM architecual licensee, so Apple and Microsoft could both potentially produce versions of their respective mobile operating systems that take advantage of this new architecture. If they are working on it, they certainly aren't talking about it in public.

But this is not to say that Apple might not have a big.LITTLE trick up its sleeve in 2014 when rolling out new iPhones and iPads with future versions of the A-series SoC, or that a future Microsoft Surface or Windows Phone 8, powered by Exynos.bL or a competitor's chip design using the architecture might come to fruition as well. 

Will these new "dual personality" ARM chips create even more powerful and energy efficent mobile devices? Talk Back and Let Me Know.

Note: an earlier version of this article contained information about system endianism, this material has been redacted because it is not relevant to the subject matter.

Topics: ARM, Android, iPhone, Microsoft, Samsung, Smartphones, Tablets, Windows

About

Jason Perlow, Sr. Technology Editor at ZDNet, is a technologist with over two decades of experience integrating large heterogeneous multi-vendor computing environments in Fortune 500 companies. Jason is currently a Partner Technology Strategist with Microsoft Corp. His expressed views do not necessarily represent those of his employer.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

8 comments
Log in or register to join the discussion
  • Nice writeup.

    This is a good over-view of what this has to offer. Looking forward to it at some point...
    Bruizer
  • Very interesting indeed

    It is an interesting architecture.
    It is disapointing that Microsoft has been unable to come with a similar hardware architecture for Windows 8.
    Imagine a CPU architecture with both x86 cores and ARM cores, the x86 cores would deal with the legacy/power hungry/desktop apps while the ARM cores would deal with the Metro apps/Start Screen and all low power tasks.
    Of course as i doubt that Intel would be happy to build such an architecture, i think that Microsoft could have built it with AMD.
    timiteh
    • No reason to

      No reason for MS to jump into the bleeding edge of hardware. Much smarter to let those with the skill set and experiance do it and then get a licesne to use it.

      I race cars but no way do I want to build a foundry to cast engine blocks...
      NoAxToGrind
    • x86 mix with arm

      well from User point of view Your idea looks simple,
      but in reality there is such a huge diffrence btw 2 systems at hardware level
      and hardware is advancing in such a peace
      that no one will write a generic OS which works seamlessly btw the two architectures.
      waste of time and money.
      mathel
    • MS still mainly a soft company...

      @timiteh MS still mainly a software company, not hardware. The smartphone/tablet players are far more likely to come up with something like this than MS. It was just now with the tablet boom that MS began to look after mobile computing more seriously to the point of making Windows RT. And btw, seem Apple as conservative about new tech as it is, I bet Samsung or another android player is more likely to come up first with some sort of asymmetric multiprocessing solution than anyone else.
      Also, I bet it will have 2 big cores and 2 little core when it arrive... Better thermals and energy efficiency coupled with respectable performance.
      erick.mendes
    • Combining ARM with x86? - It's been done!

      Way back in the early days of ARM, Acorn Computers, the originators of ARM (which originally stood for Acorn RISC Machine), produced a desktop computer, the RISC PC, with both an ARM CPU and an Intel 80486 CPU (this shows how long ago!), admittedly as separate chips. This meant you could run ARM applications and also run Windows in a Window on the ARM RISCOS desktop at full Windows speed as if it were running on a PC with just a '486 processor. It was interesting that the ARM chip didn't need a fan to keep it cool - and didn't have one - but the '486 had to have a fan to prevent it from self-destruction. Unfortunately, the RISC PC was significantly more expensive than a '486 only PC and didn't make a huge dent in the desktop market. This didn't alter the fact that it was way ahead of its time back in the late 1980s - and I've still got one!
      JohnOfStony
      • Aaaahh days of Acorn

        You are taking me back to my BBC Micro through to my A3000 days........

        Until ARM can run Intel code, via an emulator, the chasm between OSX/IOS and Windows 8/Windows RT will remain.

        Intel can already run ARM code, see some of the very new Intel based Smartphones running Android emulating ARM coded app's, via their latest mobile optimized Atom chips. unfortunately these mobile Atom chips, performance would suck ass running native Windows X86 code so Intel have the same performance problem as ARM for legacy none native app's.
        neil.postlethwaite
      • Sun did that too, for Sparc ...

        ... with an x86 daughter-card. We looked at it because of some clients what wanted to be able to run the Google Earth client on Sparc-stations.
        daboochmeister