Inexorable march towards 64-bit
In a move designed to accelerate the time to market for applications running the 64-bit-capable ARMv8-A Architecture, present on the latest generation of Cortex processors from the British company, ARM is today releasing Juno, a development board platform, to hardware partners and software developers.
A bit of background first. 64-bit is supported on the ARMv8-A Architecture via a processing state known as AArch64, but unfettered compatibility is still retained with mainstream 32-bit software through a separate mode called AArch32. The processor decides which mode to use in each case. Speaking of which, the ARM Cortex-A57 and Cortex-A53 processors are the first to be equipped with the ARM v8-A Architecture that, the company says, is primed to handle the needs of servers today and superphones and premium tablets of tomorrow. ARM has a well-established roadmap detailing upcoming 64-bit-compatible processors.
64-bit is useful because it expands the virtual and physical memory address space to 48 bits, enabling complex programs to store far more data in memory than was previously possible. Going hand in hand with the extended memory support is the presence of wider registers. These act as a fast storage area available to the CPU cores and, as such, the ability to hold more data is crucial in increasing performance. The ARM 64-bit topology includes 31 general-purpose registers able to hold 64 bits each and 32 floating-point registers holding 128 bits.
A combination of greater memory support and wider register files enables compatible processors to process more work, more quickly, which is an important attribute when running high-performance applications on mobile devices. Tuned optimally and run on compatible software, a 64-bit processor is able to do more work at the same power level as a 32-bit one.
Catching the industry off guard, Apple has already debuted a 64-bit-capable ARM-based system-on-chip (SoC) in the form of the A7 powering the iPhone 5S, iPad Air and second-generation iPad Mini. Qualcomm, too, has ARMv8-A Architecture SoCs in development - the Snapdragon 808 and 810 are due for release early next year.
So with 64-bit processing already out in the wild and major hardware players in the final stages of development, why is ARM releasing a development board? Good question.
Juno to facilitate 64-bit software
A company with the appropriate ARM license can develop hardware compatible with the v8-A Architecture - Apple, Qualcomm, X-Gene and Cavium are key examples - but it's equally important to have applications ready to take advantage of the increased performance and efficiency. Drawing a tenuous analogy, there's little point in having a supercar without access to lots of petrol.
This is where Juno comes in. The development board, pictured right, houses a powerful dual-core Cortex-A57 processor alongside an energy-efficient quad-core Cortex-A53 on the SoC. The two are tied together via ARM big.LITTLE technology that, via cognisant software, enables any number of cores to be used, for performance or efficiency. There's also ARM Mali-T624 graphics, and the trio of core technologies are chosen because they represent, in ARM eyes, the likely configuration of many next-generation smartphone and tablet SoCs.
By having proven, consistent hardware conforming to a minimum standard outlined by adherence to the ARM Server Base System Architecture (SBSA), ARM is making it easier for software developers to test and iterate 64-bit drivers, software, tools and engage in performance tuning. The approach is akin to AMD or Nvidia sending out hundreds of reference next-generation graphics boards to game studios and smaller developers, with the aim of providing a base from which software can tease out the advantages inherent in a new architecture.
Linaro steps up to the 64-bit plate
Yet a development board platform still requires a compatible operating system upon which developers can, well, develop. Linaro, a provider of open-source software for ARM SoCs, is today also releasing a 64-bit port of the Android Open Source Project (AOSP) fully compatible with the Juno platform.
Based on the stable 3.10 kernel and featuring the latest global task scheduling software - enabling optimum use of the big and LITTLE ARM CPU cores - it provides developers a full hardware and software platform on day one of launch. We already know that Google is keen to support 64-bit ARM SoCs via its upcoming Android L OS, due for official release this year, so Linaro's effort can be viewed as a precursor to the full-blown Android update.
64-bit support here and now
Apple made considerable waves when it announced the A7 SoC last year and promptly rolled it into a number of devices. The benefits of mobile 64-bit computing, which is a cornerstone of the ARM v8-A Architecture, are, on paper, tangible enough that many premium smartphones and tablets will be packing the technology in early 2015.
ARM is helping developers get to grips with the architecture by providing these development Juno boards, in their '100s', to a wide range of software developers. The approach makes implicit sense, particularly when dealing with a new architecture, and, considered from an Android point of view, is much-needed when Apple is presently firmly ahead in the 64-bit hardware and software stakes.