Implementation of a new variable step-size LMS adaptive filtering algorithm on DSP

Publisher:不见南师久Latest update time:2011-04-06 Source: 中电网 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Widrow, Hoff and others proposed the least mean square error (LMS) algorithm in 1960. It has been widely used due to its simple structure, small amount of calculation, good stability and easy implementation. The disadvantage of the LMS algorithm is that it has a slow convergence speed. It cannot overcome the inherent contradiction between convergence speed and steady-state error: under the premise of convergence, if the step size is taken to a larger value, although the convergence speed can be improved, the steady-state error will increase accordingly. On the contrary, although the steady-state error is reduced, the convergence speed will slow down. To solve this contradiction, many improved adaptive algorithms have been proposed. A large category of them is the variable step size LMS algorithm. Reference [4] proposed the Sigmoid function variable step size LMS algorithm (SVSLMS). In the initial stage or when the coefficient parameters of the unknown system change, the step size of this algorithm is large, so that the algorithm has a faster convergence speed; after the algorithm converges, no matter how large the interference signal e(n) at the main input is, the adjustment step size is kept very small, so as to obtain a smaller steady-state offset noise. However, the Sigmoid function is too complex and changes too much when the error e(n) is close to zero, and does not have the characteristic of slow change, which makes the SVSLMS algorithm still have a large step size change in the adaptive steady-state stage; the algorithm proposed in reference [5] introduces multiple adjustment parameters, so the step size factor is not easy to design and control; references [6-8] proposed three step size design methods with nonlinear relationship with the error signal. This type of algorithm has good convergence performance, but all three algorithms have exponential operations when calculating the step size factor. In digital signal processing, the amount of calculation required for an exponential operation is equivalent to the amount of calculation required for multiple multiplication operations.

Therefore, this type of algorithm increases the computational complexity when implemented. In order to overcome the shortcomings of the above variable step size LMS adaptive filter, a new variable step size LMS adaptive filtering algorithm is proposed here. The algorithm has good convergence performance, fast convergence speed, small steady-state error, good robustness, and small amount of calculation when calculating the variable step size factor.

1 Analysis of the new variable step-size LMS algorithm

The iterative formula of the basic fixed step-size LMS algorithm can be expressed as:



Where: X(n) represents the input signal vector at time n; W(n) represents the weight coefficient of the adaptive filter at time n; d(n) is the expected output value; e(n) is the error; μ is the parameter (step-size factor) that controls stability and convergence speed. Based on the literature [6, 7], this paper establishes a functional relationship between the step-size μ(n) and the error e(n): the inverse tangent function is an increasing function of the independent variable, and changes smoothly around zero, and is a bounded function, and the function value will not diverge. According to W(k+1)=W(k)=w*=the best Wiener solution, that is, 2μ(n)e(n)X(n)=0 and 0<μ(n)<1/λmax, that is, |e(n)X(n)|=0, the minimum value of e(n) is obtained.
According to the above discussion, the variable step size μ(n) of the new algorithm can be taken as:

μ(n)=βαtan(α|e(n)X(n)|).

At the initial moment, |e(n)X(n)| is very large. Since the inverse tangent is an increasing function of the independent variable, μ(n) is relatively large. As the algorithm approaches the steady state, |e(n)X(n)| decreases continuously, and μ(n) also decreases continuously. When the steady state is reached, |e(n)X(n)| is very small, and μ(n) is also very small. At this time, the steady-state misalignment error is also very small.

It can be seen from Figure 1 that the larger α is, the larger the step size is at the same error level, but the step size changes more dramatically when the error is close to zero. Figure 2 is the step size change curve when β takes different values. It can be seen that the step size decreases as β decreases.



2 Simulation and result analysis

The convergence performance of the algorithm is verified by computer simulation. The simulation conditions are: the order of the adaptive filter is L=2; the FIR coefficient of the unknown system is W=[0,0] T ; the reference input signal x(n) is a Gaussian white noise with zero mean and variance 1; v(n) is a Gaussian white noise unrelated to x(n). 200 independent simulations were performed with 1 000 sampling points, and then the statistical average was calculated to obtain the learning curve.

Figure 3 is the convergence curve corresponding to different β values ​​when α is fixed. As the β value increases, the convergence speed of the algorithm gradually increases. Figure 4 is the convergence curve corresponding to different α values ​​when β remains unchanged. As α gradually decreases, the error of the algorithm also decreases, but the time to reach steady state gradually increases.

Reference [7] proposed an improved variable step size LMS algorithm, whose step size is a function of e(n)X(n):

μ(n)=β[1-exp(-α|e(n)x(n)| 2 )],

and this algorithm takes α=15 and β=0.3. Figure 5 is a comparison between the algorithm in this paper and the algorithm in reference [7] when the unknown system changes at the 500th sampling point and the coefficient vector becomes W=[0.2, 0.5] T. 500 independent simulations are performed, and then the statistical average is calculated to obtain the learning curve. It can be seen that the algorithm described in this paper has a faster convergence speed and returns to the steady state faster, indicating that this algorithm has better robustness and less computational complexity.

3 Specific implementation on DSP

This paper uses TI's TMS320C5402 chip, which adopts Harvard architecture and has high parallelism. It also has a highly integrated instruction system, which simplifies the compilation process. The modular structure programming enhances the portability of the program.

The program is compiled in the CCS environment, linked to generate a public target code file, and then loaded into the DSP for operation. This paper uses C language programming. Figure 6 shows the input signal contaminated by noise, and Figure 7 shows the filtered signal. Comparing the two figures, it can be seen that the noise of the mixed signal is well suppressed after being processed by the algorithm in this paper, while the original signal is significantly enhanced and improved.



4 Conclusion

This paper proposes a new variable step size LMS algorithm. The algorithm analyzes the optimal Wiener solution and uses the inverse tangent function to establish the nonlinear functional relationship between the step size factor μ(n) and the error e(n). This algorithm has the characteristics of automatically increasing the step size in the initial stage and the unknown system time-varying stage, and a very small step size in the steady state, and has good robustness and small computational complexity. Through the implementation on DSP, it is shown that this algorithm is feasible, the implementation method is simple, and the filtering effect is good.

Reference address:Implementation of a new variable step-size LMS adaptive filtering algorithm on DSP

Previous article:DSP chip function expansion
Next article:Analysis of Video Codec on Embedded DSP

Latest Embedded Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号