The idea behind going to a trade event like embedded world, which was held in Nuremberg at the end of February, is to try to put your finger on the pulse of the embedded systems industry. The problem is, where do you find the pulse in a whale? The final release for the show claims 22,500 visitors, plus 1,000 students on the last day. There were also 900 exhibitors, some of whom had many tens of staff. The halls together covered 42,000 sq metres (around 450,000 square feet – or more than ten American football fields). And the statistics go on and on.
One clear trend, however, is software. Ten years ago the emphasis was on systems where hardware was the core and software was there to help deliver the system, or to provide a flexible way to achieve differentiation. Today it is not an exaggeration to say that the system is software with hardware serving only as a delivery platform. Sure, the halls were still full of hardware companies, from chips through boards to entire boxes, but there were a lot of software tools companies. And many of the hardware companies were talking software, to a greater or lesser degree.
Even on the way to Nuremberg, it was clear that embedded systems are continuing to change the way larger systems work. Airplane boarding cards are no longer even paper, but held in cell phones, and the human eyeball is being rapidly replaced by electronic scanners to check the codes. On the train in Germany, Wi-Fi was available, and again “Handys” were being used for tickets. Bundesbahn, the German railway company, has a range of mobile phone apps to keep track of the status of your train – which in some cases seemed to be more accurate than the information displayed at the station.
With some exceptions, software supplied by software companies has been regarded as useful but not necessarily of high quality. This is changing. A few years ago, Cadence, whose tools are used to design chips, published EDA 360, a sort of manifesto. In this, Cadence made it clear that, for a chip company, just designing the chips was no longer enough. The companies ought to be considering the systems in which the chips would be used and also the software that was a key element of the systems. This was percipient, as now when you talk to at least some of the chip companies, they are talking to their customers and developing software that can be seen to be of high quality. A marked example of this is Freescale, whose automotive chips are now being supported by software that allows their customers to demonstrate compliance with the ISO 26262 standard.
I talked to a number of people about ISO 26262, Road Vehicles – Functional Safety. This was published towards the end of 2011, and it sets out a framework for the lifecycle of electronic and electrical systems for cars and other light road vehicles. It covers management, development, production, operation, service, and decommissioning of those systems with an impact on safety. One interesting thing that came up in several conversations, and that can be seen in several web fora, is that, while the developers of the standard thought they knew what they meant when they wrote the standard, as people are increasingly trying to apply it to real-life system development, there are areas that are unclear or even ambiguous.
This is not uncommon for a standard under development, as is shown by the history of MISRA C, another topic under discussion at Nuremberg. The original MISRA C, published in 1998, was called Guidelines for the Use of the C Language in Vehicle Based Software. It started from the premise that it was possible to write C code that was legal and that compiles, but that could be unpredictable in operation. The intention was that people would use the guidelines to develop coding standards for their projects. What actually happened was that companies developing code analysis tools tried to develop MISRA C compliance checkers to check that the guidelines were being followed. In doing so they discovered areas of ambiguity. The committee producing the guidelines thought they had been explicit or unambiguous, but trying to check the rules through a machine forces a close examination of the exact meaning of a rule, and this revealed a series of issues.
The problems of the tool makers, plus user experience, provided much of the input to MISRA C:2004 Guidelines for the Use of the C Language in Critical Systems. The change in name was recognition that the guidelines were relevant to any safety-critical C project. (In fact some of the team that worked on MISRA C would argue that the guidelines are applicable to any serious C project, safety-critical or not.) Although a new version of the C language (C99) was available when the guidelines were being written, there had been very little take-up and few compilers were available, so MISRA C:2004 didn’t cover it. Some years on, C99 was now more widely available, and the guidelines were very widely adopted, so it was time for a new version. Despite the 2012 date, it has not yet been officially released, but it probably should have been by the time you are reading this. However, at embedded world, both LDRA and Programming Research were briefing on their MISRA C:2012 static code analysis compliance modules. These two companies are members of the MISRA C committee, and so are first out of the blocks, but expect to see more tool announcements later this year.
MISRA C compliance was also part of other announcements; for example, Atollic, a company based in Sweden, released a new version of their TrueSTUDIO IDE for ARM cores, which now includes a MISRA C:2004 analysis tool.
Talking to the software tools companies, they seem to be finding that, while they are not finding it easy to sell tools for software development, it is becoming less difficult. It is still a harder sell to persuade a company to invest in tools for improving software quality than it is to sell them scopes and logic analyzers, but the need to meet the demands of a standard or some other quality measure has opened some managements’ eyes to the tools available for software. In this environment, established companies, like Visure and IAR, are extending their capabilities, while newer companies are carving out niches for themselves.
I mentioned Cadence earlier. This was the first time that all three of the major players in chip design had a presence at Nuremberg. Mentor, with its operating systems and specialist tools, like car wiring-harness design, has always been there, but this year the company was joined by Synopsys and Cadence. Synopsys was pushing virtual models – running a model of a target processor on a bigger processor to develop software before boards are available. Cadence was looking at system development tools, in this case from the perspective of the automotive sector, mapping the elements from their software tools, verification platforms, and prototyping systems’ different tools on to the product development cycle.
There was also hardware, of course. Virtually all the new processor/micro-controller announcements I heard were ARM Cortex based, although keeping track of the different flavours of Cortex is gradually becoming complicated. ARM itself is extending its m-bed prototyping boards and adding cloud support for developers. There is the continuing drive to lower-power and lower-cost processors and the move away from 8-bit to 32-bit, for low-power/low-cost devices seem now to be irresistible, except for extremely limited-functionality/very-low-cost areas where 8-bit is still untouchable. And of course, with a 32-bit architecture, we are again looking at operating systems, software stacks, compilers, and all the other elements of a software-development tool chain.
Multicore was low-key this year, apart from the XMOS announcement of a new entry-level multicore microcontroller. Some of the tool developers mentioned it in passing, but it wasn’t a hot topic. Not that the issues of programming and debugging multicore devices have gone away; they are just not high on people’s priority list at the moment.
It was interesting to talk to Wind River, which stills seems to be maintaining a very strong identity within Intel’s ownership. The company’s latest product is software for deep-packet inspection of internet traffic, an extension to the network management software that they have been developing. Knowing the content of a message allows the network operators to assign it a priority across the network: for example, streaming video is more susceptible to traffic interruptions than, say, a simple email, and therefore should be given priority across the net. This is great for a user if you want to watch streaming video, but it does leave me a little curious about how detailed the examination can be. Does it allow looking for key words and phrases in messages, for example? And if it does, who will be able to see the results?
There were other conversations and other themes – one of the joys of an event like this is the way, if you are not talking to a marketing guy wedded to a PowerPoint presentation, the conversation can go in all sorts of directions: the supplier to smart grids who is against nuclear power stations, for example. And alongside the work is a social arena. When the halls close to visitors, the beer is opened and the socialising begins. And then, of course, there are the down-town bars and bier-kellers where discussion goes on well into the night and leaves some people looking a little frail the next morning.
But the main thing I came away with, apart from tired legs (thanks to ARM, I know I walked over 10,000 paces on the first day – the new Nike FuelBand is apparently ARM powered) is a sense of an industry doing things. Despite austerity measures and budget crunches around the world, people still seem to be working on projects that are going to be useful, interesting, and/or fun (if sometimes perhaps a little creepy). While competition between companies is high, the areas of co-operation are even higher. To try and sort out the alliances in the tool companies is complex enough; throw in their relationships with the hardware guys and it gets even more complicated. And then, on the last day, the thousand students charging around the halls, some of who had travelled overnight to be there, gives us hope for a continuing industry, at least in Germany and Austria.