Keynotes & Top Three at ESC

The Embedded Systems Conference, UK was held in a new location of FIVE at Farnborough, home to the famous airshow. The conference keynotes featured two Q&A panels. The first was a set of CEO’s discussing ‘The State of Microelectronics’. They discussed high level issues such as the current state of education in delivering the next-generation embedded engineers. One interesting aspect highlighted by Mark Robson, CEO of Freescale Semiconductors was how the new breed of engineers graduating will be much more suited to collaboration and working remotely thanks to the influence of social networking. Interesting side benefit from the likes of facebook, twitter & co!

The second keynote, ‘The State of Embedded’ was focused more on engineering trends including the old language debate of C vs C++. Niall Cooling of Feabhas mused on the point that there should be more uptake of Java for embedded but there are still barriers out there, particularly with issues such as the non-deterministic behaviour or garbage collection. You can’t very well have your deeply embedded device pause for a moment while GC runs.

Both the keynotes highlighted some interesting discussion points. On the whole, I felt they could have benefited from being a bit more structured and was a bit disappointed that there was not more talk about the future direction of the embedded space.

I attended quite a few of the conference sessions. Some of the sessions suffered due to the presenters attempting too cover too much rather than just sticking to the remit of the talk (after all who wants to keep hearing about waterfall models). Three of the best sessions I attended were:

1. “Implemening a Memory Manager for Small Footprint Embedded Systems” by Michel de Champlain of Deep Object Knowledge.
Michel gave an interesting, technical talk about a low footprint deterministic memory allocator for small embedded processors. I could immediately see how this could be very useful to our clients.

2. “Understanding Quality” by Glennan Carnie of Feabhas.
This was a very well presented session of which the key take-away was the ‘Quality Triangle’. The triangle consists of three measures of quality: Customer perceived, Intrinsic and Compliance-based. Quality of products are measured using one or more of these measures depending on the situation. In our experience, many embedded companies rely on customer-perceived quality. This is okay until the product gets used by a larger set of customers or used for a slightly different purpose. Having good intrinsic quality allows quick and less expensive adaptation to continue to achieve the desired customer-perceived quality.

3. “Tips and Tricks for Debugging In The Trenches” by Greg Davis of Green Hills Software.
This talk included a series of advanced debugging features that are not often used, but could be very effective in the right situation. It was presented by the head of the compiler group so very relevant to me as a compiler-writer. The most interesting feature was the advanced ‘scripted breakpoints’ which allow you to automatically run a few commands every time a certain breakpoint is hit. Its nice to see that GDB is keeping up with the commercial debuggers, now that Python is integrated into GDB.

In addition to those sessions there was also the latest and greatest from many exhibitors to partake in. On a less positive note, while the new location was convenient to travel to, unfortunately the centre did not provide the best venue for the conference talks. The talks suffered from a high level of ambient noise from the exhibition floor. It made listening to the talks difficult and a poor environment for interacting. Fortunately the organizers are well aware of this and will aim to improve on this for upcoming conferences. All in all, ESC UK was worthwhile, and we look forward to a new improved ESC UK next year.

The Problem With The Tools: 4 reasons embedded tools are not up to scratch

In the Electronic Design Automation (EDA) field it is widely acknowledged that the state of the software has not kept up with the rapid advance of the hardware. At the 2009 Design Automation Conference (DAC) in his keynote speech “The Tides of EDA“, Albert Sangiovanni-Vincentelli, co-founder of Cadence and Synopsys, said “At the system level, we should look closely at embedded-software design as a great opportunity to innovate…For the past six years, keynotes at DAC pointed out the great importance of software for electronics, even for the semiconductor industry…There is consensus about the need to change the way we design software in general…

So what is it about software tool development that has meant the tools are not up to scratch ? Here are four challenges developers have to contend with.

1. Tool complexity – the tools do a lot, whether it is dealing with routing algorithms or enabling one to build a system-on-a-chip, there is a great deal of functionality to contend with. All this has to be handled while ensuring the tool remains fast, robust and easy-to-use.

2. Short timescales and limited resources – as ever time is of the essence as the rewards are huge for being first to market. However the current economic crisis makes things worse as it means companies have to work out how to deliver in short timescales with limited resources. This often leads to compromises being made which detract from the tools.

3. Sophisticated users – today’s users are increasingly sophisticated. They have specific notions of what tools should look like and how they should work. Often embedded tools suffer from usability issues as they have not spent enough effort focusing on the end-users needs and optimizing key task flows

4. Integration Demands – an extra burden is put on developers to get integration right. Today tools cannot exist in a vacuum and must play nicely with the existing systems out there, whether they are build systems, revision control or text editors. Dealing with integration issues complicates the lives of tool developers as these requirements often arise further down the project life cycle and require a high level of adaptability.

Eclipse Summit 2009 – Short Talk Proposal

The planning for this year’s Eclipse Summit in Ludwigsburg, Germany is underway.
We’ve put in a submission for a short talk to present the work we did at Diamond Light Source. You can view the abstract here. The talk will focus on taking Eclipse into a new scientific domain, with the potential of forming the basis of an open source platform for synchrotron data acquisition. We envisage this would meet the criteria of getting people excited and engaged at the potential for Eclipse to conquer this new territory. Whether the committee agrees with this remains to be seen. The level of talks at Eclipse conferences and summits is always very high so it would be great to make the cut. However competition is stiff and at the time of writing there were 152 submissions to contend with. The talks will be chosen by August 25th, so we await the decision with bated breath…

Kichwa Coders at the Great Marlow School

Back in March, Kichwa Coders was invited to participate in a Buckinghamshire Education Business Partnership (BEBP) at the Great Marlow School.

Kichwa Coders was asked by BEBP if we could provide a mentor for an Enterprise Day. I volunteered to attend the 18th of March session for year 10 students (14-15 years old). The day focussed on a brief prepared by Urban Media looking to get input from the students on a new Family Entertainment Centre to be located in South Bucks.

An Enterprise Day is a day for the students to experiment with some real life business problems. The school or a company from the community puts forward a real life challenge to the students, and under the guidance of a group of mentors they come up with a solution and then present the results back to the mentors and their peers.

In the case of the Urban Media challenge, the class of approximately 200 year 10 students were divided up into teams of 8 students each. The teams had about 4 hours to read the brief, and complete a set of tasks before finally presenting their results to a couple of the other teams. The tasks were:

  • coming up with a name for the family entertainment centre,
  • create an advertising campaign which included 2 posters, a radio ad script and a storyboard for a TV ad,
  • develop two “zones” in the centre, a learning zone and a gaming zone, the result of which should be a diagram for the zone detailing the activities and look and feel of the zone
  • come up with the concept for two additional zones and provide the same material as above
  • create a presentation to explain to Urban Media, the mentors and fellow students what the team came up with.

As you can see, the students had a huge amount of work to do. I was mentoring three of the teams providing them with guidance and encouragement on these tasks. Some of the students really impressed me with the level of dedication to this task, clearly demonstrating a level of maturity ahead of their age. The result was that all the teams did a very good job, and even though I thought it was a very short time to complete so many tasks most of the teams did.

The Enterprise Days are very good days for everybody involved. The students have an opportunity to complete some real world experience, the mentors get invigorated by the unbounded energy of teenagers, and the sponsoring company gets invaluable ideas from brainstorming with so many people. I am really looking forward to next year’s round of BEBP Enterprise Days.

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.