Computation efficiency is crucial in real-time digital signal processing (DSP). The efficiency provided by a modern, code-optimizing compiler is often good enough, but sometimes it is necessary to write software pipelines in a scheduled assembly language. This, however, requires expert skills, is time consuming, and is prone to errors.
This paper presents SPOT, an innovative development tool that supports programming assembly code for the TMS320C6000 DSP architecture by hand. The well-chosen running example shows, first, how the code for an iteration over all pixels in an image pair can be divided into a prologue, an epilogue, and a highly efficient kernel, then how SPOT’s visualization, constraint-checking, and other features help in developing such efficient error-free code. Many other SPOT examples show a doubling of efficiency, or even more, and the authors claim a 50 percent reduction in hardware requirements for one application.
SPOT is an impressive pioneering effort, and we can expect many similar development tools, since computational efficiency is crucial in many parallel processing applications.