Thought Leadership


By Colin Walls



As I mentioned previously, I am in the midst of a busy time for conferences. This week, I am at ECS in Stockholm, Sweden on Tuesday/Wednesday and IP-SoC in Grenoble, France on Thursday.

I have a total of four presentations, along with some other activities at these events …


ECS has become a significant fixture in the calendar for embedded events in the Nordic region and seems to get bigger every year. I have two papers to deliver:

Tuesday at 09:30:

Selecting an Embedded Operating System

Most modern embedded systems employ an operating system [OS] of some kind, and this necessitates some critical design decisions. Should you obtain a commercially available OS or develop one in-house. If the acquisition of a commercial OS is planned, how do you make the selection? This session reviews in detail all the facets of the make vs. buy and OS selection decisions – both technical and commercial – for an OS on an embedded design.

Wednesday at 13:30:

Power Management in Embedded Systems

The importance of power management in today’s embedded designs has been steadily growing as an increasing number of battery powered devices are developed. Often power optimizations are left to the very end of the project cycle, almost as an afterthought. In this paper we will discuss design considerations that should be made when starting a new power sensitive embedded design, which include choosing the hardware with desired capabilities, defining a hardware architecture that will allow software to dynamically control power consumption, defining appropriate power usage profiles, making the appropriate choice of an operating system and drivers, choosing measurable power goals and providing these goals to the software development team to track throughout the development process.


IP-SoC is very much an EDA event, but has an increasing embedded software content. I have two presentations and another activity here, all on Thursday:

At 09:50:

The New Tower of Babel – The Languages of Embedded Systems Design

In this keynote session, the key software programming languages and the primary hardware definition languages will be described, compared and contrasted. This will lead to a discussion of the changing roles of software and hardware in modern embedded system design.

At 10:30:

Self-testing in Embedded Systems

All electronic systems carry the possibility of failure. An embedded system has intrinsic intelligence that facilitates the possibility of predicting failure and mitigating its effects. This paper reviews the options for self-testing that are open to the embedded software developer. Testing algorithms for memory are outlined and some ideas for self-monitoring software in multi-tasking and multi-CPU systems are discussed.

At 15:15:

Panel Session on Multicore


If you would like a copy of my slides from either of these events, please email me.

Leave a Reply

This article first appeared on the Siemens Digital Industries Software blog at