Texas Instruments recently stated that it intends to de-emphasize application processors for smartphones and tablets, and instead refocus its OMAP processors on embedded applications. And Qualcomm, which has been very successful lately in smartphone and tablet application processors, is dipping its toe in the embedded space as well.
These are very interesting developments to me, because for some time I've been thinking about the role of mobile application processors in embedded applications.
Driven by the enormous volumes and intense competition in the smartphone and tablet markets, mobile application processors have evolved into marvels of engineering. In a very modest price, power and space budget, these chips deliver a remarkable amount of performance and functionality. And much of that performance and functionality is just as relevant in typical embedded applications as it is in smartphones. In addition, application processors targeting smartphones and tablets benefit from huge investments in software development infrastructure, including things like operating systems, device drivers, interface protocol stacks, and multimedia codecs and frameworks. And application processors are continuing to improve rapidly.
As a result, it's becoming increasingly tempting to use application processors in embedded applications.
But there are some serious obstacles to using application processors in embedded applications. Let's start with the big one: You can't buy them. Most application processor vendors will only sell their chips to ultra-high-volume smartphone and tablet makers. As strange as that may sound, it's true. And there's a very good reason for it: these processors are mind-bogglingly complex, and they've been designed for what really amounts to one application (OK, two, if you consider smartphones and tablets to be distinct applications).
Incorporating these super-complex, highly specialized chips into other types of applications is very tricky. Chances are, you'd need a lot of support from the chip vendor to do it. Application processor vendors are accustomed to providing extensive support to their customers – but only to a handful of ultra-high-volume customers. For each of these customers, a chip vendor typically has a dedicated team of highly experienced engineers. Obviously, this approach doesn't scale as the number of customers – and applications – goes from a handful to hundreds or even thousands.
This will be a key challenge for TI and Qualcomm – and a few others, like Freescale – who aim to bring application processors into the mainstream of embedded systems.
Of course, there are a variety of ways to make these complex processors easier to use. One is to simply ignore some of their more complex features, such as their numerous coprocessors for audio, video, imaging, etc. But this approach defeats the purpose of using these sophisticated processors in the first place. If you're going to leave most of their capabilities unused, you're probably better off just using a much simpler chip instead.
Another way to make application processors easier to use is through programming languages, APIs, application frameworks, and software component libraries that enable developers to use the sophisticated capabilities of these processors without having to learn every nuance of their internal operations. Back in February, I wrote about OpenCL, which is a programming language and API for parallel programming that may help make it easier to implement parallel processing tasks, such as computer vision algorithms, on mobile application processors.
I believe that application processors will become easier to use over time. As with advances in the chips themselves, I think these ease-of-use improvements will be led by chip, operating system, and device suppliers in the smartphone and tablet spaces. Since applications are key to differentiation in these markets, making application development easy is imperative.
What's less clear to me is how quickly, and how well, application processor vendors will adapt their organizations to the needs of embedded systems developers. The type of organization that effectively serves a handful of ultra-high-volume customers is quite different from the type of organization that supports thousands of customers. Arguably, suppliers like TI and Freescale have a leg up here, since these companies have been successful players in embedded processors for decades.
Without the enormous volumes of the smartphone and tablet markets, however, suppliers like TI and Freescale may find it difficult to make the huge investments necessary to keep their chips competitive, to develop the necessary application development infrastructure, and to support a large number of customers.
On the other hand, suppliers such as Qualcomm that serve the smartphone and tablet markets may find it challenging to divert enough resources from their key high-volume customers to effectively enable the embedded market.
It's tough to predict how the competitive landscape will evolve. But I think two factors will be key in determining the future of mobile application processors in embedded applications: First, mobile application processors deliver amazing capabilities in return for very modest cost and power consumption, making them irresistible to many system designers. Second, engineers are inventive, and when there's a compelling new technology, they tend to find clever ways to bend it to their needs.
Jeff Bier is president of BDTI and founder of the Embedded Vision Alliance. Post a comment here or send him your feedback at http://www.BDTI.com/Contact.