CN116800309A - Distributed precoding method and device - Google Patents

Distributed precoding method and device Download PDF

Info

Publication number
CN116800309A
CN116800309A CN202210264469.0A CN202210264469A CN116800309A CN 116800309 A CN116800309 A CN 116800309A CN 202210264469 A CN202210264469 A CN 202210264469A CN 116800309 A CN116800309 A CN 116800309A
Authority
CN
China
Prior art keywords
matrix
node
sub
precoding
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210264469.0A
Other languages
Chinese (zh)
Inventor
史清江
赵小彤
李勉
管鑫
王勃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210264469.0A priority Critical patent/CN116800309A/en
Publication of CN116800309A publication Critical patent/CN116800309A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/0413MIMO systems
    • H04B7/0456Selection of precoding matrices or codebooks, e.g. using matrices antenna weighting

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The embodiment of the application provides a precoding method, which is executed by a central node and comprises the following steps: acquiring C first matrices, wherein the first matrix of the ith sub-node in the C sub-nodes is based on the channel matrixObtained channel matrixA channel matrix from the antenna corresponding to the ith sub-node to the kth user; transmitting a second matrix to each of the C child nodes, the second matrix being obtained from the C first matrices; acquiring C third matrices, wherein the third matrix of the ith sub-node in the C sub-nodes is based on the channel matrixAnd a second matrix; transmitting a fourth matrix to each of the C sub-nodes, the fourth matrixThe matrix is obtained according to the C third matrices, the fourth matrix is used for each of the C sub-nodes to calculate the corresponding precoding matrix components, and the precoding matrix components form the precoding matrix, so that the bottlenecks of high data interaction quantity and calculation complexity are relieved.

Description

Distributed precoding method and device
Technical Field
The embodiment of the application relates to the field of communication, and more particularly relates to a distributed precoding method and device.
Background
In a large-scale multiple-input multiple-output (Massive MIMO) technology, interference between multiple users and interference between multiple signal streams of the same user can be reduced by a precoding technology, which is beneficial to improving signal quality, realizing space division multiplexing and improving spectrum utilization.
Since massive MIMO technology was proposed and applied, precoding technology has attracted research interest to a large number of technicians. Existing Matched Filter (MF) and Zero Forcing (ZF) and its derivative algorithms are easy to distribute, but the performance loss is huge in the case of centralized distributed design. Other higher performance algorithms, such as minimum mean square error (minimum mean square error, MMSE) precoding algorithms, also present high data size transmission and computational complexity to the system when actually applied to a large-scale antenna array base station.
With the trend of ultra-large-scale antenna arrays applied in the future, the dimensions of a channel matrix and a precoding matrix are greatly increased, so that the implementation difficulty of the traditional centralized precoding algorithm is greatly increased. Therefore, a distributed precoding algorithm is needed to alleviate the bottleneck of high data interaction and computational complexity, and fully exploit the high spectral efficiency advantage of the massive MIMO technology.
Disclosure of Invention
The embodiment of the application provides a distributed precoding calculation method and a distributed precoding calculation device, which can relieve the bottleneck of high data interaction quantity and calculation complexity and fully exert the high spectrum efficiency advantage of a large-scale MIMO technology.
In a first aspect, a precoding method is provided, applied to a system including a central node and sub-nodes, the method being performed by the central node, the method comprising: obtaining C first matrices from C sub-nodes, wherein the first matrix of the ith sub-node in the C sub-nodes is based on the channel matrixObtained, the channel matrix->The channel matrix from the antenna corresponding to the ith sub-node to the kth user is obtained, wherein C, i and K are positive integer numbers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; transmitting a second matrix to each of the C child nodes, the second matrix being obtained from the C first matrices; obtaining C third matrices from C sub-nodes, the third matrix of the ith sub-node in the C sub-nodes being based on the channel matrix +.>And the second matrix; and transmitting a fourth matrix to each of the C sub-nodes, the fourth matrix being obtained according to the C third matrices, the fourth matrix being used for each of the C sub-nodes to calculate a respective corresponding precoding matrix component, the precoding matrix components constituting a precoding matrix.
Based on the technical scheme, the center node obtains a first matrix sent by each of the C sub-nodes, then sends a second matrix obtained according to the first matrix to each of the C sub-nodes, the center node receives a third matrix sent by each of the C sub-nodes, sends a fourth matrix obtained according to the third matrix to each of the C sub-nodes, and finally calculates precoding components by each of the C sub-nodes to finally complete the precoding matrix. Based on the above, the embodiment of the application enables the EZF pre-coding algorithm to be easily realized on the distributed baseband processing architecture, solves the problem of SVD (singular value decomposition) of the global channel state matrix, can be directly realized in a distributed manner, and has lower information interaction quantity.
With reference to the first aspect, in certain implementations of the first aspect, the first matrix of the ith child node of the C child nodes is based on a channel matrixThe method comprises the following steps: the first matrix of the ith sub-node of the C sub-nodes is defined by the channel matrix +.>And the channel matrix->A matrix obtained by multiplying the conjugate transpose matrix of (a). Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the first aspect, in certain implementation manners of the first aspect, the second matrix is obtained according to the C first matrices, and further includes: obtaining a fifth matrix, wherein the fifth matrix is obtained by summing the C first matrices; and decomposing the characteristic value of the fifth matrix to obtain the second matrix. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the first aspect, in certain implementations of the first aspect, the third matrix of the ith sub-node of the C sub-nodes is based on the channel matrixAnd the second matrix, comprising: the third matrix of the ith sub-node of the C sub-nodes is a matrix obtained by multiplying the conjugate transpose matrix of a sixth matrix, which is the K seventh matrices, byA matrix formed by column splicing, wherein the seventh matrix is the channel matrix +.>Front N of the product of the conjugate transpose of (a) and the second matrix k A matrix of column vectors. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
With reference to the first aspect, in certain implementations of the first aspect, the fourth matrix is obtained according to the C third matrices, including: the fourth matrix is a matrix obtained by inverting a matrix obtained by summing the C third matrices. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
In a second aspect, a precoding method is provided, the method comprising: the ith node obtains a first matrix from the ith-1 node, wherein the first matrix from the ith-1 node is wherein ,The channel matrix from the antenna corresponding to the C node to the kth user is 2-i-C, wherein C is the number of the nodes participating in precoding, i, k, C and C are positive integers; the ith node sends a first matrix of the ith node to the (i+1) th node, wherein the first matrix of the ith node is +.>The C node sends a second matrix to the 1 st node, and the i-1 st node in the C nodes sends the second matrix to the i node, wherein the second matrix is obtained according to the first matrix of the C node, C is a positive integer, and i+1 is less than or equal to C; the ith node obtains Taking a third matrix from the i-1 th node, wherein the third matrix from the i-1 th node is +.> wherein ,Is based on K channel matrices->And the second matrix; the ith node transmits a third matrix of the ith node to the (i+1) th node, wherein the third matrix of the ith node is +.>The C node sends a fourth matrix to the 1 st node, and the i-1 st node in the C nodes sends the fourth matrix to the i node, wherein the fourth matrix is obtained according to the third matrix of the C nodes; and each node in the C nodes calculates a corresponding precoding matrix component according to the fourth matrix, and the precoding matrix components form a precoding matrix.
Based on the above technical solution, from a specific node, a first matrix of a previous node is sent to a next node in a ring-shaped chain manner, and a second matrix is calculated by a C node, and then sent to a 1 st node in a ring-shaped chain manner. Then, from a specific node, the C node sends the third matrix of the previous node to the next node in a circular chain type mode, the C node obtains the third matrix of the C node, calculates the fourth matrix, and then sends the fourth matrix to the 1 st node in a circular chain type mode. And finally, calculating the precoding components by each child node, and finally completing the precoding matrix. Based on the above, the embodiment of the application enables the EZF pre-coding algorithm to be easily realized on the distributed baseband processing architecture, solves the SVD decomposition of the global channel state matrix, can be directly realized in a distributed manner, and has lower information interaction quantity.
With reference to the second aspect, in some implementations of the second aspect, the second matrix is obtained according to the first matrix of the C-th node, further including: and decomposing the characteristic value of the first matrix of the C node to obtain the second matrix. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
With reference to the second aspect, in certain implementations of the second aspect, theIs based on K channel matrices->And the second matrix, comprising: this->Is a matrix obtained by multiplying a conjugate transpose matrix of a fifth matrix by the fifth matrix, wherein the fifth matrix is formed by splicing K sixth matrices according to columns, and the sixth matrix is the channel matrixFront N of the product of the conjugate transpose of (a) and the second matrix k A matrix of column vectors. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the second aspect, in certain implementations of the second aspect, the fourth matrix is obtained according to the C third matrices, including: the fourth matrix is a matrix obtained by inverting the matrix obtained by summing the C third matrices. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
With reference to the second aspect, in some implementations of the second aspect, each node of the C nodes calculates a respective precoding matrix component according to the fourth matrix, including: and each node in the C nodes multiplies the matrix obtained by splicing the K sixth matrices according to columns by the fourth matrix to obtain corresponding precoding matrix components. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
In a third aspect, a precoding method is provided, the method being performed by a central node, the method comprising: obtaining C.times.K 2 A first matrix of C x K 2 The first matrix is from C sub-nodes, and the first matrix of the ith sub-node in the C sub-nodes isThe first matrix of the ith sub-node is based on the channel matrix +.>And channel matrix->Obtained, the channel matrix->Channel matrix from antenna corresponding to ith sub-node to kth user, which is +.>The channel matrix from the antenna corresponding to the ith sub-node to the jth user is formed, wherein C, i, K and j are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; transmitting a second matrix to each of the C child nodes, the second matrix being based on the c×k 2 A first matrix obtained for the C sub-nodesEach child node calculates a respective precoding matrix component that forms a precoding matrix.
Based on the technical scheme, the center node obtains a first matrix sent by each of the C sub-nodes, then sends a second matrix obtained according to the first matrix to each of the C sub-nodes, the center node receives a third matrix sent by each of the C sub-nodes, sends a fourth matrix obtained according to the third matrix to each of the C sub-nodes, and finally calculates precoding components by each of the C sub-nodes to finally complete the precoding matrix. Based on this, the embodiments of the present application propose and demonstrate a precoding matrix p=h H The feasibility of the linear expression form of X is achieved, so that R-WMMSE precoding is proposed by the design, and the optimization of the dimension of the optimization variable of WMMSE precoding is achieved. In addition, the technical scheme of the application can further decompose the structure of X, thereby reducing the dimension of information interaction and effectively relieving the problems of high information interaction and calculation complexity.
With reference to the third aspect, in some implementations of the third aspect, the first matrix of the ith child node of the C child nodes is based on a channel matrix And channel matrix->The method comprises the following steps: the first matrix of the ith sub-node of the C sub-nodes is defined by the channel matrix +.>And the channel matrix->A matrix obtained by multiplying the conjugate transpose matrix of (a). Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
Combine with the firstIn some implementations of the third aspect, the second matrix is based on the c×k 2 The first matrix is obtained, further comprising: obtaining a third matrix, wherein the third matrix is a matrix obtained by combining matrixes obtained by summing the C first matrices; obtaining a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the weight of the dimension reduction of K users; obtaining a fifth matrix, wherein the fifth matrix is a matrix obtained by inverting the difference value of the product of the unit matrix I and the weight values of the fourth matrix, the third matrix and the dimension reduction of the kth user; and obtaining the second matrix according to the third matrix, the fourth matrix and the fifth matrix. Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the third aspect, in some implementations of the third aspect, the obtaining the fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix, and the dimension-reduced weights of the K users includes: according to the formula
Obtaining the fourth matrix, wherein U k (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) The weight values of the dimension reduction, X of K users obtained by the n-1 th iteration k (n-1) The weight of the dimension reduction of the kth user obtained for the nth-1 iteration, < ->N is the iteration number, wherein 1 is less than or equal toK is less than or equal to K, and K is the number of users. Based on the technical scheme, the R-WMMSE precoding is provided, the optimization of the dimensionality of the optimization variable of the WMMSE precoding is realized, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
With reference to the third aspect, in some implementations of the third aspect, the obtaining the fifth matrix includes: according to the formula
Obtaining the fifth matrix, wherein W k (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,x is a submatrix of the third matrix k (n-1) The weight of the kth user obtained by the n-1 th iteration is the iteration number, n is the iteration number, K is more than or equal to 1 and less than or equal to K, and K is the number of users. Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the third aspect, in some implementations of the third aspect, the obtaining the second matrix according to the third matrix, the fourth matrix, and the fifth matrix includes: according to r iterations of the third matrix, the fourth matrix and the fifth matrix, obtaining the second matrix, wherein the nth iteration is performed to obtain a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that the convergence condition is not satisfied, the n+1st iteration is executed to obtain a fourth matrix U k (n+1) Fifth matrix W k (n+1) And a second matrix X k (n+1) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) Under the condition that convergence condition is met, the second matrix X obtained by the nth iteration is obtained k (n) As the second matrix output, wherein n is not less than 1 and not more than r, and n+1 is not less than 1 and not more than r; wherein the nth iteration is performed according to the following formula, obtaining the second matrix:
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max For maximum transmit power, α j A is the weight coefficient of the jth user i For the weight coefficient of the ith user, alpha k Is the weight coefficient of the kth user, wherein M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) A fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->Is a sub-matrix of the third matrix. Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the third aspect, in certain implementations of the third aspect, the method includes: obtaining a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of K users according to columns; decomposing the sixth matrix into a first sub-matrix and a second sub-matrix, wherein the first sub-matrix is the fourth matrix U with K users k For the block diagonal matrix U of diagonal blocks, the second submatrix b= (U H HH H U+μW -1 ) -1, wherein ,w is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H Is the conjugate transpose of the first sub-matrix, H is the third matrix, H H Is the conjugate transpose of the third matrix, W -1 Sigma is the inverse of the second sub-matrix j 2 Noise power for jth user, P max For maximum transmit power, α k For the weight coefficient of the kth user, m= UWU H ,W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U. Based on the technical scheme, the structure of X can be further decomposed, so that the dimension of information interaction is reduced, and the problems of high information interaction and calculation complexity are effectively solved.
In a fourth aspect, a precoding method is provided, the method comprising: the ith node obtains a first matrix from the ith-1 node, wherein the first matrix from the ith-1 node is wherein ,Channel matrix from antenna corresponding to c node to kth user, +.>The channel matrix from the antenna corresponding to the C node to the j user is 2.ltoreq.i.ltoreq.C, wherein C is the number of the nodes participating in precoding, i, K, C and C are positive integers, 1.ltoreq.k, j.ltoreq.K and K is the number of users; the ith node sends a first matrix of the ith node to the (i+1) th node, wherein the first matrix of the ith node is thatThe C node sends the 1 st nodeA second matrix, and the i-1 th node of the C nodes transmits the second matrix to the i-th node, the second matrix being obtained according to the first matrix of the C-th node; each node in the C nodes calculates a corresponding precoding matrix component according to the second matrix, and the precoding matrix components form a precoding matrix, wherein C is a positive integer, and i+1 is less than or equal to C.
Based on the above technical solution, from a specific node, a first matrix of a previous node is sent to a next node in a ring-shaped chain manner, and a second matrix is calculated by a C node, and then sent to a 1 st node in a ring-shaped chain manner. Then, from a specific node, the C node sends the third matrix of the previous node to the next node in a circular chain type mode, the C node obtains the third matrix of the C node, calculates the fourth matrix, and then sends the fourth matrix to the 1 st node in a circular chain type mode. And finally, calculating the precoding components by each child node, and finally completing the precoding matrix. Based on this, the embodiments of the present application propose and demonstrate a precoding matrix p=h H The feasibility of the linear expression form of X is achieved, so that R-WMMSE precoding is proposed by the design, and the optimization of the dimension of the optimization variable of WMMSE precoding is achieved. In addition, the technical scheme of the application can further decompose the structure of X, thereby reducing the dimension of information interaction and effectively relieving the problems of high information interaction and calculation complexity.
With reference to the fourth aspect, in some implementations of the fourth aspect, the second matrix is obtained according to the first matrix of the C-th node, further including: obtaining a third matrix, wherein the third matrix is obtained by combining the first matrix of the C node; obtaining a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the weight of the dimension reduction of K users; obtaining a fifth matrix, wherein the fifth matrix is a matrix obtained by inverting the difference value of the product of the unit matrix I and the weight values of the fourth matrix, the third matrix and the dimension reduction of the kth user; the second matrix is obtained according to the third matrix, the fourth matrix and the fifth matrix. Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the fourth aspect, in some implementations of the fourth aspect, the obtaining the fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix, and the dimension-reduced weights of the K users includes: according to the formula
Obtaining the fourth matrix, wherein U k (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) The dimension reduction weight, X of K users obtained for the n-1 th iteration k (n-1) The weight of the dimension reduction of the kth user obtained for the nth-1 iteration, < ->And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users. Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the fourth aspect, in some implementations of the fourth aspect, the obtaining the fifth matrix includes: according to the formula
The fifth matrix is obtained and the second matrix is obtained,wherein W is k (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,x is a submatrix of the third matrix k (n-1) The weight of the kth user obtained by the n-1 th iteration is the iteration number, n is the iteration number, K is more than or equal to 1 and less than or equal to K, and K is the number of users. Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the fourth aspect, in some implementations of the fourth aspect, the obtaining the second matrix according to the third matrix, the fourth matrix, and the fifth matrix includes: according to r iterations of the third matrix, the fourth matrix and the fifth matrix, obtaining the second matrix, wherein the nth iteration is performed to obtain a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that the convergence condition is not satisfied, the n+1st iteration is executed to obtain a fourth matrix U k (n+1) Fifth matrix W k (n+1) And a second matrix X k (n+1) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) Under the condition that convergence condition is met, the second matrix X obtained by the nth iteration is obtained k (n) As the second matrix output, wherein n is not less than 1 and not more than r, and n+1 is not less than 1 and not more than r; wherein the nth iteration is performed according to the following formula, obtaining the second matrix:
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max For maximum transmit power, α j A is the weight coefficient of the jth user i For the weight coefficient of the ith user, alpha k A weight coefficient for the kth user, where M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) For the fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->Is a sub-matrix of the third matrix. Based on the technical scheme, the R-WMMSE precoding is provided, the optimization of the dimension of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the fourth aspect, in some implementations of the fourth aspect, each node of the C nodes calculates a respective precoding matrix component according to the second matrix, including: each of the C nodes will have K of the nodesAnd multiplying the matrix obtained by splicing the conjugated transposed matrix according to the columns by the second matrix to obtain corresponding precoding matrix components. Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the fourth aspect, in some implementations of the fourth aspect, the method includes: obtaining a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of K users according to columns; decomposing the sixth matrix into a first sub-matrix and a second sub-matrix, the first sub-matrix being the first of the K users Four-matrix U k For the block diagonal matrix U of diagonal blocks, the second submatrix b= (U H HH H U+μW -1 ) -1, wherein ,w is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H Is the conjugate transpose of the first sub-matrix, H is the third matrix, H H Is the conjugate transpose of the third matrix, W -1 Sigma is the inverse of the second sub-matrix j 2 Noise power for jth user, P max For maximum transmit power, α k For the weight coefficient of the kth user, m= UWU H ,W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U. Based on the technical scheme, the structure of X can be further decomposed, so that the dimension of information interaction is reduced, and the problems of high information interaction and calculation complexity are effectively solved.
In a fifth aspect, there is provided a precoding method applied to a system including a central node and a child node, the method being performed by the child node, the method comprising: according to the channel matrixObtaining a first matrix, the channel matrix +.>The channel matrix from the antenna corresponding to the ith sub-node to the kth user is formed, wherein C, i and K are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; transmitting the first matrix to a central node; receiving a second matrix sent by the central node, wherein the second matrix is obtained according to the C first matrices; according to the channel matrix- >And the second matrix to obtain a third matrix; receiving a fourth matrix transmitted by the central node, the fourth matrix being based on the C thA three-matrix is obtained; and calculating a precoding matrix component according to the fourth matrix, wherein the precoding matrix component forms a precoding matrix.
Based on the technical scheme, each of the C sub-nodes sends a first matrix to the central node, then the central node sends a second matrix obtained according to the first matrix to each sub-node, each sub-node obtains a third matrix according to the second matrix and the channel matrix, and sends the third matrix to each sub-node, the central node sends a fourth matrix obtained according to the third matrix to each sub-node, and finally each sub-node calculates precoding components, so that the precoding matrix is finally completed. Based on the above, the embodiment of the application enables the EZF pre-coding algorithm to be easily realized on a distributed baseband processing architecture, solves the SVD decomposition of a global channel state matrix, can be directly realized in a distributed manner, and has lower information interaction quantity.
With reference to the fifth aspect, in certain implementations of the fifth aspect, the method further includes Obtaining a first matrix comprising: the channel matrix is->And the channel matrix->The first matrix is obtained by multiplying the conjugate transpose matrix of (a). Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the fifth aspect, in certain implementations of the fifth aspect, the method further includes generating a channel matrix according to the channel matrixAnd the second matrix obtains a third matrix, further comprising: selecting the channel matrix->Front N of the product of the conjugate transpose of (a) and the second matrix k The column vectors form a seventh matrix; splicing K seventh matrixes according to columns to form a sixth matrix; and multiplying the conjugate transpose matrix of the sixth matrix by the sixth matrix to obtain the third matrix. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
With reference to the fifth aspect, in certain implementations of the fifth aspect, the fourth matrix is obtained according to C of the third matrices, including: the fourth matrix is a matrix obtained by inverting the matrix obtained by summing the C third matrices. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
With reference to the fifth aspect, in certain implementations of the fifth aspect, calculating a precoding matrix component according to the fourth matrix includes: multiplying the matrix obtained by splicing the K seventh matrices according to the columns by the fourth matrix to obtain the precoding matrix component. Based on the technical scheme, the EZF pre-coding algorithm can be easily realized on the distributed baseband processing architecture, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
In a sixth aspect, there is provided a precoding method applied to a system including a central node and a child node, the method being performed by the child node, the method comprising: according to the channel matrixAnd channel matrix->Obtaining a first matrix of channelsIs the firstChannel matrix from the antennas corresponding to the i sub-nodes to the kth user, the channel matrix +.>The channel matrix from the antenna corresponding to the ith sub-node to the jth user is obtained, wherein C, i, K and j are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; transmitting the first matrix to a central node; receiving a second matrix transmitted by the central node, the second matrix being based on C x K 2 Obtaining the first matrix; and calculating a precoding matrix component according to the second matrix, wherein the precoding matrix component forms a precoding matrix.
Based on the technical scheme, each of the C sub-nodes is based on the channel matrixAnd channel matrix->And obtaining a first matrix, sending the first matrix to a central node, then sending a second matrix obtained according to the first matrix to each sub-node by the central node, and calculating a precoding matrix component by each sub-node according to the second matrix to finally finish the precoding matrix. Based on this, the embodiments of the present application propose and demonstrate a precoding matrix p=h H The feasibility of the linear representation form of X is achieved, so that R-WMMSE precoding is proposed, optimization of the dimensionality of an optimization variable of WMMSE precoding is achieved, and the bottlenecks of high data interaction quantity and calculation complexity can be relieved.
With reference to the sixth aspect, in certain implementations of the sixth aspect, the method includesAnd channel matrix->Obtaining a first matrix comprising: the channel matrix is->And the channel matrix->The first matrix is obtained by multiplying the conjugate transpose matrix of (a). Based on the technical scheme, the R-WMMSE precoding is provided, the dimension optimization of the optimization variable of the WMMSE precoding is realized, and the bottleneck of high data interaction quantity and calculation complexity can be relieved.
With reference to the sixth aspect, in certain implementations of the sixth aspect, calculating a precoding matrix component according to the second matrix includes: will K theAnd multiplying the matrix obtained by column splicing of the conjugate transposed matrix of (2) by the second matrix to obtain the precoding matrix component. Based on the above technical solution, the embodiments of the present application propose and prove that the precoding matrix p=h H The feasibility of the linear expression form of X is achieved, so that R-WMMSE precoding is proposed, optimization of the dimensionality of an optimization variable of WMMSE precoding is achieved, and bottle necks with high data interaction quantity and high computation complexity can be relieved.
In a seventh aspect, there is provided a communication apparatus comprising: a processing unit for acquiring C first matrices from C sub-nodes, the first matrix of the ith sub-node of the C sub-nodes being based on the channel matrixObtained, the channel matrix->The channel matrix from the antenna corresponding to the ith sub-node to the kth user is formed, wherein C, i and K are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; a transceiver unit configured to transmit a second matrix to each of the C child nodes, the second matrix being obtained from the C first matrices; the treatment is that A unit, configured to obtain C third matrices from C sub-nodes, where the third matrix of the ith sub-node of the C sub-nodes is based on the channel matrix +.>And the second matrix; the transceiver unit is configured to send a fourth matrix to each of the C child nodes, where the fourth matrix is obtained according to the C third matrices, and the fourth matrix is used for each of the C child nodes to calculate a precoding matrix component corresponding to each of the C child nodes, where the precoding matrix component forms a precoding matrix.
With reference to the seventh aspect, in some implementations of the seventh aspect, the first matrix of the ith sub-node of the C sub-nodes is based on a channel matrixThe method comprises the following steps: the first matrix of the ith sub-node of the C sub-nodes is defined by the channel matrix +.>And the channel matrix->A matrix obtained by multiplying the conjugate transpose matrix of (a).
With reference to the seventh aspect, in certain implementations of the seventh aspect, the processing unit is specifically configured to: obtaining a fifth matrix, wherein the fifth matrix is obtained by summing the C first matrices; and carrying out eigenvalue decomposition on the fifth matrix to obtain the second matrix.
With reference to the seventh aspect, in some implementations of the seventh aspect, the third matrix of the ith sub-node of the C sub-nodes is based on the channel matrixAnd the second matrix, comprising: third moment of ith child node of the C child nodesThe matrix is a matrix obtained by multiplying a conjugate transpose matrix of a sixth matrix by the sixth matrix, the sixth matrix is a matrix formed by splicing K seventh matrices according to columns, and the seventh matrix is the channel matrix->Front N of the product of the conjugate transpose of (a) and the second matrix k A matrix of column vectors.
With reference to the seventh aspect, in certain implementations of the seventh aspect, the fourth matrix is obtained according to the C third matrices, including: the fourth matrix is a matrix obtained by inverting a matrix obtained by summing the C third matrices.
In an eighth aspect, there is provided a communication apparatus including C units including: the processing unit of the ith unit is used for acquiring a first matrix from the ith-1 unit, wherein the first matrix from the ith-1 unit is wherein ,The channel matrix from the antenna corresponding to the C unit to the k user is 2.ltoreq.i.ltoreq.C, wherein C is the number of nodes participating in precoding, and i, k, C and C are positive integers; a transceiver unit of the ith unit for transmitting a first matrix of the ith unit to the (i+1) th unit, the first matrix of the ith unit being- >The transceiver unit of the C unit is used for transmitting a second matrix to the 1 st unit, and the transceiver unit of the i-1 st unit in the C nodes transmits the second matrix to the i unit, wherein the second matrix is obtained according to the first matrix of the C unit, C is a positive integer, and i+1 is less than or equal to C; the processing unit of the ith unit is used for acquiring a third matrix from the ith-1 unit, wherein the third matrix from the ith-1 unit is +.> wherein ,Is based on K channel matrices->And the second matrix; a transceiver unit of the ith unit for transmitting a third matrix of the ith unit to the (i+1) th unit, the third matrix of the ith unit being +.>The transceiver unit of the C-th unit is configured to send a fourth matrix to the 1 st unit, and the transceiver unit of the i-1 st unit of the C-th unit sends the fourth matrix to the i-th unit, where the fourth matrix is obtained according to the third matrix of the C-th unit; the processing unit of each of the C nodes calculates a respective precoding matrix component from the fourth matrix, the precoding matrix components constituting a precoding matrix.
With reference to the eighth aspect, in certain implementations of the eighth aspect, the method further includes: and the processing unit of the C unit is used for carrying out eigenvalue decomposition on the first matrix of the C unit to obtain the second matrix.
With reference to the eighth aspect, in certain implementations of the eighth aspect, theIs based on K channel matrices->And the second matrix, comprising: this->Is a matrix obtained by multiplying a conjugate transpose matrix of a fifth matrix by the fifth matrix, the fifth matrix being KA sixth matrix formed by column splicing, wherein the sixth matrix is the channel matrixFront N of the product of the conjugate transpose of (a) and the second matrix k A matrix of column vectors.
With reference to the eighth aspect, in some implementations of the eighth aspect, the fourth matrix is obtained according to the C third matrices, including: the fourth matrix is a matrix obtained by inverting the matrix obtained by summing the C third matrices.
With reference to the eighth aspect, in some implementations of the eighth aspect, the processing unit of each of the C nodes is specifically configured to: multiplying the matrix obtained by splicing the K sixth matrices according to the columns by the fourth matrix to obtain corresponding precoding matrix components.
In a ninth aspect, there is provided a communication apparatus comprising: a processing unit for acquiring C x K 2 A first matrix of C x K 2 The first matrix is from C sub-nodes, and the first matrix of the ith sub-node in the C sub-nodes is The first matrix of the ith sub-node is based on the channel matrix +.>And channel matrix->Obtained, the channel matrix->Channel matrix from antenna corresponding to ith sub-node to kth user, which is +.>Channel matrix from antenna corresponding to ith sub-node to jth user, wherein CI and K are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; a transceiver unit for transmitting a second matrix to each of the C sub-nodes, the second matrix being based on the c×k 2 And the second matrix is obtained by calculating a corresponding precoding matrix component for each of the C sub-nodes, and the precoding matrix components form a precoding matrix.
With reference to the ninth aspect, in some implementations of the ninth aspect, the first matrix of the ith sub-node of the C sub-nodes is based on a channel matrixAnd channel matrix->The method comprises the following steps: the first matrix of the ith sub-node of the C sub-nodes is defined by the channel matrix +.>And the channel matrix->A matrix obtained by multiplying the conjugate transpose matrix of (a).
With reference to the ninth aspect, in certain implementations of the ninth aspect, the processing unit is further configured to: obtaining a third matrix, wherein the third matrix is a matrix obtained by combining matrixes obtained by summing the C first matrixes; obtaining a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the weight of the dimension reduction of K users; obtaining a fifth matrix, wherein the fifth matrix is a matrix obtained by inverting the difference value of the product of the unit matrix I and the weight of the fourth matrix, the third matrix and the dimension reduction weight of the kth user; the second matrix is obtained according to the third matrix, the fourth matrix and the fifth matrix.
With reference to the ninth aspect, in certain implementations of the ninth aspect, the processing unit is specifically configured to: according to the formula
Obtaining the fourth matrix, wherein U k (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) The weight values of the dimension reduction, X of K users obtained by the n-1 th iteration k (n-1) The weight of the dimension reduction of the kth user obtained for the nth-1 iteration, < ->And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
With reference to the ninth aspect, in certain implementations of the ninth aspect, the processing unit is specifically configured to: according to the formula
Obtaining the fifth matrix, wherein W k (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,x is a submatrix of the third matrix k (n-1) The weight of the kth user obtained by the n-1 th iteration is the iteration number, n is the iteration number, K is more than or equal to 1 and less than or equal to K, and K is the number of users.
With reference to the ninth aspect, in certain implementations of the ninth aspect, the processing unit is specifically configured to: according to the third matrix and the fourth matrixAnd the fifth matrix performs r iterations to obtain the second matrix, wherein the nth iteration is performed to obtain a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that the convergence condition is not satisfied, the n+1st iteration is executed to obtain a fourth matrix U k (n+1) Fifth matrix W k (n+1) And a second matrix X k (n+1) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) Under the condition that convergence condition is met, the second matrix X obtained by the nth iteration is obtained k (n) As the second matrix output, wherein n is not less than 1 and not more than r, and n+1 is not less than 1 and not more than r; wherein the nth iteration is performed according to the following formula, obtaining the second matrix:
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max For maximum transmit power, α j A is the weight coefficient of the jth user i For the weight coefficient of the ith user, alpha k Is the weight coefficient of the kth user, wherein M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) For the fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->Is a sub-matrix of the third matrix.
With reference to the ninth aspect, in certain implementations of the ninth aspect, the processing unit is further configured to: obtaining a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of K users according to columns; decomposing the sixth matrix into a first sub-matrix and a second sub-matrix, wherein the first sub-matrix is the fourth matrix U with K users k For a block diagonal matrix U of diagonal blocks, the second submatrix b= (U H HH H U+μW -1 ) -1, wherein ,w is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H Is the conjugate transpose of the first sub-matrix, H is the third matrix, H H Is the conjugate transpose of the third matrix, W -1 Sigma is the inverse of the second sub-matrix j 2 Noise power for jth user, P max For maximum transmit power, α k For the weight coefficient of the kth user, m= UWU H , W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U.
In a tenth aspect, there is provided a communication apparatus including C units including: the processing unit of the ith unit is used for acquiring a first matrix from the ith-1 unit, wherein the first matrix from the ith-1 unit is wherein ,For the channel matrix from the antenna corresponding to the c-th element to the k-th user,/the antenna corresponding to the c-th element>The channel matrix from the antenna corresponding to the C unit to the j user is 2.ltoreq.i.ltoreq.C, wherein C is the number of units participating in precoding, i, K, C and C are positive integers, 1.ltoreq.k, j.ltoreq.K and K is the number of users; transmit-receive list of ith unitA unit for transmitting a first matrix of an ith unit to an (i+1) th unit, the first matrix of the ith unit being +. >The transceiver unit of the C-th unit is configured to send a second matrix to the 1 st unit, and the transceiver unit of the i-1 st unit in the C-th unit sends the second matrix to the i-th unit, where the second matrix is obtained according to the first matrix of the C-th unit; the processing unit of each node in the C nodes calculates a corresponding precoding matrix component according to the second matrix, and the precoding matrix components form a precoding matrix, wherein C is a positive integer, and i+1 is less than or equal to C.
With reference to the tenth aspect, in certain implementations of the tenth aspect, the apparatus includes: the processing unit of the C unit is configured to obtain a third matrix, where the third matrix is a matrix obtained by combining the first matrices of the C unit; obtaining a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the weight of the dimension reduction of K users; obtaining a fifth matrix, wherein the fifth matrix is a matrix obtained by inverting the difference value of the product of the unit matrix I and the weight values of the fourth matrix, the third matrix and the dimension reduction of the kth user; and obtaining the second matrix according to the third matrix, the fourth matrix and the fifth matrix.
With reference to the tenth aspect, in certain implementations of the tenth aspect, the processing unit of the C-th unit is specifically configured to: according to the formula
Obtaining the fourth matrix, wherein U k (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the thirdMatrix, X j (n-1) 、X i (n-1) The dimension reduction weight, X of K users obtained for the n-1 th iteration k (n-1) The weight of the dimension reduction of the kth user obtained for the nth-1 iteration, < ->And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
With reference to the tenth aspect, in certain implementations of the tenth aspect, the processing unit of the C-th unit is specifically configured to: according to the formula
Obtaining the fifth matrix, wherein W k (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,x is a submatrix of the third matrix k (n-1) The weight of the kth user obtained by the n-1 th iteration is the iteration number, n is the iteration number, K is more than or equal to 1 and less than or equal to K, and K is the number of users.
With reference to the tenth aspect, in certain implementations of the tenth aspect, the processing unit of the C-th unit is specifically configured to: according to r iterations of the third matrix, the fourth matrix and the fifth matrix, obtaining the second matrix, wherein the nth iteration is performed to obtain a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that the convergence condition is not satisfied, the n+1st iteration is executed to obtain a fourth matrix U k (n+1) Fifth matrix W k (n+1) And a second matrix X k (n+1) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) Under the condition that convergence condition is met, the second matrix X obtained by the nth iteration is obtained k (n) As the second matrix output, wherein n is not less than 1 and not more than r, and n+1 is not less than 1 and not more than r; wherein the nth iteration is performed according to the following formula, obtaining the second matrix:
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max For maximum transmit power, α j A is the weight coefficient of the jth user i For the weight coefficient of the ith user, alpha k Is the weight coefficient of the kth user, wherein M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) For the fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->Is a sub-matrix of the third matrix.
With reference to the tenth aspect, in certain implementations of the tenth aspect, the processing unit of each of the C nodes is specifically configured to: will K theAnd multiplying the matrix obtained by splicing the conjugated transposed matrix according to the columns with the second matrix to obtain corresponding precoding matrix components.
With reference to the tenth aspect, in certain implementations of the tenth aspect, the processing unit of the C-th unit is further configured to: obtaining the obtainedObtaining a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of K users according to columns; decomposing the sixth matrix into a first sub-matrix and a second sub-matrix, wherein the first sub-matrix is the fourth matrix U with K users k For the block diagonal matrix U of diagonal blocks, the second submatrix b= (U H HH H U+μW -1 ) -1, wherein ,w is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H Is the conjugate transpose of the first sub-matrix, H is the third matrix, H H Is the conjugate transpose of the third matrix, W -1 Sigma is the inverse of the second sub-matrix j 2 Noise power for jth user, P max For maximum transmit power, α k For the weight coefficient of the kth user, m= UWU H ,W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U.
In an eleventh aspect, there is provided a communication apparatus comprising: processing unit for processing the data according to the channel matrixObtaining a first matrix, the channel matrix +.>The channel matrix from the antenna corresponding to the ith sub-node to the kth user is formed, wherein C, i and K are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; a transceiver unit for transmitting the first matrix to a central node; the receiving and transmitting unit is used for receiving a second matrix sent by the central node, wherein the second matrix is obtained according to the C first matrices; the processing unit is used for performing the channel matrix +. >And the second matrix obtaining a third matrix; the receiving and transmitting unit is used for receiving the central nodeA fourth matrix is sent, the fourth matrix is obtained according to the C third matrices; the processing unit is configured to calculate a precoding matrix component according to the fourth matrix, where the precoding matrix component forms a precoding matrix.
With reference to the eleventh aspect, in certain implementations of the eleventh aspect, the processing unit is specifically configured to: according to the channel matrixAnd the channel matrix->The first matrix is obtained by multiplying the conjugate transpose matrix of (a).
With reference to the eleventh aspect, in certain implementations of the eleventh aspect, the processing unit is further configured to: selecting the channel matrixFront N of the product of the conjugate transpose of (a) and the second matrix k The column vectors form a seventh matrix; splicing K seventh matrixes according to columns to form a sixth matrix; the third matrix is obtained by multiplying the conjugate transpose of the sixth matrix by the sixth matrix.
With reference to the eleventh aspect, in certain implementations of the eleventh aspect, the fourth matrix is obtained according to C of the third matrices, including: the fourth matrix is a matrix obtained by inverting the matrix obtained by summing the C third matrices.
With reference to the eleventh aspect, in certain implementations of the eleventh aspect, the processing unit is specifically configured to: multiplying the matrix obtained by splicing the K seventh matrices according to the columns by the fourth matrix to obtain the precoding matrix component.
In a twelfth aspect, there is provided a communication apparatus comprising: a processing unit for according to the channel matrixAnd channel matrix->Obtaining a first matrix, the channel matrix +.>Channel matrix from antenna corresponding to ith sub-node to kth user, the channel matrix +.>The channel matrix from the antenna corresponding to the ith sub-node to the jth user is formed, wherein C, i, K and j are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; a transceiver unit for transmitting the first matrix to a central node; the transceiver unit is configured to receive a second matrix sent by the central node, where the second matrix is based on c×k 2 Obtaining the first matrix; the processing unit is configured to calculate a precoding matrix component according to the second matrix, where the precoding matrix component forms a precoding matrix.
With reference to the twelfth aspect, in some implementations of the twelfth aspect, the processing unit is specifically configured to: according to the channel matrix And the channel matrix->The first matrix is obtained by multiplying the conjugate transpose matrix of (a).
With reference to the twelfth aspect, in some implementations of the twelfth aspect, the processing unit is specifically configured to: will K theAnd multiplying the matrix obtained by column splicing of the conjugate transposed matrix of (2) with the second matrix to obtain the precoding matrix component.
In a thirteenth aspect, a communications apparatus is provided comprising at least one processor coupled with at least one memory, the at least one processor configured to execute a computer program or instructions stored in the at least one memory to cause the communications apparatus to perform the method of any one of the above-described first aspects and possible implementations of the first aspect.
In a fourteenth aspect, there is provided a communication device comprising at least one processor coupled to at least one memory, the at least one processor being configured to execute a computer program or instructions stored in the at least one memory to cause the communication device to perform the method of any one of the possible implementations of the second aspect and the second aspect described above.
In a fifteenth aspect, there is provided a communications apparatus comprising at least one processor coupled to at least one memory, the at least one processor operable to execute a computer program or instructions stored in the at least one memory to cause the communications apparatus to perform the method of any one of the above-described and any one of the possible implementations of the third aspect.
In a sixteenth aspect, there is provided a communication device comprising at least one processor coupled with at least one memory, the at least one processor being configured to execute a computer program or instructions stored in the at least one memory to cause the communication device to perform the method as possible in any one of the fourth and fourth aspects described above.
In a seventeenth aspect, there is provided a communication device comprising at least one processor coupled with at least one memory, the at least one processor being configured to execute a computer program or instructions stored in the at least one memory to cause the communication device to perform the method of any one of the fifth aspects and possible implementations of the fifth aspect.
In an eighteenth aspect, there is provided a communication device comprising at least one processor coupled with at least one memory, the at least one processor being configured to execute a computer program or instructions stored in the at least one memory to cause the communication device to perform the method as possible in any one of the sixth and sixth aspects described above.
In a nineteenth aspect, there is provided a computer readable storage medium having stored thereon computer instructions which, when run on a computer, cause the computer to perform the method of the first to sixth aspects and any one of the possible implementations of the first to sixth aspects.
In a twentieth aspect, a computer program product is provided, the computer program product comprising: a computer program (which may also be referred to as code, or instructions) which, when executed, causes a computer to perform the method of the first to sixth aspects and any one of the possible implementations of the first to sixth aspects.
In a twenty-first aspect, there is provided a chip system comprising: a processor coupled to a memory for storing instructions; the processor is configured to invoke and execute the instructions from the memory, so that the communication device on which the chip system is mounted performs the method of any of the possible implementations of the first to sixth aspects and the first to second aspects.
A twenty-second aspect provides a communication system comprising a communication device as in the seventh to twelfth aspects and any one of the possible implementation manners of the seventh to twelfth aspects.
Drawings
Fig. 1 is a schematic diagram of a system architecture to which an embodiment of the present application is applicable.
FIG. 2 is a diagram of a star system architecture to which embodiments of the present application are applicable.
Fig. 3 is a diagram of a chain system architecture to which embodiments of the present application are adapted.
Fig. 4 is a schematic flowchart of a precoding method provided in an embodiment of the present application.
Fig. 5 is a schematic block diagram of a precoding method according to another embodiment of the present application.
Fig. 6 is a schematic flow chart of a precoding method according to another embodiment of the present application.
Fig. 7 is a schematic block diagram of a precoding method according to another embodiment of the present application.
Fig. 8 is a schematic block diagram of an apparatus according to an embodiment of the present application.
Fig. 9 is a schematic block diagram of an apparatus according to a further embodiment of the present application.
Fig. 10 is a schematic block diagram of an apparatus according to a further embodiment of the present application.
Fig. 11 is a schematic block diagram of an apparatus according to a further embodiment of the present application.
Fig. 12 is a schematic block diagram of an apparatus according to a further embodiment of the present application.
Fig. 13 is a schematic block diagram of an apparatus according to a further embodiment of the present application.
Fig. 14 is a schematic structural diagram of an apparatus provided in an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be described below with reference to the accompanying drawings.
The technical scheme of the embodiment of the application can be applied to various communication systems, such as: global system for mobile communications (global system of mobile communication, GSM), code division multiple access (code division multiple access, CDMA) system, wideband code division multiple access (wideband code division multiple access, WCDMA) system, general packet radio service (general packet radio service, GPRS), long term evolution (long term evolution, LTE) system, LTE frequency division duplex (frequency division duplex, FDD) system, LTE time division duplex (time division duplex, TDD), universal mobile telecommunications system (universal mobile telecommunication system, UMTS), worldwide interoperability for microwave access (worldwide interoperability for microwave access, wiMAX) communication system, future fifth generation (5th generation,5G) system, or New Radio (NR), etc.
The technical scheme provided by the application can be also applied to machine type communication (machine type communication, MTC), inter-machine communication long term evolution (long term evolution-machine, LTE-M), device-to-device (D2D) network, machine-to-machine (machine to machine, M2M) network, internet of things (internet of things, ioT) network or other networks. The IoT network may include, for example, an internet of vehicles. The communication modes in the internet of vehicles system are generally called as vehicle to other devices (V2X, X may represent anything), for example, the V2X may include: vehicle-to-vehicle (vehicle to vehicle, V2V) communication, vehicle-to-infrastructure (vehicle to infrastructure, V2I) communication, vehicle-to-pedestrian communication (vehicle to pedestrian, V2P) or vehicle-to-network (vehicle to network, V2N) communication, etc.
The technical scheme provided by the application can also be applied to future communication systems, such as a sixth generation (6th Generation,6G) mobile communication system and the like. The application is not limited in this regard.
In the embodiment of the application, the network device can be any device with a wireless receiving and transmitting function. The apparatus includes, but is not limited to: an evolved Node B (eNB), a radio network controller (radio network controller, RNC), a Node B (NB), a base station controller (base station controller, BSC), a base transceiver station (base transceiver station, BTS), a home base station (e.g., home evolved nodeB, or home Node B, HNB), a Base Band Unit (BBU), an Access Point (AP) in a wireless fidelity (wireless fidelity, wiFi) system, a wireless relay Node, a wireless backhaul Node, a transmission point (transmission point, TP), or a transmission reception point (transmission and reception point, TRP), etc., may also be 5G, e.g., NR, a gNB in a system, or a transmission point (TRP or TP), one or a group of antenna panels (including multiple antenna panels) of a base station in a 5G system, or may also be a network Node constituting a gNB or transmission point, e.g., BBU), or a Distributed Unit (DU), or a base station in a next generation communication 6G system, etc.
In some deployments, the gNB may include a Centralized Unit (CU) and DUs. The gNB may also include an active antenna unit (active antenna unit, AAU). The CU implements part of the functionality of the gNB and the DU implements part of the functionality of the gNB. For example, the CU is responsible for handling non-real time protocols and services, implementing the functions of the radio resource control (radio resource control, RRC), packet data convergence layer protocol (packet data convergence protocol, PDCP) layer. The DUs are responsible for handling physical layer protocols and real-time services, implementing the functions of the radio link control (radio link control, RLC), medium access control (medium access control, MAC) and Physical (PHY) layers. The AAU realizes part of physical layer processing function, radio frequency processing and related functions of the active antenna. Since the information of the RRC layer eventually becomes information of the PHY layer or is converted from the information of the PHY layer, under this architecture, higher layer signaling, such as RRC layer signaling, may also be considered to be transmitted by DUs or by DUs and CUs. It is understood that the network device may be a device comprising one or more of a CU node, a DU node, an AAU node. In addition, the CU may be divided into network devices in an access network (radio access network, RAN), or may be divided into network devices in a Core Network (CN), which the present application is not limited to.
The network device provides services for the cell, and the terminal device communicates with the cell through transmission resources (e.g., frequency domain resources, or spectrum resources) allocated by the network device, where the cell may belong to a macro base station (e.g., macro eNB or macro gNB, etc.), or may belong to a base station corresponding to a small cell (small cell), where the small cell may include: urban cells (metro cells), micro cells (micro cells), pico cells (pico cells), femto cells (femto cells) and the like, and the small cells have the characteristics of small coverage area and low transmitting power and are suitable for providing high-rate data transmission services.
In the embodiment of the present application, the terminal device may also be referred to as a User Equipment (UE), an access terminal, a subscriber unit, a subscriber station, a mobile station, a remote terminal, a mobile device, a user terminal, a wireless communication device, a user agent, or a user apparatus.
The terminal device may be a device providing voice/data connectivity to a user, e.g., a handheld device with wireless connectivity, an in-vehicle device, etc. Currently, some examples of terminals may be: a mobile phone (mobile phone), a tablet computer (pad), a computer with wireless transceiving functions (such as a notebook computer, a palm computer, etc.), a mobile internet device (mobile internet device, MID), a Virtual Reality (VR) device, an augmented reality (augmented reality, AR) device, a wireless terminal in industrial control (industrial control), a wireless terminal in unmanned aerial vehicle (self driving), a wireless terminal in telemedicine (remote media), a wireless terminal in smart grid (smart grid), a wireless terminal in transportation security (transportation safety), a wireless terminal in smart city (smart city), a wireless terminal in smart home (smart home), a cellular phone, a cordless phone, a session initiation protocol (session initiation protocol, SIP) phone, a wireless local loop (wireless local loop, WLL) station, a personal digital assistant (personal digital assistant, PDA), a handheld device with wireless communication functions, a computing device or other processing device connected to a wireless modem, a wireless terminal in a car-mounted device, an evolution mobile terminal in smart city (smart city), or a future mobile network (public land mobile network) public land mobile network, etc.
The wearable device may also be called as a wearable intelligent device, and is a generic name for applying wearable technology to perform intelligent design on daily wear and developing wearable devices, such as glasses, gloves, watches, clothes, shoes, and the like. The wearable device is a portable device that is either worn directly on the body or integrated into the user's clothing or accessories. The wearable device is not only a hardware device, but also can realize a powerful function through software support, data interaction and cloud interaction. Generalized wearable smart devices include full functionality, large size, and may not rely on smart phones to implement complete or partial functionality, such as: smart watches or smart glasses, etc., and focus on only certain types of application functions, and need to be used in combination with other devices, such as smart phones, for example, various smart bracelets, smart jewelry, etc. for physical sign monitoring.
Furthermore, the terminal device may also be a terminal device in an internet of things (internet of things, ioT) system. IoT is an important component of future information technology development, and its main technical feature is to connect an item with a network through a communication technology, so as to implement man-machine interconnection and an intelligent network for object interconnection. IoT technology can enable massive connectivity, deep coverage, and terminal power saving through, for example, narrowband NB technology.
In addition, the terminal device may further include sensors such as an intelligent printer, a train detector, and a gas station, and the main functions include collecting data (part of the terminal device), receiving control information and downlink data of the network device, and transmitting electromagnetic waves to transmit uplink data to the network device.
To facilitate understanding of the embodiments of the present application, a communication system suitable for the method provided in the embodiment of the present application will be described in detail with reference to fig. 1.
Fig. 1 shows a schematic diagram of a communication system 100 suitable for use in the method provided by an embodiment of the application. As shown, the communication system 100 may include at least one network device, such as network device 101 in the 5G system shown in fig. 1; the communication system 100 may also comprise at least one terminal device, such as the terminal devices 102 to 107 shown in fig. 1. Wherein the terminal devices 102 to 107 may be mobile or stationary. One or more of network device 101 and terminal devices 102-107 may each communicate over a wireless link. Each network device may provide communication coverage for a particular geographic area and may communicate with terminal devices located within the coverage area. For example, the network device may send configuration information to the terminal device, and the terminal device may send uplink data to the network device based on the configuration information; as another example, the network device may send downstream data to the terminal device. Thus, the network device 101 and the terminal devices 102 to 107 in fig. 1 constitute one communication system.
Alternatively, the terminal devices may communicate directly with each other. Direct communication between the terminal devices may be achieved, for example, using D2D technology or the like. As shown in the figure, communication may be directly performed between the terminal devices 105 and 106 and between the terminal devices 105 and 107 using D2D technology. Terminal device 106 and terminal device 107 may communicate with terminal device 105 separately or simultaneously.
Terminal devices 105 to 107 may also communicate with network device 101, respectively. For example, may communicate directly with network device 101, as terminal devices 105 and 106 in the figures may communicate directly with network device 101; or indirectly with the network device 101, as in the figure the terminal device 107 communicates with the network device 101 via the terminal device 106.
It should be appreciated that fig. 1 illustrates schematically one network device and a plurality of terminal devices, as well as communication links between the communication devices. Alternatively, the communication system 100 may include a plurality of network devices, and other numbers of terminal devices, such as more or fewer terminal devices, may be included within the coverage area of each network device. The application is not limited in this regard.
Each of the above-described communication apparatuses, such as the network apparatus 101 and the terminal apparatuses 102 to 107 in fig. 1, may be configured with a plurality of antennas. The plurality of antennas may include at least one transmitting antenna for transmitting signals and at least one receiving antenna for receiving signals. In addition, each communication device may additionally include a transmitter chain and a receiver chain, each of which may include a plurality of components (e.g., processors, modulators, multiplexers, demodulators, demultiplexers, antennas, etc.) associated with the transmission and reception of signals, as will be appreciated by one skilled in the art. Thus, communication between the network device and the terminal device may be via multiple antenna technology.
Optionally, the wireless communication system 100 may further include a network controller, a mobility management entity, and other network entities, which are not limited thereto according to the embodiments of the present application.
In order to facilitate understanding of the embodiments of the present application, the following briefly describes the processing procedure of the downlink signal at the physical layer before transmission. It should be understood that the processing of the downlink signal described below may be performed by the network device, or may be performed by a component (e.g., a chip or a system-on-chip) configured in the network device. For ease of description, the following is collectively referred to as a network device.
The network device may process code words in the physical channel. Wherein the codeword may be encoded bits that are encoded (e.g., including channel coding). The codeword is scrambled (scrambling) to generate scrambled bits. The scrambled bits are modulated (modulation mapping) to obtain modulation symbols. The modulation symbols are mapped to a plurality of layers (layers), or transport layers, through layer mapping (layer mapping). The modulation symbols after layer mapping are subjected to precoding (precoding) to obtain a precoded signal. The precoded signal is mapped to a plurality of Resource Elements (REs) after being mapped. These REs are then orthogonally multiplexed (orthogonal frequency division multiplexing, OFDM) modulated and transmitted through an antenna port (antenna port).
It should be understood that the above described processing of the downstream signal is only an exemplary description and should not be construed as limiting the application in any way. The processing procedure of the downlink signal may refer to the prior art, and a detailed description of the specific procedure is omitted herein for brevity.
It should be understood that the method provided by the embodiment of the present application may be applied to a system that communicates through multiple antenna technology. Such as the communication system 100 shown in fig. 1. The communication system may comprise at least one network device and at least one terminal device. The network device and the terminal device may communicate via multiple antenna technology.
It should also be understood that the method provided by the embodiment of the present application is not limited to communication between network devices and terminal devices, and may also be applied to communication between terminal devices and terminal devices, etc. The application is not limited to the scenario in which the method is applied. In the embodiments shown below, for ease of understanding and description, the method provided by the embodiments of the present application will be described in detail by taking interaction between a network device and a terminal device as an example.
It should also be understood that the embodiments shown below are not particularly limited to the specific structure of the execution subject of the method provided by the embodiments of the present application, as long as communication can be performed by the method provided according to the embodiments of the present application by running a program in which the code of the method provided by the embodiments of the present application is recorded, for example. The execution main body of the method provided by the embodiment of the application can be terminal equipment or network equipment, or can be a functional module capable of calling a program and executing the program in the terminal equipment or the network equipment.
In order to facilitate understanding of the embodiments of the present application, the following terms used in connection with the embodiments of the present application are briefly described.
1. Precoding technology: the transmitting device (such as a network device) can process the signal to be transmitted by means of the precoding matrix matched with the channel state under the condition that the channel state is known, so that the precoded signal to be transmitted is matched with the channel, and the complexity of eliminating the influence among the channels by the receiving device (such as a terminal device) is reduced. Thus, by precoding the signal to be transmitted, the received signal quality (e.g., signal-to-interference-plus-noise ratio (signal to interference plus noise ratio, SINR), etc.) is improved. Therefore, by adopting the precoding technology, the transmission of the sending device and the multiple receiving devices on the same time-frequency resource can be realized, that is, multi-user multiple input multiple output (multiple user multiple input multiple output, MU-MIMO) is realized.
It should be understood that the description of the precoding technology is merely exemplary for easy understanding, and is not intended to limit the protection scope of the embodiments of the present application. In a specific implementation process, the sending device may also perform precoding in other manners. For example, when channel information (such as, but not limited to, a channel matrix) cannot be known, precoding is performed using a pre-set precoding matrix or a weighting method. For brevity, the details thereof are not described in detail herein.
2. Antenna port (antenna port): simply referred to as ports. An antenna port may be understood as a transmitting antenna identified by a receiving device or a spatially distinguishable transmitting antenna. Each antenna port may correspond to one reference signal, and thus each antenna port may be referred to as a port for one reference signal, e.g., a channel state information reference signal (channel state information reference signal, CSI-RS) port, a sounding reference signal (sounding reference signal, SRS) port, etc.
3. Precoding matrix: the terminal device may determine the precoding matrix based on the channel measurements. Illustratively, the terminal device may determine the channel matrix by means of channel estimation or the like or based on channel reciprocity. The precoding matrix may be obtained by singular value decomposition (singular value decomposition, SVD) of a channel matrix or a covariance matrix of a channel matrix, or may be obtained by eigenvalue decomposition (eigenvalue decopomsition, EVD) of a covariance matrix of a channel matrix. It should be understood that the above-listed determination of the precoding matrix is merely an example, and should not be construed as limiting the present application in any way. The manner in which the precoding matrix is determined may be referred to in the art and is not listed here for brevity.
The precoding matrix determined by the terminal device may be referred to as a precoding matrix to be fed back, or a precoding matrix to be reported. The terminal device may indicate the precoding matrix to be feedback through a precoding matrix indication (precoding matrix indicator, PMI) so that the network device recovers the precoding matrix based on the PMI. The precoding matrix recovered by the network device based on the PMI may be the same as or similar to the precoding matrix to be fed back.
In downlink channel measurement, the higher the approximation degree between the precoding matrix determined by the network device according to the PMI and the precoding matrix determined by the terminal device, the more the determined precoding matrix for data transmission can be adapted to the downlink channel, so that the transmission quality of signals can be improved.
4. Precoding vector: in an embodiment of the present application, the precoding vector may be determined by one vector in the precoding matrix, e.g., a column vector. In other words, the precoding matrix may comprise one or more column vectors, each of which may be used to determine one precoding vector. When the precoding matrix includes only one column vector, the precoding matrix may also be referred to as a precoding vector. The precoding matrix may be determined by precoding vectors of one or more transmission layers, and each vector in the precoding matrix may correspond to one transmission layer.
In order to facilitate an understanding of the embodiments of the present application, the following description is made.
First, in the embodiment of the present application, the precoding vector may refer to one vector in a precoding matrix, such as a column vector. The precoding matrix may comprise precoding vectors for one or more transmission layers, and each column vector in the precoding matrix may correspond to one transmission layer.
Second, the first, second, third, fourth, and various numerical numbers in the embodiments shown below are merely for descriptive convenience and are not intended to limit the scope of the embodiments of the present application. For example, to distinguish between different matrices, etc.
In the embodiments shown below, "pre-set" may include signaling by the network device or pre-defined, e.g., protocol definition. The "preset" may be implemented by pre-storing corresponding codes, tables or other manners of indicating relevant information in devices (including, for example, terminal devices and network devices), and the specific implementation of the present application is not limited.
Third, the "protocol" referred to in the embodiments of the present application may refer to a standard protocol in the field of communications, and may include, for example, an LTE protocol, an NR protocol, and related protocols applied in future communication systems, which is not limited in this aspect of the present application.
Fig. 2 and fig. 3 are two system architecture diagrams applicable to the embodiment of the present application, and the embodiment of the present application mainly relates to three modules in the system architecture diagram, namely an antenna cluster module, a baseband lower (BBL) module and a baseband higher (BBH) module.
The antenna cluster module mainly comprises a plurality of antennas, and different antennas have different corresponding indexes such as rows, columns, polarization and the like. The antenna is connected to a Radio Frequency (RF) unit, which together realize modulation transmission and reception demodulation of radio electromagnetic waves. The antenna cluster module mainly plays a role in receiving signals of corresponding antennas and sending the signals to the corresponding BBL module for processing, or transmitting the received signals processed by the corresponding BBL module through the corresponding antennas.
The BBL module mainly comprises a baseband processing chip, and the main function of the BBL module is to execute distributed precoding operation and send the result to the antenna cluster module. Specifically, the BBL module performs a distributed precoding algorithm according to locally stored channel information and interaction information, performs precoding weighting in combination with a downlink user data stream acquired from the BBH module, and finally sends a result to a corresponding antenna cluster module.
It should be noted that, the precoding calculation method according to the embodiment of the present application may be implemented as a software running on a distributed baseband processing chip.
The BBH module is used as a data transfer center of the baseband processing chip, is connected to the core network in an upward return mode, and organizes data processing and transceiving of a large number of antennas through the BBL module in a downward mode. Besides, the BBH module can also adjust the time synchronization among subordinate BBL modules, and achieve the functions of delay management and the like.
Fig. 2 is mainly applied to a star system architecture, as shown in fig. 2, in the star system architecture, each distributed baseband processing unit in the BBL module (for example, distributed baseband processing unit 1, … distributed baseband processing unit C, … distributed baseband processing unit C) mainly plays two roles: the central node and the general sub-nodes, i.e. in a star architecture, a certain distributed baseband processing unit (e.g. distributed baseband processing unit c) in the BBL module plays the role of central node, while the other distributed baseband processing units play the role of general sub-nodes. For ease of understanding, in the following description, the distributed baseband processing units are replaced with child nodes and center nodes.
Specifically, in the precoding process of the embodiment of the present application, each sub-node has an antenna cluster module corresponding to it, for example, sub-node 1 corresponds to antenna cluster module 1, … sub-node C corresponds to antenna cluster module C, and … sub-node C corresponds to antenna cluster module C. Each sub-node carries out channel estimation according to signals received from the antenna cluster module to obtain channel state information, then carries out preprocessing on the channel state information, transmits a preprocessed data result to a central node, fuses data of all the sub-nodes by the central node, and feeds the fused data back to each sub-node for iteration or directly outputs the data as a result.
Notably, a significant feature of this star architecture is to allow the central node in the BBL module to interact iteratively directly with all the child nodes.
Fig. 3 is mainly applied to a chain system architecture, as shown in fig. 2, in the chain system architecture, each distributed baseband processing unit (for example, distributed baseband processing unit 1, …, and …) in the BBL module has the same function and equal status. In the following description, nodes are used to replace the distributed baseband processing units for ease of understanding.
Specifically, in the precoding process of the embodiment of the present application, each node has an antenna cluster module corresponding to it, for example, node 1 corresponds to antenna cluster module 1, node … corresponds to antenna cluster module C, and node … corresponds to antenna cluster module C. Each antenna cluster module sends the received signals to the corresponding node for channel estimation to obtain channel state information. When each node processes data, starting from a specific node, each node utilizes the data processing result of the previous node to perform fusion processing with the data of the node, and then, the processing result is transmitted to the next node. It should be noted that the processes of data processing and data interaction are transferred in a loop-chain manner, and after the iteration is completed, all nodes output data results together or a certain node outputs fused data results.
Under the two system architectures shown in fig. 2 and fig. 3, the data information of each node is fused in a distributed manner to realize channel estimation or obtain channel statistical characteristics, and in particular, under the condition of downlink precoding, each node locally stores the channel state information of the corresponding antenna cluster module and the precoding weight matrix, and the calculation of the precoding weight matrix is realized in a distributed manner.
It should be noted that, the precoding method in the embodiment of the present application is not limited to the above two system architectures, and the precoding method in the embodiment of the present application can also be applied to other distributed system architectures, and has strong flexibility.
Fig. 4 is a schematic flowchart of a precoding method 400 provided in an embodiment of the present application, and the method may specifically include the following steps. The precoding method 400 is applicable to the star system architecture scenario of fig. 2.
S410, each of the C sub-nodes respectively sends a first matrix to the central node, and accordingly, the central node acquires C first matrices from the C sub-nodes.
The C sub-nodes may be BBL modules corresponding to the C antenna cluster modules one-to-one, for example, the antenna cluster module 1 corresponds to BBL module 1 (i.e. sub-node 1), the antenna cluster module i corresponds to BBL module i (i.e. sub-node i) … … and the antenna cluster module C corresponds to BBLC (i.e. sub-node C).
It should be noted that, the central node may be understood as a node located at a central position of the C child nodes, and may also be understood as a node at a specific position, which should be understood that embodiments of the present application are not limited thereto.
For ease of understanding, in the following embodiments, a child node is used in place of the BBL module for description.
Specifically, an ith sub-node (also called as sub-node i) in the C sub-nodes performs channel estimation according to the received signal sent by the antenna cluster module i corresponding to the ith sub-node to obtain a channel matrixWherein the channel matrix->Is an estimate of the channel state between the intra-cluster antenna and the kth user (hereinafter referred to as user k), and can also be understood as a channel matrixThe channel matrix from the antenna corresponding to the child node i to the user k is formed, wherein, C, i and k are positive integers, i is more than or equal to 1 and less than or equal to C,k is more than or equal to 1 and less than or equal to K, wherein K is the number of users.
In one possible implementation, the first matrix of the ith sub-node (i.e., sub-node i) of the C sub-nodes is based on a channel matrixObtained, e.g. the sub-node i is acquiring the channel matrix transmitted by the corresponding antenna cluster module i +.>Then, the child node i calculates the channel matrix +.>And channel matrix->Conjugate transpose matrix of->The multiplied matrix is used as the first matrix of the ith sub-node.
As shown in fig. 4, the first matrix of the child node 1 isThe first matrix of child node c isThe first matrix of child node C is +.>
And S420, the center node sends a second matrix to each of the C sub-nodes, and accordingly, each of the C sub-nodes obtains the second matrix sent by the center node, wherein the second matrix is obtained according to the C first matrices.
Specifically, the central node sums up the first matrix transmitted by each of the C sub-nodes to obtain a fifthAnd the matrix, and then the central node performs eigenvalue decomposition calculation on the fifth matrix to obtain a second matrix. Wherein the fifth matrix isThen, at the center node, eigenvalue decomposition computation is performed on the fifth matrix as shown in formula (4-1).
Wherein k=1, 2, … … K, K being the number of users, H k H k H For the fifth matrix corresponding to user k,a unitary matrix consisting of eigenvectors of a fifth matrix corresponding to user k +.>Is->Is a conjugate transpose of (1), a diagonal matrix Σ k Is H as diagonal element k Is a singular value of (c).
And (3) assuming that singular values are arranged from large to small, performing eigenvalue decomposition on all users at a central node to obtain a second matrix corresponding to the user k, wherein the second matrix is shown in a formula (4-2).
Wherein k=1, 2, … … K, K being the number of users, a k For the second matrix corresponding to user k,is the inverse of the diagonal matrix, ++>Unitary matrix comprising eigenvectors of a fifth matrix corresponding to user k>Is a complex matrix of the matrix.
The center node calculates to obtain a second matrix A corresponding to the user k through the calculation k Thereafter, a second matrix A is formed k Sent to each of the C sub-nodes, i.e. each of the C sub-nodes obtains a second matrix A k
And S430, each of the C sub-nodes sends a third matrix to the central node, and accordingly, the central node acquires C third matrices from the C sub-nodes, wherein the third matrices are acquired based on the channel matrix and the second matrix.
In step S420, each child node obtains a second matrix a transmitted by the center node k Then, each of the C sub-nodes will be based on its own stored channel matrix and a second matrix A obtained from the central node k A third matrix is calculated.
Specifically, a child node i of the C child nodes is based on a channel matrix of the storage local areaAnd a second matrix A k A seventh matrix is calculated.
First, a channel matrix is calculated at a child node iConjugate transpose matrix of->And a second matrix A k Is multiplied by (2) to obtain an eighth matrix +.>And the following formula (4-3).
Wherein k=1, 2, … … K, K being the number of users,for the eighth matrix of user k +.>For the channel matrix of user k, A k Is a second matrix for user k.
Second, the first N of the eighth matrix is taken at child node i k Column vectors form a seventh matrix
Then the seventh matrix of K users is spliced by columns to form a sixth matrixThen, the child node i transposes the conjugate of the sixth matrix +. >And a sixth matrix->And multiplying to obtain a third matrix->
It should be noted that the first N of the eighth matrix is taken k Column vectors form a seventh matrixIt will be appreciated that for different users k, selecting different column vector numbers at the child node i to form a seventh matrix +.>For example, for user 1, a different top N is selected at child node i 1 Column vectors form a seventh matrix->For user 2, selecting different front N at child node i 2 Column vectors form a seventh matrix-> wherein ,N1 and N2 May be the same or different.
S440, the center node obtains a fourth matrix according to the third matrix, and sends the fourth matrix to each of the C sub-nodes.
Specifically, the central node obtains a respective third matrix transmitted by each of the C child nodesThen, the center node sums the obtained C third matrixes, and then inverts the matrixes obtained after summation to obtain a fourth matrix +.>Finally, the central node calculates a fourth matrix +.>And respectively sent to each of the C child nodes.
Then, after each of the C sub-nodes receives the fourth matrix sent by the central node, the pre-coding component corresponding to each sub-node is calculated according to the fourth matrix, and the pre-coding component forms a pre-coding matrix.
For example, after the child node i obtains the fourth matrix, the precoding component P is performed according to the formula (4-4) i Is calculated by the computer.
wherein ,Pi For the precoding matrix component corresponding to child node i,matrix for K users obtained at child node i +.>Matrix obtained by column splicing>And the matrix is a fourth matrix, wherein K is more than or equal to 1 and less than or equal to K.
Finally, each of the C sub-nodes obtains a corresponding precoding component through the above formula (4), and in this case, the precoding component corresponding to each sub-node is spliced according to rows, so as to further obtain a precoding matrix P.
For example, each child node may perform the calculation of the precoding matrix according to the following equation (4-5).
Wherein k=1, 2, … … K, K is the number of users, C is the number of sub-nodes participating in precoding, P 1 ,P 2 …P C For the corresponding precoding component of each of the C child nodes, for the matrix of K users at each child node +.>The resulting matrix is spliced in columns, wherein,is fourth asA matrix.
It should be noted that, the precoding method 400 provided by the embodiment of the present application is a design scheme of distributed characteristic zero forcing (eigen zero forcing, EZF) precoding, all steps in the scheme can be implemented in a distributed manner, and the information interaction dimension is irrelevant to the number of antennas of the base station, and is only related to the total number of antennas of the total user and the total number of streams.
Based on the technical scheme, the method for solving SVD decomposition of the channel state matrix in a distributed mode is provided, so that EZF precoding algorithm can be easily realized on a distributed baseband processing architecture, SVD decomposition of the global channel state matrix is solved, direct distributed realization can be realized, and the method has low information interaction quantity.
Fig. 5 is a schematic flowchart of a precoding method 500 provided in an embodiment of the present application, where the method may specifically include the following steps. Wherein the precoding method 500 is applicable to the chain system architecture in fig. 3.
It should be noted that, the precoding methods provided in the embodiments of fig. 4 and fig. 5 are two independent solutions, so that the meaning of the same letter is not identical for the two embodiments.
S510, the ith node sends a first matrix of the ith-1 th node to the ith node, and accordingly, the ith node acquires the first matrix of the ith-1 th node.
Specifically, the first matrix of the i-1 th node is wherein ,The channel matrix from the antenna corresponding to the C node to the kth user (hereinafter referred to as user K) is 2.ltoreq.i.ltoreq.C, wherein C is the number of nodes participating in precoding, i, K, C and C are positive integers, and 1.ltoreq.k.ltoreq.K is the number of users.
Wherein the first matrix of the i-1 th node isIt will be appreciated that the first matrix of the i-1 th node is the +.>Corresponding to the i-1 th nodeAnd (5) summing to obtain a matrix.
For example, taking i=4 as an example, the first matrix of the 3 rd node may be the 1 st node2 nd node corresponding->And +.3 corresponding to node>And (5) summing to obtain a matrix. Subsequently, the 3 rd node transmits the first matrix of the 3 rd node to the 4 th node.
It should be appreciated that the i-1 th node may also be referred to as node i-1, the i-th node may also be referred to as node i, and so on, the C-th node may also be referred to as node C. Embodiments of the present application are not described herein.
S520, the ith node sends a first matrix of the ith node to the (i+1) th node, and accordingly, the (i+1) th node acquires the first matrix from the (i) th node.
Specifically, the first matrix of the ith node isIt can be understood that the first matrix of the ith node is +.1 corresponding to the previous i-1 nodes, respectively>Corresponding to the ith nodeAnd (5) summing to obtain a matrix.
For example, taking i=4 as an example, the first matrix of the 4 th node may be the 1 st node 2 nd node corresponding->The 3 rd node corresponds to->Corresponding to the 4 th nodeAnd (5) summing to obtain a matrix. The 4 th node then transmits the first matrix of the 4 th node to the 5 th node.
It should be noted that, as shown in fig. 5, steps S510 and S520 described above may be understood that, starting from a specific node (e.g., node i-1) among the C nodes, a first matrix of the node i-1 is sent to a subsequent node (e.g., node i) along the circular chain, and the node i sends a first matrix of the node i to the node i+1 along the circular chain, … …, until the C node ends.
It should be further noted that, steps S510 and S520 described above may also be understood as transmitting the first matrix of node 1 from the 1 st node (e.g. node 1) to the subsequent node (node 2) in a circular chain manner, and transmitting the first matrix of node 2, … …, to node 3 in a circular chain manner until the last node (node C) is finished.
And S530, the C-th node in the C nodes transmits a second matrix to the 1 st node, and the i-1 st node in the C nodes transmits the second matrix to the i-th node and the i-th node in the C nodes transmits the second matrix to the i+1-th node.
In step S520, the C node is acquiring the first matrix of the C-1 nodeThen, calculate the first matrix of the C-th node as +.>Subsequently, at the C node, a first matrix for the C node +.>And performing eigenvalue decomposition calculation as shown in a formula (1).
Wherein k=1, 2, … … K, K being the number of users,a unitary matrix consisting of eigenvectors of a fifth matrix corresponding to user k +.>Is->Is a conjugate transpose of (1), a diagonal matrix Σ k Is H as diagonal element k Is a singular value of (c).
And (3) assuming that the singular values are arranged from large to small, at the C node, performing eigenvalue decomposition on all users to obtain a second matrix corresponding to the user k, as shown in a formula (2).
Wherein k=1, 2, … … K, a k For the second matrix corresponding to user k,for diagonal matrix Σ k Inverse matrix of>Unitary matrix comprising eigenvectors of a fifth matrix corresponding to user k>Is a complex matrix of the matrix.
For example, taking c=4 as an example, that is, there are a total of 4 nodes involved in the precoding calculation, in step S530, the 4 th node (node 4) acquires the first matrix transmitted by the node 3Subsequently, at node 4, the first matrix of node 4 is calculated as +.>At this time, at node 4, the first matrix for node 4 +. >Performing eigenvalue decomposition according to the above formulas (5-1) and (5-2) to obtain a second matrix A corresponding to user k k
Finally, as shown in fig. 5, node 4 transmits the second matrix a to node 1 in a circular chain fashion k Node 1 obtains a second matrix A k Thereafter, a second matrix a is sent to node 2 k Node 2 sends a second matrix a to node 3 k Node 3 sends a second matrix a to node 4 k
S540, the ith node sends a third matrix of the ith-1 node to the ith node, and accordingly, the ith node obtains the third matrix of the ith-1 node.
Specifically, the third matrix of the i-1 th node isIt is understood that the third matrix of the i-1 th node is +.2+ corresponding to the previous i-2 nodes respectively>Corresponding to the ith nodeAnd (5) summing to obtain a matrix. Wherein (1)>Is based on K channel matrices->And a second matrix.
The following describes in detail how to pass through K channel matricesAnd second matrix obtaining->
Specifically, at each of the C nodes (exemplified by node i), node i is based on a channel matrixAnd a second matrix A k Calculating a sixth matrix, which is a channel matrix +.>Conjugate transpose matrix of->And a second matrix A k The first N of the product of (2) k A matrix of column vectors.
First, at node i, a channel matrix is stored locally at node iConjugate transpose matrix of->And a previously obtained second matrix A k Multiplying to obtain a seventh matrix->As shown in equation (5-3).
Where k=1, 2, … … K,for the seventh matrix corresponding to user k +.>For the channel matrix of user k, A k Is a second matrix for user k.
Next, at node i, a seventh matrix is takenForm a sixth matrix +.>And K users' sixth matrix +.>The fifth matrix is formed by column splicing>Subsequently, node i transposes the conjugate of the fifth matrix +.>And a fifth matrix->Multiplying to obtain +.>
It should be noted that the third matrix of the node i is understood as i-1 nodes before the node i and the obtained at the node iFor example, the third matrix of node i corresponds to the previous i-1 nodes respectively +.>The resulting matrix after summing, i.e. the third matrix of node i, can be expressed as +.>
It should be noted that, the first N of the seventh matrix is taken at the child node i k Column vectors form a sixth matrixIt will be appreciated that for different users k, selecting different column vector numbers at the child node i to form a sixth matrix +. >For example, for user 1, a different top N is selected at child node i 1 Column vectors form a sixth matrix->For user 2, selecting different front N at child node i 2 Column vectors form a sixth matrix-> wherein ,N1 and N2 May be the same or different.
S550, the ith node sends the third matrix of the ith node to the (i+1) th node, and accordingly, the (i+1) th node receives the third matrix from the (i) th node.
Specifically, the third matrix of the ith node isIt can be understood that the third matrix of the ith node is +.1 corresponding to the previous i-1 nodes, respectively>Corresponding to the i-th node +.>And (5) summing to obtain a matrix. Wherein (1)>Is based on K channel matrices->And said second matrix.
In addition, regardingHow to pass K channel matrices->And the second matrix, as described with reference to step S540, the present application is not described herein.
It should be further noted that, as shown in fig. 5, steps S540 and S550 described above may be understood that, starting from a specific node (e.g., node i-1) among the C nodes, a third matrix of the node i-1 is sent to a subsequent node (e.g., node i) along the circular chain, and the node i sends the third matrix of the node i to the node i+1 along the circular chain, … …, until the C node ends.
The foregoing steps S540 and S550 may also be understood as transmitting the third matrix of the node 1 in the endless chain manner from the 1 st node (e.g., the node 1) to the subsequent node (the node 2) among the C nodes, and transmitting the third matrix of the node 2 in the endless chain manner from the node 2 to the node 3, … …, until the last node (the node C) ends.
S560, the C node sends a fourth matrix to the 1 st node, and the i-1 st node in the C nodes sends the fourth matrix to the i node, and the i node sends the fourth matrix to the i+1 th node, wherein the fourth matrix is obtained according to the third matrix of the C nodes.
In the foregoing steps, the C node receives the third matrix of the C-1 node transmitted by the C-1 node in transmitting the third matrix in a circular chain mannerAnd at the C node, a third matrix transmitted to the C-1 node>And +.c. node>Summing to obtain a third matrix of nodes C>Third matrix->Can also be expressed as +.>And then at the firstPairs of C nodesThen inverting to obtain a fourth matrix +.>
Finally, the C node calculates a fourth matrix Is transmitted to each of the C nodes in a circular chain fashion as shown in fig. 5.
For example, the C-th node (denoted as node C) will be the fourth matrixIs sent to node 1, node 1 receives the fourth matrix +.>After that, the fourth matrix->To node 2, … …, node i-1 will fourth matrix +.>To node i, node i will be fourth matrix +.>To node i+1, and so on, each of the C nodes transmits a fourth matrix in the form of a circular chain transfer to the following node>Until the last node is terminated.
To sum up, each node in the C nodes receives the fourth matrixThen, each node calculates the precoding component, and as exemplified by node i, node i is based on the fourth matrix +.>And calculating corresponding precoding components, wherein the precoding components form a precoding matrix.
For example, node i performs calculation of the precoding component according to the following formula (5-4).
Wherein K is the number of users, P i For the precoding matrix component corresponding to node i,for the matrix of K users at node i +.>Matrix obtained by column splicing>And is a fourth matrix.
And finally, each node in the C nodes obtains a corresponding precoding component through the formula (4), and at the moment, the precoding components corresponding to each node are spliced according to rows, so that a precoding matrix P is further obtained.
For example, each node may perform the calculation of the precoding matrix according to the following equation (5).
Wherein K is the number of users, C is the number of nodes participating in precoding, P 1 ,P 2 …P C For each node of the C nodes respectively correspond toIs used for the pre-coding component of (c),for the matrix of K users at each of the C nodes +.>A matrix obtained by column splicing, wherein i is more than or equal to 1 and less than or equal to C, and the matrix is>And the matrix is a fourth matrix, wherein K is more than or equal to 1 and less than or equal to K.
It should be noted that, the precoding method 400 provided by the embodiment of the present application is a design scheme of distributed characteristic zero forcing (eigen zero forcing, EZF) precoding, all steps in the scheme can be implemented in a distributed manner, and the information interaction dimension is irrelevant to the number of antennas of the base station, and is only related to the total number of antennas of the total user and the total number of streams.
Based on the technical scheme, the method for solving SVD decomposition of the channel state matrix in a distributed mode is provided, so that EZF precoding algorithm can be easily realized on a distributed baseband processing architecture, SVD decomposition of the global channel state matrix is solved, direct distributed realization can be realized, and the method has lower information interaction quantity.
Fig. 6 is a schematic flowchart of a precoding method 600 provided in an embodiment of the present application, where the method may specifically include the following steps. The precoding 600 shown in fig. 6 is applicable to the star system architecture described in fig. 2.
S610, each of the C sub-nodes sends C to K to the central node 2 A first matrix, correspondingly, the central node obtains C.times.K from C sub-nodes 2 And a first matrix.
Note that c×k 2 The first matrix can be understood as C times K 2 And a first matrix, wherein C is the number of users participating in precoding.
The C sub-nodes may be BBL modules corresponding to the C antenna cluster modules one-to-one, for example, the antenna cluster module 1 corresponds to BBL module 1 (i.e., sub-node 1), the antenna cluster module i corresponds to BBL module i (i.e., sub-node i) … … and the antenna cluster module C corresponds to BBL module C (i.e., sub-node C).
It should be understood that a central node may be understood as a node located at the central position of C child nodes, and may also be understood as a node at a specific position, which is not limited in this embodiment of the present application.
For ease of understanding, in the following embodiments, a child node is used in place of the BBL module for description.
Specifically, an ith sub-node (also referred to as sub-node i) of the C sub-nodes performs channel estimation according to signals received from the antenna cluster module to obtain channel state information, and performs preprocessing on the channel state information to obtain a channel matrix Wherein the channel matrix->Is an estimate of the channel state between the intra-cluster antenna and the kth user (hereinafter referred to as user k), and can also be understood as the channel matrix +.>The channel matrix from the antenna corresponding to the child node i to the user K is formed, wherein C, i and K are positive integers, i is more than or equal to 1 and less than or equal to C, and K is more than or equal to 1 and less than or equal to K.
In one possible implementation, the first matrix of the ith sub-node (i.e., sub-node i) of the C sub-nodes is based on a channel matrixAnd channel matrix->Obtained, wherein the channel matrix->Corresponds to the child node iChannel matrix of antenna to user k, channel matrix +.>For the channel matrix from the antenna corresponding to the child node i to the jth user (hereinafter referred to as user j), 1 is less than or equal to K, and j is less than or equal to K.
It should be noted that, the antenna cluster module i may send a signal to a corresponding sub-node i, the sub-node i performs channel state information on the received signal, then performs channel state information to obtain channel matrixes of K users, and then the sub-node i arbitrarily selects channel matrixes corresponding to two users from the channel matrixes of K users to calculate a first matrix of the sub-node i. For ease of understanding, the following is exemplified by child node i selecting user K and user j of the K users.
Specifically, the sub-node i obtains the estimated value of the channel state from the antennas in the cluster to the users k and j through preprocessing, for example andAt this time, the child node i will add the channel matrix of user k>And channel matrix for user j->The product of the transposed matrices of (a) is used as the first matrix of child nodes i, it being understood that user K and user j are any two of the K users.
For example, taking k=2 as an example, the sub-node i obtains an estimated value of the channel state between the intra-cluster antenna and 2 users (user 1, user 2), i.e., a channel matrix, through preprocessingThen a first matrix of sub-nodes i is computed, wherein a first momentThe matrix may be a channel matrix->The product of any one of the two channel matrices and the transposed matrix in (a) may be, for example, the first matrix of the sub-node i may be +.>
It should be noted that in the actual data transmission process, the child node i only transmits the data which is not repeated according to the symmetry of the variables, for example, in the actual data transmission process, the child node i is provided with the data andIs in conjugate symmetry relation, and only one of the two can be transmitted; due to->All are conjugate symmetric matrices, and only the data of the upper triangle or the lower triangle part can be transmitted, namely, all the data are not transmitted in actual transmission.
S620, the central node sends a second matrix to each of the C sub-nodes, and accordingly each of the C sub-nodes obtains the second matrix according to C.times.K 2 And obtaining the first matrix.
Specifically, after the central node obtains the first matrix sent by each sub-node, the central node will determine that the first matrix is the same as the second matrix according to c×k 2 The first matrix is used for obtaining the second matrix, and the following steps can be included specifically.
In one possible implementation, the method may further include: step (1), the central node obtains a third matrix, wherein the third matrix is C.times.K 2 And summing and combining the first matrixes to obtain a matrix.
Specifically, the central node obtains C sub-piecesFirst matrix transmitted by child node i in nodeWhere k=1, 2, …, K, j=1, 2, …, K. It will be appreciated that at this point, each of the C child nodes sends K to the central node 2 A first matrix, then the central node will obtain C x K 2 And a first matrix. Then, the center node pair c×k 2 The first matrix is summed in groups to obtain a matrix +.>Finally, the central node will matrix->The sub-block combination is performed to obtain a third matrix +. >In particular, as formula (6-1)
And (2) the central node obtains a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the dimension-reducing weights of the K users, wherein the fourth matrix can be calculated according to the following formula (6-2).
wherein ,Uk (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) Are all the firstThe weight value, X of the dimension reduction corresponding to any two users in K users obtained by n-1 iterations k (n-1) Weight of user k for dimension reduction obtained for the n-1 th iteration, +.>And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
And (3) after the center node obtains the fourth matrix according to the formula (6-2), the center node obtains a fifth matrix according to the fourth matrix and the dimension-reducing weights of the K users, and specifically, the center node obtains the fifth matrix according to the following formula (6-3).
wherein ,Wk (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,is a submatrix of a third matrix, X k (n-1) The weight of the dimension reduction of the user K is obtained for the n-1 th iteration, n is the iteration number, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
And (4) after the center node obtains the fourth matrix and the fifth matrix according to the formulas (6-2) and (6-3), the center node obtains the second matrix according to the third matrix, the fourth matrix and the fifth matrix. Specifically, the center node obtains the second matrix according to the following formula (6-4).
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 For the noise power of user j, P max For maximum transmit power, α j For the weighting coefficient of user j, α i For the weight coefficient of user i, α k Is the weight coefficient of user k, where M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) For the fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->And the submatrix is a submatrix of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
In summary, the center node can obtain the second matrix through the steps (1) - (4), and it should be noted that, the steps (2) - (4) need to be performed with multiple loop iteration calculations to finally obtain the second matrix and transmit the second matrix to each child node as a result. In other words, the central node needs to iterate n loops of the above formulas (6-2), (6-3) and (6-4), and then determine whether the final result after n iterations can be transmitted to each child node. The process of obtaining the second matrix for n iterations is mainly described below.
It should be noted that, before the central node enters the loop iteration, the central node has obtained the third matrix according to step (1), and in the subsequent loop iteration process, the central node only performs the calculation process of step (2) -step (4).
When n=1, i.e., the center node makes the 1 st iteration, first, the center node obtains the fourth matrix U after the 1 st iteration according to the following formula (6-5) k (1)
wherein ,Uk (1) For the fourth matrix, σ, obtained in iteration 1 j 2 Noise power for jth user, P max At maximumThe power of the transmission is such that,for the third matrix, X j (0) 、X i (0) All are initial values of the weight values of the dimension reduction of any one of K users, X k (0) For the initial value of the dimension-reducing weight of user k, < +.>Is a submatrix of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
It should be understood that X k (0) And setting the initial value of the dimension reduction weight of any one of the K users in advance.
Next, U is obtained at the central node according to the above formula (6-5) k (1) After that, the central node uses U k (1) Calculating a fifth matrix, specifically, the center node calculates a fifth matrix W after the 1 st iteration according to the following formula (6-6) k (1)
wherein ,Wk (1) For the fifth matrix obtained in iteration 1, I is the identity matrix, U k (1) For the fourth matrix obtained for iteration 1,is a submatrix of a third matrix, X k (0) The initial value of the dimension reduction weight of the user K is equal to or greater than 1 and equal to or less than K, wherein K is the number of users. />
Subsequently, U is obtained at the central node according to the above formulas (6-5) and (6-6) k (1) and Wk (1) Thereafter, the central node utilizes a fourth matrix U k (1) A fifth matrix W k (1) Calculating a second matrix, specifically, the center node according to the following formula (6-7)Calculating a second matrix X after the 1 st iteration k (1)
wherein ,Xk (1) For the second matrix, σ, obtained in iteration 1 j 2 Noise power for jth user, P max For maximum transmit power, α j For the weighting coefficient of user j, α i For the weight coefficient of user i, α k For the weight coefficient of user k,for the third matrix, U k (1) For the fourth matrix obtained in iteration 1, W k (1) For the fifth matrix obtained for iteration 1, < > a fifth matrix for iteration 1,>is a sub-matrix of the third matrix. Wherein M is j (1) =U j (1) W j (1) U j (1)H , M k (1) =U k (1) W k (1) U k (1)H K is more than or equal to 1 and less than or equal to K, wherein K is the number of users.
wherein ,Mj (1) 、M k (1) Can be considered as a fourth matrix U corresponding to each of K users based on the 1 st iteration (1) A fifth matrix W (1) Obtained.
The central node completes the 1 st iteration calculation, and a fourth matrix U after the 1 st iteration is obtained according to the process k (1) Fifth matrix W k (1) And a second matrix X k (1)
It should be noted that after the center node performs the 1 st iteration calculation, the center node needs to determine the fourth matrix U obtained after the 1 st iteration k (1) Fifth matrix W k (1) And a second matrix X k (1) Whether the convergence condition is satisfied.
The fifth matrix W after the 1 st iteration is determined by the center node k (1) Whether the convergence condition is satisfied is exemplified, and at this time, the convergence condition includes that the fifth matrix of K users obtained by iteration satisfies the following formula (6-8).
wherein ,αj For the weight coefficient of user j, W j (1) For the fifth matrix obtained by the user j after 1 iteration, W j (0) Epsilon is a decision threshold value for an initial value set in advance.
It should be noted that, when the central node determines whether the convergence condition is met according to the fourth matrix or the second matrix obtained by iteration, the convergence condition will correspondingly change, and the convergence condition shown in the above formula (6-8) is merely illustrative, that is, the central node may also determine whether other convergence conditions are met according to the fifth matrix obtained by iteration, which should be understood that the embodiment of the present application is not limited herein.
In one possible implementation, if the central node determines the fifth matrix W after 1 iteration k (1) If the convergence condition is satisfied, the central node does not continue to perform iterative computation any more, and directly iterates the 1 st iteration to obtain a second matrix X k (1) As a result of output, i.e. the central node will second matrix X k (1) To each child node.
In one possible implementation, if the central node determines the fifth matrix W after 1 iteration k (1) The convergence condition is not satisfied, at which point the central node performs a second iteration, at which point n=2.
Specifically, the central node reduces the weight X of the dimension of any one of the K users after the 1 st iteration k (1) Substituting into the formula (6-2) for calculation to obtainFourth matrix U after iteration 2 k (2) The method comprises the steps of carrying out a first treatment on the surface of the And then X is taken k (1) and Uk (2) Substituting the obtained value into a formula (6-3) for calculation to obtain a fifth matrix W after the 2 nd iteration k (2) The method comprises the steps of carrying out a first treatment on the surface of the Subsequently, the central node will U k (2) and Wk (2) Substituting the second matrix X into the formula (6-4) for calculation to obtain a second matrix X after the 2 nd iteration k (2) Thus, the center node completes the 2 nd iteration loop calculation.
It should be noted that, after the center node completes the 2 nd iteration, the center node still needs to determine the fifth matrix W after the 2 nd iteration k (2) Whether the convergence condition is satisfied or not, wherein the specific determination process may refer to the fifth matrix W obtained after the 1 st iteration of the determination described above k (1) If the convergence condition is satisfied, the specific process is not described herein.
At this time, if the central node determines the fifth matrix W after the 2 nd iteration k (2) If the convergence condition is satisfied, the center node directly obtains a second matrix X obtained by the 2 nd iteration k (2) Outputting as a result; if the central node judges the fifth matrix W after the 2 nd iteration k (2) If the convergence condition is not satisfied, the central node continues to execute the 3 rd iteration loop calculation, where n=3, it should be understood that, for the 3 rd iteration loop calculation process, reference may be made to the 1 st iteration loop and the 2 nd iteration loop processes, and for simplicity, the disclosure is not repeated here.
If the central node determines that the result after the 3 rd iteration still does not meet the convergence condition, the central node continues to perform the iterative computation until the result after the n-th iteration meets the convergence condition, and the central node outputs the second matrix of the n-th iteration as the result.
It should be understood that the above convergence condition may be other convergence conditions, which is not limited by the embodiment of the present application.
It should also be appreciated that the central node can obtain a fourth matrix U from the nth iteration of the r iterations k (n) Fifth matrix W k (n) And a second matrix X k (n) Whether or not the convergence condition is satisfied, determining whether or not to output the second matrix X k (n) . Specifically, the central node can be based on the fourth matrix U k (n) Whether the first convergence condition is satisfied, determining whether to output the second matrix X k (n) The central node can also be based on a fifth matrix W k (n) Whether the second convergence condition is satisfied, determining whether to output the second matrix X k (n) Or according to the second matrix X k (n) Whether or not the third convergence condition is satisfied, determining whether or not to output the second matrix X k (n) Alternatively, the central node can also be based on the fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n) Whether or not any two or three of them satisfy the fourth convergence condition, determines whether or not to output the second matrix X k (n) It should be understood that the embodiments of the present application are not limited in this regard. In other words, whether the first convergence condition, the second convergence condition, the third convergence condition, and the fourth convergence condition are converged is determined according to different matrices, and the convergence conditions are also changed.
Alternatively, in a possible implementation manner, the iteration number may also be a fixed iteration number, that is, the fixed iteration number may be set in advance directly by the network side or the base station, for example, assuming that the set iteration number n=100, the central node directly performs 100 iteration loop calculations according to the above formula, and then the second matrix X after the 100 th iteration is calculated k (100) And outputting as a result. It should be noted that in this possible implementation manner, there is a case that the result after reaching the fixed iteration number is directly output without judging whether the result of any one iteration of the fixed iterations satisfies the convergence condition; alternatively, it is still necessary to determine whether the result of any one of the fixed iterations satisfies the convergence condition.
In step S620, the center node transmits the second matrix to each of the C child nodes, and accordingly, each of the C child nodes receives the second matrix. Specifically, after each of the C sub-nodes receives the second matrix, a precoding component corresponding to each sub-node is calculated according to the second matrix, and the precoding components form a precoding matrix.
For example, taking the child node i as an example, the child node i performs the calculation of the precoding component according to the formula (6-9).
wherein ,for the precoding matrix component corresponding to child node i, < +.>To transpose the conjugate matrices of K users at sub-node i>Matrix obtained by splicing according to columns, X k The resulting second matrix is the final iteration, where k=1, 2, …, K is the number of users.
Finally, splicing the precoding components calculated by each of the C sub-nodes according to the rows to further obtain a precoding matrix P k . Specifically, the calculation of the precoding matrix may be performed according to the following formula (6-10).
Wherein K is the number of users, C is the number of sub-nodes participating in precoding,precoding corresponding to each of the C sub-nodesComponent (F)> Conjugate transpose of K users at each of the C sub-nodes +.>Matrix obtained by splicing according to columns, X k The resulting second matrix is the final iteration, where k=1, 2, …, K is the number of users.
Thus, the central node and each child node complete the precoding process.
Optionally, in one possible implementation, to further reduce the variable dimension of the required interaction in the distributed precoding design, before step S620, the method may further include the steps of:
and (5) the central node obtains a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of the K users according to columns.
And (6) decomposing the sixth matrix into a first submatrix and a second submatrix by the central node.
Specifically, the central node further obtains a sixth matrix from the second matrices of the K users in a column-wise spliced manner, as shown in the following formula (6-11).
X=[X 1 X 2 … X K ]Formula (6-11)
Wherein X is a sixth matrix, [ X ] 1 X 2 … X K ]In order to form a matrix by splicing the second matrices of K users in columns, K is the number of users.
Subsequently, in step (6), the central node further decomposes the obtained sixth matrix X into a first sub-matrix, which is a fourth matrix U of K users, and a second sub-matrix k For the block diagonal matrix U of diagonal blocks, the second submatrix is b= (U H HH H U+μW -1 ) -1
Wherein W is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H A conjugate transition matrix of the first submatrix, H is a third matrix, H H Is the conjugate transpose of the third matrix, W -1 Is the inverse matrix, sigma, of the second sub-matrix j 2 For the noise power of user j, P max For maximum transmit power, α k For the weight coefficient of user k, m= UWU H , W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U.
Specifically, the sixth matrix X can be obtained by multiplying the first sub-matrix U and the matrix W described above by the first sub-matrix and the second sub-matrix, wherein the first sub-matrix U and the matrix W described above are shown in formulas (6-12).
It should be noted that, through the steps (5) and (6), the central node decomposes the matrix X into the form of multiplying the two matrices (the first submatrix and the second submatrix) by using the form of x=ub, so that the variable dimension of the interaction required in the distributed precoding design can be reduced, thereby alleviating the data interaction amount and further solving the problem of high computation complexity.
After the steps (5) and (6), the central node further obtains a first sub-matrix U and a second sub-matrix B, and in order to reduce the computational complexity and reduce the data interaction amount, the central node sends the decomposed first sub-matrix U and second sub-matrix B to each of the C sub-nodes. Therefore, each of the C sub-nodes calculates the corresponding precoding component by using the received first sub-matrix U and the second sub-matrix B, and finally, each precoding component is spliced according to rows to form a precoding matrix, so that the central node completes the precoding process.
It should be understood that, the steps (5) and (6) are optional steps, that is, the embodiments of the present application may not perform the steps (5) and (6), in other words, the central node may not decompose the second matrix after obtaining the second matrix after n iterations, and directly send the second matrix to each of the C sub-nodes, and accordingly, each sub-node may perform the calculation of the precoding component after receiving the second matrix.
It should be noted that, aiming at the problems of high data interaction amount and high computation complexity faced by the centralized processing of the existing WMMSE precoding technology when the number of antennas is increased, the precoding method 600 provided by the embodiment of the present application distributes and designs the precoding algorithm to implement, so that the data interaction and the computation are shared among different BBL modules, and the problems of high information interaction and high computation complexity are effectively solved.
The technical scheme of the embodiment of the application provides and proves that the precoding matrix P=H H The feasibility of the linear expression form of X is achieved, so that R-WMMSE precoding is proposed by the design, and the optimization of the dimension of the optimization variable of WMMSE precoding is achieved. In addition, the technical scheme of the application can further decompose the structure of X, thereby reducing the dimension of information interaction and effectively relieving the problems of high information interaction and calculation complexity.
Fig. 7 is a schematic flowchart of a precoding method 700 provided in an embodiment of the present application, where the method may specifically include the following steps. Wherein the precoding method 700 is applicable to the chain system architecture of fig. 3.
It should be noted that the precoding methods provided in the embodiments of fig. 7 and fig. 4 to fig. 6 are independent technical schemes, and therefore, the meaning of the same letter is not identical for the embodiments.
S710, the ith node sends a first matrix of the ith-1 th node to the ith node, and accordingly, the ith node acquires the first matrix of the ith-1 th node.
Specifically, the first matrix of the i-1 th node is wherein ,For the channel matrix from the antenna corresponding to the c-th node to the kth user (subsequently denoted user k), +. >The channel matrix from the antenna corresponding to the C node to the j user (hereinafter referred to as user j) is 2.ltoreq.i.ltoreq.C, where C is the number of nodes participating in precoding, i, K, C are positive integers, 1.ltoreq.k, j.ltoreq.K, and K is the number of users.
Wherein the first matrix of the i-1 th node isIt will be appreciated that the first matrix of the i-1 th node is the +.>Corresponding to the i-1 th nodeAnd (5) summing to obtain a matrix.
For example, taking i=4 as an example, the first matrix of the 3 rd node may be the 1 st node2 nd node corresponding->And +.3 corresponding to node>And (5) summing to obtain a matrix. Subsequently, the 3 rd node transmits the first matrix of the 3 rd node to the 4 th node.
It should be appreciated that the i-1 th node may also be referred to as node i-1, the i-th node may also be referred to as node i, and so on, the C-th node may also be referred to as node C. Embodiments of the present application are not described herein.
It should be noted that, the antenna cluster module i sends a signal to the corresponding node i, then the node i performs channel state information on the received signal, then performs preprocessing on the channel state information to obtain K channel matrixes, and then arbitrarily selects two channel matrixes corresponding to the users from the K channel matrixes to calculate the first matrix of the node i. For ease of understanding, the following will exemplify the selection of user K and user j from among K users by node i.
Specifically, the sub-node i obtains the estimated value of the channel state from the antennas in the cluster to the users k and j through the preprocessing process, for example andAt this time, node i will be the channel matrix of user k +.>And channel matrix for user j->The matrix obtained by the product of the transformation matrices of (a) is taken as the first matrix of the node i, and it is understood that the user K and the user j are any two users of the K users.
For example, taking k=2 and c=4 as an example, specifically, the node i is preprocessed to obtain the channel matrixNode i computes a first matrix of node i. For example, the first matrix of child nodes i may be +.>
Assuming that node 1 begins transmitting the first matrix along the endless chain, then node 1 calculates the first matrix for that node asAnd transmitting the first matrix of node 1 to node 2, after receiving the first matrix of node 1, calculating the first matrix of node 2 as +.> (wherein, the first matrix of the node 2 is understood as a matrix obtained by summing the first matrix of the node 1 and the matrix corresponding to the node 2). Subsequently, node 2 sends the first matrix of node 2 to node 3, and node 3, after receiving the first matrix of node 2, calculates the first matrix of node 3 as +.> Finally, the node 3 sends the first matrix of the node 3 to the node 4, and the node 4 calculates the first matrix of the node 4 according to the received first matrix of the node 3, so as to finish the annular chain transmission.
S720, the ith node sends a first matrix of the ith node to the (i+1) th node, and accordingly, the (i+1) th node acquires the first matrix from the ith node.
Specifically, the first matrix of the ith node isIt can be understood that the first matrix of the ith node is +.1 corresponding to the previous i-1 nodes, respectively>Corresponding to the i-th node +.>And (5) summing to obtain a matrix.
Taking i=4 as an example, the first matrix of the 4 th node may be the 1 st node2 nd node corresponding->The 3 rd node corresponds to->Corresponding to the 4 th nodeAnd (5) summing to obtain a matrix. The 4 th node then transmits the first matrix of the 4 th node to the 5 th node.
It should be noted that, as shown in fig. 7, steps S710 and S720 described above may be understood that, starting from a specific node (e.g., node i-1) among the C nodes, the first matrix of node i-1 is sent to the next node (e.g., node i) in a loop-chain manner, and node i sends the first matrix of node i to node i+1 in a loop-chain manner, … …, until the C node ends.
It should be further noted that, steps S710 and S720 described above may also be understood as transmitting the first matrix of node 1 from the 1 st node (e.g. node 1) to the subsequent node (node 2) in a circular chain manner, and transmitting the first matrix of node 2, … …, to node 3 in a circular chain manner until the last node (node C) is finished.
S730, the C node sends the second matrix to the 1 st node, the i-1 st node sends the second matrix to the i node, and the i node sends the second matrix to the i+1 th node, …, until the last node receives the second matrix.
Specifically, after each of the C nodes obtains the second matrix, each node calculates a respective corresponding precoding component according to the second matrix, and the precoding components form a precoding matrix.
In one possible implementation, before step S730, the method may further include the steps of:
and (1) the C node acquires a third matrix, wherein the third matrix is obtained by combining the sub-blocks of the first matrix of the C node.
Specifically, during steps S710-S720, the C-th node (also referred to as node C) obtains the first matrix of the C-1-th node (also referred to as node C-1)And calculates the first matrix corresponding to the node C asAt this time, at node C, the first matrix for node C is +.>( wherein , ) After sub-block combination, a third matrix is obtained>Specifically, as shown in the formula (7-1).
And (2) the node C obtains a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the dimensionality reduction weights of the K users. The fourth matrix may be calculated according to the following formula (7-2).
wherein ,Uk (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) The weight value, X of the dimension reduction corresponding to any two users in K users obtained by n-1 th iteration k (n-1) Weight of user k for dimension reduction obtained for the n-1 th iteration, +.>And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
And (3) after the node C obtains the fourth matrix according to the formula (7-2), the node C obtains a fifth matrix according to the fourth matrix and the dimension-reducing weights of the K users, and specifically, the node C obtains the fifth matrix according to the following formula (7-3).
wherein ,Wk (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,is a submatrix of a third matrix, X k (n-1) Dimension-reducing weights for user k obtained for the n-1 th iterationThe value n is the iteration number, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
And (4) after the node C obtains the fourth matrix and the fifth matrix according to the formulas (7-2) and (7-3), respectively, the node C obtains the second matrix according to the third matrix, the fourth matrix and the fifth matrix. Specifically, the node C obtains the second matrix according to the following formula (7-4).
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 For the noise power of user j, P max For maximum transmit power, α j For the weighting coefficient of user j, α i For the weight coefficient of user i, α k Is the weight coefficient of user k, where M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) For the fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->And the submatrix is a submatrix of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
In summary, the node C can obtain the second matrix through the steps (1) - (4), and it should be noted that the steps (2) - (4) require multiple loop iterative computations to finally obtain the second matrix and transmit the second matrix to each node as a result. In other words, node C needs to iterate n loops over equations (7-2), (7-3), and (7-4) above, and then determine whether the final result after n iterations can be transmitted to each node. The process of obtaining the second matrix for n iterations is mainly described below.
It should be noted that, before the node C enters the loop iteration, the node C has obtained the third matrix according to the step (1), and in the subsequent loop iteration process, the node C only performs the calculation process of the step (2) -the step (4).
When n=1, i.e., when node C makes the 1 st iteration, first, node C obtains a fourth matrix U after the 1 st iteration according to the following formula (7-5) k (1)
wherein ,Uk (1) For the fourth matrix, σ, obtained in iteration 1 j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (0) 、X i (0) All are initial values of the weight values of the dimension reduction of any one of K users, X k (0) For the initial value of the dimension-reducing weight of user k, < +.>Is a submatrix of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
It should be understood that X k (0) All the initial values are the initial values of the dimensionality reduction weights of any one of the K users which are set in advance.
Next, U is obtained at node C according to the above formula (7-5) k (1) Thereafter, node C utilizes U k (1) Calculating a fifth matrix, specifically, node C calculates a fifth matrix W after 1 st iteration according to the following formula (7-6) k (1)
wherein ,Wk (1) For the fifth matrix obtained in iteration 1, I is the identity matrix,U k (1) For the fourth matrix obtained for iteration 1, Is a submatrix of a third matrix, X k (0) The initial value of the dimension reduction weight of the user K is equal to or greater than 1 and equal to or less than K, wherein K is the number of users.
Subsequently, U is obtained at node C according to the above formulas (7-5) and (7-6) k (1) and Wk (1) Thereafter, node C utilizes a fourth matrix U k (1) A fifth matrix W k (1) Calculating a second matrix, specifically, node C calculates a second matrix X after the 1 st iteration according to the following formula (7-7) k (1)
wherein ,Xk (1) For the second matrix, σ, obtained in iteration 1 j 2 Noise power for jth user, P max For maximum transmit power, α j For the weighting coefficient of user j, α i For the weight coefficient of user i, α k For the weight coefficient of user k,for the third matrix, U k (1) For the fourth matrix obtained in iteration 1, W k (1) For the fifth matrix obtained for iteration 1, < > a fifth matrix for iteration 1,>is a sub-matrix of the third matrix. Wherein M is j (1) =U j (1) W j (1) U j (1)H , M k (1) =U k (1) W k (1) U k (1)H K is not less than 1, j is not less than i is not more than K, and K is the number of users.
wherein ,Mj (1) 、M k (1) Can be considered as a fourth matrix U corresponding to each of K users based on the 1 st iteration (1) A fifth matrix W (1) Obtained.
So far, node C completes the 1 st iteration calculation, and a fourth matrix U after the 1 st iteration is obtained according to the process k (1) Fifth matrix W (1) And a second matrix X k (1)
After node C performs the 1 st iteration calculation, node C needs to determine the fifth matrix W obtained after the 1 st iteration (1) Whether a convergence condition is satisfied, wherein the convergence condition includes that a fifth matrix of K users obtained by iteration satisfies the following formula (7-8).
wherein ,αj For the weight coefficient of user j, W j (n) For the fifth matrix obtained by the user j after 1 iteration, W j (n-1) Epsilon is a decision threshold value for an initial value set in advance.
It should be noted that, when the node C determines whether the convergence condition is satisfied according to the fourth matrix or the second matrix obtained by iteration, the convergence condition correspondingly changes, and the convergence condition shown in the above formula (6-8) is merely illustrative, that is, the node C may also determine whether other convergence conditions are satisfied according to the fifth matrix obtained by iteration, which should be understood that the embodiment of the present application is not limited herein.
In one possible implementation, if node C determines the fifth matrix W after 1 iteration k (1) If the convergence condition is satisfied, node C does not continue to perform iterative computation any more, and directly iterates the 1 st iteration to obtain a second matrix X k (1) As a result of output, i.e. node C will second matrix X k (1) To each child node.
In one possible implementation, if node C determines 1Fifth matrix W after multiple iterations k (1) The convergence condition is not satisfied, at which point node C performs a second iteration, at which point n=2.
Specifically, node C sets the dimension-reduced weight X of any one of K users after the 1 st iteration k (1) Substituting into formula (7-2) to calculate to obtain a fourth matrix U after the 2 nd iteration k (2) The method comprises the steps of carrying out a first treatment on the surface of the And then X is taken k (1) and Uk (2) Substituting the obtained data into a formula (7-3) for calculation to obtain a fifth matrix W after the 2 nd iteration k (2) The method comprises the steps of carrying out a first treatment on the surface of the Subsequently, node C will U k (2) and Wk (2) Substituting into the formula (7-4) to calculate to obtain a second matrix X after the 2 nd iteration k (2) Thus, node C completes the 2 nd iteration loop calculation.
It should be noted that, after the node C completes the 2 nd iteration, the node C still needs to determine the fifth matrix W after the 2 nd iteration k (2) Whether the convergence condition is satisfied or not, wherein the specific determination process may refer to the fifth matrix W obtained after the 1 st iteration of the determination described above k (1) If the convergence condition is satisfied, the specific process is not described herein.
At this time, if the node C determines the fifth matrix W after the 2 nd iteration k (2) If the convergence condition is satisfied, the node C directly obtains a second matrix X obtained by the 2 nd iteration k (2) Outputting as a result; if the node C judges the fifth matrix W after the 2 nd iteration k (2) If the convergence condition is not satisfied, the node C continues to perform the 3 rd iteration loop calculation, where n=3, and it should be understood that the process related to the 3 rd iteration loop calculation may refer to the 1 st iteration loop and the 2 nd iteration loop process, which are not described herein for simplicity.
It should be further noted that, if the node C determines that the result after the 3 rd iteration still does not meet the convergence condition, the node C may continue to perform the iterative computation until the result after the n-th iteration meets the convergence condition, where the node C may output the second matrix of the n-th iteration as the result.
It should be understood that the above convergence condition may be other convergence conditions, which is not limited by the embodiment of the present application.
It should also be appreciated that node C is able to obtain a fourth matrix U from the nth of the r iterations k (n) Fifth matrix W k (n) And a second matrix X k (n) Whether or not the convergence condition is satisfied, determining whether or not to output the second matrix X k (n) . Specifically, node C can be based on the fourth matrix U k (n) Whether the first convergence condition is satisfied, determining whether to output the second matrix X k (n) Node C can also be based on the fifth matrix W k (n) Whether the second convergence condition is satisfied, determining whether to output the second matrix X k (n) Or according to the second matrix X k (n) Whether or not the third convergence condition is satisfied, determining whether or not to output the second matrix X k (n) Alternatively, node C can also be based on a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n) Whether or not any two or three of them satisfy the fourth convergence condition, determines whether or not to output the second matrix X k (n) It should be understood that the embodiments of the present application are not limited in this regard. In other words, whether the first convergence condition, the second convergence condition, the third convergence condition, and the fourth convergence condition are converged is determined according to different matrices, and the convergence conditions are also changed.
Alternatively, in a possible implementation manner, the iteration number may also be a fixed iteration number, that is, the fixed iteration number may be set in advance directly by the network side or the base station, for example, assuming that the set iteration number n=100, the node C directly performs 100 iteration loop calculations according to the above formula, and then the second matrix X after the 100 th iteration is calculated k (100) And outputting as a result. It should be noted that in this possible implementation, there is a case that it is not necessary to determine whether the result of any one iteration of the fixed iterations satisfies the convergence condition, and it is directly reached Outputting a result after the fixed iteration times; alternatively, it is still necessary to determine whether the result of any one of the fixed iterations satisfies the convergence condition.
In step S720, as shown in fig. 7, node C transmits the second matrix to node 1, …, node i-1 transmits the second matrix to node i, and so on, until the second matrix is transmitted to the last node. Specifically, after each node in the C nodes receives the second matrix, a precoding component corresponding to each node is calculated according to the second matrix, and the precoding components form a precoding matrix.
For example, taking node i as an example, node i performs the calculation of the precoding component according to equation (7-9).
wherein ,for the precoding matrix component corresponding to node i, < +.>To transpose the conjugate matrices of K users at node i>Matrix obtained by splicing according to columns, X k The resulting second matrix is the final iteration, where k=1, 2, …, K is the number of users.
Finally, splicing the precoding components calculated by each node in the C nodes according to the rows to further obtain a precoding matrix P k . Specifically, the calculation of the precoding matrix may be performed according to the following formula (7-10).
Wherein K isThe number of households, C is the number of nodes participating in precoding,for each of the C nodes, respectively corresponding precoding components +.> Transpose the conjugate of K users at each of the C nodesMatrix obtained by splicing according to columns, X k The resulting second matrix is the final iteration, where k=1, 2, …, K is the number of users.
To this end, each of the nodes C completes the precoding process.
Optionally, in one possible implementation, to further reduce the variable dimension of the required interaction in the distributed precoding design, before step S620, the method may further include the steps of:
and (5) the node C obtains a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of the K users according to columns.
And (6) decomposing the sixth matrix into a first sub-matrix and a second sub-matrix by the node C.
Specifically, the node C further obtains a sixth matrix by column-wise stitching the second matrices of the K users, as shown in the following formula (7-11).
X=[X 1 X 2 … X K ]Formula (7-11)
Wherein X is a sixth matrix, [ X ] 1 X 2 … X K ]In order to form a matrix by splicing the second matrices of K users in columns, K is the number of users.
Subsequently, in step (6), the node C further decomposes the obtained sixth matrix X into a first sub-matrix and a second sub-matrixA matrix, the first submatrix is a fourth matrix U with K users k For the block diagonal matrix U of diagonal blocks, the second submatrix is b= (U H HH H U+μW -1 ) -1
Wherein W is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H A conjugate transition matrix of the first submatrix, H is a third matrix, H H Is the conjugate transpose of the third matrix, W -1 Is the inverse matrix, sigma, of the second sub-matrix j 2 For the noise power of user j, P max For maximum transmit power, α k For the weight coefficient of user k, m= UWU H , W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U.
Specifically, the sixth matrix X can be obtained by multiplying the first sub-matrix U and the matrix W described above by the first sub-matrix and the second sub-matrix, wherein the first sub-matrix U and the matrix W described above are shown in formulas (7-12).
It should be noted that, through the steps (5) and (6), the node C divides the matrix X into the form of multiplying the two matrices (the first submatrix and the second submatrix) by using the form of x=ub, so that the variable dimension of the interaction required in the distributed precoding design can be reduced, thereby alleviating the data interaction amount and further solving the problem of high computation complexity.
After the steps (5) and (6), the node C further obtains a first submatrix U and a second submatrix B, and in order to reduce the computational complexity and reduce the data interaction amount, the node C sends the decomposed first submatrix U and second submatrix B to the node 1, and then the node 1 sends the decomposed first submatrix U and second submatrix B to the node 2, …, and so on, and the first submatrix U and the second submatrix B are transmitted to the last node in a ring chain manner.
Therefore, each node in the C nodes calculates the corresponding precoding component by using the received first submatrix U and the second submatrix B, and finally each precoding component is spliced according to rows to form a precoding matrix, so that the node C finishes the precoding process.
It should be understood that the steps (5) and (6) are optional steps, that is, the embodiments of the present application may not perform the steps (5) and (6), in other words, the node C does not decompose the second matrix after obtaining the second matrix after n iterations, and directly sends the second matrix to the subsequent node in the form of loop chain transmission, and accordingly, each node performs calculation of the precoding component after receiving the second matrix.
It should be noted that, aiming at the problems of high data interaction amount and high computation complexity faced by the centralized processing of the existing WMMSE precoding technology when the number of antennas is increased, the precoding method 700 provided by the embodiment of the present application distributes and designs the precoding algorithm to implement the method, so that the data interaction and the computation are shared among different BBL modules, and the problems of high information interaction and high computation complexity are effectively solved.
The technical scheme of the embodiment of the application provides and proves that the precoding matrix P=H H The feasibility of the linear expression form of X is achieved, so that R-WMMSE precoding is proposed by the design, and the optimization of the dimension of the optimization variable of WMMSE precoding is achieved. In addition, the technical scheme of the application can further decompose the structure of X, thereby reducing the dimension of information interaction and effectively relieving the problems of high information interaction and calculation complexity.
The various embodiments described herein may be separate solutions or may be combined according to inherent logic, all of which fall within the scope of the present application.
It will be appreciated that in the foregoing embodiments of the methods and operations performed by the respective devices may also be performed by components (e.g., chips or circuits) of the corresponding devices.
The above description has been mainly made on the schemes provided by the embodiments of the present application from the respective interaction points of view. It will be appreciated that each communication device, such as a transmitting device or a receiving device, includes corresponding hardware structures and/or software modules for performing each function in order to achieve the above-described functions. Those of skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as hardware or combinations of hardware and computer software. Whether a function is implemented as hardware or computer software driven hardware depends upon the particular application and design constraints imposed on the technology. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
The embodiment of the application can divide the function modules of the sending end device or the receiving end device according to the method example, for example, each function module can be divided corresponding to each function, and two or more functions can be integrated in one processing module. The integrated modules described above may be implemented either in hardware or in software functional modules. It should be noted that, in the embodiment of the present application, the division of the modules is schematic, which is merely a logic function division, and other division manners may be implemented in practice. The following description will be given by taking an example of dividing each function module into corresponding functions.
It should be understood that the specific examples of embodiments of the present application are intended to facilitate a better understanding of the presently claimed embodiments by those skilled in the art and are not intended to limit the scope of the embodiments of the present application.
It should be understood that, in various embodiments of the present application, the sequence numbers of the foregoing processes do not mean the order of execution, and the order of execution of the processes should be determined by the functions and internal logic thereof, and should not constitute any limitation on the implementation process of the embodiments of the present application.
The method provided by the embodiment of the application is described in detail above with reference to fig. 4 to 7. The following describes in detail the apparatus provided in the embodiment of the present application with reference to fig. 8 to 13. It should be understood that the descriptions of the apparatus embodiments and the descriptions of the method embodiments correspond to each other, and thus, descriptions of details not described may be referred to the method embodiments above, and for brevity, will not be repeated herein.
Fig. 8 shows a schematic block diagram of a communication device 800 of an embodiment of the application. It is to be understood that the apparatus 800 comprises a processing unit 810 and a transceiving unit 820.
The processing unit 810 is configured to obtain C first matrices from C sub-nodes, where the first matrix of the ith sub-node is based on the channel matrix Obtained, the channel matrix->The channel matrix from the antenna corresponding to the ith sub-node to the kth user is formed, wherein C, i and K are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; the transceiver unit 820 is configured to send a second matrix to each of the C child nodes, where the second matrix is obtained according to the C first matrices; the processing unit 810 is configured to obtain C third matrices from C sub-nodes, where the third matrix of the i-th sub-node is based on the channel matrix ∈ ->And the second matrix; the transceiver unit 820 is configured to send a fourth matrix to each of the C sub-nodes, where the fourth matrix is obtained according to the C third matrices, and the fourth matrix is used for each of the C sub-nodes to calculate a corresponding precoding matrix component, where the precoding matrix components form a precoding matrix.
In one possible implementation, the first matrix of the ith sub-node of the C sub-nodes is based on a channel matrixThe method comprises the following steps: the first matrix of the ith sub-node of the C sub-nodes is defined by the channel matrix +. >And the channel matrix->A matrix obtained by multiplying the conjugate transpose matrix of (a).
In one possible implementation, the processing unit 810 is specifically configured to: obtaining a fifth matrix, wherein the fifth matrix is obtained by summing the C first matrices; and decomposing the characteristic value of the fifth matrix to obtain the second matrix.
In one possible implementation, the third matrix of the ith sub-node of the C sub-nodes is based on the channel matrixAnd the second matrix, comprising: the third matrix of the ith sub-node in the C sub-nodes is a matrix obtained by multiplying a conjugate transpose matrix of a sixth matrix by the sixth matrix, the sixth matrix is a matrix formed by splicing K seventh matrices according to columns, and the seventh matrix is the channel matrix->The first N of the product of the conjugate transpose matrix of (A) and the second matrix k A matrix of column vectors.
In one possible implementation, the fourth matrix is obtained according to the C third matrices, including: the fourth matrix is a matrix obtained by inverting a matrix obtained by summing the C third matrices.
Fig. 9 shows a schematic block diagram of a communication device 900 of an embodiment of the application. It should be understood that the apparatus 900 includes C units, wherein the i-1 th unit transceiver unit 910, the processing unit 920 including the i-th unit, the i-th unit transceiver unit 930, the C-th unit transceiver unit 940, and the C-th unit processing unit 950.
The processing unit 920 of the ith unit is configured to obtain a first matrix from the ith-1 th unit, where the first matrix from the ith-1 th unit is wherein ,The channel matrix from the antenna corresponding to the C unit to the k user is 2.ltoreq.i.ltoreq.C, wherein C is the number of nodes participating in precoding, and i, k, C and C are positive integers; the transceiver unit 930 of the ith unit is configured to send the first matrix of the ith unit to the (i+1) th unit, where the first matrix of the ith unit is +>A transceiver unit 940 of the C-th unit, configured to send a second matrix to the 1 st unit, and a transceiver unit 920 of the i-1 st unit in the C-th node sends the second matrix to the i-th unit, where the second matrix is obtained according to the first matrix of the C-th unit, C is a positive integer, and i+1 is less than or equal to C; the processing unit 920 of the ith unit is configured to obtain a third matrix from the ith-1 th unit, where the third matrix from the ith-1 th unit is wherein ,Is based on K channel matrices->And the second matrix; a transceiver 910 of the ith unit, configured to send a third matrix of the ith unit to the (i+1) th unit, where the third matrix of the ith unit is A transceiver 940 of the C-th unit, configured to transmit a fourth matrix to the 1 st unit, and the transceiver of the i-1 st unit of the C-th unit transmits the fourth matrix to the i-th unit, where the fourth matrix is obtained according to the third matrix of the C-th unit; the processing unit of each of the C units calculates a respective precoding matrix component from the fourth matrix, the precoding matrix components constituting a precoding matrix.
In one possible implementation, the method further includes: and a processing unit 950 of the C unit, configured to decompose the eigenvalue of the first matrix of the C unit to obtain the second matrix.
In one possible implementation, theIs based on K channel matrices->And the second matrix, comprising: this->Is a matrix obtained by multiplying a conjugate transpose matrix of a fifth matrix by the fifth matrix, wherein the fifth matrix is a matrix formed by splicing K sixth matrices according to columns, and the sixth matrix is the channel matrix ∈>Front N of the product of the conjugate transpose of (a) and the second matrix k A matrix of column vectors.
In one possible implementation, the fourth matrix is obtained according to the C third matrices, including: the fourth matrix is a matrix obtained by inverting the matrix obtained by summing the C third matrices.
In one possible implementation, the processing unit of each of the C units is specifically configured to: multiplying the matrix obtained by splicing the K sixth matrices according to the columns by the fourth matrix to obtain corresponding precoding matrix components.
Fig. 10 shows a schematic block diagram of a communication device 1000 of an embodiment of the application. It is to be understood that the apparatus 1000 comprises a processing unit 1010 and a transceiver unit 1020.
The processing unit 1010 is configured to obtain c×k 2 A first matrix of C x K 2 The first matrix is from C sub-nodes, and the first matrix of the ith sub-node in the C sub-nodes isThe first matrix of the ith sub-node is based on the channel matrix +.>And channel matrix->Obtained, the channel matrix->Channel matrix from antenna corresponding to the ith sub-node to the kth user, the channel matrix +.>The channel matrix from the antenna corresponding to the ith sub-node to the jth user is formed, wherein C, i, K and j are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; the transceiver unit 1020 is configured to send a second matrix to each of the C child nodes, where the second matrix is based on the c×k 2 And the second matrix is obtained by calculating a corresponding precoding matrix component for each of the C sub-nodes, and the precoding matrix components form a precoding matrix.
In one possible implementation, the first matrix of the ith sub-node of the C sub-nodes is based on a channel matrixAnd channel matrix->The method comprises the following steps: the first matrix of the ith sub-node of the C sub-nodes is defined by the channel matrix +.>And the channel matrix->A matrix obtained by multiplying the conjugate transpose matrix of (a).
In one possible implementation, the processing unit 1010 is further configured to: obtaining a third matrix, wherein the third matrix is a matrix obtained by combining matrixes obtained by summing the C first matrixes; obtaining a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the weight of the dimension reduction of K users; obtaining a fifth matrix, wherein the fifth matrix is a matrix obtained by inverting the difference value of the product of the unit matrix I and the weight values of the fourth matrix, the third matrix and the dimension reduction of the kth user; the second matrix is obtained according to the third matrix, the fourth matrix and the fifth matrix.
In one possible implementation, the processing unit 1020 is specifically configured to: according to the formula
Obtaining the fourth matrix, wherein U k (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) The weight values of the dimension reduction, X of K users obtained by the n-1 th iteration k (n-1) For the n-1 th iterationThe obtained weight of the kth user for dimension reduction,/->And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
In one possible implementation, the processing unit 1010 is specifically configured to: according to the formula
Obtaining the fifth matrix, wherein W k (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,x is a submatrix of the third matrix k (n-1) The weight of the kth user obtained by the n-1 th iteration is the iteration number, n is the iteration number, K is more than or equal to 1 and less than or equal to K, and K is the number of users.
In one possible implementation, the processing unit 1010 is specifically configured to: according to r iterations of the third matrix, the fourth matrix and the fifth matrix, obtaining the second matrix, wherein the nth iteration is performed to obtain a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that at least one of them does not satisfy the convergence condition, performing the n+1st iteration to obtain a fourth matrix U k (n+1) Fifth matrix W k (n+1) And a second matrix X k (n+1) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that at least one of them satisfies the convergence condition, the nth iteration is performedSecond matrix X k (n) As the second matrix output, wherein n is not less than 1 and not more than r, and n+1 is not less than 1 and not more than r; wherein the nth iteration is performed according to the following formula, obtaining the second matrix:
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max For maximum transmit power, α j A is the weight coefficient of the jth user i For the weight coefficient of the ith user, alpha k Is the weight coefficient of the kth user, wherein M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) For the fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->Is a sub-matrix of the third matrix.
In one possible implementation, the processing unit 1010 is further configured to: obtaining a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of K users according to columns; decomposing the sixth matrix into a first sub-matrix and a second sub-matrix, wherein the first sub-matrix is the fourth matrix U with K users k For the block diagonal matrix U of diagonal blocks, the second submatrix b= (U H HH H U+μW -1 ) -1, wherein ,w is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H Is the conjugate transpose of the first sub-matrix, H is the third matrix, H H For the third matrixConjugate transpose matrix, W -1 Sigma is the inverse of the second sub-matrix j 2 For the j-th user's noise power, P max For maximum transmit power, α k For the weight coefficient of the kth user, m= UWU H ,W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U.
Fig. 11 shows a schematic block diagram of a communication device 1100 of an embodiment of the application. It should be understood that the apparatus 1100 includes C units, including an i-1 th unit transceiver unit 1110, an i-th unit processing unit 1120, an i-th unit transceiver unit 1130, a C-th unit transceiver unit 1140, and a C-th unit processing unit 1150.
The processing unit 1120 of the ith unit is configured to obtain a first matrix from the ith-1 th unit, where the first matrix from the ith-1 th unit is wherein ,Channel matrix from antenna corresponding to c-th unit to k-th user, +.>The channel matrix from the antenna corresponding to the C unit to the j user is 2.ltoreq.i.ltoreq.C, wherein C is the number of units participating in precoding, i, K, C and C are positive integers, 1.ltoreq.k, j.ltoreq.K and K is the number of users; the transceiver 1130 of the ith unit is configured to send the first matrix of the ith unit to the (i+1) th unit, where the first matrix of the ith unit is- >A transceiving unit 1140 of a C-th unit, configured to transmit a second matrix to the 1 st unit, and a transceiving unit 1110 of an i-1 st unit of the C-th unit, configured to transmit the second matrix to the i-th unit, the second matrix being obtained according to the first matrix of the C-th unit; the method comprisesThe processing unit of each of the C units calculates a corresponding precoding matrix component according to the second matrix, and the precoding matrix components form a precoding matrix, wherein C is a positive integer, and i+1 is less than or equal to C.
In one possible implementation, the method includes: the processing unit 1150 of the C unit is configured to obtain a third matrix, where the third matrix is a matrix obtained by combining the first matrices of the C unit; obtaining a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the weight of the dimension reduction of K users; obtaining a fifth matrix, wherein the fifth matrix is a matrix obtained by inverting the difference value of the product of the unit matrix I and the weight of the fourth matrix, the third matrix and the dimension reduction weight of the kth user; and obtaining the second matrix according to the third matrix, the fourth matrix and the fifth matrix.
In one possible implementation, the processing unit 1150 of the C-th unit is specifically configured to: according to the formula
Obtaining the fourth matrix, wherein U k (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) The dimension reduction weight, X of K users obtained for the n-1 th iteration k (n-1) The weight of the dimension reduction of the kth user obtained for the nth-1 iteration, < ->And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
In one possible implementation, the processing unit 1150 of the C-th unit is specifically configured to: according to the formula
Obtaining the fifth matrix, wherein W k (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,x is a submatrix of the third matrix k (n-1) The weight of the kth user obtained by the n-1 th iteration is the iteration number, n is the iteration number, K is more than or equal to 1 and less than or equal to K, and K is the number of users.
In one possible implementation, the processing unit 1150 of the C-th unit is specifically configured to: according to r iterations of the third matrix, the fourth matrix and the fifth matrix, obtaining the second matrix, wherein the nth iteration is performed to obtain a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that at least one of them does not satisfy the convergence condition, performing the n+1st iteration to obtain a fourth matrix U k (n+1) Fifth matrix W k (n+1) And a second matrix X k (n+1) The method comprises the steps of carrying out a first treatment on the surface of the In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that at least one of them satisfies the convergence condition, the second matrix X obtained by the nth iteration is obtained k (n) As the second matrix output, wherein n is not less than 1 and not more than r, and n+1 is not less than 1 and not more than r; wherein the nth iteration is performed according to the following formula, obtaining the second matrix:
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max For maximum transmit power, α j A is the weight coefficient of the jth user i For the weight coefficient of the ith user, alpha k Is the weight coefficient of the kth user, wherein M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) A fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->Is a sub-matrix of the third matrix.
In one possible implementation, the processing unit of each of the C units is specifically configured to: will K theAnd multiplying the matrix obtained by column splicing of the conjugate transposed matrix of (2) by the second matrix to obtain a corresponding precoding matrix component.
In one possible implementation, the processing unit 1150 of the C-th unit is further configured to: obtaining a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of K users according to columns; decomposing the sixth matrix into a first sub-matrix and a second sub-matrix, wherein the first sub-matrix is the fourth matrix U with K users k For a block diagonal matrix U of diagonal blocks, the second submatrix b= (U H HH H U+μW -1 ) -1, wherein ,w is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H For the purpose ofA conjugate transpose of the first sub-matrix, H being the third matrix, H H Is the conjugate transpose of the third matrix, W -1 Sigma is the inverse of the second sub-matrix j 2 Noise power for jth user, P max For maximum transmit power, α k For the weight coefficient of the kth user, m= UWU H , W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U.
Fig. 12 shows a schematic block diagram of a communication device 1200 of an embodiment of the application. It is to be understood that the apparatus 1200 comprises a processing unit 1210 and a transceiving unit 1220.
The processing unit 1210 performs a processing according to the channel matrixObtaining a first matrix, the channel matrix +.>The channel matrix from the antenna corresponding to the ith sub-node to the kth user is obtained, wherein C, i and K are positive integers, i is not less than 1 and not more than C, K is not less than 1 and not more than K, and K is the number of users; a transceiver unit for transmitting the first matrix to a central node; the transceiver 1220 is configured to receive a second matrix sent by the central node, where the second matrix is obtained according to the C first matrices; the processing unit 1210 is configured to perform a processing according to the channel matrix- >And the second matrix to obtain a third matrix; the transceiver 1220 is configured to receive a fourth matrix sent by the central node, where the fourth matrix is obtained according to the C third matrices; the processing unit 1210 is configured to calculate a precoding matrix component according to the fourth matrix, where the precoding matrix component forms a precoding matrix.
In one possible implementation, the processing unit 1210 is specifically configured to: according to the channel matrixAnd the channel matrix->The first matrix is obtained by multiplying the conjugate transpose matrix of (a).
In one possible implementation, the processing unit 1210 is further configured to: selecting the channel matrixFront N of the product of the conjugate transpose matrix of (a) and the second matrix k The column vectors form a seventh matrix; splicing K seventh matrixes according to columns to form a sixth matrix; and multiplying the conjugate transpose matrix of the sixth matrix by the sixth matrix to obtain the third matrix.
In one possible implementation, the fourth matrix is obtained according to C of the third matrices, including: the fourth matrix is a matrix obtained by inverting the matrix obtained by summing the C third matrices.
In one possible implementation, the processing unit 1210 is specifically configured to: multiplying the matrix obtained by splicing the K seventh matrices according to the columns by the fourth matrix to obtain the precoding matrix component.
Fig. 13 shows a schematic block diagram of a communication device 1300 of an embodiment of the application. It is to be understood that the apparatus 1300 includes a processing unit 1310 and a transceiving unit 1320.
The processing unit 1310 is configured to, according to the channel matrixAnd channel matrix->Obtaining a first matrix, the channel matrix +.>Channel matrix from antenna corresponding to ith sub-node to kth user, which is +.>The channel matrix from the antenna corresponding to the ith sub-node to the jth user is obtained, wherein C, i, K and j are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users; the transceiver 1320 is configured to send the first matrix to a central node; the transceiver 1320 is configured to receive a second matrix sent by the central node, where the second matrix is based on c×k 2 Obtaining the first matrix; the processing unit 1310 is configured to calculate a precoding matrix component according to the second matrix, where the precoding matrix component forms a precoding matrix. />
In one possible implementation, the processing unit 1310 is specifically configured to: according to the channel matrixAnd the channel matrix->The first matrix is obtained by multiplying the conjugate transpose matrix of (a).
In one possible implementation, the processing unit 1310 is specifically configured to: will K the And multiplying the matrix obtained by splicing the arrays by the second matrix to obtain the precoding matrix component.
Referring to fig. 14, a schematic diagram of a communication device according to an embodiment of the present application is provided, so as to implement the operation of the communication device in the above embodiment. As shown in fig. 14, the communication apparatus includes: processor 1410 and interface 1430, processor 1410 being coupled with interface 1430. Interface 1430 is used to enable communication with other devices. Interface 1430 may be a transceiver or an input-output interface. Interface 1430 may be, for example, an interface circuit. Optionally, the communication device further comprises a memory 1420 for storing instructions to be executed by the processor 1410 or for storing input data required by the processor 1410 to execute instructions or for storing data generated after the processor 1410 has executed instructions.
The method performed by the communication apparatus in the above embodiment may be implemented by the processor 1410 calling a program stored in a memory (which may be the memory 620 in the communication apparatus or an external memory). That is, the communication apparatus may include a processor 1410, and the processor 1410 executes the method executed by the communication apparatus in the above method embodiment by calling a program in a memory. The processor here may be an integrated circuit with signal processing capabilities, such as a CPU. The communication device may be implemented by one or more integrated circuits configured to implement the above methods. For example: one or more ASICs, or one or more microprocessor DSPs, or one or more FPGAs, etc., or a combination of at least two of these integrated circuit forms. Alternatively, the above implementations may be combined.
In particular, the functions/implementations of the units of fig. 8-13 may be implemented by the processor 1410 in the communication device 1400 shown in fig. 14 invoking computer executable instructions stored in the memory 1420. Alternatively, the functions/implementation procedures of the processing units in fig. 8 to 13 may be implemented by the processor 1410 in the communication device 1400 shown in fig. 14 calling computer-executable instructions stored in the memory 1420, and the functions/implementation procedures of the transceiving units in fig. 8 to 13 may be implemented by the interface 1430 in the communication device 1400 shown in fig. 14.
It will be appreciated that in the above described apparatus the processing unit comprises a processor coupled to a memory for storing a computer program or instructions or and/or data, and the processor is for executing the computer program or instructions and/or data stored in the memory, such that the method in the above method embodiment is performed.
It should also be understood that the division of the units in the above apparatus is merely a division of logic functions, and may be fully or partially integrated into one physical entity in actual implementation, or may be physically separated. And the units in the device can be all realized in the form of software calls through the processing element; or can be realized in hardware; it is also possible that part of the units are implemented in the form of software, which is called by the processing element, and part of the units are implemented in the form of hardware. For example, each unit may be a processing element which is set up individually, may be implemented integrally in a certain chip of the apparatus, or may be stored in a memory in the form of a program, and the functions of the unit may be called and executed by a certain processing element of the apparatus. The processing element may also be referred to herein as a processor and may be an integrated circuit with signal processing capabilities. In implementation, each step of the above method or each unit above may be implemented by an integrated logic circuit of hardware in a processor element or in the form of software called by a processing element.
The embodiment of the application also provides a processing device, which comprises a processor and an interface; the processor is configured to perform the method of communicating in any of the method embodiments described above.
It should be understood that the processing means may be a chip. For example, the processing means may be a field programmable gate array (field programmable gate array, FPGA), an application specific integrated chip (application specific integrated circuit, ASIC), a system on chip (SoC), a central processing unit (central processor unit, CPU), a network processor (network processor, NP), a digital signal processing circuit (digital signal processor, DSP), a microcontroller (micro controller unit, MCU), a programmable controller (programmable logic device, PLD) or other integrated chip.
In implementation, each step of the method may be implemented by an integrated logic circuit of hardware in a processor or an instruction in a form of a software component. The steps of a method disclosed in connection with the embodiments of the present application may be embodied directly in a hardware processor for execution, or in a combination of hardware and software modules in the processor for execution. The software modules may be located in random access memory, flash memory, read only memory, programmable read only memory, or electrically erasable programmable memory, registers, etc. as well known in the art. The storage medium is located in a memory, and the processor reads the information in the memory and, in combination with its hardware, performs the steps of the above method. To avoid repetition, a detailed description is not provided herein.
It should be noted that the processor in the embodiments of the present application may be an integrated circuit chip with signal processing capability. In implementation, the steps of the above method embodiments may be implemented by integrated logic circuits of hardware in a processor or instructions in software form. The processor may be a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component. The disclosed methods, steps, and logic blocks in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present application may be embodied directly in the execution of the hardware decoding processor, or in the combined execution of hardware and software modules in the decoding processor. The software modules may be located in a memory medium well known in the art such as random access memory, flash memory, read only memory, programmable read only memory, or electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and the processor reads information in the memory and, in combination with its hardware, performs the steps of the method described above.
It will be appreciated that the memory in embodiments of the application may be volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The nonvolatile memory may be a read-only memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an electrically Erasable EPROM (EEPROM), or a flash memory. The volatile memory may be random access memory (random access memory, RAM) which acts as an external cache. By way of example, and not limitation, many forms of RAM are available, such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous Link DRAM (SLDRAM), and direct memory bus RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
According to a method provided by an embodiment of the present application, the present application also provides a computer program product, including: computer program code which, when run on a computer, causes the computer to perform the method of any of the embodiments shown in fig. 4 to 7.
According to the method provided by the embodiment of the present application, the present application further provides a computer readable medium storing a program code, which when run on a computer, causes the computer to perform the method of any one of the embodiments shown in fig. 4 to 7.
According to the method provided by the embodiment of the application, the application further provides a system which comprises one or more communication devices.
In the above embodiments, the implementation may be in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, the processes or functions described in accordance with embodiments of the present application are produced in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by a wired (e.g., coaxial cable, fiber optic, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a high-density digital video disc (digital video disc, DVD)), or a semiconductor medium (e.g., a Solid State Disk (SSD)), or the like.
The network device in the above-mentioned respective apparatus embodiments corresponds entirely to the network device or the terminal device in the terminal device and method embodiments, the respective steps are performed by respective modules or units, for example, the steps of receiving or transmitting in the method embodiments are performed by the communication unit (transceiver), and other steps than transmitting and receiving may be performed by the processing unit (processor). Reference may be made to corresponding method embodiments for the function of a specific unit. Wherein the processor may be one or more.
As used in this specification, the terms "component," "module," "system," and the like are intended to refer to a computer-related entity, either hardware, firmware, a combination of hardware and software, or software in execution. For example, a component may be, but is not limited to being, a process running on a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a computing device and the computing device can be a component. One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between 2 or more computers. Furthermore, these components can execute from various computer readable media having various data structures stored thereon. The components may communicate by way of local and/or remote processes such as in accordance with a signal having one or more data packets (e.g., data from two components interacting with one another in a local system, distributed system, and/or across a network such as the internet with other systems by way of the signal).
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, and are not repeated herein.
In the several embodiments provided herein, it should be understood that the disclosed systems, devices, and methods may be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. In another aspect, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical, or other forms.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a read-only memory (ROM), a random access memory (random access memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The foregoing is merely illustrative of the present application, and the present application is not limited thereto, and any person skilled in the art can easily think about variations or substitutions within the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (30)

1. A precoding method applied to a system comprising a central node and child nodes, the method being performed by the central node, the method comprising:
obtaining C first matrixes from C sub-nodes, wherein the first matrixes of the ith sub-node in the C sub-nodes are based on channel matrixesObtained, the channel matrix->For the ith child node pairThe channel matrix from the corresponding antenna to the kth user, wherein C, i and K are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users;
transmitting a second matrix to each of the C child nodes, the second matrix being obtained from the C first matrices;
obtaining C third matrices from the C sub-nodes, wherein the third matrix of the ith sub-node in the C sub-nodes is based on the channel matrix And the second matrix;
and sending a fourth matrix to each of the C sub-nodes, wherein the fourth matrix is obtained according to the C third matrices, the fourth matrix is used for each of the C sub-nodes to calculate a corresponding precoding matrix component, and the precoding matrix components form a precoding matrix.
2. The method of claim 1, wherein the first matrix of the ith sub-node of the C sub-nodes is based on a channel matrixThe method comprises the following steps:
the first matrix of the ith sub-node of the C sub-nodes is formed by the channel matrixAnd the channel matrix->A matrix obtained by multiplying the conjugate transpose matrix of (a).
3. The method according to claim 1 or 2, wherein the second matrix is obtained from the C first matrices, further comprising:
obtaining a fifth matrix, wherein the fifth matrix is obtained by summing the C first matrices;
and decomposing the characteristic value of the fifth matrix to obtain the second matrix.
4. A method according to any of claims 1-3, characterized in that the third matrix of the ith sub-node of the C sub-nodes is based on the channel matrix And the second matrix, comprising:
the third matrix of the ith sub-node in the C sub-nodes is a matrix obtained by multiplying a conjugate transpose matrix of a sixth matrix by the sixth matrix, the sixth matrix is a matrix formed by splicing K seventh matrices according to columns, and the seventh matrix is the channel matrixFront N of the product of the conjugate transpose of (a) and the second matrix k A matrix of column vectors.
5. The method of claim 4, wherein the fourth matrix is obtained from the C third matrices, comprising:
the fourth matrix is a matrix obtained by inverting a matrix obtained by summing the C third matrices.
6. A method of precoding, the method comprising:
the ith node obtains a first matrix from the ith-1 node, wherein the first matrix from the ith-1 node is that wherein ,The channel matrix from the antenna corresponding to the C node to the kth user is 2.ltoreq.i.ltoreq.C, wherein C is the number of the nodes participating in precoding, and i, k, C and C are positive integers;
the ith node sends a first matrix of the ith node to the (i+1) th node, wherein the first matrix of the ith node is
The method comprises the steps that a C node sends a second matrix to a 1 st node, and the i-1 st node in the C node sends the second matrix to the i node, wherein the second matrix is obtained according to a first matrix of the C node, C is a positive integer, and i+1 is less than or equal to C;
the ith node obtains a third matrix from the ith-1 th node, wherein the third matrix from the ith-1 th node is that wherein ,Is based on K channel matrices->And the second matrix;
the ith node sends a third matrix of the ith node to the (i+1) th node, wherein the third matrix of the ith node is
The C node sends a fourth matrix to the 1 st node, and the i-1 st node in the C nodes sends the fourth matrix to the i node, wherein the fourth matrix is obtained according to the third matrix of the C nodes;
each node in the C nodes calculates a corresponding precoding matrix component according to the fourth matrix, and the precoding matrix components form a precoding matrix.
7. The method of claim 6, wherein the second matrix is obtained from a first matrix of the C-th node, further comprising:
And decomposing the characteristic value of the first matrix of the C node to obtain the second matrix.
8. The method according to claim 6 or 7, characterized in that theIs based on K channel matrices->And the second matrix, comprising:
the saidIs a matrix obtained by multiplying a conjugate transpose matrix of a fifth matrix by the fifth matrix, wherein the fifth matrix is a matrix formed by splicing K sixth matrices according to columns, and the sixth matrix is the channel matrix->Front N of the product of the conjugate transpose of (a) and the second matrix k A matrix of column vectors.
9. The method of claim 8, wherein the fourth matrix is obtained from the C third matrices, comprising:
the fourth matrix is a matrix obtained by inverting the matrix obtained by summing the C third matrices.
10. The method according to any of the claims 8, wherein each of the C nodes calculates a respective corresponding precoding matrix component from the fourth matrix, comprising:
and each node in the C nodes multiplies the matrix obtained by splicing the K sixth matrices according to columns and the fourth matrix to obtain corresponding precoding matrix components.
11. A method of precoding, the method performed by a central node, the method comprising:
obtaining C.times.K 2 A first matrix of C x K 2 The first matrix is from C sub-nodes, and the first matrix of the ith sub-node in the C sub-nodes isThe first matrix of the ith sub-node is based on the channel matrix +.>And channel matrix->Obtained, the channel matrix->Channel matrix from antenna corresponding to ith sub-node to kth user, said channel matrix +.>The channel matrix from the antenna corresponding to the ith sub-node to the jth user is formed, wherein C, i, K and j are positive integers, i is more than or equal to 1 and less than or equal to C, K is more than or equal to 1 and less than or equal to K, and K is the number of users;
transmitting a second matrix to each of the C sub-nodes, the second matrix being according to the C 2 And the second matrix is obtained by the first matrix, and is used for each of the C sub-nodes to calculate a corresponding precoding matrix component, and the precoding matrix components form a precoding matrix.
12. The method of claim 11, wherein the first matrix of the ith sub-node of the C sub-nodes is based on a channel matrixAnd channel matrix- >The method comprises the following steps:
the first matrix of the ith sub-node of the C sub-nodes is formed by the channel matrixAnd the channel matrix->A matrix obtained by multiplying the conjugate transpose matrix of (a).
13. The method according to claim 11 or 12, wherein the second matrix is according to the C x K 2 The first matrix is obtained, and further comprises:
obtaining a third matrix, wherein the third matrix is a matrix obtained by combining matrixes obtained by summing the C first matrixes;
obtaining a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the dimension-reduction weights of K users;
obtaining a fifth matrix, wherein the fifth matrix is a matrix obtained by inverting the difference value of the product of the unit matrix I and the weight of the fourth matrix, the third matrix and the dimension reduction weight of the kth user;
and obtaining the second matrix according to the third matrix, the fourth matrix and the fifth matrix.
14. The method of claim 13, wherein the obtaining a fourth matrix from the third matrix, the conjugate transpose of the third matrix, and the dimension-reduced weights of the K users comprises:
According to the formula
Obtaining the fourth matrix, wherein U k (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) All are weight values, X of dimension reduction of K users obtained by n-1 th iteration k (n-1) The weight of the dimension reduction of the kth user obtained for the nth-1 iteration, < ->And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
15. The method of claim 13, wherein the obtaining a fifth matrix comprises:
according to the formula
Obtaining the fifth matrix, wherein W k (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,x is a submatrix of the third matrix k (n-1) The weight of the kth user obtained by the n-1 th iteration is the iteration number, n is the iteration number, K is more than or equal to 1 and less than or equal to K, and K is the number of users.
16. The method of claim 13, wherein the obtaining the second matrix from the third matrix, the fourth matrix, and the fifth matrix comprises:
obtaining the second matrix according to r iterations of the third matrix, the fourth matrix and the fifth matrix,
Wherein the nth iteration is performed to obtain a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n)
In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that the convergence condition is not satisfied, the n+1st iteration is executed to obtain a fourth matrix U k (n+1) Fifth matrix W k (n+1) And a second matrix X k (n+1)
In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) Under the condition that convergence condition is met, the second matrix X obtained by the nth iteration is obtained k (n) As the second matrix output, wherein n is more than or equal to 1 and less than or equal to r, and n+1 is more than or equal to 1 and less than or equal to r;
wherein the nth iteration is performed according to the following formula, obtaining the second matrix:
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max For maximum transmit power, α j A is the weight coefficient of the jth user i For the weight coefficient of the ith user, alpha k Is the weight coefficient of the kth user, wherein M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) For the fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->Is a sub-matrix of the third matrix.
17. The method according to any one of claims 11 to 16, comprising:
obtaining a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of K users according to columns;
Decomposing the sixth matrix into a first sub-matrix and a second sub-matrix, wherein the first sub-matrix is the fourth matrix U with K users k For the block diagonal matrix U of diagonal blocks, the second submatrix b= (U H HH H U+μW -1 ) -1
wherein ,w is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H Is the conjugate transpose of the first sub-matrix, H is the third matrix, H H Is the conjugate transpose of the third matrix, W -1 Sigma is the inverse of the second sub-matrix j 2 Noise power for jth user, P max Is maximum hairPower of radiation alpha k For the weight coefficient of the kth user, m= UWU H ,W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U.
18. A method of precoding, the method comprising:
the ith node obtains a first matrix from the ith-1 node, wherein the first matrix from the ith-1 node is that wherein ,For the channel matrix from the antenna corresponding to the c-th node to the k-th user, +.>The channel matrix from the antenna corresponding to the C node to the j user is 2.ltoreq.i.ltoreq.C, wherein C is the number of the nodes participating in precoding, i, K, C and C are positive integers, 1.ltoreq.k, j.ltoreq.K and K is the number of users;
The ith node sends a first matrix of the ith node to the (i+1) th node, wherein the first matrix of the ith node is
The method comprises the steps that a C node sends a second matrix to a 1 st node, and the i-1 st node in the C node sends the second matrix to the i node, wherein the second matrix is obtained according to a first matrix of the C node;
each node in the C nodes calculates a corresponding precoding matrix component according to the second matrix, and the precoding matrix components form a precoding matrix, wherein C is a positive integer, and i+1 is less than or equal to C.
19. The method of claim 18, wherein the second matrix is obtained from a first matrix of the C-th node, further comprising:
obtaining a third matrix, wherein the third matrix is a matrix obtained by combining the first matrix of the C node;
obtaining a fourth matrix according to the third matrix, the conjugate transpose matrix of the third matrix and the dimension-reduction weights of K users;
obtaining a fifth matrix, wherein the fifth matrix is a matrix obtained by inverting the difference value of the product of the unit matrix I and the weight of the fourth matrix, the third matrix and the dimension reduction weight of the kth user;
And obtaining the second matrix according to the third matrix, the fourth matrix and the fifth matrix.
20. The method of claim 19, wherein the obtaining a fourth matrix from the third matrix, the conjugate transpose of the third matrix, and the dimension-reduced weights of the K users comprises:
according to the formula
Obtaining the fourth matrix, wherein U k (n) For the fourth matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max At the time of the maximum transmission power,for the third matrix, X j (n-1) 、X i (n-1) The weight value X of the dimension reduction of K users obtained by the n-1 th iteration k (n-1) The weight of the dimension reduction of the kth user obtained for the nth-1 iteration, < ->And n is iteration times for the submatrices of the third matrix, wherein K is more than or equal to 1 and less than or equal to K, and K is the number of users.
21. The method of claim 19, wherein the obtaining a fifth matrix comprises:
according to the formula
Obtaining the fifth matrix, wherein W k (n) For the fifth matrix obtained in the nth iteration, I is an identity matrix, U k (n) For the fourth matrix obtained for the nth iteration,x is a submatrix of the third matrix k (n-1) The weight of the kth user obtained by the n-1 th iteration is the iteration number, n is the iteration number, K is more than or equal to 1 and less than or equal to K, and K is the number of users.
22. The method of claim 19, wherein the obtaining the second matrix from the third matrix, the fourth matrix, and the fifth matrix comprises:
obtaining the second matrix according to r iterations of the third matrix, the fourth matrix and the fifth matrix,
wherein the nth iteration is performed to obtain a fourth matrix U k (n) Fifth matrix W k (n) And a second matrix X k (n)
In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) In the case that the convergence condition is not satisfied, the n+1st iteration is executed to obtain a fourth matrix U k (n+1) Fifth matrix W k (n+1) And a second matrix X k (n+1)
In the fourth matrix U k (n) The fifth matrix W k (n) And the second matrix X k (n) Under the condition that convergence condition is met, the second matrix X obtained by the nth iteration is obtained k (n) As the second matrix output, wherein n is more than or equal to 1 and less than or equal to r, and n+1 is more than or equal to 1 and less than or equal to r;
wherein the nth iteration is performed according to the following formula, obtaining the second matrix:
wherein ,Xk (n) For the second matrix, σ, obtained for the nth iteration j 2 Noise power for jth user, P max For maximum transmit power, α j A is the weight coefficient of the jth user i For the weight coefficient of the ith user, alpha k Is the weight coefficient of the kth user, wherein M (n) =U (n) W (n) U (n)HFor the third matrix, U k (n) For the fourth matrix obtained for the nth iteration, W k (n) For the fifth matrix obtained for the nth iteration, < > j->Is a sub-matrix of the third matrix.
23. The method according to any one of claims 18 to 22, wherein each of the C nodes calculates a respective precoding matrix component from the second matrix, comprising:
each of the C nodes will have K of theAnd multiplying the matrix obtained by column splicing of the conjugate transposed matrix of the (b) with the second matrix to obtain a corresponding precoding matrix component.
24. The method according to any one of claims 18 to 22, comprising:
obtaining a sixth matrix, wherein the sixth matrix is formed by splicing the second matrices of K users according to columns;
decomposing the sixth matrix into a first sub-matrix and a second sub-matrix, wherein the first sub-matrix is the fourth matrix U with K users k For the block diagonal matrix U of diagonal blocks, the second submatrix b= (U H HH H U+μW -1 ) -1
wherein ,w is alpha of K users k W k For block diagonal matrix of diagonal blocks, U H Is the conjugate transpose of the first sub-matrix, H is the third matrix, H H Is the conjugate transpose of the third matrix, W -1 Sigma is the inverse of the second sub-matrix j 2 Noise power for jth user, P max For maximum transmit power, α k For the weight coefficient of the kth user, m= UWU H ,W k For the fifth matrix, U H Is the conjugate transpose of the block diagonal matrix U.
25. A communication device comprising at least one processor coupled with at least one memory, the at least one processor configured to execute a computer program or instructions stored in the at least one memory to cause the communication device to perform the method of any one of claims 1 to 5.
26. A communication device comprising at least one processor coupled with at least one memory, the at least one processor configured to execute a computer program or instructions stored in the at least one memory to cause the communication device to perform the method of any one of claims 6 to 10.
27. A communications apparatus comprising at least one processor coupled with at least one memory, the at least one processor configured to execute a computer program or instructions stored in the at least one memory to cause the communications apparatus to perform the method of any one of claims 11-17.
28. A communications apparatus comprising at least one processor coupled with at least one memory, the at least one processor configured to execute a computer program or instructions stored in the at least one memory to cause the communications apparatus to perform the method of any one of claims 18-24.
29. A chip system, comprising: at least one processor for executing stored instructions, such that a communication device can perform the method of any one of claims 1 to 5; or,
the at least one processor being configured to execute stored instructions such that a communication device may perform the method of any one of claims 6 to 10; or,
the at least one processor being configured to execute stored instructions such that the communication device can perform the method of any one of claims 11 to 17; or,
the at least one processor is configured to execute stored instructions such that a communication device can perform the method of any one of claims 18 to 23.
30. A computer readable storage medium having stored thereon computer instructions which, when run on a computer, cause the computer to perform the communication method of any of claims 1 to 22.
CN202210264469.0A 2022-03-17 2022-03-17 Distributed precoding method and device Pending CN116800309A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210264469.0A CN116800309A (en) 2022-03-17 2022-03-17 Distributed precoding method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210264469.0A CN116800309A (en) 2022-03-17 2022-03-17 Distributed precoding method and device

Publications (1)

Publication Number Publication Date
CN116800309A true CN116800309A (en) 2023-09-22

Family

ID=88040467

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210264469.0A Pending CN116800309A (en) 2022-03-17 2022-03-17 Distributed precoding method and device

Country Status (1)

Country Link
CN (1) CN116800309A (en)

Similar Documents

Publication Publication Date Title
CN112751592B (en) Method and communication device for reporting channel state information
CN114079493A (en) Channel state information measurement feedback method and related device
CN115315906B (en) Channel measurement method and communication device
US20240030980A1 (en) Data transmission method and apparatus
CN112751598B (en) Method for processing precoding matrix and communication device
EP4106246A1 (en) Channel state information feedback method and communication apparatus
WO2021063178A1 (en) Channel measurement method and communication apparatus
US20230164004A1 (en) Channel parameter obtaining method and apparatus
US20220368583A1 (en) Signal dimension reduction using a non-linear transformation
WO2021081847A1 (en) Channel measurement method and communication apparatus
WO2021081964A1 (en) Method for configuring transmission port of a downlink reference signal, and communication apparatus
US10903884B2 (en) Method and apparatus for combining plurality of radio frequency signals
WO2024027394A1 (en) Communication method and apparatus
WO2022227976A1 (en) Communication method and communication device
WO2022022216A1 (en) Channel measurement method and communication apparatus
CN116800309A (en) Distributed precoding method and device
WO2019201251A1 (en) Transmission and reception method and device for multi-antenna system
CN112398516A (en) Method and communication device for restricting codebook subset
WO2022067824A1 (en) Signal transmission method and related apparatus
WO2024093867A1 (en) Precoding indication method, and communication apparatus
WO2022083307A1 (en) Channel measurement method and communication apparatus
WO2024001744A1 (en) Channel state information reporting method and communication apparatus
WO2022165668A1 (en) Precoding method and apparatus
WO2023125340A1 (en) Data processing method and apparatus
WO2023020034A1 (en) Weight value determination method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination