When the Embedded Systems Conference was first proposed about 20 years ago, someone quipped that a more apt name would be the “Everything you ever wanted to know about embedded systems but were afraid to ask” Conference. While the story may be apocryphal, the overwhelming bounty of information and resources the name implies captures the essence of the upcoming Embedded Systems Conference at the McEnery Convention Center in San Jose, Calif., April 14 through 18.
And you need not be afraid to ask. Indeed, there are likely to be events, classes, and demos that you haven't even thought to ask about. The show will be bursting at the seams with exhibits, demonstrations, classes, and tutorials on every aspect of embedded systems design.
At the core of the show, spread over five days, are 180 or so papers and classes and 12 two-day tutorials on all of the key areas of interest to embedded systems developers:
• Architectures and low power.
• Analog design and data conversion.
• Digital signal processing and multimedia.
• Hardware design, including programmable logic.
• Linux and open-source software.
• Operating systems.
• Project management.
• Real-time design.
• Software design.
• Verification and debugging.
• Wired and wireless networking.
A wealth of other events will make the conference even more apt to satisfy your need-to-know appetite, including:
• Embedded Teardowns.
• Build Your Own Embedded System.
• Career Fair, Disruption Zone.
• MSP430 Day.
Wired and wireless sensor networks
One constellation of classes sure to spark interest is the topic of wired and wireless control-network design.
In “Working with USB/Ethernet Software for Distributed Sensor Networks (ESC-223),” Eric Gregori will go into detail in how to combine USB and Ethernet into an effective home networking scheme. Matt Maupin will provide an overview of Zigbee, WirelessHART, the SP100 network stack, and Freescale's Synkro Networking Protocol in “IEEE 802.15.4: Providing the Foundation for Wireless Sensing and Control (ESC-343).” In “Intelligent Sensor Signal Processing (ESC-523),” Priyabrata Sinha suggests that the move toward ubiquitously wired and wirelessly connected sensors will force embedded systems designers to put even more intelligence into the sensor nodes for evaluation and decision making rather than rely on a centralized approach.
Because sensor nodes are minimalist by nature, many of the resources available for such operations as debugging and updating become problematic due to the lack of MCU pins to do such tasks in the background. To overcome such problems, David Johnson, in “Zero Wire Debugging Using Inductive Technology (ESC-320),” describes how to use inductive coupling to create a debug interface that requires no extra debug pins and no extra circuitry on the application hardware side. See Figure 1.
Multicore hardware and software development
Among the several classes and tutorials on multicore hardware and software development, several presentations stand out. In “Architectural Design of Software for Multicore Systems (ESC-351),” David Kalinsky suggests that many of the design assumptions serving as the underpinning of multitasking software design for the past 20 to 30 years are no longer valid when designing software for multicore SOCs. He will explain which of the old assumptions are still valid, which have to be modified, and which need to be replaced.
The interconnect scheme the developer chooses is important in a multicore design. In “Interconnections for Multicore Systems (ESC-531),” Sanjay R. Deshpande will provide a detailed analysis of the various approaches, how to choose the right one for your design, and the tools and building blocks you will need to achieve your goals.
A crucial aspect of designing with multicores is the operating system. In his class on “Understanding Multicore Embedded Operating System Issues (ESC-432),” Michael Anderson will discuss what operating systems need to support multiple CPU cores, in terms of performance, power, interrupts, caching, and cache coherency.
More under the Linux sun
Three classes stand out in the selection on Linux development:
• Pthreads. In “Introduction to Posix Threads (ESC-308),” Doug Abbott will provide an intensive course in asynchronous programming in the Unix/Linux Environment. He will discuss using Pthreads as an alternative to the heavyweight “process model”, historically used by Unix systems, including Linux, to split a large system into smaller, more tractable pieces.
• Mobile Linux. If you want a better idea of what is needed to implement a Linux application on a mobile device, try Robert Mueller-Albrecht's class on “Linux Kernel Debugging on Embedded Low Power IA Systems (ESC-440).” In it he will go into the methodologies needed to isolate problems on an embedded system using the example of Mobile Internet Devices, and how to build, deploy and debug on these types of platforms.
• Asynchronous DMA. Given the advent of storage technologies in embedded and mobile systems, “Asynchronous DMA (ADMA): Taking Linux out of the Data Path (ESC-451),” presented by Haluk Aytac, will be of major interest to Linux developers. He will describe a Linux Asynchronous DMA interface recently created for an SoC to make use of its DMA engines, which boost performance of a RAID system by off-loading data path tasks to DMA engines.
Must-see classes and sessions
Other presentations notable for their timeliness and technical insight include:
• Operating-system independence. In “Operating System Independence (ESC-452),” James W. Grenning will present a class on how to use some of the existing portability standards, as well as packages like POSIX and ACE, to help preserve your software investment and allow it to migrate to new platforms.
• High availability. To help developers in building high-availability systems able to tolerate both expected and unexpected faults, David Kalinsky is presenting “Principles of High Availability Embedded Systems Design (ESC-306).” He will discuss the basics of high availability and fault management, basic hardware N-plexing, and voting issues as well as software fault tolerance techniques such as the static method of Nversion programming.
• High performance FPGA design. Caltech's D.W. Hawkins, a regular presenter at ESC, will teach a session on “High-Speed Signal Processing with FPGAs and CPUs (ESC-446).” He will detail the design of a high-performance data processing system containing multiple FPGAs, embedded CPUs, and general-purpose CPUs for use at the Owens Valley Radio Observatory.
• Fault management. In “Fault Detection in Embedded Systems (ESC-360),” Lorenzo Fasanelli, Lorenzo Lupini, and Massimo Quagliani describe a practical approach to the issue of fault detection and an overview of the techniques to enhance embedded systems debug capabilities.
• MEMS versus Quartz. Wan-Thai Hsu will take a comprehensive look at the use of MEMS resonator oscillators versus quartz crystal oscillators for timing and clock applications in “The Future of Timing–MEMS vs. Quartz (ESC-181).”
• Peer code review. In “Best Practices for Peer Code Review (ESC-300),” Jason Cohen will conduct a class on the best ways to do efficient, lightweight peer code review. His emphasis will be on methods that have been proven to be effective by scientific study and extensive field experience.
• Real-time friendly C++. Finally, Scot Salmon does his best at “Making C++ Real-Time Friendly (ESC-527).” In addition to taking attendees through many of the gotchas in the language that make life difficult for developers in real-time designs, he will go into detail about the improvements to the language that remove such tricks and traps such as “memory allocations behind your back.”
Other things you don't need to ask about
In addition to everything you've come to expect, this month's conference offers a number of other services and venues to both entertain and educate:
• Embedded Teardowns. Don't forget to check out the Live Teardowns on successive days: the Sony 11' OLED TV on Tuesday, April 15; and the Orlon Space Suit, the Gibson Robot Guitar, and the Sony Rolly on Wednesday, April 16.
• Build Your Own Embedded System. Each fully paid conference attendee will be given a Windows CE 6.0 R2-based Via Artigo Box embedded development kit. You'll be able to take the kit from class to class and use it to try out concepts and build an embedded design.
• ESC Career Fair. We have all used the ESC as a venue for finding jobs and making professional contacts that might lead to further opportunities. Formalizing this practice, the Career Fair is a service for registered attendees, provided by TechCareers, so job seekers can meet potential employers and conduct on-site interviews.
• The Disruption Zone. In this venue, software and hardware companies will demonstrate what they think are revolutionary technologies that will change the embedded systems industry.
• MSP430 Day. On Tuesday, April 15, and Wednesday, April 16, you can meet the experts from Texas Instruments and learn how to use the MSP430 MCU, get the latest product updates, participate in live technical demonstrations, and receive a FREE eZ430-RF-2500, the latest low-power wireless development tool (a $49 value).
For more information about the conference, go to www.cmpegevents.com/web/esv. I'll post more detail on Embedded.com about other interesting papers from the conference.
Bernard Cole is the web editor for Embedded.com and the Embedded.com newsletter. He has written for EETimes and IApplianceweb.com. You may reach him at .