Getting a product out the door quickly means starting from on top of a solid platform, not building from ground zero. That's one reason why I look at development kits in EiED Online. The better platforms get you started quickly and provide a solid base on which to build.
Delivering a hardware or software platform often is the first step, with an integrated solution to follow. Digium's Asterisk represents that first step (see "Open-Source Platform Dials Into VoIP" at www.electronicdesign.com, ED Online 11856). The company's Asterisk Appliance represents the second step (see the figure). The Asterisk Appliance is the hardware component for Digium's Asterisk Appliance Developer Kit, which essentially is Voice over Internet Protocol (VoIP) in a box.
Developers now can concentrate on hardware and software enhancement since the basic system is a small or branch-office embedded private branch exchange (PBX). The hardware includes two-to four-port foreign exchange service (FXS) cards, two-to four-port foreign exchange office (FXO) cards, and five Ethernet ports (four local-area network, one wide-area network). The system also has hardware echo cancellation, compact flash for voicemail, and wireless support plus a built-in router. An IP phone is included in case you don't have one handy. The kit comes with a commercial Asterisk license as well.
Of course, integration into streamline development can pop up anywhere. Mercury Computer Systems' MultiCore Plus SDK 1.0 (software development kit) software suite targets Mercury's Cell Broadband Engine (BE) and ruggedized PowerBlock 200 (see "Mercury Pushes Cell And VXS," ED Online 11995). The PowerBlock 200 is based on IBM's Cell processor (see "Cell Processor Gets Ready To Entertain The Masses," ED Online 9748).
The SDK targets other multicore processor architectures as well. It supports the open-source Linux distributions for the Cell. And, it complements components of the IBM Cell SDK. Optimizing software for the Cell initially tends to be more difficult because of its unique architecture.
Mercury's offering includes optimized math libraries and middleware communication frameworks. It uses an Eclipse-based integrated development environment with support for associated plug-ins such as the Mercury Trace Analysis Tool and Library (TATL).