Reconfigurable computing modules match logic speeds
Reconfigurable computing modules match logic speeds
In the past, system designers wanting to optimize image-processing code followed top-down techniques by first coding their application in C language and then optimizing specific functions within the C code. If this process did not produce the desired results, they rewrote sections of code in assembler language and, perhaps, they further optimized the time-critical parts of the code.
Now, thanks to companies such as MiroTech (St-Laurent, Quebec, Canada), system designers can execute specialized image-processing functions with the speed of dedicated hardware using reconfigurable hardware. Compliant with the Texas Instruments Module (TIM) specifications, MiroTech`s reconfigurable X-CIM modules can be used with several third-party PCI-based DSP boards from companies such as Spectrum Signal Processing (Burnaby, BC, Canada), Transtech Parallel Systems (Ithaca, NY), and Loughborough Sound Images (Loughborough, Leicester, England).
"With X-CIM as a reconfigurable coprocessor," says Pierre Popovic, president of MiroTech, "developers do not have to be concerned with the number of cycles used by the main digital-signal processor (DSP) to execute low-resolution operations such as convolution and filtering." Instead, the execution of these functions is relegated to the X-CIM, which processes them while the DSP is executing arithmetic operations. "When required," says Popovic, "an application can call a function in a hardware core library in the same way it would call a C-function in a software library," he adds. The algorithm is then downloaded and executed in hardware in the same manner as dedicated logic.
Currently, according to Popovic, several functions have been implemented as callable functions on the X-CIM module; they include pattern matching, convolution, and filtering. When optimized in this manner, system designers can expect a 20- to 133-times acceleration factor (see table). Providing such functionality is, however, not an easy task.
Although the modules themselves can cost between $3700 and $8500, including software tools and libraries, writing specific functions such as convolution operators for them can take from 12 to 26 weeks with nonrecoverable engineering charges ranging to $50,000 (depending on volume). "Unless you are very familiar with these devices and VHDL development tools," contends Popovic, "we suggest you allow MiroTech to engineer the functions you require."