Adaptive beamforming method and IP core for reconfigurable digital array
By dynamically controlling the enable state of the digital array and calculating the interval vector, and generating static beam weight coefficients, the problem of lack of reconfigurability and adaptability in the prior art is solved, and flexible editing and efficient signal processing of the digital array are realized.
Patent Information
- Application Number
- CN202510279442.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-11
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2045-03-11
AI Technical Summary
The prior art lacks reconfigurability and adaptability in adaptive array antennas, and cannot effectively deal with the situation where the dimensions of the signal data matrix are unknown. The static beam weight calculation method needs to be redesigned to adapt to different array arrangements, making it difficult to achieve dynamic adjustment.
By obtaining the array element state vector, controlling the enable state of the digital array, dynamically compute the row-column interval vector and the mask vector of static weights, generate static beam weight coefficients in real time and reconstructing the static weight coefficient vector, realizing dynamic covariance matrix calculation and matrix inversion.
It realizes the highly flexible editing of digital arrays and improves the generalized performance, supports user-defined array arrangement and parameter settings, dynamically adjusts array element arrangement to adapt to different signal environments, and improves anti-interference ability and signal-to-noise ratio.
Smart Images

Figure CN119788141B_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of signal processing, and in particular to an adaptive beamforming method and an IP core of a reconfigurable digital array. Background Art
[0002] Digital array antennas use digital signal processing technology to achieve precise beam directivity by independently controlling the signal of each array element. This design supports dynamic adjustment of the effective structure of the array according to mission requirements, thereby adapting to different signal environments and interference situations. Compared with traditional fixed arrays, digital arrays have obvious advantages in real-time and flexibility, and are particularly suitable for complex and changing application scenarios, such as target tracking, communication, and radar imaging. Adaptive beamforming technology is a technology that optimizes signal reception by dynamically adjusting the weights of array elements. Unlike static beamforming, adaptive beamforming uses the optimal beamforming criterion, such as the linearly constrained minimum variance beamforming criterion (LCMV), based on real-time echo data to calculate the weight vector that adapts to the environment. Under the LCMV criterion, the array can form gain in a specified direction while suppressing signals in the interference direction, thereby improving the signal-to-noise ratio of the signal and the anti-interference ability of the system. This adaptive adjustment capability makes adaptive beamforming particularly effective in applications in complex environments.
[0003] Southwest Institute of Electronic Technology has published a method for processing anti-interference of digital beam synthesis of adaptive array antenna in its patent document "Anti-interference processing method of digital beam synthesis of adaptive array antenna" (patent application number CN202110596429.1, publication number CN113472371A). This method generates adaptive beam weight coefficients of known and fixed arrays by designing an autocorrelation matrix inversion module and a weight coefficient calculation module. This method can be used for various static arrays with known array element arrangements, such as uniform linear arrays and uniform circular arrays, and has preliminary versatility.
[0004] The method proposed by the Southwest Institute of Electronic Technology in its public patent document "Anti-interference processing method for digital beam synthesis of adaptive array antennas" fails to realize the calculation and inversion of the covariance matrix when the dimension of the signal data matrix is unknown in the calculation of the autocorrelation matrix inversion module, and lacks reconfigurability. In addition, its weight coefficient calculation module needs to redesign the static beam weight calculation method for different array arrangements, which lacks portability and is difficult to adapt to the needs of digital array systems to dynamically adjust the array element arrangement. Summary of the invention
[0005] In order to solve the above problems existing in the prior art, the present invention provides an adaptive beamforming method and IP core of a reconfigurable digital array, which specifically include:
[0006] In a first aspect, the present invention provides an adaptive beamforming method for a reconfigurable digital array, comprising:
[0007] According to the acquired array element state vector , controls the enabling state of each array element in the reconfigurable digital array. The reconfigurable digital array is Matrix, where Represents the total number of rows of the reconfigurable digital array, represents the total number of columns of the reconfigurable digital array, and is an integer greater than 0, the array element state vector The length is ;
[0008] According to the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the center row of the valid array area and the valid array area corresponding to the reconfigurable digital array , the column number of the center column of the valid array area , row enable vector Used to store the enable state of each row in the reconfigurable digital array, the column enable vector Used to store the enabled state of each column in the reconfigurable digital array, the enabled row is a row where an enabled array element exists, the enabled column is a column where an enabled array element exists, and there is an enabled array element in each row and each column in the effective array area;
[0009] Enable vectors by row , column enable vector , the row number of the center row of the valid array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors , a row-spaced vector Column spacing vector used to store the spacing of each enabled row in the reconfigurable digital array relative to the center row of the active array area for storing the spacing of each enabled column in the reconfigurable digital array relative to a center column of an active array area;
[0010] According to the array element state vector , row enable vector and column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the enabled state of each re-encoded array element ;
[0011] According to the row spacing vector and column-spaced vectors , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector ,The target parameters include the ratio of the desired elevation angle, the desired azimuth angle, the array element spacing, and the carrier wavelength;
[0012] According to the azimuth static beam weight vector and the pitch-dimensional static beam weight vector and the mask vector of static weights , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector ;
[0013] According to the new numbering order corresponding to each enabled array element, the signal data received by each enabled array element is stored in the target reconfigurable digital array, the covariance matrix of the target reconfigurable digital array is calculated and inverted, and the target reconfigurable digital array is a behavior , listed as The matrix of Indicates the number of signal sampling points;
[0014] According to the inverse matrix of the covariance matrix of the target reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector ;
[0015] Through the two-dimensional adaptive beam weight vector The signal data of each enabled array element is weighted and summed to obtain an adaptive beam.
[0016] In a second aspect, the present invention further provides an IP core for implementing adaptive beamforming of a reconfigurable digital array, comprising:
[0017] Input configuration module, array retrieval module, static weight calculation module, data processing module and adaptive weight calculation module are designed in parallel between modules and within modules;
[0018] Input configuration module, used to obtain target parameters and array element state vector , according to the array element state vector Control the enabled state of each array element in the reconfigurable digital array. The reconfigurable digital array is Matrix, where Represents the total number of rows of the reconfigurable digital array, represents the total number of columns of the reconfigurable digital array, and is an integer greater than 0, the array element state vector The length is ,The target parameters include the ratio of the desired azimuth angle, the desired elevation angle, the array element spacing, and the carrier wavelength;
[0019] Array retrieval module, used to retrieve the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the center row of the valid array area and the valid array area corresponding to the reconfigurable digital array , the column number of the center column of the valid array area , row enable vector Used to store the enable state of each row in the reconfigurable digital array, the column enable vector Used to store the enabled state of each column in the reconfigurable digital array, the enabled row is a row where an enabled array element exists, the enabled column is a column where an enabled array element exists, and there is an enabled array element in each row and each column in the effective array area;
[0020] Static weight calculation module, used to enable vectors according to rows , column enable vector , the row number of the center row of the valid array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors , a row-spaced vector Column spacing vector used to store the spacing of each enabled row in the reconfigurable digital array relative to the center row of the active array area Used to store the spacing of each enabled column relative to the center column of the effective array area in the reconfigurable digital array; according to the array element state vector , row enable vector and column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the enabled state of each re-encoded array element ; Based on the row spacing vector and column-spaced vectors , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector , the target parameters include the expected pitch angle, the expected azimuth angle, the ratio of the array element spacing and the carrier wavelength; according to the azimuth dimension static beam weight vector and the pitch-dimensional static beam weight vector and the mask vector of static weights , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector ;
[0021] The data processing module is used to store the sampled signal data received by each enabled array element into the target reconfigurable digital array according to the new numbering sequence corresponding to each enabled array element, calculate the covariance matrix of the target reconfigurable digital array and invert it, and the target reconfigurable digital array is a behavior , listed as The matrix of Indicates the number of signal sampling points;
[0022] Adaptive weight calculation module, used to calculate the inverse matrix of the covariance matrix of the target reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector ; Through the two-dimensional adaptive beam weight vector The signal data of each enabled array element is weighted and summed to obtain an adaptive beam.
[0023] Beneficial effects of the present invention:
[0024] The adaptive beamforming method and IP core of the reconfigurable digital array provided by the present invention are based on the acquired array element state vector , controls the enabling state of each array element in the reconfigurable digital array; according to the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the center row of the valid array area and the valid array area corresponding to the reconfigurable digital array , the column number of the center column of the valid array area ; Enable vectors by row , column enable vector , the row number of the center row of the valid array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors ; According to the array element state vector , row enable vector and column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the enabled state of each re-encoded array element ; Based on the row spacing vector and column-spaced vectors , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector ; According to the azimuth static beam weight vector and the pitch-dimensional static beam weight vector and the mask vector of static weights , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector ; According to the new numbering sequence corresponding to each enabled array element, the signal data received by each enabled array element obtained by sampling is stored in the target reconfigurable digital array, and the covariance matrix of the target reconfigurable digital array is calculated and inverted; according to the inverse matrix of the covariance matrix of the target reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector ; Through the two-dimensional adaptive beam weight vector The signal data of each enabled array element is weighted and summed to obtain an adaptive beam. It supports user-defined array arrangement and array parameter settings, realizes highly flexible editing of array arrangement by users, and improves the universal performance of the method. Through dynamic array retrieval, dynamic array spacing vector calculation, static weight mask vector calculation, and static weight coefficient vector calculation and reconstruction, the static beam weight coefficient reconstruction design is realized. Through matrix reconstruction, dynamic covariance matrix calculation and dynamic matrix inversion, the reconstruction design of array data covariance matrix inversion module is realized.
[0025] The present invention will be further described in detail below with reference to the accompanying drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] Figure 1 A schematic flow chart of an adaptive beamforming method for a reconfigurable digital array provided by the present invention;
[0027] Figure 2 An example diagram of a processing result provided by the present invention;
[0028] Figure 3 An example diagram of another processing result provided by the present invention;
[0029] Figure 4 This is another example diagram of a processing result provided by the present invention. DETAILED DESCRIPTION
[0030] The present invention is further described in detail below with reference to specific embodiments, but the embodiments of the present invention are not limited thereto.
[0031] In view of the problem that the prior art lacks reconfigurability and adaptability, the present invention proposes a highly reconfigurable adaptive beamforming design for dynamic arrays. It supports users to flexibly configure the enabled state of any array element in the digital array. Dynamically calculate the spacing vector of the row and column positions of the effective array and its center row and column and the mask vector of the static weight, generate static beam weight coefficients in real time and reconstruct the static weight coefficient vector. At the same time, by reconstructing the input data matrix, design the calculation process of the dynamic covariance matrix and its inverse matrix. Through the above design, the high reconfigurability of the algorithm calculation process is achieved. Furthermore, the intellectual property core (IP core) generated by the method of the present invention can generate an adaptive adaptive beam weight coefficient vector as the digital array arrangement changes dynamically. In view of the problem that the prior art lacks portability, the IP core is designed with a configuration port to support users to flexibly configure the enabled state of the array element, as well as key parameters such as the expected azimuth angle, expected pitch angle, carrier wavelength and array element spacing ratio, so as to improve the universal performance of the algorithm.
[0032] Figure 1 The present invention provides an adaptive beamforming method for a reconfigurable digital array, comprising:
[0033] S101, according to the acquired array element state vector , controls the enabling state of each array element in the reconfigurable digital array.
[0034] Among them, the reconfigurable digital array is matrix, Represents the total number of rows of the reconfigurable digital array, represents the total number of columns of the reconfigurable digital array, and is an integer greater than 0, the array element state vector The length is .
[0035] In this application, the enabled state is divided into enabled and disabled. Among them, an array element in the enabled state is an enabled array element, and an array element in the disabled state is a disabled array element; a row in the enabled state is an enabled row, and a row in the disabled state is a disabled row; a column in the enabled state is an enabled column, and a column in the disabled state is a disabled column.
[0036] Optionally, based on the acquired array element state vector , controlling the enabling state of each array element in the reconfigurable digital array, including the following steps a1-a3:
[0037] a1. Starting from the lower left corner of the reconfigurable digital array, all the array elements in the reconfigurable digital array are numbered in the order of increasing from bottom to top along each column and advancing from left to right column by column to obtain the array element number corresponding to each array element. The corresponding expression is:
[0038] ,
[0039] in, Indicates the first Row, No. The array element number corresponding to the array element in the column, , represents the row index of the reconfigurable digital array, , represents the column index of a reconfigurable numeric array, .
[0040] a2. Create an array element state vector using the array element number of each array element in the reconfigurable digital array as the index value .
[0041] a3. Based on the first preset rule, configure the array element state vector , to control the enabling state of each array element in the reconfigurable digital array.
[0042] The first preset rule is: if the array element state vector If the element in corresponds to an enabled element, the element value is set to 1, otherwise it is set to 0.
[0043] For example, Figure 2 The figure is a schematic diagram of a reconfigurable digital array with 5 rows and columns. The filled area in the figure is the enabled array element. The row number of the reconfigurable digital array increases from bottom to top; the column number increases from left to right; the array element number starts from the lower left corner, increases from bottom to top along the column, and advances from left to right column by column until all the array elements of the digital array are encoded. The array element number increases from 1 to 25, as shown in Figure 2 As shown, the 2nd, 4th, 6th, 7th, 9th, 10th, 16th, 17th, 19th, 20th, 22nd, and 24th elements of the array element state vector are 1, and the remaining elements are 0. The array element state vector is: .
[0044] S102, according to the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the center row of the valid array area and the valid array area corresponding to the reconfigurable digital array , the column number of the center column of the valid array area .
[0045] Among them, the row enable vector Used to store the enable state of each row in the reconfigurable digital array, the column enable vector It is used to store the enabling state of each column in the reconfigurable digital array. The enabling row is the row where the enabling array element exists, and the enabling column is the column where the enabling array element exists. There is an enabling array element in each row and each column in the effective array area.
[0046] Optionally, based on the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , the row number of the center row of the valid array area , the column number of the center column of the valid array area , including the following steps b1-b10:
[0047] b1, create a length The first temporary vector.
[0048] b2. According to the array element state vector , obtain the enabling state of any row of array elements in the reconfigurable digital array, update the first temporary vector according to the enabling state of the acquired array elements, perform an OR operation on the element values of all elements in the updated first temporary vector, and obtain the enabling state of the corresponding row. The corresponding expression is:
[0049] ,
[0050] Among them, the operator Represents an assignment operation. Represents the first The first temporary vector corresponding to the row element The element value of the element, Represents the array element state vector Middle The element value of the element corresponds to the first element in the reconfigurable digital array. Row, No. The enabled state of the array element.
[0051] b3. Based on the second preset rule, obtain the row enable vector according to the enable state of each row in the reconfigurable digital array. .
[0052] Wherein, based on the second preset rule: if the row enable vector If the element in corresponds to a row in the enabled state, the element value is set to 1, otherwise it is set to 0.
[0053] b4. Enable vectors based on rows , get the number of enabled rows The sum of the line numbers of the enabled lines , the corresponding expression is:
[0054] ,
[0055] ,
[0056] in, represents the row number of the enabled row in the reconfigurable digital array. It is understood that is not continuous, and its corresponding value range is the row index of the reconfigurable digital array A subset of the range of values.
[0057] b5. According to the number of enabled rows The sum of the line numbers of the enabled lines , get the row number of the center row of the valid array area , the corresponding expression is:
[0058] .
[0059] b6, create a length The second temporary vector.
[0060] b7. According to the array element state vector , obtain the enabled state of any column of array elements in the reconfigurable digital array, update the second temporary vector according to the enabled state of the array elements obtained, perform an OR operation on the element values of all elements in the updated second temporary vector, and obtain the enabled state of the corresponding column. The corresponding expression is:
[0061] ,
[0062] in, Represents the first The first temporary vector corresponding to the column array element The element value of the element, Represents the array element state vector Middle The element value of the element corresponds to the first element in the reconfigurable digital array. Row, No. The enabled state of the array element.
[0063] b8. Based on the third preset rule, according to the enabling state of each column in the reconfigurable digital array, a column enabling vector is obtained. .
[0064] Wherein, based on the third preset rule: if the column enables vector If the element in corresponds to a column that is enabled, the element value is set to 1, otherwise it is set to 0.
[0065] b9. Enable vectors based on columns , get the number of enabled columns The sum of the column numbers of the enabled columns , the corresponding expression is:
[0066] ,
[0067] ,
[0068] in, represents the column number of the enabled column in the reconfigurable digital array. It is understood that is not continuous, and its corresponding value range is the column index of the reconstructible digital array A subset of the range of values.
[0069] b10, according to the number of enabled columns The sum of the column numbers of the enabled columns , get the column number of the center column of the valid array area , the corresponding expression is:
[0070] .
[0071] For example, in Figure 2 In the example, the first, second, fourth, and fifth elements of the row and column enable vectors are 1, and the remaining elements are 0; the number of enabled rows and columns is 4, and the center row and column number of the valid array area is 3, that is, the row enable vector , column enable vector , the sum of the line numbers of enabled lines , the sum of the column numbers of enabled columns , the number of enabled rows , the number of enabled columns , the row number of the center row of the valid array area , the column number of the center column of the valid array area .
[0072] S103, enable vector according to row , column enable vector , the row number of the center row of the valid array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors .
[0073] Among them, the row spacing vector Column spacing vector used to store the spacing of each enabled row in the reconfigurable digital array relative to the center row of the active array area Used to store the spacing of each enabled column in the reconfigurable digital array relative to the center column of the active array area.
[0074] Optionally, enable vectors by row , column enable vector , the row number of the center row of the valid array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors , including the following steps c1-c4:
[0075] c1, create a length The row spacing vector .
[0076] c2, row-based enable vector , obtain the row numbers of the enabled rows in the reconfigurable digital array, and calculate the row numbers of the enabled rows and the center row number of the valid array area according to the obtained row numbers of the enabled rows , get the row spacing between each enabled row in the reconfigurable digital array and the center row of the valid array area, and update the row spacing vector according to the row spacing corresponding to each enabled row , the corresponding expression is:
[0077] ,
[0078] ,
[0079] ,
[0080] in, Represents a row-spaced vector Medium Element The value of corresponds to the first The row spacing between rows and the center row of the active array area, is a row-spaced vector The length of the updated elements in is The row spacing vector The effective subvector of is a row-spaced vector The length of the elements that have not been updated in is The row spacing vector Invalid subvector of .
[0081] c3, create a length Column-spaced vector of .
[0082] c4, enable vector based on column , obtain the column number of the enabled column in the reconfigurable digital array, and according to the obtained column number of each enabled row and the column number of the center column of the valid array area , obtain the column spacing between each enabled column in the reconfigurable digital array and the center column of the effective array area, and update the column spacing vector according to the column spacing corresponding to each enabled column , the corresponding expression is:
[0083] ,
[0084] ,
[0085] ,
[0086] in, Represents a column-spaced vector Middle The value of the element corresponds to the first The column spacing between columns and the center column of the active array area, is a column-spaced vector The length of the updated elements in is Column-spaced vector of The effective subvector of is a column-spaced vector The length of the elements that have not been updated in is Column-spaced vector of A valid subvector of .
[0087] Through the above steps, the row and column spacing vectors can be expressed as , .in , Is the length and The effective subvector of , Is the length and Invalid subvectors of are not assigned values. For example, Figure 2 middle, , .
[0088] S104, according to the array element state vector , row enable vector and column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the enabled state of each re-encoded array element .
[0089] Optionally, based on the array element state vector , row enable vector and column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the enabled state of each re-encoded array element , including the following steps d1-d2:
[0090] d1, create a length of The mask vector of .
[0091] d2, according to the array element state vector , respectively determine the array element state vector The non-zero elements in the array correspond to the elements in the row enable vector and column enable vector The index value in , and enable the vector according to the row and column enable vector The array elements whose index values are all 1 in the array element state vector The index value in updates the mask vector to obtain the mask vector of the static weight. , the corresponding expression is:
[0092] ,
[0093] ,
[0094] ,
[0095] ,
[0096] ,
[0097] in, represents the floor function, represents the remainder function, Represents the array element state vector The index of the element in , Represents row enable vector The index of the element in , Represents a column enable vector The index of the element in , Mask vector representing static weights The element value of Represents the array element state vector The corresponding element values, Mask vector representing static weights The index of the element in , is the mask vector of static weights The length of the updated elements in is The static weight mask vector The effective subvector of is the mask vector of static weights The length of the elements that have not been updated in is The static weight mask vector Invalid subvector of .
[0098] Through the above steps, the array elements in the effective array area are re-encoded. The encoding rules are the same as the original encoding rules, that is, the array elements in the effective array area are numbered from bottom to top along the column, and advance from left to right column by column until all the array elements in the area are encoded. Therefore, the mask vector of the static weight can be expressed as ,in Is the length The effective subvector of Is the length Invalid subvectors of are not assigned values.
[0099] For example, Figure 2 After the above steps, it is converted to Figure 3 , where the red box is the valid array area, that is, the area where both rows and columns are enabled. The row numbers of the valid array area increase from bottom to top; the column numbers increase from left to right; the array element numbers increase from bottom to top along the columns, and advance from left to right column by column until all array elements in the area have completed encoding. Figure 3 For example, the 2nd, 3rd, 5th, 6th, 7th, 8th, 9th, 10th, 11th, 12th, 14th, and 15th elements of the static weight mask vector are 1, and the rest of the elements are 0.
[0100] exist Figure 3 middle, .
[0101] S105, according to the row spacing vector and column-spaced vectors , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector .
[0102] The target parameters include the ratio of the desired elevation angle, the desired azimuth angle, the array element spacing, and the carrier wavelength.
[0103] Optional, vector of spacing according to rows and column-spaced vectors , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector , including the following steps e1-e4:
[0104] e1, create a length The azimuth-dimensional static beam weight vector .
[0105] e2, traverse the row interval vector Each element in the effective sub-vector of is combined with the target parameters to update the azimuth static beam weight vector , the corresponding expression is:
[0106] , ,
[0107] ,
[0108] in, represents the azimuth-dimensional static beam weight vector Middle The value of the element, Indicates the conversion factor from angle to radian. , represents the imaginary unit, represents the ratio of array element spacing to carrier wavelength, represents the desired azimuth, represents the desired pitch angle, represents the sine trigonometric function, represents the cosine trigonometric function, Represented by the azimuth-dimensional static beam weight vector The length of the updated elements in is The azimuth-dimensional static beam weight vector The effective subvector of Represented by the azimuth-dimensional static beam weight vector The length of the elements that have not been updated in is The azimuth-dimensional static beam weight vector Invalid subvector of .
[0109] e3, create a length The elevation-dimensional static beam weight vector .
[0110] e4. Traverse column interval vector Each element in the effective sub-vector of is combined with the target parameters to update the pitch-dimensional static beam weight vector , the corresponding expression is:
[0111] ,
[0112] ,
[0113] ,
[0114] in, represents the static beam weight vector in the elevation dimension Middle The value of the element, Represents the static beam weight vector in the pitch dimension The length of the updated elements in is The elevation-dimensional static beam weight vector The effective subvector of Represents the static beam weight vector in the pitch dimension The length of the elements that have not been updated in is The elevation-dimensional static beam weight vector Invalid subvector of .
[0115] Through the above steps, the azimuth and elevation static beam weight vectors can be expressed as , .in , Is the length and The effective subvector of , Is the length and Invalid subvectors of are not assigned values.
[0116] S106, according to the azimuth static beam weight vector and the pitch-dimensional static beam weight vector and the mask vector of static weights , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector .
[0117] Optionally, static beam weight vector according to the azimuth dimension and the pitch-dimensional static beam weight vector and the mask vector of static weights , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector , including the following steps f1-f3:
[0118] f1, create a length Two-dimensional reconfigurable static beam weight vector .
[0119] f2, using double loop, the outer loop traverses the azimuth dimension static beam weight vector The effective subvector of The index of the element in the inner loop traverses the pitch dimension static beam weight vector The effective subvector of The index of the element in , for any azimuth-dimensional static beam weight vector obtained The effective subvector of The index of the element in and the pitch-dimensional static beam weight vector The effective subvector of The combination of indices of the elements in determines the mask vector of the combination mapping in the static weight The effective subvector of The index of the element corresponding to , the corresponding expression is:
[0120] ,
[0121] in, Mask vector representing static weights The effective subvector of The index of the element in , represents the static beam weight vector in the elevation dimension The effective subvector of The index of the element in , represents the azimuth-dimensional static beam weight vector The effective subvector of The index of the element in .
[0122] f3. Update the two-dimensional reconfigurable static beam weight vector according to the enabled state of each array element in the reconfigurable digital array , the corresponding expression is:
[0123] ,
[0124] ,
[0125] ,
[0126] in, represents the two-dimensional reconfigurable static beam weight vector The The element value of the element, Indicates the total number of enabled array elements. Represented by the two-dimensional reconfigurable static beam weight vector The length of the updated elements in is Two-dimensional reconfigurable static beam weight vector The effective subvector of Represented by the two-dimensional reconfigurable static beam weight vector The length of the elements that have not been updated in is Two-dimensional reconfigurable static beam weight vector Invalid subvector of .
[0127] Through the above steps, the enabled array elements in the effective area are re-encoded, and the encoding rules are the same as step 1. That is, the enabled array elements are numbered from bottom to top along the column, and are advanced from left to right column by column until all enabled array elements are encoded. Therefore, the two-dimensional reconfigurable static beam weight vector can be expressed as .in Is the length The effective subvector of Is the length Invalid subvectors of are not assigned values.
[0128] For example, Figure 3 After the above steps, we get Figure 4 , where the enabled elements are numbered incrementally from bottom to top along the column and advance from left to right column by column until all enabled elements have completed encoding. Figure 4 For example, the two-dimensional reconfigurable static beam weight vector and the reconfigurable digital array both use this encoding method to reconstruct the storage location of vector and matrix elements. Figure 4 middle, is a row vector of length 12.
[0129] S107 , according to the new numbering sequence corresponding to each enabled array element, the sampled signal data received by each enabled array element is stored in the target reconfigurable digital array, and the covariance matrix of the target reconfigurable digital array is calculated and inverted.
[0130] The target reconfigurable digital array is the behavior , listed as The matrix of Indicates the number of signal sampling points.
[0131] Optionally, according to the new numbering sequence corresponding to each enabled array element, the sampled signal data received by each enabled array element is stored in the target reconfigurable digital array, and the covariance matrix of the target reconfigurable digital array is calculated and inverted, including the following steps g1-g6:
[0132] g1, create rows with , the number of columns is The fixed matrix , Indicates the number of signal sampling points.
[0133] g2, traverse the array element state vector If the array element corresponding to the current element is enabled, all signal data of the current array element obtained by sampling are taken as a row and stored in the fixed matrix .
[0134] g3, determine the fixed matrix The transposed matrix of .
[0135] g4, respectively according to the fixed matrix Before Row Elements and Fixed Matrices Transpose Before The first sub-matrix of the covariance matrix of the target reconfigurable digital array is determined by the row element data. The first sub-matrix is composed of the first to the Row, 1~ The columns are composed as follows:
[0136] ,
[0137] in, The covariance matrix of the target reconfigurable digital array is represented by Row, No. the element value of the column element, , Represents the covariance matrix of the target reconfigurable digital array A row vector consisting of row elements, Represents the covariance matrix of the target reconfigurable digital array A column vector consisting of column elements, , , Is a preset constant.
[0138] g5. According to the first sub-matrix, the all-0 matrix and the unit matrix, the covariance matrix of the target reconfigurable digital array is obtained. , where the covariance matrix of the target reconstructible digital array is No.1~ Row, No. ~ The second sub-matrix , No. ~ Row, No. 1~ The third sub-matrix , No. ~ Row, No. ~ The fourth sub-matrix , the second subarray And the third subarray is a matrix of all 0s, the fourth submatrix is the identity matrix, and the corresponding expression is:
[0139] ,
[0140] in, Represents the identity matrix.
[0141] g6. Determine the covariance matrix of the target reconfigurable digital array The inverse matrix , the corresponding expression is:
[0142] .
[0143] For example, in Figure 4 In the matrix for The square array, for phalanx.
[0144] S108, according to the inverse matrix of the covariance matrix of the target reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector .
[0145] Optionally, according to the inverse matrix of the covariance matrix of the reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector, including the following steps h1-h3:
[0146] h1, create a length The two-dimensional adaptive beam weight vector .
[0147] h2, create a length A temporary row vector of .
[0148] h3. Use a double nested loop, the outer loop traverses the covariance matrix of the target reconstructible digital array The inverse matrix Before The row number of the row where the inner loop iterates over the covariance matrix of the target reconstructible numeric array The inverse matrix The elements of the current row, in any inner loop, can reconstruct the covariance matrix of the digital array according to the target The inverse matrix Update the temporary row vector with the elements of the current row , in the corresponding outer loop, according to the updated temporary row vector and the two-dimensional reconfigurable static beam weight vector Obtain a first intermediate variable, determine the largest modulus value among multiple first intermediate variables, and update the two-dimensional adaptive beam weight vector according to each first intermediate variable and the largest modulus value. , the corresponding expression is:
[0149] ,
[0150] ,
[0151] ,
[0152] in, represents the two-dimensional adaptive beam weight vector Middle The value of the element, represents the first intermediate variable, , the superscript indicates Device, represents the largest modulus value among multiple first intermediate variables, Represents a constant with a preset very small value. The two-dimensional adaptive beam weight vector The updated elements in are the effective two-dimensional adaptive beam weight vectors, The two-dimensional adaptive beam weight vector The invalid two-dimensional adaptive beam weight vector consists of the unupdated elements in .
[0153] Through the above steps, the two-dimensional adaptive beam weight vector is calculated. , whose expression is:
[0154] ,
[0155] in, is the effective two-dimensional adaptive beam weight vector, which is the output of the entire algorithm. Figure 3 In the vector is a row vector of length 12.
[0156] S109, through two-dimensional adaptive beam weight vector The signal data of each enabled array element is weighted and summed to obtain an adaptive beam.
[0157] The adaptive beamforming method of the reconfigurable digital array provided by the present invention is to obtain the array element state vector , controls the enabling state of each array element in the reconfigurable digital array; according to the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the center row of the valid array area and the valid array area corresponding to the reconfigurable digital array , the column number of the center column of the valid array area ; Enable vectors by row , column enable vector , the row number of the center row of the valid array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors ; According to the array element state vector , row enable vector and column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the enabled state of each re-encoded array element ; Based on the row spacing vector and column-spaced vectors , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector ; According to the azimuth static beam weight vector and the pitch-dimensional static beam weight vector and the mask vector of static weights , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector ; According to the new numbering sequence corresponding to each enabled array element, the signal data received by each enabled array element obtained by sampling is stored in the target reconfigurable digital array, and the covariance matrix of the target reconfigurable digital array is calculated and inverted; according to the inverse matrix of the covariance matrix of the target reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector ; Through the two-dimensional adaptive beam weight vector The signal data of each enabled array element is weighted and summed to obtain an adaptive beam. It supports user-defined array arrangement and array parameter settings, realizes highly flexible editing of array arrangement by users, and improves the universal performance of the method. Through dynamic array retrieval, dynamic array spacing vector calculation, static weight mask vector calculation, and static weight coefficient vector calculation and reconstruction, the static beam weight coefficient reconstruction design is realized. Through matrix reconstruction, dynamic covariance matrix calculation and dynamic matrix inversion, the reconstruction design of array data covariance matrix inversion module is realized.
[0158] The present invention also provides an IP core for realizing adaptive beamforming of a reconfigurable digital array, comprising: an input configuration module, an array retrieval module, a static weight calculation module, a data processing module and an adaptive weight calculation module. Parallel design is performed between modules and within modules, greatly shortening the running time of the algorithm implementation.
[0159] Input configuration module, used to obtain target parameters and array element state vector , according to the array element state vector Control the enabled state of each array element in the reconfigurable digital array. The reconfigurable digital array is Matrix, where Represents the total number of rows of the reconfigurable digital array, represents the total number of columns of the reconfigurable digital array, and is an integer greater than 0, the array element state vector The length is ,The target parameters include the expected azimuth angle, the expected elevation angle, the array element spacing, and the ratio of the carrier wavelength.
[0160] Specifically, the input configuration module is an input port of the IP core for implementing the adaptive beamforming of the reconfigurable digital array. Its input signals include the desired azimuth angle, the desired elevation angle, the ratio of the array element spacing to the carrier wavelength, and the array element state vector .
[0161] Array retrieval module, used to retrieve the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the center row of the valid array area and the valid array area corresponding to the reconfigurable digital array , the column number of the center column of the valid array area , row enable vector Used to store the enable state of each row in the reconfigurable digital array, the column enable vector It is used to store the enabling state of each column in the reconfigurable digital array. The enabling row is the row where the enabling array element exists, and the enabling column is the column where the enabling array element exists. There is an enabling array element in each row and each column in the effective array area.
[0162] Specifically, the input of the array retrieval module is the array element state vector , the output includes the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the center row of the valid array area and the valid array area corresponding to the reconfigurable digital array , the column number of the center column of the valid array area .
[0163] Static weight calculation module, used to enable vectors according to rows , column enable vector , the row number of the center row of the valid array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors , a row-spaced vector Column spacing vector used to store the spacing of each enabled row in the reconfigurable digital array relative to the center row of the active array area Used to store the spacing of each enabled column relative to the center column of the effective array area in the reconfigurable digital array; according to the array element state vector , row enable vector and column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the enabled state of each re-encoded array element ; Based on the row spacing vector and column-spaced vectors , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector , the target parameters include the expected pitch angle, the expected azimuth angle, the ratio of the array element spacing and the carrier wavelength; according to the azimuth dimension static beam weight vector and the pitch-dimensional static beam weight vector and the mask vector of static weights , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector .
[0164] Specifically, the input of the static weight calculation module includes the output of the array retrieval module, and the output is a two-dimensional reconfigurable static beam weight vector The module is designed to perform different processing steps in parallel, that is, all steps can be executed synchronously.
[0165] The data processing module is used to store the sampled signal data received by each enabled array element into the target reconfigurable digital array according to the new numbering sequence corresponding to each enabled array element, calculate the covariance matrix of the target reconfigurable digital array and invert it, and the target reconfigurable digital array is a behavior , listed as The matrix of Indicates the number of signal sampling points.
[0166] Specifically, the input of the data processing module includes the array element state vector, the number of enabled array elements, and the data of all array elements in the digital array, and the output includes the inverse matrix of the array data covariance matrix, where the data input of the non-enabled array elements is 0. The array retrieval module, the static weight calculation module and the data processing module are designed for parallel processing, that is, the data processing module is run while the array retrieval module and the static weight calculation module are running.
[0167] Adaptive weight calculation module, used to calculate the inverse matrix of the covariance matrix of the target reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector ; Through the two-dimensional adaptive beam weight vector The signal data of each enabled array element is weighted and summed to obtain an adaptive beam.
[0168] Specifically, the input of the adaptive weight calculation module includes the output of the static weight calculation module and the data processing module, and the output is used as the output port of the IP core, and the output is a weight coefficient vector that conforms to the array arrangement and has an adaptive size.
[0169] This IP core has added a configuration port. Users can independently control the enabled state of a single array element by configuring the array element state vector, thereby achieving highly flexible editing of the array arrangement. At the same time, it also supports users to configure parameters such as the expected azimuth angle, expected pitch angle, carrier wavelength, and array element spacing ratio, which improves the universal performance of the algorithm. The reconstruction design of static beam weight coefficients is achieved through the dynamic array retrieval algorithm, the dynamic array spacing vector calculation algorithm, the static weight mask vector calculation algorithm, and the static weight coefficient vector calculation and reconstruction algorithm. The reconstruction design of the array data covariance matrix inversion module is achieved through the matrix reconstruction algorithm, the dynamic covariance matrix calculation algorithm, and the dynamic matrix inversion algorithm. The modular design is adopted to standardize the interfaces of each module to ensure that each step runs independently, which is convenient for subsequent secondary development and function expansion. The parallel design is adopted, and highly parallel processing is performed between and within modules to improve the real-time performance of the algorithm implementation.
[0170] As for the product embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the specific contents and beneficial effects and other related matters can be referred to the partial description of the method embodiment.
[0171] The terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of the present invention, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.
[0172] The step numbers in the present invention are only used as marks and do not limit the specific execution order.
[0173] The above contents are further detailed descriptions of the present invention in combination with specific preferred embodiments, and it cannot be determined that the specific implementation of the present invention is limited to these descriptions. For ordinary technicians in the technical field to which the present invention belongs, several simple deductions or substitutions can be made without departing from the concept of the present invention, which should be regarded as falling within the protection scope of the present invention.
Claims
1. An adaptive beamforming method for a reconfigurable digital array, characterized in that: include: According to the acquired array element state vector , controls the enabling state of each array element in the reconfigurable digital array, the reconfigurable digital array is Matrix, where Represents the total number of rows of the reconfigurable digital array, represents the total number of columns of the reconfigurable digital array, and is an integer greater than 0, the array element state vector The length is ; According to the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the effective array area corresponding to the reconfigurable digital array and the center row of the effective array area , the column number of the center column of the valid array area , the row enables vector For storing the enabling state of each row in the reconfigurable digital array, the column enabling vector Used to store the enabled state of each column in the reconfigurable digital array, the enabled row is a row with enabled array elements, the enabled column is a column with enabled array elements, and each row and each column in the effective array area has enabled array elements; Enable vectors according to the row , the column enable vector , the row number of the center row of the effective array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors , the row spacing vector The column spacing vector is used to store the spacing of each enabled row in the reconfigurable digital array relative to the center row of the active array area. for storing the spacing of each enabled column in the reconfigurable digital array relative to a center column of the active array area; According to the array element state vector , the row enable vector and the column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the activation state of each re-encoded array element ; According to the row spacing vector and the column spacing vector , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector , the target parameters include a desired elevation angle, a desired azimuth angle, an array element spacing, and a ratio of a carrier wavelength; According to the azimuth static beam weight vector and the pitch-dimensional static beam weight vector And the mask vector of the static weight , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector ; According to the new numbering sequence corresponding to each of the enabled array elements, the sampled signal data received by each of the enabled array elements is stored in the target reconfigurable digital array, and the covariance matrix of the target reconfigurable digital array is calculated and inverted. The target reconfigurable digital array is a behavior , listed as The matrix of Indicates the number of signal sampling points; According to the inverse matrix of the covariance matrix of the target reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector ; The two-dimensional adaptive beam weight vector A weighted sum is performed on the signal data of each of the enabled array elements to obtain an adaptive beam.
2. The method according to claim 1, characterized in that: The array element state vector obtained according to , controls the enabling state of each array element in the reconfigurable digital array, including: Starting from the lower left corner of the reconfigurable digital array, all array elements in the reconfigurable digital array are numbered in the order of increasing from bottom to top along each column and advancing from left to right column by column to obtain the array element number corresponding to each array element. The corresponding expression is: , in, Indicates the first Row, No. The array element number corresponding to the array element in the column, , represents the row index of the reconfigurable digital array, , represents the column index of the reconfigurable numeric array, ; The array element state vector is created by using the array element number of each array element in the reconfigurable digital array as an index value. ; Based on the first preset rule, the array element state vector is configured , to control the enabling state of each array element in the reconfigurable digital array, the first preset rule is: if the array element state vector If the element in corresponds to an enabled element, the element value is set to 1, otherwise it is set to 0.
3. The method according to claim 2, characterized in that According to the array element state vector , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , the row number of the center row of the effective array area , the column number of the center column of the valid array area ,include: Create a length of The first temporary vector of According to the array element state vector , obtain the activation state of any row of array elements in the reconfigurable digital array, update the first temporary vector according to the acquired activation state of the array elements, perform an OR operation on the element values of all elements in the updated first temporary vector to obtain the activation state of the corresponding row, and the corresponding expression is: , Among them, the operator Represents an assignment operation. Represents the first The first temporary vector corresponding to the row element The element value of the element, Represents the array element state vector Middle The element value of the element corresponds to the first element in the reconfigurable digital array. Row, No. The enabled state of the array element; Based on the second preset rule, the row enabling vector is obtained according to the enabling state of each row in the reconfigurable digital array. , the second preset rule is: if the row enable vector If the element in corresponds to a row in the enabled state, the element value is set to 1, otherwise it is set to 0; Enable vectors according to the row , get the number of enabled rows The sum of the line numbers of the enabled lines , the corresponding expression is: , , in, represents the row number of an enabled row in the reconfigurable digital array; According to the number of enabled rows and the line number of the enabled line , get the row number of the center row of the valid array area , the corresponding expression is: ; Create a length of A second temporary vector of According to the array element state vector , obtain the activation state of any column of array elements in the reconfigurable digital array, update the second temporary vector according to the acquired activation state of the array elements, perform an OR operation on the element values of all elements in the updated second temporary vector to obtain the activation state of the corresponding column, and the corresponding expression is: , in, Represents the first The first temporary vector corresponding to the column array element The element value of the element, Represents the array element state vector Middle The element value of the element corresponds to the first element in the reconfigurable digital array. Row, No. The enabled state of the array element; Based on the third preset rule, the column enabling vector is obtained according to the enabling state of each column in the reconfigurable digital array. , the third preset rule is: if the column enables vector If the element in corresponds to a column in the enabled state, the element value is set to 1, otherwise it is set to 0; Enable vectors based on the column , get the number of enabled columns The sum of the column numbers of the enabled columns , the corresponding expression is: , , in, represents the column number of an enabled column in the reconfigurable digital array; According to the number of enabled columns and the column numbers of the enabled columns , get the column number of the center column of the effective array area , the corresponding expression is: 。 4. The method according to claim 3, characterized in that The row enable vector , the column enable vector , the row number of the center row of the effective array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors ,include: Create a length of The row spacing vector ; Enable vector based on the row , obtaining the row numbers of the enabled rows in the reconfigurable digital array, and according to the obtained row numbers of each enabled row and the row number of the center row of the effective array area , obtain the row spacing between each enabled row in the reconfigurable digital array and the center row of the effective array area, and update the row spacing vector according to the row spacing corresponding to each enabled row , the corresponding expression is: , , , in, Represents a row-spaced vector Middle The value of the element corresponds to the first The row spacing between rows and the center row of the active array area, is a row-spaced vector The length of the updated elements in is The row spacing vector The effective subvector of is a row-spaced vector The length of the elements that have not been updated in is The row spacing vector Invalid subvector of ; Create a length of Column-spaced vector of ; Enable vectors based on the column , obtaining the column number of the enabled column in the reconfigurable digital array, and according to the obtained column number of each enabled row and the column number of the center column of the effective array area , obtain the column spacing between each enabled column in the reconfigurable digital array and the center column of the effective array area, and update the column spacing vector according to the column spacing corresponding to each enabled column , the corresponding expression is: , , in, Represents a column-spaced vector Middle The value of the element corresponds to the first The column spacing between columns and the center column of the active array area, is a column-spaced vector The length of the updated elements in is Column-spaced vector of The effective subvector of is a column-spaced vector The length of the elements that have not been updated in is Column-spaced vector of A valid subvector of .
5. The method according to claim 4, characterized in that The array element state vector , the row enable vector and the column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the activation state of each re-encoded array element ,include: Create a length of The mask vector of ; According to the array element state vector , respectively determine the array element state vector The non-zero elements in the array correspond to the elements in the row enable vector and the column enable vector The index value in the row and enables the vector according to the and the column enable vector The array elements whose index values are all 1 in the array element state vector The index value in is used to update the mask vector to obtain the mask vector of the static weight. , the corresponding expression is: , , , , in, represents the floor function, represents the remainder function, Represents the array element state vector The index of the element in , Represents row enable vector The index of the element in , Represents a column enable vector The index of the element in , Mask vector representing static weights The element value of Represents the array element state vector The corresponding element values, Mask vector representing static weights The index of the element in , is the mask vector of static weights The length of the updated elements in is The static weight mask vector The effective subvector of is the mask vector of static weights The length of the elements that have not been updated in is The static weight mask vector Invalid subvector of .
6. The method according to claim 5, characterized in that The row spacing vector and the column spacing vector , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector ,include: Create a length of The azimuth-dimensional static beam weight vector ; Iterate over the row spacing vector The elements of the effective sub-vector of are combined with the target parameters to update the azimuth-dimensional static beam weight vector , the corresponding expression is: , , , in, represents the azimuth-dimensional static beam weight vector Middle The value of the element, Indicates the conversion factor from angle to radian. , represents the imaginary unit, represents the ratio of array element spacing to carrier wavelength, represents the desired azimuth, represents the desired pitch angle, represents the sine trigonometric function, represents the cosine trigonometric function, Represented by the azimuth-dimensional static beam weight vector The length of the updated elements in is The azimuth-dimensional static beam weight vector The effective subvector of Represented by the azimuth-dimensional static beam weight vector The length of the elements that have not been updated in is The azimuth-dimensional static beam weight vector Invalid subvector of ; Create a length of The elevation-dimensional static beam weight vector ; Iterate over the column spacing vector The elements of the effective sub-vector of are combined with the target parameters to update the pitch-dimensional static beam weight vector , the corresponding expression is: , , , in, represents the static beam weight vector in the elevation dimension Middle The value of the element, Represents the static beam weight vector in the pitch dimension The length of the updated elements in is The elevation-dimensional static beam weight vector The effective subvector of Represents the static beam weight vector in the pitch dimension The length of the elements that have not been updated in is The elevation-dimensional static beam weight vector Invalid subvector of .
7. The method according to claim 6, characterized in that The azimuth-dimensional static beam weight vector and the pitch-dimensional static beam weight vector And the mask vector of the static weight , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector ,include: Create a length of Two-dimensional reconfigurable static beam weight vector ; A double loop is used, and the outer loop traverses the azimuth-dimensional static beam weight vector The effective subvector of The index of the element in the inner loop traverses the pitch dimension static beam weight vector The effective subvector of The index of the element in , for any of the azimuth-dimensional static beam weight vectors obtained The effective subvector of The index of the element in the pitch dimension static beam weight vector The effective subvector of The combination of indices of the elements in , determines the mask vector in which the combination is mapped in the static weights The effective subvector of The index of the element corresponding to , the corresponding expression is: , in, Mask vector representing static weights The effective subvector of The index of the element in , represents the static beam weight vector in the elevation dimension The effective subvector of The index of the element in , represents the azimuth-dimensional static beam weight vector The effective subvector of The index of the element in; According to the activation state of each array element in the reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector is updated. , the corresponding expression is: , , , in, represents the two-dimensional reconfigurable static beam weight vector The The element value of the element, Indicates the total number of enabled array elements. Represented by the two-dimensional reconfigurable static beam weight vector The length of the updated elements in is Two-dimensional reconfigurable static beam weight vector The effective subvector of Represented by the two-dimensional reconfigurable static beam weight vector The length of the elements that have not been updated in is Two-dimensional reconfigurable static beam weight vector Invalid subvector of .
8. The method according to claim 7, characterized in that According to the new numbering sequence corresponding to each of the enabled array elements, the signal data received by each of the enabled array elements obtained by sampling is stored in the target reconfigurable digital array, and the covariance matrix of the target reconfigurable digital array is calculated and inverted, including: Create rows of , the number of columns is The fixed matrix , Indicates the number of signal sampling points; Traverse the array element state vector If the array element corresponding to the current element is enabled, all signal data of the current array element obtained by sampling are taken as a row and stored in the fixed matrix ; Determine the fixed matrix The transposed matrix of ; According to the fixed matrix Before The row elements and the fixed matrix Transpose Before row elements, determining a first sub-matrix of the covariance matrix of the target reconfigurable digital array, wherein the first sub-matrix is composed of the first to the second sub-matrix of the covariance matrix of the target reconfigurable digital array. Row, 1~ The columns are composed as follows: , in, The covariance matrix of the target reconfigurable digital array is represented by Row, No. the element value of the column element, , Represents the covariance matrix of the target reconfigurable digital array The row vector of row elements, Represents the covariance matrix of the target reconfigurable digital array A column vector of column elements, , , is a preset constant; According to the first sub-matrix, the all-0 matrix and the unit matrix, the covariance matrix of the target reconfigurable digital array is obtained: , where the covariance matrix of the target reconstructible digital array is No.1~ Row, No. ~ The second sub-matrix , No. ~ Row, No. 1~ The third sub-matrix , No. ~ Row, No. ~ The fourth sub-matrix , the second subarray and the third subarray is a matrix of all zeros, the fourth submatrix is the identity matrix, and the corresponding expression is: , in, represents the identity matrix; Determine the covariance matrix of the target reconfigurable digital array The inverse matrix , the corresponding expression is: 。 9. The method according to claim 8, characterized in that The inverse matrix of the covariance matrix of the reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector, including: Create a length of The two-dimensional adaptive beam weight vector ; Create a length of A temporary row vector of ; A double nested loop is used, and the outer loop traverses the covariance matrix of the target reconstructible digital array The inverse matrix Before The row number of the row where the inner loop iterates over the covariance matrix of the target reconstructible numeric array The inverse matrix The elements of the current row, in any inner loop, can reconstruct the covariance matrix of the digital array according to the target The inverse matrix The elements of the current row update the temporary row vector , in the corresponding outer loop, according to the updated temporary row vector and the two-dimensional reconfigurable static beam weight vector Obtain a first intermediate variable, determine the maximum modulus value among a plurality of the first intermediate variables, and update the two-dimensional adaptive beam weight vector according to each of the first intermediate variables and the maximum modulus value. , the corresponding expression is: , , , in, represents the two-dimensional adaptive beam weight vector Middle The value of the element, represents the first intermediate variable, , superscript represents transpose, represents the largest modulus value among multiple first intermediate variables, Represents a constant with a preset very small value. The two-dimensional adaptive beam weight vector The updated elements in are the effective two-dimensional adaptive beam weight vectors, The two-dimensional adaptive beam weight vector The invalid two-dimensional adaptive beam weight vector consists of the unupdated elements in .
10. An IP core for implementing adaptive beamforming of a reconfigurable digital array, characterized in that: include: Input configuration module, array retrieval module, static weight calculation module, data processing module and adaptive weight calculation module are designed in parallel between modules and within modules; The input configuration module is used to obtain target parameters and array element state vectors , according to the array element state vector Controlling the enabling state of each array element in the reconfigurable digital array, wherein the reconfigurable digital array is Matrix, where Represents the total number of rows of the reconfigurable digital array, represents the total number of columns of the reconfigurable digital array, and is an integer greater than 0, the array element state vector The length is , the target parameters include a desired azimuth angle, a desired elevation angle, an array element spacing, and a ratio of a carrier wavelength; The array retrieval module is used to retrieve the array element state vector according to the array element state vector. , get the row enable vector corresponding to the reconfigurable digital array , column enable vector , the number of enabled rows and the number of enabled columns , and the row number of the effective array area corresponding to the reconfigurable digital array and the center row of the effective array area , the column number of the center column of the valid array area , the row enables vector For storing the enabling state of each row in the reconfigurable digital array, the column enabling vector Used to store the enabled state of each column in the reconfigurable digital array, the enabled row is a row with enabled array elements, the enabled column is a column with enabled array elements, and each row and each column in the effective array area has enabled array elements; The static weight calculation module is used to enable the vector according to the row , the column enable vector , the row number of the center row of the effective array area and the column number of the center column , determine the row spacing vector corresponding to the reconfigurable digital array and column-spaced vectors , the row spacing vector The column spacing vector is used to store the spacing of each enabled row in the reconfigurable digital array relative to the center row of the active array area. for storing the interval of each enabled column in the reconfigurable digital array relative to the center column of the effective array area; according to the array element state vector , the row enable vector and the column enable vector , re-encode the array elements in the effective array area, and obtain the static weight mask vector according to the activation state of each re-encoded array element ; According to the row spacing vector and the column spacing vector , and the pre-configured target parameters, the azimuth-dimensional static beam weight vector corresponding to the reconfigurable digital array is obtained and the pitch-dimensional static beam weight vector , the target parameters include the expected pitch angle, the expected azimuth angle, the ratio of the array element spacing and the carrier wavelength; according to the azimuth dimension static beam weight vector and the pitch-dimensional static beam weight vector and the mask vector of the static weight , for all enabled array elements, determine the two-dimensional reconfigurable static beam weight vector ; The data processing module is used to store the sampled signal data received by each of the enabled array elements into a target reconfigurable digital array according to the new numbering sequence corresponding to each of the enabled array elements, calculate the covariance matrix of the target reconfigurable digital array and invert it, and the target reconfigurable digital array is a behavior , listed as The matrix of Indicates the number of signal sampling points; The adaptive weight calculation module is used to calculate the inverse matrix of the covariance matrix of the target reconfigurable digital array, the two-dimensional reconfigurable static beam weight vector , determine the two-dimensional adaptive beam weight vector ; Through the two-dimensional adaptive beam weight vector A weighted sum is performed on the signal data of each of the enabled array elements to obtain an adaptive beam.
Citation Information
Patent Citations
Adaptive array antenna digital beam forming anti-interference processing method
CN113472371A
Adaptive array antenna digital beamforming anti-interference processing method
CN113472371B
Generation method and system for adaptive beam former
CN110687528A
Covariance matrix reconstruction adaptive beamforming method and system
CN113422629A