Patent Description:
In a cellular network, such as one employing orthogonal frequency division multiple access (OFDMA), each cell employs a base station that communicates with user equipment, such as a cell phone, a laptop, or a PDA, that is actively located within its cell. Typically, the downlink transmission resources are shared among multiple user equipments, wherein each user equipment is scheduled using time-frequency resources. Further, each scheduled user equipment may receive data using differing modulation and coding schemes as well as transmitted code blocks that typically do not align transmission symbols for each user equipment. Although current transmission schemes provide reliable operation, improvements in the transmission processes would prove beneficial in the art.

<NPL> discloses methods to determine the number of bits per code block.

Example embodiments are described below with reference to accompanying drawings, wherein:.

Many packet-based communication systems perform rate-matching at a transmitter. That is, they ensure that an arbitrary number of input bits is processed to fit into a given number of transmit resources. Currently, in a 3GPP LTE system for example, rate-matching may proceed as follows.

First, the input bits are segmented into one or more code blocks. Typically, this segmentation is done in such a way that no code block exceeds a certain predetermined maximum size. Second, bits on each code block are encoded and interleaved to obtain code block output bits. The third step is rate-matching, where some output bits are selected from each of these code blocks so that the total number of output bits equals the available number of bits that can be transmitted. Typically, this number is determined by a number of resource elements (such as tones or equivalent data-carrying units per unit time) multiplied by the data carrying capacity of each resource element, which is discussed below.

The serial stream of output bits is then mapped into QAM symbols, with Qm bits required to obtain each QAM symbol. The modulated symbols are split into NL layers by a serial-to-parallel converter. Each vector of NL modulated symbols is mixed with modulated symbols from other transport blocks (if any), and mapped onto a resource element (such as a tone). Thus, the data-carrying capacity of each resource element, mentioned above equals Qm * L. If the number of tones is T, the total number of output bits generated by the rate-matching unit becomes G = T * L * Qm. To give numerical examples, the QAM dimension Qm used in 3GPP LTE is two, four or six, and the number of layers L equals one, two or four. This disclosure focuses on the rate-matching operation and specifically the relation between coded bits from different code blocks and the corresponding resource elements onto which they are mapped. In the prior art, currently, the number of bits from each code block may be obtained as follows.

The above relationship ensures that each code block produces an integer number of modulated symbols. However, it does not ensure that each code block produces bits for an integer number of tones, because Er may not be divisible by the product Qm * L, which is the number of bits per tone. In such cases, there are some resource elements which contain coded bits from more than one code block.

Specifically, consider an example where T = <NUM>, L = <NUM> and C = <NUM>. (or any case where C does not divide T for L > <NUM>). Note that the number of modulated symbols produced in this example by the three code blocks will be {<NUM>, <NUM>, <NUM>}. For the first two code blocks, the number of modulated symbols is not divisible by the number of symbols per tone. Thus, there will be one tone which has one modulated symbol from the first code block and the other modulated symbol from the second code block.

It is beneficial to ensure that rate-matching preserves resource element boundaries. That is, all of the bits needed to construct the transmit signal for a given resource element come from only one of the code blocks. One reason to require this condition is that some receivers employ a successive interference cancellation (SIC) decoder. These decoders reconstruct the transmit signal from a forward error correcting (FEC) decoder output, which is available on a code block basis. This output is used for cancellation of interference associated with other spatial transmission streams.

Therefore, if a resource element requires bits from different code blocks, the transmit signal on that resource element cannot be constructed until all code blocks have been decoded, which unnecessarily increases the latency of SIC decoding, for example. Embodiments of the present disclosure ensure that code block boundaries are aligned with resource element boundaries.

<FIG> illustrates a diagram of a transmitter <NUM> constructed according to the principles of the present disclosure. The transmitter <NUM> may correspond to a base station transmitter in a cellular network, wherein the cellular network may be part of an OFDMA communication system. The transmitter <NUM> is for use with multiple transmit antennas and includes an encoding unit <NUM>, a rate matching unit <NUM>, a mapping unit <NUM> and a transmit unit <NUM>. The encoding unit <NUM> includes a segmentation module <NUM> and a collection of encoding modules <NUM><NUM>-115n. The mapping unit <NUM> includes a modulation mapping module <NUM> and a layer mapping module <NUM>.

The encoding unit <NUM> encodes input data bits into one or more code blocks. In the illustrated embodiment, the segmentation module <NUM> accepts a stream of input data bits and segments them into a collection of code blocks CB<NUM>-CBn. Each of the collection of encoding modules <NUM><NUM>-115n encodes the input data bits in its respective code block to provide encoded bits in the collection of code blocks CB<NUM>-CBn, which serve as inputs to the rate matching unit <NUM>.

The rate matching unit <NUM> generates a stream of transmit bits from the collection of code blocks CB<NUM>-CBn. In one embodiment, a group of transmit bits allocated to one resource element originates from only one of the collection of code blocks CB<NUM>-CBn. In another embodiment, each code block contributes a number of transmit bits equal to a multiple of a product of a layer matching factor and a number of bits per symbol. The mapping unit <NUM> employs the modulation mapping module <NUM> to provide modulated symbols from the stream of transmit bits on a number of spatial transmission layers for one or more resource elements employing the layer mapping module <NUM>. The transmit unit <NUM> transmits the modulated symbols employing the multiple transmit antennas. In other embodiments of this disclosure, the transmit unit <NUM> may also combine modulated symbols from other transport blocks.

<FIG> illustrates a diagram of a receiver <NUM> constructed according to principles of the present disclosure. The receiver <NUM> corresponds to user equipment operating in a cellular network such as an OFDMA communication system. The receiver <NUM> includes a receiving and demodulating unit <NUM>, a rate de-matching unit <NUM> and a decoding unit <NUM>. The decoding unit <NUM> includes a collection of decoding modules <NUM><NUM>-220n and a de-segmentation module <NUM>.

The receiving and demodulation unit <NUM> receives and demodulates modulated symbols on one or more resource elements into a stream of received bit likelihoods corresponding to a number of spatial transmission layers on each resource element. The rate de-matching unit <NUM> generates one or more code blocks CB<NUM>-CBn of bit likelihoods from the stream of received bit likelihoods. In one embodiment, a group of the received bit likelihoods originating from one resource element is allocated to only one of the one or more code blocks CB<NUM>-CBn. In another embodiment, each code block is allocated a number of bit likelihoods equal to a multiple of a product of a layer matching factor and a number of bits per modulated symbol.

The decoding unit <NUM> employs the collection of decoding modules <NUM><NUM>-220n to decode the one or more code blocks CB<NUM>-CBn from encoded bits into data bits. The de-segmentation module <NUM> de-segments the resulting data bits of the one or more code blocks CB<NUM>-CBn and combines them into a stream of data bits.

The embodiments of <FIG> provide rate matching and rate de-matching that ensure code block boundaries are aligned with resource element boundaries, as illustrated below. <IMG>
<IMG>.

It may be seen that the number of output bits per code block is guaranteed to be a multiple of the product NL * Qm. In one embodiment, the value of NL equals the number of layers L. Thus, in the numerical example considered above (T = <NUM>, NL = L = <NUM> and C = <NUM>), it is easy to see that the above procedure yields {<NUM>, <NUM>, <NUM>} as the number of modulated symbols produced from each code block.

Other variations of this theme are also possible. For example, the layer matching factor NL above may be different from the employed number of spatial transmission layers. For instance, it may be any multiple of the number of transmission layers. One exemplary method is to set the layer matching factor NL equal to the number of transmit antennas, since this is the maximum number of transmission layers. Another example is to set the layer matching factor NL to be some number which is always divisible by the number of spatial transmission layers. For example, a layer matching factor NL equal to four may be used even if there is only one or two transmit antennas.

Another variation is to ensure that each equalizer block contains information from the same code block. This becomes important when space-time or space-frequency coding is used across multiple modulated symbol vectors. In this case, the number of layers equals the number of transmit antennas. However, any given resource element only contains two modulated symbols. Thus, in this case, it is sufficient to choose NL= <NUM> even though the number of layers is L = <NUM>.

In summary, one set of embodiments of the rate matching and rate de-matching schemes presented ensure that each resource element (such as a tone) only contains bits from the same code block. This employs use of the number of modulated symbols carried on each resource element for a given transport block. In particular, in the spatial multiplexing mode of 3GPP LTE, the number of modulated symbols is equal to the number of spatial transmission layers per transport block, which may be one or two. These embodiments are further discussed with respect to <FIG> and <FIG>.

Another set of embodiments of the rate matching and rate de-matching schemes presented ensure that the number of transmit bits from each code block is a multiple of a basic quantum, which is given by a product of a layer-matching factor and the number of bits per modulated symbol. The layer matching factor may equal to, or be less than, the number of transmission layers. For example, in the transmit diversity mode of 3GPP LTE, the layer matching factor is two, for both two and four spatial transmission layers. These embodiments are further discussed with respect to <FIG> and <FIG>.

<FIG> illustrates a flow diagram of a method of operating a transmitter <NUM> carried out according to the principles of the present disclosure. The method <NUM> may be employed by a base station transmitter having multiple transmit antennas, such as the one described with respect to <FIG>, and starts in a step <NUM>. Then, in a step <NUM>, input bits are segmented into one or more code blocks and coded bits are provided for each code block. A stream of transmit bits is generated from the one or more code blocks, wherein a group of transmit bits allocated to one resource element originates from only one of the one or more code blocks, in a step <NUM>.

In one embodiment, the group of transmit bits allocated to the one resource element consists of contiguous bits in the stream of transmit bits. Additionally, the group of transmit bits allocated to the one resource element corresponds to two, four or six bits for each modulated symbol.

Modulated symbols are provided from the group of transmit bits allocated to the one resource element on a number of spatial transmission layers for one or more resource elements, in a step <NUM>. The modulated symbols are transmitted employing the multiple transmit antennas in a step <NUM>, and the method <NUM> ends in a step <NUM>.

<FIG> illustrates a flow diagram of another method of operating a transmitter <NUM> carried out according to the principles of the present disclosure. The method <NUM> may also be employed by a base station transmitter having multiple transmit antennas, such as the one described with respect to <FIG>, and starts in a step <NUM>.

Then, in a step <NUM>, input bits are segmented into one or more code blocks and coded bits are provided for each code block. A stream of transmit bits is generated from the one or more code blocks, wherein each code block contributes a number of transmit bits equal to a multiple of a product of a layer matching factor and a number of bits per symbol, in a step <NUM>.

In one embodiment, the layer matching factor may be equal to the number of spatial transmission layers. Alternatively, the layer matching factor may be a multiple of the number of spatial transmission layers. Additionally, the layer matching factor may be equal to two while the number of spatial transmission layers equals four.

Modulated symbols are provided from the stream of transmit bits on a number of spatial transmission layers for one or more resource elements, in a step <NUM>. The modulated symbols are transmitted employing the multiple transmit antennas in a step <NUM>, and the method <NUM> ends in a step <NUM>.

<FIG> illustrates a flow diagram of a method of operating a receiver <NUM> carried out according to the principles of the present disclosure. The method <NUM> may be employed by a user equipment receiver, such as the one described with respect to <FIG>, and starts in a step <NUM>. Then, in a step <NUM>, modulated symbols on one or more resource elements are received and demodulated into a stream of received bit likelihoods corresponding to a number of spatial transmission layers on each resource element.

One or more code blocks of bit likelihoods is generated from the stream of received bit likelihoods in a step <NUM>, wherein a group of the received bit likelihoods originating from one resource element is allocated to only one of the one or more code blocks. The group of received bit likelihoods originating from the one resource element consists of contiguous bit likelihoods in the stream of received bit likelihoods. Additionally, the group of received bit likelihoods originating from the one resource element corresponds to two, four or six bits for each modulated symbol. The one or more code blocks are decoded and de-segmented into data bits in a step <NUM>, and the method <NUM> ends in a step <NUM>.

<FIG> illustrates a flow diagram of another method of operating a receiver <NUM> carried out according to the principles of the present disclosure. The method <NUM> may also be employed by a user equipment receiver, such as the one described with respect to <FIG>, and starts in a step <NUM>. Then, in a step <NUM>, modulated symbols on one or more resource elements are received and demodulated into a stream of received bit likelihoods corresponding to a number of spatial transmission layers on each resource element.

One or more code blocks of bit likelihoods is generated from the stream of received bit likelihoods in a step <NUM>, wherein each code block is allocated a number of bit likelihoods equal to a multiple of a product of a layer matching factor and a number of bits per modulated symbol.

The layer matching factor may be equal to the number of spatial transmission layers. Alternately, the layer matching factor may be a multiple of the number of spatial transmission layers. Additionally, the layer matching factor may equal two while the number of spatial transmission layers equals four. The one or more code blocks are decoded and de-segmented into data bits in a step <NUM>, and the method <NUM> ends in a step <NUM>.

While the methods disclosed herein have been described and shown with reference to particular steps performed in a particular order, it will be understood that these steps may be combined, subdivided, or reordered to form an equivalent method without departing from the teachings of the present disclosure. Accordingly, unless specifically indicated herein, the order or the grouping of the steps is not a limitation of the present disclosure.

Claim 1:
A method comprising:
setting G' = G/(NL · Qm) , where G is a total number of bits, NL is a factor determined based on a number of spatial transmission layers, and Qm is a QAM dimension;
setting γ = G' mod C , where C is a number of code blocks;
for each code block r, setting <MAT> if r is less than or equal to C - γ - <NUM>, otherwise setting <MAT>, where E is a number of bits per code block r, and where r = <NUM>,<NUM>,...,C - <NUM> ; and
performing rate matching or rate de-matching based on E.