LMS weight iteration calculation device and method for adaptive filtering

文档序号:365282 发布日期:2021-12-07 浏览:10次 中文

阅读说明:本技术 用于自适应滤波的lms权值迭代计算装置及方法 (LMS weight iteration calculation device and method for adaptive filtering ) 是由 冯起 王萌 周资伟 卢树军 于 2021-08-20 设计创作,主要内容包括:本发明公开一种用于自适应滤波的LMS权值迭代计算装置及方法,该迭代计算装置包括:实部计算电路,用于每次迭代计算时计算权值的实部,并在计算时使用上一次迭代时的误差信号在复数域的指定部分计算当前次迭代的步进值,在复数域的指定部分为实部或者为虚部;虚部计算电路,用于每次迭代时计算权值的虚部,并在计算时使用上一次迭代时的误差信号在复数域的指定部分计算当前次迭代的步进值。本发明具有结构简单紧凑、成本低、硬件资源消耗少、计算量小且迭代效率高等优点。(The invention discloses an LMS weight iteration calculation device and method for adaptive filtering, wherein the iteration calculation device comprises: the real part calculation circuit is used for calculating the real part of the weight value during each iteration calculation, and calculating the stepping value of the current iteration in the appointed part of the complex field by using the error signal during the last iteration during the calculation, wherein the real part or the imaginary part is the appointed part of the complex field; and the imaginary part calculating circuit is used for calculating the imaginary part of the weight value at each iteration and calculating the step value of the current iteration at the appointed part of the complex field by using the error signal at the last iteration. The invention has the advantages of simple and compact structure, low cost, less hardware resource consumption, small calculated amount, high iteration efficiency and the like.)

1. An LMS weight iterative computation apparatus for adaptive filtering, comprising:

the real part calculation circuit (1) is used for calculating the real part of the weight in the adaptive filtering during each iteration calculation, and calculating the stepping value of the current iteration in a specified part of a complex domain by using an error signal during the last iteration during the calculation, wherein the specified part of the complex domain is the real part or the imaginary part, and the error signal is the error between the expected output signal and the actual output signal;

and the imaginary part calculating circuit (2) is used for calculating the imaginary part of the weight value in the adaptive filtering at each iteration and calculating the stepping value of the current iteration in a specified part of the complex number field by using the error signal at the last iteration during calculation.

2. An LMS weight iteration computation device for adaptive filtering according to claim 1, wherein: in the real part calculating circuit (1), a real part of an input filtering signal during last iteration, a specified part of an error signal during last iteration in a complex field and a real part of a weight value during last iteration are input, and the real part of the weight value of current iteration is calculated;

and the imaginary part calculating circuit (2) inputs the imaginary part of the input filtering signal in the last iteration, the appointed part of the error signal in the complex field in the last iteration and the imaginary part of the weight in the last iteration, and calculates the imaginary part of the weight in the current iteration.

3. An LMS weight iteration computation device for adaptive filtering according to claim 2, wherein: the real part calculating circuit (1) comprises a first multiplying unit (11), a first shifting unit (12), a first adding unit (13) and a first delay unit (14), wherein the input end of the first multiplying unit (11) is respectively connected to the real part of the input filtering signal and the appointed part of the error signal in the complex number field during the last iteration, the output end of the first multiplying unit is connected with the input end of the first shifting unit (12), the input end of the first adding unit (13) is respectively connected with the output end of the first shifting unit (12) and the output end of the first delay unit (14), the output end of the first adding unit (13) is further connected with the input end of the first delay unit (14), and the output end of the first adding unit (13) outputs the real part of the weight of the current iteration.

4. An LMS weight iteration computation device for adaptive filtering according to claim 2, wherein: the imaginary part calculating circuit (2) includes a second multiplying unit (21), a second shifting unit (22), a second adding unit (23), and a second delay unit (24), wherein an input end of the second multiplying unit (21) is respectively connected to an imaginary part of the input filtering signal and a specified part of the error signal in a complex number domain during a previous iteration, an output end of the second multiplying unit is connected to an input end of the second shifting unit (22), an input end of the second adding unit (23) is respectively connected to an output end of the second shifting unit (22) and an output end of the second delay unit (24), an output end of the second adding unit (23) is further connected to an input end of the second delay unit (24), and an output end of the second adding unit (23) outputs an imaginary part of the weight of the current iteration.

5. The LMS weight iterative computation device for adaptive filtering according to any one of claims 1-4, wherein: the specified parts of the error signals in the real part calculating circuit (1) and the imaginary part calculating circuit (2) in a complex field are both the real part of the error signals, or the specified parts of the error signals in the real part calculating circuit (1) and the imaginary part calculating circuit (2) in the complex field are both the imaginary parts of the error signals, or one of the specified parts of the error signals in the real part calculating circuit (1) and the imaginary part calculating circuit (2) in the complex field is the imaginary part of the error signals, and the other is the imaginary part of the error signals.

6. An LMS weight iterative computation method for adaptive filtering is characterized by comprising the following steps:

calculating a real part of a weight in adaptive filtering during each iterative calculation, and calculating a stepping value of the current iteration in a specified part of a complex field by using an error signal during the last iteration during the calculation, wherein the specified part of the complex field is a real part or an imaginary part, and the error signal is an error between an expected output signal and an actual output signal;

and calculating the imaginary part of the weight in the adaptive filtering in each iteration, and calculating the step value of the current iteration in a specified part of a complex field by using the error signal in the last iteration in the calculation.

7. The LMS weight iterative computation method for adaptive filtering according to claim 6, wherein when computing the real part of the weight in adaptive filtering, the real part of the input filter signal at the last iteration, the specified part of the error signal at the last iteration in the complex field and the real part of the weight at the last iteration are input, and the real part of the weight at the current iteration is computed;

and when the imaginary part of the weight in the adaptive filtering is calculated, inputting the imaginary part of the filtering signal input in the last iteration, the appointed part of the error signal in the complex field in the last iteration and the imaginary part of the weight in the last iteration, and calculating the imaginary part of the weight in the current iteration.

8. The iterative computation method of LMS weights for adaptive filtering according to claim 7, wherein said computing the real part of the weights of the current iteration comprises: accessing the real part of the input filtering signal and the designated part of the error signal in the complex number field during the last iteration, performing multiplication operation, shifting, and outputting a shifted result; adding the result after the shifting and the result after delaying the real part of the weight of the current iteration to obtain the real part of the weight of the current iteration to be output;

the calculating the imaginary part of the weight of the current iteration comprises: accessing the imaginary part of the input filtering signal and the appointed part of the error signal in the complex number field during the last iteration, shifting after multiplication operation, and outputting a result after shifting; and performing addition operation on the result after the displacement and the result after the time delay of the imaginary part of the weight of the current iteration to obtain the imaginary part output of the weight of the current iteration.

9. An LMS weight iterative computation method for adaptive filtering according to any one of claims 6-8, characterized in that the real part of the weight and the imaginary part of the weight are both real parts of error signals in the assigned parts of the complex domain at each iterative computation, or the real part of the weight and the imaginary part of the weight are both imaginary parts of error signals in the assigned parts of the complex domain at each iterative computation, or one of the imaginary parts of error signals and the other imaginary part of error signals in the assigned parts of the complex domain at each iterative computation.

10. The LMS weight iterative computation method for adaptive filtering according to any one of claims 6 to 8, characterized in that: each iteration calculation also comprises increasing the step factor for adjusting the iteration so as to compensate the convergence speed of the iteration.

Technical Field

The invention relates to the technical field of adaptive filtering, in particular to an LMS (Least mean square) weight iterative computation device and method for adaptive filtering.

Background

The adaptive filter uses an adaptive algorithm to change the parameters and structure of the filter to achieve the adaptive filtering effect. In the real-time processing process of the self-adaptive filtering, the optimal weight needs to be determined, and the calculation method for determining the optimal weight mainly comprises two methods, namely direct calculation and iterative recursion calculation, wherein the direct calculation method is completed in a matrix inversion mode, although the optimal weight can be directly obtained, the calculation amount is large, the requirement on hardware resources is high, and the iterative recursion calculation method is to update the weight in real time through a certain algorithm, so that the weight vector is gradually converged to the optimal weight from an initial state.

In the iterative recursion calculation method of the weight, the LMS algorithm is commonly used, and the LMS algorithm approximately realizes the steepest descent method by replacing the gradient with the gradient estimation, namely, the gradient of the instantaneous output error powerAs root mean square error gradientAnd calculating the weight step amount, and finally converging to the optimal weight along the direction of reducing the error performance function. The iterative computation of the weight is usually implemented in the FPGA based on the LMS algorithm, but because complex multiplication exists in the iterative computation, not only is the iterative implementation complex, but also a large amount of hardware multiplier resources are consumed, the implementation cost is increased, the iterative computation efficiency is reduced due to the complex computation, and the selection range of the FPGA scale is limited due to the number of multipliers used. In the practical application of adaptive filtering, a large number of processing channels are usually included, and when the number of channels is large, a large number of multiplications are required in the iterative update process of the weights, which results in a large amount of hardware resource consumption and a large number of multiplications.

A single branch control loop based on LMS algorithm in adaptive filtering is shown in FIG. 1, in which weight w is weighted in the adaptive filtering processiThe recurrence formula of (c) can be expressed as:

wherein xiRepresenting the input filtered signal, e representing the error signal, wi、xiAnd e are both plural, i.e.: e=eI+jeQ

iteration result w of each weightiThe calculation of (n +1) needs to be implemented by dividing into a real part and an imaginary part, namely:

in order to implement the iterative computation of the weights (2) and (3), in the prior art, a single branch of weight iteration based on the LMS algorithm usually adopts a circuit structure as shown in fig. 2, which includes 4 multipliers and four adders, that is, once per iteration, the weight w corresponding to each branch is computediThe (n +1) update requires 4 multiplications and 4 additions, which results in a large consumption of hardware multiplier resources, especially when applied to a large number of channels, and a large number of multiplications.

In summary, when the LMS algorithm is used for iterative computation of weights in the adaptive filtering, since there is complex multiplication, and the step for computing the real part of the weight requires the real part and the imaginary part of the error signal and the input filter signal, the step for computing the imaginary part of the weight also requires the real part and the imaginary part of the error signal and the input filter signal, and one iteration of one path of complex weights requires 4 multiplications and 4 addition operations, more hardware resources are consumed and a large number of multiplications are performed, so that the implementation cost is high and the execution efficiency is low.

Disclosure of Invention

The technical problem to be solved by the invention is as follows: aiming at the technical problems in the prior art, the invention provides the LMS weight iteration calculation device and method for the adaptive filtering, which have the advantages of simple and compact structure, low cost, low hardware resource consumption, small calculation amount and high iteration efficiency.

In order to solve the technical problems, the technical scheme provided by the invention is as follows:

an LMS weight iteration computation device for adaptive filtering, comprising:

the real part calculation circuit is used for calculating the real part of the weight in the adaptive filtering in each iterative calculation, and calculating the stepping value of the current iteration in a specified part of a complex field by using an error signal in the last iteration in the calculation, wherein the specified part of the complex field is a real part or an imaginary part, and the error signal is an error between an expected output signal and an actual output signal;

and the imaginary part calculating circuit is used for calculating the imaginary part of the weight in the self-adaptive filtering in each iteration and calculating the stepping value of the current iteration in a specified part of the complex number field by using the error signal in the last iteration in the calculation.

Furthermore, in the real part calculation circuit, the real part of the input filtering signal during the last iteration, the specified part of the error signal during the last iteration in the complex field and the real part of the weight value during the last iteration are input, and the real part of the weight value of the current iteration is calculated;

and the imaginary part of the weight value of the current iteration is calculated by inputting the imaginary part of the input filtering signal during the last iteration, the specified part of the error signal during the last iteration in the complex field and the imaginary part of the weight value during the last iteration in the imaginary part calculating circuit.

Furthermore, the real part calculating circuit includes a first multiplying unit, a first shifting unit, a first adding unit and a first delay unit, an input end of the first multiplying unit is connected to a real part of the input filtering signal and a specified part of the error signal in a complex number domain during the last iteration, an output end of the first multiplying unit is connected to an input end of the first shifting unit, an input end of the first adding unit is connected to an output end of the first shifting unit and an output end of the first delay unit, an output end of the first adding unit is further connected to an input end of the first delay unit, and an output end of the first adding unit outputs a real part of the weight of the current iteration.

Further, the imaginary part calculating circuit includes a second multiplying unit, a second shifting unit, a second adding unit, and a second delaying unit, an input end of the second multiplying unit is connected to the imaginary part of the input filtering signal and the assigned part of the error signal in the complex number domain during the last iteration, an output end of the second multiplying unit is connected to an input end of the second shifting unit, an input end of the second adding unit is connected to an output end of the second shifting unit and an output end of the second delaying unit, an output end of the second adding unit is further connected to an input end of the second delaying unit, and an output end of the second adding unit outputs the imaginary part of the weight of the current iteration.

Further, the specified parts of the error signals in the complex field in the real part calculating circuit and the imaginary part calculating circuit are both the real part of the error signals, or the specified parts of the error signals in the complex field in the real part calculating circuit and the imaginary part calculating circuit are both the imaginary part of the error signals, or one of the specified parts of the error signals in the complex field in the real part calculating circuit and the imaginary part calculating circuit is the imaginary part of the error signals, and the other is the imaginary part of the error signals.

An LMS weight iterative computation method for adaptive filtering comprises the following steps:

calculating a real part of a weight in adaptive filtering during each iterative calculation, and calculating a stepping value of the current iteration in a specified part of a complex field by using an error signal during the last iteration during the calculation, wherein the specified part of the complex field is a real part or an imaginary part, and the error signal is an error between an expected output signal and an actual output signal;

and calculating the imaginary part of the weight in the adaptive filtering in each iteration, and calculating the step value of the current iteration in a specified part of a complex field by using the error signal in the last iteration in the calculation.

Further, when the real part of the weight in the adaptive filtering is calculated, the real part of the input filtering signal in the last iteration, the specified part of the error signal in the complex field in the last iteration and the real part of the weight in the last iteration are input, and the real part of the weight in the current iteration is calculated;

and when the imaginary part of the weight in the adaptive filtering is calculated, inputting the imaginary part of the filtering signal input in the last iteration, the appointed part of the error signal in the complex field in the last iteration and the imaginary part of the weight in the last iteration, and calculating the imaginary part of the weight in the current iteration.

Further, the calculating the real part of the weight of the current iteration includes: accessing the real part of the input filtering signal and the designated part of the error signal in the complex number field during the last iteration, performing multiplication operation, shifting, and outputting a shifted result; and performing addition operation on the shifted result and the result after delaying the real part of the weight of the current iteration to obtain the real part of the weight of the current iteration to be output.

The calculating the imaginary part of the weight of the current iteration comprises: accessing the imaginary part of the input filtering signal and the appointed part of the error signal in the complex number field during the last iteration, shifting after multiplication operation, and outputting a result after shifting; and performing addition operation on the result after the displacement and the result after the time delay of the imaginary part of the weight of the current iteration to obtain the imaginary part output of the weight of the current iteration.

Further, the real part of the weight value and the imaginary part of the weight value are calculated in each iteration calculation, and all the designated parts of the complex field of the error signal in the imaginary part of the weight value are the real part of the error signal, or the real part of the weight value and all the designated parts of the complex field of the error signal in the imaginary part of the weight value are the imaginary parts of the error signal in each iteration calculation, or one of the designated parts of the complex field of the error signal in the real part of the weight value and the imaginary part of the weight value in the each iteration calculation is the imaginary part of the error signal, and the other is the imaginary part of the error signal.

Furthermore, each iteration calculation also comprises the step factor for adjusting the iteration to compensate the convergence speed of the iteration.

Compared with the prior art, the invention has the advantages that:

1. the LMS weight iteration calculating device for the self-adaptive filtering is characterized in that a real part calculating circuit and an imaginary part calculating circuit are arranged to respectively realize real part calculation and imaginary part calculation of each iteration, the real part calculating circuit and the imaginary part calculating circuit calculate the step value of the current iteration by taking the real part of an error signal in a complex field during calculation, and only part of the error signal is taken to calculate the step value, so that the use of a needed multiplier can be greatly reduced, the needed calculated amount is reduced, the requirement on system hardware is reduced, and the efficiency of the iteration calculation is improved, so that the quick and efficient self-adaptive filtering can be realized on the premise of not losing the steady-state performance.

2. The LMS weight iterative computation method for the self-adaptive filtering is characterized in that the real part computation and imaginary part computation circuits are used for computing the step value of the current iteration by taking the real part of the error signal in the complex field during each iteration, and only part of the error signal is used for computing the step value, so that the needed computation amount can be greatly reduced, the requirement on system hardware is reduced, the iterative computation efficiency is improved, and the steady-state performance of the system can be ensured not to be influenced.

Drawings

Fig. 1 is a schematic diagram of the structure of an LMS single-branch control loop in the prior art.

Fig. 2 is a schematic diagram of a structural principle of a single branch of weight iteration based on an LMS algorithm in the prior art.

Fig. 3 is a schematic structural diagram of an LMS weight iteration calculating device for adaptive filtering in embodiment 1 of the present invention.

Fig. 4 is a schematic diagram of the vector representation principle of the error signal.

Fig. 5 is a diagram illustrating the result of the LMS weight convergence process obtained by the conventional method in a specific application embodiment.

FIG. 6 is a diagram illustrating the result of a weight convergence process curve obtained by the apparatus of the present invention in a specific embodiment.

FIG. 7 is a diagram illustrating a result of a weight convergence process curve obtained by modifying a step factor using the apparatus of the present invention in an embodiment of specific application.

Fig. 8 is a schematic structural diagram of an LMS weight iteration calculating device for adaptive filtering in embodiment 2 of the present invention.

Illustration of the drawings: 1. a real part calculation circuit; 11. a first multiplication unit; 12. a first shift unit; 13. a first addition unit; 14. a first delay unit; 2. an imaginary part calculation circuit; 21. a second multiplication unit; 22. a second shift unit; 23, a second adding unit; 24. and a second delay unit.

Detailed Description

The invention is further described below with reference to the drawings and specific preferred embodiments of the description, without thereby limiting the scope of protection of the invention.

Example 1:

as shown in fig. 3, the LMS weight iteration calculating device for adaptive filtering in this embodiment is configured to perform weight iteration calculation of the ith branch in adaptive filtering, and includes:

a real part calculation circuit 1, configured to calculate a real part of the weight value at each iteration calculation, and calculate a step value of a current iteration at a designated part of the complex field using an error signal at a previous iteration at the calculation, where the error signal is an error between an expected output signal and an actual output signal;

and the imaginary part calculating circuit 2 is used for calculating the imaginary part of the weight value at each iteration and calculating the step value of the current iteration at the appointed part of the complex field by using the error signal at the last iteration. The error signals in the real part calculating circuit 1 and the imaginary part calculating circuit 2 are both the real part of the error signal in the appointed part of the complex field.

In this embodiment, the characteristic of performing weight iteration based on the LMS algorithm is firstly analyzed, because the weight iteration based on the LMS algorithm is performedBy replacing the gradient with a gradient estimate to approximately achieve the steepest descent, i.e. the gradient of the instantaneous output error powerAs root mean square error gradientThe estimation of (2) finally converges to the optimal weight value along the direction of reducing the error performance function, so the error function determines the stepping direction and the stepping size of the weight value, the stepping direction determines whether the iterative process converges, and the stepping size determines the speed of convergence. In the embodiment, the above characteristics of weight iteration based on the LMS algorithm are considered, real part calculation and imaginary part calculation of each iteration are respectively realized by setting the real part calculation circuit 1 and the imaginary part calculation circuit 2, and the real part of an error signal in a complex domain is taken to calculate the step value of the current iteration when the real part calculation circuit 1 and the imaginary part calculation circuit 2 calculate, and only part of the signal of the error signal is taken to calculate the step value, so that the use of a needed multiplier can be greatly reduced, the needed calculated amount is reduced, the requirement on system hardware is reduced, and the efficiency of iterative calculation is improved, thereby realizing fast and efficient self-adaptive filtering without losing steady-state performance.

As shown in formula (1), the weight wiThe recurrence formula of (c) is:

wherein x isiRepresenting the input filtered signal, e representing the error signal, wi、xiAnd e are both plural, i.e.: e=eI+jeQn represents the number of iterations, and i represents the number of branches in which the current iteration is located.

The error signal e (n) is a complex number represented as a vector on the complex plane, as shown in fig. 4.

In the iterative calculation process, the complex weight wiThe steps of (1) are as follows:

i.e. the error signal e (n) determines the size and direction of the step.

This embodiment uses the real part e of the error signalI(n) calculating the step Δ wi(n) then, a plurality of weights wiThe steps of (1) become:

as can be seen from formula (5), the step size at this time is Δ w'i(n) and the original step Δ wi(n) the amplitude may be smaller and the direction may deviate by a certain amount compared to the amplitudeBut the tendency of convergence of the iteration process of the weight along the direction of reducing the error performance function is not changed, that is, the tendency of convergence along the direction of reducing the error performance function during the iteration of the LMS weight can still be maintained, so that the optimal weight can be converged finally. The specific analysis was performed as follows:

firstly, setting:

namely:

wherein E (n) and Δ wiThe magnitude of (n) is related to,and Δ wiThe direction of (n) is related.

When using eI(n) instead of e (n), then Δ wii(n) is prepared fromDetermine, so the weight value wiBoth the step magnitude and direction of (a) may be equal to Δ wi(n) with some variance:

(1) when in useApproach toOrOf is delta w'i(n) and Δ wiThe direction deviation of (n) is large, but in this caseSmaller and even tends to be 0, so delta w'iAnd (n) the amplitude is smaller, and the weight change is smaller.

(2) When in useΔ w 'to 0 or. + -. π'i(n) and Δ wi(n) are close to or in the same direction whenIs close to or equal to 1, delta w'i(n) amplitude close to or equal toΔwi(n), i.e. the weight wiIs close to or the same as the result of the iterative computation of the LMS algorithm.

I.e. the present embodiment by using the real part e of the error signalI(n) calculating the weight wiIterative step value, compared with the traditional method of directly using error signal e (n) to calculate weight wiThe iterative step value can still ensure that the iterative process finally converges to the optimal weight value along the direction of reducing the error performance function, and the iterative performance of the LMS weight value is ensured.

Further, the present embodiment uses the real part e of the error signalI(n) calculating the weight wiStep value of iteration, then weight wiThe recurrence formula of (c) is:

in the actual calculation, wiThe iterative recursive calculation formula of the real part and the imaginary part of (n +1) is as follows:

from the equations (10) and (11), the weight w corresponding to each branch is calculated once per iterationiAnd (n +1) updating, namely only 2 times of multiplication and 2 times of addition are needed, and compared with the traditional LMS algorithm-based weight iteration, the multiplication reduces 2 times of multiplication and 2 times of addition, so that the required hardware resource overhead and the required calculated amount are greatly reduced, especially under the condition of more branches, the requirements on hardware resources can be obviously reduced, the iterative calculated amount is reduced, and the iterative calculation efficiency is improved.

Allowing for simplified use of the real part e of the error signalI(n) calculating the weight wiAverage step phase due to weight iteration at step value of iterationThis reduction is less than the original LMS algorithm, and thus the convergence rate of the weights is reduced, i.e. the convergence process of the weights is slower than the original convergence rate. The embodiment further compensates the convergence speed by increasing the step factor k appropriately, and does not affect the steady-state performance of the system.

As shown in fig. 4, in the real part calculating circuit 1 of the present embodiment, the real part of the input filtering signal at the last iteration, the real part of the error signal at the last iteration, and the real part of the weight at the last iteration are input, and the real part of the weight at the current iteration is calculated according to the input data; in the imaginary part calculating circuit 2, the imaginary part of the input filtering signal at the last iteration, the real part of the error signal at the last iteration and the imaginary part of the weight at the last iteration are input, and the imaginary part of the weight at the current iteration is calculated according to the input data.

In the real part calculating circuit 1 of this embodiment, the real part of the weight value in the last iteration is obtained by delaying the real part of the weight value obtained in the current iteration; in the imaginary part calculating circuit 2, the imaginary part of the weight value in the last iteration is obtained by delaying the imaginary part of the weight value obtained in the current iteration. As shown in fig. 4, the real part calculating circuit 1 and the imaginary part calculating circuit 2 specifically pass through a delay unit, and delay the weight obtained from the current iteration to obtain the weight in the last iteration.

As shown in fig. 3, the real part calculating circuit 1 of this embodiment specifically includes a first multiplying unit 11, a first shifting unit 12, a first adding unit 13, and a first delaying unit 14, an input end of the first multiplying unit 11 is connected to a real part of the input filtering signal and a real part of the error signal during the previous iteration, an output end of the first multiplying unit 11 is connected to an input end of the first shifting unit 12, an input end of the first adding unit 13 is connected to an output end of the first shifting unit 12 and an output end of the first delaying unit 14, an output end of the first adding unit 13 is further connected to an input end of the first delaying unit 14, and an output end of the first adding unit 13 outputs a real part of the weight of the current iteration. The real part of the input filtering signal and the real part of the error signal in the last iteration are accessed by the first multiplication unit 11, the first shifting unit 12 shifts the signals after multiplication operation, and the shifted result is output; the first adding unit 13 adds the shifted result and the delayed result of the weight of the current iteration by the first delay unit 14 to obtain the real part output of the weight of the current iteration. With the above structure, the real part calculation of equation (10) can be realized, and only one multiplication unit and one addition unit need to be used.

In this embodiment, the imaginary part calculating circuit 2 includes a second multiplying unit 21, a second shifting unit 22, a second adding unit 23, and a second delay unit 24, an input end of the second multiplying unit 21 is connected to an imaginary part of the input filtering signal and a real part of the error signal during the previous iteration respectively, an output end of the second adding unit 21 is connected to an input end of the second shifting unit 22, an input end of the second adding unit 23 is connected to an output end of the second shifting unit 22 and an output end of the second delay unit 24 respectively, an output end of the second adding unit 23 is further connected to an input end of the second delay unit 24, and an output end of the second adding unit 23 outputs an imaginary part of the weight of the current iteration. The second multiplication unit 21 is connected to the imaginary part of the input filtering signal and the real part of the error signal in the last iteration, and the second shifting unit 22 shifts the signals after the multiplication operation and outputs the shifted result; the second adding unit 23 adds the result after the shift and the result after the imaginary part of the weight of the current iteration is delayed by the second delay unit 24, and obtains the imaginary part output of the weight of the current iteration. With the above structure, the imaginary part calculation of the equation (11) can be realized, and only one multiplication unit and one addition unit need to be used.

Specifically, the first shift unit 12 and the second shift unit 22 realize the coefficient 2k operation by shifting, so as to avoid multiplication as much as possible and further reduce the usage of multipliers. Of course, the specific shift numbers of the first shift unit 12 and the second shift unit 22 can be configured according to actual requirements.

According to the embodiment, through the iterative computation device, the computation amount of the adaptive filtering in the weight iterative computation process can be reduced to 1/2 in the traditional scheme, the requirement on hardware resources is greatly reduced, and the steady-state performance of the system can be ensured not to be influenced.

For verifying the effectiveness of the present invention, in the same signal environment, the traditional LMS algorithm is used to perform weight iteration and the iterative computation device of the present invention is used to perform weight iteration, and the obtained simulation results of the convergence process are shown in fig. 5 to 7, where fig. 5 is the curve result of the convergence process obtained by using the traditional LMS iterative algorithm, fig. 6 is the result of the convergence curve obtained by using the iterative computation device of the present invention, fig. 7 is the result of the convergence process of the real part and the imaginary part of the 2 nd-way weight under the condition that the iterative computation device of the present invention is used to modify the step size factor (to two times the original) for compensation, the left side in each graph corresponds to the result of the real part, and the right side corresponds to the result of the imaginary part. As can be seen from FIGS. 5 to 7, the iterative device of the present invention cannot significantly reduce the amount of computation, and can maintain the convergence of the weight and the steady-state performance of the system.

In this embodiment, a plurality of LMS weight iteration calculating devices for adaptive filtering may be further provided, each iteration calculating device corresponds to weight calculation and update of one branch, so as to implement weight calculation and update of multiple branches and multiple channels, and the number of specific iteration calculating devices may be determined according to the requirements of the branches and the channels.

The embodiment further includes an LMS weight iterative computation method for adaptive filtering, where the method includes:

and (3) calculating a real part: calculating a real part of a weight in the adaptive filtering during each iterative calculation, and calculating a stepping value of the current iteration in a specified part of a complex field by using an error signal during the last iteration during the calculation, wherein the specified part of the complex field is a real part or an imaginary part, and the error signal is an error between an expected output signal and an actual output signal;

and (3) calculating an imaginary part: and calculating the imaginary part of the weight in the self-adaptive filtering in each iteration, and calculating the step value of the current iteration in a specified part of the complex field by using the error signal in the last iteration in the calculation.

Through the steps, the real part calculating circuit and the imaginary part calculating circuit calculate the step value of the current iteration by taking the real part of the error signal in the complex number field during each iteration, and only part of the signal of the error signal is taken to calculate the step value, so that the use of a needed multiplier can be greatly reduced, the needed calculated amount is reduced, the requirement on system hardware is reduced, and meanwhile, the efficiency of iterative calculation is improved, so that the fast and efficient self-adaptive filtering can be realized on the premise of not losing the steady-state performance.

In this embodiment, when calculating the real part of the weight in the adaptive filtering, the real part of the input filtering signal in the last iteration, the real part of the error signal in the last iteration, and the real part of the weight in the last iteration are specifically input, and the real part of the weight in the current iteration is calculated according to the input data;

when the imaginary part of the weight is calculated, the imaginary part of the input filtering signal in the last iteration, the real part of the error signal in the last iteration and the imaginary part of the weight in the last iteration are specifically input, and the imaginary part of the weight in the current iteration is calculated according to the input data.

In this embodiment, the calculating the real part of the weight of the current iteration specifically includes: accessing the real part of the input filtering signal and the real part of the error signal in the last iteration, performing displacement after multiplication operation, and outputting a result after displacement; and performing addition operation on the shifted result and the result after delaying the real part of the weight of the current iteration to obtain the real part of the weight of the current iteration to output. This step can be implemented in particular using the real part calculation module 1 shown in fig. 4.

In this embodiment, the calculating the imaginary part of the weight of the current iteration includes: accessing the imaginary part of the input filtering signal and the real part of the error signal during the last iteration, shifting after multiplication operation, and outputting a shifted result; and performing addition operation on the result after the shift and the result after the time delay of the imaginary part of the weight of the current iteration to obtain the imaginary part output of the weight of the current iteration. This step can be implemented in particular by the imaginary part calculation module 2 shown in fig. 4.

In the LMS weight iteration calculation method for adaptive filtering in this embodiment, the real part calculation step corresponds to the real part calculation module 1 in the LMS weight iteration calculation device for adaptive filtering, that is, the real part calculation is implemented according to the above steps based on the real part calculation module 1, the imaginary part calculation step corresponds to the imaginary part calculation module 2 in the LMS weight iteration calculation device for adaptive filtering, that is, the imaginary part calculation is implemented according to the above steps based on the imaginary part calculation module 2, and the iterative calculation method and the iterative calculation device have corresponding implementation principles and effects, which are not described in detail herein.

Example 2:

as shown in fig. 8, the LMS weight iterative computation apparatus for adaptive filtering in this embodiment includes:

a real part calculation circuit 1, configured to calculate a real part of the weight value during each iteration calculation, and calculate a step value of a current iteration using an imaginary part of an error signal during a previous iteration during the calculation, where the error signal is an error between an expected output signal and an actual output signal;

and the imaginary part calculating circuit 2 is used for calculating the imaginary part of the weight value at each iteration and calculating the step value of the current iteration by using the imaginary part of the error signal at the last iteration at the calculation.

In this embodiment, the assigned parts of the error signals in the real part calculating circuit 1 and the imaginary part calculating circuit 2 in the complex field are both the imaginary parts of the error signals, that is, in the process of calculating the real part and the imaginary part of the weight in the adaptive filtering in each iteration calculation, the imaginary part of the error signal in the last iteration is used (je)Q(n)) calculates the step value for the current iteration. The imaginary part (je) of the error signal at the last iteration is used in principle as in embodiment 1Q(n)) calculating the step value of the current iteration, compared with the traditional method of directly using the error signal e (n) to calculate the step value, the method can also achieve the effects of hardware resource consumption and halving the calculation amount, and does not change the process of system convergence.

In the real part calculating circuit 1 of the embodiment, a real part of an input filtering signal during last iteration, an imaginary part of an error signal during last iteration and a real part of a weight value during last iteration are input, and the real part of the weight value of the current iteration is calculated;

the imaginary part of the input filtering signal in the last iteration, the imaginary part of the error signal in the last iteration and the imaginary part of the weight in the last iteration are input into the imaginary part calculating circuit 2, and the imaginary part of the weight in the current iteration is calculated.

In this embodiment, the real part calculating circuit 1 includes a first multiplying unit 11, a first shifting unit 12, a first adding unit 13, and a first delaying unit 14, an input end of the first multiplying unit 11 is connected to a real part of an input filtering signal and an imaginary part of an error signal at the last iteration, respectively, an output end of the first multiplying unit 11 is connected to an input end of the first shifting unit 12, an input end of the first adding unit 13 is connected to an output end of the first shifting unit 12 and an output end of the first delaying unit 14, respectively, an output end of the first adding unit 13 is further connected to an input end of the first delaying unit 14, and an output end of the first adding unit 13 outputs a real part of a weight of the current iteration.

In this embodiment, the imaginary part calculating circuit 2 includes a second multiplying unit 21, a second shifting unit 22, a second adding unit 23, and a second delay unit 24, an input end of the second multiplying unit 21 is connected to an imaginary part of the input filtering signal and an imaginary part of the error signal during the previous iteration respectively, an output end of the second adding unit 21 is connected to an input end of the second shifting unit 22, an input end of the second adding unit 23 is connected to an output end of the second shifting unit 22 and an output end of the second delay unit 24 respectively, an output end of the second adding unit 23 is further connected to an input end of the second delay unit 24, and an output end of the second adding unit 23 outputs an imaginary part of the weight of the current iteration.

In principle the same as in embodiment 1, the imaginary part je of the error signal is used in view of simplificationQ(n) calculating the weight wiWhen the step value of the iteration is increased, since the average step of the weight iteration is reduced compared with the original LMS algorithm, the reduction reduces the convergence rate of the weight, i.e., the convergence process of the weight is slower than the original convergence rate. The embodiment further compensates the convergence speed by increasing the step factor k appropriately, and does not affect the steady-state performance of the system.

This embodiment is substantially the same as embodiment 1 except that the error signals in the real part calculating circuit 1 and the imaginary part calculating circuit 2 are in a prescribed portion of the complex fieldAll of which are the imaginary parts of the error signals, i.e. the imaginary parts of the error signals at the last iteration (je) are used in the process of calculating the real and imaginary parts of the weights in the adaptive filtering at each iteration calculationQ(n)) calculating the step value of the current iteration, the principle is the same as that of embodiment 1, and details are not repeated here.

Example 3:

this embodiment is substantially the same as embodiment 1, except that in the real part calculating circuit 1 and the imaginary part calculating circuit 2, one of the designated parts of the error signal in the complex field is the imaginary part of the error signal, and the other is the imaginary part of the error signal, i.e. in the process of calculating the real part and the imaginary part of the weight in the adaptive filtering at each iteration calculation, one uses the real part (e) of the error signal at the last iterationi(n)) calculating the step value for the current iteration, and another uses the imaginary part (je) of the error signal for the last iterationQ(n)) calculates the step value for the current iteration. E.g. using the real part of the error signal at the last iteration when calculating the real part (e)i(n)) calculating the step value for the current iteration and calculating the imaginary part using the imaginary part of the error signal for the previous iteration (je)Q(n)) calculating the step value of the current iteration, wherein the specific use mode can be configured according to the actual requirement.

The present embodiment uses the real part (e) of the error signal by combinationi(n)), the imaginary part of the error signal (je)Q(n)) calculating iterative step values due to the simultaneous introduction of the real part (e) of the error signali(n)), imaginary component (je)Q(n)), only part of the error signals are used in the real part and imaginary part calculation, so that the hardware resource consumption and the calculation amount can be reduced, the iterative convergence effect is kept, and the accuracy of the iterative calculation can be ensured, so that the calculation error caused by simplifying the error signals can be reduced.

The foregoing is considered as illustrative of the preferred embodiments of the invention and is not to be construed as limiting the invention in any way. Although the present invention has been described with reference to the preferred embodiments, it is not intended to be limited thereto. Therefore, any simple modification, equivalent change and modification made to the above embodiments according to the technical spirit of the present invention should fall within the protection scope of the technical scheme of the present invention, unless the technical spirit of the present invention departs from the content of the technical scheme of the present invention.

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种通用动态延时消抖方法、装置、终端及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类