WO2017067466A1 - 码本生成方法、预编码矩阵确定方法及相关装置 - Google Patents

码本生成方法、预编码矩阵确定方法及相关装置 Download PDF

Info

Publication number
WO2017067466A1
WO2017067466A1 PCT/CN2016/102627 CN2016102627W WO2017067466A1 WO 2017067466 A1 WO2017067466 A1 WO 2017067466A1 CN 2016102627 W CN2016102627 W CN 2016102627W WO 2017067466 A1 WO2017067466 A1 WO 2017067466A1
Authority
WO
WIPO (PCT)
Prior art keywords
dimensional
matrix
codebook
dimensional beam
data streams
Prior art date
Application number
PCT/CN2016/102627
Other languages
English (en)
French (fr)
Inventor
李辉
高秋彬
陈润华
拉盖施
陈文洪
Original Assignee
电信科学技术研究院
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
Priority claimed from CN201510695953.9A external-priority patent/CN106612137B/zh
Application filed by 电信科学技术研究院 filed Critical 电信科学技术研究院
Publication of WO2017067466A1 publication Critical patent/WO2017067466A1/zh

Links

Images

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/06Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station
    • 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/08Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the receiving station

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a codebook generating method, a precoding matrix determining method, and related devices.
  • the transmitter can simultaneously transmit multiple data streams to the receiver, and the number of data streams transmitted simultaneously is called rank. For different ranks, different codebooks need to be designed.
  • a base station eNB
  • eNB base station
  • a maximum value of rank is 8.
  • Each rank value is designed with a corresponding codebook.
  • DFT discrete Fourier transform
  • Phase adjustment between polarization directions is generated.
  • the following data transmission is performed by the terminal, and the terminal feeds back the determined Precoding Matrix Indicator (PMI) to the eNB; the eNB selects a corresponding precoding matrix from the codebook according to the PMI fed back by the terminal.
  • PMI Precoding Matrix Indicator
  • the codebook design needs to consider horizontal and vertical dimensions for greater flexibility.
  • the DFT vector used in the codebook is calculated by using the vertical dimension DFT vector and the horizontal dimension DFT vector for Kronecker product calculation.
  • the embodiment of the invention provides a codebook generation method, a precoding matrix determination method and a related device, which are used to provide a codebook design scheme for a case where the number of simultaneously transmitted data streams rank is greater than one.
  • a codebook generation method including:
  • first dimensional beam vector to obtain a plurality of first dimensional beam packets
  • second dimensional beam vector to obtain a plurality of second dimensional beam packets, wherein any one of the first dimensional beam packets
  • the plurality of first-dimensional beam vectors included in the second-dimensional beam vector are orthogonal to each other, and the plurality of second-dimensional beam vectors in any one of the second-dimensional beam groups are orthogonal to each other;
  • each first-dimensional beam packet contains the same number of first-dimensional beam vectors
  • each second-dimensional beam packet includes the same number of second-dimensional beam vectors
  • the adjacent first-dimensional beam group includes at least one non-overlapping first-dimensional beam vector
  • the adjacent second-dimensional beam group includes at least one non-overlapping second-dimensional beam vector
  • Z 1 denotes a first matrix
  • Z 2 denotes a second matrix
  • the first matrix is composed of the one or more sets of the two-dimensional orthogonal beam sub-groups
  • the second matrix is determined according to the first matrix
  • the second level codebook is configured to determine the precoding matrix by selecting a multi-column beam vector from the first-level codebook and performing phase adjustment.
  • the second matrix is determined according to the first matrix, specifically:
  • B i represents a diagonal matrix of size K 1 ⁇ K 1
  • K 1 represents the number of ports in each polarization direction of the first dimension of the antenna
  • D i represents a diagonal matrix of size K 2 ⁇ K 2
  • K 2 represents the number of ports in each polarization direction of the second dimension of the antenna
  • the Y′ i is determined according to Y i , specifically:
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and D i is a diagonal matrix of size K 2 ⁇ K 2 , K 2 Indicates the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, D i is a diagonal matrix of size K 2 ⁇ K 2 , and K 2 represents the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down.
  • a method for determining a precoding matrix including:
  • the codebook corresponding to the number of data streams is generated by using the codebook generation method.
  • a method for determining a precoding matrix including:
  • the codebook corresponding to the number of data streams is generated by using the codebook generation method.
  • a codebook generating apparatus including:
  • a first determining module configured to determine a first-dimensional beam vector of the antenna and a second-dimensional beam vector of the antenna
  • a grouping module configured to group the first dimension beam vector determined by the first determining module to obtain a plurality of first-dimensional beam packets, and perform the second-dimensional beam vector determined by the first determining module Grouping a plurality of second-dimensional beam packets, wherein a plurality of first-dimensional beam vectors included in any one of the first-dimensional beam packets are orthogonal to each other, and a plurality of second ones of any one of the second-dimensional beam packets Dimensional beam vectors are orthogonal to each other;
  • a calculating module configured to respectively determine a corresponding two-dimensional orthogonal beam sub-group according to a Kronecker product between each first-dimensional beam packet and each second-dimensional beam packet, where the two-dimensional orthogonal beam sub-group includes a plurality of mutually orthogonal beam vectors;
  • a matrix generation module configured to select one or more sets of the two-dimensional orthogonal beam sub-groups at a time, from the selected one or more sets of the two-dimensional orthogonal beam sub-groups according to the number of simultaneously transmitted data streams Selecting a beam vector, and generating a precoding matrix corresponding to the two-dimensional orthogonal beam subgroup according to the selected beam vector and the number of the data streams;
  • a second determining module configured to determine, by the set of the precoding matrix corresponding to all or part of the two-dimensional orthogonal beam subgroup, a codebook corresponding to the number of the data streams.
  • each first-dimensional beam packet contains the same number of first-dimensional beam vectors
  • each second-dimensional beam packet includes the same number of second-dimensional beam vectors
  • the adjacent first-dimensional beam group includes at least one non-overlapping first-dimensional beam vector
  • the adjacent second-dimensional beam group includes at least one non-overlapping second-dimensional beam vector
  • Z 1 denotes a first matrix
  • Z 2 denotes a second matrix
  • the first matrix is composed of the one or more sets of the two-dimensional orthogonal beam sub-groups
  • the second matrix is determined according to the first matrix
  • the second level codebook is configured to determine the precoding matrix by selecting a multi-column beam vector from the first-level codebook and performing phase adjustment.
  • the second matrix is determined according to the first matrix, specifically:
  • B i represents a diagonal matrix of size K 1 ⁇ K 1
  • K 1 represents the number of ports in each polarization direction of the first dimension of the antenna
  • D i represents a diagonal matrix of size K 2 ⁇ K 2
  • K 2 represents the number of ports in each polarization direction of the second dimension of the antenna
  • the Y′ i is determined according to Y i , specifically:
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and D i is a diagonal matrix of size K 2 ⁇ K 2 , K 2 Indicates the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, D i is a diagonal matrix of size K 2 ⁇ K 2 , and K 2 represents the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down.
  • a precoding matrix determining apparatus including:
  • a selection module configured to determine, according to a correspondence between the number of data streams and the codebook, a codebook corresponding to the number of the data streams determined by the determining module, and select a precoding matrix from the determined codebooks;
  • a sending module configured to send indication information of an index of the precoding matrix selected by the selecting module in the codebook
  • the codebook corresponding to the number of data streams is generated by using the codebook generation method.
  • a precoding matrix determining apparatus including:
  • a receiving module configured to receive indication information of an index of the precoding matrix in the codebook
  • a selection module configured to acquire a number of data streams that are simultaneously transmitted, and obtain a codebook corresponding to the number of the data streams, and select a precoding matrix from the codebook corresponding to the number of the data streams according to the indication information of the index;
  • the codebook corresponding to the number of data streams is generated by using the codebook generation method.
  • a device mainly comprising a processor and a memory, wherein the memory stores a preset program, the processor reads the program in the memory, and executes the following process according to the program:
  • first dimensional beam vector to obtain a plurality of first dimensional beam packets
  • second dimensional beam vector to obtain a plurality of second dimensional beam packets, wherein any one of the first dimensional beam packets
  • the plurality of first-dimensional beam vectors included in the second-dimensional beam vector are orthogonal to each other, and the plurality of second-dimensional beam vectors in any one of the second-dimensional beam groups are orthogonal to each other;
  • each first-dimensional beam packet contains the same number of first-dimensional beam vectors
  • each second-dimensional beam packet includes the same number of second-dimensional beam vectors
  • the adjacent first-dimensional beam group includes at least one non-overlapping first-dimensional beam vector
  • the adjacent second-dimensional beam group includes at least one non-overlapping second-dimensional beam vector
  • Z 1 denotes a first matrix
  • Z 2 denotes a second matrix
  • the first matrix is composed of the one or more sets of the two-dimensional orthogonal beam sub-groups
  • the second matrix is determined according to the first matrix
  • the second level codebook is configured to determine the precoding matrix by selecting a multi-column beam vector from the first-level codebook and performing phase adjustment.
  • the second matrix is determined according to the first matrix, specifically:
  • B i represents a diagonal matrix of size K 1 ⁇ K 1
  • K 1 represents the number of ports in each polarization direction of the first dimension of the antenna
  • D i represents a diagonal matrix of size K 2 ⁇ K 2
  • K 2 represents the number of ports in each polarization direction of the second dimension of the antenna
  • the Y′ i is determined according to Y i , specifically:
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and D i is a diagonal matrix of size K 2 ⁇ K 2 , K 2 Indicates the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, D i is a diagonal matrix of size K 2 ⁇ K 2 , and K 2 represents the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down.
  • a terminal mainly includes a processor, a memory, and a transceiver, wherein the transceiver receives and transmits data under the control of the processor, and the preset program is stored in the memory, and the processor reads A program in memory that performs the following processes in accordance with the program:
  • the codebook corresponding to the number of data streams is generated by using the codebook generation method.
  • a base station mainly includes a processor, a memory, and a transceiver, wherein the transceiver receives and transmits data under the control of the processor, and the preset program is stored in the memory, and the processor reads A program in memory that performs the following processes in accordance with the program:
  • the codebook corresponding to the number of data streams is generated by using the codebook generation method.
  • the design scheme also utilizes the orthogonality of horizontal and vertical dimensions for 3D MIMO antenna arrays.
  • FIG. 1 is a schematic flowchart of a method for generating a codebook according to an embodiment of the present invention
  • FIG. 2 is a schematic diagram of a two-dimensional orthogonal beam sub-group according to an embodiment of the present invention
  • FIG. 3 is a schematic flowchart of a method for a receiver to determine a precoding matrix according to an embodiment of the present invention
  • FIG. 4 is a schematic flowchart of a method for a transmitter to determine a precoding matrix according to an embodiment of the present invention
  • FIG. 5 is a schematic diagram of a precoding matrix selection scheme 1 according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of a second precoding matrix selection scheme according to an embodiment of the present invention.
  • FIG. 7 is a schematic diagram of a third precoding matrix selection scheme according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram of a precoding matrix selection scheme according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of a codebook generating apparatus according to an embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of a precoding matrix determining apparatus according to an embodiment of the present invention.
  • FIG. 11 is a schematic structural diagram of another precoding matrix determining apparatus according to an embodiment of the present invention.
  • FIG. 12 is a schematic structural diagram of a device according to an embodiment of the present invention.
  • FIG. 13 is a schematic structural diagram of a terminal according to an embodiment of the present invention.
  • FIG. 14 is a schematic structural diagram of a base station according to an embodiment of the present invention.
  • GSM Global System of Mobile communication
  • CDMA Code Division Multiple Access
  • WCDMA Wideband Code Division Multiple Access
  • GPRS General Packet Radio Service
  • LTE Long Term Evolution
  • LTE-A Advanced Long Term Evolution
  • UMTS Universal Mobile Telecommunication System
  • the user equipment includes but is not limited to a mobile station (Mobile Station, MS), a mobile terminal (Mobile Terminal), a mobile phone (Mobile Telephone), a mobile phone (handset). And portable devices, etc., the user equipment can communicate with one or more core networks via a Radio Access Network (RAN), for example, the user equipment can be a mobile phone (or "cellular"
  • RAN Radio Access Network
  • the user equipment can be a mobile phone (or "cellular"
  • the telephone device, the computer with wireless communication function, etc., the user equipment can also be a mobile device that is portable, pocket-sized, handheld, built-in, or in-vehicle.
  • a base station may refer to a device in an access network that communicates with a wireless terminal over one or more sectors over an air interface.
  • the base station can be used to convert the received air frame to the IP packet as a router between the wireless terminal and the rest of the access network, wherein the remainder of the access network can include an Internet Protocol (IP) network.
  • IP Internet Protocol
  • the base station can also coordinate attribute management of the air interface.
  • the base station may be a Base Transceiver Station (BTS) in GSM or CDMA, or may be a base station (NodeB) in WCDMA, or may be an evolved base station in LTE (NodeB or eNB or e-NodeB, evolutional Node B), the invention is not limited.
  • BTS Base Transceiver Station
  • NodeB base station
  • NodeB evolved base station
  • LTE Long Term Evolutional Node B
  • a receiver selects an appropriate precoding matrix from a set of pre-defined precoding matrices according to channel information, and feeds back an index of the selected precoding matrix in the set to the transmission.
  • This collection is called a codebook.
  • the transmitter determines a corresponding precoding matrix according to the received index and a predefined codebook, and uses the precoding matrix to preprocess the transmitted signal to improve the validity and reliability of the information transmission.
  • the codebook is an essential element in achieving this process. The codebook design needs to match the channel distribution characteristics as much as possible, and minimize the performance loss caused by codebook quantization.
  • the transmitter can simultaneously transmit multiple data streams to the receiver, while the number of data streams transmitted is called rank.
  • rank the number of data streams transmitted
  • a codebook design scheme is provided for the case where the number of data streams that are simultaneously transmitted is greater than one, so that the designed codebook can better match the channel distribution characteristics when the rank is greater than 1, and the performance of the codebook quantization is minimized. loss.
  • the detailed method for generating a codebook in the case where rank is greater than 1 is as follows:
  • Step 101 Determine a first-dimensional beam vector of the antenna and a second-dimensional beam vector of the antenna.
  • the first dimension may be defined as a horizontal dimension, and the second dimension may be a vertical dimension; or the first dimension may be a vertical dimension, and the second dimension may be a horizontal dimension.
  • the first dimensional beam vector and the second dimensional beam vector are generated according to the DFT vector.
  • the DFT vector may be pre-agreed by the base station and the terminal, or determined by the base station according to the notification message of the terminal, or determined by the terminal according to the notification message of the base station.
  • the number of antenna ports in each polarization direction of the first dimension is defined as K 1
  • N 1 first-dimensional beam vectors two beam vectors per O 1 beam vector are orthogonal to each other.
  • Defining the number of antenna ports in each polarization direction of the second dimension is K 2
  • generating N 2 second-dimensional beam vectors by using O 2 times oversampled DFT vectors, that is, N 2 K 2 ⁇ O 2
  • the N 2 In the second two-dimensional beam vector two beam vectors per O 2 beam vectors are orthogonal to each other.
  • this beam vector is used for antenna ports in one polarization direction.
  • Step 102 grouping the first-dimensional beam vector to obtain a plurality of first-dimensional beam packets, and grouping the second-dimensional beam vector to obtain a plurality of second-dimensional beam packets, where any one of the first-dimensional beam packets is included
  • the plurality of first-dimensional beam vectors are orthogonal to each other, and the plurality of second-dimensional beam vectors in any one of the second-dimensional beam groups are orthogonal to each other.
  • the first dimensional beam vector is grouped, and the first dimensional beam vector is divided into a plurality of first dimensional beam packets having an equal number of first dimensional beams, each first dimensional beam packet comprising the same number of a one-dimensional beam vector; grouping the second-dimensional beam vectors to divide the second-dimensional beam vector into a plurality of second-dimensional beam packets having an equal number of second-dimensional beams, each second-dimensional beam packet containing the same number The second two-dimensional beam.
  • the adjacent first-dimensional beam group includes at least one non-overlapping first-dimensional beam vector
  • the adjacent second-dimensional beam group includes at least one non-overlapping second-dimensional beam vector
  • N 1 first-dimensional beam vectors are divided into S 1 packets, and each packet includes M 1 beam vectors.
  • the beam vectors in the adjacent first-dimension beam group may have partial overlap or no overlap at all, and the number of non-overlapping beams in the adjacent first-dimensional beam group is defined as N p1 , where N p1 ⁇ 1 and N p1 ⁇ M 1 , then the s 1 first-dimensional beam grouping can be expressed as formula (1):
  • K 1 represents the number of ports in each polarization direction of the first dimension of the antenna.
  • the first dimensional beam is grouped into a matrix of K 1 ⁇ M 1 .
  • the beam vector index (s 1 ⁇ N p1 +m)>(N 1 -1)
  • the beam vector index is recalculated using the modulo operation as follows: mod(s 1 ⁇ N p1 +m, N 1 -1 )-1, where mod(m,n) represents m versus n modulo.
  • N 2 second-dimensional beam vectors are divided into S 2 packets, each of which contains M 2 beam vectors.
  • the beam vectors in the adjacent second-dimensional beam group may have partial overlap or no overlap at all, and the number of non-overlapping beam vectors in the adjacent second-dimensional beam group is defined as N p2 , where N p2 ⁇ 1 and N p2 ⁇ M 2 , then the s 2 second-dimensional beam grouping can be expressed as formula (3):
  • K 2 represents the number of ports in each polarization direction of the second dimension of the antenna.
  • the first two-dimensional beam packet is a matrix of K 2 ⁇ M 2 .
  • the beam vector index (s 2 ⁇ N p2 +n)>(N 2 -1)
  • the beam vector index is recalculated using the modulo operation as follows: mod(s 2 ⁇ N p2 +n, N 2 -1 )-1, where mod(m,n) represents m versus n modulo.
  • Step 103 Determine, according to a Kronecker product between each first-dimensional beam packet and each second-dimensional beam packet, a corresponding two-dimensional orthogonal beam sub-group, where the two-dimensional orthogonal beam sub-group includes multiple mutual Orthogonal beam vector.
  • the Kronecker product between each first-dimensional beam packet and one second-dimensional beam packet is a corresponding two-dimensional orthogonal beam sub-group.
  • the first-dimensional beam packet and each second-dimensional beam packet are respectively Kronecker product, and the number of the second-dimensional beam packet corresponding to the first-dimensional beam packet is obtained.
  • the same two-dimensional orthogonal beam subgroup Assuming that there are S 1 first-dimensional beam packets and S 2 second-dimensional beam packets, S 1 ⁇ S 2 two-dimensional orthogonal beam sub-groups are obtained.
  • Equation (5) a two-dimensional orthogonal beam subgroup is represented as equation (5):
  • X 1 represents the first dimensional beam packet
  • X 2 represents the second dimensional beam packet.
  • FIG. 2 is a schematic diagram of a two-dimensional orthogonal beam subgroup, where O 1 represents an oversampling factor of a first dimension, and O 2 represents an oversampling factor of a second dimension, and the two-dimensional orthogonal beam subgroup is
  • Step 104 Select one or more sets of two-dimensional orthogonal beam sub-groups at a time, and select a beam vector from the selected one or more sets of two-dimensional orthogonal beam sub-groups according to the number of simultaneously transmitted data streams, according to the selected The beam vector and the number of data streams generate a precoding matrix corresponding to the two-dimensional orthogonal beam subgroup.
  • each first-level codebook is composed of one or more sets of the two-dimensional orthogonal beam sub-groups; each second-level codebook is used according to the number of simultaneously transmitted data streams. Selecting a beam vector from the first level codebook to generate one or more precoding matrices corresponding to the first level codebook.
  • one or more sets of beam vectors are selected from the one or more sets of two-dimensional orthogonal beam sub-groups according to the number of simultaneously transmitted data streams, respectively
  • Each set of beam vectors selected and the number of data streams generates a corresponding precoding matrix. That is, by selecting a beam vector from the same two-dimensional orthogonal beam sub-group, one or more sets of different waveform vectors are obtained, and each set of beam vectors correspondingly generates one or more pre-coding matrices corresponding to the number of the data streams, then one The two-dimensional orthogonal beam sub-group can obtain multiple pre-coding moments corresponding to the number of the data streams Array.
  • each set of beam vectors correspondingly generates one or more precoding matrices corresponding to the number of the data streams.
  • the plurality of sets of two-dimensional orthogonal beam sub-groups can obtain a plurality of pre-coding matrices corresponding to the number of the data streams.
  • the pre-coding matrix corresponding to the number of simultaneously transmitted data streams determined according to the two-dimensional orthogonal beam sub-group may be expressed as formula (6):
  • W denotes a precoding matrix
  • r denotes the number of columns of the precoding matrix and the number of data streams
  • Y i is a beam vector of one polarization direction
  • ⁇ i denotes The phase adjustment factor between the polarization directions
  • Y' i represents the beam vector of the other polarization direction
  • W can be normalized, and the normalization factor is which is
  • Y i X(:,l i ), where X represents a two-dimensional orthogonal beam subgroup determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , l i Indicates the column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 indicates the number of ports in each polarization direction of the first dimension of the antenna, Indicates rounding down.
  • B i is based on OK, or as a default.
  • each element in the diagonal matrix B i is a phase adjustment factor for Make phase adjustments.
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , l i represents the column index number, that is, the beam vector corresponding to the i-th data stream, M 2 represents the number of second-dimensional beam vectors included in X 2 , and D i is a diagonal matrix of size K 2 ⁇ K 2 , K 2 represents the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down.
  • D i is determined according to X 2 (:, mod (l i , M 2 )), or is a preset value.
  • each element in the diagonal matrix D i is a phase adjustment factor for phase adjustment of X 2 (:, mod(l i , M 2 )).
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , l i represents the column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 represents the number of ports in each polarization direction of the first dimension of the antenna, D i is a diagonal matrix of size K 2 ⁇ K 2 , and K 2 represents the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down.
  • D i is determined according to X 2 (:, mod (l i , M 2 )), or is a preset value.
  • each element in the diagonal matrix D i is a phase adjustment factor for phase adjustment of X 2 (:, mod(l i , M 2 )).
  • B i according to OK, or as a default.
  • each element in the diagonal matrix B i is a phase adjustment factor for Phase adjustment is obtained.
  • phase adjustment factor between polarization directions Wherein the phase adjustment factor between polarization directions Where T is a preset integer, and the phase adjustment factor between the polarization directions is used to adjust the phase between the beam vectors of different polarization directions. At the same time, if two data streams select the same beam vector, the phase adjustment factor needs to ensure that the corresponding two columns in the precoding matrix are orthogonal to each other.
  • W1 is composed of a first matrix Z1 and a second matrix Z2, which are expressed as formula (11):
  • the first matrix Z1 is composed of a selected one or more sets of the two-dimensional orthogonal beam subgroups.
  • the second matrix Z2 is determined according to the first matrix, and the second-level codebook is used to select a multi-column beam vector from the first-stage codebook and perform phase adjustment to determine the pre-coding matrix.
  • a two-dimensional orthogonal beam subgroup can be expressed as shown in equation (12):
  • a feasible implementation manner is to form a first matrix of G two-dimensional orthogonal beam sub-groups having the same dimension (first dimension or second dimension), and G is an integer greater than or equal to 1, that is, the first matrix representation As shown in formula (13) or formula (14):
  • the second matrix is determined by the first matrix, including but not limited to the following implementation manners, and is expressed as:
  • B i represents a diagonal matrix of size K 1 ⁇ K 1
  • K 1 represents the number of ports in each polarization direction of the first dimension of the antenna
  • D i is a diagonal matrix of size K 2 ⁇ K 2
  • K 2 represents the number of ports in each polarization direction of the second dimension of the antenna
  • D i is determined according to Z 1 (:, i) or is a preset value.
  • each element in the diagonal matrix D i is a phase adjustment factor for phase adjustment of Z 1 (:, i).
  • B i is determined according to Z 1 (:, i) or is a preset value.
  • each element in the diagonal matrix B i is a phase adjustment factor for phase adjustment of Z 1 (:, i).
  • the precoding matrix is determined.
  • W 2 is expressed as equation (15):
  • Step 105 Determine a set of precoding matrices corresponding to all or part of the two-dimensional orthogonal beam subgroup as a codebook corresponding to the number of data streams.
  • the detailed method for determining the precoding matrix by the receiver is as follows:
  • Step 301 Determine the number of data streams transmitted simultaneously
  • Step 302 Determine, according to the correspondence between the number of data streams and the codebook, a codebook corresponding to the number of the data streams, and select a precoding matrix from the determined codebook.
  • Step 303 Send indication information of an index of the selected precoding matrix in the codebook
  • the codebook corresponding to the number of data streams is generated according to the process described in steps 101 to 105, and details are not described herein again.
  • the receiver may randomly select a precoding matrix from the codebook, or select a precoding matrix from the codebook according to a preset rule.
  • the manner of selecting the precoding matrix from the codebook is not limited herein.
  • the receiver performing the process described in steps 301 through 303 is located on the terminal.
  • the device performing the process described in steps 101 to 105 may be a terminal or may be on another device.
  • the code corresponding to the number of the data streams is generated according to the number of the data streams.
  • the codebook corresponding to the number of streams is configured on the terminal and the base station.
  • the detailed method for determining the precoding matrix by the transmitter is as follows:
  • Step 401 Receive indication information of an index of a precoding matrix in a codebook.
  • Step 402 Obtain a number of data streams that are simultaneously transmitted, and obtain a codebook corresponding to the number of the data streams, and select a precoding matrix from the codebook corresponding to the number of the data streams according to the indication information of the index;
  • the codebook corresponding to the number of the data streams is generated according to the process described in steps 101 to 105, and details are not described herein again.
  • the transmitter performing step 401 to step 402 is located at the base station.
  • the indication information of the index of the precoding matrix in the codebook may be directly the index of the precoding matrix in the codebook, or may be obtained by deforming the index of the precoding matrix in the codebook according to a preset rule.
  • the specific implementation form of the indication information of the index is not limited here.
  • Embodiment 1 The following describes a process of determining a precoding matrix using a two-dimensional orthogonal packet by a specific example.
  • Embodiment 2 The following describes a process of determining a precoding matrix using two two-dimensional orthogonal subgroups by a specific example.
  • e i is a unit vector of length 16 with the i-th element being 1 and the remaining elements being 0.
  • a codebook generating apparatus is provided in the embodiment of the present invention.
  • the device mainly includes:
  • a first determining module 901 configured to determine a first-dimensional beam vector of the antenna and a second-dimensional beam vector of the antenna
  • a grouping module 902 configured to group the first dimension beam vector determined by the first determining module to obtain a plurality of first-dimensional beam packets, and the second-dimensional beam vector determined by the first determining module Performing grouping to obtain a plurality of second-dimensional beam packets, wherein a plurality of first-dimensional beam vectors included in any one of the first-dimensional beam packets are orthogonal to each other, and any one of the second-dimensional beam packets The two-dimensional beam vectors are orthogonal to each other;
  • the calculating module 903 is configured to determine, according to a Kronecker product between each first-dimensional beam packet and each second-dimensional beam packet, a corresponding two-dimensional orthogonal beam sub-group, where the two-dimensional orthogonal beam sub-group is Include a plurality of mutually orthogonal beam vectors;
  • the matrix generation module 904 is configured to select one or more sets of two-dimensional orthogonal beam sub-groups at a time, and select a beam vector from the selected one or more sets of two-dimensional orthogonal beam sub-groups according to the number of simultaneously transmitted data streams. Generating, according to the selected beam vector and the number of data streams, a precoding matrix corresponding to the two-dimensional orthogonal beam subgroup;
  • the second determining module 905 is configured to determine that the set of the precoding matrix corresponding to all or part of the two-dimensional orthogonal beam subgroup is the codebook corresponding to the number of the data streams.
  • each first-dimensional beam packet contains the same number of first-dimensional beam vectors
  • each second-dimensional beam packet includes the same number of second-dimensional beam vectors
  • the adjacent first-dimensional beam group includes at least one non-overlapping first-dimensional beam vector
  • the adjacent second-dimensional beam group includes at least one non-overlapping second-dimensional beam vector
  • Z 1 denotes a first matrix
  • Z 2 denotes a second matrix
  • the first matrix is composed of the one or more sets of the two-dimensional orthogonal beam sub-groups
  • the second matrix is determined according to the first matrix
  • the second level codebook is configured to determine the precoding matrix by selecting a multi-column beam vector from the first-level codebook and performing phase adjustment.
  • the second matrix is determined according to the first matrix, specifically:
  • B i represents a diagonal matrix of size K 1 ⁇ K 1
  • K 1 represents the number of ports in each polarization direction of the first dimension of the antenna
  • D i represents a diagonal matrix of size K 2 ⁇ K 2
  • K 2 represents the number of ports in each polarization direction of the second dimension of the antenna
  • the Y′ i is determined according to Y i , specifically:
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , i i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and D i is a diagonal matrix of size K 2 ⁇ K 2 , K 2 Indicates the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, D i is a diagonal matrix of size K 2 ⁇ K 2 , and K 2 represents the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down.
  • the device may be disposed on the terminal, or disposed on the base station, or disposed on other devices than the terminal and the base station. If the device is set on other devices than the terminal and the base station, the device acquires the number of data streams simultaneously transmitted between the terminal and the base station, and after generating the codebook corresponding to the number of the data streams, the number of the data streams is generated.
  • the corresponding codebook is configured for the terminal and the base station. If the device is located on the terminal, after the terminal generates the codebook corresponding to the number of data streams, the terminal locally stores the correspondence between the number of the data streams and the codebook. If the device is located on the base station, after the base station generates the codebook corresponding to the number of data streams, the base station locally stores the correspondence between the number of the data streams and the codebook.
  • the pre-coding matrix determining apparatus is further provided in the embodiment of the present invention.
  • the device mainly includes:
  • a determining module 1001 configured to determine a number of data streams that are simultaneously transmitted
  • the selecting module 1002 is configured to determine, according to the correspondence between the number of data streams and the codebook, a codebook corresponding to the number of the data streams determined by the determining module 1001, and select a precoding matrix from the determined codebooks;
  • the sending module 1003 is configured to send indication information of an index of the precoding matrix selected by the selecting module 1002 in the codebook
  • the codebook corresponding to the number of data streams is generated by the method described in steps 101 to 105.
  • the device is disposed on the terminal.
  • the pre-coding matrix determining apparatus is further provided in the embodiment of the present invention.
  • the apparatus mainly includes:
  • the receiving module 1101 is configured to receive indication information of an index of the precoding matrix in the code book.
  • the selecting module 1102 is configured to obtain the number of data streams that are simultaneously transmitted, and obtain a codebook corresponding to the number of the data streams, And selecting, according to the indication information of the index, a precoding matrix from a codebook corresponding to the number of the data streams;
  • the codebook corresponding to the number of data streams is generated by the method described in steps 101 to 105.
  • the device is located at a base station.
  • the device mainly includes The processor 1201 and the memory 1202 store a preset program in the memory 1202.
  • the processor 1201 reads the program saved in the memory 1202, and executes the following process according to the program:
  • first dimensional beam vector to obtain a plurality of first dimensional beam packets
  • second dimensional beam vector to obtain a plurality of second dimensional beam packets, wherein any one of the first dimensional beam packets
  • the plurality of first-dimensional beam vectors included in the second-dimensional beam vector are orthogonal to each other, and the plurality of second-dimensional beam vectors in any one of the second-dimensional beam groups are orthogonal to each other;
  • each first-dimensional beam packet contains the same number of first-dimensional beam vectors
  • each second-dimensional beam packet includes the same number of second-dimensional beam vectors
  • the adjacent first-dimensional beam group includes at least one non-overlapping first-dimensional beam vector
  • the adjacent second-dimensional beam group includes at least one non-overlapping second-dimensional beam vector
  • Z 1 denotes a first matrix
  • Z 2 denotes a second matrix
  • the first matrix is composed of the one or more sets of the two-dimensional orthogonal beam sub-groups
  • the second matrix is determined according to the first matrix
  • the second level codebook is configured to determine the precoding matrix by selecting a multi-column beam vector from the first-level codebook and performing phase adjustment.
  • the second matrix is determined according to the first matrix, specifically:
  • B i represents a diagonal matrix of size K 1 ⁇ K 1
  • K 1 represents the number of ports in each polarization direction of the first dimension of the antenna
  • D i represents a diagonal matrix of size K 2 ⁇ K 2
  • K 2 represents the number of ports in each polarization direction of the second dimension of the antenna
  • the Y′ i is determined according to Y i , specifically:
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and D i is a diagonal matrix of size K 2 ⁇ K 2 , K 2 Indicates the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down; or,
  • Y i X(:,l i ), where X represents the two-dimensional orthogonal beam sub-group determined by the Kronecker product between the first-dimensional beam packet X 1 and the second-dimensional beam packet X 2 , and l i represents Column index number, that is, the beam vector corresponding to the i-th data stream selection, M 2 represents the number of second-dimensional beam vectors included in X 2 , and B i represents a diagonal matrix of size K 1 ⁇ K 1 , K 1 Indicates the number of ports in each polarization direction of the first dimension of the antenna, D i is a diagonal matrix of size K 2 ⁇ K 2 , and K 2 represents the number of ports in each polarization direction of the second dimension of the antenna, Indicates rounding down.
  • the device can be a terminal or a base station.
  • the device may also be other devices than the base station and the terminal.
  • the processor of the other device acquires the number of data streams that are simultaneously transmitted between the base station and the terminal, and generates a corresponding codebook according to the number of the data streams, and then allocates the codebook corresponding to the number of the data streams to the base station and the terminal. If the device is a terminal, the processor of the terminal generates a codebook corresponding to the number of data streams, and saves the correspondence between the number of data streams and the codebook in the memory. If the device is a base station, the processor of the base station generates a codebook corresponding to the number of data streams, and saves the correspondence between the number of data streams and the codebook in the memory.
  • the bus architecture may include any number of interconnected buses and bridges, specifically linked by one or more processors represented by the processor and various circuits of the memory represented by the memory.
  • the bus architecture can also link various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and, therefore, will not be further described herein.
  • the bus interface provides an interface.
  • the processor is responsible for managing the bus architecture and the usual processing, and the memory can store the data that the processor uses when performing operations.
  • the terminal mainly includes a processor 1301, a memory 1302, and The transceiver 1303, wherein the transceiver 1303 receives and transmits data under the control of the processor 1301, the memory 1302 stores a preset program, and the processor 1301 reads the program saved in the memory 1302, and executes the following process according to the program:
  • the codebook corresponding to the number of data streams is generated by the method described in steps 101 to 105.
  • the processor, the memory and the transceiver are connected by a bus, and the bus architecture may comprise any number of interconnected buses and bridges, specifically linked by one or more processors represented by the processor and various circuits of the memory represented by the memory .
  • the bus architecture can also be used to make various other devices such as peripherals, voltage regulators, and power management circuits.
  • the links are linked together and these are well known in the art and, therefore, will not be further described herein.
  • the bus interface provides an interface.
  • the transceiver can be a plurality of components, including a transmitter and a transceiver, providing means for communicating with various other devices on a transmission medium.
  • the processor is responsible for managing the bus architecture and the usual processing, and the memory can store the data that the processor uses when performing operations.
  • the base station mainly includes a processor 1401, a memory 1402, and The transceiver 1403, wherein the transceiver 1403 receives and transmits data under the control of the processor 1401, the memory 1402 stores a preset program, and the processor 1401 reads the program saved in the memory 1402, and executes the following process according to the program:
  • the codebook corresponding to the number of data streams is generated by the method described in steps 101 to 105.
  • the processor, the memory and the transceiver are connected by a bus, and the bus architecture may comprise any number of interconnected buses and bridges, specifically linked by one or more processors represented by the processor and various circuits of the memory represented by the memory .
  • the bus architecture can also link various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and, therefore, will not be further described herein.
  • the bus interface provides an interface.
  • the transceiver can be a plurality of components, including a transmitter and a transceiver, providing means for communicating with various other devices on a transmission medium.
  • the processor is responsible for managing the bus architecture and the usual processing, and the memory can store the data that the processor uses when performing operations.
  • the embodiment of the present invention by grouping the first-dimensional beam vector and the second-dimensional beam vector of the antenna, multiple first-dimensional beam packets and multiple second-dimensional beam packets are obtained, respectively, according to each
  • the Kronecker product between the first-dimensional beam packet and each second-dimensional beam packet determines a corresponding two-dimensional orthogonal beam sub-group according to the number of simultaneously transmitted data streams and one or more two-dimensional orthogonal beam sub-groups Generating a corresponding precoding matrix, so that a plurality of precoding matrices corresponding to the number of the data streams are obtained according to each two-dimensional orthogonal beam subgroup, and the number of the data streams is determined by multiple precoding matrices corresponding to the number of the data streams.
  • Corresponding codebook which gives a codebook design scheme when the number of streams simultaneously transmitted rank is greater than 1, the design scheme utilizes the orthogonality of the horizontal dimension and the vertical dimension, and is suitable for the 3D MIMO antenna array.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the present invention may employ one or more computers having computer usable program code embodied therein. The form of a computer program product embodied on a storage medium, including but not limited to disk storage, CD-ROM, optical storage, and the like.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.

Landscapes

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

Abstract

本发明公开了一种码本生成方法、预编码矩阵确定方法及相关装置,用以针对同时传输的数据流数rank大于1的情况提供码本设计方案。该方法为:分别对第一维波束向量和第二维波束向量进行分组得到多个第一维波束分组以及多个第二维波束分组,其中,第一维波束分组或第二维波束分组中包含的多个波束向量相互正交;根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积确定多个二维正交波束子组;根据同时传输的数据流数目从一个或多个二维正交波束子组中选择波束向量,根据选择的波束向量以及数据流数目生成该二维正交波束子组对应的预编码矩阵;确定所有或部分二维正交波束子组对应的预编码矩阵的集合为数据流数目对应的码本。

Description

码本生成方法、预编码矩阵确定方法及相关装置
本申请要求在2015年10月21日提交中国专利局、申请号为201510688990.7、发明名称为“码本生成方法、预编码矩阵确定方法及相关装置”和2015年10月22日提交中国专利局、申请号为201510695953.9、发明名称为“码本生成方法、预编码矩阵确定方法及相关装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信技术领域,尤其涉及一种码本生成方法、预编码矩阵确定方法及相关装置。
背景技术
多天线系统中,发射机可以向接收机同时传输多个数据流,同时传输的数据流的数目称为rank。针对不同的rank,需要设计不同的码本。
目前,长期演进(Long Term Evolution,LTE)系统中,基站(eNB)最高允许同时传输8个数据流,即rank的最大值为8。每个rank值均设计了相应的码本。以Rel-12中的8天线码本为例,通过一组8倍过采的离散傅里叶变换(DFT)向量组将天线的水平维波束细分为32个波束,rank=1~8的码本均由此DFT向量组中的DFT向量生成。其中,rank=5~6的码本采用水平维的3个相互正交的DFT向量结合极化方向间的相位调整生成,rank=7~8的码本采用4个相互正交的DFT向量结合极化方向间的相位调整生成。以下行数据传输为例,终端将确定的预编码矩阵索引(Precoding Matrix Indicator,PMI)反馈给eNB;eNB根据终端反馈的PMI从码本中选择相应的预编码矩阵。
随着天线技术的发展,已经出现能够对每个阵子独立控制的有源天线,该设计使得天线阵列从水平排列增强到水平和垂直排列的二维结构,将该二维结构的天线阵列称为三维多输入多输出(3D MIMO)天线阵列。
对于3D MIMO天线阵列,码本设计需要考虑水平维度和垂直维度,更加具有灵活性。目前,对于3D MIMO天线阵列,码本中使用的DFT向量采用垂直维DFT向量和水平维DFT向量进行Kronecker积计算得到。但是,目前尚未有针对同时传输的数据流数rank大于1的情况下的码本设计方案。
发明内容
本发明实施例提供一种码本生成方法、预编码矩阵确定方法及相关装置,用以针对同时传输的数据流数rank大于1的情况提供码本设计方案。
本发明实施例提供的具体技术方案如下:
第一方面,提供了一种码本生成方法,包括:
确定天线的第一维波束向量以及所述天线的第二维波束向量;
对所述第一维波束向量进行分组得到多个第一维波束分组,以及对所述第二维波束向量进行分组得到多个第二维波束分组,其中,任意一个所述第一维波束分组中包含的多个第一维波束向量相互正交,任意一个所述第二维波束分组中的多个第二维波束向量相互正交;
分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,所述二维正交波束子组中包含多个相互正交的波束向量;
每次选择一组或多组所述二维正交波束子组,根据同时传输的数据流数目从选择的所述一组或多组所述二维正交波束子组中选择波束向量,根据选择的所述波束向量以及所述数据流数目生成所述二维正交波束子组对应的预编码矩阵;
确定所有或部分所述二维正交波束子组对应的预编码矩阵组成的集合为所述数据流数目对应的码本。
较佳地,每个第一维波束分组包含相同数目的第一维波束向量,每个第二维波束分组包含相同数目的第二维波束向量;
相邻的第一维波束分组内包含至少一个不重叠的第一维波束向量,相邻第二维波束分组内包含至少一个不重叠的第二维波束向量。
较佳地,所述预编码矩阵为W=W1W2,其中W1为第一级码本,W2为第二级码本;
其中,
Figure PCTCN2016102627-appb-000001
Z1表示第一矩阵,Z2表示第二矩阵,所述第一矩阵由所述一组或多组所述二维正交波束子组构成,所述第二矩阵根据所述第一矩阵确定,所述第二级码本用于从所述第一级码本中选择多列波束向量并进行相位调整后确定所述预编码矩阵。
较佳地,所述第二矩阵根据所述第一矩阵确定,具体为:
Z2=Z1;或者,
Figure PCTCN2016102627-appb-000002
或者,
Figure PCTCN2016102627-appb-000003
或者,
Figure PCTCN2016102627-appb-000004
其中,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di表示大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000005
表示K1维的单位矩阵,
Figure PCTCN2016102627-appb-000006
表示K2维的单位矩阵。
较佳地,所述预编码矩阵为
Figure PCTCN2016102627-appb-000007
其中,W表示所述预编码矩阵,r表示所述预编码矩阵的列数以及所述数据流数目,Yi表示所述选择的波束向量,αi表示极化方向间的相位调整因子,Y′i根据Yi确定,i=1,2......,r。
较佳地,所述Y′i根据Yi确定,具体为:
Y′i=Yi;或者,
Figure PCTCN2016102627-appb-000008
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000009
表示向下取整;或者,
Figure PCTCN2016102627-appb-000010
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000011
表示向下取整;或者,
Figure PCTCN2016102627-appb-000012
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000013
表示向下取整。
第二方面,提供了一种预编码矩阵确定方法,包括:
确定同时传输的数据流数目;
根据数据流数目与码本的对应关系,确定所述数据流数目对应的码本,从确定的码本中选择一个预编码矩阵;
发送选择的预编码矩阵在所述码本中的索引的指示信息;
其中,所述数据流数目对应的码本采用所述码本生成方法生成。
第三方面,提供了一种预编码矩阵确定方法,包括:
接收预编码矩阵在码本中的索引的指示信息;
获取同时传输的数据流数目,并获取所述数据流数目对应的码本,根据所述索引的指示信息从所述数据流数目对应的码本中选择预编码矩阵;
其中,所述数据流数目对应的码本采用所述码本生成方法生成。
第四方面,提供了一种码本生成装置,包括:
第一确定模块,用于确定天线的第一维波束向量以及所述天线的第二维波束向量;
分组模块,用于对所述第一确定模块确定的所述第一维波束向量进行分组得到多个第一维波束分组,以及对所述第一确定模块确定的所述第二维波束向量进行分组得到多个第二维波束分组,其中,任意一个所述第一维波束分组中包含的多个第一维波束向量相互正交,任意一个所述第二维波束分组中的多个第二维波束向量相互正交;
计算模块,用于分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,所述二维正交波束子组中包含多个相互正交的波束向量;
矩阵生成模块,用于每次选择一组或多组所述二维正交波束子组,根据同时传输的数据流数目从选择的所述一组或多组所述二维正交波束子组中选择波束向量,根据选择的所述波束向量以及所述数据流数目生成所述二维正交波束子组对应的预编码矩阵;
第二确定模块,用于确定所有或部分所述二维正交波束子组对应的预编码矩阵组成的集合为所述数据流数目对应的码本。
较佳地,每个第一维波束分组包含相同数目的第一维波束向量,每个第二维波束分组包含相同数目的第二维波束向量;
相邻的第一维波束分组内包含至少一个不重叠的第一维波束向量,相邻第二维波束分组内包含至少一个不重叠的第二维波束向量。
较佳地,所述预编码矩阵为W=W1W2,其中W1为第一级码本,W2为第二级码本;
其中,
Figure PCTCN2016102627-appb-000014
Z1表示第一矩阵,Z2表示第二矩阵,所述第一矩阵由所述一组或多组所述二维正交波束子组构成,所述第二矩阵根据所述第一矩阵确定,所述第二级码本用于从所述第一级码本中选择多列波束向量并进行相位调整后确定所述预编码矩阵。
较佳地,所述第二矩阵根据所述第一矩阵确定,具体为:
Z2=Z1;或者,
Figure PCTCN2016102627-appb-000015
或者,
Figure PCTCN2016102627-appb-000016
或者,
Figure PCTCN2016102627-appb-000017
其中,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di表示大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000018
表示K1维的单位矩阵,
Figure PCTCN2016102627-appb-000019
表示K2维的单位矩阵。
较佳地,所述预编码矩阵为
Figure PCTCN2016102627-appb-000020
其中,W表示所述预编码矩阵,r表示所述预编码矩阵的列数以及所述数据流数目,Yi表示所述选择的波束向量,αi表示极化方向间的相位调整因子,Y′i根据Yi确定,i=1,2......,r。
较佳地,所述Y′i根据Yi确定,具体为:
Y′i=Yi;或者,
Figure PCTCN2016102627-appb-000021
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000022
表示向下取整;或者,
Figure PCTCN2016102627-appb-000023
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000024
表示向下取整;或者,
Figure PCTCN2016102627-appb-000025
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000026
表示向下取整。
第五方面,提供了一种预编码矩阵确定装置,包括:
确定模块,用于确定同时传输的数据流数目;
选择模块,用于根据数据流数目与码本的对应关系,确定所述确定模块确定的所述数据流数目对应的码本,从确定的码本中选择一个预编码矩阵;
发送模块,用于发送所述选择模块选择的预编码矩阵在所述码本中的索引的指示信息;
其中,所述数据流数目对应的码本采用所述码本生成方法生成。
第六方面,提供了一种预编码矩阵确定装置,包括:
接收模块,用于接收预编码矩阵在码本中的索引的指示信息;
选择模块,用于获取同时传输的数据流数目,并获取所述数据流数目对应的码本,根据所述索引的指示信息从所述数据流数目对应的码本中选择预编码矩阵;
其中,所述数据流数目对应的码本采用所述码本生成方法生成。
第七方面,提供了一种设备,该设备主要包括处理器和存储器,其中,存储器中保存有预设的程序,处理器读取存储器中的程序,按照该程序执行以下过程:
确定天线的第一维波束向量以及所述天线的第二维波束向量;
对所述第一维波束向量进行分组得到多个第一维波束分组,以及对所述第二维波束向量进行分组得到多个第二维波束分组,其中,任意一个所述第一维波束分组中包含的多个第一维波束向量相互正交,任意一个所述第二维波束分组中的多个第二维波束向量相互正交;
分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,所述二维正交波束子组中包含多个相互正交的波束向量;
每次选择一组或多组所述二维正交波束子组,根据同时传输的数据流数目从选择的所述一组或多组所述二维正交波束子组中选择波束向量,根据选择的所述波束向量以及所述数据流数目生成所述二维正交波束子组对应的预编码矩阵;
确定所有或部分所述二维正交波束子组对应的预编码矩阵组成的集合为所述数据流数目对应的码本。
较佳地,每个第一维波束分组包含相同数目的第一维波束向量,每个第二维波束分组包含相同数目的第二维波束向量;
相邻的第一维波束分组内包含至少一个不重叠的第一维波束向量,相邻第二维波束分组内包含至少一个不重叠的第二维波束向量。
较佳地,所述预编码矩阵为W=W1W2,其中W1为第一级码本,W2为第二级码本;
其中,
Figure PCTCN2016102627-appb-000027
Z1表示第一矩阵,Z2表示第二矩阵,所述第一矩阵由所述一组或多组所述二维正交波束子组构成,所述第二矩阵根据所述第一矩阵确定,所述第二级码本用于从所述第一级码本中选择多列波束向量并进行相位调整后确定所述预编码矩阵。
较佳地,所述第二矩阵根据所述第一矩阵确定,具体为:
Z2=Z1;或者,
Figure PCTCN2016102627-appb-000028
或者,
Figure PCTCN2016102627-appb-000029
或者,
Figure PCTCN2016102627-appb-000030
其中,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di表示大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000031
表示K1维的单位矩阵,
Figure PCTCN2016102627-appb-000032
表示K2维的单位矩阵。
较佳地,所述预编码矩阵为
Figure PCTCN2016102627-appb-000033
其中,W表示所述预编码矩阵,r表示所述预编码矩阵的列数以及所述数据流数目,Yi表示所述选择的波束向量,αi表示极化方向间的相位调整因子,Y′i根据Yi确定,i=1,2......,r。
较佳地,所述Y′i根据Yi确定,具体为:
Y′i=Yi;或者,
Figure PCTCN2016102627-appb-000034
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000035
表示向下取整;或者,
Figure PCTCN2016102627-appb-000036
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000037
表示向下取整;或者,
Figure PCTCN2016102627-appb-000038
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000039
表示向下取整。
第八方面,提供了一种终端,该终端主要包括处理器、存储器和收发机,其中,收发机在处理器的控制下接收和发送数据,存储器中保存有预设的程序,处理器读取存储器中的程序,按照该程序执行以下过程:
确定同时传输的数据流数目;
根据数据流数目与码本的对应关系,确定所述数据流数目对应的码本,从确定的码本中选择一个预编码矩阵;
通过收发机发送选择的预编码矩阵在所述码本中的索引的指示信息;
其中,所述数据流数目对应的码本采用所述码本生成方法生成。
第九方面,提供了一种基站,该基站主要包括处理器、存储器和收发机,其中,收发机在处理器的控制下接收和发送数据,存储器中保存有预设的程序,处理器读取存储器中的程序,按照该程序执行以下过程:
通过收发机接收预编码矩阵在码本中的索引的指示信息;
获取同时传输的数据流数目,并获取所述数据流数目对应的码本,根据所述索引的指示信息从所述数据流数目对应的码本中选择预编码矩阵;
其中,所述数据流数目对应的码本采用所述码本生成方法生成。
基于上述技术方案,本发明实施例中,通过对天线的第一维波束向量以及第二维波束向量进行分组,得到多个第一维波束分组以及多个第二维波束分组,分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,根据同时传输的数据流数目以及一个或多个二维正交波束子组生成对应的预编码矩阵,由该数据流数目对应的多个预编码矩阵确定该数据流数目对应的码本,从而给出了同时传输的数据流数rank大于1的时的码本设计方案,该设计方案同时利用了水平维和垂直维的正交性,适用于3D MIMO天线阵列。
附图说明
图1为本发明实施例中生成码本的方法流程示意图;
图2为本发明实施例中二维正交波束子组的示意图;
图3为本发明实施例中接收机确定预编码矩阵的方法流程示意图;
图4为本发明实施例中发射机确定预编码矩阵的方法流程示意图;
图5为本发明实施例中预编码矩阵选择方案一的示意图;
图6为本发明实施例中预编码矩阵选择方案二的示意图;
图7为本发明实施例中预编码矩阵选择方案三的示意图;
图8为本发明实施例中预编码矩阵选择方案示意图;
图9为本发明实施例中码本生成装置的结构示意图;
图10为本发明实施例中预编码矩阵确定装置的结构示意图;
图11为本发明实施例中另一预编码矩阵确定装置的结构示意图;
图12为本发明实施例中设备的结构示意图;
图13为本发明实施例中终端的结构示意图;
图14为本发明实施例中基站的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应理解,本发明的技术方案可以应用于各种通信系统,例如:全球移动通讯(Global System of Mobile communication,GSM)系统、码分多址(Code Division Multiple Access,CDMA)系统、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)系统、通用分组无线业务(General Packet Radio Service,GPRS)、长期演进(Long Term Evolution,LTE)系统、先进的长期演进(Advanced long term evolution,LTE-A)系统、通用移动通信系统(Universal Mobile Telecommunication System,UMTS)等。
还应理解,在本发明实施例中,用户设备(User Equipment,UE)包括但不限于移动台(Mobile Station,MS)、移动终端(Mobile Terminal)、移动电话(Mobile Telephone)、手机(handset)及便携设备(portable equipment)等,该用户设备可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网进行通信,例如,用户设备可以是移动电话(或称为“蜂窝”电话)、具有无线通信功能的计算机等,用户设备还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置。
在本发明实施例中,基站(例如,接入点)可以是指接入网中在空中接口上通过一个或多个扇区与无线终端通信的设备。基站可用于将收到的空中帧与IP分组进行相互转换,作为无线终端与接入网的其余部分之间的路由器,其中接入网的其余部分可包括网际协议(IP)网络。基站还可协调对空中接口的属性管理。例如,基站可以是GSM或CDMA中的基站(Base Transceiver Station,BTS),也可以是WCDMA中的基站(NodeB),还可以是LTE中的演进型基站(NodeB或eNB或e-NodeB,evolutional Node B),本发明并不限定。
在基于线性预编码的多天线系统中,接收机根据信道信息从预先定义的由预编码矩阵构成的集合中选择合适的预编码矩阵,将选择的预编码矩阵在该集合中的索引反馈给发射机,该集合称为码本。发射机根据接收到的索引以及预先定义的码本确定对应的预编码矩阵,采用该预编码矩阵对发送信号进行预处理,以提高信息传输的有效性和可靠性。码本是实现这一过程的必要元素。码本设计需要尽可能的匹配信道分布特性、最小化码本量化带来的性能损失。
在多天线系统中,发射机可以向接收机同时传输多个数据流,同时传输的数据流数称为rank。本发明实施例为同时传输的数据流数rank大于1的情况提供码本设计方案,以使得设计的码本更好地匹配rank大于1时的信道分布特性,最小化码本量化带来的性能损失。
本发明实施例中,如图1所示,在rank大于1的情况下生成码本的详细方法流程如下:
步骤101:确定天线的第一维波束向量以及该天线的第二维波束向量。
实施中,可以定义第一维为水平维,第二维为垂直维;也可以定义第一维为垂直维,第二维为水平维。
具体地,第一维波束向量以及第二维波束向量根据DFT向量生成。该DFT向量可以是基站和终端预先约定的,或者是基站根据终端的通知消息确定的,或者是终端根据基站的通知消息确定的。
具体地,定义第一维每个极化方向的天线端口数为K1,采用O1倍过采样的DFT向量生成N1个第一维波束向量,即N1=K1×O1,该N1个第一维波束向量中,每间隔O1个波束向量的两个波束向量相互正交。定义第二维每个极化方向的天线端口数为K2,采用O2倍过采样的DFT向量生成N2个第二维波束向量,即N2=K2×O2,该N2个第二维波束向量中,每间隔O2个波束向量的两个波束向量相互正交。基于Kronecker码本结构,对于二维天线端口的波束向量可以通过第一维波束向量和第二维波束向量的Kronecker积生成,这样码本中总的波束个数为N=N1N2。对于双极化天线阵列,此波束向量用于一个极化方向上的天线端口。
步骤102:对第一维波束向量进行分组得到多个第一维波束分组,以及对第二维波束向量进行分组得到多个第二维波束分组,其中,任意一个第一维波束分组中包含的多个第一维波束向量相互正交,任意一个第二维波束分组中的多个第二维波束向量相互正交。
较佳地,对第一维波束向量进行分组,将第一维波束向量划分为具有等同数目的第一维波束的多个第一维波束分组,每个第一维波束分组包含相同数目的第一维波束向量;对第二维波束向量进行分组,将第二维波束向量划分为具有等同数目的第二维波束的多个第二维波束分组,每个第二维波束分组包含相同数目的第二维波束。
较佳地,相邻的第一维波束分组内包含至少一个不重叠的第一维波束向量,相邻第二维波束分组内包含至少一个不重叠的第二维波束向量。
具体地,以对第一维波束向量进行分组为例,假设将N1个第一维波束向量划分为S1个分组,每个分组包含M1个波束向量。相邻的第一维波束分组内的波束向量可以有部分重叠或者完全无重叠,定义相邻的第一维波束分组中非重叠的波束个数为Np1,其中Np1≥1且Np1≤M1,则第s1个第一维波束分组可表示为公式(1):
Figure PCTCN2016102627-appb-000040
其中,s1=0,1,2,…,S1-1,第一维波束分组中第i个波束向量定义为公式(2):
Figure PCTCN2016102627-appb-000041
其中,K1表示天线的第一维每个极化方向的端口数。
第一维波束分组为一个K1×M1的矩阵。
其中,当波束向量索引(s1·Np1+m)>(N1-1)时,则使用取模操作重新计算波束向量索引如下:mod(s1·Np1+m,N1-1)-1,其中mod(m,n)表示m对n求模。
基于与对第一维波束向量进行分组相同的原理,对第二维波束向量进行分组的具体过程如下:
假设将N2个第二维波束向量划分为S2个分组,每个分组包含M2个波束向量。相邻的第二维波束分组内的波束向量可以有部分重叠或者完全无重叠,定义相邻的第二维波束分组中非重叠的波束向量个数为Np2,其中Np2≥1且Np2≤M2,则第s2个第二维波束分组可表示为公式(3):
Figure PCTCN2016102627-appb-000042
其中,s2=0,1,2,…,S2-1,第二维波束分组中的第i个波束向量定义为公式(4):
Figure PCTCN2016102627-appb-000043
其中,K2表示天线的第二维每个极化方向的端口数。第二维波束分组是一个K2×M2的矩阵。
其中,在波束向量索引(s2·Np2+n)>(N2-1)时,则使用取模操作重新计算波束向量索引如下:mod(s2·Np2+n,N2-1)-1,其中mod(m,n)表示m对n求模。
步骤103:分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,该二维正交波束子组中包含多个相互正交的波束向量。
实施中,每一个第一维波束分组与一个第二维波束分组之间的Kronecker积,为一个对应的二维正交波束子组。
具体地,对于每个第一维波束分组,分别将该第一维波束分组与每个第二维波束分组进行Kronecker积,得到该第一维波束分组对应的与第二维波束分组的个数相同的二维正交波束子组。假设有S1个第一维波束分组和S2个第二维波束分组,在可得到S1×S2个二维正交波束子组。
具体地,一个二维正交波束子组表示为公式(5):
Figure PCTCN2016102627-appb-000044
其中,
Figure PCTCN2016102627-appb-000045
表示Kronecker积,X1表示第一维波束分组,X2表示第二维波束分组。
如图2所示为一个二维正交波束子组的示意图,其中,O1表示第一维的过采样因子,O2表示第二维的过采样因子,该二维正交波束子组为第一个第一维波束分组与第一个第二维波束分组的Kronecker积获得,且第一维波束分组中包含4个波束向量,第二维波束分组中包括2个波束向量,即s1=0,M1=4,s2=0,M2=2,图2中的每个方格表示X中的一个波束向量。
步骤104:每次选择一组或多组二维正交波束子组,根据同时传输的数据流数目从选择的该一组或多组二维正交波束子组中选择波束向量,根据选择的波束向量以及该数据流数目生成该二维正交波束子组对应的预编码矩阵。
其中,对于两级码本结构,每个第一级码本由一组或者多组所述二维正交波束子组构成;根据同时传输的数据流数目,每个第二级码本用于从第一级码本中选择波束向量,生成所述第一级码本对应的一个或者多个预编码矩阵。
具体地,对于一组或多组二维正交波束子组,根据同时传输的数据流数目从该一组或多组二维正交波束子组中选择一组或多组波束向量,分别根据选择的每一组波束向量以及该数据流数目生成对应的预编码矩阵。即通过从同一个二维正交波束子组中选择波束向量,得到一组或多组不同的波形向量,每组波束向量对应生成一个或多个该数据流数目对应的预编码矩阵,则一个二维正交波束子组可以得到该数据流数目对应的多个预编码矩 阵。或者,通过从多组二维正交波束子组中选择波束向量,得到一组或多组不同的波形向量,每组波束向量对应生成一个或多个该数据流数目对应的预编码矩阵,则该多组二维正交波束子组可以得到该数据流数目对应的多个预编码矩阵。
具体地,针对任意一组或多组二维正交波束子组,根据该二维正交波束子组确定的与同时传输的数据流数目对应的预编码矩阵可表示为公式(6):
Figure PCTCN2016102627-appb-000046
其中,W表示预编码矩阵,r表示预编码矩阵的列数以及数据流数目,Yi为一个极化方向的波束向量,表示从二维正交波束子组中选择的波束向量,αi表示极化方向间的相位调整因子,Y′i表示另一个极化方向的波束向量,Y′i根据Yi确定,i=1,2......,r。实施中可以对W进行归一化处理,归一化因子为
Figure PCTCN2016102627-appb-000047
Figure PCTCN2016102627-appb-000048
其中,根据Yi确定Y′i的方式包括但不限于以下几种:
第一,表示为公式(7):
Y′i=Yi         (7)。
第二,表示为公式(8):
Figure PCTCN2016102627-appb-000049
该方式中Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000050
表示向下取整。
具体地,Bi根据
Figure PCTCN2016102627-appb-000051
确定,或者为预设值。例如,对角矩阵Bi中的每个元素为一个相位调整因子,用于对
Figure PCTCN2016102627-appb-000052
进行相位调整。
第三,表示为公式(9):
Figure PCTCN2016102627-appb-000053
该方式中Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000054
表示向下取整。
具体地,Di根据X2(:,mod(li,M2))确定,或者为预设值。例如,对角矩阵Di中的每个元素为一个相位调整因子,用于对X2(:,mod(li,M2))进行相位调整。
第四,表示为公式(10):
Figure PCTCN2016102627-appb-000055
该方式中Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000056
表示向下取整。
具体地,Di根据X2(:,mod(li,M2))确定,或者为预设值。例如,对角矩阵Di中的每个元素为一个相位调整因子,用于对X2(:,mod(li,M2))进行相位调整。Bi根据
Figure PCTCN2016102627-appb-000057
确定,或者为预设值。例如,对角矩阵Bi中的每个元素为一个相位调整因子,用于对
Figure PCTCN2016102627-appb-000058
进行相位调整得到。
其中,极化方向间的相位调整因子
Figure PCTCN2016102627-appb-000059
其中T为预设整数,极化方向间的相位调整因子用于调整不同极化方向波束向量间的相位。同时若两个数据流选择相同的波束向量时,相位调整因子需要保证预编码矩阵中的相应两列间相互正交。
实施中,可以将预编码矩阵表示为两级码本结构,即表示为W=W1W2,其中,W1为第一级码本,W2为第二级码本,对于双极化天线阵列,W1由第一矩阵Z1与第二矩阵Z2构成,表示为公式(11)所示:
Figure PCTCN2016102627-appb-000060
其中,第一矩阵Z1由选择的一组或者多组所述二维正交波束子组构成。第二矩阵Z2根据第一矩阵确定,第二级码本用于从第一级码本中选择多列波束向量并进行相位调整后确定预编码矩阵。
具体地,一个二维正交波束子组可以表示为公式(12)所示:
Figure PCTCN2016102627-appb-000061
其中,s1=0,1,2,…,S1-1,s2=0,1,2,…,S2-1。
一种可行的实施方式是将某一个维度(第一维或第二维)相同的G个二维正交波束子组组成一个第一矩阵,G为大于等于1的整数,即第一矩阵表示为公式(13)或公式(14)所示:
Figure PCTCN2016102627-appb-000062
或者
Figure PCTCN2016102627-appb-000063
具体地,第二矩阵由第一矩阵确定,包括但不限于以下几种实现方式,表示为:
Z2=Z1
或者,
Figure PCTCN2016102627-appb-000064
或者,
Figure PCTCN2016102627-appb-000065
或者,
Figure PCTCN2016102627-appb-000066
其中,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000067
表示K1维的单位矩阵,
Figure PCTCN2016102627-appb-000068
表示K2维的单位矩阵。
具体地,Di根据Z1(:,i)确定,或者为预设值。例如,对角矩阵Di中的每个元素为一 个相位调整因子,用于对Z1(:,i)进行相位调整。Bi根据Z1(:,i)确定,或者为预设值。例如,对角矩阵Bi中的每个元素为一个相位调整因子,用于对Z1(:,i)进行相位调整。
具体地,采用W2从确定的第一级码本中选择多列波束并进行相位调整,确定预编码矩阵。
一个具体实现中,W2表示为公式(15):
Figure PCTCN2016102627-appb-000069
其中,
Figure PCTCN2016102627-appb-000070
为列选择向量,其长度为Z1的列数,即
Figure PCTCN2016102627-appb-000071
有且仅有ir个元素为1,其他元素均为0,作用是从W1矩阵的对角块中选择出一列。αi用于在两组极化天线之间进行相位调整,
Figure PCTCN2016102627-appb-000072
步骤105:确定所有或部分二维正交波束子组对应的预编码矩阵组成的集合为数据流数目对应的码本。
本发明实施例中,如图3所示,接收机确定预编码矩阵的详细方法流程如下:
步骤301:确定同时传输的数据流数目;
步骤302:根据数据流数目与码本的对应关系,确定该数据流数目对应的码本,从确定的码本中选择一个预编码矩阵;
步骤303:发送选择的预编码矩阵在该码本中的索引的指示信息;
其中,数据流数目对应的码本按照步骤101至步骤105所描述的过程生成,此处不再赘述。
实施中,接收机可以是随机从码本中选择一个预编码矩阵,也可以按照预设的规则从码本中选择一个预编码矩阵,此处不限制从码本中选择预编码矩阵的方式。
可能的实现中,执行步骤301至步骤303所述的过程的接收机位于终端上。
需要说明的是,执行步骤101至步骤105所描述的过程的设备可以是终端,也可以是在其它设备上。在一种可能的实现方式中,该其它设备获取终端与基站之间同时传输的数据流数目后,按照步骤101至步骤105所描述的过程,根据该数据流数目生成该数据流数目对应的码本,将该数目流数目对应的码本配置在终端和基站上。
本发明实施例中,如图4所示,发射机确定预编码矩阵的详细方法流程如下:
步骤401:接收预编码矩阵在码本中的索引的指示信息;
步骤402:获取同时传输的数据流数目,并获取该数据流数目对应的码本,根据该索引的指示信息从该数据流数目对应的码本中选择预编码矩阵;
其中,该数据流数目对应的码本按照步骤101至步骤105所描述的过程生成,此处不再赘述。
可能的实现中,执行步骤401至步骤402的发射机位于基站上。
其中,预编码矩阵在码本中的索引的指示信息,可以直接为该预编码矩阵在码本中的索引,也可以是该预编码矩阵在码本中的索引按照预设规则经过变形后得到,此处不限制该索引的指示信息的具体实现形式。
实施例一:以下通过一个具体的例子对使用一个二维正交分组确定一个预编码矩阵的过程进行说明。
以rank等于8为例,基于图2所示的二维正交波束子组,给出以下三种预编码矩阵的设计方式:
假设Y′i=Yi,且满足Y1=Y2,Y3=Y4,Y5=Y6,Y7=Y8,相位调整因子α1=α3=α5=α7=1,α2=α4=α6=α8=-1。需要从二维正交波束子组中任意选择四个波束向量,可以有以下三种选择方案
方案一:Y1=X(:,1),Y3=X(:,2),Y5=X(:,3),Y7=X(:,4),如图5所示,被阴影覆盖的方格为选择的波束向量;
方案二:Y1=X(:,1),Y3=X(:,3),Y5=X(:,5),Y7=X(:,7),如图6所示,被阴影覆盖的方格为选择的波束向量;
方案三:Y1=X(:,1),Y3=X(:,4),Y5=X(:,5),Y7=X(:,8),如图7所示,被阴影覆盖的方格为选择的波束向量。
实施例二:以下通过一个具体的例子对使用两个二维正交子组确定一个预编码矩阵的过程进行说明。
以rank等于4为例,基于图8所示,第一个二维正交波束子组采用s1=0,s2=0,表示为
Figure PCTCN2016102627-appb-000073
定义Np1=1,第二个二维正交波束子组采用s1=1,s2=0,表示为
Figure PCTCN2016102627-appb-000074
两级码本结构中的第一级码本为:
Figure PCTCN2016102627-appb-000075
其中,Z1=[X(0,0)X(1,0)],Z1为一个包含16列的矩阵。
对于第二级码本选择调整因子α1=α3=1,α2=α4=-1。一种可行的方式为从每个二维正交波束子组中任意选择两个波束向量,其中一种第二级码本的实现方式为:
Figure PCTCN2016102627-appb-000076
其中,ei是一个长度为16的单位向量,其第i个元素为1,其余元素为0。
基于同一发明构思,本发明实施例中提供了一种码本生成装置,该装置的具体实施可参见上述方法实施例部分关于码本生成过程的相关描述,重复之处不再赘述,如图9所示,该装置主要包括:
第一确定模块901,用于确定天线的第一维波束向量以及所述天线的第二维波束向量;
分组模块902,用于对所述第一确定模块确定的所述第一维波束向量进行分组得到多个第一维波束分组,以及对所述第一确定模块确定的所述第二维波束向量进行分组得到多个第二维波束分组,其中,任意一个所述第一维波束分组中包含的多个第一维波束向量相互正交,任意一个所述第二维波束分组中的多个第二维波束向量相互正交;
计算模块903,用于分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,所述二维正交波束子组中包含多个相互正交的波束向量;
矩阵生成模块904,用于每次选择一组或多组二维正交波束子组,根据同时传输的数据流数目从选择的该一组或多组二维正交波束子组中选择波束向量,根据选择的所述波束向量以及所述数据流数目生成所述二维正交波束子组对应的预编码矩阵;
第二确定模块905,用于确定所有或部分所述二维正交波束子组对应的预编码矩阵组成的集合为所述数据流数目对应的码本。
较佳地,每个第一维波束分组包含相同数目的第一维波束向量,每个第二维波束分组包含相同数目的第二维波束向量;
相邻的第一维波束分组内包含至少一个不重叠的第一维波束向量,相邻第二维波束分组内包含至少一个不重叠的第二维波束向量。
较佳地,所述预编码矩阵为W=W1W2,其中W1为第一级码本,W2为第二级码本;
其中,
Figure PCTCN2016102627-appb-000077
Z1表示第一矩阵,Z2表示第二矩阵,所述第一矩阵由所述一组或多组所述二维正交波束子组构成,所述第二矩阵根据所述第一矩阵确定,所述第二级码本用于从所述第一级码本中选择多列波束向量并进行相位调整后确定所述预编码矩阵。
较佳地,所述第二矩阵根据所述第一矩阵确定,具体为:
Z2=Z1;或者,
Figure PCTCN2016102627-appb-000078
或者,
Figure PCTCN2016102627-appb-000079
或者,
Figure PCTCN2016102627-appb-000080
其中,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di表示大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000081
表示K1维的单位矩阵,
Figure PCTCN2016102627-appb-000082
表示K2维的单位矩阵。
较佳地,所述预编码矩阵为
Figure PCTCN2016102627-appb-000083
其中,W表示所述预编码矩阵,r表示所述预编码矩阵的列数以及所述数据流数目,Yi表示所述选择的波束向量,αi表示极化方向间的相位调整因子,Y′i根据Yi确定,i=1,2......,r。
较佳地,所述Y′i根据Yi确定,具体为:
Y′i=Yi;或者,
Figure PCTCN2016102627-appb-000084
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000085
表示向下取整;或者,
Figure PCTCN2016102627-appb-000086
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组, li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000087
表示向下取整;或者,
Figure PCTCN2016102627-appb-000088
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000089
表示向下取整。
在一种可能的实现中,该装置可以是设置在终端上,或者设置在基站上,或者设置在终端和基站之外的其它设备上。若该装置设置在除终端和基站之外的其它设备上则,则该设备获取终端和基站之间同时传输的数据流数目,在生成该数据流数目对应的码本后,将该数据流数目对应的码本配置给终端和基站。若该装置位于终端上,终端在生成数据流数目对应的码本后,在本地保存该数据流数目与码本的对应关系。若该装置位于基站上,基站在生成数据流数目对应的码本后,在本地保存该数据流数目与码本的对应关系。
基于同一发明构思,本发明实施例中还提供了一种预编码矩阵确定装置,该装置的具体实施可参见上述方法实施例部分的相关描述,重复之处不再赘述,如图10所示,该装置主要包括:
确定模块1001,用于确定同时传输的数据流数目;
选择模块1002,用于根据数据流数目与码本的对应关系,确定所述确定模块1001确定的所述数据流数目对应的码本,从确定的码本中选择一个预编码矩阵;
发送模块1003,用于发送所述选择模块1002选择的预编码矩阵在所述码本中的索引的指示信息;
其中,所述数据流数目对应的码本采用步骤101至步骤105所述的方法生成。
在一种可能的实现中,该装置设置于终端上。
基于同一发明构思,本发明实施例中还提供了一种预编码矩阵确定装置,该装置的具体实施可参见上述方法实施例部分的相关描述,如图11所示,该装置主要包括:
接收模块1101,用于接收预编码矩阵在码本中的索引的指示信息;
选择模块1102,用于获取同时传输的数据流数目,并获取所述数据流数目对应的码本, 根据所述索引的指示信息从所述数据流数目对应的码本中选择预编码矩阵;
其中,所述数据流数目对应的码本采用步骤101至步骤105所述的方法生成。
在一种可能的实现中,该装置设置在基站上。
基于同一发明构思,本发明实施例中还提供了一种设备,该设备的具体实施可参见上述方法实施例部分的相关描述,重复之处不再赘述,如图12所示,该设备主要包括处理器1201和存储器1202,该存储器1202中保存有预设的程序,处理器1201读取存储器1202中保存的程序,按照该程序执行以下过程:
确定天线的第一维波束向量以及所述天线的第二维波束向量;
对所述第一维波束向量进行分组得到多个第一维波束分组,以及对所述第二维波束向量进行分组得到多个第二维波束分组,其中,任意一个所述第一维波束分组中包含的多个第一维波束向量相互正交,任意一个所述第二维波束分组中的多个第二维波束向量相互正交;
分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,所述二维正交波束子组中包含多个相互正交的波束向量;
每次选择一组或多组二维正交波束子组,根据同时传输的数据流数目从每次选择一组或多组所述二维正交波束子组中选择波束向量,根据选择的所述波束向量以及所述数据流数目生成所述二维正交波束子组对应的预编码矩阵;
确定所有或部分所述二维正交波束子组对应的预编码矩阵组成的集合为所述数据流数目对应的码本。
较佳地,每个第一维波束分组包含相同数目的第一维波束向量,每个第二维波束分组包含相同数目的第二维波束向量;
相邻的第一维波束分组内包含至少一个不重叠的第一维波束向量,相邻第二维波束分组内包含至少一个不重叠的第二维波束向量。
较佳地,所述预编码矩阵为W=W1W2,其中W1为第一级码本,W2为第二级码本;
其中,
Figure PCTCN2016102627-appb-000090
Z1表示第一矩阵,Z2表示第二矩阵,所述第一矩阵由所述一组或多组所述二维正交波束子组构成,所述第二矩阵根据所述第一矩阵确定,所述第二级码本用于从所述第一级码本中选择多列波束向量并进行相位调整后确定所述预编码矩阵。
较佳地,所述第二矩阵根据所述第一矩阵确定,具体为:
Z2=Z1;或者,
Figure PCTCN2016102627-appb-000091
或者,
Figure PCTCN2016102627-appb-000092
或者,
Figure PCTCN2016102627-appb-000093
其中,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di表示大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000094
表示K1维的单位矩阵,
Figure PCTCN2016102627-appb-000095
表示K2维的单位矩阵。
较佳地,所述预编码矩阵为
Figure PCTCN2016102627-appb-000096
其中,W表示所述预编码矩阵,r表示所述预编码矩阵的列数以及所述数据流数目,Yi表示所述选择的波束向量,αi表示极化方向间的相位调整因子,Y′i根据Yi确定,i=1,2......,r。
较佳地,所述Y′i根据Yi确定,具体为:
Y′i=Yi;或者,
Figure PCTCN2016102627-appb-000097
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000098
表示向下取整;或者,
Figure PCTCN2016102627-appb-000099
Yi=X(:,li),其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000100
表示向下取整;或者,
Figure PCTCN2016102627-appb-000101
Yi=X(:,li),其中,X表示 第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
Figure PCTCN2016102627-appb-000102
表示向下取整。
在一种可能的实现中,该设备可以是终端或者基站。该设备也可以是除基站和终端之外的其它设备。该其它设备的处理器获取基站和终端之间同时传输的数据流数目,按照该数据流数目生成对应的码本后,将该数据流数目对应的码本配置给基站和终端。若该设备为终端,则该终端的处理器生成数据流数目对应的码本后,将该数据流数目与码本之间的对应关系保存至存储器中。若该设备为基站,则该基站的处理器生成数据流数目对应的码本后,将该数据流数目与码本之间的对应关系保存至存储器中。
其中,处理器和存储器通过总线连接,总线架构可以包括任意数量的互联的总线和桥,具体由处理器代表的一个或多个处理器和存储器代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。处理器负责管理总线架构和通常的处理,存储器可以存储处理器在执行操作时所使用的数据。
基于同一发明构思,本发明实施例中还提供了一种终端,该终端的具体实施可参见上述方法实施例部分的相关描述,如图13所示,该终端主要包括处理器1301、存储器1302和收发机1303,其中,收发机1303在处理器1301的控制下接收和发送数据,存储器1302中保存有预设的程序,处理器1301读取存储器1302中保存的程序,按照该程序执行以下过程:
确定同时传输的数据流数目;
根据数据流数目与码本的对应关系,确定所述数据流数目对应的码本,从确定的码本中选择一个预编码矩阵;
通过收发机1303发送选择的预编码矩阵在所述码本中的索引的指示信息;
其中,所述数据流数目对应的码本采用步骤101至步骤105所述的方法生成。
其中,处理器、存储器以及收发机通过总线连接,总线架构可以包括任意数量的互联的总线和桥,具体由处理器代表的一个或多个处理器和存储器代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电 路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器负责管理总线架构和通常的处理,存储器可以存储处理器在执行操作时所使用的数据。
基于同一发明构思,本发明实施例中还提供了一种基站,该基站的具体实施可参见上述方法实施例部分的相关描述,如图14所示,该基站主要包括处理器1401、存储器1402和收发机1403,其中,收发机1403在处理器1401的控制下接收和发送数据,存储器1402中保存有预设的程序,处理器1401读取存储器1402中保存的程序,按照该程序执行以下过程:
通过收发机1403接收预编码矩阵在码本中的索引的指示信息;
获取同时传输的数据流数目,并获取所述数据流数目对应的码本,根据所述索引的指示信息从所述数据流数目对应的码本中选择预编码矩阵;
其中,所述数据流数目对应的码本采用步骤101至步骤105所述的方法生成。
其中,处理器、存储器以及收发机通过总线连接,总线架构可以包括任意数量的互联的总线和桥,具体由处理器代表的一个或多个处理器和存储器代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器负责管理总线架构和通常的处理,存储器可以存储处理器在执行操作时所使用的数据。
基于上述技术方案,本发明实施例中,通过对天线的第一维波束向量以及第二维波束向量进行分组,得到多个第一维波束分组以及多个第二维波束分组,分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,根据同时传输的数据流数目以及一个或多个二维正交波束子组中生成对应的预编码矩阵,从而能够根据每个二维正交波束子组得到多个与该数据流数目对应的预编码矩阵,由该数据流数目对应的多个预编码矩阵确定该数据流数目对应的码本,从而给出了同时传输的数据流数rank大于1的时的码本设计方案,该设计方案同时利用了水平维和垂直维的正交性,适用于3D MIMO天线阵列。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机 可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (16)

  1. 一种码本生成方法,其特征在于,包括:
    确定天线的第一维波束向量以及所述天线的第二维波束向量;
    对所述第一维波束向量进行分组得到多个第一维波束分组,以及对所述第二维波束向量进行分组得到多个第二维波束分组,其中,任意一个所述第一维波束分组中包含的多个第一维波束向量相互正交,任意一个所述第二维波束分组中的多个第二维波束向量相互正交;
    分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,所述二维正交波束子组中包含多个相互正交的波束向量;
    每次选择一组或多组所述二维正交波束子组,根据同时传输的数据流数目从选择的所述一组或多组所述二维正交波束子组中选择波束向量,根据选择的所述波束向量以及所述数据流数目生成所述二维正交波束子组对应的预编码矩阵;
    确定所有或部分所述二维正交波束子组对应的预编码矩阵组成的集合为所述数据流数目对应的码本。
  2. 如权利要求1所述的方法,其特征在于,每个第一维波束分组包含相同数目的第一维波束向量,每个第二维波束分组包含相同数目的第二维波束向量;
    相邻的第一维波束分组内包含至少一个不重叠的第一维波束向量,相邻第二维波束分组内包含至少一个不重叠的第二维波束向量。
  3. 如权利要求1所述的方法,其特征在于,所述预编码矩阵为W=W1W2,其中W1为第一级码本,W2为第二级码本;
    其中,
    Figure PCTCN2016102627-appb-100001
    Z1表示第一矩阵,Z2表示第二矩阵,所述第一矩阵由所述一组或多组所述二维正交波束子组构成,所述第二矩阵根据所述第一矩阵确定,所述第二级码本用于从所述第一级码本中选择多列波束向量并进行相位调整后确定所述预编码矩阵。
  4. 如权利要求3所述的方法,其特征在于,所述第二矩阵根据所述第一矩阵确定,具体为:
    Z2=Z1;或者,
    Figure PCTCN2016102627-appb-100002
    或者,
    Figure PCTCN2016102627-appb-100003
    或者,
    Figure PCTCN2016102627-appb-100004
    其中,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端 口数,Di表示大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
    Figure PCTCN2016102627-appb-100005
    表示K1维的单位矩阵,
    Figure PCTCN2016102627-appb-100006
    表示K2维的单位矩阵。
  5. 如权利要求1-4任一项所述的方法,其特征在于,所述预编码矩阵为
    Figure PCTCN2016102627-appb-100007
    其中,W表示所述预编码矩阵,r表示所述预编码矩阵的列数以及所述数据流数目,Yi表示所述选择的波束向量,αi表示极化方向间的相位调整因子,Y′i根据Yi确定,i=1,2......,r。
  6. 如权利要求5所述的方法,其特征在于,所述Y′i根据Yi确定,具体为:
    Y′i=Yi;或者,
    Figure PCTCN2016102627-appb-100008
    其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,
    Figure PCTCN2016102627-appb-100009
    表示向下取整;或者,
    Figure PCTCN2016102627-appb-100010
    其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
    Figure PCTCN2016102627-appb-100011
    表示向下取整;或者,
    Figure PCTCN2016102627-appb-100012
    其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
    Figure PCTCN2016102627-appb-100013
    表示向下取整。
  7. 一种预编码矩阵确定方法,其特征在于,包括:
    确定同时传输的数据流数目;
    根据数据流数目与码本的对应关系,确定所述数据流数目对应的码本,从确定的码本中选择一个预编码矩阵;
    发送选择的预编码矩阵在所述码本中的索引的指示信息;
    其中,所述数据流数目对应的码本采用权利要求1至6任一项所述的方法生成。
  8. 一种预编码矩阵确定方法,其特征在于,包括:
    接收预编码矩阵在码本中的索引的指示信息;
    获取同时传输的数据流数目,并获取所述数据流数目对应的码本,根据所述索引的指示信息从所述数据流数目对应的码本中选择预编码矩阵;
    其中,所述数据流数目对应的码本采用权利要求1至6任一项所述的方法生成。
  9. 一种码本生成装置,其特征在于,包括:
    第一确定模块,用于确定天线的第一维波束向量以及所述天线的第二维波束向量;
    分组模块,用于对所述第一确定模块确定的所述第一维波束向量进行分组得到多个第一维波束分组,以及对所述第一确定模块确定的所述第二维波束向量进行分组得到多个第二维波束分组,其中,任意一个所述第一维波束分组中包含的多个第一维波束向量相互正交,任意一个所述第二维波束分组中的多个第二维波束向量相互正交;
    计算模块,用于分别根据每个第一维波束分组与每个第二维波束分组之间的Kronecker积,确定对应的二维正交波束子组,所述二维正交波束子组中包含多个相互正交的波束向量;
    矩阵生成模块,用于每次选择一组或多组所述二维正交波束子组,根据同时传输的数据流数目从选择的所述一组或多组所述二维正交波束子组中选择波束向量,根据选择的所述波束向量以及所述数据流数目生成所述二维正交波束子组对应的预编码矩阵;
    第二确定模块,用于确定所有或部分所述二维正交波束子组对应的预编码矩阵组成的集合为所述数据流数目对应的码本。
  10. 如权利要求9所述的装置,其特征在于,每个第一维波束分组包含相同数目的第一维波束向量,每个第二维波束分组包含相同数目的第二维波束向量;
    相邻的第一维波束分组内包含至少一个不重叠的第一维波束向量,相邻第二维波束分组内包含至少一个不重叠的第二维波束向量。
  11. 如权利要求9所述的装置,其特征在于,所述预编码矩阵为W=W1W2,其中W1为第一级码本,W2为第二级码本;
    其中,
    Figure PCTCN2016102627-appb-100014
    Z1表示第一矩阵,Z2表示第二矩阵,所述第一矩阵由所述 一组或多组所述二维正交波束子组构成,所述第二矩阵根据所述第一矩阵确定,所述第二级码本用于从所述第一级码本中选择多列波束向量并进行相位调整后确定所述预编码矩阵。
  12. 如权利要求11所述的装置,其特征在于,所述第二矩阵根据所述第一矩阵确定,具体为:
    Z2=Z1;或者,
    Figure PCTCN2016102627-appb-100015
    或者,
    Figure PCTCN2016102627-appb-100016
    或者,
    Figure PCTCN2016102627-appb-100017
    其中,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di表示大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
    Figure PCTCN2016102627-appb-100018
    表示K1维的单位矩阵,
    Figure PCTCN2016102627-appb-100019
    表示K2维的单位矩阵。
  13. 如权利要求9-12任一项所述的装置,其特征在于,所述预编码矩阵为
    Figure PCTCN2016102627-appb-100020
    其中,W表示所述预编码矩阵,r表示所述预编码矩阵的列数以及所述数据流数目,Yi表示所述选择的波束向量,αi表示极化方向间的相位调整因子,Y′i根据Yi确定,i=1,2......,r。
  14. 如权利要求13所述的装置,其特征在于,所述Y′i根据Yi确定,具体为:
    Y′i=Yi;或者,
    Figure PCTCN2016102627-appb-100021
    其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,
    Figure PCTCN2016102627-appb-100022
    表示向下取整;或者,
    Figure PCTCN2016102627-appb-100023
    其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
    Figure PCTCN2016102627-appb-100024
    表示向下取整;或者,
    Figure PCTCN2016102627-appb-100025
    其中,X表示第一维波束分组X1与第二维波束分组X2之间的Kronecker积确定的所述二维正交波束子 组,li表示列索引号,即对应第i个数据流选择的波束向量,M2表示X2中包含的第二维波束向量的个数,Bi表示大小为K1×K1的对角矩阵,K1表示天线的第一维每个极化方向的端口数,Di为大小为K2×K2的对角矩阵,K2表示天线的第二维每个极化方向的端口数,
    Figure PCTCN2016102627-appb-100026
    表示向下取整。
  15. 一种预编码矩阵确定装置,其特征在于,包括:
    确定模块,用于确定同时传输的数据流数目;
    选择模块,用于根据数据流数目与码本的对应关系,确定所述确定模块确定的所述数据流数目对应的码本,从确定的码本中选择一个预编码矩阵;
    发送模块,用于发送所述选择模块选择的预编码矩阵在所述码本中的索引的指示信息;
    其中,所述数据流数目对应的码本采用权利要求1至6任一项所述的方法生成。
  16. 一种预编码矩阵确定装置,其特征在于,包括:
    接收模块,用于接收预编码矩阵在码本中的索引的指示信息;
    选择模块,用于获取同时传输的数据流数目,并获取所述数据流数目对应的码本,根据所述索引的指示信息从所述数据流数目对应的码本中选择预编码矩阵;
    其中,所述数据流数目对应的码本采用权利要求1至6任一项所述的方法生成。
PCT/CN2016/102627 2015-10-21 2016-10-19 码本生成方法、预编码矩阵确定方法及相关装置 WO2017067466A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201510688990.7 2015-10-21
CN201510688990 2015-10-21
CN201510695953.9 2015-10-22
CN201510695953.9A CN106612137B (zh) 2015-10-21 2015-10-22 码本生成方法、预编码矩阵确定方法及相关装置

Publications (1)

Publication Number Publication Date
WO2017067466A1 true WO2017067466A1 (zh) 2017-04-27

Family

ID=58556641

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/102627 WO2017067466A1 (zh) 2015-10-21 2016-10-19 码本生成方法、预编码矩阵确定方法及相关装置

Country Status (1)

Country Link
WO (1) WO2017067466A1 (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761354A (zh) * 2011-04-28 2012-10-31 上海贝尔股份有限公司 在网络设备中生成码本和相关数据的方法及装置
CN103929280A (zh) * 2014-03-31 2014-07-16 电信科学技术研究院 多级码本的生成方法和装置、以及码本反馈方法和装置
US20140355704A1 (en) * 2013-06-04 2014-12-04 Electronics And Telecommunications Research Institute Method and apparatus for forming beam through one-way cooperative channel

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761354A (zh) * 2011-04-28 2012-10-31 上海贝尔股份有限公司 在网络设备中生成码本和相关数据的方法及装置
US20140355704A1 (en) * 2013-06-04 2014-12-04 Electronics And Telecommunications Research Institute Method and apparatus for forming beam through one-way cooperative channel
CN103929280A (zh) * 2014-03-31 2014-07-16 电信科学技术研究院 多级码本的生成方法和装置、以及码本反馈方法和装置

Similar Documents

Publication Publication Date Title
WO2020156103A1 (zh) 信息反馈方法及装置
WO2018127044A1 (zh) 通信方法、基站和终端设备
JP6267336B2 (ja) プリコーディングマトリクス指標を決定する方法、受信装置、および送信装置
US11728867B2 (en) Method and apparatus for generating a channel state information report
KR102027075B1 (ko) 프리코딩 정보 송신 및 피드백 방법 및 장치
CN110581724B (zh) 信道状态信息反馈方法、预编码矩阵确定方法及装置
JP6553809B2 (ja) コーディング指示情報の伝送及びプリコーディングマトリックス確定の方法と装置
CN108631837B (zh) 信息的传输方法和设备
WO2014194525A1 (zh) 传输导频信号的方法、基站和用户设备
JP6556244B2 (ja) コードブック確定方法及び装置
EP3813269B1 (en) Channel estimation method and apparatus
US20200322933A1 (en) Method and apparatus for obtaining downlink channel information
JP7238167B2 (ja) プリコーディング行列表示及び決定方法、及び通信装置
JP2019509686A (ja) チャネル状態情報のフィードバック方法および装置
EP2707971A1 (en) Method and apparatus for generating codebooks and associated data in a network device
KR102132808B1 (ko) 어레이 안테나를 위한 채널 정보 피드백 방법 및 장치
CN111713054A (zh) 通信方法、通信装置和系统
CN106612137B (zh) 码本生成方法、预编码矩阵确定方法及相关装置
WO2017067466A1 (zh) 码本生成方法、预编码矩阵确定方法及相关装置
WO2020155116A1 (zh) 一种pmi上报方法及通信装置
CN111587543B (zh) 信道状态信息矩阵信息处理方法及通信装置
US10020856B2 (en) Method and apparatus for measuring and feeding back channel information
WO2024027388A1 (zh) 信道状态信息的上报方法及通信装置
WO2023184434A1 (zh) 基于码本的上行信道发送方法及装置
WO2019233340A1 (zh) 信道状态信息反馈方法、预编码矩阵确定方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16856897

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16856897

Country of ref document: EP

Kind code of ref document: A1