The present application claims priority to provisional U.S. Application Ser. No. 61/040,700, entitled “DISCONTINUOUS TRANSMISSION DETECTION IN JOINT ACKNOWLEDGEMENT AND CHANNEL QUALITY INDICATION TRANSMISSION IN PHYSICAL UPLINK CONTROL CHANNEL FOR EXTENDED CYCLIC PREFIX,” filed Mar. 30, 2008, assigned to the assignee hereof and incorporated herein by reference.
BACKGROUND
I. Field
The present disclosure relates generally to communication, and more specifically to techniques for encoding and decoding control information in a wireless communication system.
II. Background
Wireless communication systems are widely deployed to provide various communication content such as voice, video, packet data, messaging, broadcast, etc. These wireless systems may be multiple-access systems capable of supporting multiple users by sharing the available system resources. Examples of such multiple-access systems include Code Division Multiple Access (CDMA) systems, Time Division Multiple Access (TDMA) systems, Frequency Division Multiple Access (FDMA) systems, Orthogonal FDMA (OFDMA) systems, and Single-Carrier FDMA (SC-FDMA) systems.
A wireless communication system may include a number of Node Bs that can support communication for a number of user equipments (UEs). A Node B may transmit data to a UE on the downlink and/or may receive data from the UE on the uplink. The downlink (or forward link) refers to the communication link from the Node B to the UE, and the uplink (or reverse link) refers to the communication link from the UE to the Node B. The UE may send channel quality indicator (CQI) information indicative of the downlink channel quality to the Node B. The Node B may select a rate based on the CQI information and may send data at the selected rate to the UE. The UE may send acknowledgement (ACK) information for data received from the Node B. The Node B may determine whether to retransmit pending data or to transmit new data to the UE based on the ACK information. It is desirable to reliably send and receive ACK and CQI information in order to achieve good performance.
SUMMARY
Techniques for sending control information, such as CQI and ACK information, in a wireless communication system are described herein. In an aspect, a transmitter (e.g., a UE) may encode one or more types of information based on a linear block code and may order the different types of information such that a receiver can recover the information even in the presence of discontinuous transmission (DTX) of one type of information.
In one design, a UE may map first information (e.g., CQI information) to M most significant bits (MSBs) of a message, where M≧1. The UE may map second information (e.g., ACK information) to N least significant bits (LSBs) of the message if the second information is sent, where N≧1. The message may thus include only the first information or both the first and second information. The UE may encode the message with a block code to obtain an output bit sequence. In one design, the block code may be derived based on a Reed-Muller code and may comprise multiple basis sequences for multiple information bits. The UE may encode the M MSBs of the message with the first M basis sequences of the block code. The UE may encode the N LSBs of the message with the next N basis sequences of the block code if the second information is sent.
The second information may comprise N bits for ACK information. In one design, the UE may set each bit to a first value (e.g., ‘1’) for an ACK or to a second value (e.g., ‘0’) for a negative acknowledgement (NACK). The second value may also be used for DTX of ACK information. This design may allow a Node B to detect NACK if the UE misses a downlink transmission from the Node B and sends DTX for ACK information. The Node B may then resend data to the UE, which may be the desired response.
Various aspects and features of the disclosure are described in further detail below.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows a wireless communication system.
FIG. 2 shows example transmissions on the downlink and uplink.
FIGS. 3A to 3C show transmission of CQI and ACK information.
FIG. 4 shows a process performed by a UE to send control information.
FIG. 5 shows a process performed by a Node B to receive control information.
FIGS. 6A and 6B show plots of decoding performance.
FIGS. 7 and 10 show two processes for sending control information.
FIG. 8 shows a process for encoding control information.
FIGS. 9 and 11 show two apparatuses for sending control information.
FIGS. 12 and 14 show two processes for receiving control information.
FIGS. 13 and 15 show two apparatuses for receiving control information.
FIG. 16 shows a block diagram of a Node B and a UE.
DETAILED DESCRIPTION
The techniques described herein may be used for various wireless communication systems such as CDMA, TDMA, FDMA, OFDMA, SC-FDMA and other systems. The terms “system” and “network” are often used interchangeably. A CDMA system may implement a radio technology such as Universal Terrestrial Radio Access (UTRA), cdma2000, etc. UTRA includes Wideband CDMA (WCDMA) and other variants of CDMA. cdma2000 covers IS-2000, IS-95 and IS-856 standards. A TDMA system may implement a radio technology such as Global System for Mobile Communications (GSM). An OFDMA system may implement a radio technology such as Evolved UTRA (E-UTRA), Ultra Mobile Broadband (UMB), IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802.20, Flash-OFDM®, etc. UTRA and E-UTRA are part of Universal Mobile Telecommunication System (UMTS). 3GPP Long Term Evolution (LTE) is an upcoming release of UMTS that uses E-UTRA, which employs OFDMA on the downlink and SC-FDMA on the uplink. UTRA, E-UTRA, UMTS, LTE and GSM are described in documents from an organization named “3rd Generation Partnership Project” (3GPP). cdma2000 and UMB are described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2). The techniques described herein may be used for the systems and radio technologies mentioned above as well as other systems and radio technologies. For clarity, certain aspects of the techniques are described below for LTE, and LTE terminology is used in much of the description below.
FIG. 1 shows a wireless communication system 100, which may be an LTE system. System 100 may include a number of Node Bs 110 and other network entities. A Node B may be a station that communicates with the UEs and may also be referred to as an evolved Node B (eNB), a base station, an access point, etc. UEs 120 may be dispersed throughout the system, and each UE may be stationary or mobile. A UE may also be referred to as a mobile station, a terminal, an access terminal, a subscriber unit, a station, etc. A UE may be a cellular phone, a personal digital assistant (PDA), a wireless modem, a wireless communication device, a handheld device, a laptop computer, a cordless phone, a wireless local loop (WLL) station, etc.
The system may support hybrid automatic retransmission (HARQ). For HARQ on the downlink, a Node B may send a transmission of data and may send one or more retransmissions until the data is decoded correctly by a recipient UE, or the maximum number of retransmissions has been sent, or some other termination condition is encountered. HARQ may improve reliability of data transmission.
FIG. 2 shows example downlink transmission by a Node B and example uplink transmission by a UE. The transmission timeline may be partitioned into units of subframes. Each subframe may have a particular duration, e.g., one millisecond (ms). The UE may periodically estimate the downlink channel quality for the Node B and may send CQI information on a physical uplink control channel (PUCCH) to the Node B. In the example shown in FIG. 2, the UE may send CQI information periodically in every sixth subframe, e.g., subframes t, t+6, t+12, etc.
The Node B may use the CQI information and/or other information to select the UE for downlink transmission and to select a suitable transport format (e.g., a modulation and coding scheme) for the UE. The Node B may process a transport block in accordance with the selected transport format and obtain a codeword. A transport block may also be referred to as a packet, etc. The Node B may send control information on a physical downlink control channel (PDCCH) and a transmission of the codeword on a physical downlink shared channel (PDSCH) to the UE in subframe t+4. The control information may comprise the selected transport format, the resources used for the data transmission on the PDSCH, and/or other information. The UE may process the PDCCH to obtain the control information and may process the PDSCH in accordance with the control information to decode the codeword. The UE may generate ACK information, which may comprise an ACK if the codeword is decoded correctly or a NACK if the codeword is decoded in error. The UE may send the ACK information on the PUCCH in subframe t+6. The Node B may send a retransmission of the codeword if a NACK is received and may send a transmission of a new codeword if an ACK is received. FIG. 2 shows an example in which the ACK information is delayed by two subframes from the codeword transmission. The ACK information may also be delayed by some other amount.
In the example shown in FIG. 2, the Node B may send control information on the PDCCH and a re/transmission of a codeword on the PDSCH in subframe t+10. The UE may miss the control information sent on the PDCCH (e.g., decode the control information in error) and would then miss the data transmission sent on the PDSCH. The UE may then send DTX (i.e., nothing) for ACK information in subframe t+12. The Node B may expect to receive CQI and ACK information in subframe t+12. The Node B may receive DTX for the ACK information, interpret the DTX as NACK, and send a retransmission of the codeword.
As shown in FIG. 2, the UE may send CQI and/or ACK information on the PUCCH. The ACK information may convey whether each transport block sent by the Node B to the UE is decoded correctly or in error by the UE. The amount of ACK information to send by the UE may be dependent on the number of transport blocks sent to the UE. In one design, the ACK information may comprise one or two ACK bits depending on whether one or two transport blocks are sent to the UE. In other designs, the ACK information may comprise more ACK bits. The CQI information may convey the downlink channel quality estimated by the UE for the Node B. The CQI information may comprise one or more quantized values for a channel quality metric such as signal-to-noise ratio (SNR), signal-to-noise-and-interference ratio (SINR), etc. The CQI information may also comprise one or more transport formats determined based on the channel quality metric. In any case, the amount of CQI information to send by the UE may be dependent on various factors such as the number of spatial channels available for downlink transmission, the format for reporting the downlink channel quality, the desired granularity of the reported downlink channel quality, etc. In one design, the CQI information may comprise 4 to 11 bits. In other designs, the CQI information may comprise fewer or more bits.
As shown in FIG. 2, the UE may send only CQI information or both CQI and ACK information on the PUCCH in a given subframe. The UE may send CQI information at a periodic rate and in specific subframes, which may be known by both the UE and the Node B. The UE may send only CQI information when there is no ACK information to send, e.g., in subframe t in FIG. 2. The UE may also send only CQI information when the UE misses the PDCCH and sends DTX for ACK information, e.g., in subframe t+12 in FIG. 2. The UE may send both CQI and ACK information when the UE receives the PDCCH and decodes the PDSCH, e.g., in subframe t+6 in FIG. 2. The UE may also send only ACK information, which is not shown in FIG. 2.
The UE may encode only CQI information or both CQI and ACK information in various manners. In general, it may be desirable for the UE to encode and send only CQI information or both CQI and ACK information such that the Node B can reliably receive the information sent by the UE.
In an aspect, the UE may encode only CQI information or both CQI and ACK information based on a linear block code. The UE may order the different types of information to send such that the Node B can recover the information even in the presence of DTX of one type of information, as described below.
The CQI information may comprise M bits, where M may be any suitable value and M≦11 in one design. The ACK information may comprise N bits, where N may also be any suitable value and N≦2 in one design. In one design, only CQI information or both CQI and ACK information may be encoded based on a (20, L) block code, which may be derived from a (32, 6) Reed-Muller code, where L≧M+N.
In general, an (R, C) Reed-Muller code may be used to encode up to C information bits and generate R code bits. The (R, C) Reed-Muller code may be defined by an R×C generator matrix GR×C having R rows and C columns. A generator matrix G2×2 for a (2, 2) Reed-Muller code with R=2 and C=2 may be given as:
A generator matrix G2R×C+1 for a (2R, C+1) Reed-Muller code may be given as:
where 1 is an R×1 vector of all ones, and 0 is an R×1 vector of all zeros.
A (32, 6) Reed-Muller code may be defined by a generator matrix G32×6, which may be generated based on equations (1) and (2). The 6 columns of generator matrix G32×6 may be denoted as v0 through v5. A (32, 21) second-order Reed-Muller code may be defined by a generator matrix G32×21 containing the six columns of G32×6 and 15 additional columns generated by linear combination of different possible pairs of columns of G32×6. For example, the seventh column of G32×21 may be generated based on v0 and v1, the eighth column may be generated based on v0 and v2, and so on, and the last column may be generated based on v4 and v5.
The (20, L) block code may be obtained by taking 20 rows and L columns of the (32, 21) second-order Reed-Muller code, where L may be any suitable value. The (20, L) block code may be defined by a generator matrix G20×L having 20 rows and L columns. Each column of G20×L is a basis sequence of length 20 and may be used to encode one information bit. Table 1 shows a generator matrix G20×13 for a (20, 13) block code for a case in which L=13.
TABLE 1 |
|
Basis sequences for (20, 13) block code |
i |
Mi,0 |
Mi,1 |
Mi,2 |
Mi,3 |
Mi,4 |
Mi,5 |
Mi,6 |
Mi,7 |
Mi,8 |
Mi,9 |
Mi,10 |
Mi,11 |
Mi,12 |
|
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
2 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
3 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
4 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
5 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
6 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
7 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
8 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
9 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
10 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
11 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
12 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
13 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
14 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
15 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
16 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
17 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
18 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
19 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
bit |
a0 |
a1 |
a2 |
a3 |
a4 |
a5 |
a6 |
a7 |
a8 |
a9 |
a10 |
a11 |
a12 |
|
A message of K information bits may be defined based on only CQI information or both CQI and ACK information. The message may also be referred to as a word, input data, etc. In one coding design, CQI information may be mapped to M MSBs and ACK information may be mapped to N LSBs of the message, as follows:
If only CQI information is sent:
ak=a′k for k=0, . . . , M−1, with K=M, and Eq (3)
If both CQI and ACK information are sent:
ak=a′k for k=0, . . . , M−1,
a k+M =a′ k for k=0, . . . , N−1, with K=M+N, Eq (4)
where
a′k is the k-th CQI bit, with k=0, . . . , M−1,
a″k is the k-th ACK bit, with k=0, . . . , N−1, and
a0 is the MSB and aK−1 is the LSB of the message.
The message includes K information bits a0 through aK−1, where K=M if only CQI information is sent and K=M+N if both CQI and ACK information are sent. The K information bits in the message may be encoded with a (20, K) block code as follows:
where bi denotes the i-th code bit and “mod” denotes a modulo operation. The (20, K) block code may be formed with the first K basis sequences or columns of the (20, L) block code.
As shown in equation (5), each information bit ak may be encoded by multiplying ak with each element Mi,k of a basis sequence for that information bit to obtain an encoded basis sequence. K encoded basis sequences for the K information bits may be combined with modulo-2 addition to obtain an output bit sequence (or codeword) composed of coded bits b0 through b19.
For the coding design shown in equations (3) to (5), if only CQI information is sent, then M CQI bits may be encoded with a (20, M) block code formed by the first M basis sequences of the (20, L) block code. If both CQI and ACK information are sent, then M CQI bits and N ACK bits may be encoded with a (20, M+N) block code formed by the first M+N basis sequences of the (20, L) block code. The M CQI bits may be encoded with the first M basis sequences and the N ACK bits may be encoded with the next N basis sequences of the (20, L) block code.
In one ACK mapping design, an ACK bit may be defined as follows:
where a″k is the k-th ACK bit for the k-th transport block, with k=0, . . . , N−1.
FIG. 3A shows transmission of only CQI information in accordance with the coding and mapping designs described above. The UE may map M bits for CQI information to bits a0 through aM−1 of a message, with a0 being the MSB and aM−1 being the LSB. The UE may encode bits a0 through aM−1 with the (20, M) block code formed by the first M basis sequences of the (20, L) block code and may obtain 20 code bits b0 through b19. The UE may send the code bits on the PUCCH. The Node B may expect to receive only CQI information and may decode the PUCCH transmission in accordance with the (20, M) block code. The Node B may perform maximum likelihood decoding or may implement some other decoding algorithm. The Node B may obtain M decoded bits ã1 through ãM−1 and may interpret these decoded bits as CQI bits.
FIG. 3B shows transmission of both CQI and ACK information in accordance with the coding and mapping designs described above. The UE may map M bits for CQI information to bits a0 through aM−1 and may map N bits for ACK information to bits aM through aM+N−1 of a message, with a0 being the MSB and aM+N−1 being the LSB. The UE may encode bits a0 through aM+N−1 with the (20, M+N) block code formed by the first M+N basis sequences of the (20, L) block code and may obtain code bits b0 through b19. The UE may send the code bits on the PUCCH. The Node B may expect to receive both CQI and ACK information and may decode the PUCCH transmission in accordance with the (20, M+N) block code. The Node B may obtain M+N decoded bits ã1 through ãM+N−1. The Node B may interpret the first M decoded bits ã1 through ãM−1 as CQI bits and may interpret the last N decoded bits ãM through ãM+N−1 as ACK bits.
FIG. 3C shows transmission of CQI information and DTX for ACK information in accordance with the coding and mapping designs described above. The UE may miss the PDCCH and may send only CQI information by (i) mapping M bits for CQI information to bits a0 through aM−1 of a message and (ii) encoding bits a0 through aM−1 with the (20, M) block code, as shown in FIG. 3A. This is equivalent to the UE sending CQI information and DTX for ACK information by (i) mapping M bits for CQI information to bits a0 through aM−1, (ii) mapping N zeros to bits aM through aM+N−1, and (iii) encoding bits a0 through aM+N−1 with the (20, M+N) block code to obtain code bits b0 through b19, as shown in FIG. 3C. The code bits b0 through b19 in FIG. 3C are equal to the code bits b0 through b19 in FIG. 3A. The UE may send the code bits on the PUCCH. The Node B may expect to receive both CQI and ACK information and may decode the PUCCH transmission in accordance with the (20, M+N) block code. The Node B may obtain M+N decoded bits ã1 through ãM+N−1. The Node B may interpret the first M decoded bits ã1 through ãM−1 as CQI bits and may interpret the last N decoded bits ãM through ãM+N−1 as ACK bits. Since the UE sent DTX for the N ACK bits, the Node B would receive NACKs for the ACK bits due to the mapping shown in equation (6).
The coding and mapping designs described above and shown in FIGS. 3A to 3C may allow the Node B to correctly recover CQI information and properly respond to DTX even in a scenario in which the UE misses the PDCCH and transmits only CQI information using the (20, M) block code. In particular, transmitting M CQI bits using the (20, M) block code in FIG. 3A is equivalent to transmitting M CQI bits and N zeros using the (20, M+N) block code in FIG. 3C. The Node B may decode the PUCCH transmission using the (20, M+N) block code when the Node B expects to receive both CQI and ACK information and may obtain M+N decoded bits. The Node B may interpret the M decoded MSBs as being for CQI information and the N decoded LSBs as being for ACK information. If the UE transmits DTX for ACK information, then the Node B would obtain zeros for the N decoded LSBs (assuming correct decoding by the Node B). The Node B may interpret these zeros as NACKs and may send a retransmission to the UE, which would be the desired Node B response for the DTX from the UE.
FIG. 4 shows a design of a process 400 performed by the UE for sending feedback control information on the PUCCH. The UE may obtain CQI information and/or ACK information to send (block 412). The UE may determine whether only CQI information is being sent (block 414). If the answer is ‘Yes’, then the UE may encode M bits of the CQI information with the (20, M) block code (block 416) and may send the code bits on the PUCCH (block 418).
If the answer is ‘No’ for block 414, then the UE may determine whether both CQI and ACK information are being sent (block 422). If the answer is ‘Yes’, then the UE may map CQI information to M MSBs and may map ACK information to N LSBs of a message (block 424). The UE may then encode the M MSBs and the N LSBs with the (20, M+N) block code (block 426) and may send the code bits on the PUCCH (block 428).
If the answer is ‘No’ for block 422, then only ACK information is being sent. The UE may encode the ACK information (block 432) and may send the code bits on the PUCCH (block 434).
FIG. 5 shows a design of a process 500 performed by the Node B to receive feedback control information from the UE. The Node B may receive a transmission on the PUCCH from the UE (block 512). The Node B may determine whether only CQI information is expected from the UE (block 514). If the answer is ‘Yes’ for block 514, which may be the case if no data has been sent to the UE, then the Node B may decode the received transmission based on the (20, M) block code to obtain M decoded bits (block 516). The Node B may provide these M decoded bits as M CQI bits (block 518).
If the answer is ‘No’ for block 514, then the Node B may determine whether both CQI and ACK information are expected from the UE (block 522). If the answer is ‘Yes’ for block 522, which may be the case if data has been sent to the UE, then the Node B may decode the received transmission based on the (20, M+N) block code to obtain M+N decoded bits (block 524). The Node B may provide the M MSBs of the decoded bits as M CQI bits (block 526) and may provide the N LSBs of the decoded bits as N ACK bits (block 528). The Node B may interpret zeros for the ACK bits as NACK/DTX (block 530). If the answer is ‘No’ for block 522, then the Node B may decode the received transmission to obtain ACK bits (block 532).
The coding and mapping designs shown in FIGS. 3A to 5 may avoid decoding errors due to transmission of DTX for ACK information. Decoding errors may occur in an alternate design in which ACK information is mapped to N MSBs and CQI information is mapped to M LSBs (which is opposite of the coding design shown in FIGS. 3A to 3C). In this alternate design, if only CQI information is sent, then M CQI bits may be encoded with the first M basis sequences of the (20, L) block code. If both CQI and ACK information are sent, then N ACK bits may be encoded with the first N basis sequences and M CQI bits may be encoded with the next M basis sequences of the (20, L) block code. The UE may miss the PDCCH and may send only CQI information using the (20, M) block code formed by the first M basis sequences of the (20, L) block code. The Node B may expect both CQI and ACK information and may decode based on the (20, N+M) block code formed by the first N+M basis sequences of the (20, L) block code. The Node B may obtain N decoded bits for the first N basis sequences and may interpret these N decoded bits as being for ACK information. The Node B may obtain M decoded bits for the next M basis sequences and may interpret these M decoded bits as being for CQI information. The Node B may obtain erroneous ACK information since the N decoded bits interpreted as ACK bits are actually N MSBs of the CQI information sent by the UE. The Node B may also obtain erroneous CQI information since the M decoded bits interpreted as CQI bits are actually M-N LSBs of the CQI information and N bits of DTX. The design in FIGS. 3A to 5 may avoid these errors.
Computer simulations were performed to determine decoding performance for (i) a first mapping scheme with CQI information mapped to MSBs and ACK information mapped to LSBs (e.g., as shown in FIG. 3B) and (ii) a second mapping scheme with ACK information mapped to MSBs and CQI information mapped to LSBs (the alternate design). The results of the computer simulations are summarized by the following plots.
FIG. 6A shows plots of decoding performance for the first and second mapping schemes for a scenario with 5 CQI bits and 1 ACK bit using a (20, 6) block code formed with the first six basis sequences of the (20, 13) block code. The horizontal axis represents received signal quality, which is given in energy-per-symbol-to-total-noise ratio (Es/Nt). The vertical axis represents block error rate (BLER). For the first mapping scheme, decoding performance for CQI information is shown by a plot 612, and decoding performance for ACK information is shown by a plot 614. For the second mapping scheme, decoding performance for CQI information is shown by a plot 622, and decoding performance for ACK information is shown by a plot 624.
FIG. 6B shows plots of decoding performance for the first and second mapping schemes for a scenario with 8 CQI bits and 2 ACK bit using a (20, 10) block code formed with the first ten basis sequences of the (20, 13) block code. For the first mapping scheme, decoding performance for CQI information is shown by a plot 632, and decoding performance for ACK information is shown by a plot 634. For the second mapping scheme, decoding performance for CQI information is shown by a plot 642, and decoding performance for ACK information is shown by a plot 644.
As shown in FIGS. 6A and 6B, similar decoding performance may be obtained for the two mapping schemes. The computer simulations indicate that mapping the ACK information to LSBs or MSBs provide similar decoding performance using the (20, 13) block code in an additive white Gaussian noise (AWGN) channel. The computer simulations suggest that the (20, 13) block code provides equivalent protection for all information bits and that mapping ACK information to either the MSBs or LSBs minimally affect decoding performance.
For clarity, the techniques have been specifically described above for a block code derived based on a Reed-Muller code. The techniques may also be used for other types of block codes such as Reed-Solomon code, etc.
Also for clarity, the techniques have been described above for transmission of only CQI information or both CQI and ACK information. In general, the techniques may be used to send first information and second information, each of which may be any type of information. The first information may be mapped to M MSBs, where M≧1. The second information may be mapped to N LSBs if it is sent, where N≧1. The M MSBs and the N LSBs may be encoded with a block code comprising a first sub-code for the M MSBs and a second sub-code for the N LSBs. The first sub-code may be equal to the block code used to encode only the first information. This may allow a receiver to recover the first information regardless of whether it is sent alone or with the second information. The second information may also be defined such that DTX of the second information would result in proper action by the receiver.
FIG. 7 shows a design of a process 700 for sending information in a communication system. Process 700 may be performed by a UE (as described below) or by some other entity. The UE may map first information (e.g., CQI information) to M MSBs of a message, where M may be one or greater (block 712). The UE may map second information (e.g., ACK information) to N LSBs of the message if the second information is sent, where N may be one or greater (block 714). The first information may be sent alone or with the second information in the message. The second information may be sent with the first information or not sent in the message. The UE may encode the message with a block code to obtain an output bit sequence (block 716). The UE may send the output bit sequence on the PUCCH (block 718).
FIG. 8 shows a design of block 716 in FIG. 7. The block code may be derived based on a Reed-Muller code and/or may comprise a plurality of basis sequences for a plurality of information bits. The UE may encode the M MSBs of the message with the first M basis sequences of the block code (block 812). The UE may encode the N LSBs of the message with the next N basis sequences of the block code if the second information is sent (block 814).
In one design, if only CQI information is sent, then the message may comprise M bits and may be encoded with the first M basis sequences of the block code. If both CQI and ACK information are sent, then the message may comprise M plus N bits and may be encoded with the first M plus N basis sequences of the block code. In one design, the UE may set each of N ACK bits to a first value (e.g., ‘1’) for an ACK or to a second value (e.g., ‘0’) for a NACK. The second value may also be used for DTX of the ACK information. The ACK information may comprise the N ACK bits.
FIG. 9 shows a design of an apparatus 900 for sending information in a communication system. Apparatus 900 includes a module 912 to map first information to M MSBs of a message, a module 914 to map second information to N LSBs of the message if the second information is sent, a module 916 to encode the message with a block code to obtain an output bit sequence, and a module 918 to send the output bit sequence on the PUCCH.
FIG. 10 shows a design of a process 1000 for sending information in a communication system. Process 1000 may be performed by a UE (as described below) or by some other entity. The UE may encode first information (e.g., CQI information) based on a first block code if only the first information is sent (block 1012). The UE may encode the first information and second information (e.g., ACK information) based on a second block code if both the first and second information are sent (block 1014). The second block code may comprise a first sub-code for the first information and a second sub-code for the second information. The first sub-code may correspond to the first block code. For example, the first block code and the first sub-code may comprise the first M basis sequences of a base block code, the second sub-code may comprise the next N basis sequences of the base block code, and the second block code may comprise the first M plus N basis sequences of the base block code.
In one design, the UE may set each of N bits to a first value for an ACK or to a second value for a NACK, where N is one or greater. The second value may also be used for DTX of the second information. The second information may comprise the N bits.
FIG. 11 shows a design of an apparatus 1100 for sending information in a communication system. Apparatus 1100 includes a module 1112 to encode first information (e.g., CQI information) based on a first block code if only the first information is sent, and a module 1114 to encode the first information and second information (e.g., ACK information) based on a second block code if both the first and second information are sent. The second block code may comprise a first sub-code for the first information and a second sub-code for the second information. The first sub-code may correspond to the first block code.
FIG. 12 shows a design of a process 1200 for receiving information in a communication system. Process 1200 may be performed by a Node B (as described below) or by some other entity. The Node B may decode a received transmission based on a block code to obtain a decoded message comprising multiple bits (block 1212). The Node B may provide M MSBs of the decoded message as first information (e.g., CQI information), where M may be one or greater (block 1214). The Node B may provide N LSBs of the decoded message as second information (e.g., ACK information), where N may be one or greater (block 1216). The received transmission may comprise only the first information or both the first and second information.
The block code may be derived based on a Reed-Muller code and/or may comprise a plurality of basis sequences for a plurality of information bits. In one design of block 1216, the Node B may decode the received transmission based on the first M plus N basis sequences of the block code to obtain the decoded message. The M MSBs of the decoded message may be obtained based on the first M basis sequences of the block code. The N LSBs of the decoded message may be obtained based on the next N basis sequences of the block code. In one design, for each bit among the N LSBs of the decoded message, the Node B may provide an ACK if the bit has a first value or a NACK if the bit has a second value. The second value may also be used for DTX of the ACK information.
In one design, the Node B may obtain the received transmission on the PUCCH. The received transmission may comprise a first output bit sequence if only CQI information is sent and may comprise a second output bit sequence if both CQI and ACK information are sent. The first output bit sequence may be obtained by encoding M bits of the CQI information with the first M basis sequences of the block code. The second output bit sequence may be obtained by encoding (i) M bits of the CQI information with the first M basis sequences of the block code and (ii) N bits of the ACK information with the next N basis sequences of the block code.
FIG. 13 shows a design of an apparatus 1300 for receiving information in a communication system. Apparatus 1300 includes a module 1312 to decode a received transmission based on a block code to obtain a decoded message comprising multiple bits, a module 1314 to provide M MSBs of the decoded message as first information, and a module 1316 to provide N LSBs of the decoded message as second information. The received transmission may comprise only the first information or both the first and second information.
FIG. 14 shows a design of a process 1400 for receiving information in a communication system. Process 1400 may be performed by a Node B (as described below) or by some other entity. The Node B may decode a received transmission based on a first block code if only first information (e.g., CQI information) is expected from the received transmission (block 1412). The Node B may decode the received transmission based on a second block code if both the first information and second information (e.g., ACK information) are expected from the received transmission (block 1414). The second block code may comprise a first sub-code for the first information and a second sub-code for the second information. The first sub-code may correspond to the first block code.
In one design, if the second information is expected from the received transmission, then for each of at least one decoded bit for the second information, the Node B may provide an ACK if the bit has a first value or a NACK if the bit has a second value. The second value may also be used for DTX of the second information.
FIG. 15 shows a design of an apparatus 1500 for receiving information in a communication system. Apparatus 1500 includes a module 1512 to decode a received transmission based on a first block code if only first information (e.g., CQI information) is expected from the received transmission, and a module 1514 to decode the received transmission based on a second block code if both the first information and second information (e.g., ACK information) are expected from the received transmission. The second block code may comprise a first sub-code for the first information and a second sub-code for the second information. The first sub-code may correspond to the first block code.
The modules in FIGS. 9, 11, 13 and 15 may comprise processors, electronics devices, hardware devices, electronics components, logical circuits, memories, software codes, firmware codes, etc., or any combination thereof.
FIG. 16 shows a block diagram of a design of a Node B 110 and a UE 120, which may be one of the Node Bs and one of the UEs in FIG. 1. In this design, Node B 110 is equipped with T antennas 1634 a through 1634 t, and UE 120 is equipped with R antennas 1652 a through 1652 r, where in general T≧1 and R≧1.
At Node B 110, a transmit processor 1620 may receive data for one or more UEs from a data source 1612, process (e.g., encode, interleave, and modulate) the data for each UE based on one or more transport formats selected for that UE, and provide data symbols for all UEs. Transmit processor 1620 may also process control information from a controller/processor 1640 and provide control symbols. A transmit (TX) multiple-input multiple-output (MIMO) processor 1630 may multiplex the data symbols, the control symbols, and/or pilot symbols. TX MIMO processor 1630 may perform spatial processing (e.g., preceding) on the multiplexed symbols, if applicable, and provide T output symbol streams to T modulators (MODs) 1632 a through 1632 t. Each modulator 1632 may process a respective output symbol stream (e.g., for OFDM) to obtain an output sample stream. Each modulator 1632 may further process (e.g., convert to analog, amplify, filter, and upconvert) the output sample stream to obtain a downlink signal. T downlink signals from modulators 1632 a through 1632 t may be transmitted via T antennas 1634 a through 1634 t, respectively.
At UE 120, antennas 1652 a through 1652 r may receive the downlink signals from Node B 110 and provide received signals to demodulators (DEMODs) 1654 a through 1654 r, respectively. Each demodulator 1654 may condition (e.g., filter, amplify, downconvert, and digitize) a respective received signal to obtain received samples. Each demodulator 1654 may further process the received samples (e.g., for OFDM) to obtain received symbols. A MIMO detector 1656 may obtain received symbols from all R demodulators 1654 a through 1654 r, perform MIMO detection on the received symbols if applicable, and provide detected symbols. A receive processor 1658 may process (e.g., demodulate, deinterleave, and decode) the detected symbols, provide decoded control information to a controller/processor 1680, and provide decoded data for UE 120 to a data sink 1660.
On the uplink, at UE 120, data from a data source 1662 and control information (e.g., CQI information, ACK information, etc.) from controller/processor 1680 may be processed by a transmit processor 1664, precoded by a TX MIMO processor 1666 if applicable, conditioned by modulators 1654 a through 1654 r, and transmitted to Node B 110. At Node B 110, the uplink signals from UE 120 may be received by antennas 1634, conditioned by demodulators 1632, processed by a MIMO detector 1636 if applicable, and further processed by a receive processor 1638 to obtain the data and control information transmitted by UE 120.
Controllers/ processors 1640 and 1680 may direct the operation at Node B 110 and UE 120, respectively. Processor 1680 and/or other processors/modules at UE 120 (and also processor 1640 and/or other processors/modules at Node B 110) may perform or direct process 400 in FIG. 4, process 700 in FIG. 7, process 716 in FIG. 8, process 1000 in FIG. 10, and/or other processes for the techniques described herein. Processor 1640 and/or other modules at Node B 110 (and also processor 1680 and/or other processors/modules at UE 120) may perform or direct process 500 in FIG. 5, process 1200 in FIG. 12, process 1400 in FIG. 14, and/or other processes for the techniques described herein. Memories 1642 and 1682 may store data and program codes for Node B 110 and UE 120, respectively. A scheduler 1644 may schedule UEs for downlink and/or uplink transmission and may provide assignments of resources for the scheduled UEs.
Those of skill in the art would understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
The various illustrative logical blocks, modules, and circuits described in connection with the disclosure herein may be implemented or performed with a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The steps of a method or algorithm described in connection with the disclosure herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
In one or more exemplary designs, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
The previous description of the disclosure is provided to enable any person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the spirit or scope of the disclosure. Thus, the disclosure is not intended to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.