This document contains proprietary information of KVH Industries, Inc. and neither this document nor said proprietary information shall be
published, reproduced, copied, disclosed, or used for any purpose without the express written permission of a duly authorized KVH
representative.
coefficients. Based on the selection of coefficients, it can behave as an FIR filter when no
feedback is used. Below are some basic references about biquad filtering.
https://en.wikipedia.org/wiki/Digital_biquad_filter – this is a good explanation of the
basics of biquad operation along with some useful references
http://www.earlevel.com/main/2003/02/28/biquads/ – note their usage of a
n
and b
n
coefficients is swapped from our nomenclature; there is no industry standard for this.
This site has some basic calculators to compute coefficients, but only for single stage
(non-cascaded) biquads.
http://www.ti.com/lit/an/slaa447/slaa447.pdf – some basic biquad information and
some other information more targeted at the TI DSP chip. Appendices have some
Matlab scripts for single stage biquad determination.
There is not an industry-standardized nomenclature for coefficient designation as a
n
or b
n
and some literature will swap them. In addition, some literature will show the feedback
equations in the denominator as additions, the negative feedback being in the coefficients
themselves. Alternatively, some will show the feedback equations as subtractions and
assume positive coefficients. At the user configuration level, the 1775 IMU implements
feedback addition, so the a
n
coefficients should incorporate the appropriate negative signs.
In the 1775 IMU, the filter calculations are done with SPFP values (32-bit) so they are
somewhat less sensitive to quantization and overflow than if they were fixed-point. However,
it is a good idea, though not strictly necessary, when cascading stages to order them in
increasing order of Q and/or gain to improve stability. This is particularly true if any stages
result in significant gain peaking near the cutoff point; those stages should be implemented
later in the cascade, so the prior stages can reduce the signal energy subjected to the
peaking. This is typically required when using fixed point calculations. There are a number of
alternatives for computation of custom filter coefficients, including software from some,
sources such as those below (listed in order of decreasing cost):
Matlab with DSP toolboxes: http://www.mathworks.com/products/matlab/
Mathcad with DSP toolboxes: http://www.ptc.com/engineering-math-software/mathcad
Iowegian: https://iowegian.com/scopeiir
Iowa Hills: http://iowahills.com/4IIRFilterPage.html
KVH makes no specific endorsements or recommendations and has not fully tested the
above for compliance with the 1775 IMU. When designing filters, we recommend testing the
behavior using the IMU’s “=TESTFILT” command to extract the impulse response. The
behavior inside the IMU can then be verified against theoretical performance for stability,
frequency response, and to ensure that there are no unexpected issues (for example, due to
coefficient quantization or coefficient entry errors).