Embodiments of this application relate to the field of communications technologies, and more specifically, to a data processing method.
The following are some English acronyms and full names in English in this application:
A current wireless communications technology has been developed to an LTE system. Using
To enable the network device to communicate with the plurality of terminals at the same time, a multiple access technology is developed in the industry. The technology also becomes one of core technologies of a wireless communication physical layer, enabling a wireless network device to distinguish and simultaneously serve a plurality of terminals, and further reducing mutual interference (for example, multiple access interference) between the plurality of terminals. Most existing wireless communications systems use a simple orthogonal multiple access technology. To be specific, a plurality of terminals access a system by orthogonally dividing resources in different dimensions (frequency division, time division, code division, or the like). For example, an OFDMA multiple access technology currently used in the LTE system is one of orthogonal multiple access technologies.
A quantity of access terminals that can be accommodated in the orthogonal multiple access technology is in direct proportion to orthogonal resources, and a quantity of the orthogonal resources is limited by an orthogonal requirement. Therefore, service requirements such as continuous coverage in a large range in a future 5G network, large-capacity and large-scale connectivity in a hotspot area, and ultra-low latency access cannot be satisfied.
Embodiments of this application provide a data processing method and a device.
According to a first aspect, an embodiment of this application provides a data processing method, including: dividing, by a network device, data of any one (for example, a kth terminal) of N terminals scheduled on Q resource elements into Gk layers of data, where the network device transmits a maximum of G layers of data on the Q resource elements, where Gk is a positive integer, Gk<G, Q is a positive integer, Q<G, N is a positive integer, and N≤G; performing, by the network device, basic modulation on the Gk layers of data to obtain Dk basic modulation symbols, where Dk≥Gk, and Dk is a positive integer; combining, by the network device, the basic modulation symbols that are of the N terminals and that are obtained after the basic modulation to obtain a combined symbol vector X; and mapping, by the network device, the symbol vector X to the Q resource elements to obtain a data vector S, where a symbol quantity of the symbol vector X is greater than a symbol quantity of the data vector S, and the symbol quantity of the data vector S is Q.
In one embodiment, the mapping, by the network device, the symbol vector X to the Q resource elements to obtain a data vector S includes: mapping, by the network device, the symbol vector X to the Q resource elements by using a preprocessing operation to obtain the data vector S, where the preprocessing operation includes at least spreading and superposition.
In one embodiment, the preprocessing operation is: performing power adjustment first, then performing angle rotation, and then performing spreading and superposition; or performing angle rotation first, then performing power adjustment, and then performing spreading and superposition; or performing power adjustment and angle rotation first at the same time, and then performing spreading and superposition; or performing power adjustment, angle rotation, and spreading and superposition at the same time.
In one embodiment, the mapping, by the network device, the symbol vector X to the Q resource elements to obtain a data vector S is: S=F1F2F3X, S=F1F3F2X, S=F1F23X, S=F1F32X, or S=FX, where F23=F2F3, F32=F3F2, F=F1F2F3, or F=F1F3F2; and F1 is a non-orthogonal spreading and superposition matrix, F2 is an angle rotation matrix, and F3 is a power allocation matrix F3.
In one embodiment, at least one of F2 and F3 is an identity matrix.
In one embodiment, the mapping, by the network device, the symbol vector X to the Q resource elements to obtain a data vector S is: S=F1(F2(F3(X))), S=F1(F3(F2(X))), S=F1(F23(X)), S=F1(F32(X)), or S=F(X), where F23(⋅)=F3(F2(⋅)), F32(⋅)=F2(F3(⋅)), F=F1(F2(F3(⋅))), or F=F1(F3(F2(⋅))), where F1(⋅) is a non-orthogonal spreading and superposition function, F2(⋅) is an angle rotation function, and F3(⋅) is a power allocation function.
In one embodiment, at least one function of F2(⋅) and F3(⋅) has an output equal to an input.
In one embodiment, the Gk layers of data correspond to at least two basic modulation schemes.
In one embodiment, the Q resource elements are consecutive time-frequency resources.
In one embodiment, N=6, Q=4, and G=6. In other words, there are N=6 terminals and G=6 layers of data in total, and each terminal has one layer of data. k indicates any one of a first to a sixth terminals. Dk indicates a symbol quantity obtained by performing basic modulation on data of the kth terminal. It is assumed that D1=D2=D3=D4=D5=D6=2. In other words, a total quantity of basic modulation symbols is D=12. The spreading and superposition matrix is a regular spreading and superposition matrix:
the spreading and superposition function is:
where X(t) indicates a tth element in the basic modulation symbol vector X.
In one embodiment, N=5, Q=3, and G=5. In other words, there are N=5 terminals and G=5 layers of data in total, and each terminal has one layer of data. k indicates any one of a first to a fifth terminals. Dk indicates a symbol quantity obtained by performing basic modulation on data of the kth terminal. It is assumed that D1=3, D2=D3=2, and D4=D5=1. In other words, a total quantity of basic modulation symbols is D=9. The spreading and superposition matrix is an irregular spreading and superposition matrix:
the spreading and superposition function is:
where X(t) indicates a tth element in the basic modulation symbol vector X.
In one embodiment, the terminal is any one of the N terminals scheduled by the network device on the Q resource elements. The G layers of data are classified into H groups. Each group includes a same quantity of J=G/H layers of data. The J layers of data multiplex a completely same resource element in a superposition modulation scheme, a same spreading method, or the like. Data layers in a same group do not belong to a same terminal. Certainly, quantities of layers in the groups may be different.
In one embodiment, N=6, Q=4, and G=6. In other words, there are N=6 terminals and G=6 layers of data in total, and each terminal has one layer of data. k indicates any one of a first to a sixth terminals. Dk indicates a symbol quantity obtained by performing basic modulation on data of the kth terminal. It is assumed that D1=D2=D3=D4=D5=D6=1. In other words, a total quantity of basic modulation symbols is D=6. The N terminals are classified into H=3 groups. Each group has J=2 terminals. The spreading and superposition matrix is:
where cmv is a spreading coefficient, and a same configuration needs to be used on the network device and the terminal. m indicates a group number, v indicates a resource element sequence number, m=1, . . . , or H, and v=1, . . . , or Q.
Alternatively, the spreading and superposition function is:
where xm,j is a basic modulation symbol of a jth terminal of an mth group (m=1, 2, . . . , or H, and j=1, 2, . . . , or J).
According to a second aspect, a data processing method is provided. The method is performed by a terminal. The method includes: dividing, by the terminal, data sent on Q resource elements into Gk layers of data, where the terminal is any one (for example, a kth terminal) of N terminals scheduled by a network device on the Q resource elements, the network device receives a maximum of G layers of data on the Q resource elements, where Gk is a positive integer, Gk<G, Q is a positive integer, Q<G, N is a positive integer, and N≤G; performing, by the terminal, basic modulation on the Gk layers of data to obtain Dk basic modulation symbols, where Dk≥Gk, and Dk is a positive integer; combining, by the terminal, the Dk basic modulation symbols to obtain a combined symbol vector Xk; and mapping, by the terminal, the symbol vector Xk to the Q resource elements to obtain a data vector Sk, where a sum of symbol quantities of symbol vectors of the N terminals is greater than Q.
In one embodiment, the mapping, by the terminal, the symbol vector Xk to the Q resource elements to obtain a data vector Sk is: mapping, by the terminal, the symbol vector Xk to the Q resource elements by using a preprocessing operation to obtain the data vector Sk, where the preprocessing operation includes at least spreading and superposition.
In one embodiment, the preprocessing operation is: performing power adjustment first, then performing angle rotation, and then performing spreading and superposition; or performing angle rotation first, then performing power adjustment, and then performing spreading and superposition; or performing power adjustment and angle rotation first at the same time, and then performing spreading and superposition; or performing power adjustment, angle rotation, and spreading and superposition at the same time.
In one embodiment, the mapping, by the terminal, the symbol vector Xk to the Q resource elements to obtain a data vector Sk is: Sk=F1F2F3Xk, Sk=F1F3F2Xk, Sk=F1F23Xk, Sk=F1F32Xk, or Sk=FXk, where F23=F2F3, F32=F3F2, F=F1F2F3, or F=F1F3F2; and F1 is a non-orthogonal spreading and superposition matrix, F2 is an angle rotation matrix, and F3 is a power allocation matrix F3.
In one embodiment, at least one of F2 and F3 is an identity matrix.
In one embodiment, the mapping, by the terminal, the symbol vector Xk to the Q resource elements to obtain a data vector Sk is: Sk=F1(F2(F3(Xk))), Sk=F1(F3(F2(Xk))), Sk=F1(F23(Xk)), Sk=F1(F32(Xk)), or Sk=F(Xk), where F23(⋅)=F3(F2(⋅)), F32(⋅)=F2(F3(⋅)), F=F1(F2(F3(⋅))), or F=F1(F3(F2(⋅))), where F1(⋅) is a non-orthogonal spreading and superposition function, F2(⋅) is an angle rotation function, and F3(⋅) is a power allocation function.
In one embodiment, at least one function of F2(⋅) and F3(⋅) has an output equal to an input.
In one embodiment, the Gk layers of data correspond to at least two basic modulation schemes.
In one embodiment, the Q resource elements are consecutive time-frequency resources.
In one embodiment, Q=4, and G=6. In other words, there are G=6 layers of data in total. g indicates any one of a first to a sixth layers of data. dg indicates a symbol quantity obtained by performing basic modulation on a gth layer of data. It is assumed that d1=d2=d3=d4=d5=d6=2. In other words, a total basic modulation symbol quantity is D=12. Two symbols corresponding to a data layer 1 are mapped to a first and a third resource elements. Two symbols of a data layer 2 are mapped to a second and a fourth resource elements. A data layer 3 is mapped to the first and the second resource elements. A data layer 4 is mapped to the third and the fourth resource elements. A data layer 5 is mapped to the first and the fourth resource element. A data layer 6 is mapped to the second and the third resource elements. The terminal selects, based on a symbol corresponding to an occupied data layer, a spreading and superposition matrix belonging to the terminal from a spreading and superposition matrix of regular spreading of the following G layers of data:
or
the terminal selects, based on a symbol corresponding to an occupied data layer, a spreading and superposition function belonging to the terminal from a 0.7 spreading and superposition function of the following G layers of data:
where X(t) indicates a tth element in the basic modulation symbol vector X. For example, the terminal occupies the first layer of data that is mapped to the first and the third resource elements. A spreading and superposition matrix of the terminal is:
or
a spreading and superposition function of the terminal is:
where X(t) indicates a tth element in the basic modulation symbol vector Xk of the terminal.
In one embodiment, Q=3, and G=5. In other words, there are G=5 layers of data in total. g indicates any one of a first to a fifth layers of data. dg indicates a symbol quantity obtained by performing basic modulation on a gth layer of data. It is assumed that d1=3, d2=d3=2, and d4=d5=1. In other words, a total basic modulation symbol quantity is D=9. d1=3 symbols corresponding to a data layer 1 are mapped to a first, a second, and a third resource elements. Two symbols of a data layer 2 are mapped to the first and the second resource elements. A data layer 3 is mapped to the second and the third resource elements. A data layer 4 is mapped to the first resource element. A data layer 5 is mapped to the third resource element. The terminal selects, based on a symbol corresponding to an occupied data layer, a spreading and superposition matrix belonging to the terminal from a preprocessing operation matrix of regular spreading of the following G layers of data:
or
the spreading and superposition function is:
where X(t) indicates a tth element in the basic modulation symbol vector X. For example, the terminal occupies the first layer of data that is mapped to the first, the second, and the third resource elements. A spreading and superposition matrix of the terminal is:
or
a spreading and superposition function of the terminal is:
where X(t) indicates a tth element in the basic modulation vector Xk of the terminal.
In one embodiment, the terminal is any one of the N terminals scheduled by the network device on the Q resource elements. The G layers of data are classified into H groups. Each group includes a same quantity of J=G/H layers of data. The J layers of data multiplex a completely same resource element in a superposition modulation scheme, a same spreading method, or the like. Data layers in a same group do not belong to a same terminal. Certainly, quantities of layers in the groups may be different. Assuming that a terminal 1 occupies the first to a G1th data layers that are in different groups, the spreading and superposition matrix is:
where c1v is a spreading coefficient, and a same configuration needs to be used on the network device and the terminal. v indicates a resource element sequence number, and v=1, . . . , or Q.
Alternatively, the spreading and superposition function is:
where x1,g is a basic modulation symbol of the G1th layer (g=1, 2, . . . , or G1) of the terminal.
According to a third aspect, a network device is provided, including a modulation module, a combination module, a preprocessing operation module, and a processing module. The modulation module is coupled to the combination module, and the processing module is coupled to the modulation module and the preprocessing operation module. The processing module is configured to divide data of any one (for example, a kth terminal) of N terminals scheduled on Q resource elements into Gk layers of data. The processing module processes a maximum of G layers of data on the Q resource elements. Gk is a positive integer, Gk<G, Q is a positive integer, Q<G N is a positive integer, and N≤G. The modulation module is configured to perform basic modulation on the Gk layers of data to obtain Dk basic modulation symbols, where Dk≥Gk, and Dk is a positive integer. The combination module is configured to combine the basic modulation symbols that are of the N terminals and that are obtained after the basic modulation to obtain a combined symbol vector X. The preprocessing operation module is configured to map the symbol vector X to the Q resource elements to obtain a data vector S, where a symbol quantity of the symbol vector X is greater than a symbol quantity of the data vector S, and the symbol quantity of the data vector S is the quantity Q of the resource elements.
In one embodiment, that the preprocessing operation module is configured to map the symbol vector X to the Q resource elements to obtain a data vector S includes: the preprocessing operation module is configured to map the symbol vector X to the Q resource elements by using a preprocessing operation to obtain the data vector S, where the preprocessing operation includes at least spreading and superposition.
In one embodiment, the preprocessing operation module includes the following modules: a power adjustment module, an angle rotation module, and a spreading and superposition module. The power adjustment module is configured to adjust power of the basic modulation symbol. The angle rotation module is configured to rotate an angle of the basic modulation symbol. The spreading and superposition module is configured to perform spreading and superposition on the basic modulation symbol. The power adjustment module is coupled to the combination module and the angle rotation module, and the angle rotation module is coupled to the power adjustment module and the spreading and superposition module. Alternatively, the angle rotation module is coupled to the combination module and the power adjustment module, and the power adjustment module is coupled to the spreading and superposition module and the angle rotation module.
In one embodiment, the power adjustment module and the angle rotation module are combined into a power adjustment and angle rotation module. The power adjustment and angle rotation module is configured to perform power adjustment and angle rotation on the basic modulation symbol at the same time.
A function of combining the power adjustment module and the angle rotation module into the power adjustment and angle rotation module may be implemented by using a matrix or by using a function. For details, refer to descriptions in a related possible design of the first aspect.
There are at least two basic modulation schemes corresponding to the Gk layers of data. For details, refer to descriptions in a related possible design of the first aspect.
According to a fourth aspect, a terminal is provided. The terminal is one (for example, a kth terminal) of N terminals scheduled by a network device on Q resource elements. The network device receives a maximum of G layers of data on the Q resource elements. The terminal includes a modulation module, a combination module, a preprocessing operation module, and a processing module. The modulation module is coupled to the combination module, the combination module is coupled to the modulation module and the preprocessing operation module, and the processing module is coupled to the modulation module and the preprocessing operation module. The processing module is configured to divide data sent on the Q resource elements into Gk layers of data. Gk is a positive integer, Gk<G, Q is a positive integer, Q<G, N is a positive integer, and N≤G. The modulation module is configured to perform basic modulation on the Gk layers of data to obtain Dk basic modulation symbols, where Dk≥Gk, and Dk is a positive integer. The combination module is configured to combine the Dk basic modulation symbols to obtain a combined symbol vector Xk. That the preprocessing operation module is configured to map the symbol vector Xk to the Q resource elements to obtain a data vector Sk, where a sum of symbol quantities of symbol vectors of the N terminals is greater than Q.
In one embodiment, that the preprocessing operation module is configured to perform a preprocessing operation on the symbol vector Xk includes: the preprocessing operation module is configured to map the symbol vector Xk to the Q resource elements by using the preprocessing operation to obtain the data vector Sk, where the preprocessing operation includes at least spreading and superposition.
In one embodiment, the preprocessing operation module includes the following modules: a power adjustment module, an angle rotation module, and a spreading and superposition module. The power adjustment module is configured to adjust power of the basic modulation symbol. The angle rotation module is configured to rotate an angle of the basic modulation symbol. The spreading and superposition module is configured to perform spreading and superposition on the basic modulation symbol. The power adjustment module is coupled to the combination module and the angle rotation module, and the angle rotation module is coupled to the power adjustment module and the spreading and superposition module. Alternatively, the angle rotation module is coupled to the combination module and the power adjustment module, and the power adjustment module is coupled to the spreading and superposition module and the angle rotation module.
In one embodiment, the power adjustment module and the angle rotation module are combined into a power adjustment and angle rotation module. The power adjustment and angle rotation module is configured to perform power adjustment and angle rotation on the basic modulation symbol at the same time.
A function of combining the power adjustment module and the angle rotation module into the power adjustment and angle rotation module may be implemented by using a matrix or by using a function. For details, refer to descriptions in a related possible design of the second aspect.
There are at least two basic modulation schemes corresponding to the Gk layers of data. For details, refer to descriptions in a related possible design of the second aspect.
In the foregoing first and third aspects, before performing basic modulation, the network device may first determine control information, for example, a terminal supported by the network device, a data layer number (including the layer quantity Gk) occupied by each terminal, a basic modulation scheme corresponding to each layer of data, a quantity Q of resource elements for spreading, and a preprocessing operation mode. In the control information, information other than information about the terminal supported by the network device may either be determined by the network device and then notified to each terminal by using signaling, or separately stored by the network device and each terminal through agreement in advance. For example, the network device and each terminal may agree in advance on the data layer quantity Gk and the basic modulation scheme that correspond to the terminal. The specific quantity Q of resource elements and preprocessing operation mode are notified by the network device to the terminal by using signaling.
In the foregoing second and fourth aspects, before the terminal performs basic modulation, control information that needs to be determined includes an occupied data layer number (including the layer quantity Gk), a basic modulation scheme corresponding to each layer of data, a quantity Q of resource elements for spreading, and a preprocessing operation mode. The control information may either be determined by the network device and then notified to the terminal by using signaling, or separately stored by the network device and the terminal through agreement in advance. For example, the network device and the terminal may agree in advance the data layer quantity Gk and the basic modulation scheme that correspond to the terminal. The specific quantity Q of resource elements and preprocessing operation mode are notified by the network device to the terminal by using signaling.
The network device in the foregoing aspects may be a base station, or may be another network side device having a function similar to that of the base station.
The resource element (RE) in the foregoing aspects is a minimum granularity for time-frequency resource allocation.
The basic modulation scheme for each layer of data in the foregoing aspects is modulating mk,g bits into dk,g basic modulation symbols based on a modulation order mk,g of the gth data layer of the kth terminal, where dk,g≥1. When dk,g>1, the dk,g basic modulation symbols obtained by modulating the mk,g bits may be obtained based on a same modulation scheme, or may be obtained based on dk,g modulation schemes independent of each other, or may be obtained through modulation based on dk,g constellation diagrams obtained by rotating a same modulation constellation diagram by dk,g different angles.
The spreading and superposition in the foregoing aspects may be irregular spreading or may be regular spreading for each of the G layers of data.
After the solutions of the present disclosure are used, non-orthogonal spreading and superposition transmission of a plurality of terminals can be implemented in both uplink and downlink, thereby effectively improving transmission efficiency.
In the embodiments of this application, one network device may communicate with a plurality of terminals. As shown in
An SCMA technology is a typical non-orthogonal multiple access and transmission technology, in which a total of G layers of data streams of N terminals (where N and G are integers not less than 1, and N≤G) are superposed to Q (where Q is an integer not less than 1, and usually, G>Q) REs (which are minimum granularities for time-frequency resource allocation) for sending. Each data symbol of each layer of data stream is extended to the Q REs in a sparse spreading method. The Q REs may be Q consecutive subcarriers in a same symbol, or may be Q consecutive symbols on a same subcarrier, or may be Q consecutive REs in another form. When a value of G is greater than that of Q, the layers of data are definitely non-orthogonal. This type of technology can effectively increase a network capacity, including a quantity of terminals that can access a system, spectrum efficiency, and the like. In a process of sending a signal in the SCMA technology, an encoded bit is modulated into a corresponding multi-dimensional symbol by using a codebook prestored at each data layer and is mapped to an RE at a corresponding location. The codebook includes both multi-dimensional modulation symbol information and a spreading rule. Therefore, a codebook design has crucial impact on system performance (especially downlink performance) using the SCMA technology. An LDS technology is similar to the SCMA technology except that symbols sent by a terminal on different REs are not multi-dimensional modulation symbols but repeated QAM symbols. For downlink transmission in the SCMA and LDS, angle rotation needs to be performed on symbols of a non-orthogonal data layer of equal power to ensure unique solvability of superposed symbols.
MUSA is a non-orthogonal multiple access solution in code domain. In this solution, a predesigned sequence (with a low cross-correlation) is used for spreading of a data symbol, making it easy for a receive end to use a SIC receiving mode. In a MUSA system, superposed transmission is performed on spreading symbols of all terminals on a same spectrum resource, and a codeword-level SIC receiver is used on a receive end of the spreading symbols. A non-binary spreading sequence is used in MUSA uplink, and this is non-sparse spreading. There is a power difference between symbols in a same group in MUSA downlink, and it is ensured that superposed symbols comply with a modulation rule of a Gray constellation.
PDMA is a non-orthogonal access solution that further increases a system capacity by introducing diversity between terminals. At a transmit end, a PDMA terminal uses a non-orthogonal transmission pattern in time, frequency, space, code domain, and other dimensions. At a receive end, a BP-IDD algorithm may be used.
A spreading method of the PDMA is different from that of the SCMA. To be specific, there are both sparse and non-sparse spreading layers, making the spreading irregular. Regular spreading herein means that spreading factors (or referred to as spreading multiples) of all layers of data are consistent. The irregular spreading means that all layers of data have respective independent spreading factors. A modulation symbol of the PDMA is also a common QAM symbol, and a transmission symbol of the PDMA is also generated in a form similar to an SCMA codebook.
All of the foregoing solutions can increase a system capacity in a non-orthogonal manner, but specific implementation details are not considered. This application provides specific implementations.
Usually, it is assumed that the Q REs support the G layers of data in total from the N terminals, and data of a kth terminal occupies Gk layers, meeting G=G1+G2+ . . . +Gk+ . . . +GN. Because non-orthogonal transmission is considered in this application, G>Q. To be specific, an overload probability is G/Q. It should be noted that the Q REs may be Q symbols occupying a same subcarrier, or may be Q subcarriers occupying a same symbol, or may be Q consecutive REs in another form. The Q consecutive REs are selected to ensure that a corresponding channel does not change greatly. In
Specifically, for a kth terminal in N terminals, it is assumed that a quantity of data layers occupied by data of the kth terminal is Gk. A specific process of modulation 300 is shown in
Herein, the basic modulation is different from conventional modulation. For example, conventionally, QPSK is mapping every two bits of encoded information bits into one QPSK symbol based on a constellation diagram. However, in the basic modulation in this application, referring to
Based on the procedure shown in
For uplink transmission, for modulation and a preprocessing operation procedure on a terminal side, refer to
Descriptions are provided below by using embodiments.
Before a network device performs modulation and a preprocessing operation shown in
For example, it may be assumed that currently the network device supports N=6 terminals multiplexed on Q=4 REs, and each terminal has one layer of data. To be specific, G1=G2=G3=G4=G5=G6=1 (because a value of Gk of each terminal is 1, for ease of description, subscripts relating to Gk are all omitted, the same below). In this case, G=6, and an overload probability is G/Q=150%. Each layer of data is mapped to two symbols after basic modulation. In other words, d1=d2=d3=d4=d5=d6=2. Because each terminal occupies only one layer of data, D1=D2=D3=D4=D5=D6=2, and there are D=d1+d2+d3+d4+d5+d6=12 symbols in total. These parameters are listed in Table 1. These parameters are all determined by the network device and notified to each terminal. The notified content further includes a number of a layer at which the data of each terminal is located. Subsequently, the network device performs a preprocessing operation including power allocation, angle rotation, and spreading and superposition on the data of all the terminals after the basic modulation and then proceeds to further processing. The further processing herein includes but is not limited to an operation such as an IFFT transform. Because quantities of basic modulation symbols mapped at all the layers are the same, this is also referred to as regular spreading. For a corresponding schematic diagram of spreading, refer to
It can be learned from
After determining all these parameters and spreading methods and completing modulation of each layer of data based on the basic modulation scheme of each layer of data, the network device enters the preprocessing operation. As shown in
(1) The Preprocessing Operation is Implemented by Using a Precoding Matrix.
When the precoding matrix is used for implementation, a symbol vector S (Q×1 dimensions) that is used for further processing and that occupies code blocks of the Q REs may be expressed as:
F1 is a non-orthogonal spreading and superposition matrix of Q×D dimensions. F2 is an angle rotation matrix of D×D dimensions. F3 is a power allocation matrix of D×D dimensions. X is a basic modulation symbol vector. In the formula, a correspondence between F1, F2, F3, and X and each matrix is also applicable to another expression in this application. In X, xki (k=1, 2, . . . , 6, i=1, 2) indicates an ith symbol in dk=2 symbols in total that are obtained by performing basic constellation modulation on mk bits of a kth terminal (in this example, each terminal has one layer of data, and therefore, this is also a kth layer). In spreading methods corresponding to
where αki=θkipki, and is a complex number for indicating power and angle adjustment. In some cases in which receiving is not affected, F3, F2, or F23 may alternatively be an identity matrix, indicating that either of power adjustment or angle adjustment is not performed, or neither of power adjustment and angle adjustment is performed. This is also applicable to the following other embodiments. Alternatively, all steps may further be combined into a precoding matrix F, namely,
The matrix F is used to adjust the basic modulation symbol X. F may include the following two cases. In either case, a same configuration needs to be used at the receive end and the transmit end.
(1.1) αk1=αk2, to be specific, the basic modulation symbol vector X is used only for power and angle adjustment on different data layers, but same power is allocated to and rotation by a same angle is performed on different symbols within a same data layer.
(1.2) αk1≠αk2, ∀k, to be specific, different power is allocated to and rotation by different angles is performed on dk different basic modulation symbols within a same data layer.
(2) The Preprocessing Operation is Implemented by Using a Function.
When the preprocessing operation is implemented by using a function, a symbol vector used for further processing may be expressed as S=F1(F2(F3 (X))). An input vector may be expressed by the following expression: X=[x11,x12,x21,x22,x31,x32,x41,x42,x51,x52,x61,x62]T. T indicates a transpose operation. To be specific, X is a set of 12 sequentially sorted symbols in total obtained after basic modulation constellation mapping is performed on six layers of information bits:
where X(t) indicates a tth element in the vector X. An operator “*” in “P*X” indicates a Hadamard product of two vectors or matrixes, that is, indicates operation of directly multiplying elements at corresponding locations of two vectors or matrixes. Operations on F2(⋅) and F3(⋅) may be performed in a reverse order. To be specific, S=F1(F2(F3 (X))). Alternatively, F2(⋅) and F3(⋅) may be combined into F23(⋅). To be specific, S=F1(F23(X)). F23(⋅)=F3(F2(x)), or S=F1(F32(X)). F32(⋅)=F2F3(x)).
F
23(X)=α*X=[α11,α12,α21,α22,α31,α32,α41,α42,α51,α52,α61,α62]T*X
where αki=θkipki. The three steps may alternatively be combined into one function, S=F(X), and
It is easily learned that a function implementation solution and a precoding matrix implementation solution are substantially the same, except that forms of expression are different. This is the same in the following embodiments. Details are not described again. Therefore, similarly, in some cases in which receiving is not affected, F3, F2, or F23 may alternatively be a pass-through function, in other words, an input is equal to an output, indicating that either of power adjustment or angle adjustment is not performed, or neither of power adjustment and angle adjustment is performed. This is also applicable to the following other embodiments.
In either of the foregoing two methods, after receiving S obtained through detection, the terminal may work out the basic modulation symbol of the terminal based on a basic modulation scheme notified in advance or prestored by the network device, the data layer number occupied by the terminal, precoding matrix information, or function information. Then an encoded information bit can be restored based on a basic modulation constellation diagram and is further decoded.
Embodiment 1 provides a procedure instance of downlink modulation and a preprocessing operation of regular spreading. In contrast, this embodiment provides a procedure instance of downlink modulation and a preprocessing operation of irregular spreading.
Similarly, before a network device performs modulation and a preprocessing operation shown in
For example, it may be assumed that currently the network device supports N=5 terminals multiplexed on Q=3 REs, and each terminal has one layer of data. To be specific, G1=G2=G3=G4=G5=1. In this case, G=5, and an overload probability is G/Q=166.7%. Each layer of data is mapped to a different quantity of symbols after basic modulation. In other words, d1=3, d2=d3=2, and d4=d5=1. Because each terminal occupies only one layer of data, subscripts relating to Gk are all omitted. Therefore, D1=3, D2=D3=2, D4=D5=1, and there are D=d1+d2+d3+d4+d5=9 symbols in total. These parameters are listed in Table 2. These parameters are all determined by the network device and notified to each terminal. The notified content further includes a number of a layer at which the data of each terminal is located. Subsequently, the network device performs a preprocessing operation including power allocation, angle rotation, and spreading and superposition on the data of all the terminals after the basic modulation and then proceeds to further processing. The further processing herein includes but is not limited to an operation such as an IFFT transform. Because quantities of basic modulation symbols mapped at all the layers are different, this is also referred to as irregular spreading.
It can be learned from
After determining all these parameters and spreading methods and completing modulation of each layer of data based on the basic modulation scheme of each layer of data, the network device enters the preprocessing operation. As shown in
(1) The Preprocessing Operation is Implemented by Using a Precoding Matrix.
When the precoding matrix is used for implementation, a symbol vector S used for further processing may be expressed as:
Meanings of the matrixes F1, F2, and F3 are similar to those in Embodiment 1, and are not described in detail herein. X is a symbol vector obtained after the basic modulation is performed on each layer of information bits. Herein, it is assumed that x11=x12=x13, X21=x22, and x31=x32. To be specific, a same modulation constellation diagram mapping method is used for symbols of a same layer (certainly, different methods may alternatively be used, depending on a specific basic modulation scheme, and this is merely an example herein). A power allocation matrix F3 and an angle rotation matrix F2 are both diagonal matrixes of D=9 dimensions, and may be in a reverse order. The spreading and superposition matrix F1 is a matrix of 3×9 dimensions, and a symbol vector S of 3×1 dimensions is finally output.
Similarly, F2 and F3 may alternatively be combined into F23 or F32. To be specific,
where αki=θkipki (k indicates a terminal number, and i indicates an ith symbol of a kth terminal). In some cases in which receiving is not affected, F3, F2, or F23 may alternatively be an identity matrix, indicating that either of power adjustment or angle adjustment is not performed, or neither of power adjustment and angle adjustment is performed. This is also applicable to the following other embodiments. The three steps are combined into a precoding matrix F. To be specific,
(2) The Preprocessing Operation is Implemented by Using a Function.
When the preprocessing operation is implemented by using a function, a symbol vector used for further processing may be expressed as S=F1(F2(F3(X))). An input vector X=[x11,x12,x13,x21,x22,x31,x32,x41,x51]T, and is a set of a plurality of sequentially sorted symbols obtained after basic modulation constellation mapping is performed on five layers of information bits.
where X(t) indicates a tth element in the vector X, and operations on F2(⋅) and F3(⋅) may be performed in a reverse order. Alternatively, F2(⋅) and F3(⋅) may be combined into F23(⋅). To be specific, S=F1(F23(X)), and F23(X)=α*X=[α11,α12,α13,α21,α22,α31,α32,α41,α51]T*X. Therefore, similarly, in some cases in which receiving is not affected, F3, F2, or F23 may alternatively be a pass-through function, in other words, an input is equal to an output, indicating that either of power adjustment or angle adjustment is not performed, or neither of power adjustment and angle adjustment is performed. This is also applicable to the following other embodiments. Similarly, the three steps may alternatively be combined into one function, S=F(X), and
Similarly, in either of the foregoing two methods, after receiving S obtained through detection, the terminal may work out the basic modulation symbol of the terminal based on a basic modulation scheme notified in advance or prestored by the network device, the data layer number occupied by the terminal, precoding matrix information, or function information. Then an encoded information bit can be restored based on a basic modulation constellation diagram and is further decoded.
This embodiment provides another downlink preprocessing operation method. A network device schedules N terminals. A total of G layers of data are classified into H groups. It is assumed that each group includes a same quantity of J=G/H layers of data. The J layers of data may multiplex completely same REs by using a superposition modulation scheme and a same spreading method. Data layers in a same group do not belong to a same terminal. Certainly, quantities of layers in the groups may be different (a specific value of J and a power difference between the J layers of data are determined based on a specific superposition modulation scheme, and this is not limited herein). In this embodiment, data of each group of terminals is spread, in a manner similar to that in CDMA, to the Q REs for transmission. Spreading methods for a same group of terminals are consistent. In other words, columns in a precoding matrix F1 that correspond to data of a same group of terminals need to be completely consistent. However, in Embodiment 1 and Embodiment 2, columns in a precoding matrix F1 that correspond to a same layer of data need to be inconsistent. This is a biggest difference between this embodiment and Embodiment 1 and Embodiment 2. Therefore, to be consistent with forms of embodiments 1 and 2, in this embodiment, a basic modulation symbol of each layer is set to 1. Mapping of the symbol to the REs is implemented by using a spreading and superposition matrix or a spreading and superposition function.
Similarly, before the network device performs modulation and a preprocessing operation shown in
Herein, an example is used to describe a downlink symbol generation procedure. It is assumed that the network device is to use Q=4 (that is, a spreading length is 4) REs to transmit data of N=6 terminals. Each terminal transmits one layer. To be specific, G=N. Each layer maps only dk=1 basic modulation symbol and then the basic modulation symbol is spread to Q=4 symbols. To be specific, d1=d2=d3=d4=d5=d6=1. Because each terminal occupies only one layer of data, D1=D2=D3=D4=D5=D6=1. A conventional constellation diagram may be used as a constellation diagram of basic modulation. The terminals may be classified into H=3 groups, and J=N/H=2 terminals in each group may be superposed by using a superposition modulation scheme. In this way, the following preprocessing operation may be performed after the basic modulation is performed for N=6 users. For specific parameters, refer to Table 3. These parameters are determined by the network device and notified to each terminal. The notified content further includes a number of a layer at which the data of each terminal is located. Compared with Table 1, in Table 3, only distribution of basic modulation symbol quantities of the data layers is changed and a spreading factor is added. A value of the spreading factor indicates a quantity of REs to which each basic modulation symbol is spread. Mapping of each layer of data to the REs may be obtained based on Table 3. For this, refer to
(1) The Preprocessing Operation is Implemented by Using a Precoding Matrix.
First, the network device performs basic modulation on the data of the terminals based on the procedure of
Then the network device sets, based on a requirement of a multiplexing modulation scheme such as superposition modulation, a power adjustment factor pn,j and an angle adjustment factor θn,j that correspond to each basic modulation symbol. Especially for terminals in a same group, corresponding power adjustment factors need to be set based on different superposition modulation principles. In this case, F2 and F3 may be designed in the manner in Embodiment 1 and Embodiment 2, but some changes need to be made for F1. Q spreading coefficients may be further designed for each group of terminals. cm,v is a vth spreading coefficient (v=1, 2, . . . , or Q) of an mth group of terminals. It can be learned that spreading coefficients of data of a same group are consistent.
In this case, a symbol vector S used for further processing may be expressed as:
This example may not be related to angle rotation. Therefore, it may be assumed that an angle rotation factor is 1. To be specific, F2 is an identity matrix. In this case, based on an overall precoding matrix form, the symbol vector S may be expressed as:
As can be learned from comparison with F1 in Embodiment 1 and Embodiment 2, F1 in Embodiment 1 and Embodiment 2 may be considered as a special case in which values 1 and 0 are set for cm,v in F1 in this embodiment. It may be considered that, F1 in Embodiment 1 and Embodiment 2 indicates selection of a spreading location for a basic modulation symbol. However, for F1 in this embodiment, all Q spreading locations are selected, and a further spreading operation is performed by using the spreading coefficient cm,v. Therefore, the network device and the terminal further need to store all spreading coefficients cm,v. If there are a plurality of groups of different spreading coefficients, the network device further needs to notify the terminal of a used group of spreading coefficients. In addition, in this example, there are only H=3 groups of terminals, and each terminal has only one layer of data. However, there is actually no limitation. There may be a maximum of H=Q groups of terminals, and each terminal may have H layers of data. To be specific, it only needs to ensure that there are no duplicate terminals in each group.
(2) The Preprocessing Operation is Implemented by Using a Function.
A downlink symbol vector used for further processing in this embodiment may alternatively be obtained by using a basic modulation symbol set and based on a precoding function, namely,
S=F(X),
where X=[x11 x12 x21 x22 x31 x32]T is a basic modulation symbol vector of each group, and the function F is:
A definition of each element is the same as that in the precoding matrix solution in this embodiment. Details are not described herein again. Similarly, the network device and the terminal further need to store all spreading coefficients cm,v. If there are a plurality of groups of different spreading coefficients, the network device further needs to notify the terminal of a used group of spreading coefficients. This example may not be related to angle rotation. Therefore, it may be assumed that an angle rotation factor is 1, or an item of an angle rotation factor may be omitted. For ease of description, the item of an angle rotation factor is omitted in the following expressions. In this case, an overall precoding function F(⋅) may alternatively be decomposed into a spreading and superposition function F1(⋅) and a power allocation function F3(⋅), to be specific,
S=F
1(F3(X)),
where
In either of the foregoing two methods, after receiving S obtained through detection, the terminal may work out the basic modulation symbol of the terminal based on a basic modulation scheme notified in advance or prestored by the network device, the layer number occupied by the terminal, precoding matrix information, or function information. Then an encoded information bit can be restored based on a basic modulation constellation diagram and is further decoded.
Embodiment 1 to Embodiment 3 discuss a case of downlink transmission. Correspondingly, this embodiment, Embodiment 5, and Embodiment 6 discuss how to perform data modulation and a preprocessing operation in uplink transmission.
Corresponding to Embodiment 1, referring to
If a quantity Dk of basic modulation symbols when the terminal sends data is equal to or less than the quantity Q of REs, each layer of data may occupy a different RE. Steps of power allocation and angle rotation in the preprocessing operation may be omitted (in terms of a form, matrixes F2 and F3 are identity matrixes, or inputs of functions F2(⋅) and F3(⋅) are equal to outputs).
For example, it may be assumed that currently the network device supports an example in which G=6 layers of data are multiplexed on Q=4 REs. To be specific, an overload probability is G/Q=150%. Each layer of data is mapped to two symbols after basic modulation. In other words, dg=2, g=1, . . . , or G and there are D=12 symbols in total. These parameters are listed in Table 4. These parameters are all determined by the network device and notified to each terminal. The notified content includes a number of a layer at which the data of each terminal is located. Compared with the parameters in Table 1, an only difference is that the mode is changed from downlink to uplink. However, it should be noted that, distribution of data layers in the terminals is not yet discussed herein. For spreading mapping corresponding to each layer of data in Table 4, refer to
(1) A Case in which One Terminal Occupies One Data Layer
It is assumed that a terminal uses, based on a scheduling result of the network device, a data layer 1 (Gk=1) for uplink transmission. Therefore, based on
(1-1) The Preprocessing Operation is Implemented by Using a Precoding Matrix.
A symbol vector S used for further processing may be expressed as:
Two identity matrixes indicate that neither power nor an angle is adjusted. Therefore, sometimes F2 and F3 may be directly omitted. In other words, S=FX=F1X. This principle is also applicable to the following embodiments. Two columns of the matrix F1 are orthogonal to each other. X is two different basic modulation symbols to which a first layer of data bits are mapped. To be specific, x11≠x12. (certainly, x11 may alternatively be the same as x12, and this needs to be determined based on a specific basic modulation scheme). Alternatively, F and F may be combined into F23, to be specific,
Alternatively, power allocation and angle rotation may be omitted, and a form of uniform precoding F is used for writing, to be specific,
(1-2) The Preprocessing Operation is Implemented by Using a Function.
A symbol vector S used for further processing may be expressed as:
S=F
1(F2(F3(X))),
where
where X(t) indicates a tth element in the vector X, F2(⋅) and F3(⋅) may be in a reverse order, and S=F1(F3(F2(X))). Alternatively, F2(⋅) and F3(⋅) may be combined into F23(⋅), to be specific,
S=F
1(F23(X)),
where F23(X)=X. Certainly, another form of adjusting power and an angle may alternatively be set. Alternatively, a uniform form of a function F(⋅) may also be used for writing, where F(⋅)=F1(⋅), to be specific,
S=F(X).
(2) A Case in which One Terminal Occupies Two Data Layers
It is assumed that a terminal uses, based on a scheduling result, a first and a second data layers for uplink transmission. The G=2 layers of data are mapped to D=d1+d2=4 basic modulation symbols in total and are orthogonally spread to four REs for sending. In other words, the four basic modulation symbols of the terminal do not interfere with each other. Referring to
(2-1) The Preprocessing Operation is Implemented by Using a Precoding Matrix.
A symbol vector S used for further processing may be expressed as:
where X is a symbol vector to which a first layer and a second layer of data bits are mapped. Alternatively, F2 and F3 may be combined into F23, to be specific,
Alternatively, power allocation and angle rotation may be omitted, and an operation may be performed by using a uniform precoding matrix F=F1, to be specific,
(2-2) The Preprocessing Operation is Implemented by Using a Function.
A symbol vector S used for further processing may be expressed as:
S=F
1(F2(F3(X))),
where
where X(t) indicates a tth element in the vector X, F2(⋅) and F3(⋅) may be in a reverse order, and S=F1(F3(F2(X))). Alternatively, F2(⋅) and F3(⋅) may be combined into F23(⋅), to be specific,
S=F
1(F23(X)),
where F23(X)=X. Alternatively, F2(⋅), F3(⋅), or F23(⋅) may be omitted, and a uniform form of a function F(⋅) may be used for writing, to be specific,
S=F(X),
where F(⋅)=F1(⋅).
(3) A Case in which One Terminal Occupies Four Data Layers (Non-Orthogonally)
It is assumed that a terminal uses a first to a fourth data layers (G=4) for uplink transmission, and there are eight basic modulation symbols in total (D=d1+d2+d3+d4=8). Therefore, the basic modulation symbols cannot be orthogonally superposed on four REs, but can only be non-orthogonally superposed on the four REs for sending. Referring to
(3-1) The Preprocessing Operation is Implemented by Using a Precoding Matrix.
A symbol vector S used for further processing may be expressed as:
where operations on F2 and F3 may be performed in a reverse order, or F2 and F3 may be combined into F23, to be specific,
where αgi (where g is a layer number, and i indicates different basic modulation symbols in a same layer of data) is defined the same as that in the foregoing embodiments, and is a complex number indicating power and angle adjustment.
Alternatively, S=FX
(3-2) The Preprocessing Operation is Implemented by Using a Function.
A symbol vector S used for further processing may be expressed as:
where X(t) indicates a tth element in the vector X, and operations on F2(⋅) and F3(⋅) may be performed in a reverse order, or F2(⋅) and F3(⋅) may be combined into F23(⋅), to be specific,
S=F
1(F23(X)), and
F
23(X)=θ*X=[α11,α12,α21,α22,α31,α32,α41,α42]T*X.
Alternatively, the three steps may be combined into one function, S=F(X), and
After receiving detected S of each terminal on the Q REs, the network device may work out a basic modulation symbol of each terminal based on preset precoding matrix information or function information. Then an encoded information bit can be restored based on a basic modulation constellation diagram and is further decoded.
Corresponding to Embodiment 2, referring to
For example, corresponding to Embodiment 2, it may be assumed that currently the network device supports an example in which G=5 layers of data are multiplexed on Q=3 REs. To be specific, an overload probability is G/Q=167%. Each layer of data is mapped to a different quantity of symbols after basic modulation. In other words, d1=3, d2=d3=2, d4=d5=1, and there are D=9 symbols in total. These parameters are listed in Table 5. These parameters are all determined by the network device and notified to each terminal. The notified content further includes a number of a layer at which the data of each terminal is located. Compared with the parameters in Table 2, an only difference is that the mode is changed from downlink to uplink. However, it should be noted that, distribution of data layers in the terminals is not yet discussed herein. For spreading mapping corresponding to each layer of data in Table 5, refer to
Compared with Embodiment 4, the spreading herein is irregular, and symbol quantities of the layers may not be consistent. In other words, different layers occupy different quantities of REs. Therefore, the spreading herein is referred to as irregular spreading. However, once a mapping manner is determined, procedures of the preprocessing operation are consistent.
(1) A Case in which One Terminal Occupies One Data Layer
It is assumed that a terminal uses, based on a scheduling result of the network device, a data layer 1 for uplink transmission, in other words, G=1. Therefore, based on
(1-1) The Preprocessing Operation is Implemented by Using a Precoding Matrix.
It is assumed that a terminal uses the first data layer for uplink transmission. Symbols of the layer are to be orthogonally sent on the three REs. A symbol vector S used for further processing may be expressed as:
X is symbols to which a first layer of data bits are mapped based on a basic constellation. It is assumed that x11=x12=x13 (certainly, x11, x12, and x13 may alternatively be different, and this needs to be determined based on a specific basic modulation scheme). Locations of F2 and F3 may change, or F2 and F3 may be combined into F23:
Alternatively, a uniform matrix F may be used. To be specific, F=F1:
(1-2) The Preprocessing Operation is Implemented by Using a Function.
A symbol vector S used for further processing may be expressed as:
S=F
1(F2(F3(X))),
where
where X(t) indicates a tth element in the vector X. Alternatively, F2(⋅) and F3(⋅) may be in a reverse order, or F2(⋅) and F3(⋅) may be combined into F23(⋅), to be specific,
S=F
1(F23(X)),
where F23(X)=X, and an input is equal to an output. Alternatively, F2(⋅), F3(⋅), or F23(⋅) may be omitted, and a uniform form of a function F(⋅) may be used for writing, to be specific,
S=F(X),
where F(⋅)=F1(⋅).
(2) A Case in which One Terminal Occupies a Plurality of Data Layers (Non-Orthogonally)
It is assumed that a terminal uses, based on a scheduling result of the network device, the data layers 2 and 3 for uplink transmission. Therefore, based on
(2-1) The Preprocessing Operation is Implemented by Using a Precoding Matrix.
It is assumed that a terminal uses the second and the third data layers for uplink transmission. Symbols of the layers are to be non-orthogonally sent on the three REs after superposition. A symbol vector S used for further processing may be expressed as:
X is symbols to which a second and a third layers of data bits are mapped based on a basic constellation. It is assumed that x21=x22, and x31=x32 (certainly, x21 and x22 may alternatively be different, x31 and x32 may alternatively be different, this needs to be determined based on a specific basic modulation scheme, and this is merely an example herein). Alternatively, F2 and F3 may be combined into F23, to be specific,
where αgi where g is a layer number, and i indicates different basic modulation symbols in a same layer of data) is defined the same as that in the foregoing embodiments, and is a complex number indicating power and angle adjustment. Alternatively, a uniform precoding matrix F is used, and
(2-2) The Preprocessing Operation is Implemented by Using a Function.
A symbol vector S used for further processing may be expressed as:
where X(t) indicates a tth element in the vector X, and operations on F2(⋅) and F3(⋅) may be performed in a reverse order. Alternatively, F2(⋅) and F3(⋅) may be combined into F23(⋅). To be specific,
S=F
1(F23(X)), and
F
23(X)=α*X=[α21,α22,α31,α32]T*X.
Alternatively, the three steps may be combined into one function, S=F(X), and
Similarly, after receiving detected S of each terminal on the Q REs, the network device may work out a basic modulation symbol of each terminal based on preset precoding matrix information or function information. Then an encoded information bit can be restored based on a basic modulation constellation diagram and is further decoded.
Corresponding to Embodiment 3, this embodiment provides a procedure of generating an uplink to-be-transmitted symbol by a terminal based on scheduling by a network device. Similarly, the network device schedules N terminals. A total of G layers of data are classified into H groups. It is assumed that each group includes a same quantity of J=G/H layers of data. The J layers of data may multiplex completely same REs by using a superposition modulation scheme. Data layers in a same group do not belong to a same terminal. Certainly, quantities of data layers in the groups may be different. Before the terminal performs modulation and a preprocessing operation shown in
In a system of this embodiment, symbols of the terminals are extended by using a complex sequence with a low correlation, and then are sent on a same time-frequency resource.
For example, an example provided in Embodiment 3 is used herein. To be specific, Q=4 (that is, a spreading length is 4) REs are used for transmitting G=6 layers of uplink data. The six layers of data are classified into H=3 groups. J=G/H=2 layers of data in each group use a same spreading sequence, and are directly superposed when the layers of data are received on a network device side. For specific parameters, refer to Table 6. These parameters are all determined by the network device and notified to each terminal. The notified content further includes a number of a layer at which the data of each terminal is located. Compared with Table 4, in Table 6, only distribution of basic modulation symbol quantities of the data layers is changed. For mapping of the layers of data to the REs, refer to
(1) A Case in which One Terminal Occupies One Data Layer
It is assumed that a sequence length is Q, and a terminal 1 uses, based on a scheduling result of the network device, a data layer 1 for uplink transmission. Based on
Because this scenario does not relate to power and angle adjustment, items of power allocation and angle adjustment are omitted. Alternatively, a form of a function S=F1(X)=c1,1x1+c1,2x1+ . . . +c1,Qx1 is used for writing.
(2) A Case in which One Terminal Occupies a Plurality of Data Layers
It is assumed that a sequence length is Q, and a terminal 1 uses, based on a scheduling result of the network device, data layers 1 and 3 (G1=2) for uplink transmission. Because the data layers 1 and 2 are in a same group, the terminal cannot occupy the data layers 1 and 2 at the same time. Based on
Because this scenario does not relate to power and angle adjustment, items of power allocation and angle adjustment are omitted. It is easily learned that F1 herein is a column orthogonal matrix. In other words, columns are orthogonal to each other, and this is orthogonal spreading. However, this does not need to be limited between different terminals.
The foregoing formula may alternatively be written in a form of a function s=F1(X), and
After receiving detected S of each terminal on the Q REs, the network device may work out a basic modulation symbol of each terminal based on preset precoding matrix information or function information of each terminal. Then an encoded information bit can be restored based on a basic modulation constellation diagram and is further decoded.
The foregoing embodiments provide examples of uplink and downlink preprocessing operation procedures of regular or irregular spreading. This embodiment and Embodiment 8 are to discuss corresponding apparatus designs.
The processing module 160 is configured to divide data of any one of N terminals scheduled on Q resource elements into Gk layers of data. The processing module processes a maximum of G layers of data on the Q resource elements. Gk is a positive integer, Gk<G, Q is a positive integer, Q<G, N is a positive integer, and N≤G.
The modulation module 100 is configured to perform basic modulation on the Gk layers of data to obtain Dk basic modulation symbols, where Dk≥Gk, and Dk is a positive integer.
The combination module 110 is configured to combine the basic modulation symbols that are of the N terminals and that are obtained after the basic modulation to obtain a combined symbol vector X.
The preprocessing operation module 150 is configured to map the symbol vector X to the Q resource elements to obtain a data vector S. A symbol quantity of the symbol vector X is greater than a symbol quantity of the data vector S. The symbol quantity of the data vector S is the quantity Q of the resource elements.
That the preprocessing operation module 150 is configured to map the symbol vector X to the Q resource elements to obtain a data vector S includes: the preprocessing operation module 150 is configured to map the symbol vector X to the Q resource elements by using a preprocessing operation to obtain the data vector S. The preprocessing operation includes at least spreading and superposition.
The preprocessing operation module 150 includes a power adjustment module 120, an angle rotation module 130, and a spreading and superposition module 140. The power adjustment module 120 is configured to adjust power of the basic modulation symbol. The angle rotation module 130 is configured to rotate an angle of the basic modulation symbol. The spreading and superposition module 140 is configured to perform spreading and superposition on the basic modulation symbol. Particularly, the power adjustment module 120 and the angle rotation module 130 may change an order of sequential processing. Alternatively, the power adjustment module 120, the angle rotation module 130, and the spreading and superposition module 140 may further jointly form the preprocessing operation module 150. Alternatively, the power adjustment module 120 and the angle rotation module 130 may further be combined into a power adjustment and angle rotation module 170. The power adjustment and angle rotation module 170 is configured to perform power adjustment and angle rotation on the basic modulation symbol at the same time. When a power adjustment matrix F2 is an identity matrix or when a power adjustment function F2(X) is equal to X, the power adjustment module 120 may not be used. When an angle rotation matrix F3 is an identity matrix or when an angle rotation function F3(X) is equal to X, the angle rotation module 130 may not be used. The modulation module 100 is coupled to the combination module 110. The combination module 110 is coupled to the preprocessing operation module 150.
The modulation module 100 modulates a plurality of layers of data from the N terminals into basic modulation symbols based on a basic modulation scheme of each layer. The combination module 110 sequentially combines the data into the vector X based on a basic modulation symbol combination method according to any one of Embodiment 1 to Embodiment 3. The vector X is input into the preprocessing operation module 150. The preprocessing operation module 150 processes the vector X by using a preprocessing operation method according to any one of Embodiment 1 to Embodiment 3, maps the vector X to Q REs, and outputs the vector S. For details about how to perform the basic modulation and how to perform the power adjustment, the angle rotation, and the spreading and superposition, refer to related descriptions in the foregoing Embodiment 1 to Embodiment 3. Details are not described herein again.
The processing module 160 is further configured to perform further processing on the vector S. Such processing includes but is not limited to an IFFT transform.
The modulation module 100, the combination module 110, the preprocessing operation module 150, and the processing module 160 may further be integrated into one processor. The processor is configured to process the data of the N terminals.
The processing module 260 is configured to divide data sent on the Q resource elements into Gk layers of data. Gk is a positive integer, Gk<G, Q is a positive integer, Q<G, N is a positive integer, and N≤G.
The modulation module 200 is configured to perform basic modulation on the Gk layers of data to obtain Dk basic modulation symbols, where Dk≥Gk, and Dk is a positive integer.
The combination module 210 is configured to combine the Dk basic modulation symbols to obtain a combined symbol vector Xk.
The preprocessing operation module 250 is configured to map the symbol vector Xk to the Q resource elements to obtain a data vector Sk, where a sum of symbol quantities of symbol vectors of the N terminals is greater than Q.
That the preprocessing operation module 250 is configured to perform a preprocessing operation on the symbol vector Xk includes: the preprocessing operation module 250 is configured to map the symbol vector Xk to the Q resource elements by using the preprocessing operation to obtain the data vector Sk, where the preprocessing operation includes at least spreading and superposition.
The preprocessing operation module 250 includes a power adjustment module 220, an angle rotation module 230, and a spreading and superposition module 240. The power adjustment module 220 is configured to adjust power of the basic modulation symbol. The angle rotation module 230 is configured to rotate an angle of the basic modulation symbol. The spreading and superposition module 240 is configured to perform spreading and superposition on the basic modulation symbol. Particularly, the power adjustment module 220 and the angle rotation module 230 may change an order of sequential processing. Alternatively, the power adjustment module 220, the angle rotation module 230, and the spreading and superposition module 240 may further jointly form the preprocessing operation module 250. Alternatively, the power adjustment module 220 and the angle rotation module 230 may further be combined into a power adjustment and angle rotation module 270. The power adjustment and angle rotation module 270 is configured to perform power adjustment and angle rotation on the basic modulation symbol at the same time. When a power adjustment matrix F2 is an identity matrix or when a power adjustment function F2(X) is equal to X, the power adjustment module 220 may not be used. When an angle rotation matrix F3 is an identity matrix or when an angle rotation function F3(X) is equal to X, the angle rotation module 230 may not be used. The modulation module 200 modulates at least one layer of data of the terminal into basic modulation symbols based on a basic modulation scheme of each layer. The Gk layers of data of the terminal are sequentially combined into the vector Xk by using a basic modulation symbol combination method according to any one of Embodiment 4 to Embodiment 6. The vector Xk is input into the preprocessing operation module 250. The preprocessing operation module 250 processes the vector Xk by using a preprocessing operation method according to any one of Embodiment 4 to Embodiment 6, and outputs the vector Sk, for further processing in the processing module 260. Such processing includes but is not limited to an IFFT transform.
The modulation module 200, the combination module 210, the preprocessing operation module 250, and the processing module 260 may further be integrated into one processor. The processor is configured to process the data of the terminal.
For details about how to perform the basic modulation and how to perform the power adjustment, the angle rotation, and the spreading and superposition, refer to related descriptions in the foregoing Embodiment 4 to Embodiment 6. Details are not described herein again.
In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the described apparatus embodiments are merely examples. For example, the module or device division is merely logical function division and may be other division in actual implementation. For example, a plurality of modules or devices may be combined to form a new device. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections may be implemented by using some interfaces. The indirect couplings or communication connections between the apparatuses, devices, or units may be implemented in electronic, mechanical, or other forms. The devices in the embodiments of this application are physical units, and some functions of the devices may be implemented by software or by hardware. A person skilled in the art may select a corresponding implementation based on actual needs. The processor of the present disclosure may be a general purpose processor, an integrated circuit, or a chip.
In addition, modules in the embodiments of this application may be integrated into one processor, or each of the modules may exist alone physically, or two or more modules may be integrated into one unit.
Number | Date | Country | Kind |
---|---|---|---|
201610425145.5 | Jun 2016 | CN | national |
This application is a continuation of International Application No. PCT/CN2017/083589, filed on May 9, 2017, which claims priority to Chinese Patent Application No. 201610425145.5, filed on Jun. 14, 2016. The disclosures of the aforementioned applications are hereby incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2017/083589 | May 2017 | US |
Child | 16219088 | US |