Embodiments of the invention are generally directed to navigation and positioning and, more specifically for Global Navigation Satellite System (GNSS) anti-interference using array processing.
GNSS signals are vulnerable to in-band interference such as jamming and spoofing signals. A spoofer sends an intentionally interfering signal that aims to force GNSS receivers into generating false position/navigation solutions. A spoofing attack is more dangerous than jamming since the target receiver is not aware of the threat. The rapid advance in software defined radio (SDR) technology has made GNSS spoofers and jammers more flexible and less costly; therefore, GNSS interferers can be made available for civilian misapplications at a low cost.
Embodiments of the invention are directed to GNSS anti-interference using array processing. In one embodiment, a device may be configured to receive GNSS signals. The signals may include a superposition of GNSS signals from independent transmitter sources and a spoofing signal. The spoofing signal may include several pseudo random noise (PRN) codes originating from a single transmitter source. In one embodiment, the device may include multiple radio frequency (RF) inputs connected to multiple antenna elements in an array and may use a combining algorithm to produce a weighted sum of the antenna outputs. The resultant sum may be passed through an output port of the device that is configured to be coupled to an RF input port of a GNSS receiver.
In one embodiment, the device may include RF to Intermediate Frequency (IF) down-convertors (D/C). A plurality of RF IF down-converters corresponding to each antenna element may be used in order to down-convert the frequency band of each of the received GNSS signals (from RF) to a lower band (IF). Additionally, the device may include an Analog to Digital Converter (ADC). A plurality of ADCs corresponding to each D/C may sample the input IF signals into digital domain. The device may also include a processing unit. The processing unit may be configured to receive several ADC outputs and apply a combining algorithm in order to generate a single output signal. Also, the device may include a Digital to Analog Converter (DAC). In one embodiment, a single digital to analog converter corresponding to the output of the processing unit that converts the output digital samples into an IF analog signal. In one embodiment, the device includes an IF to RF up-convertor (U/C). The U/C module may up-convert the IF signal output of the DAC unit into an RF signal. In a particular embodiment, the device may be a stand-alone inline device.
In another embodiment, the device may be configured to have multiple inputs and multiple outputs. The multiple inputs may be combined using a combining algorithm to produce a plurality of weighted sums of the antenna outputs. In such an embodiment, the weighted sums may be passed through a plurality of output ports that are configured to be connected to RF input ports of a GNSS receiver comprising of a plurality of input ports. In such an embodiment, the device includes a plurality of D/C blocks, a plurality of ADC blocks, a processing unit, a plurality of DAC blocks corresponding to different IF outputs of the processing unit, and a plurality of IF to RF up-converters corresponding to the plurality of DACs. In one embodiment, the processing unit may be configured to receive the digitized IF signals corresponding to different ADCs and perform processing to generate multiple IF digital outputs.
In one embodiment, the processor may calculate pairwise numerical correlations of the digitized outputs from the antenna with a single digitized channel selected from the same set of inputs to compute weighting coefficients that are applied to the input signals resulting in a weighted combined output. For example, if there are N input antennas, the pairwise correlations are generated between one of these antennas and the remaining N−1 antennas. This results in N−1 correlation sums. These correlation sums may be used to estimate the spatial characteristics of the dominant undesired signal to form the orthogonal projection matrix onto the spoofing subspace. This matrix may be used to compute weighting coefficients that are applied to the processing unit inputs resulting in a weighted combined output that is passed to the DAC.
In another embodiment, pairwise numerical correlations of the plurality of digitized inputs with a single input selected from the same set of inputs are calculated, and the correlations are used to compute a plurality of weighting coefficients based on the orthogonal projection matrix that are applied to the plurality of inputs resulting in a plurality of weighted combined outputs. For example, if there are N antennas of the device then there are N−1 correlations where these correlations are used to estimate the spatial characteristics of the dominant undesired signal to form the orthogonal projection matrix onto the spoofing subspace. This matrix is then used to generate a plurality of weighting coefficient sets that are applied to inputs of the processing unit for the device resulting in a plurality of combined spoofing free outputs.
In one embodiment, the weighting coefficients are calculated based on (I) the absolute values of pairwise correlations of all the inputs with a delayed version of a single input selected from the same set of inputs, and (II) the pairwise correlations described above. The computed weighting coefficients are applied to the plurality of inputs resulting in a weighted combined output. For example, in the case of N antennas, first the correlation of the signal of each antenna with a delayed version of the received signal from a reference antenna, which is selected from the same set of antenna, is calculated. Specifically, N correlations are generated. Second, the pairwise numerical correlations of all the antenna outputs with the reference antenna are calculated. The absolute values of the first set of correlations in conjugation with the phase of the second set of correlations are employed to form an orthogonal projection matrix onto the spoofing subspace. This matrix is used to compute weighting coefficients that are applied to the inputs of the processing unit in embodiments with a single output.
Similarly, the correlation sums may be calculated and the orthogonal projection matrix is employed to compute a plurality of weighting coefficient sets for the embodiment with a plurality of outputs.
In one embodiment, the device receives a superposition of GNSS signals from independent transmitter sources and a spoofing signal and its several multipath reflections originating from a single transmitter source. In such an embodiment, the device may include multiple antennas and use a combining algorithm to produce a weighted sum of the down-converted antenna outputs with the resultant sum passed through the output up-converter which is coupled to the output port of the device that can be connected to RF input port of a conventional GNSS. The processor may then calculate pairwise numerical correlations of the IF inputs for a certain time interval, where these correlation sums are assembled into a covariance matrix where the covariance matrix is used to generate the combining weights and where the weighted sum is passed to the output port of the processing unit. For example, given N input antennas and for P consecutive snapshots NP(NP+1)/2 pairwise numerical correlations are generated based on the down-converted signal inputs. These are used to create an NP by NP covariance matrix. This covariance matrix is used for calculating the combining weights that are applied to the N received input samples to suppress the spoofing interference signal and its received multipath components which are the dominant received source of power.
In an embodiment, the processing unit may apply a modified version of the outer product decomposition algorithm (OPDA), constrained optimization method or other linear prediction methods or the subspace method to the covariance matrix in order to estimate the spatial characteristics of the line of sight spoofing signal and its multipath reflections to form the orthogonal projection matrix onto the spoofing subspace. In such an embodiment, these algorithms may be able to estimate the potential spatial characteristic of the reflected signals for different time delays.
In one embodiment, the processing unit compares the spatial characteristics of the multipath reflections for each delay to a threshold to detect and estimate the spatial characteristics of the potential reflections of the spoofing signal. Then, all the spatial characteristics of the line of sight spoofing signal and its potential reflections are used to form the orthogonal projection matrix used to compute weighting coefficients that are applied to the processing unit inputs resulting in a weighted combined output. The weights may only be calculated for those delays whose corresponding power is above the threshold. The LOS component may always be at delay ‘0’ in some embodiments.
When the multipath reflections are received with delays less than one chip duration of the GNSS signal (e.g., the GPS C/A code has a chip duration of 1 μsec) or when no reflection is present, the processing unit may compute pairwise numerical correlation sums of the input IF samples. In one embodiment, the correlation sums are assembled into a covariance matrix, where the eigenvector corresponding to the second largest eigenvalue of this covariance matrix is used as combining weights and where the weighted sum is passed to the output port of the processing unit. For example, instead of computing NP(NP+1)/2 pairwise numerical correlations, only N(N+1)/2 pairwise numerical correlations are generated based on the IF signal inputs. These are used to create an N by N covariance matrix. The eigenvalues of this covariance matrix are computed along with the corresponding eigenvectors. The dominant eigenvalue corresponds approximately to the stronger spoofing interference signal. Thus, selecting input weights that are orthogonal to the eigenvector corresponding to the dominant eigenvalue will suppress the spoofing interference signal from the output. In one embodiment, the weights are selected to correspond with the eigenvector of the second most dominant eigenvalue. The weighted output may be passed to the single output port of the processing unit in some embodiments.
In a further embodiment, a second output of the processing unit is generated from a weighting based on the 3rd largest eigenvalue resulting in two output ports of the device. One difference from other embodiments, is that an additional eigenvector weighting corresponding to the 3rd most dominant eigenvector is computed in addition to the output. These outputs give independent diversity combinations of the remaining authentic signals. This is of relevance as many GNSS receivers have provision for two input antennas for antenna diversity processing. In an embodiment, the Eigen weighting processing of the pre-processing block does not conflict with the diversity processing of the conventional two antenna input GNSS receiver. In a further embodiment, the 2nd to the Nth eigenvectors corresponding to the 2nd to the Nth largest eigenvalues are used as weighting coefficients forming N−1 outputs based on the device having N antennas.
In one embodiment, the device further includes a pre-processing block to normalize the amplitude of the input signals such that the variances of the outputs of the antennas are the same. The signal power emanating from the each individual antenna may be normalized to a specified level prior to forming the correlation pairs and covariance matrix.
Further, the device may include a user control input that in one position performs the processing methods described above, and in the other position bypasses the weighting and connects one or more of the input antennas to one or more of the output ports to the GNSS receiver. Alternatively, the manual switch may be replaced by an automatic spoofer sensing device such that if a spoofer is detected then the processing of the previous claims is invoked and if no spoofer is detected then the processing is bypassed. In such embodiments, spoofing detection could be based on a measurement of the signal strength at the output of the N input antennas or it could be based on feedback from the GNSS receiver.
In this disclosure, the following notation is adopted. Bold letters stand for vectors and capital bold letters stand for matrices.
( )H: Complex conjugate transpose
(A)−1: Inverse of matrix A
E{ }: Statistical expectation
∥a∥: Norm of vector a
∠x: Phase of complex value x
|x|: Amplitude of complex value x
⊥: Orthogonal projection
a·b: Denotes the inner product of a and b
I: Identity matrix
0: All zero vector
Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
The present embodiments are described in the context of a single antenna spoofing scenario where the spoofing transmitter is emitting several GPS-like signals that have similar temporal and spectral characteristics as the authentic GPS signals. Furthermore, their power level is also comparable to that of the authentic GPS signals which is under the noise floor.
In the present embodiments, a spatial processing method utilizing an antenna array 201 is described to suppress the spoofing signal at a low computational complexity. This technique performs spoofing mitigation before despreading the received signals. Operation of this method is based on scenarios where all spoofing signals are received from a similar direction and the authentic signals are received from different satellites at different directions. In one embodiment, the method detects the space sector from which the spoofing signals are received and then performs a spatial filtering to discard the spoofing signal. An embodiment of the system includes an antenna array that has two or more antenna elements. One advantage of the described methods is that antenna array calibration may be avoided. Embodiments of the system include a standalone inline device that connects the antenna array to a GNSS receiver; therefore, there is no need to modify the structure of conventional receivers. Additionally, this technique can be integrated with, e.g., next generation of anti-spoofing GNSS receivers.
The spoofing signals may be, for example, transmitted from terrestrial antennas; therefore, they are exposed to multipath propagation. As a consequence, the spoofing signal is not received from a single direction anymore and its reflections also can mislead a GNSS receiver. Thus, the present embodiments are also described in the context of a multipath environment. To this end, temporal processing may be incorporated in conjugation with the spatial processing. Furthermore, using this technique, the reflection of the spoofing signal can be detected much more easily compared to the case of spatial processing only.
The present embodiments have several advantages over the prior art, including low computational complexity, standalone operation, no array calibration is required, both Line of Sight (LOS) and multipath components of a spoofing signal may be eliminated, a direct relationship between spoofing signal power and mitigation, and the present embodiments may be faster than prior methods.
For example,
In some embodiments, the spoofer 101 is a point source transmitting several PRN codes, each of which having a comparable power level to that of the authentic signals. Therefore, the overall spatial energy of the spoofing signals provided by the spoofer 101 is considerably higher than that of the authentic ones provided by the satellites 102. This common feature of spoofing attacks and the inherent periodicity of authentic and spoofing signals, which employ periodic PRN codes in their structures, have been utilized in order to steer a null toward the direction where the signal with the highest amount of spatial energy (spoofing signals) is impinging on the antenna array 201. One of the benefits of the present embodiments is that it does not require array calibration or knowledge of the antenna array 201 configuration and orientation.
To further improve the performance of this beamformer, the proposed approach has been extended to the case that aims to not only steer a null toward the spoofing signals but also maximize the power of each authentic signal. This process also avoids the unintentional attenuation of some of authentic signals occurring in the null steering process.
In one embodiment, the GPS/GNSS device 103 may include an N-element antenna array 201 configuration. In this configuration, one antenna is chosen as the reference antenna. The reference coordinate system may be located at the reference antenna (r1) as shown in
where NAuth and NSpoof are the number of authentic and spoofing signals respectively and
F
m
a(nTs)=dma(nTs−τma)cma(nTs−τma)ejφ
F
k
s(nTs)=dks(nTs−τks)cks(nTs−τks)ejφ
In (1) and (2), the superscripts s and a refer to the spoofing and authentic signals respectively. Ts is the sampling interval and φ, f, p and τ are the phase, Doppler frequency, and signal power and code delay of the received signals respectively. In this model, d(nTs) and c(nTs) represent navigation data bits and PRN code. η is the complex additive white Gaussian noise vector with covariance matrix σ2I. b and am are spatial signature vector (SSV) of spoofing signals and mth authentic signal respectively. They incorporate all spatial characteristics of authentic and spoofing signals which can be written as
b=C
a
m
=Cā
m (3)
where
where {circumflex over (d)}msat and {circumflex over (d)}spoof are unit vectors pointing from the origin of the coordinate system towards the mth GPS satellite and the spoofer, respectively. di1ant is the vector pointing from the origin to the ith antenna phase center and λ is the GPS carrier wavelength at L1 frequency. In (3) and (4), ām and
f
H
b=0
∥f∥≠0. (5)
The constraint avoids the trivial solution which is f=0. Therefore, by applying f to the received antenna array signals, the spoofing signals are suppressed in a beamformer output as
Embodiments of the anti-spoofing method may be implemented by functional blocks including a spoofing SSV estimation unit 502, a null steering unit 503, and power maximization unit(s) 504. In addition, the antenna array 102 may be coupled to front-end RF equipment 501. The anti-spoofing device 202 may further include a projection unit 504 and an antenna combiner 505. The antenna combiner 505 may provide a signal to the GPS/GNSS Receiver 203.
The spoofing and authentic signals are spread over the GPS bandwidth and are buried below the noise floor. As such, it is hard to detect them before despreading. The conventional despreading process requires an extensive two-dimensional search in time and frequency domains to obtain the proper code delay and Doppler frequency for each signal. However, the spoofer spatial information can be extracted at a much lower computational complexity using the spoofing SSV estimation unit 502. This technique relies on the presence of a dominant spatial power in order to extract the spoofing SSV without any need for a two-dimensional time and frequency search for individual authentic and spoofing PRN codes. For this purpose, two characteristics of spoofing signals are described. First, the spoofer 101 is a point source transmitting several PRN codes each of which having a comparable power level to that of the authentic signals. Therefore, the energy of all spoofing signals is accumulated constructively in spatial domain and as such the overall spatial energy of the spoofing signals is considerably higher than that of the authentic signals. The second characteristic is the periodicity of the spoofing and authentic signals which is due to the inherent periodicity of PRN codes utilized in their structures.
In one embodiment, vector y is constructed as
where
and K is the number of samples which are averaged and T is one epoch interval (one period of PRN codes). In (8), spatial information of received spoofing signals has been extracted by multiplying different terms whose noise parts are spatially or temporally uncorrelated to one another to avoid noise amplification. θi is approximately equal to
In this relation, the approximation comes from the fact that the spatial energy of authentic terms are not summed up constructively while the spatial energy of spoofing terms are combined constructively, and all other crosscorrelation and noise terms are significantly reduced after temporal filtering (averaging over K samples). In (8), βi can be approximated as
in which d is a constant complex value which is equal to
In (10), the noise terms and all other crosscorrelation terms between different PRN codes, which are not despread, are significantly reduced after averaging. By substituting θi from (9) and βi from (10) in (7), y becomes
Hence, the spoofing SSV multiplied by a constant complex value is computed by applying the above processing technique.
In one embodiment, the null steering unit 503 may compute values for steering nulls to the direction of the spoofer 101. From (12), the orthogonal projection to the spoofing subspace can be obtained as
Hence, f can be obtained as
f=P
⊥
h, (14)
where h is an N×1 arbitrary vector with ∥h∥=1. It can be verified that f in (14) satisfies the relation in (5) as
Thus, if the orthogonal projection is applied to vector r as
the spoofing signals are removed from the received antenna array signals for further antenna array processing. Moreover, by substituting f from (14) into (6) as
v(nTs) is obtained in which the spoofing signals are removed. This signal can be fed to conventional GNSS receivers.
In one embodiment, the power maximization unit 504 may maximize the power of the actual GNSS signals with reference to the spoofer signals. As mentioned before, h is an arbitrary vector. In (17), depending on the value of h, term hHP⊥Ham may cause amplification for some authentic signals or it may cause attenuation for those signals located in or close to the beam pattern null. The proposed null steering method can be extended to the case that not only suppresses the spoofing signals but also has maximum output power for each authentic signal by choosing different values for h. Considering (17), the power of mth authentic signal after projection is maximized if
In fact, term hHP⊥Ham in (17) is maximized if the equation in (18) is held. Since am s are unknown SSVs (depending on array configuration, satellite position and gain/phase mismatch of antenna elements), they cannot be directly estimated. However, it will be shown that hm s can be estimated if the estimates of Doppler frequencies of authentic signals are available (e.g. one approach can take advantage of estimated Doppler frequencies from tracking loop feedbacks of the receiver). To this end, a low computational complexity process is proposed. The conjugate of one period of the reference antenna signal is employed to remove PRN codes of vector x in (16). The output sample vector at wth snapshot is
By knowing fm for the mth authentic signal, the exponential term can be removed from this signal. Averaging over L snapshots results in the reduction of other authentic signals as
where the first term is the significant one. Therefore, qm is approximately equal to
q
m
≈KLp
m
a
P
⊥
a
m. (21)
Considering (18), for the mth authentic signal, hm can be estimated as
Therefore by substituting ĥm in (14), the optimal gain vector fm, which maximizes the output power of the mth authentic signal and suppresses the spoofing signals, is obtained as
f
m
=P
⊥
ĥ
m. (23)
By substituting fm from (23) in (6), the beamformer output that has no spoofing signals and has maximum power for the mth authentic signal is obtained as
The projection block 505 removes the spoofing signals from the received signal vector and the antenna combiner 506 combines different branches of spoofing free signals. When a Doppler feedback is present, the power maximization block 504 can maximize the received SNR for individual authentic PRNs and generate different outputs (vm) corresponding to different authentic PRNs. Otherwise, an arbitrary weighting vector (h) will be considered for antenna combining and generating a single output (v).
Herein, in order to identify the multipath components of a spoofing signal, the techniques used for blind channel estimation of multi input multi output (MIMO) systems can be applied especially those ones which are based on the second order statistics (SOS). The estimates of channel coefficients by employing both spatial and temporal processing are related to the SSVs of the incident signals. By estimating the SSVs of the spoofing signal and its reflections, then a beamformer is designed to put nulls in the direction of these undesired signals.
Assume that an antenna array has arbitrary configuration with N elements. M authentic GNSS signals and one spoofing signal (plus its multipath components) are received by this antenna array. Without loss of generality, m=0 is assumed as the spoofing signal index (from hereafter, the spoofing PRNS are not represented separately. Instead, a single signal which includes all its PRNs is denoted as a spoofing signal). For simplicity, one sample per chip has been assumed (the method can be extended to the multi-rate/multi-antenna scenario). Moreover, assume that the maximum available delay for multipath components among all desired and undesired signals is equal to LCh Chips. Received N×1 baseband signal vector of all incident signals can be expressed as
where si-lm is the sample of mth signal for ith time index received with the delay of l compared to the LOS signal. ηi is spatial-temporal white Gaussian noise vector and alm is an (N×1) vector that represents the channel coefficients for the signal components of mth received signal whose delay are l samples compared to the LOS component. In fact, alm is related to the combination of SSVs (or in the case of calibrated array, the array manifold vectors or steering vectors) of all signal components received with the same delay.
In one embodiment, the anti-interference device 202 may find an optimal gain vector denoted by f to satisfy the following conditions:
f
H
a
l
0=0 if (al0)Hal0>λTh l=0,1, . . . LCh
∥f∥=1 (26)
where λTh is a threshold set from relative power of the spoofing signal and authentic ones which can be obtained from channel coefficient estimates. The constraint avoids the trivial solution which is an all zero vector. By applying f to the received antenna array signal vector, the spoofing signal and its multipath reflections are suppressed in the beamformer output.
As mentioned before, it is hard to discriminate between resolvable multipath components of the spoofing signal from the authentic signals by only spatial processing. By considering the signal model as (25) and forming the correlation matrix from spatial samples over P consecutive snapshots P>LCh, the correlation coefficients can be estimated. The augmented correlation matrix can be formed as follows. In (25), ri can be expressed in more compact form as
where
Assume that the vector {right arrow over (r)}i is formed from P consecutive snapshots as
It can be verified that
{right arrow over (r)}
i
=
{right arrow over (s)}
i+{right arrow over (η)}i (30)
where is a block Toeplitz matrix defined as
Noise and the received signals are assumed to be independent. Hence, the correlation matrix is equal to
where σ2 is the variance of the noise and I is an identity matrix.
For simplicity, it may be assumed that the received PRN codes are uncorrelated. (i.e. they either have different PRN codes or their corresponding delays are different. It may also be assumed that the spoofing signals are not synchronized with the authentic signals. Therefore, due to the autocorrelation and cross correlation property of the PRN codes, correlation between each pair (including both spoofing and authentic PRN codes) of them is negligible. Hence, E{{right arrow over (s)}i{right arrow over (s)}iH} can be assumed as a block diagonal matrix as
Assume that Ā is defined as
The first column of Ā include the all sufficient information for suppressing the spoofing signal and its reflections. By developing the OPDA for the case that the diagonal elements of Λ in (34) are not equal (due to different power of the incident signals), it can be shown that {right arrow over (a)}0 can be estimate by performing the following singular value decomposition (SVD) as
SVD(Δ−JNΔ(JN)H) (36)
such that {right arrow over (a)}0 is approximately equal to the singular vector corresponding to the largest singular value of matrix Δ−JNΔ(JN)H. In (36), J is a shifting matrix defined as
and Δ can be obtained from the correlation matrix .
By dividing the estimated {right arrow over (a)}0 to P segments and comparing each segment to a threshold denoted by λTh, delays and theirs corresponding channel coefficients at which there are potential reflections of the spoofing signal can be detected. For l=0, 1, . . . , LCh, if (al0)H al0>λTh, al0 is deemed as a steering vector of a multipath component or combination of the steering vectors of several multipath components. Assume B delays are detected and the corresponding channel coefficients are put in a N×B matrix defined as B. Matrix P⊥ which is orthogonal projection to the spoofing subspace can be obtained as
Thus, if the orthogonal projection is applied to the received signal vector as P⊥ri, the spoofing signal is removed from the received antenna array 201 signals.
In multipath-free (i.e., open sky) case or in the case of presence of unresolvable multipath components, the LCh=0 and P=1. The correlation matrix in (33) reduces to
that only includes spatial samples. In this case the channel coefficient (or SSV) of the spoofing signal a00 can be estimated from the following eigenvalue problem
where μ is equal to the eigenvector corresponding to the largest eigenvalue of R. Hence, the orthogonal projection to the spoofing subspace can be obtained as
In one embodiment, the second largest eigenvector maximizes the power of the authentic signal components. Therefore, choosing this vector as the array gain vector allows the power of the authentic signals pass through the beamformer as much as possible whereas the spoofing signal is suppressed.
The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of the invention will be described hereinafter which form the subject of the claims of the invention. It should be appreciated that the conception and specific embodiment disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present invention. It should also be realized that such equivalent constructions do not depart from the invention as set forth in the appended claims. The novel features which are believed to be characteristic of the invention, both as to its organization and method of operation, together with further objects and advantages will be better understood from the following description when considered in connection with the accompanying figures. It is to be expressly understood, however, that each of the figures is provided for the purpose of illustration and description only and is not intended as a definition of the limits of the present invention.
Number | Date | Country | |
---|---|---|---|
61719260 | Oct 2012 | US |