feature article
Subscribe Now

ARM Mobilizes Graphics

Mali 2D Standards Buffet

First, JSR184 was out there all by itself, carrying the Mali mantra to the masses – bringing smart feature phones fancy graphics capabilities formerly found only on immobile devices like computers and gaming consoles.  Now, ARM has fleshed out the Mali software/middleware family with JSR226, JSR287, and SVG-t.  What does this alphabet soup of standards designations mean?

For starters, let’s remember that ARM is an IP company.  Their business is based on licensing processor IP (and all of the goodies that surround processor IP) primarily to mobile handset developers.  As handsets get more complex, we end up needing a lot more sophisticated processors, co-processors, peripherals, software to support those peripherals… the list is almost endless, as is the opportunity for a company like ARM.  Now that our typical mobile phone user is expecting features like streaming video delivered to the palm of his or her hand, companies like ARM are racing to provide the infrastructure to make that possible.

In addition to their famed general-purpose processor cores, ARM offers specialized graphics processing units (GPUs) that accelerate graphics rendering on mobile devices.  Currently, their GPU family includes the Mali55 and Mali200, and the newly announced software is optimized and pre-integrated with those architectures.  While these cores can dramatically improve graphics performance, they work only when you send instructions to them, and that requires special treatment on the software side.  This week, in Barcelona, ARM took time off, apparently from enjoying the wealth of Dali, Picasso, Miro, and Gaudi masterpieces practically lying around on every street corner, to tell us about that software layer.

The keystone of the launch is Mali-SVG-t, which stands for Scalable Vector Graphics – tiny (cute that the “t” for “tiny” is lower-case, huh?)  Mali-SVG-t supports vector graphics – ideal for applications targeted at mobile devices where screen sizes and resolutions are all over the map.  Vector graphics scale smoothly to get the best results from whatever resolution each device provides – without requiring the content providers to know and account for all those resolutions in advance. 

The goal with a graphics layer is to deliver the maximum performance available from each platform, while insulating content providers from the myriad combinations of displays, hardware, operating systems, and so forth.  We want portable, compliant interfaces that support open standards.  ARM went with a veritable standards smorgasbord of Java APIs, including SVG-t 1.2, JSR226 and JSR287.  Previously, JSR184 was the only offering – oddly bringing mobile 3D out ahead of the standardized Vector/2D stack. 

SVG-t is a language defined by the World Wide Web Consortium (W3C) for describing 2D content in XML.  You will see SVG-t in mobile handsets rendering things like user interface icons, graphical images in MMS messages, screen savers, idle screens, mobile browsers, and specialized downloadable 3rd-party mobile applications.  It allows content developers to create these objects in a fashion that easily scales to different screen sizes.  It provides a smaller file size than bitmap images, and it has the capability to support animation.  SVG-t also supports audio, video and bitmaps and acts as a container for content distribution.  It supports interactivity using built-in scripting, or by linking with a Java application.

The JSR-000226 standard (Those Java Community Process people certainly did want to leave room for future expansion, didn’t they?  How long until we’re at JSR-999999 and have to make a new numbering scheme?) is called the “Scalable 2D Vector Graphics API for J2ME”  It defines an API for rendering 2D graphics in the same W3C format as above. 

Mali-JSR287 is backwards compatible with JSR226, but it adds support for advanced features including embedded multimedia (such as video); advanced graphics effects like transparency, gradient fills, and advanced text rendering; and a low-level API that gives Java applications direct access to advanced features of the underlying GPUs.

The idea behind all this is to ultimately provide support for the complete set of Khronos and Java graphics open standards to mobile handset developers.  This frees us up as engineers to concentrate on creating value-added content – quite a bit more fun than spending your day porting platform-specific graphics applications to various hardware environments.

In addition to putting the runtime support for all this graphics content on your phone, ARM wanted to prime the ecosystem pump by giving content providers complementary tools to create compelling content.  If the content is out there, of course, the handset folks are more inclined to include support in their handsets.  The tool offering includes performance analysis, a shader compiler, texture compression, a shader debugger, an emulator, conditioning tools, “…and more.”

Leading the pack of handset makers that are likely adopters of the new Mali capabilities, Ericsson Mobile Platforms has licensed the new graphics stack to be used in conjunction with the Mali200 GPU hardware in their HSPA-enabled mobile platform, U500.  The complete Mali graphics stack is now available for licensing from ARM for use with the Mali55 and Mali200 GPUs or with legacy chipsets without a Mali GPU.  The Mali-JSR287 is the only delayed component – it will be released after ratification of the JSR287 standard (expected by the end of 2008, according to ARM).

Leave a Reply

featured blogs
Nov 22, 2024
We're providing every session and keynote from Works With 2024 on-demand. It's the only place wireless IoT developers can access hands-on training for free....
Nov 22, 2024
I just saw a video on YouTube'”it's a few very funny minutes from a show by an engineer who transitioned into being a comedian...

featured video

Introducing FPGAi – Innovations Unlocked by AI-enabled FPGAs

Sponsored by Intel

Altera Innovators Day presentation by Ilya Ganusov showing the advantages of FPGAs for implementing AI-based Systems. See additional videos on AI and other Altera Innovators Day in Altera’s YouTube channel playlists.

Learn more about FPGAs for Artificial Intelligence here

featured paper

Quantized Neural Networks for FPGA Inference

Sponsored by Intel

Implementing a low precision network in FPGA hardware for efficient inferencing provides numerous advantages when it comes to meeting demanding specifications. The increased flexibility allows optimization of throughput, overall power consumption, resource usage, device size, TOPs/watt, and deterministic latency. These are important benefits where scaling and efficiency are inherent requirements of the application.

Click to read more

featured chalk talk

S32M2 Integrated Solutions for Motor Control
In this episode of Chalk Talk, Raghavan Nagarajan from NXP and Amelia Dalton explore the challenges associated with software defined vehicles, the benefits that S32M2 integrated solutions for motor control bring to this arena, and how you can get started using these solutions for your next automotive design.
Nov 21, 2024
6,664 views