DSP's often have unusual instruction sets and small virtual address spaces that make them poor compiler targets. As a result, traditional DSP's are usually programmed at assembler level. In the last few years, cheap VLIW and superscalar DSP's have appeared. These processors are very hard to program at assembler level because of the complex timing constraints that must be met by the programmer without the assistance of hardware interlocks. Programming in a high level language (usually C) is the most practical approach: the compiler has algorithms built in to it that guarantee correct timing.
This shift to high level programming has left a lot of intellectual property locked up in assembler source so we wrote a translator from Analog Devices ADSP-21xx assembly language to ANSI-C. To get an overview of the tool's capabilities read the user manual. You can download a copy of the software here in the form of a 32-bit PC executable that will run from the command prompt on Windows-95, Windows-98 and Windows NT systems. If you would like a version compiled for Unix, please contact us directly.
We have published a few papers describing our translator that you can
read here in Postcript form: