Signal irregular array complex covariance matrix real number processing method realized by using FPGA (Field Programmable Gate Array)

By using unitary transform and complex multiplier on FPGA, the complex covariance matrix of irregular arrays is converted into real covariance matrix, and the calculation complexity and hardware implementation difficulty in complex signal processing of irregular arrays is solved, and efficient Real-time signal processing with low power consumption.

CN119128354APending Publication Date: 2024-12-13DFINE TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411249475.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-06
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

When processing complex signals, irregular arrays have high computational complexity, high hardware implementation difficulty, limited real-time processing capabilities and insufficient resource optimization, and cannot directly use geometric symmetry to offset imaginary parts, resulting in difficult processing.

Method used

FPGA is used to realize the realization processing method of complex covariance matrix of signal irregular arrays, map complex information to the real domain through unitary transformation, and use complex multiplier and unitary matrix to perform matrix conversion, reducing the computational complexity and hardware resource requirements.

Benefits of technology

Reduces algorithm complexity and computing resource requirements, improves processing speed and real-time capabilities, and provides a more friendly data format for parallel processing and hardware acceleration of FPGAs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119128354A_ABST
    Figure CN119128354A_ABST
Patent Text Reader

Abstract

The invention discloses a signal irregular array complex covariance matrix real number processing method realized by utilizing an FPGA (Field Programmable Gate Array), which is characterized in that deep optimization design is carried out by combining hardware characteristics of the FPGA and utilizing a unitary transformation technology; the problems that in the prior art, when irregular array complex signals are processed, calculation complexity is high, hardware implementation difficulty is large, real-time processing capacity is limited, and resource optimization is insufficient are solved, and a new technical path is provided for achieving efficient, low-power-consumption and real-time irregular array signal processing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of signal processing, and in particular relates to a real number processing method of a complex covariance matrix of an irregular array of signals implemented by using FPGA. Background Art

[0002] In the current signal processing field, irregular arrays have become a research hotspot in wireless communications, radar systems, and sonar technology due to their unique advantages in improving spatial resolution and enhancing signal capture capabilities. However, along with these advantages come higher requirements for complex signal processing technology, especially for the efficient processing of complex covariance matrices, which is the basis for achieving key functions such as signal separation, beamforming, and channel estimation. Due to the lack of geometric symmetry in the layout, the complex signals generated by irregular arrays cannot be directly offset by geometric symmetry, which poses a huge challenge to the subsequent large-scale real-time processing capabilities.

[0003] In view of the above problems, it is particularly urgent to design a real number processing method for the complex covariance matrix of irregular signal arrays using FPGA and implement it on FPGA. As a linear transformation that maintains signal energy and orthogonality, unitary transform can effectively map complex information to the real number domain, thereby simplifying the processing flow and reducing computational complexity. By real numbering, not only can the demand for hardware resources be reduced and the processing speed be improved, but also a more friendly data format can be provided for FPGA implementation, making it easier to utilize the parallel processing capabilities and hardware acceleration characteristics of FPGA. Summary of the invention

[0004] In view of this, the purpose of the present invention is to provide a method for realizing the complex covariance matrix of an irregular array of signals using FPGA. The purpose is to combine the hardware characteristics of FPGA and perform deep optimization design through unitary transformation technology to solve the problems faced by the prior art in processing irregular array complex signals, such as high computational complexity, great difficulty in hardware implementation, limited real-time processing capability and insufficient resource optimization, so as to provide a new technical path for achieving efficient, low-power and real-time irregular array signal processing.

[0005] The objective of the present invention is achieved through the following technical solutions:

[0006] A method for processing the complex covariance matrix of an irregular array of signals using FPGA, the method comprising the following steps:

[0007] Step S1: a complex covariance matrix calculation module is set in the FPGA, and the data input to the complex covariance matrix calculation module is set to be M-channel complex observation baseband data, including real and imaginary parts: {Ch1_real, Ch1_imag; Ch2_real, Ch2_imag; ...; ChM_real, ChM_imag}, and a valid indication signal Valid, the continuous length of Valid represents the selected data accumulation length N;

[0008] Step S2: at least M*M complex multipliers are set in the complex covariance matrix calculation module to realize the real-time output of each matrix element. The two input parameters of the complex multiplier are s_axis_a_tdata and s_axis_b_tdata, which represent x(n) and x(n) respectively. H , where x(n) represents the complex observation data obtained by orthogonal down-conversion of the signal observed by the antenna array composed of M array elements, x(n) H It means taking the conjugate transpose of x(n);

[0009] Step S3: Set the values ​​of the two input ports s_axis_a_tdata[xy] and s_axis_b_tdata[xy] of the complex multiplier to {Chx_real, Chx_imag} and {Chy_real, ~Chy_imag}, where (~Chy_imag) represents the inversion operation of the value of Chy_imag to obtain the complex covariance matrix R x ;

[0010] Step S4: By constructing a centrosymmetric complex Hermitian matrix R y , the original complex covariance matrix R x Transformed into a centrosymmetric complex Hermitian matrix R, and then through the unitary matrix U and related operations, the original complex covariance matrix R x It is transformed into a real covariance matrix K for subsequent real-time signal processing.

[0011] Furthermore, in step S1, the complex observation data obtained after orthogonal down-conversion of the signal observed by the antenna array composed of M array elements is x(n), as shown in formula (1):

[0012] x(n)=[x1(n),x2(n),...,x M (n)] T ,n=1,2,3,... (1)

[0013] Its covariance matrix R x for:

[0014]

[0015] N in formula (2) represents the accumulated data length, x(n) H It means taking the conjugate transpose of x(n), and the matrix R x is an M*M complex Hermitian matrix.

[0016] Furthermore, in step S2, an IP core of a complex multiplier is used in the FPGA to implement setting of M*M complex multipliers.

[0017] Furthermore, in step S4, the centrosymmetric complex Hermitian matrix R y It is expressed as follows:

[0018]

[0019] Indicates R x Take the conjugate, J is the inverse identity matrix of M*M.

[0020] Further, in step S4, the original complex covariance matrix is ​​converted into a centrosymmetric complex Hermitian matrix R, which is expressed as follows:

[0021] R=0.5*(R x +R y ) (6)

[0023] Furthermore, in step S4, the structure of the unitary matrix U is expressed by the following formula:

[0024]

[0025] Where I is the identity matrix of M / 2*M / 2, and J2 is the anti-identity matrix of M / 2*M / 2, that is:

[0026]

[0028] Furthermore, the following operation is performed on the centrosymmetric complex Hermitian matrix R to obtain the real covariance matrix K:

[0029] K=URU H (9)

[0031] The beneficial effects of the present invention are:

[0032] 1. Innovatively researching the correspondence between M-channel complex baseband data and M*M complex multiplier input ports when using FPGA to implement complex covariance matrix calculation in this field, thereby reducing the overall design complexity;

[0033] 2. The present invention overcomes the problem that irregular arrays cannot use geometric position relationships to perform complex covariance matrix resolution. By using the method of constructing unitary matrix changes, the complex covariance matrix is ​​changed into a real covariance matrix, which reduces the algorithm complexity for subsequent real-time signal processing and reduces computing resources;

[0034] 3. The present invention finally realizes the transformation of the complex covariance matrix into a real covariance matrix by only utilizing the element and difference combination in part of the complex covariance matrix, thereby saving a large amount of FPGA computing resources.

[0035] Other advantages, objectives and features of the present invention will be described in the following description to some extent, and to some extent, will be obvious to those skilled in the art based on the following examination and study, or can be taught from the practice of the present invention. The objectives and other advantages of the present invention can be realized and obtained through the following description and the preceding claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] In order to make the purpose, technical solutions and advantages of the present invention more clear, the present invention will be further described in detail below with reference to the accompanying drawings, in which:

[0037] Figure 1 It is a schematic diagram of the method flow of the present invention;

[0038] Figure 2 Flowchart for the calculation of the complex covariance matrix;

[0039] Figure 3 Schematic diagram of the process of converting the complex covariance matrix into the real covariance matrix. DETAILED DESCRIPTION

[0040] The preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings. It should be understood that the preferred embodiments are only for illustrating the present invention, rather than for limiting the protection scope of the present invention.

[0041] like Figure 1 As shown, the real number processing method of the complex covariance matrix of the irregular array of signals implemented by FPGA of the present invention specifically comprises the following steps:

[0042] Step S1: a complex covariance matrix calculation module is set in the FPGA, and the data input to the complex covariance matrix calculation module is set to be M-channel complex observation baseband data, including real and imaginary parts: {Ch1_real, Ch1_imag; Ch2_real, Ch2_imag; ...; ChM_real, ChM_imag}, and a valid indication signal Valid, the continuous length of Valid represents the selected data accumulation length N;

[0043] Step S2: at least M*M complex multipliers are set in the complex covariance matrix calculation module to realize the real-time output of each matrix element. The two input parameters of the complex multiplier are s_axis_a_tdata and s_axis_b_tdata, which represent x(n) and x(n) respectively. H , where x(n) represents the complex observation data obtained by orthogonal down-conversion of the signal observed by the antenna array composed of M array elements, x(n) H It means taking the conjugate transpose of x(n);

[0044] The above setting is based on: Assume that the complex observation data obtained by orthogonal down-conversion of the signal observed by the antenna array composed of M array elements is x(n), as shown in formula (1):

[0045] x(n)=[x1(n),x2(n),...,x M (n)] T ,n=1,2,3,... (1)

[0046] Its covariance matrix R x for:

[0047]

[0048] N in formula (2) represents the accumulated data length, x(n) H represents the conjugate transpose of x(n). Obviously, the matrix R x is an M*M complex Hermitian matrix.

[0049] Step S3: To derive the assignment rule of each multiplier, let the data length N = 1, then the scales of the two matrices A and B input to the complex covariance matrix calculation module are M*1 and 1*M, and the output result C of the matrix multiplication is xy =A x *B y , where x and y represent the matrix element subscripts, ranging from 1 to M. From this, we can deduce that the values ​​of the two input ports s_axis_a_tdata[xy] and s_axis_b_tdata[xy] of the complex multiplier are {Chx_real, Chx_imag} and {Chy_real,

[0050] ~Chy_imag}, where (~Chy_imag) means negating the value of Chy_imag to obtain the complex covariance matrix R x ; Figure 2 The calculation process of the complex covariance matrix is ​​clearly shown.

[0051] It should be noted that the data length N selected for calculating the covariance matrix usually needs to be greater than 1. In this case, only the output result C of the matrix multiplication needs to be xy Just perform the accumulation without changing the assignment rule of each multiplier.

[0052] The enable control of the complex multiplier uses the input valid indication signal Valid. When the output valid indication Valid_o of the complex multiplier is valid, the output data C xy Accumulation is performed, and when the falling edge of Valid_o occurs, the accumulated result is latched as the final calculation result of the complex covariance matrix.

[0053] Step S4: By constructing a centrosymmetric complex Hermitian matrix R y , the original complex covariance matrix R x Transformed into a centrosymmetric complex Hermitian matrix R, and then through the unitary matrix U and related operations, the original complex covariance matrix R x It is transformed into a real covariance matrix K for subsequent real-time signal processing. Figure 3 As shown in the figure, the specific process of converting the complex covariance matrix into the real covariance matrix is ​​shown.

[0054] To simplify and more clearly illustrate the derivation process of transforming the complex covariance matrix into the real matrix, this embodiment is illustrated using an array of 4 array elements, and the implementation methods for other numbers of array elements are the same.

[0055] Let the result of the calculation of the complex covariance matrix in the first step be:

[0056]

[0057] Where a is the real part, b is the imaginary part, and j is the imaginary unit. Construct a centrosymmetric complex Hermitian matrix R y , so that:

[0058]

[0059] in, Indicates R x Take the conjugate, J is the inverse unit matrix of M*M, that is:

[0060]

[0061] The effect of multiplying the matrix on the left by the anti-identity matrix is ​​equivalent to folding the matrix upside down, that is:

[0062]

[0063] The effect of right-multiplying a matrix by the inverse identity matrix is ​​equivalent to flipping the matrix left to right, that is:

[0064]

[0065] Convert the original complex covariance matrix into a centrally symmetric complex Hermitian matrix R:

[0066] R=0.5*(R x +R y ) (6)

[0067]

[0068] Construct a unitary matrix U, whose structure is:

[0069]

[0070] Where I is the identity matrix of M / 2*M / 2, and J2 is the anti-identity matrix of M / 2*M / 2, that is:

[0071]

[0072] The following operation is performed on the centrosymmetric complex Hermitian matrix R to obtain the real covariance matrix K:

[0073]

[0074] When a matrix is ​​left-multiplied by the unitary matrix U, the result of the matrix can be divided into two parts. The upper part of the matrix is: the result of the first row is the sum of the first and fourth rows of the original matrix; the result of the second row is the sum of the second and third rows of the original matrix. The lower part of the matrix is: the real part of the result of the third row is the difference between the imaginary parts of the third and second rows of the original matrix, and the imaginary part is the difference between the real parts of the second and third rows of the original matrix; the real part of the result of the fourth row is the difference between the imaginary parts of the fourth and first rows of the original matrix, and the imaginary part is the difference between the real parts of the first and fourth rows of the original matrix, that is, in the above formula:

[0075]

[0076] Multiply a matrix right by the unitary matrix U H , the result of the obtained matrix can be divided into two parts. The left half of the matrix is: the result of the first column is the sum of the first and fourth columns of the original matrix, the imaginary parts cancel each other out and only the real part remains; the result of the second column is the sum of the second and third columns of the original matrix, the imaginary parts cancel each other out and only the real part remains. The right half of the matrix is: the real part of the result of the third column is the difference between the imaginary parts of the second and third columns of the original matrix, and the imaginary part is the difference between the real parts of the second and third columns of the original matrix, and the result is 0; the real part of the result of the fourth column is the difference between the imaginary parts of the first and fourth columns of the original matrix, and the imaginary part is the difference between the real parts of the first and fourth columns of the original matrix, and the result is 0, that is, in the above formula:

[0077]

[0078]

[0079] From the above four-element derivation, we can see that by converting the original complex covariance matrix R x Constructing the centrally symmetric complex Hermitian matrix R, the unitary matrix U and related operations, the original complex covariance matrix R x changes to the real covariance matrix K.

[0080] According to the above derivation and simplification results, the transformation from complex covariance matrix to real covariance matrix through FPGA only needs to perform addition and subtraction on the real and imaginary parts of the relevant elements in the original complex covariance matrix according to formula (10). When the number of array elements M is other values, the derivation process is the same.

[0081] It should be appreciated that embodiments of the present invention may be implemented or enforced by computer hardware, a combination of hardware and software, or by computer instructions stored in a non-transitory computer-readable memory. The method may be implemented in a computer program using standard programming techniques - including a non-transitory computer-readable storage medium configured with a computer program, wherein the storage medium so configured causes the computer to operate in a specific and predefined manner - according to the methods and drawings described in the specific embodiments. Each program may be implemented in a high-level procedural or object-oriented programming language to communicate with a computer system. However, if desired, the program may be implemented in an assembly or machine language. In any case, the language may be a compiled or interpreted language. In addition, the program may be run on a programmed ASIC for this purpose.

[0082] Furthermore, the operations of the processes described herein may be performed in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context. The processes described herein (or variations and / or combinations thereof) may be performed under the control of one or more computer systems configured with executable instructions, and may be implemented as code (e.g., executable instructions, one or more computer programs, or one or more applications) that is executed collectively on one or more processors, by hardware, or a combination thereof. The computer program includes a plurality of instructions that may be executed by one or more processors.

[0083] Further, the methods may be implemented in any type of computing platform operably connected to a suitable computer, including but not limited to a personal computer, a minicomputer, a mainframe, a workstation, a network or distributed computing environment, a separate or integrated computer platform, etc. Aspects of the present invention may be implemented in machine-readable code stored on a non-transitory storage medium or device, whether removable or integrated into a computing platform, such as a hard disk, an optical read and / or write storage medium, a RAM, a ROM, etc., such that it can be read by a programmable computer, which when the storage medium or device is read by the computer can be used to configure and operate the computer to perform the processes described herein.

[0084] Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present invention rather than to limit it. Although the present invention has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solution of the present invention can be modified or replaced by equivalents without departing from the purpose and scope of the technical solution, which should be included in the scope of the claims of the present invention.

Claims

1. A method for converting the complex covariance matrix of an irregular array of signals into real numbers using FPGA, characterized in that: The method comprises the following steps: Step S1: a complex covariance matrix calculation module is set in the FPGA, and the data input to the complex covariance matrix calculation module is set to be M-channel complex observation baseband data, including real and imaginary parts: {Ch1_real, Ch1_imag; Ch2_real, Ch2_imag; ...; ChM_real, ChM_imag}, and a valid indication signal Valid, the continuous length of Valid represents the selected data accumulation length N; Step S2: at least M*M complex multipliers are set in the complex covariance matrix calculation module to realize the real-time output of each matrix element. The two input parameters of the complex multiplier are s_axis_a_tdata and s_axis_b_tdata, which represent x(n) and x(n) respectively. H , where x(n) represents the complex observation data obtained by orthogonal down-conversion of the signal observed by the antenna array composed of M array elements, x(n) H It means taking the conjugate transpose of x(n); Step S3: Set the values ​​of the two input ports s_axis_a_tdata[xy] and s_axis_b_tdata[xy] of the complex multiplier to {Chx_real, Chx_imag} and {Chy_real, ~Chy_imag}, where (~Chy_imag) represents the inversion operation of the value of Chy_imag to obtain the complex covariance matrix R x ; Step S4: By constructing a centrosymmetric complex Hermitian matrix R y , the original complex covariance matrix R x Transformed into a centrosymmetric complex Hermitian matrix R, and then through the unitary matrix U and related operations, the original complex covariance matrix R x It is transformed into a real covariance matrix K for subsequent real-time signal processing.

2. The method for converting the complex covariance matrix of an irregular array of signals into real numbers using FPGA according to claim 1, wherein: In step S1, the complex observation data obtained after orthogonal down-conversion of the signal observed by the antenna array composed of M array elements is x(n), as shown in formula (1): x(n)=[x1(n),x2(n),…,x M (n)] T n=1,2,3,... (1) Its covariance matrix R x for: N in formula (2) represents the accumulated data length, x(n) H It means taking the conjugate transpose of x(n), and the matrix R x is an M*M complex Hermitian matrix.

3. The method for converting the complex covariance matrix of an irregular array of signals into real numbers using FPGA according to claim 1, wherein: In the step S2, an IP core of a complex multiplier is used in the FPGA to set M*M complex multipliers.

4. The method for converting the complex covariance matrix of an irregular array of signals into real numbers by utilizing FPGA according to claim 1, wherein: In step S4, the centrosymmetric complex Hermitian matrix R y It is expressed as follows: Indicates R x Take the conjugate, J is the inverse identity matrix of M*M.

5. The method for converting the complex covariance matrix of an irregular array of signals into real numbers using FPGA according to claim 1 or 4, characterized in that: In step S4, the original complex covariance matrix is ​​converted into a centrosymmetric complex Hermitian matrix R, which is expressed as follows: R=0.5*(R x +R y ) (6) 6. The method for converting the complex covariance matrix of an irregular array of signals into real numbers using FPGA according to claim 5, wherein: In step S4, the structure of the unitary matrix U is expressed by the following formula: Where I is the identity matrix of M / 2*M / 2, and J2 is the anti-identity matrix of M / 2*M / 2, that is:

7. The method for converting the complex covariance matrix of an irregular array of signals into real numbers using FPGA according to claim 6, wherein: The following operation is performed on the centrosymmetric complex Hermitian matrix R to obtain the real covariance matrix K: K=URU H (9).