If you want to add your own twist to a codec or video-processing technique,
upgrade equipment in-system, or simply look for a less expensive solution, skip
dedicated silicon and go with a DSP chip or an FPGA that can be updated in-system.
IP OFFERINGS
If you're looking for an IP solution, Hantro sells encoder/decoder IP that can
handle MPEG-4 Simple Profile, H.263 Profile 0, H.264 Baseline, VC-1 Simple Profile,
and JPEG codecs. Hantro's IP solutions may be purchased as encoders, decoders,
or codecs. They target mobile environments with high performance coupled with
low power consumption and CPU load.
Another company offering licensable IP is W&W Communications with its baseline-and high-profile H.264/MPEG-4 IP offerings. These target design with Altera's Stratix II FPGAs. Both Hantro and W&W Communications have software-only IP offerings, as well as such hardware-based offerings.
DSP, PARALLEL-PROCESSOR SOFTWARE PROCESSING
To stay current and take advantage of built-in speed, software codecs and algorithms
running on a DSP or parallel processor designed with digital video in mind may
be the best choice. First, let's consider the software that can be loaded into
your favorite DSP or video processor.
The MathWorks offers the Simulink family, a GUI and model-based design approach
that lets designers use intuitive block diagrams while developing video-and
image-processing systems. As with other model-based design approaches, system-level
models may be shared with other designers while reducing the need to build expensive
physical prototypes. Once the design is refined and validated, designers can
automatically generate code from the model, eliminating the need for hand coding
and the potential errors introduced by manual coding.
"In many situations, standard algorithms and off-the-shelf solutions are not
sufficient to solve challenging video-processing problems," says Bruce Tannenbaum,
marketing manager for image and video applications at the MathWorks. "Engineers
need tools to develop and evaluate ideas and then quickly get their results
into production systems."
"With Simulink and the Video and Image Processing Blockset, engineers can design
innovative video-processing solutions that can be easily targeted to a microprocessor,
a DSP, an FPGA, or an ASIC," Tannenbaum adds. "Simulink is our platform for
Model-Based Design, which is a development process that improves communications
among engineers and reduces the potential for errors that cause design rework,
resulting in a shorter development cycle."
One of the issues in using ASICs or ASSPs is that they can quickly become outdated with the rise and fall of the latest codec and display processing algorithm. This isn't the case when a DSP or parallel video processor is used in place of an ASIC or ASSP.
Connex Technology offers a massively parallel video-processing IC that can
handle any codec while simultaneously handling pre- and post-processing algorithms.
In addition, the device's memory structure has enough bandwidth for multiple
high-definition video streams. And unlike reconfigurable gate-array alternatives,
the CA1024 provides a compact, homogenous vector processor (see "Hot Chips
18 Serves Up Another Summer Scorcher," at www.electronicdesign.com,
ED Online 13165).
Analog Devices has an embedded processor that includes a 16-bit RISC processor
and DSP engine, known as Blackfin, that targets low-power portable applications
such as cell phones and living-room applications. Blackfin devices come standard
with one or two cores running at 600 MHz. Each core includes two 16-bit MACs,
two 40-bit ALUs, four 8-bit video ALUs, and a 40-bit shifter. Other features
include on-chip memory, glueless video I/O, full-duplex I2S channels,
16-channel DMA controllers, and general-purpose timers/counters.
Texas Instruments has a full line of DaVinci DSPs that target video processing
and include an ARM9 processor. They run at speeds up to 720 MHz and provide
multiple ALUs and multipliers. They also come standard with L1/L2 cache and
on-chip RAM, a multichannel DMA controller, Ethernet MAC, glueless video ports,
a host port interface, McASP ports, a PCI interface, and I2C bus.