Fixed-point optimization utility software is developed that can aid scaling and wordlengthdetermination of digital signal processing algorithms written in C or C++. This utility consists of twoprograms: the range estimator and the fixed-point simulator. The former estimates the ranges offloatingpoint variables for purposes of automatic scaling, and the latter translates floating-pointprograms into fixed-point equivalents to evaluate the fixed-point performance by simulation. Byexploiting the operator overloading characteristics of C++, the range estimation and the fixed-pointsimulation can be conducted by simply modifying the variable declaration of the original program.This utility is easily applicable to nearly all types of digital signal processing programs includingnonlinear, time-varying, multirate, and multidimensional signal processing algorithms. In addition,this software can be used to compare the fixed-point characteristics of different implementationarchitectures. An optimization example for an 8× 8 inverse discrete cosine transform (IDCT)architecture that conforms to the IEEE standard specifications is presented. The optimized resultsrequire 8 fewer gates when compared with the previous best implementation.
展开▼