Channel estimation method, circuit, nonvolatile storage medium and computer device

By receiving pilot signals and iteratively calculating inner products and indices in millimeter-wave channel estimation, and using least squares to determine the channel estimation matrix, the problem of low channel estimation accuracy in dense user scenarios is solved, achieving more efficient channel estimation and improved system performance.

CN122247802APending Publication Date: 2026-06-19PURPLE MOUNTAIN LAB

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
PURPLE MOUNTAIN LAB
Filing Date
2026-03-25
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

In densely populated scenarios, the accuracy of millimeter-wave channel estimation is low, and existing technologies have failed to effectively address the channel estimation accuracy problem caused by pilot contamination.

Method used

By receiving the pilot signal from the target terminal as the initial residual, the first and second operations are performed. The inner product is calculated and the column index that meets the preset conditions is selected and added to the support set. The channel estimation matrix is ​​determined by least squares solution, and the residual is iteratively updated until the iteration stop condition is reached, thereby reducing the pilot requirement.

🎯Benefits of technology

It improves the accuracy of channel estimation, reduces pilot requirements, and enhances the performance and reliability of millimeter-wave communication systems, especially mitigating the impact of pilot pollution in dense user environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122247802A_ABST
    Figure CN122247802A_ABST
Patent Text Reader

Abstract

This invention discloses a channel estimation method, circuit, non-volatile storage medium, and computer device. The method includes: receiving a pilot signal as an initial residual; calculating the inner product between the initial residual and multiple columns in a sensing matrix; selecting the column index whose inner product satisfies a first preset condition as a first column index and adding it to a support set; determining a channel estimation matrix based on the support set and the sensing matrix and updating the initial residual to obtain an updated residual; selecting the column index whose inner product among the column indices adjacent to the first column index satisfies a second preset condition as a second column index and adding it to the support set; determining the channel estimation matrix again based on the support set and the sensing matrix and updating the residual; iteratively performing the above operations on the updated residual until an iteration stopping condition is met to determine the target channel estimation matrix. This invention solves the technical problem of low channel estimation accuracy in dense user scenarios during current millimeter-wave channel estimation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication technology, and more specifically, to a channel estimation method, circuit, non-volatile storage medium, and computer device. Background Technology

[0002] To accurately estimate angular domain channel information, pilot signals need to be sent before signal transmission for channel estimation. Currently, millimeter-wave channel estimation is mostly based on closed-loop beam training methods and sparsity-based channel denoising methods, which require high pilot overhead. In dense user scenarios, severe pilot pollution leads to low channel estimation accuracy.

[0003] There is currently no effective solution to the above problems. Summary of the Invention

[0004] This invention provides a channel estimation method, circuit, non-volatile storage medium, and computer device to at least solve the technical problem of low accuracy in current millimeter-wave channel estimation in densely populated user scenarios.

[0005] According to one aspect of the present invention, a channel estimation method is provided, comprising: receiving a pilot signal emitted by a target terminal and using the pilot signal as an initial residual; performing a first operation and a second operation on the initial residual, wherein the first operation is as follows: calculating the inner product between the initial residual and multiple columns in a preset sensing matrix to obtain multiple inner products; selecting the column index corresponding to the column whose inner product satisfies a first preset condition as a first target column index and adding the first target column index to a preset support set; performing least squares solution based on the preset support set and the preset sensing matrix to determine a first channel estimation matrix; and performing a second operation on the initial residual based on the first channel estimation matrix. The process is as follows: First, update the residual to obtain the updated residual. Second, select the column index whose inner product among multiple column indices adjacent to the first target column index satisfies the second preset condition as the second target column index and add the second target column index to the preset support set. Based on the preset support set and the preset sensing matrix, perform least squares solution to determine the second channel estimation matrix. Update the updated residual based on the second channel estimation matrix. Iteratively execute the first and second operations on the updated residual, and determine whether the preset iteration stop condition is reached after each execution of the first or second operation, until the preset iteration stop condition is reached, and determine the target channel estimation matrix.

[0006] Optionally, the updated residual is iterated and the first and second operations are performed, wherein the Nth first operation and the Mth second operation are performed in parallel, and M is an integer less than N.

[0007] Optionally, a first parameter and a second parameter are set, wherein both the first parameter and the second parameter are prime numbers and coprime; a basis matrix is ​​set based on the first parameter and the second parameter; a cyclic shift matrix corresponding to the non-zero elements in the basis matrix is ​​generated; an all-zero matrix corresponding to the zero elements in the basis matrix is ​​determined; the cyclic shift matrix corresponding to the non-zero elements and the all-zero matrix corresponding to the zero elements are concatenated to determine the parity check matrix; the receiving beam matrix is ​​determined based on the parity check matrix and the preset array response matrix; and the preset sensing matrix is ​​determined based on the receiving beam matrix and the preset array response matrix.

[0008] Optionally, the initial residual is updated based on the first channel estimation matrix to obtain the updated residual, including: determining the fitted signal based on the first channel estimation matrix and the preset sensing matrix; and updating the initial residual based on the difference between the pilot signal and the fitted signal to determine the updated residual.

[0009] Optionally, the second channel estimation matrix is ​​determined by performing a least-squares solution based on the second target column index and the preset sensing matrix, including: determining a first sub-matrix based on the first target column index and the preset sensing matrix; updating the first sub-matrix according to the second target column index to obtain the second sub-matrix; and determining the second channel estimation matrix by performing a least-squares solution based on the second sub-matrix.

[0010] Optionally, the preset iteration stopping condition is that the number of iterations reaches a preset iteration number threshold or the updated residual is lower than a preset residual threshold.

[0011] According to another aspect of the present invention, a channel estimation circuit is also provided, comprising: a coherence solving module, configured to receive a pilot signal emitted by a target terminal and use the pilot signal as an initial residual, and to calculate the inner product between the initial residual and multiple columns in a preset sensing matrix to obtain multiple inner products; an index positioning module, connected to the coherence solving module, configured to determine the column index corresponding to the column whose inner product satisfies a first preset condition as a first target column index, and to select the column index whose inner product satisfies a second preset condition among multiple column indices adjacent to the first target column index as a second target column index; a support set storage module, connected to the index positioning module, configured to store a preset support set; a sensing matrix storage module, connected to the support set storage module, configured to store a sub-matrix determined based on the preset support set and the preset sensing matrix; a least squares solving module, connected to the sensing matrix storage module, configured to perform least squares solving based on the sub-matrix to determine a channel estimation matrix; and a residual solving module, connected to the least squares solving module and the coherence solving module, configured to update the initial residual based on the channel estimation matrix to obtain an updated residual.

[0012] According to another aspect of the present invention, a non-volatile storage medium is also provided, the non-volatile storage medium including a stored program, wherein, when the program is running, the device where the non-volatile storage medium is located is controlled to execute any of the channel estimation methods described above.

[0013] According to another aspect of the present invention, a computer device is also provided, the computer device including a processor, the processor being configured to run a program, wherein the program executes any of the channel estimation methods described above during runtime.

[0014] According to another aspect of the present invention, a computer program product is also provided, including a computer program that, when executed by a processor, implements any of the channel estimation methods described above.

[0015] In this embodiment of the invention, a channel estimation method is employed. This involves receiving a pilot signal from a target terminal and using the pilot signal as the initial residual. The initial residual is then subjected to a first operation and a second operation. The first operation is as follows: The inner product between the initial residual and multiple columns in a preset sensing matrix is ​​calculated to obtain multiple inner products. The column index corresponding to the column whose inner product satisfies a first preset condition is selected as the first target column index, and this first target column index is added to a preset support set. Based on the preset support set and the preset sensing matrix, least squares are performed to determine the first channel estimation matrix. The initial residual is updated based on the first channel estimation matrix to obtain the updated residual. The second operation is as follows: The corresponding column index from the multiple column indices adjacent to the first target column index is selected... The column index of the inner product that satisfies the second preset condition is the second target column index, and the second target column index is added to the preset support set; based on the preset support set and the preset sensing matrix, least squares solution is performed to determine the second channel estimation matrix; the updated residual is updated based on the second channel estimation matrix; the updated residual is iteratively executed with the first operation and the second operation, and after each execution of the first operation or the second operation, it is determined whether the preset iteration stop condition is met, until the preset iteration stop condition is met, and the target channel estimation matrix is ​​determined. This achieves the purpose of reducing pilot requirements, thereby realizing the technical effect of improving the accuracy of channel estimation, and thus solving the technical problem of low channel estimation accuracy in dense user scenarios for millimeter wave channel estimation. Attached Figure Description

[0016] The accompanying drawings, which are included to provide a further understanding of the invention and form part of this application, illustrate exemplary embodiments of the invention and, together with their description, serve to explain the invention and do not constitute an undue limitation thereof. In the drawings:

[0017] Figure 1 A hardware block diagram of a computer terminal for implementing a channel estimation method is shown.

[0018] Figure 2 This is a flowchart illustrating the channel estimation method provided according to an embodiment of the present invention;

[0019] Figure 3 This is a schematic diagram of a MU-MIMO hybrid beamforming millimeter-wave system provided according to an optional embodiment of the present invention;

[0020] Figure 4 This is an architecture diagram of a channel estimation circuit provided according to an embodiment of the present invention. Detailed Implementation

[0021] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0022] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0023] According to an embodiment of the present invention, a method embodiment of a channel estimation method is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0024] The method embodiment provided in Embodiment 1 of this application can be executed on a mobile terminal, computer terminal, or similar computing device. Figure 1 A hardware block diagram of a computer terminal for implementing a channel estimation method is shown. Figure 1As shown, the computer terminal 10 may include one or more processors (shown as 102a, 102b, ..., 102n in the figure) (the processor may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.) and a memory 104 for storing data. In addition, it may also include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of a BUS bus), a network interface, a power supply, and / or a camera. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the aforementioned electronic device. For example, computer terminal 10 may also include... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.

[0025] It should be noted that the aforementioned one or more processors and / or other data processing circuits are generally referred to herein as "data processing circuits". These data processing circuits may be embodied, in whole or in part, in software, hardware, firmware, or any other combination thereof. Furthermore, the data processing circuits may be a single, independent processing module, or may be integrated, in whole or in part, into any other element within the computer terminal 10. As involved in the embodiments of this application, the data processing circuits serve as a processor control mechanism (e.g., selection of a variable resistor termination path connected to an interface).

[0026] The memory 104 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the channel estimation method in this embodiment of the invention. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory 104, thereby implementing the channel estimation method of the application described above. The memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor, and these remote memories can be connected to the computer terminal 10 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0027] The display can be, for example, a touchscreen liquid crystal display (LCD) that allows the user to interact with the user interface of the computer terminal 10.

[0028] Figure 2 This is a flowchart illustrating the channel estimation method provided according to an embodiment of the present invention, as shown below. Figure 2 As shown, the method includes the following steps:

[0029] Step S202: Receive the pilot signal sent by the target terminal and use the pilot signal as the initial residual.

[0030] In this step, in a millimeter-wave MIMO communication system, the channel estimation process begins with receiving pilot signals transmitted by the target terminal. These pilot signals are used for subsequent Channel State Information (CSI) estimation, ensuring the accuracy and efficiency of data transmission. The target terminal (which can be a mobile device, base station, or other communication node) transmits pilot signals containing a predetermined pattern. These signals typically have good autocorrelation and cross-correlation to facilitate channel sounding at the receiver. The receiver (such as a base station) uses its antenna array to receive the pilot signals from the target terminal. In millimeter-wave MIMO systems, this may involve multiple antennas receiving signals simultaneously, which can be combined using beamforming techniques to enhance signal strength. Figure 3 This is a schematic diagram of a MU-MIMO hybrid beamforming millimeter-wave system provided according to an optional embodiment of the present invention, such as... Figure 3 As shown, the system consists of multiple single-antenna user terminals (i.e. Figure 3 The system consists of User1, User2, and User3, and a base station equipped with a large-scale antenna array. Each user terminal is equipped with only one antenna and sequentially transmits pilot signals to the base station using time division multiplexing (TDM) to avoid pilot interference between users. When a user terminal transmits a pilot signal, the signal propagates through a millimeter-wave wireless channel (mmWave Channel). The base station employs a hybrid beamforming structure, including an RF chain and a baseband MIMO module. When a user terminal transmits a pilot signal, the base station's RF chain sequentially switches between different analog beam directions, "focusing" signal energy from different angles onto their respective RF chains. Each beam switching collects a set of received signal samples, and these sampled digital signals are fed into the Baseband MIMO for processing. Additionally, Figure 3Interference, line-of-sight, and correlation describe three physical phenomena in millimeter-wave channel environments. Interference mainly manifests as the overlapping and confusion of pilot signals at the base station receiver when multiple user terminals transmit pilot signals at similar times; this is known as pilot contamination. In the millimeter-wave band, signal propagation is easily blocked by obstacles, so most of the effective energy is concentrated on a few directly visible paths—this is line-of-sight. Correlation includes spatial correlation between antenna elements and angular correlation between sensor matrix columns. Spatial correlation between antenna elements refers to the fact that, due to the base station using a densely packed uniform linear array (ULA), if the physical spacing between adjacent antennas is too small, the signals they receive are highly similar in amplitude and phase, leading to a decrease in spatial resolution and difficulty in distinguishing paths from adjacent angles. The angular correlation between columns of the sensing matrix refers to the fact that after discretization in the angular domain, if two angular grid points are too close (such as the actual path being located between two grid points), their corresponding column vectors in the sensing matrix will be highly similar, making it difficult for the algorithm to distinguish which is the real path, thus causing "grid point ambiguity".

[0031] The received pilot signal may be affected by noise and other interference. Therefore, the signal can be preprocessed, including denoising, filtering, and possible frequency and phase correction, to improve the accuracy of channel estimation. Because in the initial stage of channel estimation, the initial residual is typically set to the received pilot signal, the residual represents the portion of the signal that has not yet been interpreted by any channel estimation model. In subsequent channel estimation iterations, the residual will be updated incrementally to remove channel components that have already been estimated and supported.

[0032] Typically, the received pilot signal is initially detected and received in the antenna domain. To perform angular domain channel estimation, the signal in the antenna domain needs to be transformed to the angular domain. In millimeter-wave communication systems, especially multiple-input multiple-output (MIMO) systems employing large-scale antenna arrays, the high spatial correlation and angular domain sparsity of millimeter-wave channels can be utilized to transform the channel matrix in the antenna domain to the angular domain using an angular domain grid. The antenna domain refers to the channel characteristics exhibited by the signal as it passes through different antenna elements of the antenna array, due to differences in their positions and phases. The angular domain is characterized by the free-space fading and multipath effects encountered during millimeter-wave signal propagation, resulting in a sparse distribution of the channel response, meaning the signal is mainly concentrated on a few angular paths. This helps reduce the complexity of channel estimation.

[0033] The array response matrix describes the response of an antenna array to signals at different incident angles. For a uniform linear array (ULA), the array response matrix is ​​a complex vector determined by the antenna element spacing and the signal incident angle, with each column representing the response vector at a specific angle. In the angle domain, a series of grid points are selected based on the expected resolution and angle range. Typically, the selection of grid points requires a trade-off between angular resolution and computational complexity. Antenna Domain Channel It can be achieved through the array response matrix Convert to angle domain channel ,Right now .

[0034] In the presence of multiple user terminals, time-division multiplexing can be used to transmit pilot signals, avoiding interference between users. Therefore, the target time slot corresponding to the target terminal is determined. Based on the target time slot, the process of receiving pilot signals ensures that each user transmits pilot signals within a specific time window, thus achieving time-division multiplexing, avoiding mutual interference between users, and enabling compressed sensing-based channel estimation to be accurately performed in multi-user scenarios.

[0035] By managing time slots, the receiver can receive and process pilot signals from each user in an orderly manner, thereby effectively performing angle-domain channel estimation. This design not only reduces the overall delay of channel estimation but also improves the utilization rate of pilot signals in large-scale MIMO systems, thus reducing pilot pollution and enhancing the performance and reliability of millimeter-wave communication systems.

[0036] Step S204: Perform a first operation and a second operation on the initial residual. The first operation is as follows: calculate the inner product between the initial residual and multiple columns in the preset sensing matrix to obtain multiple inner products; select the column index corresponding to the column whose inner product satisfies the first preset condition as the first target column index and add the first target column index to the preset support set; perform least squares solution based on the preset support set and the preset sensing matrix to determine the first channel estimation matrix; update the initial residual based on the first channel estimation matrix to obtain the updated residual.

[0037] In this step, the inner product between the initial residual and each column of the preset sensing matrix can be calculated. This inner product serves as the column coherence between the residual and each column of the sensing matrix. Then, the column index corresponding to the column whose inner product satisfies a first preset condition is selected. This first preset condition typically refers to the column index with the largest absolute value of the calculated inner product, i.e., the column index with the strongest coherence. This column index with the largest absolute value of the inner product is selected as the first target column index and added to the support set. Then, the current support set and the sensing matrix are used to perform a least-squares solution to obtain the channel estimate. After obtaining the first channel estimation matrix, the residual can be updated to remove the influence of the already estimated channel components, and the updated residual is calculated.

[0038] By progressively selecting the column index that has the largest inner product with the residual, the strongest component in the signal can be prioritized, thereby improving the accuracy of channel estimation. Furthermore, since only a small number of pilot signals are needed to estimate the channel in each iteration, pilot contamination and channel resource consumption are significantly reduced.

[0039] Step S206, the second operation is as follows: Select the column index whose inner product among multiple column indices adjacent to the first target column index satisfies the second preset condition as the second target column index and add the second target column index to the preset support set; perform least squares solution based on the preset support set and the preset sensing matrix to determine the second channel estimation matrix; update the updated residual based on the second channel estimation matrix.

[0040] In this step, the column index with the highest correlation to the current residual, i.e., the first target column index, has already been selected in the first operation. Next, the two column indices adjacent to the first target column index can be checked to determine whether their inner product satisfies the second preset condition. The second preset condition is usually used to select the column index with higher coherence among two column indices, which can be added to the support set as the second target column index. Then, based on the support set and the sensing matrix, least squares are performed to obtain a more accurate channel estimation matrix, i.e., the second channel estimation matrix. This new channel estimation matrix can then be used to update the residuals, removing the influence of the previously estimated channel components.

[0041] By selecting a column index adjacent to the first target column index, the local characteristics of the channel can be captured more accurately, especially when the actual transmission path angle falls between two grid points, thus more realistically reflecting changes in channel gain. Furthermore, by selecting the second target column index, the least squares solution can better reflect the overall state of the channel, thereby improving the accuracy of channel estimation.

[0042] Step S208: Perform the first operation and the second operation on the updated residual iteration, and determine whether the preset iteration stop condition is met after each first operation or the second operation is performed, until the preset iteration stop condition is met, and determine the target channel estimation matrix.

[0043] In this step, for each iteration, the first operation is performed: calculating the current residual (the inner product of the updated residual and all columns in the sensing matrix), and selecting the column index corresponding to the largest inner product as the first target column index. Then, the second operation is performed: considering the column indices adjacent to the first target column index, the column index satisfying the second preset condition is selected as the second target column index. These indices are added to the support set. Based on the updated support set, least squares are used to generate the channel estimation matrix for the current iteration. The residual is then updated using the channel estimation matrix for the current iteration, preparing for the next iteration. After each of the first or second operations, it is checked whether the iteration stopping condition has been met. If the stopping condition has not been met, the iteration process continues until the preset stopping condition is met. Common stopping conditions include: reaching the preset maximum number of iterations; and the residual amplitude falling below a certain threshold, indicating that the remaining signal energy is insufficient to generate meaningful channel estimation gain.

[0044] In each iteration, by determining new columns and updating the channel estimation matrix, the energy of the residuals is gradually reduced until it approaches zero. This means that the algorithm progressively approximates the channel components in the signal, thereby improving the accuracy of the estimation.

[0045] As an optional embodiment, the updated residual is iterated and the first and second operations are performed, wherein the Nth first operation and the Mth second operation are performed in parallel, and M is an integer less than N.

[0046] Optionally, N here is a positive integer. The first and second operations can be executed in parallel to reduce latency. Specifically, after the first operation selects the column index with the highest coherence, the second operation immediately begins, calculating the coherence of the neighbor column indices. Since this process depends on the result of the first operation, multiple neighbor column indices can be processed independently in parallel when calculating neighbor coherence. To reduce the overall latency, an inter-iteration parallel scheduling scheme can be adopted, allowing the first and second operations to be executed alternately during iterations. That is, after the first operation in the first iteration is completed, the second operation immediately starts, simultaneously beginning the first operation of the next iteration. This enables continuous streaming processing of the algorithm, rather than waiting for each operation to complete completely before proceeding to the next round. By processing the first and second operations in parallel, the channel estimation latency can be significantly reduced while maintaining estimation accuracy.

[0047] As an optional embodiment, a first parameter and a second parameter are set, wherein both the first parameter and the second parameter are prime numbers and coprime; a basis matrix is ​​set based on the first parameter and the second parameter; a cyclic shift matrix corresponding to the non-zero elements in the basis matrix is ​​generated; an all-zero matrix corresponding to the zero elements in the basis matrix is ​​determined; the cyclic shift matrix corresponding to the non-zero elements and the all-zero matrix corresponding to the zero elements are concatenated to determine the parity check matrix; a receiving beam matrix is ​​determined based on the parity check matrix and a preset array response matrix; and a preset sensing matrix is ​​determined based on the receiving beam matrix and the preset array response matrix.

[0048] Optionally, two prime numbers can be chosen as the first parameter *m* and the second parameter *q*, and these two prime numbers must be coprime. This is because prime numbers and coprime relationships help generate matrices with specific structures and properties, which are beneficial to the performance of channel estimation algorithms. A basis matrix is ​​constructed based on the first parameter *m* and the second parameter *q*. The construction of the basis matrix is ​​usually based on the mathematical properties of these two prime numbers, such as using modular arithmetic, exponential arithmetic, or mapping the relationship between *m* and *q* to matrix elements through some specific rules. If *m* and *q* are the number of rows and columns of the matrix, respectively, this can be achieved by generating a matrix with a special distribution of non-zero elements. For example, the position of the non-zero element in each row can be determined based on the relationship between the row number and *q*, ensuring that the non-zero elements in the entire basis matrix exhibit a certain sparse distribution.

[0049] For each non-zero element in the base matrix, a cyclic shift matrix corresponds to a non-zero element. A cyclic shift matrix is ​​a matrix generated by cyclic shifting basic units; its size and structure depend on the position of the non-zero element. For example, if a non-zero element appears in the i-th row and j-th column, the corresponding cyclic shift matrix might cyclically shift the basic units in a specific order. For zero elements in the base matrix, an all-zero matrix is ​​determined. The position of the zero element indicates where no operation is needed, so the corresponding matrix consists entirely of zeros, helping to reduce overall computational complexity and circuit design costs. All cyclic shift matrices corresponding to non-zero elements and all-zero matrices corresponding to zero elements are concatenated according to the layout of the base matrix. The concatenation method determines the structure of the final parity check matrix, which is typically a sparse matrix where non-zero elements are composed of cyclic shift matrices, and zero elements are composed of all-zero matrices.

[0050] To obtain the preset sensing matrix, the parity check matrix needs to be further combined with the array response matrix. The array response matrix describes the response characteristics of the physical antenna array, while the parity check matrix is ​​designed based on compressed sensing theory to reduce pilot overhead. The parity check matrix serves as an ideal structural template for the sensing matrix, guiding pilot design and hardware implementation in millimeter-wave MIMO systems. Therefore, ideally, the preset sensing matrix... It equals the parity check matrix H, that is, it requires To solve for the receive beam matrix that satisfies this condition. Multiply both sides of the equation on the right. ,get ,because Therefore, it is simplified to: ,in, The receiver beam matrix is ​​based on the parity check matrix and the preset array response matrix. Designed receiver beam matrix, This represents the conjugate transpose of the beam matrix. The receive beam matrix is ​​a core hardware control parameter of the receiver in a millimeter-wave massive MIMO system. It is a complex matrix that describes the weighted combination of signals from all antenna elements in each RF chain of the receiver array. After determining the receive beam matrix based on the parity check matrix, a preset sensing matrix that perfectly matches the parity check matrix will be generated.

[0051] The aforementioned method effectively utilizes the characteristics of quasi-cyclic low-density parity-check codes, providing a theoretical basis for pilot design in millimeter-wave hybrid beamforming systems. Through a carefully designed parity-check matrix, not only is the accuracy of channel estimation ensured, but pilot overhead is also significantly reduced, achieving efficient resource utilization. Furthermore, this method is adaptable to large-scale antenna array applications, improving the overall system performance and stability. Especially in densely populated user environments, it reduces the impact of pilot contamination, achieving superior communication quality.

[0052] As an optional embodiment, updating the initial residual based on the first channel estimation matrix to obtain the updated residual includes: determining the fitted signal based on the first channel estimation matrix and the preset sensing matrix; updating the initial residual based on the difference between the pilot signal and the fitted signal to determine the updated residual.

[0053] Optionally, in one iteration, channel estimation can be performed based on the currently selected support set (i.e., the index set). The indices in the support set correspond to columns in the sensing matrix, which are related to the channel information carried in the received signal. The first channel estimation matrix can be obtained using the least squares method. With the first channel estimation matrix, the next step is to generate a fitted signal by multiplying it by a preset sensing matrix. The fitted signal is calculated based on the current channel estimation matrix and the sensing matrix; its purpose is to predict the shape the received signal should present in a noise-free environment. Then, the current residual is updated based on the difference between the pilot signal and the fitted signal. The residual reflects the difference between the current channel estimation matrix and the actual received pilot signal.

[0054] After each residual update, the coherence between the new residual and the sensing matrix is ​​recalculated to determine the column indices to be added to the support set in the next iteration. This iterative process continues until a stopping criterion is met, such as the residual falling below a certain threshold or reaching a predetermined maximum number of iterations.

[0055] As an optional embodiment, the second channel estimation matrix is ​​determined by least squares solution based on a preset support set and a preset sensing matrix, including: determining a first sub-matrix based on the preset support set and preset sensing matrix corresponding to the first operation; updating the first sub-matrix according to the preset support set corresponding to the second operation to obtain a second sub-matrix; and determining the second channel estimation matrix by least squares solution based on the second sub-matrix.

[0056] Optionally, the first target column index can be added to the support set, and then a first sub-matrix can be constructed based on the support set and the preset sensing matrix. The sub-matrix contains all columns in the sensing matrix that correspond to the support set. After adding the second target column index to the support set, the first sub-matrix can be updated. That is, new columns are added from the preset sensing matrix to the first sub-matrix to obtain the second sub-matrix. Then, least squares solution is performed based on the second sub-matrix to determine the second channel estimation matrix. By efficiently utilizing existing channel estimation results and sensing matrices, and reducing the computational burden of least squares solution through iterative updating of sub-matrices, fast convergence of channel estimation is achieved.

[0057] In the first operation, a submatrix, i.e., the first submatrix, is extracted from the preset sensing matrix based on the current support set. In the second operation, a new column index (the second target column index) may be selected and added to the support set. At this time, the first submatrix needs to be updated and expanded according to the current support set to obtain the second submatrix.

[0058] Based on the updated submatrix and the received signal, a least-squares solution can be performed, i.e. ,in, To receive the signal, i.e., the pilot signal. This is the current channel estimation matrix. This is the pseudo-inverse of the submatrix. A matrix inversion bypass algorithm (MIB) can be used, where in each iteration, the submatrix inverse from the previous iteration can be used as a basis. And the newly added column indexes to this round This avoids the need for direct solution. The high computational costs involved.

[0059] In each iteration, updating the submatrix only involves updating the columns corresponding to the newly added indices, rather than recalculating the entire matrix. This simplifies the computation process, saves computational resources, and significantly improves the efficiency and accuracy of channel estimation. Furthermore, this method is applicable to high-speed data transmission in large-scale MIMO scenarios, significantly reducing pilot requirements while maintaining channel estimation accuracy, thus providing an effective solution to alleviate pilot pollution problems in densely populated user environments.

[0060] As an optional embodiment, the preset iteration stopping condition is that the number of iterations reaches a preset iteration number threshold or the updated residual is lower than a preset residual threshold.

[0061] Optionally, the preset iteration stopping condition is that the number of iterations reaches a preset iteration threshold or the updated residual is lower than a preset residual threshold. This condition ensures that the neighbor orthogonal matching pursuit algorithm can converge to a satisfactory channel estimation accuracy within a reasonable time, while avoiding unnecessary overcomputation and saving computational resources. The selection of the iteration threshold and residual threshold is based on the channel conditions and the required estimation accuracy, enabling the channel estimator to dynamically adapt to the needs of different application scenarios and achieving a balance between algorithm efficiency and accuracy. When the iteration threshold is reached, the algorithm will stop iterating even if the residual is still higher than the set threshold, in order to limit the maximum processing time and prevent a decrease in real-time performance. On the other hand, if the updated residual has fallen below the preset threshold during the iteration process, it indicates that the channel estimation within the current support set is accurate enough. At this time, the iteration will be terminated early, significantly reducing the amount of computation, thereby reducing the overall latency of channel estimation and improving the system's response speed and processing efficiency.

[0062] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the present invention is not limited to the described order of actions, because according to the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to the present invention.

[0063] Through the above description of the embodiments, those skilled in the art can clearly understand that the channel estimation method according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of the present invention.

[0064] According to an embodiment of the present invention, a channel estimation circuit for implementing the above-described channel estimation method is also provided. Figure 4 This is an architecture diagram of the channel estimation circuit provided according to an embodiment of the present invention, such as... Figure 4 As shown, the channel estimation circuit includes: a coherence solving module, an index positioning module, a support set storage module, a sensor matrix storage module, a least squares solving module, and a residual solving module. The channel estimation circuit will be described below.

[0065] The coherence solution module (Correlation) is used to receive the pilot signal emitted by the target terminal and use the pilot signal as the initial residual, and to calculate the inner product between the initial residual and multiple columns in the preset sensing matrix to obtain multiple inner products.

[0066] Specifically, this module performs the multiplication of the binary sensing matrix and the complex residual vector. Since the sensing matrix itself is binary and has structural characteristics (each column contains 5 1s), it can be implemented using a 5-operand addition tree, followed by absolute value addition. This design significantly reduces complexity compared to traditional pulsating array designs.

[0067] The Index Finding module, connected to the coherence solving module, is used to determine the column index corresponding to the column whose inner product satisfies the first preset condition as the first target column index, and to select the column index whose inner product satisfies the second preset condition among multiple column indexes adjacent to the first target column index as the second target column index.

[0068] Specifically, this module uses a comparator array to obtain the larger neighbor index of each index, and then uses a binary comparison tree to obtain the maximum index and its larger neighbor index layer by layer. At the same time, a mask is used to set the already selected index to zero to avoid repeated selection.

[0069] The support set storage module (Index Bank), connected to the index positioning module, is used to store the preset support set.

[0070] Specifically, this module can use a register array to store all selected indices, and when a new index appears, the new index value is stored in the corresponding register.

[0071] The Sensing Matrix Bank, connected to the Support Set Storage Module, is used to store sub-matrices determined based on a preset support set and a preset sensing matrix.

[0072] Specifically, considering the high overhead of storing the systolic array, a combinational logic block can be used to generate the columns of the sensing matrix. This is because its output depends only on the current input state. Using the combinational logic block, specific columns of the sensing matrix can be dynamically generated directly based on the column indices in the current iteration, without needing to store the entire matrix beforehand. The value (1 or 0) of each row in that column can be inferred from the column index using mathematical formulas or truth tables. For example, in some cases, the columns of the sensing matrix can be generated using specific mathematical functions or sequences. The columns of the sensing matrix indexed by the support set are stored in a register array, and their correlation with the received signal is simultaneously calculated and stored in the register array for least-squares solution.

[0073] The Least Squares Solver module, connected to the sensor matrix storage module, is used to perform least squares calculations based on submatrices to determine the channel estimation matrix.

[0074] Specifically, this module can use a matrix inverse bypass (MIB) algorithm. In each iteration, the inverse result is updated based on the inverse result of the previous round. The symmetry of the matrix to be inverted can be utilized to process the array in a triangular shape.

[0075] The residual solution module (Residual) is connected to the least squares solution module and the coherence solution module. It is used to update the initial residual based on the channel estimation matrix to obtain the updated residual.

[0076] Specifically, this module performs the following tasks: ,in, For residuals, In order to receive signals, The submatrix is ​​determined based on the support set and the sensing matrix. For vectors Set S The sub-vectors obtained by indexing can be implemented using selector arrays and addition trees, since the sensing matrix is ​​binary.

[0077] Embodiments of the present invention may provide a computer device. Optionally, in this embodiment, the computer device may be located in at least one of a plurality of network devices in a computer network. The computer device includes a memory and a processor.

[0078] The memory can be used to store software programs and modules, such as the program instructions / modules corresponding to the channel estimation method and apparatus in this embodiment of the invention. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory, thereby implementing the aforementioned channel estimation method. The memory may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory may further include memory remotely located relative to the processor, and these remote memories can be connected to a computer terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0079] The processor can invoke information and application programs stored in the memory through the transmission device to execute the following steps: receiving pilot signals emitted by the target terminal and using the pilot signals as initial residuals; performing a first operation and a second operation on the initial residuals, wherein the first operation is as follows: calculating the inner product between the initial residuals and multiple columns in a preset sensing matrix to obtain multiple inner products; selecting the column index corresponding to the column whose inner product satisfies a first preset condition as the first target column index; performing a least squares solution based on the first target column index and the preset sensing matrix to determine the first channel estimation matrix; updating the initial residuals based on the first channel estimation matrix to obtain the updated residuals; the second operation is as follows: selecting the column index whose inner product among multiple column indices adjacent to the first target column index satisfies a second preset condition as the second target column index; performing a least squares solution based on the second target column index and the preset sensing matrix to determine the second channel estimation matrix; updating the updated residuals based on the second channel estimation matrix; iteratively executing the first operation and the second operation on the updated residuals, and determining whether a preset iteration stop condition has been reached after each execution of the first operation or the second operation, until the preset iteration stop condition is reached, to determine the target channel estimation matrix.

[0080] Optionally, the processor may also execute program code with the following steps: iteratively performing a first operation and a second operation on the updated residual, wherein the Nth first operation and the Mth second operation are executed in parallel, and M is an integer less than N.

[0081] Optionally, the processor may also execute program code with the following steps: setting a first parameter and a second parameter, wherein the first parameter and the second parameter are both prime numbers and coprime; setting a basis matrix based on the first parameter and the second parameter; generating a cyclic shift matrix corresponding to the non-zero elements in the basis matrix; determining an all-zero matrix corresponding to the zero elements in the basis matrix; concatenating the cyclic shift matrix corresponding to the non-zero elements and the all-zero matrix corresponding to the zero elements to determine a parity check matrix; determining a receiving beam matrix based on the parity check matrix and a preset array response matrix; and determining a preset sensing matrix based on the receiving beam matrix and the preset array response matrix.

[0082] Optionally, the processor may also execute program code for the following steps: updating the initial residual based on the first channel estimation matrix to obtain the updated residual, including: determining the fitted signal based on the first channel estimation matrix and the preset sensing matrix; updating the initial residual based on the difference between the pilot signal and the fitted signal to determine the updated residual.

[0083] Optionally, the processor may also execute program code for the following steps: performing least squares solution based on a preset support set and a preset sensing matrix to determine a second channel estimation matrix, including: determining a first sub-matrix based on the preset support set and preset sensing matrix corresponding to the first operation; updating the first sub-matrix according to the preset support set corresponding to the second operation to obtain a second sub-matrix; and performing least squares solution based on the second sub-matrix to determine the second channel estimation matrix.

[0084] Optionally, the processor may also execute program code with the following steps: the preset iteration stop condition is that the number of iterations reaches a preset iteration number threshold or the updated residual is lower than a preset residual threshold.

[0085] This invention provides a channel estimation method that receives a pilot signal from a target terminal and uses the pilot signal as an initial residual. The initial residual is then subjected to a first operation and a second operation. The first operation is as follows: The inner product between the initial residual and multiple columns of a preset sensing matrix is ​​calculated to obtain multiple inner products; the column index corresponding to the column whose inner product satisfies a first preset condition is selected as the first target column index and added to a preset support set; based on the preset support set and the preset sensing matrix, least squares is performed to determine the first channel estimation matrix; the initial residual is updated based on the first channel estimation matrix to obtain the updated residual. The second operation is as follows: Multiple column indices adjacent to the first target column index are selected... The column index of the inner product that satisfies the second preset condition is the second target column index, and the second target column index is added to the preset support set. Based on the preset support set and the preset sensing matrix, least squares solution is performed to determine the second channel estimation matrix. The updated residual is updated based on the second channel estimation matrix. The updated residual is iteratively executed with the first and second operations, and after each execution of the first or second operation, it is determined whether the preset iteration stop condition is met. This process continues until the preset iteration stop condition is met, and the target channel estimation matrix is ​​determined. This achieves the goal of reducing pilot requirements, thereby improving the accuracy of channel estimation and solving the technical problem of low channel estimation accuracy in dense user scenarios for millimeter-wave channel estimation.

[0086] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing the hardware related to the terminal device. The program can be stored in a non-volatile storage medium, which may include: flash drive, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.

[0087] Embodiments of the present invention also provide a non-volatile storage medium. Optionally, in this embodiment, the aforementioned non-volatile storage medium can be used to store the program code executed by the channel estimation method provided in the above embodiments.

[0088] Optionally, in this embodiment, the non-volatile storage medium may be located in any computer terminal in a group of computer terminals in a computer network, or in any mobile terminal in a group of mobile terminals.

[0089] Optionally, in this embodiment, the non-volatile storage medium is configured to store program code for performing the following steps: receiving a pilot signal emitted by a target terminal and using the pilot signal as an initial residual; performing a first operation and a second operation on the initial residual, wherein the first operation is as follows: calculating the inner product between the initial residual and multiple columns in a preset sensing matrix to obtain multiple inner products; selecting the column index corresponding to the column whose inner product satisfies a first preset condition as a first target column index; performing least squares calculation based on the first target column index and the preset sensing matrix to determine a first channel estimation matrix; and performing a second operation on the initial residual based on the first channel estimation matrix. The initial residual is updated to obtain the updated residual. The second operation is as follows: Select the column index whose inner product among multiple column indices adjacent to the first target column index satisfies the second preset condition as the second target column index; perform least squares solution based on the second target column index and the preset sensing matrix to determine the second channel estimation matrix; update the updated residual based on the second channel estimation matrix; iteratively execute the first and second operations on the updated residual, and determine whether the preset iteration stop condition is reached after each execution of the first or second operation, until the preset iteration stop condition is reached, and determine the target channel estimation matrix.

[0090] Optionally, in this embodiment, the non-volatile storage medium is configured to store program code for performing the following steps: iterating the updated residual and performing a first operation and a second operation, wherein the Nth first operation and the Mth second operation are performed in parallel, and M is an integer less than N.

[0091] Optionally, in this embodiment, the non-volatile storage medium is configured to store program code for performing the following steps: setting a first parameter and a second parameter, wherein the first parameter and the second parameter are both prime numbers and coprime; setting a basis matrix based on the first parameter and the second parameter; generating a cyclic shift matrix corresponding to the non-zero elements in the basis matrix; determining an all-zero matrix corresponding to the zero elements in the basis matrix; concatenating the cyclic shift matrix corresponding to the non-zero elements and the all-zero matrix corresponding to the zero elements to determine a parity check matrix; determining a receiving beam matrix based on the parity check matrix and a preset array response matrix; and determining a preset sensing matrix based on the receiving beam matrix and the preset array response matrix.

[0092] Optionally, in this embodiment, the non-volatile storage medium is configured to store program code for performing the following steps: updating the initial residual based on the first channel estimation matrix to obtain the updated residual, including: determining the fitted signal based on the first channel estimation matrix and the preset sensing matrix; updating the initial residual based on the difference between the pilot signal and the fitted signal to determine the updated residual.

[0093] Optionally, in this embodiment, the non-volatile storage medium is configured to store program code for performing the following steps: determining a second channel estimation matrix by performing least squares solution based on a preset support set and a preset sensing matrix, including: determining a first sub-matrix based on the preset support set and preset sensing matrix corresponding to the first operation; updating the first sub-matrix according to the preset support set corresponding to the second operation to obtain a second sub-matrix; and determining the second channel estimation matrix by performing least squares solution based on the second sub-matrix.

[0094] Optionally, in this embodiment, the non-volatile storage medium is configured to store program code for performing the following steps: the preset iteration stop condition is that the number of iterations reaches a preset iteration number threshold or the updated residual is lower than a preset residual threshold.

[0095] Embodiments of the present invention also provide a computer program product, including a computer program. Optionally, in this embodiment, when the computer program is executed by a processor, it can perform: receiving a pilot signal emitted by a target terminal and using the pilot signal as an initial residual; performing a first operation and a second operation on the initial residual, wherein the first operation is as follows: calculating the inner product between the initial residual and multiple columns in a preset sensing matrix to obtain multiple inner products; selecting the column index corresponding to the column whose inner product satisfies a first preset condition as a first target column index; performing least squares calculation based on the first target column index and the preset sensing matrix to determine a first channel estimation matrix; and performing a second operation based on the first target column index and the preset sensing matrix to determine a first channel estimation matrix. The first operation updates the initial residual using the channel estimation matrix to obtain the updated residual. The second operation is as follows: Select the column index whose inner product among multiple column indices adjacent to the first target column index satisfies the second preset condition as the second target column index; Based on the second target column index and the preset sensing matrix, perform least squares solution to determine the second channel estimation matrix; Update the updated residual based on the second channel estimation matrix; Iteratively execute the first and second operations on the updated residual, and determine whether the preset iteration stop condition is reached after each execution of the first or second operation, until the preset iteration stop condition is reached, and determine the target channel estimation matrix.

[0096] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0097] In the above embodiments of the present invention, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0098] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.

[0099] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0100] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0101] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a non-volatile storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0102] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.

Claims

1. A channel estimation method, characterized in that, include: Receive the pilot signal sent by the target terminal and use the pilot signal as the initial residual; Perform a first operation and a second operation on the initial residual, wherein the first operation is as follows: Calculate the inner product between the initial residual and multiple columns in the preset sensing matrix to obtain multiple inner products; Select the column index corresponding to the column whose inner product satisfies the first preset condition as the first target column index and add the first target column index to the preset support set; Based on the preset support set and the preset sensing matrix, the first channel estimation matrix is ​​determined by least squares solution. The initial residual is updated based on the first channel estimation matrix to obtain the updated residual; The second operation is as follows: Select the column index whose inner product among multiple column indexes adjacent to the first target column index satisfies the second preset condition as the second target column index, and add the second target column index to the preset support set; Based on the preset support set and the preset sensing matrix, the second channel estimation matrix is ​​determined by least squares solution. The updated residual is updated based on the second channel estimation matrix; The first operation and the second operation are performed iteratively on the updated residual, and after each execution of the first operation or the second operation, it is determined whether the preset iteration stop condition has been reached, until the preset iteration stop condition is reached, and the target channel estimation matrix is ​​determined.

2. The method according to claim 1, characterized in that, The first operation and the second operation are performed iteratively on the updated residual, wherein the Nth first operation and the Mth second operation are performed in parallel, and M is an integer less than N.

3. The method according to claim 1, characterized in that, Also includes: Set a first parameter and a second parameter, wherein both the first parameter and the second parameter are prime numbers; Based on the first parameter and the second parameter, set the base matrix; Based on the non-zero elements in the basis matrix, generate a cyclic shift matrix corresponding to the non-zero elements; Based on the zero elements in the basis matrix, determine the all-zero matrix corresponding to the zero elements; The cyclic shift matrix corresponding to the non-zero element and the all-zero matrix corresponding to the zero element are concatenated to determine the check matrix; Based on the verification matrix and the preset array response matrix, the receiving beam matrix is ​​determined; The preset sensing matrix is ​​determined based on the received beam matrix and the preset array response matrix.

4. The method according to claim 1, characterized in that, The step of updating the initial residual based on the first channel estimation matrix to obtain the updated residual includes: Based on the first channel estimation matrix and the preset sensing matrix, the fitted signal is determined; Based on the difference between the pilot signal and the fitted signal, the initial residual is updated to determine the updated residual.

5. The method according to claim 1, characterized in that, The step of determining the second channel estimation matrix by performing a least-squares solution based on the preset support set and the preset sensing matrix includes: Based on the preset support set and the preset sensing matrix corresponding to the first operation, the first sub-matrix is ​​determined; Based on the preset support set corresponding to the second operation, the first submatrix is ​​updated to obtain the second submatrix; The second channel estimation matrix is ​​determined by least squares solution based on the second submatrix.

6. The method according to claim 1, characterized in that, The preset iteration stop condition is when the number of iterations reaches a preset iteration threshold or the updated residual is lower than a preset residual threshold.

7. A channel estimation circuit, characterized in that, include: The coherence solving module is used to receive the pilot signal emitted by the target terminal, use the pilot signal as the initial residual, and calculate the inner product between the initial residual and multiple columns in the preset sensing matrix to obtain multiple inner products. The index positioning module, connected to the coherence solving module, is used to determine the column index corresponding to the column whose inner product satisfies the first preset condition as the first target column index and to select the column index whose inner product satisfies the second preset condition among multiple column indexes adjacent to the first target column index as the second target column index. A support set storage module, connected to the index positioning module, is used to store a preset support set; A sensing matrix storage module, connected to the support set storage module, is used to store sub-matrices determined based on the preset support set and the preset sensing matrix; The least squares solution module is connected to the sensing matrix storage module and is used to perform least squares solution based on the sub-matrix to determine the channel estimation matrix; The residual solving module, connected to the least squares solving module and the coherence solving module, is used to update the initial residual based on the channel estimation matrix to obtain the updated residual.

8. A non-volatile storage medium, characterized in that, The non-volatile storage medium includes a stored program, wherein, when the program is executed, it controls the device containing the non-volatile storage medium to perform the channel estimation method according to any one of claims 1 to 6.

9. A computer device, characterized in that, include: Memory and processor The memory stores computer programs; The processor is configured to execute a computer program stored in the memory, wherein when the computer program is executed, the processor performs the channel estimation method according to any one of claims 1 to 6.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the channel estimation method according to any one of claims 1 to 6.