Debugging Embedded is Hard! – NMI Event

‘Debugging embedded is hard!’ was the sentiment behind the National Microelectronics Institute (NMI) event held at the ARM UK offices in Cambridge on the 24th of June 2008. The event was well attended, including representatives from Lauterbach, Mentor Graphics and Infineon.

The day featured a variety of presentations, all centred around the particular difficulties arising while debugging embedded systems, such as general lack of visibility and the real-time nature of the systems. The highlight of the presentations was the one given by Simon Davidmann of Imperas (and I’m not just saying that because I used to work for him). He gave an overview of Imperas’ Open Virtual Platforms (OVP). OVP presents an interesting solution to the problem of debugging by moving the issues into simulation space, therefore removing a lot of the restrictions normal embedded debugging suffers from. Couple that with the ability to deal with heterogeneous, multi-core systems and it will certainly be very interesting to see how the market responds to such technology, and how it adapts to fit the needs of system developers out there.

Otherwise, there were also commercial pitches from ARM and Lauterbach, each demonstrating their ‘latest and greatest’. With the ARM RealView demo, it was great to see it used Eclipse under the hood – your basic Eclipse + CDT install, with additional custom ARM functionality for things like profiling and trace functionality. Another endorsement of how CDT is really becoming the de facto standard for embedded C development. An unexpected bonus for me at the event was running into Mikhail Khodjaiants – one of the CDT developers working on the debug interface that I’d dealt a lot with before, but had never met face-to-face. It was nice to learn that he now actually works just down the road from me.

Welcome To The Kichwa Coders Blog

Like Alexander Fleming discovering penicillin, my first encounter with Eclipse was unplanned but fortunate. With a background in electronics, I was more comfortable with assembler than Java. However, that was the year the custom processor project I had been working on at Altera was cancelled. The only other interesting role going in the group was looking into a relatively unknown open-source project called Eclipse to see if it would be suitable for putting together a development environment for the Nios processor. I decided to give it a go. The rest is worthy of a whole separate article or two. But in short, I was soon taken with the clean architecture and potential of Eclipse for creating tools in an industry notorious for its hardware achievements far outshining the software tools.

After Altera, I had opportunities to keep working with Eclipse and the CDT, and I still continued to be in awe of how much was being achieved by the open source projects, and how much they were changing the commercial landscapes for embedded companies everywhere. In September 2007, I started up Kichwa Coders – the idea was to keep focussing on the areas I enjoy working on most – Eclipse and embedded systems. This blog presents an in-depth look into the industry from my perspective. Hope you enjoy it and let me know what you think!