Unlike other areas of the high-tech industry, which have adjusted to fast-growing markets with few dips in fortune, the embedded systems segment has always been sensitive to economic conditions. As a result, the companies and their engineers have learned ways to roll with the punches and execute strategies to survive until the next uptick in market conditions.
At the core of those strategies for survival during market downturns is a focus on basics. First, keep improving the tools, the languages, the hardware and the development environments. Second, look at how those things can be improved or modified to fit new market needs. Third, look at the requirements of the changing market-in this case, to a much more net-centric and open way of doing things-and develop new tools and methodologies that will be needed.
All three survival strategies are on display this week at the Embedded Systems Conference in Boston, Mass., where almost half of the 50 or so classes are on traditional tools and operating-system issues: choosing the right operating system; optimizing code performance on new next-generation embedded processors; code generation, compilation and debugging; insuring hardware and software reliability; and guaranteeing real-time behavior.
But while there is an emphasis on Rules 1 and 2 in classes presented at the conference, fully a third of the classes relate to Rule 3: new tools, languages and methodologies that engineers can use to make sure their products are ready for the much more open net-centric and connected world of embedded design.
For example, despite the focus on new languages such as Java, there is still plenty of life left for traditional languages such as C and C++ in a range
of traditional and more recent net-centric embedded designs, according to Darren Moss, director of Research and Development, Iomega Corp., who is teaching a class this week on efficient C/C++ coding techniques. The reason is that even compared with more recent languages such as Java, “the C/C++ language allows complex features to be more clearly and quickly implemented.”
Focusing on the physical design issues involved in selecting a processor for the best performance without sacrificing power consumption is the focus of session No. 307 by Robert Ober, director of architecture, 32-bit processor cores, Infineon Technologies Inc.
“When designing for power management in handheld systems, it is nonoperating mode that represents the largest total power dissipation,” Ober said. His perspective is borne out in a contributed article in this report from Ian Eliot, chief strategy officer at Agenda Computing Inc. (Aliso Viejo, Calif.), on the design of its Linux-based handheld devices.
But as indicated by a number of papers at the conference-versions of which are included in condensed form in this report- while it is important to focus on the basics of embedded design, it is also essential to look at existing methodologies and see how they can be adapted to the requirements of this new, more highly connected environment.
Special attention in a number of classes at this conference are focused on middleware protocols and standards that have long been in common use in the embedded world, such as Corba, SNMP and HTTP as well as new Web services with methodologies based on Java and XML.
A number of other articles in this report from engineers and developers working for companies attending and participating in the conference are focused on what else the embedded designer will need in the new net-centric embedded control environment.
Beyond just simple management, and no matter what the language environment, said Brian Selic, senior methodologist, Rational Software Inc. (Kanata, Ontario), the greatest challenge facing embedded developers in this new net-centric embedded control environment are those of distributed software design. “It is foolhardy to believe that the design and realization of distributed software systems is similar to traditional, centralized systems,” he said.