Digital signal processors (DSPs) have traditionally been used in real-time applications with very high data throughput. For this reason, system designers have been reluctant to accept the degradation in performance inherent in machine code compiled from high-level languages such as C. The problem is compounded by the fact that DSPs use pipelined architectures to achieve their high data throughput, resulting in hazards and latencies between instructions. Simple compiler implementation cannot take advantage of latent instructions, resulting in a conservative and inefficient executable program. This problem has been addressed in the C compiler package for the AT&T WE DSP32 by the addition of a postoptimizer and an extensive application library. The authors give an overview of the DSP32 family architecture, describe the operation of the basic compiler and optimization strategies, and provide an example of the use of the compiler
J. Hartung et al., "A Practical C Language Compiler/Optimizer for Real-Time Implementations on a Family of Floating Point DSPs," Proceedings of the 1988 International Conference on Acoustics, Speech, and Signal Processing, 1988. ICASSP-88, Institute of Electrical and Electronics Engineers (IEEE), Jan 1988.
The definitive version is available at http://dx.doi.org/10.1109/ICASSP.1988.196937
1988 International Conference on Acoustics, Speech, and Signal Processing, 1988. ICASSP-88
Electrical and Computer Engineering
Keywords and Phrases
AT&T; C Language; C Language Compiler; WE DSP32; Computerised Signal Processing; Digital Signal Processing; Floating Point DSPs; Optimisation; Pipeline Processing; Pipelined Architectures; Postoptimizer; Program Compilers; Real-Time Implementations; Real-Time Systems
Article - Conference proceedings
© 1988 Institute of Electrical and Electronics Engineers (IEEE), All rights reserved.