Next Article in Journal
Modulation Technique for Modified Active Quasi-Z-Source Inverter with Common-Mode Voltage Reduction
Previous Article in Journal
Application of Gaussian Radial Basis Functions for Fast Spatial Imaging of Ground Penetration Radar Data Obtained on an Irregular Grid
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Maximum Element Dichotomous Coordinate Descent Based Minimum Variance Distortionless Response DoA Estimator

1
School of Information Engineering, Zhengzhou University, Zhengzhou 450001, China
2
Nanjing ChangFeng Aerospace Electronic Technology Co., Ltd., Nanjing 210000, China
*
Author to whom correspondence should be addressed.
Electronics 2021, 10(23), 2966; https://doi.org/10.3390/electronics10232966
Submission received: 28 October 2021 / Revised: 23 November 2021 / Accepted: 27 November 2021 / Published: 28 November 2021
(This article belongs to the Section Circuit and Signal Processing)

Abstract

:
In this paper, we devise an efficient approach for estimating the direction of arrival (DoA). The proposed DoA estimation approach is based on minimum variance distortionless response (MVDR) criteria within a recursive least squares (RLS) framework. The dichotomous coordinate descent algorithm is used to modify the calculation of the output power spectrum, and a diagonal loading term is applied to improve the robustness of the DoA estimator. These modifications allow us to both reduce the computational complexity of the RLS DoA estimator and increase the estimation performance. A numerical comparison confirms that the proposed DoA estimator outperforms the conventional RLS DoA estimator in terms of the computational complexity and DoA estimation error. Finally, the proposed theoretical DoA estimator is implemented on a field-programmable gate array (FPGA) board to verify the feasibility of the method. The numerical results of a fixed-point implementation demonstrate that the performance of the proposed method is very close to that of its floating-point counterpart.

1. Introduction

Accurate source estimation is a key research topic in array signal processing [1]. Direction-of-arrival (DoA) algorithms, which estimate the angle of arrival of an incoming signal, are commonly used in applications such as the localisation of sources, signal detection, and beamforming [2]. A beam-scanning approach is used to determine the direction of the signal, and the power of each signal is calculated by scanning a beam through space. The angle of arrival of the desired signal is determined by the direction with the highest power.
Various DoA estimation methods are available, although they differ in terms of their accuracy, computational complexity, and convergence speed. The well-known minimum variance distortionless response (MVDR) method is among the most popular adaptive array processing strategies due to its resilience to noise while nullifying interference [3,4]. In this approach, training signals are used to adjust the sensor array weight vector. Then, the weight of each element in the array can be altered adaptively and used to generate an optimal beam that reduces the mean square error (MSE) between the estimated value and the true output of the sensor array. A practical challenge with the MVDR method is that it requires the inverse covariance matrix of the received training signals, which must be obtained from observations. Many adaptive algorithms can be applied to solve the MVDR beamforming problem. For example, a multistage Wiener filter is used to avoid computing the matrix inversion but at the cost of signal distortion [5]. The least mean squares (LMS) algorithm is simple to implement with a computational complexity of O ( M ) , where M is the number of sensor array elements. However, the convergence speed of the LMS algorithm is slow [6]. The direct inversion of an autocorrelation matrix based MVDR beamformer has a much higher convergence speed, but it requires O ( M 3 ) operations per update of the weight vector [7]. Moreover, the direct matrix inversion is sensitive to finite-length errors [8]. In contrast, the recursive least squares (RLS) algorithm offers a good compromise between convergence and complexity. Nevertheless, the required computational cost of the RLS algorithm is still high, and its implementation in a multiprocessor hardware architecture may experience numerical difficulties due to the accumulation of round-off errors, which occurs after a certain number of iterations and often introduces numerical instability [9]. At present, the systolic array processor (SAP) developed by McWhirter and Shepherds is widely recognised as the most efficient design for MVDR beamforming [10]. An SAP was designed for MVDR beamforming by using the RLS algorithm in [11]. Since then, many researchers have worked on converting the MVDR problem into an RLS minimisation problem [12,13].
Extensive research has been conducted to simplify MVDR beamforming and make it easier to implement [14]. The MVDR beamformer proposed in [15] achieves computational savings by converting the matrix operations into vector operations and using recursive updates to implement matrix decomposition. In [9], the authors use modified inverse matrix operations to reduce the computational complexity of the RLS beamformer. In addition, some stabilisation techniques are used to partly resolve the numerical instability problem in finite-precision implementations. However, operations such as taking the square root and performing division are complicated to apply in practice. Therefore, it is important to design adaptive filtering algorithms that do not employ division or square roots and use as few multiplication operations as possible.
As an alternative, the dichotomous coordinate descent (DCD) algorithm has low computational complexity and is guaranteed to be stable [16] because it is a shift-and-add algorithm and solves normal linear equations using only additions and bit-shifts with no multiplication [16,17,18]. In [18], the RLS problem is represented as a sequence of auxiliary normal equations that are then approximately solved by using DCD iterations. In addition, numerous approaches have been developed to provide more robust beamforming solutions [14,19,20]. For instance, the diagonal loading technique and its variants are efficient at improving the robustness of MVDR beamformers. Furthermore, various recent studies have proposed different solutions to optimise the regularisation parameter of diagonal loading [21,22,23,24].
For a long time, the procedures for solving linear systems of equations and matrix inversion were thought to be difficult to apply in real-time systems. QR decomposition (QRD) is most often used to implement matrix inversion in hardware [25,26,27,28]. However, QRD based methods normally require multiplications and divisions. All these operations are considered to be challenging for hardware implementation. To reduce the complexity of matrix inversion, the Neumann series based approximate algorithm has been proposed for signal detection [29]. The COordinate Rotation DIgital Computer (CORDIC) algorithm is a hardware-friendly method that computes trigonometric functions by only using the shift and addition operations. The QRD based CORDIC algorithm simplifies the practical operations [26]. However, due to the limited dynamic range of the fixed-point representation, CORDIC algorithms require a longer word length than floating-point implementations to achieve the same accuracy. With the advantages of computational complexity reduction, the DCD algorithm is well suited for practical implementations. Its field-programmable gate array (FPGA) architecture and implementation are demonstrated in [30]. The hardware implementations of the DCD variants for different applications have also been discussed in [17,31,32].
In this paper, we apply the maximum element DCD (MEDCD) algorithm to implement an RLS-MVDR DoA estimator with diagonal loading and propose an MEDCD-RLS-DL MVDR DoA estimator. The fixed-point FPGA implementation of the proposed DoA estimator is discussed, and the results of such implementations are presented. Numerical results are presented to demonstrate that the proposed DoA estimator outperforms the classic approaches, such as direct inversion and RLS DoA estimators. The key to this work is the design of a modified DoA estimator, which applies DCD iterations within an RLS framework tailored to the MVDR application. The proposed DCD based MVDR DoA estimation solution is easy to implement and numerically stable.
This paper proposes solutions that address the aforementioned issues of existing MVDR DoA estimators. Our main contributions are summarised as follows.
  • We propose a novel DoA estimation method that is based on MVDR criteria within an RLS framework. Instead of calculating the inversion of the correlation matrix directly, the MEDCD algorithm estimates the multiplication of the inverse correlation matrix, and a diagonal loading term is applied to improve the robustness of the DoA estimator. These modifications allow us to both reduce the computational complexity of the RLS DoA estimator and increase the estimation performance.
  • We compare the root mean square error (RMSE) performance of the proposed method with other existing DoA estimators and confirm the advantages of MEDCD-RLS-DL over the conventional RLS algorithm. The proposed method allows a simple FPGA implementation while using only very few hardware resources.
The remainder of this paper is organised as follows. In Section 2, we introduce the system model and the DoA estimation problem. In Section 3, the MEDCD-RLS-DL MVDR DoA estimator is devised. Numerical examples verifying the improved performance of the proposed DoA estimator are given in Section 4, and the FPGA implementation results of the proposed DoA estimator are presented in Section 5. Our conclusions are drawn in Section 6.

2. System Model and Problem Formulation

Consider that N sources are assumed to impinge on a uniform linear array composed of M sensors. The DoAs are as follows:
Ξ = [ θ 1 , θ 2 , θ 3 , , θ N ] ,
where θ N denotes the angle associated with the Nth signal source. The signal u received by the sensors at sample time t is represented as:
u ( t ) = n = 1 N Φ 0 ( θ n ) · s ( t ) ,
where s ( t ) is a set of uncorrelated arriving signals. Φ 0 ( θ n ) refers to an M by 1 steering vector of the nth desired angle represented as Φ 0 ( θ n ) = [ 1 , e , e 2 , , e ( M 1 ) ] , = j d s i n ( θ ) , = 2 π / λ , λ is the wavelength, and d is the spacing between the sensors. As a result, an M by 1 signal vector u ( t ) can be written as:
u ( t ) = Φ ( θ n ) · s ( t ) ,
where Φ ( θ n ) = [ Φ 0 ( θ 1 ) , Φ 0 ( θ 2 ) , , Φ 0 ( θ N ) ] is an M by N array steering matrix associated with N desired angles. The signal vector plus noise is referred to as a snapshot. Assume that N narrowband signals are received over an observation period of P snapshots. At snapshot i ( i { 1 , 2 , 3 , , P } ) , the sensor array observation vector r ( i ) C M is given by
r ( i ) = Φ ( θ n ) · s ( i ) + n ( i ) ,
where r ( i ) is an M by 1 vector and n ( i ) is an M by 1 zero mean complex-valued Gaussian random vector with variance σ 2 .
According to the MVDR criteria, the power of the received signal is evaluated in all possible directions. The MVDR based DoA estimator can be stated mathematically as a constrained minimisation problem. The power at the desired θ angles is measured by constraining the output gain of sensors to be a constant value of one, while the power from all other angles is minimised. The weighted sum of the signals received by the array sensors is denoted F ( i ) and is given as:
F ( i ) = w H ( i ) r ( i ) ,
where w ( i ) is an M by 1 complex vector of weights.
For each possible angle θ n , the power in the cost function is minimised subject to the following constraint:
min w ( i ) w H ( i ) R ( i ) w ( i ) subject to w H ( i ) Φ ( θ n ) = 1
where
R ( i ) = 1 K k = 1 i K + 1 r ( k ) r H ( k )
is an M by M snapshot covariance matrix and K is the number of training snapshots.
The weight vector of w is expressed as:
w ( i ) = R 1 ( i ) Φ s ( θ p ) Φ s ( θ p ) H R 1 ( i ) Φ s ( θ p ) ,
where Φ s ( θ p ) ( p = 1 , 2 , P ) is an M by 1 scanning steering vector achieved by scanning over the angular region and P is the number of scanning steps.
The output power at each scanning angle θ p is given by:
P mvdr ( θ p ) = 1 Φ s ( θ p ) H R 1 ( i ) Φ s ( θ p ) .
By estimating the peaks of the output power spectrum, the estimated DoAs can be obtained mathematically:
θ ^ DoA = arg max θ p P ( θ p ) , p = 1 , 2 , 3 , P .
The MVDR based DoA estimator has better resolution and substantially better interference rejection capability than the conventional data-independent DoA estimators provided that the steering vector corresponding to the signal of interest is accurately known. However, the inversion of the matrix R is computationally complex. Thus, instead of direct inverting of the correlation matrix, the proposed method estimates the product between the inverse correlation matrix and the scanning steering vector obtained by the sensors to avoid the large computational burden on the hardware.

3. Algorithm Description

3.1. RLS-MVDR

MVDR beamforming applies the RLS algorithm to iteratively compute the set of parameters of the beamformer as follows:
for each i, calculate
    k ( i ) = η 1 R 1 ( i 1 ) r ( i ) 1 + η 1 r H ( i ) R 1 ( i 1 ) r ( i )
    R 1 ( i ) = η 1 R 1 ( i 1 ) η 1 k ( i ) r H ( i ) R 1 ( i 1 )
    ϵ n ( i ) = 1 Φ H ( θ n ) R 1 ( i ) Φ ( θ n )
    w ( i ) = η 1 ϵ n ( i ) ϵ n ( i 1 ) ( I k ( i ) r H ( i ) w ( i 1 ) )
    F ( i ) = w H ( i ) r ( i )
where ϵ n is the a gain factor that enforces the constraint, w ( 0 ) = Φ ( θ n ) M . By applying the matrix inversion lemma [33], the classic RLS algorithm with a forgetting factor calculates the inverse matrix R 1 ( i ) based on matrix R 1 ( i 1 ) at the previous snapshot ( i 1 ) :
R 1 ( i ) = η 1 { R 1 ( i 1 ) R 1 ( i 1 ) r ( i ) r H ( i ) R 1 ( i 1 ) η + r H ( i ) R 1 ( i 1 ) r ( i ) } ,
where η is an appropriate forgetting factor ( 0 < η 1 ). However, this calculation is executed at the expense of an increase in computational complexity, that is, O ( M 2 ) operations per snapshot [34].

3.2. Proposed ME-DCD-RLS-DL MVDR DoA Estimator

Recursive matrix inversion causes the RLS algorithm to become unstable. Instead of calculating the reciprocal of a complex matrix, Equation (9) can be expressed by:
P mvdr ( θ ) = 1 Φ s H ( θ p ) v θ ( i ) ,
where v θ ( i ) = R 1 ( i ) Φ s ( θ p ) and Φ s ( θ p ) is assumed to be stable during the sampling snapshots.
The equation R ( i ) v θ ( i ) = Φ s ( θ p ) can be expressed as:
R ( i ) [ v θ ( i 1 ) + Δ v θ ( i ) ] = Φ s ( θ p ) .
This equation can be re-written as:
R ( i ) Δ v θ ( i ) = Φ s ( θ p ; i ) R ( i ) v ^ θ ( i 1 ) = Φ s ( θ p ; i 1 ) + Δ Φ s ( θ p ; i ) R ( i 1 ) v ^ θ ( i 1 ) Δ R ( i ) v ^ θ ( i 1 ) = Λ s r ( i 1 ) + Δ Φ s ( θ p ; i ) Δ R ( i ) v ^ θ ( i 1 ) , = Φ a
where Φ s ( θ p ; i ) is the scanning steering vector at snapshot i, and Λ s r ( i 1 ) = Φ s ( θ p ; i 1 ) R ( i 1 ) v ^ θ ( i 1 ) . The increments Δ R ( i ) , Δ Φ s ( θ p ; i ) , and Δ v θ ( i ) are denoted as:
Δ R ( i ) = R ( i ) R ( i 1 ) , Δ Φ s ( θ p ; i ) = Φ s ( θ p ; i ) Φ s ( θ p ; i 1 ) , Δ v θ ( i ) = v θ ( i ) v θ ( i 1 ) .
To improve robustness, a diagonal matrix μ I is used to regularise the matrix. The implementation of the RLS-MVDR DoA estimator results in the diagonal loading exponential snapshot correlation matrix [34]
R ( i ) = k = 0 i η i k r ( k ) r H ( k ) + μ I ,
where μ is a diagonal loading factor ( μ is a small constant) and I is an identity matrix. Equation (16) can be modified as:
R ( i ) = η R ( i 1 ) + r ( i ) r H ( i ) + ( 1 η ) μ I .
By applying Equations (15) and (17) and Δ Φ s ( θ p ; i ) = 0 , we have:
Δ R ( i ) = ( η 1 ) R ( i 1 ) + r ( i ) r H ( i ) + ( 1 η ) μ I .
By multiplying by v ^ θ ( i 1 ) on both sides of Equation (18), we obtain:
Δ R ( i ) v ^ θ ( i 1 ) = ( η 1 ) [ Φ s ( θ p ) Λ s r ( i 1 ) ] + r ( i ) z ( i ) + ( 1 η ) μ v ^ θ ( i 1 ) ,
where z ( i ) = r H ( i ) v ^ θ ( i 1 ) . By applying Equations (19) to (14), Φ a ( i ) can be expressed as:
Φ a ( i ) = η Λ s r ( i 1 ) + ( 1 η ) Φ s ( θ p ; i 1 ) r ( i ) z ( i ) ( 1 η ) μ v ^ θ ( i 1 ) .
With the provided R ( i ) and Φ a ( i ) , the approximate solution Δ v ^ θ ( i ) can be obtained using (14). To avoid high computational complexity, an iterative descent search method, namely, the DCD algorithm, can be applied as a possible choice. The DCD-type algorithms adopt a bit-shift operations to replace multiplication and division operations, which is attractive for practical implementation.

MEDCD Algorithm

A DCD-type algorithm that updates elements according to the ‘leading’ index selection has been proven to speed convergence [18]. The ‘leading’ index q corresponds to the maximum element in the residual vector Λ s r . We call this DCD-type algorithm the MEDCD algorithm, which is described in Table 1. As shown in Table 2, Δ v θ ( i ) can be efficiently obtained at step 4 [18]. Each element of the solution vector Δ v θ is represented by B m a x bits. The parameter A is an initialisation of a variable step-size parameter ζ , and the step-size is updated by multiplying it by 1 / 2 . The MEDCD algorithm updates the qth element in Δ v θ and Λ s r and iterates this at most U m a x times. If the absolute value of Λ s r q is too small, the algorithm updates nothing. If the absolute value of Λ s r q is large enough, the algorithm updates the solution Δ v θ q and the vector Λ sr . When the comparison ③ is always satisfied, the predefined number of updates U m a x ⑥ is used to stop the algorithm. Another parameter for the stop condition is B m a x , which controls the number of update step-sizes ②. Ultimately, one update in the MEDCD algorithm requires M bit-shifts, ( M + 2 ) additions, and 1 comparison.

3.3. Computational Complexity

Table 3 compares the complexity of the MVDR DoA estimator based on a direct inversion and the classic RLS algorithm with that of the proposed MEDCD-RLS variants. The computational complexity of the considered algorithms based on the MVDR DoA estimator is measured by the sum of multiplications and additions ( Y algorithm ) for each snapshot. Note that these methods are used to solve a complex-valued system. Solving an M / 2 × M / 2 complex-valued linear system of equations can be transformed into solving an equivalent M × M real-valued system of equations:
R 1 R 2 R 2 R 1 Δ v θ 1 Δ v θ 2 = Φ a 1 Φ a 2 ,
where R 1 and R 2 are the real and imaginary parts of R , respectively, and they are M / 2 × M / 2 real-valued matrices. The M / 2 × 1 vectors of Δ v θ 1 and Δ v θ 2 are the real and imaginary parts of Δ v θ , respectively. Likewise, the M / 2 × 1 vectors of Φ a 1 and Φ a 2 are the real and imaginary parts of Φ a , respectively. The transformed real-valued R is a symmetric matrix. Hence, we need to calculate only the upper triangular part of the matrix R . The direct inversion method of solving R 1 requires O ( M 3 ) operations (additions & multiplications), whereas the classic RLS algorithm requires O ( M 2 ) operations. The MEDCD-RLS variants, which differ from the RLS algorithm by inverting the matrix recursively, solve for the product R ( i ) Δ v ^ θ ( i ) in a recursive manner. The parameters μ , η , and Φ s ( θ p ) are assumed to be constants during the iterations, and ( 1 η ) μ is also constant. By selecting the forgetting factor η as 1 2 Ω , where Ω is a positive integer, we can replace multiplication operations by η with additions and bit-shifts [18,30]. A bit-shift operation is much simpler than multiplication in the hardware implementation. Then, the matrix R ( i ) is updated as R ( i ) = ( 1 2 Ω ) R ( i 1 ) + r ( i ) r H ( i ) + 2 Ω μ I . The complexity of step 1 in Table 2 is thus reduced from 3 M 2 to M 2 . The complexity of step 4 is the computational complexity of the MEDCD algorithm solution process. With U m a x updates, the upper bound on the complexity ( Ψ MEDCD ) of the MEDCD algorithm is ( 2 M + 1 ) U m a x + B m a x . To obtain the same accuracy as calculating the vector v θ ( i ) , the MEDCD-RLS variants normally require fewer of iterations than U m a x . The diagonal loading technique introduces ( M P + M ) extra multiplications and ( M 2 + M P ) extra additions compared with the MEDCD-RLS algorithm. In contrast, for the conventional RLS algorithm, the diagonal loading term involves the matrix inversion at each instant in time, which results in an impractical complexity of O ( M 3 P ) . As shown, the complexities increase from lowest to highest in the order of MEDCD-RLS < MEDCD-RLS-DL < RLS < direct inversion.

4. Numerical Results and Discussion

In this section, MATLAB simulations are conducted to evaluate the performance of the proposed DoA estimator and provide a comparison with the performance of other algorithms in terms of the RMSE and the signal to noise ratio (SNR). The RMSE of the estimated θ ^ for the direct inversion, RLS, MEDCD-RLS, and MEDCD-RLS-DL methods is straightforwardly computed as:
RMSE ( θ ^ ) = 1 K i = 1 K | θ ^ i θ t r u e | 2 ,
where θ ^ i i { 1 , 2 , 3 , K } represents the current estimated DoA in the ith snapshot and θ t r u e represents the true DoA of the signal source. It is assumed that each signal source transmits a quadrature phase shift keying (QPSK) modulated signal on the same carrier frequency. The vector Φ s ( θ p ) is obtained from 90 to 90 with an interval of 0 . 1 . It is necessary to compute the value of P ( P = 1801 ). The simulation parameters are set as Ω = 5 , d = 0.5 λ , U m a x = 32 , B m a x = 15 , M = 16 , N is chosen as 1 for simplicity of calculation, and μ is equal to the noise variance.
Figure 1 illustrates the RMSEs of the algorithms for θ t r u e = 30 over a number of snapshots for SNR = 10 dB and SNR = 20 dB, respectively. The estimation accuracy of the MEDCD-RLS algorithm is clearly the worst, while the performance of the direct inversion method is the best. However, with an increase in the number of snapshots, the RMSE of the MEDCD-RLS-DL method approaches that of direct inversion method, especially at a low SNR.
Figure 2 depicts the RMSE of the algorithms for θ t r u e = 50 . 6 over a number of snapshots for SNR = 10 dB and SNR = 20 dB, respectively. The MEDCD-RLS method presents an angular estimation accuracy similar to that of the RLS algorithm with an increase in the number of snapshots when SNR = 10 dB, and the MEDCD-RLS-DL algorithm exhibits better performance than the RLS and MEDCD-RLS methods. Selecting the number of scanning steps is a trade-off between the desired angular resolution and scanning time. As the scanning step is 0 . 1 , compared to the results obtained for θ t r u e = 30 in Figure 1, the overall estimation accuracy of these algorithms obtained for 50 . 6 is lower.
Plots of the RMSE as a function of the SNR are shown in Figure 3 in which K = 500 . The estimation accuracies of these algorithms evidently increase when the SNR increases. Furthermore, the RMSE of the MEDCD-RLS-DL algorithm is better than that of the MEDCD-RLS and RLS algorithms and very close to that of the direct inversion method.
A rough DoA estimate can be attained with reduced complexity by using the MEDCD-RLS-DL DoA estimator. For a more accurate estimation, a small angular interval can be set around the crudely estimated DoA, and the desired DoA can be achieved by choosing the peak power from the calculated received power of the MVDR DoA estimator. Figure 4 visualises the three-step process of estimating the θ t r u e = 37 . 5 DoA with different scanning intervals. At each snapshot i, the DoA estimation is performed in three steps. At step 1, the scanning steering vector Φ s ( θ p ) is obtained from 90 to 90 with an interval of 5 . Note that the estimator has a clear magnitude peak at approximately 40 . At step 2, we take the DoA estimated from step 1 in the centre and window the scanning range to 5 on both the left and right of the estimated DoA with a scanning interval of 1 . Here, the estimated DoA is approximately 38 . At step 3, the scanning range is a total of 2 with 38 at the centre, and the scanning interval is 0 . 1 . There is a magnitude peak at 37 . 5 . This example shows that the scanning interval resolution affects the estimation accuracy. Although the coarse DoA estimation (step 1) is computationally efficient, the fine DoA estimation (step 2, step 3) requires more scanning statistical data to achieve a certain accuracy, which results in an increase in the complexity.
In contrast to the conventional RLS algorithm which involves 952 multiplications and 624 additions, MEDCD-RLS involves 304 multiplications and 1630 additions and MEDCD-RLS-DL requires 336 multiplications and 1902 additions to calculate the output power of each possible direction. The MEDCD algorithm is simple to implement, as it uses only addition and bit-shift to solve the linear equations. Moreover, the forgetting factor η is replaced by bit-shifts and additions, thus reducing the number of multiplications.

5. Implementation of the Proposed DoA Estimator

The FPGA design architecture of the DCD based RLS method is described in [17,31]. In this work, we apply this architecture to the proposed MEDCD-RLS-DL DoA estimator and implement it using the VHSIC Hardware Description Language (VHDL) on the Nexys A7 FPGA board at a clock frequency 100 MHz. Vivado is used for the synthesis in this implementation. The vector Φ s ( θ p ) is obtained from 60 to 60 with an interval of 0 . 1 . The real and imaginary components are represented separately and are processed simultaneously. The vectors r ( i ) and Φ s ( θ p ) are represented in 16-bit fixed-point Q15 format. The matrix R ( i ) and vectors Λ sr ( i ) and v θ ( i ) are represented in 32-bit Q15 format for both components. The fixed-point DoA estimation performances of the MEDCD-RLS-DL algorithm for θ t r u e = 5 and θ t r u e = 25 . 3 at SNR = 10 dB are shown in Figure 5. This fixed-point implementation demonstrates a DoA estimation performance that is very close to that of the floating-point counterpart. After carrying out a long-term ( 10 7 snapshots) experiment, no instability problem is observed.
Table 4 shows the required hardware resources of the MEDCD algorithm for the DoA estimator. The hardware occupations of the implementation for 8 × 8 , 16 × 16 , 32 × 32 , and 64 × 64 are similar. This is because all matrices and vectors are stored in RAMs. For comparison, the FPGA hardware resources of the existing matrix inversion methods are listed in Table 5. It is obvious that the hardware complexities of these techniques are significantly higher than that of the MEDCD algorithm.

6. Conclusions

In this article, an efficient method named the MEDCD-RLS-DL algorithm is presented to estimate the MVDR DoA and a practical realisation using FPGA is performed. This proposed method uses the MEDCD algorithm to recursively calculate the product of the inverted covariance matrix and the steering vector. With a fixed SNR, the RMSE of the MEDCD-RLS-DL is very low with 0 . 01 0 . 1 errors in most scenarios. With the fixed snapshots, the RMSE of the MEDCD-RLS-DL algorithm is lower than that of the RLS algorithm by at most 42 % when SNR = 10 dB. The simulation results demonstrate that the proposed method offers a higher-resolution DoA estimate with a lower computational complexity than the conventional DoA estimators, such as the RLS and the MEDCD-RLS algorithms. Moreover, the proposed DoA estimator also has substantially less complexity than the direct matrix inversion method and provides a similar estimation performance. The numerical results from the FPGA implementation confirm the feasibility of the proposed method.

Author Contributions

Conceptualisation, Z.Q., Y.Z., J.L., and Y.W.; methodology, Z.Q. and Y.W.; writing—original draft preparation, Z.Q.; writing—review and editing, Y.Z., J.L., and Y.W. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by National Natural Science Foundation of China under grant U1604160.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Krim, H.; Viberg, M. Two decades of array signal processing research: The parametric approach. IEEE Signal Process. Mag. 1996, 13, 67–94. [Google Scholar] [CrossRef]
  2. Kumaresan, R.; Tufts, D.W. Estimating the angles of arrival of multiple plane waves. IEEE Trans. Aeros. Electron. Syst. 1983, 1, 134–139. [Google Scholar] [CrossRef]
  3. Yang, L.; McKay, M.R.; Couillet, R. High-dimensional MVDR beamforming: Optimized solutions based on spiked random matrix models. IEEE Trans. Signal Process. 2018, 66, 1933–1947. [Google Scholar] [CrossRef]
  4. Zaharis, Z.D.; Gravas, I.P.; Lazaridis, P.I.; Yioultsis, T.V.; Antonopoulos, C.S.; Xenos, T.D. An effective modification of conventional beamforming methods suitable for realistic linear antenna arrays. IEEE Trans. Antennas Propag. 2020, 68, 5269–5279. [Google Scholar] [CrossRef]
  5. Liu, F.; Du, R.; Song, H. RRT-MWF-MVDR Algorithm for Space-Time Antijamming. Prog. Electromagn. Res. M 2021, 99, 201–210. [Google Scholar] [CrossRef]
  6. Shi, L.; Zhao, H.; Wang, W.; Lu, L. Combined regularization parameter for normalized LMS algorithm and its performance analysis. Signal Process. 2019, 162, 75–82. [Google Scholar] [CrossRef]
  7. Pitz, C.A.; Batista, E.L.O.; Seara, R. A quadratically constrained stochastic gradient algorithm for beamforming in mobile communications. IEEE Trans. Circuits Syst. II Express Briefs 2017, 65, 125–129. [Google Scholar] [CrossRef]
  8. Eilert, J.; Wu, D.; Liu, D. Efficient complex matrix inversion for MIMO software defined radio. In Proceedings of the 2007 IEEE International Symposium on Circuits and Systems (ISCAS), New Orleans, LA, USA, 27–30 May 2007; pp. 2610–2613. [Google Scholar]
  9. Zaharov, V.V.; Teixeira, M. Modified implementations of RLS digital beamformer. In Proceedings of the 2005 IEEE Antennas and Propagation Society International Symposium, Washington, DC, USA, 3–8 July 2005; Volume 3, pp. 275–278. [Google Scholar]
  10. McWhirter, J.G.; Shepherd, T.J. Systolic array processor for MVDR beamforming. IEE Proc. F-Radar Signal Process. 1989, 136, 75–80. [Google Scholar] [CrossRef]
  11. McWhirter, J.G. Recursive least-squares minimization using a systolic array. In Proceedings of the Real-Time Signal Processing VI, San Diego, CA, USA, 23–25 August 1983; Volume 431, pp. 105–113. [Google Scholar]
  12. Mainkar, P.M.; Jagtap, G.N.; Mulay, G.N. Analysis of minimum variance distortionless response and least mean square beamforming algorithm for smart antenna. In Proceedings of the 2016 IEEE International Conference on Internet of Things and Applications (IOTA), Pune, India, 22–24 January 2016; pp. 213–216. [Google Scholar]
  13. Cohen, A.; Barnov, A.; Markovich- Golan, S.; Kroon, P. Joint beamforming and echo cancellation combining QRD based multichannel AEC and MVDR for reducing noise and non-linear echo. In Proceedings of the IEEE 26th European Signal Processing Conference (EUSIPCO), Rome, Italy, 3–7 September 2018; pp. 6–10. [Google Scholar]
  14. Huang, Y.; Zhou, M.; Vorobyov, S.A. New designs on MVDR robust adaptive beamforming based on optimal steering vector estimation. IEEE Trans. Signal Process. 2019, 67, 3624–3638. [Google Scholar] [CrossRef] [Green Version]
  15. Zaharov, V.V.; Teixeira, M. SMI-MVDR Beamformer Implementations for Large Antenna Array and Small Sample Size. IEEE Trans. Circuits Syst. I Regul. Papers 2008, 55, 3317–3327. [Google Scholar] [CrossRef]
  16. Zakharov, Y.V.; Tozer, T.C. Multiplication-free iterative algorithm for LS problem. Electron. Lett. 2004, 40, 567–569. [Google Scholar] [CrossRef]
  17. Liu, J.; Zakharov, Y. FPGA implementation of RLS adaptive filter using dichotomous coordinate descent iterations. In Proceedings of the 2009 IEEE International Conference on Communications, Dresden, Germany, 14–18 June 2009; pp. 1–5. [Google Scholar]
  18. Zakharov, Y.V.; White, G.P.; Liu, J. Low complexity RLS algorithms using dichotomous coordinate descent iterations. IEEE Trans. Signal Process. 2008, 56, 3150–3161. [Google Scholar] [CrossRef] [Green Version]
  19. Carlson, B.D. Covariance matrix estimation errors and diagonal loading in adaptive arrays. IEEE Trans. Aerosp. Electron. Syst. 1988, 24, 397–401. [Google Scholar] [CrossRef]
  20. Wilson, S.L. Convergence of the SMI and the diagonally loaded SMI algorithms with weak interference. IEEE Trans. Antennas Propagation 1990, 38, 394–399. [Google Scholar]
  21. Kim, Y.L.; Pillai, S.U.; Guerci, J.R. Optimal loading factor for minimal sample sup- port space-time adaptive radar. In Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing, ICASSP1998 (Cat. No. 98CH36181), Seattle, WA, USA, 15 May 1998; Volume 4, pp. 2505–2508. [Google Scholar]
  22. Yang, X.; Jalal, B.; Liu, Q. Direction-of-arrival estimation method based on least-squares by reconstructing covariance matrix with automatic diagonal loading. Electron. Lett. 2020, 56, 961–963. [Google Scholar] [CrossRef]
  23. Xu, Y.; Ma, J.; Liu, Z.; Liu, W. A class of diagonally loaded robust Capon beamformers for noncircular signals of interest. Signal Process. 2014, 94, 670–680. [Google Scholar] [CrossRef]
  24. Pajovic, M.; Preisig, J.C.; Baggeroer, A.B. Analysis of optimal diagonal loading for MPDR-based spatial power estimators in the snapshot deficient regime. IEEE J. Ocean. Eng. 2018, 44, 451–465. [Google Scholar] [CrossRef]
  25. Muñoz, S.D.; Hormigo, J. High-Throughput FPGA Implementation of QR Decomposition. IEEE Trans. Circuits Syst. II Express Briefs 2015, 62, 861–865. [Google Scholar] [CrossRef] [Green Version]
  26. Chen, D.; Sima, M. Fixed-Point CORDIC-Based QR Decomposition by Givens Rotations on FPGA. In Proceedings of the 2011 International Conference on Reconfigurable Computing and FPGAs, Cancun, Mexico, 30 November–2 December 2011; pp. 327–332. [Google Scholar]
  27. Vázquez-Castillo, J.; Castillo-Atoche, A.; Carrasco-Alvarez, R.; Longoria-Gandara, O.; Ortegón-Aguilar, J. FPGA-based hardware matrix inversion architecture using hybrid piecewise polynomial approximation systolic cells. Electronics 2020, 9, 182. [Google Scholar] [CrossRef] [Green Version]
  28. Dick, C.; Harris, F.; Pajic, M.; Vuletic, D. Implementing a real-time beamformer on an FPGA platform. XCell J. 2007, 60, 36–40. [Google Scholar]
  29. Wu, M.; Yin, B.; Vosoughi, A.; Studer, C.; Cavallaro, J.R.; Dick, C. Approximate Matrix Inversion for High-Throughput Data Detection in the Large-Scale MIMO Uplink. In Proceedings of the 2013 IEEE International Symposium on Circuits and Systems, Beijing, China, 19–23 May 2013; pp. 2155–2158. [Google Scholar]
  30. Liu, J.; Zakharov, Y.V.; Weaver, B. Architecture and FPGA design of dichotomous coordinate descent algorithms. IEEE Trans. Circ. Syst. I Regular Papers 2009, 56, 2425–2438. [Google Scholar]
  31. Liu, J.; Weaver, B.; Zakharov, Y.; White, G. An FPGA-based MVDR beamformer using dichotomous coordinate descent iterations. In Proceedings of the 2007 IEEE International Conference on Communications, Glasgow, UK, 24–28 June 2007; pp. 2551–2556. [Google Scholar]
  32. Quan, Z.; Liu, J.; Zakharov, Y. FPGA resource efficient M-PSK detector for large MIMO and multiuser systems. Circuits Syst. Signal Process. 2015, 34, 1613–1634. [Google Scholar] [CrossRef]
  33. Sayed, A.H. Fundamentals of Adaptive Filtering; Wiley: New York, NY, USA, 2003. [Google Scholar]
  34. Haykin, S.S. Adaptive Filter Theory; Prentice Hall: Upper Saddle River, NJ, USA, 2002. [Google Scholar]
Figure 1. RMSE vs. snapshots with different SNRs; θ t r u e = 30 . (a) SNR = 10 dB. (b) SNR = 20 dB.
Figure 1. RMSE vs. snapshots with different SNRs; θ t r u e = 30 . (a) SNR = 10 dB. (b) SNR = 20 dB.
Electronics 10 02966 g001
Figure 2. RMSE vs. snapshots with different SNRs; θ t r u e = 50 . 6 . (a) SNR = 10 dB. (b) SNR = 20 dB.
Figure 2. RMSE vs. snapshots with different SNRs; θ t r u e = 50 . 6 . (a) SNR = 10 dB. (b) SNR = 20 dB.
Electronics 10 02966 g002
Figure 3. RMSE vs. SNRs for θ t r u e = { 30 , 50 . 6 } . (a) θ t r u e = 30 . (b) θ t r u e = 50 . 6 .
Figure 3. RMSE vs. SNRs for θ t r u e = { 30 , 50 . 6 } . (a) θ t r u e = 30 . (b) θ t r u e = 50 . 6 .
Electronics 10 02966 g003
Figure 4. Three-step MEDCD-RLS-DL DoA estimator: θ t r u e = 37 . 5 .
Figure 4. Three-step MEDCD-RLS-DL DoA estimator: θ t r u e = 37 . 5 .
Electronics 10 02966 g004
Figure 5. DoA estimation using MEDCD-RLS-DL. (a) DoA estimation for θ t r u e = 5 . (b) DoA estimation for θ t r u e = 25 . 3 .
Figure 5. DoA estimation using MEDCD-RLS-DL. (a) DoA estimation for θ t r u e = 5 . (b) DoA estimation for θ t r u e = 25 . 3 .
Electronics 10 02966 g005
Table 1. Maximum element dichotomous coordinate descent algorithm.
Table 1. Maximum element dichotomous coordinate descent algorithm.
Initialisation: Δ v ^ θ = 0 , Λ sr = Φ s ( θ p ) Operations
ζ = A / 2 , c = 0 , ξ = 0
  Find the index of the maximum element in Λ s r
q = arg max m = 1 , , M { | Λ s r m | } ( M 1 ) adds
c = c + 1 , ζ = ζ / 2 1 add, 1 bit-shift
if c > B m a x , end algorithm
if ζ · R q , q < | Λ s r q | 1 add
Δ v ^ θ q = Δ v ^ θ q + sign [ Λ s r q ] · ζ 1 add
Λ s r = Λ s r sign [ Λ s r q ] · ζ · R : , q M adds, M bit-shifts
ξ = ξ + 1
if ξ > U m a x , end algorithm1 add
q = arg max m = 1 , , M { | Λ s r m | } , repeat ③
else repeat ②( M 1 ) adds
Total complexity Ψ MEDCD = 2 U m a x M + B m a x adds
Table 2. Diagonally loaded MEDCD-RLS-MVDR DoA estimator ( M 2 × M 2 complex-valued system).
Table 2. Diagonally loaded MEDCD-RLS-MVDR DoA estimator ( M 2 × M 2 complex-valued system).
StepEquation×+
Initialisation
v ^ ( 1 ) = 0 , Λ s r ( 1 ) = Φ s ( θ p ) , R ( 1 ) = μ I
for i = 0 , 1 ,
1 R ( i ) = η R ( i 1 ) + r ( i ) r H ( i )
+ ( 1 η ) μ I M 2 + M 3 M 2
2 z ( i ) = r H ( i ) v ^ θ ( i 1 ) M P ( M 1 ) P
3if i = 0 , Φ a ( i ) = Φ s ( θ p ; i 1 ) , else,
Φ a ( i ) = η Λ s r ( i 1 ) + ( 1 η ) Φ s ( θ p ; i 1 )
r ( i ) z ( i ) ( 1 η ) μ v ^ θ ( θ ; i 1 ) 2 M P 4 M P
4 R ( i ) Δ v ^ θ ( i ) = Φ a ( i )
using MEDCD algorithm ⟹ Δ v ^ θ ( i ) , Λ s r ( i ) 0 Ψ MEDCD P
5 v ^ θ ( i ) = v ^ θ ( i 1 ) + Δ v ^ θ ( i ) 0 M P
Total: M 2 + M + 3 M P mults
3 M 2 + 6 M P P + Ψ MEDCD P adds
Table 3. Complexity comparison ( M 2 × M 2 complex-valued system).
Table 3. Complexity comparison ( M 2 × M 2 complex-valued system).
AlgorithmOperation×+
Direct Inversion R 1 ( i ) O ( M 3 )
Φ s ( θ p ) H R ( i ) 1 Φ s ( θ p ) ( M 2 + M ) P ( M 2 M ) P
RLS R 1 ( i ) 2.5 M 2 + 2.5 M 1.5 M 2
Φ s ( θ p ) H R ( i ) 1 Φ s ( θ p ) ( M 2 + M ) P ( M 2 M ) P
Y RLS : M 2 ( 2.5 + P ) + M ( 2.5 + P ) mult., M 2 ( 1.5 + P ) M P adds.
MEDCD-RLS v θ ( i ) M 2 + 2 M P 2 M 2 + 5 P M P +
+ P ( Ψ MEDCD )
Φ s ( θ p ) H v θ ( i ) M P ( M 1 ) P
Y MEDCD RLS : M 2 + 3 M P mult. 2 M 2 + 6 M P 2 P + P ( Ψ M E D C D ) adds.
MEDCD-RLS-DL v θ ( i ) M 2 + M + 3 M P 3 M 2 + 6 M P P +
P ( Ψ MEDCD )
Φ s H v θ ( i ) M P ( M 1 ) P
Y MEDCD RLS DL : M 2 + M + 4 M P mults, 3 M 2 + 7 M P 2 P + P ( Ψ M E D C D ) adds
Table 4. Hardware resources of MEDCD for DoA estimator.
Table 4. Hardware resources of MEDCD for DoA estimator.
Resources 8 × 8 16 × 16 32 × 32 64 × 64
Slice Registers 178 ( 1 % ) 190 (1%)202 (1%)214 (1%)
LUTs 398 ( 1 % ) 418 (1%)439 (1%)456 (1%)
RAMB36E1/FIFO36E1s 2 ( 1 % ) 2 (1%)2 (1%)4 (2%)
RAMB18E1/FIFO18E1s 1 ( 1 % ) 1 (1%)1 (1%)0
Table 5. Comparison of FPGA based matrix inversion techniques.
Table 5. Comparison of FPGA based matrix inversion techniques.
Matrix SizeTechniquesLogic SlicesSlice LUTsExtras
4 × 4 QRD [25]6046622024 DSP48Es
4 × 4 CORDIC-QRD [26]78112609
4 × 4 QRD [27]1474137852 DSP48Es
9 × 9 CORDIC-QRD [28]3530541113 DSP48s
16 × 16 Neumann series [29]533011,17445 DSP48s
16 × 16 MEDCD190418
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Quan, Z.; Zhang, Y.; Liu, J.; Wang, Y. Maximum Element Dichotomous Coordinate Descent Based Minimum Variance Distortionless Response DoA Estimator. Electronics 2021, 10, 2966. https://doi.org/10.3390/electronics10232966

AMA Style

Quan Z, Zhang Y, Liu J, Wang Y. Maximum Element Dichotomous Coordinate Descent Based Minimum Variance Distortionless Response DoA Estimator. Electronics. 2021; 10(23):2966. https://doi.org/10.3390/electronics10232966

Chicago/Turabian Style

Quan, Zhi, Yingying Zhang, Jie Liu, and Yao Wang. 2021. "Maximum Element Dichotomous Coordinate Descent Based Minimum Variance Distortionless Response DoA Estimator" Electronics 10, no. 23: 2966. https://doi.org/10.3390/electronics10232966

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop