| |
HOME :: JOB
LISTINGS :: WEBCASTS :: ARCHIVES :: MEDIA
KIT :: SUBSCRIBE :: FORUMS
|
I didn’t realize it at the time, but I was introduced to platform-based design sometime back in the 1960s. The platform I used had a basic floorplan and various compatible components that could be selected depending on the desired results. The first decision was always a meat. It occupied a trapezoidal region in the center of the tray, uh, I mean floorplan. Alongside that region were two smaller triangular areas. One of these would always contain a starch, and one would contain a vegetable. Centered between those two was a square area with an inscribed circle. That section was always reserved for an 8 ounce paper carton of milk – chocolate, if I was lucky. The whole system was integrated around a common utensil strategy – those were stored in a long vertical partition along the right side of the platform. While the connection between a school lunch tray and a platform for embedded system design may seem tenuous at first, many of the subtle properties of that lunch tray were perfect examples of the expected benefits of platform-based design. First, by filling all of the partitions with the prescribed type of food, we were guaranteed a reasonably balanced meal with approximately the right portion sizes for a kid my age. While individual dishes could be swapped in and out at will, the overall result would generally be a cohesive meal tailored to the tastes of the individual consumer. If you don’t remember elementary school lunches quite so fondly… well, you may have a more accurate memory that I do. In 2006, we saw a steady increase in the presence of the platform as the primary mechanism for rapidly assembling embedded computing systems. Choose a platform, and you’ll quickly have a working computer system that you can begin tailoring to the particular needs of your application. As long as you stick within the framework of your chosen platform, many of the tough design problems are pre-solved. Step outside your platform, however, and you’ll likely have to be doing some deeper custom design work. Of course, there is no cafeteria director in the embedded systems space to dictate the dimensions of our tray. In our world, we end up with a bit of a conflict, with each supplier hoping to define the platform and steer the evolution of that platform to their advantage. It’s like putting a steering wheel in every seat of the car. If we view the 2006 embedded system platform from the processor out, we see lots of architectural options from suppliers like ARM, MIPS, Intel, and IBM. While working to find the optimal tradeoff between performance, power consumption and area, these companies also spent 2006 working harder than ever to define a platform around their processor architecture. Following the formula that brought Intel to prominence in the microcomputer wars, these companies all understand well that the processor is only the beginning. Far more design-ins are won by the ease with which a processor can be deployed in a working system than by the architecture with best-in-class performance or power consumption. Most design teams will readily swap a few percentage points of performance for a faster time-to-market and a lower bug rate. On top of your processor, of course, you’ll usually need an operating system. (Yes, I see your hand in the back of the room. You’re one of those, you hard-core types that hand-code everything and believe that an RTOS is way too much overhead for your application. Just skip this section and move on along to “compilers”… oh, wait – you don’t use those either, do you?) Two major axes of OS differentiation have emerged. One is the “business” axis, where royalty-based offerings like Microsoft’s embedded products sit on one end of the scale, commercial royalty-free OSs like Mentor’s Nucleus sit in the middle, and “free” options like open-source embedded Linux are available for those with more liberal leanings in their OS philosophy. The other axis is the technical scale, where the choices range from hard-real-time, small-footprint systems to near-enterprise scale, full-featured operating systems like Windows XP Embedded. The OS vendors are always working to track the latest changes in processor technology For 2006, the big challenge there was the emergence and proliferation of multi-core systems and their associated complications. OS suppliers are also perpetually pushing to make their software faster, more robust, and more configurable for various classes of target hardware. At the same time, the OS vendors are also trying to take the controls on the platform war, working to define “ecosystems” revolving around their offerings. These ecosystems include things like software integrated development environments, middleware support for various hardware and peripherals, and of course a large array of software IP and applications that can be dropped onto your platform – assuming you choose their OS. If you are the type that can’t commit, you can slide a virtualization layer in between your processor and OS. Companies like VirtualLogix rolled out software layers that sit between your processor and OS. To the OS, this layer looks like a processor. To the processor, they look like an OS. The benefit of this subterfuge is that either side of the wall can be changed without impact to the other. This year, the benefit was that your monolithic processor could be replaced with a multi-core version, and the operating system could continue in oblivious bliss, unaffected by the new additions to the hardware side of the family. With your processor, optional virtualization layer, and OS all in place, you’ll be ready to think more carefully about your software development environment. Here again, there are basically two directions you can travel. On one side, Microsoft continued to bring their ubiquitous Visual Studio environment more into the embedded space, thinning the line between embedded-specific development tools and those for desktop/enterprise computing. For those developing applications that include both an embedded and a Windows-based component, it’s hard to imagine a better, more rational choice. On the other end of the spectrum, Eclipse came into its own in the embedded universe in 2006, literally eclipsing most proprietary software development platforms. In a rational, “go with the flow” process, major embedded software tool developers including Wind River, Mentor Graphics, and many others, embraced the Eclipse wave, adopting business models that allowed them to continue to add value to the chain while leveraging Eclipse’s commoditization (or socialization?) of the basic bread-and-butter of the development and debug framework. In 2006, as always, embedded system development teams faced the scheduling duality of separate hardware and software engineering tracks. While the software portion of the system is becoming proportionally more complex and harder to manage, we continue to face the fundamental problem: traditional software development requires a stable hardware platform. Now, companies like Virtutech offer simulation environments that allow software development to proceed independent of hardware platform availability. Virtualization can do more than just provide concurrent hardware/software development, though. You can deploy your development environment broadly without the overhead of unwieldy prototype hardware, and your software developers gain increased debug flexibility because of the extra control and visibility available in a virtualized development environment. 2006 also saw continued changes on the silicon side. Moore’s Law advanced another tick, increasing the tradeoff space for development teams weighing the range of options from component-based systems with discrete processors to custom system-on-chip ASIC. The middle ground, FPGA-based system-on-chip, made significant gains during 2006, with programmable logic vendors such as Xilinx, Altera, Actel, and Lattice Semiconductor each driving their own platform “ecosystem” based on their own silicon offerings. Xilinx and Altera have each introduced proprietary processors as the centerpieces of their embedded system platforms. Actel went with industry-standard ARM cores for theirs, and Lattice Semiconductor showed up last at the party with a free, open-source offering. 2007 promises even more excitement, and we at Embedded Technology Journal are thrilled to be here to share it with you. For all the staff at Techfocus Media, we hope you had a wonderful 2006 and wish you an even better 2007.
Kevin Morris, Embedded Technology Journal December 19, 2006
|
All
material on this site copyright © 2003-2009 techfocus media, inc.
All rights reserved.
Embedded Technology Journal Privacy Statement |