What will the next 20 years (2008-2028) bring to embedded systems design? As part of our 2028 series, Dan Dodge of QNX looks at more than technology.
The iPhone has little or nothing to do with medical instruments, industrial control systems, or automotive infotainment systems. Yet it will raise expectations about HMI design across these and other markets.
Simply speaking, customers won't tolerate a mediocre HMI--whether they are consumers buying the latest tech toy or companies purchasing a complex SCADA (supervisory control and data acquisition) system.
Speaking of complexity, some pundits state that the amount of software in embedded systems is doubling in size every 10 to 24 months. Consider the automobile, for example. Consumers now want car radios that can play content from multiple devices--iPods, USB flash drives, PlaysForSure media players, Bluetooth phones, and so on--any of which may contain thousands of music files.
So, to begin, the radio needs middleware that can intelligently connect to multiple media sources and efficiently synchronize a mountain of content. The radio also needs voice recognition software, since using buttons or touchscreens to generate playlists can, in some situations, create driver distraction.
And to ensure it can actually hear what the driver is saying, the radio might also employ noise suppression software to filter out sounds generated by wind, rain, tires, HVAC systems, rumble strips, and passing cement trucks.
This growing complexity has huge ramifications for both vendors and developers. Twenty years ago, developers needed a vendor who could provide a good real-time operating system (RTOS) and compiler. Today, developers need a far larger foundation of tools, protocol stacks, and middleware just to get started.
Thus, RTOS vendors will have to focus higher and higher up the stack. They'll also have to provide technologies, such as partitioning schedulers, that make it easier to integrate massive amounts of software from geographically distributed development teams and suppliers.
Writing parallel software for multicore processors represents another major challenge. And again, RTOS and tools vendors will have a major role to play, be it through tools that analyze multicore behavior or operating-system technology that can efficiently schedule parallelized code across multiple cores.
Are there challenges on the road ahead? No question. Fortunately, though, embedded system developers are by nature problem solvers: devising elegant solutions to complex problems is what they do best. So am I excited about the future, both short and long term? Absolutely!
Dan Dodge is the CEO of QNX Software Systems.