DATA PROCESSING METHOD AND TRANSMITTING DEVICE
20190260439 ยท 2019-08-22
Inventors
Cpc classification
H04B7/0473
ELECTRICITY
International classification
Abstract
This application relates to the mobile communications field, and in particular, to a data processing technology in a wireless communications system. A data processing method includes: generating, by a transmitting device based on a stream of bits, one layer of modulation symbol sequence that includes N modulation vectors, any modulation vector A.sub.i includes U modulation symbols, U2, Ni1, and N is a positive integer; and processing, by the transmitting device, the modulation vector A.sub.i by using a matrix B.sub.i to generate a modulation matrix y.sub.i, each modulation matrix includes T elements in a first dimension, T is a quantity of space domain resources, T2, and the modulation matrix y.sub.i is used to map the stream of bits stream onto the T space domain resources. According to the solutions provided in this application, space diversity can be implemented in code domain, so that transmission reliability is improved.
Claims
1. A data processing method, wherein the method comprises: generating, by a transmitting device, one layer of modulation symbol sequence based on a stream of bits, the modulation symbol sequence comprises N modulation vectors, any modulation vector A.sub.i comprises U modulation symbols, U2, Ni1, and N is a positive integer; and processing, by the transmitting device, A.sub.i by using a matrix B.sub.i to generate a modulation matrix y.sub.i, each modulation matrix comprises T elements in a first dimension, T is a quantity of space domain resources, T2, and the modulation matrix y.sub.i is used to map the stream of bits onto the T space domain resources.
2. The data processing method according to claim 1, the modulation vector A.sub.i comprises V non-zero modulation symbols, and the matrix B.sub.i comprises T element sequences in the first dimension, at least one of the T element sequences is a non-zero element sequence, the non-zero element sequence comprises at least one non-zero element, the matrix B.sub.i comprises V non-zero element sequences in a second dimension, and UV1.
3. The data processing method according to claim 2, when the first dimension is a row and T=2, the transmitting device processes the modulation vector A.sub.i based on the matrix B.sub.i, and B.sub.i is
4. The data processing method according to claim 2, when the first dimension is a row and T=2, the transmitting device processes the modulation vector A.sub.i based on the matrix B.sub.i, processes a modulation vector A.sub.j based on a matrix B.sub.j, i is not equal to j, Nj1, and N2, B.sub.i is
5. The data processing method according to claim 4, the transmitting device further processes a modulation vector A.sub.m based on a matrix B.sub.m, m is equal to neither i nor j, B.sub.m is
6. The data processing method according to any one of claim 1, the U modulation symbols comprise at least one non-zero modulation symbol and at least one zero modulation symbol.
7. A data processing method, wherein the method comprises: generating, by a transmitting device, L layers of modulation symbol sequences based on a stream of bits, each layer of modulation symbol sequence comprises N modulation vectors, any modulation vector A.sub.i.sup.l comprises U modulation symbols, L is a positive integer and L2, N is a positive integer and Ni1, U2, and l=1 . . . L; and processing, by the transmitting device, A.sub.i.sup.l by using a matrix B.sub.i.sup.l to generate a modulation matrix y.sub.i.sup.l, each modulation matrix comprises T elements in a first dimension, T is a quantity of space domain resources, T2, and the modulation matrix y.sub.i.sup.l is used to map the stream of bits onto the T space domain resources.
8. The data processing method according to claim 7, the modulation vector A.sub.i.sup.l comprises V non-zero modulation symbols, and the matrix B.sub.i.sup.l comprises T element sequences in the first dimension, wherein at least one of the T element sequences is a non-zero element sequence, the non-zero element sequence comprises at least one non-zero element, the matrix B.sub.i.sup.l comprises V non-zero element sequences in a second dimension, and UV1.
9. The data processing method according to claim 8, when the first dimension is a row and T=2, the transmitting device processes the modulation vector A.sub.i.sup.l based on the matrix B.sub.i.sup.l, and B.sub.i.sup.l is
10. The data processing method according to claim 8, wherein when the first dimension is a row and T=2, the transmitting device processes the modulation vector A.sub.i.sup.l based on the matrix B.sub.i.sup.l, processes A.sub.j.sup.l based on a matrix B.sub.j.sup.l, i is not equal to j, Nj1, and N2, wherein B.sub.i.sup.l is
11. The data processing method according to claim 10, wherein the transmitting device further processes a modulation vector A.sub.m.sup.l based on a matrix B.sub.m.sup.l, m is equal to neither i nor j, B.sub.m.sup.l is
12. The data processing method according to claim 7, wherein the method further comprises: superposing, by the transmitting device, the modulation matrices y.sub.i.sup.l that are generated based on the L layers of modulation symbol sequences, to generate a to-be-sent matrix, wherein the to-be-sent matrix comprises T element sequences in the first dimension, and the to-be-sent matrix comprises iU element sequences in a second dimension.
13. A transmitting device, comprising: a memory comprising instructions; and a processor coupled to the memory, wherein the instructions cause the processor to be configured to: generate one layer of modulation symbol sequence based on a stream of bits, wherein the modulation symbol sequence comprises N modulation vectors, any modulation vector A.sub.i comprises U modulation symbols, U2, Ni1, and N is a positive integer; and process A.sub.i by using a matrix B.sub.i to generate a modulation matrix y.sub.i, each modulation matrix comprises T elements in a first dimension, T is a quantity of space domain resources, T2, and the modulation matrix y.sub.i is used to map the stream of bits onto the T space domain resources.
14. The transmitting device according to claim 13, the modulation vector A.sub.i comprises V non-zero modulation symbols, and the matrix B.sub.i comprises T element sequences in the first dimension, at least one of the T element sequences is a non-zero element sequence, the non-zero element sequence comprises at least one non-zero element, the matrix B.sub.i comprises V non-zero element sequences in a second dimension, and UV2.
15. The transmitting device according to claim 14, when the first dimension is a row and T=2, the modulation vector A.sub.i is processed based on the matrix B.sub.i, and B.sub.i is
16. The transmitting device according to claim 14, when the first dimension is a row and T=2, the modulation vector A.sub.i is processed based on the matrix B.sub.i, A.sub.j is processed based on a matrix B.sub.j, i is not equal to j, Nj1, and N2, wherein B.sub.i is
17. The transmitting device according to claim 16, a modulation vector A.sub.m is processed based on a matrix B.sub.m, m is equal to neither i nor j, B.sub.m is
18. A transmitting device, comprising: a memory comprising instructions; and a processor coupled to the memory, wherein the instructions cause the processor to be configured to: generate L layers of modulation symbol sequences based on a stream of bits, each layer of modulation symbol sequence comprises N modulation vectors, any modulation vector A.sub.i.sup.l comprises U modulation symbols, L is a positive integer and L2, N is a positive integer and Ni1, U2, and l=1 . . . L; and process A.sub.i.sup.l by using a matrix B.sub.i.sup.l to generate a modulation matrix y.sub.i.sup.l, each modulation matrix comprises T elements in a first dimension, T is a quantity of space domain resources, T2, and the modulation matrix y.sub.i.sup.l is used to map the stream of bits onto the T space domain resources.
19. The transmitting device according to claim 18, wherein the modulation vector A.sub.i.sup.l comprises V non-zero modulation symbols, and the matrix B.sub.i.sup.l comprises T element sequences in the first dimension, at least one of the T element sequences is a non-zero element sequence, the non-zero element sequence comprises at least one non-zero element, the matrix B.sub.i comprises V non-zero element sequences in a second dimension, and UV1.
20. The transmitting device according to claim 18, wherein the instructions cause the processor to be configured to: superpose the modulation matrices y.sub.i.sup.l that are generated based on the L layers of modulation symbol sequences, to generate a to-be-sent matrix, wherein the to-be-sent matrix comprises T element sequences in the first dimension, and the to-be-sent matrix comprises iU element sequences in a second dimension.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0031] The following describes in more details the embodiments of this application with reference to accompanying drawings.
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
DESCRIPTION OF EMBODIMENTS
[0044] The following clearly describes the technical solutions in the embodiments of this application with reference to the accompanying drawings in the embodiments of this application. Apparently, the described embodiments are some but not all of the embodiments of this application. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of this application without creative efforts shall fall within the protection scope of this application.
[0045] Terms such as component, module, and system used in this specification are used to indicate computer-related entities, hardware, firmware, combinations of hardware and software, software, or software being executed. For example, a component can be, but is not limited to, a process that runs on a processor, a processor, an object, an executable file, an execution thread, a program, and/or a computer. As shown in figures, both a computing device and an application that runs on a computing device can be components. One or more components may reside within a process and/or an execution thread, and a component can be located on one computer and/or distributed between two or more computers. In addition, these components can be executed from various computer-readable media that store various data structures. For example, the components may perform communication by using a local and/or remote process and based on, for example, a signal having one or more data packets (for example, data from two components interacting with another component in a local system, a distributed system, and/or across a network such as the Internet interacting with other systems by using the signal).
[0046] The embodiments are described in this application with reference to a terminal. The terminal may also be referred to as user equipment (UE), an access terminal, a subscriber unit, a subscriber station, a mobile station, a mobile console, a remote station, a remote terminal, a mobile device, a user terminal, a terminal, a wireless communications device, a user agent, a user apparatus, or the like. The access terminal can be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device having a wireless communication function, a computing device, another processing device connected to a wireless modem, an in-vehicle device, a wearable device, or a terminal device in a future 5G network.
[0047] In addition, the embodiments are described in this application with reference to a network device. The network device can be a device used by a network side to communicate with a mobile device, and the network side device can be a base transceiver station (BTS) in global system for mobile communication (GSM) or code division multiple access (CDMA), or can be an NodeB (NB) in wideband code division multiple access (WCDMA), or can be an eNB or evolved Node B (eNodeB) in long term evolution (LTE), a relay station or an access point, an in-vehicle device, a wearable device, a network side device in a future 5G network, or the like. In this specification, an example in which the network device is a base station is used for description.
[0048] In addition, aspects or features of this application can be implemented as a method, an apparatus or a product that uses standard programming and/or engineering technologies. The term product used in this application covers a computer program that can be accessed from any computer readable component, carrier or medium. For example, the computer-readable medium may include but is not limited to: a magnetic storage component (for example, a hard disk, a floppy disk or a magnetic tape), an optical disc (for example, a compact disk (CD), a digital versatile disk (DVD), a smart card and a flash memory component (for example, erasable programmable read-only memory (EPROM), a card, a stick, or a key drive). In addition, various storage media described in this specification may indicate one or more devices and/or other machine-readable media that are configured to store information. The term machine-readable media may include but is not limited to a radio channel, and various other media that can store, contain and/or carry an instruction and/or data.
[0049]
[0050] The transmitting device 101 can be a network side device or a terminal device. When the transmitting device 101 is a network side device, the receiving device 102 is a terminal device; or when the transmitting device 101 is a terminal device, the receiving device 102 is a network side device.
[0051]
[0052] S201. A transmitting device generates one layer of modulation symbol sequence based on a stream of bits, where the modulation symbol sequence includes N modulation vectors, any modulation vector A.sub.i includes U modulation symbols, U2, Ni1, and N is a positive integer.
[0053] S202. The transmitting device processes the modulation vector A.sub.i by using a matrix B.sub.i to generate a modulation matrix y.sub.i, where the modulation matrix y.sub.i includes T elements in a first dimension, T is a quantity of space domain resources used to transmit the stream of bits, T2, and the modulation matrix y.sub.i is used to map the stream of bits onto the T space domain resources. For example, the space domain resource can be an antenna or an antenna port. The following uses antenna port as an example for description.
[0054] According to the data processing method provided in this embodiment, the transmitting device maps the one layer of modulation symbol sequence onto T antenna ports and sends the one layer of modulation symbol that is mapped, so that a space diversity gain can be generated in code domain, and a bit error rate is reduced, thereby improving communication reliability.
[0055] On a receiving device side, the receiving device receives a signal that is from the transmitting device and that is obtained through mapping based on the modulation matrix y.sub.i, and completes corresponding decoding according to a modulation and coding scheme and a mapping manner at each layer.
[0056] The following uses an example in which a terminal is used as the transmitting device (that is, an execution body of the method 200 in this embodiment of this application) to describe a procedure of the foregoing method 200 in detail.
[0057] First, step S201 is further described. In step S201, the transmitting device may process the stream of bits in a multiple access manner to generate the modulation symbol sequence. The multiple access manner can be one of the following orthogonal or non-orthogonal multiple access technologies: a sparse code division multiple access SCMA manner, an orthogonal frequency division multiplexing OFDM technology, a frequency division multiple access (FDMA) manner, a time division multiple access (TDMA) manner, a code division multiple access (CDMA) manner, a pattern division multiple access (PDMA) manner, a non-orthogonal multiple access (NOMA) manner, a multi-user shared access (MUSA) manner, or the like, so that a communications system used in this embodiment of this application can support a plurality of users. In the following, the SCMA is used as an example for description. In a system that uses the SCMA, the transmitting device maps the stream of bits onto SCMA code words by using multi-dimensional modulation and sparse spread spectrum, and the receiving device completes decoding based on multiuser detection.
[0058] In the following, an SCMA codebook is first described as an example.
[0059] One transmitting device may process the stream of bits by using a same SCMA codebook to generate the one layer of modulation symbol sequence, or may process the stream of bits by using different SCMA codebooks to generate the one layer of modulation symbol sequence. Optionally, the modulation vector A.sub.i may include U modulation symbols, and the U modulation symbols may include at least one non-zero modulation symbol and at least one zero modulation symbol. For example, based on the different SCMA codebooks that are used, a length of the modulation vector A.sub.i in the modulation symbol sequence is 4, that is, U=4. Referring to
[0060] When using the same SCMA codebook, the transmitting device sequentially processes, by using the SCMA codebook, a unit quantity (for example, two bits or four bits) of bits in the stream of bits to generate the one layer of modulation symbol sequence. The one layer of modulation symbol sequence includes N modulation vectors, and each modulation vector is corresponding to a unit quantity of bits. Because the unit quantity of bits use the same SCMA codebook, positions of non-zero elements in generated modulation vectors are the same, that is, forms are the same. For example, the modulation vectors A.sub.i can be represented in the form of [x.sub.1,0,x.sub.3,0], or can be represented in the form of [0,x.sub.2,0,x.sub.4], and this is not limited in this application.
[0061] When using different SCMA codebooks, the transmitting device sequentially processes, by using the different SCMA codebooks, a unit quantity of bits in the stream of bits to generate the one layer of modulation symbol sequence. The plurality of SCMA codebooks can be used in a cyclically manner, or can be used in a random manner. The one layer of modulation symbol sequence includes N modulation vectors, and each modulation vector is corresponding to a unit quantity of bits. Because the unit quantity of bits use different SCMA codebooks, the positions of the non-zero modulation symbols in generated modulation vectors are different, that is, the forms are different. For example, a modulation vector A.sub.i can be represented in the form of [x.sub.1,0,x.sub.3,0], and a modulation vector A.sub.2 can be represented in the form of [0,x.sub.2,0,x.sub.4]. This is not limited in this application.
[0062] In step S220, the transmitting device processes the modulation vector A.sub.i by using the matrix B.sub.i to generate the modulation matrix y.sub.i, where the modulation matrix y.sub.i includes T elements in the first dimension. T is a quantity of antenna ports used to transmit the stream of bits, and the modulation matrix y.sub.i is used to map the stream of bits onto the T antenna ports.
[0063] Specifically, the transmitting device performs mapping by using the matrix B.sub.i to generate the modulation matrix y.sub.i, where the modulation matrix y.sub.i includes T elements in the first dimension. In other words, the modulation matrix y.sub.i includes T element sequences in the first dimension. Each element sequence is corresponding to an antenna port, so that the modulation matrix y.sub.i is mapped onto the T antenna ports. In this way, by performing mapping by using the matrix B.sub.i, the space diversity gain in code domain can be obtained based on the modulation vector A.sub.i, and the bit error rate is reduced.
[0064] In the following, the matrix B.sub.i is described. Dimensions of the matrix B.sub.i include a row and a column. The first dimension can be a row of the matrix B.sub.i, and the second dimension is a column of the matrix. Alternatively, the first dimension can be a column of the matrix, and the second dimension can be a row of the matrix. This is not specifically limited. In this embodiment of this application, the first dimension is a row of the matrix B.sub.i, and the second dimension is a column of the matrix B.sub.i.
[0065] A quantity of elements that are included in at least one dimension (which is the first dimension in this implementation) of each matrix B.sub.i is T, so that at least one dimension of the modulation matrix y.sub.i obtained after mapping includes T element sequences. Optionally, at least one of the T element sequences is a non-zero element sequence, and the non-zero element sequence is an element sequence that includes at least one non-zero element.
[0066] In the second dimension, the matrix B.sub.i may include element sequences whose quantity is different from the quantity of the modulation symbols in the modulation vector A.sub.i (case 1). Alternatively, in the second dimension, the matrix B.sub.i may include element sequences whose quantity is the same as the quantity of the modulation symbols in the modulation vector A.sub.i (case 2). The following describes the two cases separately.
[0067] Case 1:
[0068] The matrix B.sub.i includes V element sequences in the second dimension, and the V element sequences are non-zero element sequences. All the non-zero element sequences are corresponding to all non-zero modulation symbols in the modulation vector A.sub.i.
[0069] For example, the modulation vector A.sub.i is represented in the form of [x.sub.1,0,x.sub.3,0], and T=2 (that is, two antenna ports). The matrix B.sub.i can be
and in this case, all the modulation vectors use the same B.sub.i. It can be learned that, the matrix B.sub.i is a diagonal matrix; and the matrix B.sub.i includes two element sequences (that is, T=2) in the row, which are corresponding to the two antenna ports. The matrix B.sub.i includes two element sequences in the column, where the two element sequences are non-zero element sequences and are corresponding to two non-zero modulation symbols in the modulation vector A.sub.i. Through the foregoing process, [x.sub.1,0,x.sub.3,0] is mapped onto element sequences corresponding to two antenna ports.
[0070] Next, a mapping process is further described by using [x.sub.1,0,x.sub.3,0] as an example. In the following mapping process, a formula Q=map (R, C) is used, where R is a row vector, Q and C are matrices, and a quantity of columns of R is equal to a quantity of rows of C. The mapping operation is specifically as follows: Each column of Q is obtained by point multiplying each column vector of a transposed R by each column vector of C.
[0071] First, the transmitting device selects non-zero modulation symbols [x.sub.1,x.sub.3] from [x.sub.1,0,x.sub.3,0], and generates the following matrix based on a matrix
of B.sub.i and by point multiplying the transposed row vector [x.sub.1,x.sub.3] by a second column
of B.sub.i, and the following mapping operations are similar to this. Zeros are added to the matrix A.sub.i based on positions of zero modulation symbols in [x.sub.1,0,x.sub.3,0] to generate a modulation matrix:
[0073] The modulation matrix y.sub.i includes two columns of elements, and the transmitting device maps the two columns of elements onto the two antenna ports.
[0074] Optionally, the matrix B.sub.i can alternatively be
First, the transmitting device selects the non-zero modulation symbols [x.sub.1,x.sub.3] from [x.sub.1,0,x.sub.3,0], and generates the following matrix based on the matrix B.sub.i:
[0075] zeroes are added to the matrix A.sub.i based on the positions of the zero modulation symbols in [x.sub.1,0,x.sub.3,0] to generate a modulation matrix:
[0076] The modulation matrix y.sub.i includes two columns of elements, and the transmitting device maps the two columns of elements onto the two antenna ports.
[0077] In some other implementations, the transmitting device may alternatively process the one layer of modulation symbol sequence by circulating two matrices B.sub.i and B.sub.j. Forms of the processed modulation vectors can be the same or can be different, and this is not limited herein. Specifically, the transmitting device processes the modulation vector A.sub.i based on the matrix B.sub.i, and processes the modulation vector A.sub.j based on the matrix B.sub.j, where the B.sub.i and the B.sub.j are different, i is not equal to j, Nj1, and N2. In the following, two modulation vectors A.sub.i and A.sub.j at the one layer of modulation symbol sequence that is generated by using the same codebook are used as an example for description, a position relationship between the two modulation vectors A.sub.i and A.sub.j can be adjacent or non-adjacent. Forms of the two modulation vectors A.sub.i and A.sub.j can be the same or can be different. In the following, adjacent modulation vectors A.sub.i and A.sub.j that are in a same form are used as an example for description.
[0078] Specifically, the transmitting device maps the modulation vector A.sub.i by using the matrix B.sub.i, and maps the modulation vector A.sub.j by using the matrix B.sub.j, where the two modulation vectors A.sub.i and A.sub.j are represented in the form of [x.sub.1,0,x.sub.3,0].
[0079] For the modulation vector A.sub.i, the transmitting device selects the non-zero modulation symbols [x.sub.1,x.sub.3] from [x.sub.1,0,x.sub.3,0], and generates the following matrix based on a matrix
and
[0080] the transmitting device adds zeros to the matrix A.sub.i based on the positions of the zero modulation symbols in [x.sub.1,0,x.sub.3,0] to generate a modulation matrix:
[0081] The modulation matrix y.sub.i includes two columns of elements, and the two columns of elements are mapped onto the two antenna ports. Elements of a first column in the y.sub.i are mapped onto resource elements RE #1 to RE #4 corresponding to Tx.sub.1, and elements of a second column are mapped onto resource elements RE #1 to RE #4 corresponding to Tx.sub.2.
[0082] For the modulation vector A.sub.j, the transmitting device selects non-zero modulation symbols [x.sub.1,x.sub.3] from the modulation vector A.sub.j, and generates the following matrix based on a matrix
and
[0083] the transmitting device adds zeroes to the matrix A.sub.j based on the positions of the zero modulation symbols in [x.sub.1,0,x.sub.3,0] to generate the following modulation matrix:
[0084] The modulation matrix y.sub.j includes two columns of elements, and the two columns of elements are mapped onto the two antenna ports. Elements of a first column in the y.sub.j are mapped onto resource elements RE #5 to RE #8 corresponding to Tx.sub.1, and elements of a second column are mapped onto resource elements RE #5 to RE #8 corresponding to Tx.sub.2.
[0085]
[0086] In another implementation, based on the foregoing manner of circulating the matrices B.sub.i and B.sub.j, the transmitting device may alternatively map a modulation vector A.sub.m based on another matrix B.sub.m, where m is equal to neither i nor j, Nm1, and N3. B.sub.m is
or B.SUB.m .is
[0087]
The transmitting device can map each modulation vector in the modulation symbol sequence by circulating three matrices B.sub.i, B.sub.j, and B.sub.m. For example, the transmitting device maps the modulation vector A.sub.i by using the matrix B.sub.i, maps the modulation vector A.sub.j by using the matrix B.sub.j, and maps the modulation vector A.sub.m by using the B.sub.m. After completing a cycle, the transmitting device continues to process a modulation vector following the modulation vector A.sub.m by using the matrix B.sub.i. In another implementation, the transmitting device may alternatively process the one layer of modulation symbol sequence by using the foregoing four or more matrices.
[0088] Case 2:
[0089] The matrix B.sub.i includes U element sequences in a second dimension, where the U element sequences are corresponding to the U modulation symbols in the modulation vector A.sub.i. The U element sequences include V non-zero element sequences, and positions of the V non-zero element sequences in the U element sequences are the same as positions of the V non-zero modulation symbols in the U modulation symbols.
[0090] [x.sub.1,0,x.sub.3,0] and the two antenna ports (T=2) are used as an example. The matrix B.sub.i can be
The matrix B.sub.i includes two element sequences in a first dimension (in this implementation, the first dimension is a row), which are corresponding to the two antenna ports; and the matrix B.sub.i includes four element sequences in the second dimension (in this implementation, the second dimension is a column), where a first row and a third row are two non-zero element sequences, which are corresponding to two non-zero modulation symbols.
[0091] The matrix B.sub.i is further described in the following. The matrix B.sub.1 is obtained, based on positions of zero elements in [x.sub.1,0,x.sub.3,0], by adding zeros to a diagonal matrix
so that non-zero modulation symbols in [x.sub.1,0,x.sub.3,0] can be mapped onto different antenna ports. Optionally, the matrix B.sub.i can be alternatively obtained based on an inverse diagonal matrix
or a combination of
Table 1 lists example matrices that can be used by modulation vectors in different forms.
TABLE-US-00001 TABLE 1 Option 1 Option 2 Option 3 Option 4 (Option 1) (Option 2) (Option 3) (Option 4) [x.sub.1, 0, x.sub.3, 0]
[0092] For example, the modulation vector A.sub.i is represented in the form of [x.sub.1,0,x.sub.3,0]. When the matrix B.sub.i uses the option 1, the transmitting device generates a modulation matrix based on the matrix B.sub.i:
[0093] The transmitting device maps two columns of elements of the modulation matrix y.sub.i onto the two antenna ports.
[0094] When the matrix B.sub.i uses the option 2, the transmitting device generates a modulation matrix based on the matrix B.sub.i:
[0095] The transmitting device maps two columns of elements of the modulation matrix y.sub.i onto the two antenna ports.
[0096] When the option 3 is used, the transmitting device maps two adjacent or non-adjacent modulation vectors A.sub.i and A.sub.j in the modulation symbol sequence in a circulating manner.
[0097] In the following, two adjacent modulation vectors that are represented in a form of [x.sub.1,0,x.sub.3,0] are used as an example for further description.
[0098] The transmitting device processes the modulation vector A.sub.i by using the matrix B.sub.i to generate a modulation matrix:
[0099] The transmitting device maps two columns of elements of the modulation matrix y.sub.i onto the two antenna ports.
[0100] The transmitting device maps the modulation vector A.sub.j based on the matrix B.sub.j to generate a modulation matrix:
[0101] The transmitting device maps two columns of elements of the modulation matrix y.sub.j onto the two antenna ports.
[0102] Another embodiment of this application is further described below with reference to
[0103]
[0104] Step S701: A transmitting device generates L layers of modulation symbol sequences based on a stream of bits, where each layer of modulation symbol sequence includes N modulation vectors, any modulation vector A.sub.i.sup.l includes U modulation symbols, L is a positive integer and L2, N is a positive integer and Ni1, U2, and l=1 . . . L.
[0105] In an example, the transmitting device separately generates the L layers of modulation symbol sequences by using L codebooks, for example, generates six layers of modulation symbol sequences by using the six codebooks shown in
[0106] Step S702: The transmitting device processes A.sub.i.sup.l by using a matrix B.sub.i.sup.l to generate a modulation matrix y.sub.i.sup.l, where each modulation matrix includes T elements in a first dimension, T is a quantity of space domain resources, T2, and the modulation matrix y.sub.i.sup.l is used to map the stream of bits onto the T space domain resources.
[0107] According to the data processing method, the transmitting device may generate the plurality of layers of modulation symbol sequences based on the stream of bits, and process the plurality of layers of modulation symbol sequences to provide a space diversity gain.
[0108] In an example, the U modulation symbols include at least one non-zero modulation symbol and at least one zero modulation symbol. More specifically, the modulation vector A.sub.i.sup.l includes V non-zero modulation symbols, where UV1. The matrix B.sub.i.sup.l includes T element sequences in the first dimension, where at least one of the T element sequences is a non-zero element sequence, and the non-zero element sequence includes at least one non-zero element. The matrix B.sub.i.sup.l includes V non-zero element sequences in a second dimension.
[0109] When the first dimension is a row and the transmitting device has two antenna ports (that is, T=2), the transmitting device maps the modulation vector A.sub.i.sup.l based on the matrix B.sub.i.sup.l, where B.sub.i.sup.l is
or B.sub.i.sup.l is
[0110] In another example, the transmitting device maps the modulation vector A.sub.i.sup.l based on the matrix B.sub.i.sup.l, maps A.sub.j.sup.l based on a matrix B.sub.j.sup.l, i is not equal to j, Nj1, and N2, where B.sub.i.sup.l is
and B.sub.j.sup.l is
[0111] In still another example, in addition to mapping the modulation vector A.sub.i.sup.l based on the matrix B.sub.i.sup.l and mapping the modulation vector A.sub.j.sup.l based on the matrix B.sub.j.sup.l, the transmitting device further maps a modulation vector A.sub.m.sup.l based on a matrix B.sub.m.sup.l, where m is equal to neither i nor j, B.sub.m.sup.l can be
or B.sub.m.sup.l can be
Nm1, and N3.
[0112] For more detailed implementation of step 702, refer to the related description of step 202 shown in
[0113] Optionally, the data processing method further includes step 703: The transmitting device superposes the modulation matrices y.sub.i.sup.l that are respectively generated based on the L layers of modulation symbol sequences, to generate a to-be-sent matrix. The to-be-sent matrix includes T element sequences in the first dimension, and the to-be-sent matrix includes iU element sequences in a second dimension.
[0114] It should be noted that, the data processing method for generating one layer of modulation symbol sequence is commonly performed by a terminal. In other words, the data processing method is applied to uplink transmission. In some cases, if the system 100 includes a plurality of terminals, when the plurality of terminals send data or signals to a same network side device, the signals can be superposed during propagation. The data processing method for generating a plurality of layers of modulation symbol sequences are commonly performed by the network side device. In other words, the data processing method is applied to downlink transmission. It can be understood that, the foregoing description is merely used as an example, and is not used as a limitation on this application.
[0115] The foregoing mainly describes the solutions provided in this embodiment of this application from a perspective of a transmitting device, where the transmitting device can be user equipment such as the terminal, or can be the network side device such as a base station. It can be understood that, to implement the foregoing functions, each network element such as the terminal or the base station includes a corresponding hardware structure and/or software module for performing each function. A person of ordinary skill in the art should be easily aware that, with reference to the examples described in the embodiments disclosed in this specification, units and algorithm steps can be implemented by hardware or a combination of hardware and computer software. Whether a function is performed by hardware or hardware driven by computer software depends on particular applications and design constraints of the technical solutions. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the implementation goes beyond the scope of this application.
[0116]
[0117] The modulation processing unit 901 is configured to generate one layer of modulation symbol sequence based on a stream of bits, where the modulation symbol sequence includes N modulation vectors, any modulation vector A.sub.i includes U modulation symbols, U2, Ni1, and N is a positive integer. For an action executed by the modulation processing unit 901, also refer to the detailed description of step S201 shown in
[0118] The mapping unit 902 is configured to process the modulation vector A.sub.i by using a matrix B.sub.i to generate a modulation matrix y.sub.i, where each modulation matrix includes T elements in a first dimension, T is a quantity of space domain resources, T2, and the modulation matrix y.sub.i is used to map the stream of bits onto the T space domain resources. For an action executed by the mapping unit 902, also refer to the detailed description of step S202 shown in
[0119]
[0120] The modulation processing unit 1001 is configured to generate L layers of modulation symbol sequences based on a stream of bits, where each layer of modulation symbol sequence includes N modulation vectors, any modulation vector A.sub.i.sup.l includes U modulation symbols, L is a positive integer and L2, N is a positive integer and Ni1, U2, and l=1 . . . L. For an action executed by the modulation processing unit 1001, also refer to the detailed description of step S701 shown in
[0121] The mapping unit 1002 is configured to process A.sub.i.sup.l by using a matrix B.sub.i.sup.l to generate a modulation matrix y.sub.i.sup.l, where each modulation matrix includes T elements in a first dimension, T is a quantity of space domain resources used to transmit the stream of bits, T2, and the modulation matrix y.sub.i.sup.l is used to map the stream of bits onto the T space domain resources. For an action executed by the mapping unit 1002, also refer to the detailed description of step S702 shown in
[0122] Optionally, the transmitting device 1000 may further include a superposition unit 1003. The superposition unit 1003 is configured to superpose the modulation matrices y.sub.i.sup.l that are respectively generated based on the L layers of modulation symbol sequences, to generate a to-be-sent matrix. The to-be-sent matrix includes T element sequences in the first dimension, and the to-be-sent matrix includes iU element sequences in a second dimension.
[0123]
[0124] The modulation processor 1101 processes (for example, performs symbol modulation on) coded service data and a coded signaling message, and provides output sampling. The transmitter 1102 adjusts (for example, performs analog conversion, filtering, amplification, or up-conversion on) the output sampling and generates a to-be-sent signal. The to-be-sent signal is transmitted to a receiving device by using the antennas Tx.sub.1 and Tx.sub.2. In an example, the modulation processor 1101 is configured to support the transmitting device in performing processes 201 and 202 in
[0125] The controller/processor 1103 controls and manages an action of the transmitting device, and is configured to perform other processing that is performed by the transmitting device in the foregoing embodiments. For example, the controller/processor 1103 is configured to control the transmitting device to process data and/or perform another process of the technology described in this application.
[0126] The foregoing antenna can be a physical antenna or a logical port (which can be referred to as an antenna port) corresponding to a reference signal. A plurality of antenna ports can be corresponding to one physical antenna, and this is not limited in this application.
[0127] It can be understood that,
[0128]
[0129] The receiver 1202 adjusts a signal received from the antenna to provide input sampling. The modulation processor 1201 further processes the input sampling and provides coded data and a coded signaling message that are sent to the receiving device. Specifically, the modulation processor 1201 is configured to support the receiving device in receiving a signal that is from the transmitting device and that is obtained through mapping based on the modulation matrix y.sub.i.
[0130] The controller/processor 1203 completes corresponding decoding according to a modulation and coding scheme and a mapping manner at each layer, controls and manages an action of the receiving device, and is configured to perform other processing performed by the receiving device in the foregoing embodiments.
[0131] It can be understood that,
[0132] The modulation processor or the controller/processor configured to perform the methods of the base station or the terminal in the embodiments of this application can be a central processing unit (CPU), a general purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), another programmable logic device, a transistor logic device, a hardware component, or any combination thereof. The controller/processor may implement or execute various example logical blocks, modules, and circuits described with reference to content disclosed in this application. Alternatively, the processor can be a combination of processors implementing a computing function, for example, a combination of one or more microprocessors, or a combination of the DSP and a microprocessor.
[0133] Method or algorithm steps described with reference to the content disclosed in this application can be implemented by hardware, or can be implemented by a processor by executing a software instruction. The software instruction can be formed by a corresponding software module. The software module can be located in a RAM memory, a flash memory, a ROM memory, an EPROM memory, an EEPROM memory, a register, a hard disk, a removable hard disk, a CD-ROM, or a storage medium of any other form known in the art. For example, a storage medium is coupled to a processor, so that the processor can read information from the storage medium or write information into the storage medium. Certainly, the storage medium can be a component of the processor. The processor and the storage medium can be located in the ASIC. In addition, the ASIC can be located in user equipment. Certainly, the processor and the storage medium may exist in the user equipment as discrete components.
[0134] A person skilled in the art should be aware that in the foregoing one or more examples, functions described in this application can be implemented by hardware, software, firmware, or any combination thereof. When the present invention is implemented by software, the foregoing functions can be stored in a computer-readable medium or transmitted as one or more instructions or code in the computer-readable medium. The computer-readable medium includes a computer storage medium and a communications medium, where the communications medium includes any medium that enables a computer program to be transmitted from one place to another. The storage medium can be any available medium accessible to a general-purpose or dedicated computer.
[0135] The objectives, technical solutions, and benefits of this application are further described in detail in the foregoing specific embodiments. It should be understood that the foregoing descriptions are merely specific embodiments of this application, but are not intended to limit the protection scope of this application. Any modification, equivalent replacement or improvement made within the spirit and principle of the present invention shall fall within the protection scope of this application.