摘要 |
A digital low pass filter for producing an output value given a target value includes a memory which stores a scaling factor, a previous output value, a previous intermediate value, and the target value; the difference between the target value and the previous output value is evaluated, and then multiplied by the scaling factor to produce an intermediate value; the previous intermediate value is multiplied by the scaling factor minus unity; the output value is evaluated by summing the previous output value, twice the intermediate value, and the previous intermediate value multiplied by the scaling factor minus unity; the output value is then stored in memory as the previous output value, and the intermediate value as the previous intermediate value, such that the filter provides a second-order response but requires fewer hardware multipliers than the direct form implementation of a second-order filter. |
主权项 |
1. A digital low pass filter for producing an output value given a target value, comprising:
a memory that stores a scaling factor, a previous output value, a previous intermediate value, and the target value; a first subtracter configured to evaluate a difference between the target value and the previous output value and to produce an output; a second subtracter configured to subtract unity from the scaling factor and to produce an output; a first multiplier configured to multiply the output of the first subtracter by the scaling factor to produce an intermediate value as an output; a second multiplier configured to multiply the output of the second subtracter by the previous intermediate value to produce an output; and an adder configured to sum twice the output of the first multiplier, the output of the second multiplier, and the previous output value stored in said memory to produce the output value; wherein the output value is written to said memory as the previous output value, and the intermediate value is written to said memory as the previous intermediate value. |