Multi-carrier modulation is a modulation technique where data is modulated onto multiple carriers or subcarriers, rather than being modulated onto a single carrier. Multi-carrier Code Division Multiple Access (MC-CDMA) is an example of multi-carrier modulation where each carrier occupies a separate frequency band. In each frequency band, the transmission technology or format may be similar to or the same as those used in a single carrier system. In doing so, a multi-carrier CDMA system may be able to overlay with single carrier CDMA systems to utilize spectrum more efficiently and achieve better backward compatibility. More specifically, the cdma2000 High Rate Packet Data (Revision 0) system—which is commonly referred to as 1xDO system—is a single carrier system where all Access Terminals (AT) communicate with Access Network (AN) over 1.25 MHz bandwidth in either the forward link or the reverse link. While an NxDO system is a multi-carrier CDMA system that allows ATs to communicate with AN over multiple 1.25 MHz bands—each band utilizes transmission technology and format similar to those used in a 1xDO system. Orthogonal Frequency Division Multiplexing (OFDM) is another example of multi-carrier modulation where the subcarriers are orthogonal to each other. Multi-carrier (MC) techniques, such as OFDM, allow the use of longer symbol periods for the same data rate (as compared to single carrier systems) and may reduce problems associated with multi-path delays and inter-symbol interference. MC and OFDM offer frequency diversity as well.
Various embodiments are disclosed relating to techniques to improve redundancy for multicarrier wireless systems.
According to an example embodiment a technique is provided that may include commonly encoding a block of data, modulating the encoded block of data across a plurality of carriers, and transmitting via a wireless link the encoded block of data including the plurality of carriers. In an example embodiment, the modulating may include modulating a first portion of the coded data block onto a first carrier, and modulating a second portion of the coded data block onto a second carrier. In an example embodiment, the transmitting may include spreading a first portion of the encoded block of data using a first spreading code, spreading a second portion of the encoded block of data using a second spreading code, and transmitting the first and second portions of the spread data via first and second carriers, respectively. Also, a preamble for the transmitted first portion of spread data may include a first MAC index to identify the first spreading code, and a preamble for the transmitted second portion of spread data may include a second MAC index to identify the second spreading code. In another example embodiment, the transmitting may include transmitting one or more packets or sub-packets for the coded data block substantially synchronously, or at about the same time, for (or across) the plurality of carriers.
According to another embodiment, another technique is provided that may include receiving a data block for transmission from one or more data sources, commonly encoding the received data block to generate a coded data block and modulating the coded data block across a plurality of carriers for transmission over a wireless link. The modulating may include modulating a first portion of the encoded block onto a first carrier and modulating a second portion of the encoded block onto a second carrier, wherein encoded data on the first carrier for the block of data may be used for error detection and/or error correction of encoded data on the second carrier for the block of data.
According to another example embodiment, a technique is provided that may include receiving, via wireless link, a commonly encoded block of data that has been modulated across a plurality of carriers, the plurality of carriers including a first carrier and a second carrier. The technique may also include using encoded data on the first carrier for the block of data for error detection and/or error correction for the second carrier for the block of data.
According to another example embodiment, an apparatus is provided. The apparatus may include an encoder adapted to encode a block of data, an interleaver adapted to interleave the encoded block of data, a multi-carrier modulator adapted to modulate the interleaved block of data across a plurality of carriers, the plurality of carriers including first and second carriers. In an example embodiment, the data on the first carrier for the block of data is adapted to be used for error detection and/or error correction for data on the second carrier for the block of data.
According to another example embodiment, an apparatus is provided. The apparatus may include a multi-carrier demodulator adapted to demodulate a received block of data across a plurality of carriers, the block of data having been commonly encoded across the plurality of carriers. The apparatus may also include a de-interleaver adapted to de-interleave the demodulated block of data, a decoder adapted to decode the de-interleaved block of data, where the plurality of carriers may include first and second carriers. In an example embodiment, the apparatus may be adapted to use data on the first carrier for the block of data to perform, if necessary, error detection and/or error correction for data on the second carrier for the block of data. In another example embodiment, if there are three carriers, data received on two or three of the carriers may be used to detect and/or correct errors on one of the carriers for the block of data.
According to yet another example embodiment, a technique is provided, for example, to detect a packet in a multicarrier wireless system. The technique may include receiving a multi-carrier signal including receiving a preamble of a packet on each of a plurality of carriers, correlating the preamble received on each of the plurality of carriers to obtain a correlation result for each carrier, and comparing the correlation results to a threshold. Comparing the correlation results may include, for example, adding the correlation results of the plurality of carriers to provide a multi-carrier correlation sum, and comparing the correlation sum to a threshold.
According to an example embodiment, a block of data may be received and commonly (or jointly) coded. The block of data may be received and commonly encoded, using any number of well-known redundancy coding techniques, such as block coding, convolutional coding, turbo coding, etc. The commonly (or jointly) encoded data block may then be modulated onto multiple carriers for transmission. According to an example embodiment, multiple data streams may be received (or generated) and then jointly (or commonly) encoded or coded together. The multiple data streams may be combined for encoding using, for example, a parallel-to-serial converter. Alternatively, a single data stream may be received and coded together.
According to an example embodiment, modulating a commonly encoded block of data across multiple carriers (or subcarriers) may allow for a more robust mechanism for error detection and correction across multiple carriers by making use of frequency diversity. For example, modulating a commonly encoded block of data across multiple carriers may allow the redundancy (or redundant) information in carrier C1 to be used for error detection and correction not only for carrier C1, but also for the other carriers C2 or C3 since the encoded bits transmitted on C1, C2 and C3 are commonly or jointly encoded (e.g., the block of data may be encoded together as one block, and then modulated across multiple carriers or transmitted using multiple carriers, e.g., to provide frequency diversity for the block of data). Each carrier C1, C2, C3, etc. may be at a different frequency.
For example, a block of data (e.g., from one stream or multiple streams) may be commonly encoded, and then modulated for transmission onto carriers C1, C2 and C3. If frequency selective fading or distortion occurs on carrier C3 at the receiver, there is a significant possibility that a fade or distortion may not occur at that same time on either C1 or C2. Therefore, according to an example embodiment, the receiver may use the redundancy encoded (or redundant) information provided on either carriers C1 and/or C2 to detect and/or correct errors received on carrier C3 since the block of coded data modulated across carriers C1, C2 and C3 for transmission was commonly or jointly coded.
Referring to
For example, in the embodiment shown in
In the example shown in
As noted above, the modulation of a commonly or jointly encoded block of data across a plurality of carriers or subcarriers may allow for a more robust error detection and/or correction technique through frequency diversity. Incremental redundancy may be obtained by transmitting code bits of the commonly encoded block on each additional carrier or subcarrier (e.g., 2 carriers, 3 carriers, 4 carriers, 5 carriers, or more).
In addition, the common or joint encoding of a larger block of data (e.g., rather than independently encoding smaller blocks of data) may, in some cases, allow for a greater coding gain or higher coding rate. For example, if Turbo coding is used, a higher coding gain or higher coding rate may be obtained when encoding a larger block of data, although the various embodiments are not limited thereto.
In addition, according to an example embodiment, the packets and/or sub-packets on the different carriers or subcarriers may be transmitted synchronously (e.g., packets or sub-packets on the different carriers transmitted during the same slot or at about the same time). For example, as shown in
Transmitting packets or sub-packets synchronously across the multiple carriers may allow the receiver to perform error detection and correction across the multiple carriers/subcarriers for each sub-packet. For example, a block of data may be commonly encoded and divided into multiple packets (or sub-packets) with, for example, at least one packet (or sub-packet) being transmitted synchronously on each of a plurality of carriers (or subcarriers). Also, commonly or jointly encoding a larger block of data (such as for a synchronous transmission using multiple carriers) may allow for a larger coding gain as noted above, at least in some cases.
Alternatively, wireless transmitter 301 and wireless receiver 321 may both be provided within a single device, such as an Access Network device or base station or an Access Terminal or other wireless or mobile device. Although not shown, wireless transmitter 301 and receiver 321 may include additional components such as an antenna and the like. Also, the various blocks of wireless system 300 may be implemented in hardware, software, firmware, logic or a combination of these. For example, a wireless system 300 (or a transmitter 301 or a receiver 321) may include hardware circuits or logic for some blocks (or portions thereof), while using a controller or microprocessor to execute software or firmware to perform functions associated with the other blocks, although the various embodiments are not limited thereto.
Referring to
In
Although not required, the data sub-blocks may then be spread using a spreading code. In an example embodiment, the spreading codes may include codes having orthogonal properties such as Walsh codes, or codes having good correlation properties such as PN codes, or other spreading codes, for example. This orthogonal property or good correlation property of the spreading codes may allow each user (or each mobile device) to recover his data using the same spreading code while minimizing the interference from other users.
Three spreaders 310 are shown coupled to S/P block 308, including spreaders 310A, 310B and 310C. In one embodiment, each of the sub-blocks (or streams) output from S/P block 308 may be spread using a different spreading code. In an example embodiment, there may be a different spreader 310 for each carrier (or subcarrier) to be used for spreading the commonly encoded block of data. In the example embodiment shown in
In addition, a different spreading code may typically be assigned to each carrier or to each spreader. For example, a first spreading code may be used by spreader 310A to spread a first sub-block of data (from the commonly encoded block) to be transmitted over a carrier C1, a second spreading code may be used by spreader 310B to spread a second sub-block of data (from the commonly encoded block of data) to be transmitted over a carrier C2, and a third spreading code may be used to spread a third sub-block of data (from the same commonly encoded block of data) to be transmitted over a carrier C3. According to an example embodiment, a set of spreading codes may be assigned to a user or to an Access Terminal or mobile device. The spreading codes may be fixed or pre-set for a user, or the spreading codes may be dynamically assigned by the Access Network device or base station, such as by providing each user with a spreading code ID for each of the 3 spreading codes assigned to the user. The Access Network or base station may assign or provide these three spreading codes to each user (or Access Terminal) during call setup, for example, or at some other time.
In
Receiver 321 (
The despread information may then be passed through a parallel-to-serial block 326, and then demodulated by demodulator 326 and de-interleaved by de-interleaver 330. Next, the de-interleaved information is then decoded by decoder 332. In an example embodiment, one or more bit errors in the received block of data may be detected and corrected at decoder 332. Decoder 332 may, for example, use redundancy encoded (or redundant) information in the code bits transmitted on one carrier (e.g., C1) to correct errors in another carrier (e.g., C2 or C3), since the original sub-blocks transmitted on the three carriers (C1, C2 and C3) were (originally) commonly or jointly encoded. This may provide a more robust error detection and correction mechanism by taking advantage of frequency diversity of the multiple carriers or subcarriers.
The packets on each carrier may be transmitted synchronously as shown in
Table 1 below describes some example packet formats and DRC (data rate control) mapping for the multi-carrier transmission described above. Table 1 includes a DRC Index (or index for packet formats, which may be used for data rate control or transmission control), the rate, the span or number of slots (for the packet, indicating the number of sub-packets per packet) and the transmission format.
According to an example embodiment, an independent MAC (media access control) Index may be transmitted within the preamble of each carrier (e.g., within the preamble on each carrier, C1, C2, C3, etc.). The MAC Index transmitted on a carrier may, for example, identify a spreading code or Walsh code to be used by a user or Access Terminal for correlating that carrier. For example, for three carriers, an Access Network device may transmit an independent MAC Index on the preamble for each carrier. Alternatively, the MAC Index for each of the three carriers assigned to a user or Access Terminal may be provided to the Access Terminal during call setup.
According to an example embodiment, the Access Terminal or user device may correlate the preamble for each of the three carriers using the MAC index provided over that carrier. For example, the Access Terminal may use the spreading code corresponding to the MAC Index provided on carrier C1 to correlate the information received on carrier C1, use the spreading code corresponding to the MAC Index provided on (e.g., the preamble of) carrier C2 to correlate the information received on carrier C2. Similarly, the spreading code corresponding to the MAC Index provided on carrier C3 may be used to correlate the signals received over carrier C3, etc.
In an example embodiment, an improved or more robust technique may be provided for detecting a preamble of a packet. In a single carrier system, noise, distortion, frequency selective fading can inhibit the detection of the preamble of a packet. If the preamble is missed or mis-detected, then the entire packet will typically be missed or lost. Therefore, according to an example embodiment, an Access Terminal or other device may correlate the preambles received on multiple carriers. This may be performed, for example, as follows. The preamble received on a packet for each carrier is correlated using the spreading code corresponding to the MAC Index received for each carrier. The correlation results for the three carriers may be added together, and this sum may be compared to a threshold (which in an example embodiment, may be approximately equal to 3× the standard correlation value for a single carrier). If the sum is greater than the threshold, then this is a positive correlation indicating the packets assigned to the Access Terminal have been received. However, this is merely one example, and the various embodiments are not limited thereto. Therefore, when the preamble on one of the carriers is experiencing noise, fading or distortion, the preamble signals on the other two carriers may not be experiencing such problems, and may allow a more robust technique to detect a preamble through the use of frequency diversity.
According to an example embodiment, at a transmitter, a block of data may be received and commonly encoded. The commonly encoded block of data may be transmitted via (or modulated onto) a plurality of carriers. A different spreading code may be used to spread code bits for modulation onto each carrier. Also, the commonly encoded block of data may be transmitted by synchronously transmitting packets or sub-packets for each of the plurality of carriers. At a receiver, the plurality of subcarriers may each be demodulated and de-spread using the spreading codes assigned to each of the carriers. Because the information transmitted on each carrier was commonly encoded, an error detected on one carrier may be corrected based on information (e.g., code bits) provided on another carrier.
According to an example embodiment, an allocation of subcarriers and/or spreading codes may be varied over time for one or more signal streams. The varying of subcarriers and/or spreading codes may be performed according to a pattern, such as a subcarrier-time-code pattern for example. Also, a wireless transmitter may include a time varying spreading and subcarrier mapping block to dynamically vary the mapping or allocation of subcarriers and spreading codes to one or more signal streams, and a multicarrier modulator to modulate information onto one or more subcarriers as allocated by the time varying spreading and subcarrier mapping block.
It should be understood that the various embodiments may be used in a variety of devices and applications. Although the embodiments are not limited in this respect, the techniques, methods, circuits or systems disclosed herein may be used in many different apparatus such as in the transmitters and receivers of a radio system, for example. Radio systems intended to be included within the scope of the present embodiments include, by way of example only, wireless network devices and systems such as wireless local area networks (WLAN) devices and wireless wide area network (WWAN) devices including wireless network interface devices, wireless network interface cards (NICs), base stations, access points (APs), gateways, bridges, hubs, cellular radiotelephone communication systems, cellular devices, Access Terminals, Access Network devices, access points, other fixed or mobile transceivers, portable computers, mobile phones, satellite communication systems, two-way radio communication systems, pagers, personal communication systems (PCS), personal computers (PCs), personal digital assistants (PDAs), mobile stations and other wireless devices or radio systems, although the scope of the embodiments is not limited in this respect.
In addition, the various embodiments are applicable to a wide variety of technologies, communication protocols and standards. The examples described herein are provided merely for illustrative purposes and the disclosure or embodiments are not limited thereto.
In addition, the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the embodiments or disclosure is not limited thereto. While various aspects of the various example embodiments may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing device, etc., or some combination thereof.
Embodiments may be practiced in various components such as integrated circuit modules. The design of integrated circuits is by and large a highly automated process. Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.
Programs, such as those provided by Synopsys, Inc. of Mountain View, Calif. and Cadence Design, of San Jose, Calif. may automatically route conductors and locate components on a semiconductor chip using well established rules of design as well as huge libraries of pre-stored design modules. Once the design for a semiconductor circuit has been completed, the resultant design, in a standardized electronic format (e.g., Opus, GDSII, or the like) may be transmitted to a semiconductor fabrication facility or “fab” for fabrication.
This application claims priority to U.S. Provisional Patent Application Ser. No. 60/697,189 filed on Jul. 7, 2005, hereby incorporated by reference.
Number | Date | Country | |
---|---|---|---|
60697189 | Jul 2005 | US |