New Virtualization Platform Supports Standard Tools for Embedded Systems Development
- By John K. Waters
The process of developing embedded systems software and the process of developing software for desktops and servers have a lot in common. But the differences are dramatic. Embedded software is usually targeted to specific hardware. And often, the software and hardware are being developed at the same time.
"During our development cycle, most of the time the hardware and software are in parallel development," says Ron Lau, software director of the network management group at Foundry Networks. "And that means there's really no hardware for us to work with."
Foundry's solution to this concurrent hardware and software development problem is an increasingly common one: virtualization. By simulating the often complex devices for which his team is building software, Lau can keep up with the hardware, and even have the software ready before the prototypes are complete.
"The software content on embedded devices is increasing dramatically," says Ross Wheeler, founder and CTO of Accenia. "In many cases, it's the most expensive component. So the real issue becomes software development time, which is taking longer and longer. If we keep doing things the same old way, we’re going to be in trouble."
Wheeler's company's flagship is an embedded systems virtualization platform called DoubleWide Studio. The product is designed to allow software engineers to create and test functionally accurate virtual systems directly on their desktops.
DoubleWide Studio is designed to enable simulation of many complex devices simultaneously, and to allow engineers to virtualize to any level, from silicon to interconnected systems. It uses so-called Fast Hardware Models to provide this range. DoubleWide comes with a library of FHMs for leading-edge chips, including Broadcom's family of Gigabit Ethernet and 10 Gigabit Ethernet switch-on-a-chip chips, more common silicon and the framework for customers to build their own custom FHMs.
These FHMs are combined with the embedded operating systems and any additional software to form Fast System Equivalents. These FSEs are functional systems that can be combined into networks and can interact with themselves or external tools such as packet generators or protocol verification suites.
Lau has been using DoubleWide Studio since it was introduced about three years ago (when the company itself was called DoubleWide). Lau says that two of the product's key selling points were its ability to simulate multiple systems on the desktop, and to adapt to Foundry's own custom operating systems. He also likes having the ability to test the software before it gets to the real hardware. Foundry is now evaluating the latest version of DoubleWide Studio, version 2.0, which Lau describes as very fast.
Wheeler believes that DoubleWide's ability to leverage industry standard enterprise development and testing tools is one of its chief innovations. With DoubleWide, his company is bringing tools such as Microsoft Visual Studio .NET, Compuware's DevPartner, the Eclipse open-source framework and others into the embedded environment.
"When the developers see this, they're shocked," he says. "We walk in and say, hey, you can use these other tools that are used by millions of other developers now, and it's almost like they’re being let out of jail."
DoubleWide Studio 2.0 operates in a range of host desktop environments including Red Hat Linux, Sun Solaris and Microsoft Windows, and supports a range of embedded operating systems including MontaVista Linux and Wind River Systems VxWorks.
John K. Waters is a freelance writer based in Silicon Valley. He can be reached
at [email protected].