As wireless communication systems such as cellular telephones, satellite, and microwave communication systems become widely deployed and continue to attract a growing number of users, there is a pressing need to accommodate a large and variable number of communication subsystems transmitting a growing volume of data with a fixed resource such as a fixed channel bandwidth accommodating a fixed data packet size. Traditional communication system designs employing a fixed resource (e.g., a fixed data rate for each user) have become challenged to provide high, but flexible, data transmission rates in view of the rapidly growing customer base. Various standards and interoperability requirements are developed on an on-going basis for present and future communications networks. The use of standards ensures that equipment available in the marketplace operates correctly with equipment from a variety of manufacturers and service providers, and in a variety of locales so that to a user carrying the equipment from place to place and even from country to country, the use of the equipment remains convenient and the details of the operations of the network are virtually transparent to the user.
For example, the third Generation Partnership Project Long Term Evolution (“3GPP LTE”) is the name generally used to describe an ongoing effort across the industry to improve the Universal Mobile Telecommunications System (“UMTS”) for mobile communications. The improvements are being made to cope with continuing new requirements and the growing base of users. Goals of this broad-based project include improving communication efficiency, lowering costs, improving services, making use of new spectrum opportunities, and achieving better integration with other open standards, and backwards compatibility with some existing infrastructure that is compliant with earlier standards. The project envisions a packet-switched communications environment with support for such services as Voice over Internet Protocol (“VoIP”) and Multimedia Broadcast/Multicast Service (“MBMS”). MBMS may support services where base stations transmit to multiple user equipment (“UE”) simultaneously, such as mobile televisions or radio broadcasts, for example. The 3GPP LTE project is not itself a standard-generating effort, but will result in new recommendations for standards for the UMTS.
The UMTS Terrestrial Radio Access Network (“UTRAN”) includes multiple Radio Network Subsystems (“RNS”), each of which contains at least one Radio Network Controller (“RNC”). However, it should be noted that the RNC may not be present in the actual implemented systems incorporating Long Term Evolution (“LTE”) or UTRAN (“E-UTRAN”). LTE may include a centralized or decentralized entity for control information. In UTRAN operation, each RNC may be connected to multiple Node Bs, which are the UMTS counterparts to Global System for Mobile Communications (“GSM”) base stations. Generally, in this document, a base station (“BS”) is one example of a “network entity,” but many other devices that can send and receive over-the-air interface of the network are also considered a “network entities,” including other UE devices, for example. In E-UTRAN systems, the eNode B may be, or is, connected directly to the access gateway (“aGW,” sometimes referred to as the services gateway “sGW”). Each Node B may be in radio contact with multiple UE (generally, user equipment includes mobile transceivers or cellular phones, although other devices such as fixed cellular phones, mobile web browsers, laptops, personal digital assistants (“PDAs”), MP3 players, and gaming devices with transceivers may also be UE)) via the radio Uu interface. In this document, the abbreviation for user equipment (“UE”) will be synonymous with the abbreviation for mobile station (“MS”), and MS will be used primarily. Mobile stations may also be cellular phones, PDAs, MP3 players, mobile web browsers, mobile PCs and the like.
The wireless communication systems as described herein are applicable to, as non-limiting examples, existing wireless systems, such as 3G (“3rd Generation mobile communications”), or future systems such as 3GPP LTE compatible wireless communication systems. As a method of improving performance in such systems, use of a relay has been proposed. A network including the relay function is typically referred to as a “multiple access relay network,” or as a MARC (“multiple access relay channel”). The relay concept is that in addition to a direct transmission between a mobile station or UE and a network entity such as a base station, a relay may be used that also receives the transmission of the UE and forwards or retransmits the message, or some form of the message, to the network entity. This relay signaling would be particularly significant when a mobile station or UE signal path to a base station is less than would be desired due to obstructions such as buildings, distance, signal noise, the number of other UE in the cell or area, etc; in these situations a relay signal may be used to increase the reception at the base station and hence, the system performance. A relay may be used at any time to increase the accuracy of the reception at the network entity by providing additional signal diversity, or, redundancy. The relay is a station that listens for UE messages transmitted towards the network entity or BS, the relay then transmits a version of the signals forward towards the BS. In this manner, the BS will receive the information, or a form of the information, from the UE in the uplink direction at least twice, once from the UE itself, and once from the relay. Because signal coding operations can remove errors when multiple signals carrying the same information are received (due to signal diversity, or redundancy), when a relay is used in this manner the BS can then eliminate or reduce reception errors that might otherwise occur due to signal noise or distance from the UE.
Coding schemes are used in communications systems. Two types of codes are of particular interest. Because the communications are performed in a relatively noisy (signal noise) environment, error correcting codes are used. Recursive systematic convolutional (“RSC”) codes are a common coding scheme. In these codes, a portion of the input is present in the output stream; also, the output is fed back into the convolution, so the code is recursive. In these codes, each m bit information symbols is input into an encoder and transformed into an n bit symbol, where n is greater than or equal to m, the code rate is m/n; and the transformation is a function of the last k information symbols, k is the constraint length of the code.
Recent work has also focused on the turbo codes. Developed in the early 1990s, the turbo codes provide a coding scheme that performs near the theoretical Shannon limit. A turbo code requires two RSC codes and an interleaver. The decoders for turbo coders use a soft decision process, that is, a probability function for each bit is developed based on the likelihood the original bit was a “0” or a “1.” Because the decoder uses two decoders and a likelihood or estimate is made by each, an iterative process is used to change the hypotheses until the two decoders come up with the same likelihood estimates for m bits of the data payload, then the process is complete. Turbo coders are used because they provide an error correcting code that provides maximal information transfer over a communications link in the presence of data corrupting noise (for example low signal to noise ratio (“SNR”) or high error rate conditions).
As contemplated currently, the relay station in a relay system may simply be a UE with a different or perhaps a better signal path to the base station. The relay may be closer to the base station, or be in a path with less noise, fewer obstructions, etc. In some contemplated system arrangements, a user who allows his MS to act as a relay would receive system credit in exchange for the relay services his MS performs, which would then lower the costs of his own use of the system. In a practical device, the UE would only act as a relay if the device had plenty of charge remaining, and a good path to the BS. This feature could be disabled to conserve or extend battery life, and if the UE was busy transmitting its own data, the relay function would not be available until the device again was idle and had sufficient resources available to act as a relay.
In areas where signaling is known to be problematic due to noise, obstruction or distance to the nearest BS, a dedicated relay device could be used; however, in most scenarios under consideration the relay is simply an additional MS that has resources available to act as a relay. By helping other UE, each user receives a better signal and, if credit is provided, cheaper service when they use the system; and, so all of the users would benefit by having their UE act as relay stations from time to time.
FIG. 1 depicts a simple mobile network including a relay station 13. In FIG. 1, the network entities such as base stations or node B stations 17, NB are operatively coupled together and also coupled to MME/UPE entities 18. A plurality of mobile stations MS/UE are communicating with a base station NB. In addition, a relay station RS is receiving the signals from the mobile stations MS/UE and then relaying the received signals to the base station NB. The base stations are interconnected with an X2 interface or communication link. The base stations are also connected by an S1 interface or communication link to an evolved packet core (“EPC”) including, for instance, a mobility management entity (“MME”) and a user plane entity (“UPE”), which may form an access gateway (“aGW,” a system architecture evolution gateway). The S1 interface supports a multiple entity relationship between the mobility management entities/user plane entities and the base stations and supports a functional split between the mobility management entities and the user plane entities. Note that although two UEs are shown and the relay station RS is receiving signals from two UEs, this illustration is simplified for ease of understanding and in fact many UE signals may be received by the relay and the relay will combine these received signals and relay information to the base station NB.
The actual implementation of such a function in the communications system continues to provide challenges. Several coding schemes have been considered for the relay. In a paper entitled “Joint Network Channel Coding for the Multiple Access Relay Channel”, Hausl et al., SECON '06, Vol. 3, September 2006, pp. 817-822, a joint network channel coding scheme, referred to hereafter as “JNCC”, is proposed. In this scheme the relay station and the UEs all use a RSC codling scheme. In another paper, entitled “A Joint Network Channel Coding Scheme for Relay Based Communications,” Heiu et al, CCECE 2007, April 2007, pp. 904-907, a similar scheme is proposed. In a paper entitled “Capacity Approaching Turbo Coding and Iterative Decoding for Relay Channels,” Zhang et al., IEEE Transactions on Communications, Vol. 53, No. 11, 2005, pp. 1895-1905; a system is proposed where the UE, if the link to the relay is less than perfect, use a turbo code at the UE and this could be used to help the relay recover the information; however, only a single UE environment is addressed.
FIG. 2 depicts a simplified view of a JNCC system with a base station BS receiving signals from a user equipment 11, a user equipment 15, and a relay station 13. The relay station 13 also receives transmitted signals from 11 and 15. In FIG. 2, the two UEs referenced as 11 and 15 respectively transmit their information to a network entity, base station 17 with the assistance of relay station 13. In addition, the relay station 13 receives transmissions of both the UEs. Again, although only two UEs are shown transmitting signals received by the relay, many UEs would be transmitting signals received by the relay in a real system.
In FIG. 2, the definitions of the signal links and their corresponding signal to noise ratios (“SNR”) are as follows:                gUBi: path loss of link from a UE to the base station BS, also referred to as the “direct link”; SNRUBi is its SNR;        gURi: path loss of link from a UE to relay; SNRURi is its SNR;        gRB: path loss of link from the relay to BS; SNRRB is its SNR.        
In the following figures, some definitions are used to depict the coding and transmit operations:                SU,i: Systematic bits of UE i after channel coding        PU,i: Parity bits of UE i after channel coding        PUT,i: Transmitted parity bits of UE i after channel coding        PUP,i: Punctured parity bits of UE i after channel coding        SR: Systematic bits at relay after network coding        PR: Parity bits at relay after network coding        
FIG. 3 depicts a block diagram of the encoding used in the UE of the JNCC scheme. In FIG. 3, the channel code at the UEs is a recursive systematic convolutional (RSC) code. The network code in the relay is also a RSC code with the same parameters as the RSC code used in UEs. Only the code lengths may be different.
In FIG. 3, symbols SU,j in data stream 35 are input to RSC channel encoder 31, and the output 37 are encoded data symbols SU,j and parity symbols PU,j These symbols are then punctured using standard code puncturing in block 33 and the output 39 are punctured, encoded RSC code symbols and corresponding parity bits.
FIG. 4 depicts the process of a UE in the first time slot, time slot 1. In time slot 1, channel encoder (RSC) (31 in FIG. 3) encodes the systematic bits SU,i into encoded block [SU,i PU,i]. After puncturing (block 33 in FIG. 3) only SU,i and PUT,i (39 in FIG. 3) are transmitted. At the same time, the BS 17 and relay 13 listen. Note that these processes of FIG. 3 occur in both UE 11 and UE 15 in FIG. 4.
FIG. 5 depicts the processes of the relay station 13 of FIG. 4 in the JNCC scheme in time slot 2. In time slot 2, it was assumed that the relay station RS can perfectly decode the transmitted information by UEs. At first, the relay station 13 decodes RSC encoded signals 51, 65 received from both UEs 11, 15 and recovers systematic bits SU,i referenced as 55 and 69; the decoding is done by RSC decoders 53, 67 in FIG. 5. Then the relay 13 interleaves SU,i, i=1, 2 together in interleaver 57 into a new long information block 59, which is denoted by SR. After that, the relay station encodes SR by a RSC code encoder 71 (acting as a network coding), structure of the RSC encoder is the same as in UEs and outputs encoded signals 61, which includes symbols and parity bits. Finally, after puncturing in puncturing block 73, only the newly generated parity bits PR 64 are transmitted from the relay to the network entity or BS.
FIG. 6 depicts simply the transmission of the parity PR from the relay station 13 to the BS 17 in time slot 2.
FIG. 7 illustrates, in a block diagram, the iterative network and channel decoder at the BS used in the JNCC scheme.
Some definitions are needed to comprehend the blocks and operations in the FIG. 7:
yUBi, i=1, 2: what BS received from a user equipment i in time slot 1;
yRB: what BS received from the relay station RS in time slot 2;
{circumflex over (x)}UBi, i=1, 2: estimated information of user equipment i after decoding at BS;
Le−(ui)=i=1, 2: output, the extrinsic information of channel decoder;
Le|(ui)=i=1, 2: output, the extrinsic information of network decoder.
The iterative decoder consists of two soft input soft output (“SISO”) channel decoders 81, 89 and one SISO network decoder 85. First, the channel decoders 81, 89 calculate extrinsic information Le−(ui), i=1, 2 of user equipment i based on received signal yUBi from UE i. A value of zero is inserted for the punctured bits PUP before decoding. The log-likelihood ratios (LLRs) Le−(ui) are interleaved and mixed in the same way as the interleaving performed in the network encoder at the relay station. The LLRs after the mixture are a priori knowledge for the network decoder.
The network decoder obtains additional information about the parity bits PR from the relay station by received signal yRB at the BS. The network decoder in the base station of FIG. 7 calculates extrinsic information Le|(ui) i=1, 2 about SR (which is also SU); this information is fed back to the channel decoders 81 and 89 after de-mixture and de-interleaving by functions 83, 87. After several iterations as indicated by functions 91, 93 and the switch SW1, the channel decoder at BS can combine all the available information from both the relay station and the UEs to obtain the data estimates {circumflex over (x)}UBi, i=1, 2.
The JNCC scheme illustrates that joint network-channel coding can improve system throughput. Information transmitted from UEs to BS and from the relay station to the BS forms a distributed turbo code, which explores the space diversity gain. In addition, network coding at the relay makes it possible for two UEs to help each other; so that once one of the two UEs is under a bad channel condition, the other UE may help its decoder to recover its original information through network decoder.
The known schemes of the prior art assume that the relay station can recover the UE information perfectly, but in practical communication systems this is often not the case. A continuing need thus exists for an improved coding method and apparatus to provide a robust relay coding scheme when the data estimates at the relay for signals received from the UEs is less than perfect; e.g. when there are estimation errors at the relay station, such as would typically occur in practical communications systems.