CN109683519A - A kind of FPGA implementation method of adaptive algorithm - Google Patents

A kind of FPGA implementation method of adaptive algorithm Download PDF

Info

Publication number
CN109683519A
CN109683519A CN201811568900.0A CN201811568900A CN109683519A CN 109683519 A CN109683519 A CN 109683519A CN 201811568900 A CN201811568900 A CN 201811568900A CN 109683519 A CN109683519 A CN 109683519A
Authority
CN
China
Prior art keywords
matrix
signal
vector
floating
implementation method
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811568900.0A
Other languages
Chinese (zh)
Inventor
裴杰
王沛尧
朱岱寅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Aeronautics and Astronautics
Original Assignee
Nanjing University of Aeronautics and Astronautics
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Aeronautics and Astronautics filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN201811568900.0A priority Critical patent/CN109683519A/en
Publication of CN109683519A publication Critical patent/CN109683519A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Radio Transmission System (AREA)
  • Variable-Direction Aerials And Aerial Arrays (AREA)

Abstract

The present invention relates to a kind of FPGA implementation methods of adaptive algorithm, belong to digital signal processing technique field.This method comprises the following steps: 1, calculate the steering vector of the even linear array of four bays composition;2, calculate the autocorrelation matrix of incoming wave signal;3, calculate incoming wave signal autocorrelation inverse of a matrix matrix;4, calculate weight vector;5, weight vector is multiplied with the reception signal of four array elements, obtains output signal.The present invention can be realized adaptive-filtering, to realize the effect of adaptive array.

Description

A kind of FPGA implementation method of adaptive algorithm
Technical field
The present invention relates to a kind of FPGA of adaptive algorithm (field programmable gate array) implementation methods, belong to digital signal Processing technology field.
Background technique
Sef-adapting filter carries out operation by recursive algorithm, so that it is cannot to obtain related signal characteristic complete It is possible to complete filtering operation in the environment of knowledge.Under Stationary Random Environments, recursive algorithm restrains Mr. Yu after some successful iterations Optimal wiener solution in kind statistical significance;Under non-stationary environment, which improves a kind of tracking ability, because it can be with Track input data statistical property changes with time, as long as this variation is enough slowly.One as recursive algorithm application The parameter of a direct result, sef-adapting filter will be updated from an iteration to another an iteration whereby, filter parameter Become associated with the data.
Sef-adapting filter, which has, well runs under circumstances not known and tracks the ability that input statistic changes over time, So that sef-adapting filter becomes signal processing and automatically controls the powerful equipment of application field.It has been applied successfully to lead to The fields such as letter, radar, sonar.
The effect of four kinds of fundamental types of sef-adapting filter application is described as follows:
(1) it recognizes.In this kind of application for being related to identification, sef-adapting filter, which is used to provide one, in some sense can The linear model of enough best fitted unknown devices.
(2) inversion model.In the application of the second class, the effect of sef-adapting filter is to provide an inversion model, which can Best fitted unknown noise device in some sense.
(3) it predicts.Here, the effect of sef-adapting filter is one provided the current value of random signal in some sense It is a preferably to predict.
(4) interference is eliminated.In last a kind of application, sef-adapting filter is eliminated with optimum mode in some sense It include the unknown disturbances in baseband signal.
Arbitrary array element directional diagram, polarization and spacing work can be used in adaptive array.Its energy adjust automatically polarization, it is right The polarization decay of desired signal is minimum, maximum receiving direction can be adjusted to desired signal arrival bearing automatically, and by zero to tune To interference arrival bearing, therefore its anti-interference ability is splendid.
FPGA (Field Programmable Gate Array, field programmable gate array) is in PAL (Generic Array Logic, general array are patrolled by (Programmable Array Logic, programmable logic array), GAL Volume), develop on the basis of CPLD (Complex Programmable Logic Device, Complex Programmable Logic Devices) A kind of semi-custom circuit come, it not only compensates for the deficiency of custom circuit, while compared to pervious logical device, electricity Number amount greatly increases again.
It is compared, degree of parallelism and reality with traditional DSP (Digital signal processor, digital signal processor) When property is preferable, therefore FPGA is widely used in the fields such as High Speed Communication Interface Design, high-speed data acquisition, high-speed data processing.
Summary of the invention
The invention proposes a kind of FPGA implementation method of adaptive algorithm, combine hard inside adaptive algorithm and FPGA The advantage of part realizes the effect of adaptive array.
The present invention is to solve its technical problem to adopt the following technical scheme that
A kind of FPGA implementation method of adaptive algorithm, includes the following steps:
Step 1, the steering vector of the even linear array of four bays composition is calculated;
Step 2, the autocorrelation matrix of incoming wave signal is calculated;
Step 3, incoming wave signal autocorrelation inverse of a matrix matrix is calculated;
Step 4, weight vector is calculated;
Step 5, weight vector is multiplied with the reception signal of four array elements, obtains output signal.
Detailed process is as follows for the step 1:
The plural number of antenna is calculated by the position of the azimuth of antenna, pitch angle and each bay under same coordinate base Steering vector.
Detailed process is as follows for the step 2:
Quaternary antenna array, which is listed in after analog-to-digital conversion, Digital Down Convert, obtains signal plural number column vector, by the column vector It is multiplied to obtain the autocorrelation matrix of signal with its conjugate transposition.With continually entering for signal column vector, will acquire every time from Correlation matrix cycle accumulor, when accumulative frequency reaches setting value, by finally obtained autocorrelation matrix divided by accumulative frequency after Output.
Detailed process is as follows for the step 3:
For the quadravalence matrix exported in step 2, then the complementary minor for first asking its all seeks its adjoint matrix according to complementary minor Battle array and determinant finally will obtain the inverse matrix of the quadravalence matrix with divided by determinant.
Detailed process is as follows for the step 4:
The signal inverse matrix that the plural steering vector and step 3 obtained by step 1 obtains acquires the plural number power of bay Vector.
Detailed process is as follows for the step 5:
After carrying out conjugate transposition to the plural weight vector in step 4, it is answered with subsequent by the signal that down coversion obtains The multiplication of ordered series of numbers vector is simultaneously defeated.
Beneficial effects of the present invention are as follows:
The present invention realizes adaptive array using FPGA technology, according to the directional diagram that last simulation result is drawn, zero Sunken bosom can be more than that -80dB reaches -80.15dB, illustrate that antenna array is preferable to the inhibitory effect of interference signal;And useful Gain in sense illustrates that the main lobe of antenna array can effectively be directed at useful signal also close to maximum.Therefore, of the invention It so that antenna array received useful signal, inhibited interference signal, improve signal-to-noise ratio, reach the effect of adaptive array Fruit.
Detailed description of the invention
Fig. 1 is system block diagram of the invention.
Fig. 2 is that the FPGA that the conjugate transposition of several column vector sum itself is multiplied realizes block diagram.
Fig. 3 is that the FPGA of complex multiplication realizes block diagram.
Fig. 4 is the directional diagram that the weight vector that FPGA is acquired is drawn.
Fig. 5 is system flow chart of the invention.
Fig. 6 is that the FPGA of system realizes block diagram.
Specific embodiment
The invention is described in further details with reference to the accompanying drawing.
System block diagram of the invention is as shown in Figure 1.
In step 1, the steering vector of antenna array
Wherein steer indicates that the steering vector of antenna array, λ are incoming wave wavelength, and d is aperture length, and x is array element in reference axis In x coordinate, y is y-coordinate value of the array element in reference axis, and φ is antenna azimuth, and θ is the pitch angle of antenna, i.e., antenna with The angle of x/y plane.
Data and result are double-precision floating point forms in the present invention.When carrying out FPGA programming, for formula (1) multiplication, addition, division arithmetic in, call respectively floating multiplication plus, realize except IP kernel;And for the index in formula (1) Operation calls Cordic IP kernel to realize, sin and the cos output of Cordic core are the imaginary part and real part of steering vector.
In step 2, the incoming wave signal of antenna array is becoming plural column vector after analog-to-digital conversion, Digital Down Convert, Then
Rs=Rs+samplesampleH (2)
Rs is the plural autocorrelation matrix of incoming wave signal in formula, and sample is plural column vector, sampleHIt is sample Conjugate transposition.
Before first several column vector calculates, Rs zero, with the progress of sampling, incoming wave signal plural number column vector is continuous It updates, Rs is constantly cumulative, when cumulative number is equal to a setting value, by accumulation result divided by exporting after accumulative frequency, obtains The mean value of incoming wave signal autocorrelation matrix.
In FPGA programming, it is multiplied, leads to for the conjugate transposition for the several column vector sum itself being related in formula (2) It crosses and four floating-point multiplier cores, a floating-point adder core and a floating-point adder core is called to realize.It is assumed to be and asks sample·sampleHAs a result m row, the n-th column element b inmn, then two data input of floating-point multiplier 1 is respectively multiple Two data of the real part of the real part of m row element, line n element in ordered series of numbers vector sample, floating-point multiplier 2 input difference Two data for imaginary part, the imaginary part of line n element of m row element in plural column vector sample, floating-point multiplier 3 input The real part of the imaginary part of m row element in respectively plural column vector sample, line n element, two data of floating-point multiplier 4 Input is respectively the imaginary part of the real part of m row element, line n element in plural column vector sample, and the number of floating-point adder It is respectively the output of floating-point multiplier 1 and floating-point multiplier 2 according to input, the data input of floating-point subtracter is respectively floating-point multiplication The output of device 3 and floating-point multiplier 4, the output of such floating-point adder are bmnReal part, the output of floating-point subtracter is bmnImaginary part.Fig. 2 is that the FPGA that the conjugate transposition of several column vector sum itself is multiplied realizes block diagram.
In addition, calling different type Floating Point IP to carry out sequential operation, such as first floating-point multiplier core is called to be multiplied Method operation, since IP kernel is there are delay time, cannot be calculated first when recalling the results added of floating-point adder verification multiplication After the multiply-add value of one group of data, then next group of data are input to multiplier, the traffic latency time can be greatly increased in this way, answered The pending serial mode of institute is input to multiplier core by this, after the result of multiplier is input to adder, such ability It improves the processing speed of whole system, increase real-time.
In step 3, if the autocorrelation matrix of step 2 output is
Wherein a11, a12, a13, a14, a21..., a43, a44It is the element on autocorrelation matrix Rs corresponding position.
First acquire a11, a12, a13, a14, a21..., a43, a44Corresponding complementary minor A11, A12, A13, A14, A21..., A43, A44, then the determinant of Rs
| Rs |=a11·A11-a12·A12+a13·A13-a14·A14 (4)
The adjoint matrix of Rs
The then inverse matrix of autocorrelation matrix Rs
In FPGA programming, four floating-point multiplier cores, a floating-point adder core and a floating add are called Device core realizes complex float multiplication.Assuming that calculating PQ, then the two of floating-point multiplier 1 data are defeated for two plural numbers P, Q Enter the real part of the respectively real part of P, Q, two data input of floating-point multiplier 2 is respectively imaginary part, the imaginary part of Q of P, floating multiplication Two data input of musical instruments used in a Buddhist or Taoist mass 3 is respectively the imaginary part of the real part of P, Q, and two data input of floating-point multiplier 4 is respectively the void of P Portion, Q real part, and the data of floating-point subtracter input be respectively floating-point multiplier 1 and floating-point multiplier 2 output, floating addition The data input of musical instruments used in a Buddhist or Taoist mass is respectively the output of floating-point multiplier 3 and floating-point multiplier 4, and the output of such floating-point subtracter is The real part of PQ, the output of floating-point adder are the imaginary part of PQ.Fig. 3 is that the FPGA of complex multiplication realizes block diagram.
And for complex float division, then need to call four floating-point multiplier cores, a floating-point adder core, one it is floating Adder core and a Floating-point divider core are put to realize.Assuming that being calculated for two plural numbers P, QThen floating-point multiplier 1 The input of two data be respectively the real part of P, Q real part, two data input of floating-point multiplier 2 is respectively the imaginary part of P, Q Imaginary part, two data input of floating-point multiplier 3 is respectively the real part of the imaginary part of P, Q, and two data of floating-point multiplier 4 are defeated Enter the imaginary part of the respectively real part of P, Q, and the input of the data of floating-point adder is respectively floating-point multiplier 1 and floating-point multiplier 2 Output, floating-point subtracter data input be respectively floating-point multiplier 3 and floating-point multiplier 4 output, then by floating addition The output of musical instruments used in a Buddhist or Taoist mass, floating-point subtracter is deposited respectively, and floating-point multiplier and floating-point adder is recycled to calculate Q real and imaginary parts Quadratic sum finally utilizes Floating-point divider, and the output for the floating-point adder deposited before and the output of floating-point subtracter are distinguished It can be obtained divided by the quadratic sum of Q real and imaginary partsAs a result real and imaginary parts.
In step 4, the weight vector of antenna array
In formula: w is weight vector, Rs-1It is the inverse matrix of the autocorrelation matrix acquired in step 3, steer indicates antenna array Steering vector, steerHIt is the conjugate transposition of steer, abs indicates modulus value.
For the step, since dividend and divisor contain Rs in formula (7)-1Steer, therefore in FPGA programming Rs should first be calculated-1Steer is deposited as intermediate variable, is called after convenient.When realizing modulo operation, if For plural X, calculates abs (X), floating-point multiplier core, floating-point adder core and floating-point square root core should be called.First using floating Dot product musical instruments used in a Buddhist or Taoist mass and floating-point adder calculate the quadratic sum of X real and imaginary parts, then the quadratic sum of X real and imaginary parts are input to floating Square root core is put to get abs (X) result is arrived.
When antenna parameter is as shown in table 1, the directional diagram that the weight vector that operation FPGA program obtains is drawn is such as
Fig. 4.
Incoming wave wavelength (λ) 0.143m
Aperture length (d) 0.063m
The x-axis coordinate (x) of antenna array [0;1;0;1]
The x-axis coordinate (y) of antenna array [0;0;1;1]
Antenna elevation angle (θ) °
Antenna azimuth (φ) °
1 antenna parameter of table
In step 5, after the plural weight vector that step 4 is acquired carries out conjugate transposition, obtained with subsequent by down coversion Signal plural number column vector be multiplied, i.e. weighted sum finally exports.
In the step, floating-point multiplier, floating-point adder, floating-point subtracter is equally called to complete FPGA programming.
Fig. 5 is system flow chart of the invention.
In addition, the calculation amount of steering vector module is smaller relative to other modules such as autocorrelation matrix, do not need to repeat yet It calculates, therefore in the circulation of FPGA top state machine, it can be by steering vector module isolated operation, it is not necessary to guiding arrow first have been calculated Amount calculates autocorrelation matrix again, increases extra program runtime.
Fig. 6 is that the FPGA of system realizes block diagram.
The above is only some embodiments of the invention, it is noted that for the ordinary skill people of the art For member, without departing from the principle of the present invention, several improvement can also be made, these improvement should be regarded as guarantor of the invention Protect range.

Claims (6)

1. a kind of FPGA implementation method of adaptive algorithm, which comprises the steps of:
Step 1, the steering vector of the even linear array of four bays composition is calculated;
Step 2, the autocorrelation matrix of incoming wave signal is calculated;
Step 3, incoming wave signal autocorrelation inverse of a matrix matrix is calculated;
Step 4, weight vector is calculated;
Step 5, weight vector is multiplied with the reception signal of four array elements, obtains output signal.
2. a kind of FPGA implementation method of adaptive algorithm according to claim 1, it is characterised in that: the step 1 Detailed process is as follows:
The plural number guiding of antenna is calculated by the position of the azimuth of antenna, pitch angle and each bay under same coordinate base Vector.
3. a kind of FPGA implementation method of adaptive algorithm according to claim 1: the detailed process of the step 2 is such as Under:
Quaternary antenna array, which is listed in after analog-to-digital conversion, Digital Down Convert, obtains signal plural number column vector, by the column vector and its Conjugate transposition is multiplied to obtain the autocorrelation matrix of signal;With continually entering for signal column vector, the auto-correlation that will be acquired every time Matrix circular is cumulative, when accumulative frequency reaches setting value, by finally obtained autocorrelation matrix divided by exporting after accumulative frequency Quadravalence matrix.
4. a kind of FPGA implementation method of adaptive algorithm according to claim 3: the detailed process of the step 3 is such as Under:
For the quadravalence matrix exported in step 2, the complementary minor for first asking its all, then according to complementary minor ask its adjoint matrix and Determinant finally will obtain the inverse matrix of the quadravalence matrix with divided by determinant.
5. a kind of FPGA implementation method of adaptive algorithm according to claim 1: the detailed process of the step 4 is such as Under:
The signal inverse matrix that the plural steering vector and step 3 obtained by step 1 obtains acquires the plural weight vector of bay.
6. a kind of FPGA implementation method of adaptive algorithm according to claim 1: the detailed process of the step 5 is such as Under:
After carrying out conjugate transposition to the plural weight vector in step 4, by itself and the subsequent signal several column obtained by down coversion Vector is multiplied and exports.
CN201811568900.0A 2018-12-21 2018-12-21 A kind of FPGA implementation method of adaptive algorithm Pending CN109683519A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811568900.0A CN109683519A (en) 2018-12-21 2018-12-21 A kind of FPGA implementation method of adaptive algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811568900.0A CN109683519A (en) 2018-12-21 2018-12-21 A kind of FPGA implementation method of adaptive algorithm

Publications (1)

Publication Number Publication Date
CN109683519A true CN109683519A (en) 2019-04-26

Family

ID=66188632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811568900.0A Pending CN109683519A (en) 2018-12-21 2018-12-21 A kind of FPGA implementation method of adaptive algorithm

Country Status (1)

Country Link
CN (1) CN109683519A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110598271A (en) * 2019-08-22 2019-12-20 中国电子科技集团公司第二十九研究所 System and method for realizing SLC (Single chip logic) function of 4 auxiliary antennas based on FPGA (field programmable Gate array)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110084879A1 (en) * 2007-04-09 2011-04-14 Physical Domains, LLC Retrodirective transmit and receive radio frequency system based on pseudorandom modulated waveforms
CN103116170A (en) * 2013-01-16 2013-05-22 武汉大学 Indoor testing system of antenna array based interference rejection module of global navigation satellite system (GNSS)
CN105227227A (en) * 2015-10-15 2016-01-06 宿州学院 A kind of intelligent antenna beam based on small echo forms system and method
CN106646529A (en) * 2016-11-11 2017-05-10 深圳市天弓导航科技有限公司 GNSS antenna array anti-interference method based on multi-beam optimization
CN107092007A (en) * 2017-05-25 2017-08-25 电子科技大学 A kind of Wave arrival direction estimating method of virtual second order array extension
CN108631851A (en) * 2017-10-27 2018-10-09 西安电子科技大学 The Adaptive beamformer method deepened based on uniform linear array null

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110084879A1 (en) * 2007-04-09 2011-04-14 Physical Domains, LLC Retrodirective transmit and receive radio frequency system based on pseudorandom modulated waveforms
CN103116170A (en) * 2013-01-16 2013-05-22 武汉大学 Indoor testing system of antenna array based interference rejection module of global navigation satellite system (GNSS)
CN105227227A (en) * 2015-10-15 2016-01-06 宿州学院 A kind of intelligent antenna beam based on small echo forms system and method
CN106646529A (en) * 2016-11-11 2017-05-10 深圳市天弓导航科技有限公司 GNSS antenna array anti-interference method based on multi-beam optimization
CN107092007A (en) * 2017-05-25 2017-08-25 电子科技大学 A kind of Wave arrival direction estimating method of virtual second order array extension
CN108631851A (en) * 2017-10-27 2018-10-09 西安电子科技大学 The Adaptive beamformer method deepened based on uniform linear array null

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110598271A (en) * 2019-08-22 2019-12-20 中国电子科技集团公司第二十九研究所 System and method for realizing SLC (Single chip logic) function of 4 auxiliary antennas based on FPGA (field programmable Gate array)
CN110598271B (en) * 2019-08-22 2023-06-20 中国电子科技集团公司第二十九研究所 System and method for realizing 4-auxiliary antenna SLC function based on FPGA

Similar Documents

Publication Publication Date Title
CN110361691B (en) Implementation method of coherent source DOA estimation FPGA based on non-uniform array
EP0914723A1 (en) A signal processing method utilizing an eigenvector corresponding to the maximum eigenvalue of an autocorrelation matrix of received signals for an antenna array system
JP3885104B2 (en) Signal processing apparatus and signal processing method
del Rıo et al. Comparison between the matrix pencil method and the Fourier transform technique for high-resolution spectral estimation
CN112019284B (en) Narrow-band signal time difference calculation method and system under low signal-to-noise ratio
CN107124216A (en) A kind of Capon robust adaptive beamforming method and system for array error
CN115856767B (en) Reconfigurable intelligent super-surface-assisted wave arrival direction estimation method
CN108594166A (en) A kind of estimating two-dimensional direction-of-arrival method and device
Zhao et al. A division-free and variable-regularized LMS-based generalized sidelobe canceller for adaptive beamforming and its efficient hardware realization
CN113156383A (en) Radar signal anti-interference method and system based on domestic FPGA and data processing equipment
CN111580042A (en) Deep learning direction finding method based on phase optimization
CN109683519A (en) A kind of FPGA implementation method of adaptive algorithm
CN114884841A (en) Underdetermined parameter joint estimation method based on high-order statistics and non-uniform array
CN111859278B (en) Anti-dynamic interference polarized wave beam forming method, system, storage medium and application
Wang et al. Hardware implementation of smart antenna systems
CN111722178B (en) Far-field narrow-band signal incoming wave direction estimation method based on numerical solution of directivity model
Ma et al. Computation-efficient 2-D DOA estimation algorithm with array motion strategy
CN113759777A (en) Phased array antenna beam control method
Xu et al. Low-complexity broadband beampattern synthesis using array response control
CN106338743B (en) Combine adaptive nulling algorithm based on the null tone that CCD is resolved
Choi et al. Real-time design of a smart antenna system utilizing a modified conjugate gradient method for CDMA-Based Mobile Communications
Jiang et al. Space-time Broadband Beamforming Based on Constraint Matrix Reconstruction and Blocking Matrix Preprocessing
Ong Adaptive beamforming algorithms for cancellation of multiple interference signals
Liu et al. Bias analysis of MUSIC in the presence of mutual coupling
Kong et al. A new reduced-dimension GSC for target tracking and interference suppression

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190426

RJ01 Rejection of invention patent application after publication