A Practical C Language Compiler/Optimizer for Real-Time Implementations on a Family of Floating Point DSPs

J. Hartung
Steven L. Grant, Missouri University of Science and Technology
S. G. Haigh

This document has been relocated to http://scholarsmine.mst.edu/ele_comeng_facwork/818

There were 2 downloads as of 27 Jun 2016.

Abstract

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