NOTE: This is a hosting of the works of A.J. Fisher who died on February 29 2000.
Source can be found at

If you would like this to be taken down, please contact me at

Truncated Coefficients

The design program calculates and displays the filter coefficients as floating-point numbers. If you intend to execute your filter on a floating-point process, you can use the coefficients directly. If however you are targetting a fixed-point processor, or a dedicated FIR chip which uses fixed-point, then you will have to convert the coefficients to fixed-point numbers. This entails truncation of the coefficients, so that they will fit in a given number of bits. This truncation will affect the response of the filter to some extent. The ``truncate to ... bits'' option allows you to investigate the extent of this distortion of the response.

Entering a value (an integer, n say) in the ``truncate to ... bits'' box tells the filter generation program to generate coefficients which can be represented exactly in 1:(n-1) fixed-point, that is with a sign bit and n-1 bits after the binary point. It doesn't actually display the coefficients in that form: that's up to you. (C doesn't have a syntax for fixed-point.)

In more detail, what happens is this. First, the coefficients are all scaled so that they lie in the range

Then each coefficient x is adjusted to the closest value which can be represented in 1:(n-1) fixed-point, namely where fix denotes ``nearest integer to''.

Tony Fisher /