- freely available
- re-usable
Appl. Sci. 2014, 4(2), 99-127; doi:10.3390/app4020099
Published: 25 March 2014
Abstract
: The paper analyzes the effects of round-off noise on Multiplicative Finite Impulse Response (MFIR) filters used to approximate the behavior of pole filters. General expressions to calculate the signal to round-off noise ratio of a cascade structure of Finite Impulse Response (FIR) filters are obtained and applied on the special case of MFIR filters. The analysis is based on fixed-point implementations, which are most common in digital signal processing algorithms implemented in Field-Programmable Gate-Array (FPGA) technology. Three well known scaling methods, i.e., L_{2} bound; infinity bound and absolute bound scaling are considered and compared. The paper shows that the ordering of the MFIR stages, in combination with the scaling methods, have an important impact on the round-off noise. An optimal ordering of the stages for a chosen scaling method can improve the round-off noise performance by 20 dB.1. Introduction
Multiplicative Finite Impulse Response (MFIR) filters are a class of filter structures that were originally introduced by Fam in the early 1980s [1]. It was shown that MFIR filters can be used to replace recursive Infinite Impulse Response (IIR) filters with FIR equivalents requiring significantly less hardware than classical FIR architectures that fulfill the same specifications [2]. The replacement of a pole that is implemented in a recursive structure, by a non-recursive FIR, has the advantage that it will always be stable. This is particularly interesting when the original pole is situated close to the unit circle. The MFIR filters are able to realize low-pass, high-pass, band-pass, and notch filters. Although the MFIR structures require approximately the same number of delay elements as the classical FIR implementations, they require, logarithmically, fewer adders and multipliers [1,2].
MFIR filters are based on the identity [3]:
This identity can be used to approximate both real pole and conjugate pole pair filters. In case H_{r}(z) is the transfer function of a stable IIR filter with a real pole, the cascade MFIR filter approximation using Equation (1) yields:
An IIR filter with a transfer function H_{c}(z) having a conjugate pole pair λ = re^{+jθ} and λ^{*} = re^{−jθ} with |r| < 1, can be approximated with a cascade MFIR structure [1,2]:
MFIR filters with a linear phase and a desired magnitude response (Here ω_{n} is the normalized angular frequency: ω_{n} = ωT_{S}, and T_{S} is the sampling period.) can also be realized using the following procedure [1,4].
Design an IIR filter that approximates .
Approximate the poles of the IIR filter with the MFIR structure.
Cascade to every zero in the resulting MFIR filter its reciprocal with respect to the unit circle.
Despite the advantage of the logarithmically more efficient use of multipliers and adders, MFIR filters have not been popular. Indeed, the large number of delay elements required to approximate the behavior of an IIR filter was considered prohibitively expensive. This made them impractical for implementation on standard DSP platforms with fixed memory maps. Advances in Very Large Scale Integration VLSI technology in general, and Field-Programmable Gate-Array (FPGA) architectures in particular, make it necessary to re-evaluate MFIR filters and the technical barriers to their widespread use. Several applications and implementations of MFIR filters in modern FPGA fabrics [4,5,6], have shown that FPGAs are an ideal target platform for implementing efficient MFIR filters that are competitive to standard FIR and IIR equivalents implemented on the same fabric. The effects of coefficient-quantization have been studied and have shown that MFIR filter structures are less coefficient-quantization susceptible than the IIR filter they approximate [7].
It is clear from Equations (2–5) that MFIR filters are basically a cascade of simple sparse FIR filters. An example of a cascade of three MFIR stages realizing an MFIR filter approximating a real pole is given in Figure 1.
Every stage in an MFIR filter has the same structure as the other stages but the number of delay elements differs. Therefore, it is obvious to design an optimized component that implements a general MFIR stage per MFIR filter approximation, i.e., a real pole approximation, a complex-conjugate pole pair approximation and their respective linear phase types.
As floating-point arithmetic is only recently available in FPGAs, only fixed-point arithmetic is taken into consideration. Unfortunately, every fixed-point addition or multiplication requires a widening of the bus width, which has to be avoided; this implies that rounding must be applied to keep the data path widths manageable and implementable.
In this text, rounding is defined as the process whereby the width of the data path after a multiplication or an addition is reduced to the original width of the data path before the multiplication or addition. This is done by taking the most significant bits, conventional rounding of the result, and using saturation if necessary.
Scaling is defined as the process that changes the filter coefficients in order to increase the SNR based on the fulfillment of a specified criterion (as will be defined in Section 3) at the output of the filter.
In order to create general MFIR stage components, the data path bit-width at the input and at the output of each stage are kept constant. Inside the stage, the bit width is appropriately incremented to avoid accumulation of round-off errors. Consequently, in practice at the end of each stage, a rounding block will bring the output bit width back to the original input bit-width. It is, however, not excluded that a change in bus width between the stages would yield better results. However, there are so many possible combinations that it is almost impossible to investigate the behavior of all these possible implementations.
In this correspondence, the Signal to Noise Ratio SNR degradation effect of the consecutive roundings and scalings in the cascaded MFIR structures is analyzed and conclusions on optimal ordering of the stages are drawn. In Section 2, the round-off model and the different transfer functions are defined. Section 3 discusses the scaling methods as defined in [8]. Section 4 introduces a general theory for round-off noise determination in filter cascade structures, implying the theory developed in this section is general and is applicable on any filter having a cascade structure. In the fifth section, the developed general theory is applied on the MFIR structure. The paper ends with a conclusion and suggestions for future work.
Although it will not always be explicitly mentioned, in this correspondence, SNR refers to the Signal to round-off Noise Ratio, i.e., noise due to rounding errors is considered and other noise sources are not taken into account.
2. The Round-Off Noise Model
2.1. Introduction
In order to avoid overflow of the signal data due to the successive multiplications of the signal with the filter coefficients, rounding (as defined above) will have to be performed. Rounding can be seen as a quantization action on the signal. Each rounding action is treated as a random process with uniform probability density function, producing white noise that is uncorrelated with the signal and other quantization sources in the filter. As in this correspondence the implementation of the MFIR filters is investigated for fixed-point implementation, the rounding process is of vital importance.
A. Fam developed, in [1], the “pure multiplicity property” which forms the basis of the investigation of the relationship between the noise variance at the output (relative to the round-off noise variance) and the ordering of the different stages of the MFIR filter. This is done for an implementation without scaling (which is not very realistic for fixed point implementations) and an implementation with L_{2} scaling. The analysis in [1] is performed for MFIR structures that approximate a real pole or a conjugate pole pair using the forward lattice structure. The approximation of a conjugate pole pair in cascade is not analyzed as “it does not have the pure multiplicity property” [1]. However, in the present research, the forward lattice MFIR implementation is not considered because of its (unpractical) large hardware impact [2]. Consequently, the study of the noise behavior of the complex-conjugate pole pair cascade MFIR implementation and the linear phase MFIR implementations are completely new.
Moreover, it is suggested in [1] that the analysis of the round-off noise for the MFIR structures that do not have the “pure multiplicity property” should be done in the style of [8] or [9]. In this text, the method of [8] will be used for the real pole approximation as well as for the complex-conjugate pole pair cascade approximation. All three well known scaling methods (L_{2} bound, infinity bound and absolute bound) [8] will be considered. The noise performance is evaluated by first calculating the noise variance at the output due to the noise variance of the round-off error sources. However, a good evaluation of the round-off noise performance can only be made when the actual signal to round-off noise ratio (SNR) is considered [10]. With scaling, the output signal is also scaled, implying the actual signal to noise ratio at the output and not only the noise variance is considered for all possible scaling cases.
The objective of the paper is to determine how much the SNR of a signal is deteriorated by the noise (due to round-off errors) in the overall MFIR structure. Although the round-off noise performance of FIR and IIR cascade structures has been studied intensively over the past decades, [8,9,10,11,12,13,14,15,16,17,18] no directly applicable expression of the SNR degradation in cascade structures could be found. Therefore, the theory will first be developed in a general manner. More precisely, the stages in the cascade will not be considered as MFIR stages with transfer function M_{i} (z), but as general filter stages with transfer function H_{k} (z). The index k will be used as an index for the general stages in the cascade. Note that k is not the same as the index i that is used to indicate the stages of the MFIR structure and the power of the multiplier coefficients of the MFIR stages (as in Equations (2) and (3)).
It will be shown that the ordering has a large impact on the SNR. However, P stages of an MFIR structure can be ordered in P! possible orderings, making an exhaustive search for the optimal ordering unpractical. Unlike typical cascade structures studied in [15,16,17,18], the transfer functions of the stages of the MFIR structure are fixed by the expressions given in Equations (2–5), i.e., in every stage the grouping of the zeros is fixed by the MFIR approach. This implies that the optimization of the SNR performance can only focus on the ordering of the stages.
2.2. The Round-Off Noise Model
The study is based on the following assumptions. Each multiply and accumulate action in a stage is modeled as an infinite precision multiplier, followed by a summation node. After the summation node, rounding is performed and consequently round-off noise is added to the system. In the present paper, it is assumed that the rounding process uses conventional rounding and saturation. For the real pole approximation, the conjugate pole pair cascade approximation and their respective linear phase approximations, each stage has one single noise source at the output of the stage. It is assumed that
every sample of the noise source is uncorrelated with the previous sample,
all noise sources are uncorrelated,
the noise sources are uncorrelated with the input signal,
every noise source is a time discrete stationary zero mean white random process with output variance q^{2}/12. Here, q is the smallest quantization step (q = 2^{−b} where b is the number of bits (without the sign bit) used to quantize the signal).
2.3. Symbol Conventions and Transfer Functions
The following definitions are used throughout the text.
Every stage without rounding or scaling is indicated by H_{k}(z), or or in short form H_{k}. The total filter transfer function is written as H(z), or . A (general) stage with rounding and scaling is indicated by H_{k} (z), or in short form H_{k}. The respective scaling factors per stage are indicated by S_{k}. The time samples of the round-off noise source are indicated by e_{k}(n) (where n is the discrete time index) or in short form e_{k}. The noise variance of a noise source is given by .
A number of transfer functions are defined in Figure 2. F_{k} (z) is the transfer function from the filter input to the output of the stage with transfer function H_{k}(z) (without rounding). G_{k} (z) is the transfer function from the output of the stage with transfer function H_{k}(z) to the output of the filter (without rounding).
For the round-off noise analysis, it is assumed there is a round-off noise source at the output of each stage. The transfer function from the filter input to the output of the stage with transfer function H_{k} (z) (noise source of stage k not included, as shown in Figure 3 and Figure 4) is indicated by F_{k} (z).
The transfer function from the output of the stage with transfer function H_{k} (z) (noise source of stage k included, as shown in Figure 4) to the output of the total scaled filter is indicated by G_{k} (z).
Consequently, the following holds:
3. The General Scaling Methods
In analogy to [1] and [8], the considered scaling methods, are defined in this section. A scaling factor is used to multiply the filter stage coefficients in order to obtain a specific criterion at the output of the stage as defined in [8].
For L_{2} bound scaling, the scaling factors are determined by:
For infinity bound scaling, L_{∞}, the scaling factors are determined by:
For absolute bound scaling, the scaling factors are determined by:
Contrary to the absolute bound scaling approach, when using infinity bound scaling or L_{2} bound scaling, overflow is still possible. Although all scaling methods prevent overflow according to a certain criterion, none of them will force all multiplier coefficients to be smaller than (or equal to) one. This implies that in a practical implementation it can happen that the bits used to represent a multiplier coefficient are not sufficient. The problem can be solved in several ways [19].
The present paper uses a method that has minimum impact on the overall accuracy. More precisely, the multiplier values of the stages where the coefficients are larger than 1 are divided by a power of 2 (using shifting) to force all coefficients of this stage to be smaller than 1. This division by the power of 2 is undone in the output signal of the stage, i.e., by shifting the result.
4. The Ordering of the Stages
As the sequential ordering of the stages has a large impact on the scaling factors and the noise performance of the filter, the round-off output noise variance as a function of the ordering must be calculated and a method to determine the optimal sequential ordering must be found.
4.1. The Round-Off Output Noise Variance
The round-off output noise variance is the summation of the noise sources inside the filter cascade, with suitable weightings and filtering. This variance is affected by the ordering of the stages of the filter structure. The variance of the noise of each rounding operation equals . The input signal of the filter has an amplitude in the interval (−1, +1). In case b + 1 bits (b bits + a sign bit) are used to represent the signal in two’s complement, the variance of the noise generated by one round-off noise source is (under the assumptions of Section 2.2) given by:
m_{e} is the mean value of the noise source.
Under the assumptions given in Section 2.2, the mean m_{e} = 0 and the PSD of the round-off noise source is independent of the frequency, implying:
The PSD of the noise generated at the output of the total filter structure, by the noise source of a (scaled and rounded) stage k is given by:
Using Equations (7) and (25) in Equation (24) yields:
In Equations (26) and (27), the scaling is taken into account and the un-scaled stage equations can now be used in F_{k}(e^{jωn}) and G_{k}(e^{jωn}) to determine the optimal ordering for minimal output round-off noise variance. It is clear that every F_{k}(e^{jωn}) and G_{k}(e^{jωn}) contribute to the output noise. For a given filter, the output noise variance is minimal when is minimal, i.e., an optimal ordering must be found to minimize this sum.
In case of L_{2} bound scaling (α = 2), and in every sum term will have the same contribution, implying that the ordering of the stages has no importance. (I.e., in case of ordering from i = 0 to i = P − 1 and using L_{2} bound scaling, Equation (27) yields: . In case of ordering from i = P − 1 to i = 0 and using L_{2} bound scaling, Equation (27) yields: . Two identical equations are obtained.)
If infinity bound scaling, L_{∞}, is considered (α = ∞), the optimal ordering will be determined by the ratio:
for every k ϵ {0,1, …, P − 2}. In case this ratio is significantly larger than 1 for every k value, it is best to order the stages from small peak gain to large peak gain. In case this ratio is not significantly larger than 1, the optimal ordering should be determined exhaustively.
In case of absolute bound scaling the equivalent of Equation (25) is given by:
In case this ratio is significantly larger than 1 for every k value, it is best to order the stages in increasing coefficient magnitude, i.e., the stage with the largest coefficient(s) at the end. In case the ratio is not significantly larger than 1, the optimal ordering should be determined exhaustively.
4.2. The Signal to Round-off Noise Ratio
The round-off noise performance of a filter may not be correctly evaluated by only analyzing the round-off noise. A more reliable result is obtained by calculating the Signal to round-off noise ratio (SNR). The signal to noise ratios (when using the previously discussed scaling methods) are investigated in this section.
The discrete input signal of the filter is indicated by x(n) and the discrete output signal by y(n). The variance of the discrete input signal x(n) is indicated by . The variance of the discrete output signal y(n) of the filter will be indicated by . All calculations presented in this section are based on the conditions that the input signal x(n) is zero mean and has a constant, frequency independent, Probability Density Function (PDF).
In case the input signal is a wide sense stationary random signal with uniform PDF and variance , the output signal variance of the filter is given by:
In case of L_{2} or L_{∞} bound scaling, Equation (34) can be written as (using Equation (10) or Equation (13) as appropriate):
In case of absolute bound scaling, the SNR is given by:
In Equations (37) and (38) is dependent on the type of rounding used and the number of bits that are used to quantize the signal in the filter structure. depends on the input signal. Quantization and input signal independent factors are given by:
In general for an arbitrary A(ω) [8]:
As mentioned in Section 4.1, in case of L_{2} bound scaling, in Equation (39) is independent of the stage ordering, implying that the stage ordering has no impact on the SNR. For a given ordering of the stages, it is clear from Equations (39–41) and (43) that
Even in case of an optimized ordering for infinity bound scaling or absolute bound scaling, L_{2} bound scaling will always have the best SNR. Note that SNR in this text is signal to round-off noise ratio and not the overall SNR of the filter. However, an optimized ordering for absolute bound scaling can have a better SNR than a non-optimized ordering for infinity bound scaling and vice versa. In case of L_{∞} bound scaling, the optimal SNR must be determined by finding an ordering that minimizes
Notice that the equations derived in this section are generally valid for any filter cascade (with one noise source at the output of each filter stage) and not only for MFIR structures.
5. The SNR of MFIR Filters
In this section, the general theory developed in Section 4 will be applied to the MFIR filter structures.
5.1. The Transfer Functions
In case MFIR filters are considered, the stages are indicated by M_{i} (z) or M_{i}(e ^{jωn}) or in short form M_{i}. The total filter transfer function is written as M (z), M (e ^{jωn}) or M. A scaled stage is indicated by M_{i} (z), or M_{i}.
The ordering where the first stage is stage i = 0, the second is i = 1 and so on, will be called the forward (sequential) ordering. Consequently, in case of MFIR structures and forward ordering:
The ordering where stage i = P − 1 is the first stage, i = P − 2 is the second stage and so on, is called the reverse (sequential) ordering. In case of reverse ordering of MFIR stages, the transfer functions are shown in Figure 5 and are defined by:
Notice that in case of reverse ordering F_{0}(e^{jωn}) = M(e^{jωn}) and G_{0}(e^{jωn}) = 1.
Although there are P! Possible ordering combinations of the MFIR stages, experiments have shown that choosing the best option between forward and reverse sequential ordering is usually satisfactory.
5.2. The Scaling Factors
The equations derived in Section 3 adapted to MFIR structures are given in Table 1.
Table 1. Scaling factors for Multiplicative Finite Impulse Response (MFIR) structures. |
Forward ordering | Reverse ordering | |
---|---|---|
L_{2} bound | ||
Infinity bound | ||
Absolute bound |
Table 2. Length of the impulse responses of the partial MFIR transfer functions. |
Forward ordering | f_{i} (n) or f_{i} (n) |
Real pole | 0 → p_{i} = 2^{i}^{+1} − 1 |
Real pole linear phase | 0 → p_{i} = 2^{i}^{+2} − 2 |
Complex-conjugate pole pair | 0 → p_{i} = 2^{i}^{+2} − 2 |
Complex-conjugate pole pair linear phase | 0 → p_{i} = 2^{i}^{+3} − 4 |
Reverse ordering | f_{i} (n) or f_{i} (n) |
Real pole | 0 → p_{i} = 2^{P} − 2^{i} |
Real pole linear phase | 0 → p_{i} = 2^{P+}^{1} − 2^{i+}^{1} |
Complex-conjugate pole pair | 0 → p_{i} = 2^{P+}^{1} − 2^{i+}^{1} |
Complex-conjugate pole pair linear phase | 0 → p_{i} = 2^{P+}^{2} − 2^{i+}^{2} |
In case of absolute bound scaling, the length p_{i} of the impulse response f_{i}(n) must be known. As this length is filter dependent, Table 2 gives an overview of the impulse response lengths for forward and reverse ordering of MFIR stages [2,19].
It is shown in [19] that in case of a real pole approximation, the scaling factors only depend on the stage on which they are applied, i.e., not on any of the previous or next stages.
5.3. The SNR and Optimal Ordering for MFIR Filters
5.3.1. General MFIR SNR Expressions
In case of forward ordering, Equations (39–41) become:
In case of reverse ordering, Equations (39–41) become:
Here, and are given by Equations (50) and (53) respectively. The value of p_{i} is given in Table 2 for reverse ordering. The value p in in Equation (60) is the length of the total MFIR filter impulse response and can be found by setting i = 0 in Table 2 for reverse ordering.
In order to keep the text more readable, the figures of the several calculation results of Equations (55–60) are grouped together at the end of the section. Table 3 gives an overview of the results.
Table 3. Overview of the figures of the SNR calculations. |
Approximation of | Scaling type | Ordering | Range | Figure |
---|---|---|---|---|
Real pole | L_{2} | Forward and Reverse | |λ| ϵ [0.1, 1) | Figure 6 |
Real Pole | Abs and Inf. | Forward and Reverse | |λ| ϵ [0.1, 1) | Figure 7 |
Real Pole Linear Phase | L_{2} | Forward and Reverse | |λ| ϵ [0.1, 1) | Figure 8 |
Real Pole Linear Phase | Abs and Inf. | Forward and Reverse | |λ| ϵ [0.1, 1) | Figure 9 |
Compl. Conj. Pole pair | L_{2} | Forward and Reverse | r = 0.9 θ ϵ [0, π) | Figure 10 |
Compl. Conj. Pole pair | Inf | Forward and Reverse | r = 0.9 θ ϵ [0, π) | Figure 11 |
Compl. Conj. Pole pair | Abs | Forward and Reverse | r = 0.9 θ ϵ [0, π) | Figure 12 |
Compl. Conj. Pole pair | Inf | Reverse | r = 0.8; 0.85; 0.9; 0.95 θ ϵ [0, π) | Figure 13 |
Compl. Conj. Pole pair | L_{2}, Inf, Abs | Forward and Reverse | r = 0.9 θ ϵ [0, π) | Figure 14 |
Compl. Conj. Pole pair, Lin Phase | L_{2}, Inf, Abs | Forward | r = 0.9 θ ϵ [0, π) | Figure 15 |
Compl. Conj. Pole pair, Lin Phase | L_{2}, Inf, Abs | Reverse | r = 0.9 θ ϵ [0, π) | Figure 16 |
Compl. Conj. Pole pair, Lin Phase | Inf | Reverse | r = 0.8; 0.85; 0.9; 0.95 θ ϵ [0, π) | Figure 17 |
5.3.2. SNR Performance of an MFIR Filter Approximating a Real Pole Filter
Figure 6 and Figure 7 show the values for real poles |λ| in the interval [0.1, 1). In case of the MFIR approximation, for each |λ| value, the required number of stages, P, is determined to obtain a maximum difference of |0.01| dB between the MFIR magnitude response and the magnitude response of the approximated IIR filter. The edges in the curves indicate where an extra MFIR stage is added to fulfill this requirement. The IIR filter results are based on ([10], Equation 12.148):
Here, S is the scaling factor of the IIR filter.
As explained in Section 4.2, the ordering has no impact on the noise performance when L2 bound scaling is used. Absolute bound scaling and infinity bound scaling yield the same noise performance and reverse ordering is better (max. 4 dB) than forward ordering. L_{2} bound scaling always yields a better noise performance than absolute and infinity bound scaling.
In case of absolute or infinity bound scaling, the MFIR filter has a better signal to noise performance than the approximated real pole filter for |λ| ≥ 0.861. For L_{2} bound scaling, only for |λ| ≥ 0.925 the MFIR filter has a better performance than the approximated IIR filter.
In case |λ| < 0.9, the worst-case differences between the MFIR filter and the IIR filter are 3.6 dB for absolute (and infinity) bound scaling and 5 dB for L_{2} bound scaling. This is, however, not dramatic because in the range of interest (|λ| > 0.9), in general the MFIR filter has a better signal to noise performance than its corresponding IIR filter (except for the small region between |λ| = 0.9 and |λ| = 0.925 for L_{2} bound scaling where the difference is maximum 1.2 dB in favor of the IIR filter).
The more |λ| approaches the unit circle, the better the noise performance of the MFIR filter compared to the IIR filter. For example, for |λ| = 0.999, the MFIR approximation is 27 dB better for absolute (and infinity) bound scaling, for L_{2} bound scaling the MFIR filter is 17 dB better than the approximated IIR filter.
5.3.3. SNR Performance of a Linear Phase MFIR Filter Approximating the Squared Magnitude Response of a Real Pole Filter
Figure 8 and Figure 9 show the SNR performance of linear phase MFIR filters approximating the squared magnitude response of real pole filters with |λ| in the interval [0.1, 1). For each |λ| value, the number of stages, P, is kept the same as in Section 5.3.2.
There is no objective comparison possible between this MFIR approximation and the IIR filter, since the IIR filter is not a linear phase filter and the MFIR filter approximates the squared magnitude response of the pole indicated on the horizontal axis. However, it is clear that the round-off noise performance is comparable with the real pole non-linear phase MFIR approximations.
The ordering has no impact when L_{2} bound scaling is used and the noise performance with L_{2} bound scaling is always better than absolute and infinity bound scaling. Infinity bound scaling and absolute bound scaling have the same performance. Reverse ordering yields again better results than forward ordering. However, the maximum difference between the two orderings is rather small (3.3 dB).
Compared to the non-linear phase approximation, the difference between L_{2} bound scaling and the other scaling methods are somewhat larger.
5.3.4. SNR Performance of an MFIR Filter Approximating a Complex-Conjugate Pole Pair Filter in Cascade
Figure 10 shows the values when realizing pole pairs with a magnitude r = 0.9 and angles θ in the interval [0, π) in case of L_{2} bound scaling. Figure 11 and Figure 12 show the results in case of infinity bound scaling and absolute bound scaling respectively. In Figure 13 the values are calculated for the pole magnitudes: 0.8, 0.85, 0.9 and 0.95 approximated with P = 5, 6, 7, and 7 stages respectively in case of infinity bound scaling and reverse ordering. The surface plots are the values for the MFIR filters. The half circle shaped curves are the values for the corresponding IIR filters. Figure 14 compares the noise performances of the approximation of the complex-conjugate pole pair with a magnitude r = 0.9 and any angle between 0 and π, for several scaling methods and orderings.
All pole magnitudes between |0.8| and |0.99| in steps of 0.01 have been calculated but are not all shown here. The results shown in the figures are however representative for all combinations of scaling methods, pole magnitudes and angles that were calculated.
After extensive analysis of the data, the following conclusions can be drawn for the MFIR approximation of a complex-conjugate pole pair filter realized using the cascade structure. The round-off noise performance of an MFIR filter approximating a complex-conjugate pole pair filter
is significantly better (up to 20 dB) than the noise performance of its corresponding IIR filter when the approximated poles are situated in the neighborhood of the real axis;
is far less pole angle θ dependent in comparison with the corresponding IIR filter;
is up to 2.5 dB better for infinity bound scaling than for absolute bound scaling (using reverse ordering);
is always better for L_{2} bound scaling than for the other scaling methods (obeys Equation (44));
is pole magnitude dependent, but not that much as the corresponding IIR filter;
is fairly insensitive to an extra MFIR filter stage (typically 1 dB);
is very sensitive to the stage ordering for absolute and infinity bound scaling;
is ordering independent in case of L_{2} bound scaling;
is in general better in reverse ordering than in forward ordering, except for pole angles in the neighborhood of π/2;
is for pole angles in the neighborhood of π/2, for absolute and infinity bound scaling, better in forward ordering than in reverse ordering (It was already remarked in Section 4.2, from a theoretical point of view, that this situation could occur.);
can be up to 6 dB worse than the corresponding IIR filter for pole angles in the neighborhood of π/2. The width of this region and the magnitude of the difference decreases however with increasing pole magnitude ;
In the normal range of pole magnitudes that are considered for MFIR approximations (|r| > 0.9), the noise performance is in general (depending on the pole angle) better than for the corresponding IIR filter.
5.3.5. SNR Performance of a Linear Phase MFIR filter Approximating the Squared Magnitude Response of a Complex-Conjugate Pole Pair Filter
Figure 15 shows the values for pole pairs with magnitude r = 0.9 and angles θ in the interval [0, π) for forward ordering. Figure 16 shows the values for reverse ordering. In Figure 17, the in case of reverse ordering and infinity bound scaling for the pole magnitudes 0.8, 0.85, 0.9 and 0.95 approximated with P = 5, 6, 7 and 7 stages respectively, is shown.
Compared with the non-linear phase approximation, the is more pole angle dependent. The dips at the pole angles π/4, π/2 and 3π/4 are also deeper. The figures show that the ordering of the stages has no effect when L_{2} bound scaling is used. In case of absolute or infinity bound scaling, reverse ordering performs better than forward ordering except in the regions where θ = π/4, π/2, and 3π/4. However, the width of these regions is pole magnitude dependent. Consequently, in practice both orderings will have to be considered when poles with angles in these regions are to be approximated.
Unfortunately in the neighborhood of the pole angles θ = π/4, π/2 and 3π/4 the linear phase approximation clearly performs worse than the non-linear phase approximation. The non-optimal performance for pole angles θ = π/4, π/2 and 3π/4 can be explained by using an example. In case r = 0.9, θ = π/2 and P = 9, M_{0}(z) is given by (using Equation (5)):
In Section 4.1 it is shown that in case of infinity bound scaling, the stages with the largest peak gains (in the frequency domain), should fall most often in G_{k}(z) to reduce the output round-off noise variance. In case of absolute bound scaling, the stages with the largest coefficients should fall most often in G_{k}(z) to reduce the output round-off noise variance.
It is clear from Equations (62) and (63) that forward ordering (M_{8}(z) most often in G_{k}(z) ) is in this case much better than reverse ordering. There is a combined effect involved in the linear phase approximation of complex-conjugate pole pairs with angles in the neighborhood of π/4, π/2 and 3π/4:
factors in Equation (5) can have very large values when i is large,
cos (2^{i} θ) factors in Equation (5) are for most stages close to unity implying the coefficients are not reduced by the cosine functions.
Even in case of forward ordering, the SNR performance for these angles is not good. Indeed the stages with larger i values, still have very large coefficients implying that Equation (45) or Equation (46) will never be very small.
6. Conclusions
An approach to model round-off noise in general cascade filter structures has been studied. This round-off noise depends on the used scaling method and on the ordering of the stages. These general results are used to study and optimize the round-off noise behavior of MFIR filters.
It has been shown that the round-off noise performances of the MFIR pole approximations indeed depend on the used scaling method. L_{2} bound scaling results in the best performance, followed by infinity and absolute bound scaling.
In general, it can be concluded that in the region of interest (approximating pole behaviors with magnitudes r > 0.9) the MFIR approximations perform better than the approximated IIR filters. Even outside the region of interest, the performance generally does not differ too much from the corresponding IIR filters (max 6 dB).
The analysis presented in [1] suggests forward ordering as an optimal ordering in case no scaling is applied. In case of L_{2} bound scaling the ordering has no impact on the round-off noise performance. The analysis presented here, extends these results to other practical scaling methods and concludes that in these cases, reverse ordering performs better than forward ordering for most pole approximations. However, it should be noted that special attention to the stage ordering is required
when approximating a complex-conjugate pole pair having a pole angle in the neighborhood of π/2 and the cascade structure has been used;
when approximating the squared magnitude response of a complex-conjugate pole pair filter in case the pole angles are situated in the neighborhood of π/4, π/2 and 3π/4 and the linear phase cascade structure has been used.
Further research is required to determine if alternative orderings can be found which would yield a better noise performance. Note that the orderings considered here are not the only possible orderings. For best performance, one must determine the “declining amplification” order for every pole pair that is approximated. At the moment, no systematic approach has been found, so trial and error is required. Research will have to prove if an optimal ordering can be calculated. If not, a heuristic approach as in [8] for the pole zero pairing or an iterative optimization algorithm [17] or another near optimal ordering technique [16] could also be interesting.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Fam, A.T. MFIR filters: Properties and applications. IEEE Trans. Acoust. Speech Signal Process. 1981, 29, 1128–1136. [Google Scholar] [CrossRef]
- Vandenbussche, J.-J.; Lee, P.; Peuteman, J. Analysis of time and frequency domain performance of MFIR filters. In Proceedings of the 2008 International Conference on Embedded Systems and Applications, Las Vegas, NV, USA, 14–17 July 2008; Arabnia, H.R., Mun, Y., Eds.; CSREA Press: Las Vegas, NV, USA, 2008; pp. 323–329. [Google Scholar]
- Rademacher, H. Topics in Analytic Number Theory; Springer Verlag: New York, NY, USA, 1973; Chapter 12. pp. 213–214. [Google Scholar]
- Vandenbusschem, J.-J.; Leem, P.; Peutemanm, J. Linear phase approximation of real and complex pole IIR filters using MFIR structures. In Proceedings of the 5th European Conference on the Use of Modern Information and Communication Technologies, Gent, Belgium, 22–23 March 2012; De Strycker, L., Ed.; Nevelland: Gent, Belgium, 2012; pp. 221–231. [Google Scholar]
- Vandenbussche, J.-J.; Lee, P.; Peuteman, J. An FPGA based digital lock-in amplifier implemented using MFIR resonators. In Proceedings of the International Conference on Signal Processing, Pattern Recognition and Applications, Crete, Greece, 18–20 June 2012; Petrou, M., Sappa, A.D., Triantafyllidis, G.A., Eds.; Acta Press: Calgary, AB, Canada, 2012; Volume 778–034, pp. 92–99. [Google Scholar]
- Vandenbussche, J.-J.; Lee, P.; Peuteman, J. Design of an FPGA based TV-Tuner test bench using MFIR structures. Annu. J. Electron. 2013, 7, 21–25. [Google Scholar]
- Vandenbussche, J.-J.; Lee, P.; Peuteman, J. On the coefficient quantization of multiplicative FIR filters. Digit. Signal Process. 2013, 23, 689–700. [Google Scholar] [CrossRef]
- Jackson, L.B. On the interaction of roundoff noise and dynamic range in digital filters. Bell Syst. Tech. J. 1970, 49, 159–184. [Google Scholar] [CrossRef]
- Chan, D.S.K.; Rabiner, L.R. An algorithm for minimizing roundoff noise in cascade realizations for finite impulse response digital filter. Bell Syst. Tech. J. 1973, 52, 347–385. [Google Scholar] [CrossRef]
- Mitra, S.K. Digital Signal Processing: A Computer-Based Approach, 3rd ed.; Mc Graw Hill Higher Education: New York, NY, USA, 2006; pp. 665–738. [Google Scholar]
- Jackson, L.B. Round-off noise analysis for fixed point digital filters realized in cascade or parallel form. IEEE Trans. Audio Electroacoustics. 1970, 18, 107–122. [Google Scholar] [CrossRef]
- Chan, D.S.K.; Rabiner, L.R. Analysis of quantization errors in the direct form for finite impulse response digital filters. IEEE Trans. Audio Electroacoustics. 1973, 21, 354–366. [Google Scholar] [CrossRef]
- Fettweis, A. Roundoff noise and attenuation sensitivity in digital filters with fixed-point arithmetic. IEEE Trans. Circuit Theory 1973, 20, 174–175. [Google Scholar] [CrossRef]
- Mondal, K.; Mitra, S.K. Roundoff noise upper bounds for cascaded recursive digital filter structures. IEE Proc. Electron. Circuit Syst. 1982, 129, 250–256. [Google Scholar] [CrossRef]
- Lim, Y.C.; Liu, B. Design of cascade form FIR filters with discrete valued coefficients. IEEE Acoust. Speech Signal Process. 1988, 36, 1735–1739. [Google Scholar] [CrossRef]
- Montgomery Smith, L.; Henderson, M.E. Roundoff noise reduction in cascade realizations of FIR digital filters. IEEE Trans. Signal Process. 2000, 48, 1196–2000. [Google Scholar] [CrossRef]
- Dehner, G.F. Noise optimized IIR digital filter design-tutorial and some new aspects. Signal Process. 2003, 83, 1565–1582. [Google Scholar] [CrossRef]
- Shi, D.; Yu, Y.J. Design of discrete-valued linear phase FIR filters in cascade form. IEEE Trans. Circuits Syst. 2011, 58, 1627–1636. [Google Scholar] [CrossRef]
- Vandenbussche, J.-J. Analysis and Implementation of MFIR Filters in FPGA Technology. Ph.D. Thesis, University of Kent, Canterbury, UK, September 2012. [Google Scholar]
© 2014 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).