Methods and devices for wireless broadcasting service communication environment

A method for subblock generation in a wireless communication system includes receiving, by a subblock generator, one or more data blocks, and selecting, based on one or more criteria, one or more functional blocks and an operational order of the one or more functional blocks. The method also includes processing the received one or more data blocks using the selected one or more functional blocks in the selected operational order to generate a plurality of data subblocks, and transmitting the plurality of data subblocks to the plurality of receiving devices. The method further includes transmitting, to the plurality of receiving devices, location information for each of the plurality of data subblocks.

TECHNICAL FIELD

The present disclosure relates generally to methods and devices for communication systems and, more particularly, to methods and devices for wireless communication systems.

BACKGROUND

Wireless communication systems allow wireless devices to communicate without the necessity of wired connections. Because wireless systems have become so integrated into daily life, there is a growing demand for wireless communication systems that support multimedia services such as speech, audio, video, file and web downloading, and the like. Various wireless communication protocols and transmission control mechanisms have been developed to meet the growing demands of multimedia services over wireless communication networks and to improve the performance of these multimedia services. An exemplary transmission control mechanism for transmitting packet data units (PDUs) in wireless systems is Hybrid Automatic Repeat Request (HARQ).

Generally, there are two main variants of HARQ retransmission mechanisms supported in a wireless system employing W-CDMA: incremental redundancy (IR) and chase combining. Using IR, a physical (PHY) layer will encode the HARQ packet thereby generating several versions of encoded subpackets, called Redundancy Versions (RVs). In IR, the encoding process may include the steps of encoding, interleaving, and puncturing, and multiple RVs may be created when the HARQ packet passes through these steps. For chase combining, the PHY layer also encodes the HARQ packet. However, only one version of the encoded packet is generated. Thus, in chase combining, the transmitting device retransmits the same encoded version every time retransmission is required.

FIG. 1is a diagram illustrating point-to-multipoint (PTM) transmissions of HARQ PDUs (i.e., a single transmitting device transmits to multiple receiving devices). In PTM transmission, a transmitting device110transmits encoded PDUs, also called redundancy versions, using a common radio resource, and instructs a group of receiving devices120, e.g., receiving devices120a,120b, and120c, to receive the transmitted encoded PDUs simultaneously with one another. PTM transmissions may be used by transmitting device110for broadcasting and/or multicasting of packet data.

Generally, one impact to channel quality is the distance between the transmitting device and the receiving device. Therefore, transmitting device110may evaluate channel conditions between itself and each of receiving devices120and, based on the evaluated channel quality information, determine a desired number of encoded PDUs needed for every receiving device120in the group of receiving devices120within its broadcast range to successfully receive the encoded data. Thus, when performing PTM transmissions, transmitting device110may cause every receiving device120to receive the same number of encoded PDUs. Specifically, in order to provide every receiving device120with an opportunity to correctly receive and decode the packet data, transmitting device110may send a greater number of encoded PDUs in order to enable the successful reception of the packet data by every member of the group of receiving devices120.

For example, referring toFIG. 1, although receiving devices120aand120bmay be capable of receiving fewer encoded PDUs to successfully decode the data (e.g., receiving device120amay require only one encoded PDU a0, and receiving device120bmay require two encoded PDUs a0and a1), receiving device120cmay have poorer channel quality and thus may require a greater number of encoded PDUs (e.g., receiving device120cmay require encoded PDUs a0through aN-1). However, to ensure that all receiving devices120are able to receive and decode PTM transmissions, transmitting device110may be required to encode and modulate PTM transmissions to generate a larger number of encoded PDUs, e.g., a0, through aN-1, and receiving devices120may be required to receive and decode that larger number of encoded PDUs, which may greater than needed to successfully decode the PTM data. As a result, receiving devices120having good channel conditions may use unnecessary battery power to receive and decode the PTM data.

Because transmitting device110may not prepare a set of subpackets that are most appropriate to all the receiving devices120it serves, there may be significant delays and wasted resources for both the transmitting device110and any receiving devices120. Furthermore, because transmitting device110may use a greater number of packets, or less efficiently modulated and coded subpackets, than are necessary for some or many of the receiving devices120in its range, receiving devices120that could successfully receive data transmitted using fewer coded subpackets may unnecessarily spend resources receiving and decoding a greater amount of data.

The disclosed embodiments are directed to overcoming one or more of the problems set forth above.

SUMMARY

In one exemplary embodiment, the present disclosure is directed to a method for subblock generation in a wireless communication system including a plurality of receiving devices, comprising: receiving, by a subblock generator, one or more data blocks; selecting, based on one or more criteria, one or more functional blocks and an operational order of the one or more functional blocks; processing the received one or more data blocks using the selected one or more functional blocks in the selected operational order to generate a plurality of data subblocks; and transmitting the plurality of data subblocks to the plurality of receiving devices.

In another exemplary embodiment, the present disclosure is directed to an apparatus for point-to-multipoint (PTM) transmission in a wireless communication system, comprising: at least one memory to store data and instructions; and at least one processor configured to access the at least one memory and, when executing the instructions, to: receive, by a subblock generator, one or more data blocks; select, based on one or more criteria, one or more functional blocks and an operational order of the one or more functional blocks; process the received one or more data blocks using the selected one or more functional blocks in the selected operational order to generate a plurality of data subblocks; and transmit the plurality of data subblocks to the plurality of receiving devices.

In another exemplary embodiment, the present disclosure is directed to an apparatus for performing subblock generation, wherein the apparatus comprises: a repetition block configured to repeat one or more bits of a received bit sequence; a puncture block configured to remove one or more bits of the received bit sequence; and a bit selection block configured to receive a bit stream output by at least one of the repetition block and the puncture block, and select bits from the received bit stream based upon a selection pattern; wherein an operational order of the repetition block, the puncture block, and the bit selection block is determined based on one or more criteria.

DETAILED DESCRIPTION

FIG. 2is a diagram of an exemplary wireless communication system200. The exemplary wireless communication system200ofFIG. 2may be based, for example, on the Institute of Electrical and Electronics Engineers (IEEE) 802.16 family of standards. More specifically,FIG. 2shows the basic frame structure of IEEE 802.16m. In the basic frame structure shown inFIG. 2, a superframe consists of four frames, where each frame is divided into M=8 subframes, and each subframe has L=6 Orthogonal Frequency-Division Multiple Access (OFDMA) symbols. According to the IEEE 802.16m standard, a physical resource block is defined as consecutive L symbols in the time domain and K=18 consecutive subcarriers in the frequency domain. Thus, there are N resource blocks in a subframe, the number N depending on the system bandwidth.

As shown inFIG. 2, wireless communication system200may include one or more transmitting devices (TD)210, e.g., TD210, and one or more subscriber stations (SS)220, e.g., SS220a, SS220b, and SS220c.

TD210may be any type of communication device configured to transmit and/or receive data and/or communications to and from one or more SSs220in wireless communication system200, many of which are known in the art. In some embodiments, TD210may also be referred to as, for example, a Node-B, a base transceiver system (BTS), an access point, etc. In other embodiments, TD210may be a relay station, an intermediate node, or an intermediary. In one exemplary embodiment, TD210may have a broadcast/reception range within which TD210may wirelessly communicate with one or more one or more SSs220. Broadcast ranges may vary due to power levels, location, and interference (physical, electrical, etc.).

FIG. 3ais a diagram of an exemplary TD210, consistent with certain disclosed embodiments. As shown inFIG. 3a, each TD210may include one or more of the following components: at least one central processing unit (CPU)211configured to execute computer program instructions to perform various processes and methods, random access memory (RAM)212and read only memory (ROM)213configured to access and store information and computer program instructions, memory214to store data and information, databases215to store tables, lists, or other data structures, I/O devices216, interfaces217, antennas218, etc. Each of these components is well-known in the art and will not be discussed further.

Although not shown, TD210may include one or more mechanisms and/or devices by which TD210may perform the methods described herein. For example, TD210may include one or more encoders, one or more interleavers, one or more circular buffers, one or more multiplexers, one or more permuters, one or more arithmetic logic units and/or their constituent parts, etc. These mechanisms and/or devices may include any combination of hardware and/or software components and may be included, in whole or in part, in any of the components shown inFIG. 3a.

SS220may be any type of computing device configured to wirelessly transmit and/or receive data to and from TD210in wireless communication system200. SS220may include, for example, servers, clients, desktop computers, laptop computers, network computers, workstations, personal digital assistants (PDA), tablet PCs, scanners, telephony devices, pagers, cameras, musical devices, etc. In addition, SS220may include one or more wireless sensors in a wireless sensor network configured to communicate by means of centralized and/or distributed communication. In one exemplary embodiment, SS220may be a mobile computing device. In another exemplary embodiment, SS220may be a fixed computing device operating in a mobile environment, such as, for example, a bus, a train, an airplane, a boat, a car, etc.

FIG. 3bis a diagram of an exemplary SS220, consistent with certain disclosed embodiments. As shown inFIG. 3b, each SS220may include one or more of the following components: at least one central processing unit (CPU)221configured to execute computer program instructions to perform various processes and methods, random access memory (RAM)222and read only memory (ROM)223configured to access and store information and computer program instructions, memory224to store data and information, databases225to store tables, lists, or other data structures, I/O devices226, interfaces227, antennas228, etc. Each of these components is well-known in the art and will not be discussed further.

Although not shown, SS220may include one or more mechanisms and/or devices by which SS220may perform the methods as described herein. For example, SS220may include one or more encoders, one or more interleavers, one or more circular buffers, one or more multiplexers, one or more permuters, one or more arithmetic logic units and/or their constituent parts, etc. These mechanisms and/or devices may include any combination of hardware and/or software components and may be included, in whole or in part, in any of the components shown inFIG. 3b.

In exemplary wireless communication system200ofFIG. 2, transmissions between TD210and SSs220may be divided into variable length sub-frames: uplink (UL) sub-frames and downlink (DL) sub-frames. Generally, the UL sub-frames may include ranging channels, a channel quality information channel (CQICH), and UL data bursts containing data.

The DL sub-frames may include a preamble, a Frame Control Header (FCH), a DL-MAP, a UL-MAP, a Multicast and Broadcast (MBS)-MAP, and a DL data burst area. The preamble may be used to provide a reference for synchronization. For example, the preamble may be used to adjust a timing offset, a frequency offset, and power. The FCH may contain frame control information for each connection including, for example, decode information for the receiving device.

The DL-MAP and UL-MAP may be used to allocate channel access for both uplink and downlink communication. That is, the DL-MAP may provide a directory of access slot locations within the current downlink sub-frame, and the UL-MAP may provide a directory of access slot locations within the current uplink sub-frame. The MBS-MAP may be used to provide a directory of access slot locations for point-to-multipoint (PTM) data bursts. In the DL-MAP and/or MBS-MAP, the directories may take the form of one or more MAP Information Elements (MAP IEs). Each MAP IE in the DL-MAP or MBS-MAP may contain parameters to identify where a data burst may be located, the length of the data burst, the identity of the intended recipient of the data burst, and one or more transmission parameters.

For example, each MAP IE in the DL-MAP and/or MBS-MAP may contain a Connection ID (CID), identifying the destination device for which a data burst is intended, a Downlink Interval Usage Code (DIUC), representing a downlink interval usage code by which downlink transmission is defined, an OFDMA Symbol Offset, indicating the offset of the OFDMA symbol in which a data burst starts, a sub-channel offset, indicating the lowest-index OFDMA sub-channel for carrying the burst, etc. Other parameters may also be included in the MAP IE such as, for example, a boosting parameter, a parameter indicating a number of sub-channels, a parameter indicating a number of OFDMA symbols, etc. An OFDMA symbol may be the number of carriers equal to the size of a Fourier transform, and may be constructed from data carriers, pilot carriers, null carriers, etc.

The DL-MAP and UL-MAP may each be followed by the data burst area. The data burst area may include one or more data bursts. Each data burst in the data burst area may be modulated and encoded according to the control type of a corresponding connection-switched control data. Generally, the DL-MAP, the UL-MAP, and the MBS-MAP may be referred to as packet data units (PDUs) or simply packet data. PDUs may be used to transmit data point-to-point (PTP) and/or point-to-multipoint (PTM).

FIG. 4is a block diagram illustrating subpacket or subblock generation process in a wireless communication system, such as, for example, wireless communication system200ofFIG. 2. As shown inFIGS. 2 and 4, TD210may transmit Npackpackets or blocks to multiple receiving devices220. The kth packet or block may have Lkdatabits, where k=0, 1, . . . , Npack−1. This is shown in packet or block ak410, where
ak=[a0,k,a1,k, . . . ,al,k, . . . ,aLkdata-1,k],l=0, . . . ,Lkdata−1.

The kth packet or block, e.g., ak, will be sent to encoder420to be encoded by a desired coding scheme. The output of the encoder420is shown as packet or block bk430, where
bk=[b0,k,b1,k, . . . ,bl,k, . . . ,bLkcoded-1,k],l=0, . . . ,Lkcoded−1, where length isLkcoded.
The encoded kth packet or block, e.g., bk, will be sent to subpacket generator440to generate subpackets, which may also be referred to as subblocks, with Nksubpackversions to be transmitted. The output of subpacket generator440, the pth subpacket of the kth packet or block, is illustrated by subblocks cpk450, including subblock c0k450a, subblock cpk450b, and subblock cNksubpack-1k450c, where
cpk=[c0,pk,c1,pk, . . . ,cLp,ksubpack-1,pk], fori=0,1, . . . Lp,ksubpack−1, andp=0,1, . . . ,Nksubpack−1
where Lp,ksubpackis the total number of bits in the pth subpacket (or subblock) of the kth packet or block.

Referring toFIG. 2, TD210may encode and modulate PTM information bits to achieve a set of coded subpackets, e.g., c0k, c1k, c2kand c3k, and transmit the set of coded subpackets to one or more receiving devices (e.g., SS220a, SS220b, and SS220c).

Specifically, inFIG. 2, TD210may allocate four radio resources for the coded packets bk. Each radio resource may have different transmission techniques, e.g., different modulation, different number of antennas, etc. Based on each radio resource capability (e.g., bits), the four subpackets (or subblocks), e.g., c0k, c1k, c2k, and c3k, are generated from bk. Due to channel or link conditions between antennas of a sending device and a receiving device, however, it may not be possible for each of the four subpackets (or subblocks) to be decoded.

Receiving devices SS220a, SS220b, and SS220cmay each receive the number of coded subpackets required to successfully decode the PTM transmission. For example, receiving devices SS220may each determine the number of coded subpackets to retrieve based on one or more transmission and channel conditions reported from one or more receiving devices SS220(e.g., SS220a, SS220b, or SS220c). Thus, as shown inFIG. 2, receiving device SS220amay determine to receive two coded subpackets, e.g., c0kand c1k, because its link conditions are good, receiving device SS220bmay determine to receive three coded subpackets, e.g., c0k, c1k, and c2k, because its links conditions are not as good as those of receiving device SS220a, and receiving device SS220cmay determine to receive four coded subpackets, e.g., c0k, c1k, c2k, and c3k, because its link conditions are poor.

FIG. 5is a flow chart illustrating the method500of subpacket generation and transmission by subpacket generator440in wireless transmission system200, consistent with certain disclosed embodiments. As discussed above in connection withFIG. 4, subpacket generator440may receive one or more data packets bk(510). Based on one or more criteria, one or more functional blocks of the subpacket generator440may be selected and their operational order determined (520). The one or more criteria may include, for example, transmission and channel conditions, such as measured signal strength, channel quality indicator (CQI), signal to interference plus noise ratio (SINR), bit error rate (BER), block error rate (BLER), packet error rate, etc. Other examples of the one or more criteria may include data properties, forward error correction (FEC) scheme, etc.

Once the one or more functional blocks of the subpacket generator440have been selected and their order of operation determined, the received one or more data packets b4may be processed (530) to generate one or more data subpackets, e.g., c0k, c1k, c2k, and c3k. These one or more data subpackets may also be referred to as data versions. The one or more data subpackets may then be transmitted by TD210to one or more SSs210(540). To achieve diversity gain, the one or more data subpackets may be transmitted at different times, frequencies, antennas, and/or constellation indices.

As discussed above in connection withFIG. 2, the data versions may be transmitted in one or more subframes in a radio resource. In addition, TD210may provide information for each of the one or more SSs220to locate and retrieve the transmitted set of data subpackets within one or more subframes. The location information may, for example, be found in a MAC header. In some embodiments, the location information may be provided in one or more MAP IEs (e.g., DL-MAP IEs, MBS-MAP IEs, etc.). In other embodiments, the location information may be provided in multicast control channels. The location information may be in the same PDU that contains one or more data subpackets of the set of data subpackets or in any previously transmitted PDU.

As also discussed above in connection withFIG. 2, SSs210may, in turn, determine a number of data subpackets, or data versions, to be received based on their individual conditions, such as, for example, link quality condition, user mobility speed condition, QoS condition, buffer condition, etc.

FIG. 6is a diagram illustrating an exemplary subpacket generator440for generating one or more data subpackets, e.g., c0k, c1k, c2k, and c3k, consistent with certain disclosed embodiments. As shown inFIG. 6, subpacket generator440may be configured to receive one or more encoded packets bk. Subpacket generator440may include a number of functional blocks, such as, for example, a repetition block441, a puncture block442, an interleaver block443, and a bit selection block444, and subblock generator440may utilize one or more of these functional blocks in any desired order. The desired order may be determined based on the type of subpacket received and/or the desired output. As shown inFIG. 6, the determined order of functional blocks in subblock generator440is repetition block441, puncture block442, interleaver block443, and bit selection block444.

Repetition block441may be configured to repeat certain bits and would, therefore, increase the length of a bit sequence. Puncture block442may be configured to remove (or puncture) some bits of a sequence, thereby reducing the length of the sequence. The repetition block441and puncture block442may assist in choosing desired bits for inclusion in the subpacket (or subblock) adaptively. For example, the repetition block441may be configured to repeat the more significant bits, while the puncture block442may be configured to remove the less significant bits. Bit selection block444may be configured to select bits from its input b′kby a selection pattern. In some embodiments, bits may be considered more significant bits if, for example, the bits are systematic or parity bits, the bits had ever been transmitted or retransmitted, or if the bits provide assistance in decoding the codeword.

As used herein, interleaver block443may be configured to permute the inputted bit sequence. Interleaver block443may also be configured to make more significant bits have priority in transmission. In some embodiments, interleaver block443may be configured to provide more protection to the more significant bits. In addition, interleaver block443may be configured to allow retransmitted bits to have different levels of protection than bits sent in previous transmissions.

The different levels of protection may be caused by the positions of the bits on a constellation. For example, referring to a constellation of 16 Quadrature Amplitude Modulation (QAM) specified in IEEE 802.16e, the first bit (b3), which called the most significant bit (MSB), and third bit (b1), respectively, characterize the sign of the real part and image part. In the constellation, the first bit is a “1” in the left half and a “0” in the right half, and the third bit is a “0” in the top half and a “1” in the bottom half. During symbol transmission, errors may occur in demodulation regions in the same half or same quadrant. As such, the error probability of half- or quadrant-determining bits may be relatively high in comparison to bits that do not define a half or a quadrant. Thus, the half- or quadrant-determining bits may have a higher signal priority and may be more reliable in transmission. Therefore, in some embodiments, more significant coded bits (i.e., systematic bits) may be allocated to the sign bits of a complex-valued modulation symbol for greater reliability. In some embodiments, if the bits are retransmitted bits, they may be mapped to different positions on the constellation in order to achieve greater constellation diversity.

In some embodiments, the different levels of protection may be caused by channel conditions associated with one or more antennas. For example, good channel conditions may provide more reliable protection for bits. Therefore, the more significant bits may be assigned to the bit streams having better channel conditions to achieve better protection of the hits. If the bits are retransmitted bits (i.e., the bits have been transmitted previously), they may be assigned to different bit streams passing different channel conditions in order to achieve antenna or spatial diversity.

In addition to interleaver block443, the initial index setting of bit selection block444may cause more significant bits to have priority in transmission, and/or provide more protection to the more significant bits, and/or allow retransmitted bits to have different levels of protection than bits in previous transmissions. Through the use of these four function blocks (i.e., repetition block441, puncture block442, interleaver block443, and bit selection block444), it may be possible to obtain any desired subpackets (or versions).

The functionality of repetition block441may be illustrated using Π(x), referred to below as the “repetition function,” the functionality of puncture block442may be illustrated using {tilde over (x)}, referred to below as the “puncturing function,” and the functionality of interleaver block443may be illustrated using Π(x), referred to as the “interleaver function.” Thus, b′k=[IL(Π(bk))], where bk=[b0,k, b1,k, . . . , bLkcoded-1,k], as discussed above in connection withFIG. 4.

In certain disclosed embodiments, the repetition function n Π(x) may be used twice, for example, to repeat bktwice. In one exemplary embodiment, bkmay be repeated twice, in whole, to achieve b′k=[b0,k, b1,k, . . . , bLkcoded-1,k, b0,k, . . . , bLkcoded-1,k]. In another exemplary embodiment, the elements of bkmay be individually repeated twice to achieve b′k=[b0,k, b0,k, b1,k, b1,k, . . . , bLkcoded-1,k, bLkcoded-1,k]. In some embodiments, if the first ⅔ of the coded bits of bkare more significant than the latter ⅓ of the coded bits, the first ⅔ of the coded bits of bkmay be transmitted twice, in some cases with a desired bit order. In other embodiments, b′kmay be created by a process where bkis repeated twice, and the final ⅙ of the coded bits are punctured, with the following result:
b′k=[b0,k,b1,k, . . . ,bLkcoded-1,k,b0,k,b1,k, . . . ,b(2Lkcoded/3)-1,k].

In certain embodiments, bit selection may be done using a method of circular selection using, for example, a circular buffer. The circular buffer may be used to receive and store the input coded input bits b′k, and then allow the coded input bits bkto be selected circularly to form subpackets by a given initial index. In some embodiments, the desired bit order and weighting are produced before by other functional blocks. In some embodiments, the bit selection may select bits by a certain rule, e.g., select bits in a random-like manner to resist the channel interference, select bits to let bits have different levels of protections in the following processing, etc. Because the bit selection can achieve the same purpose as the interleaver, in some embodiments, the bit selection block may be used without the interleaver.

Bits may be selected consecutively and circularly from b′k. In one exemplary embodiment, an initial index F0of the circular buffer is set and then the bit selection block444chooses bits continuously to generate Nksubpacksubpackets (or subblocks). The initial index F0may be set to zero or any other arbitrary number. Thus, for example, assuming that the circular buffer is represented as b′k=[b′0,k, b′1,k, . . . , b′Lkamended-1,k], Fprepresents the initial index for the pth subpacket (or subblock) in the circular buffer, Lkamendeddenotes the length of b′k, and π(i) denotes the index or address of selected bits in the buffer storing b′k. In this configuration, bit selection block444may be configured to perform the following:

In another exemplary embodiment, the initial index is renewed each round of bit selection according to each desired subpacket (or subblock). Thus, for example, again assuming that the circular buffer is represented as b′k=[b′0,k, b′1,k, . . . , b′Lkamended-1,k], Fprepresents the initial index for the pth subpacket (or subblock) in the circular buffer, Lkamendeddenotes the length of b′k, and π(i) again denotes the index or address of selected bits in the buffer storing b′k. In this configuration, bit selection block444may be configured to perform the following:

Fp=∑j=0P⁢Lj-1,ksubpack,
where L−1,ksubpackis set to zero or any other number as the initial index F0. If there are other functional blocks besides bit selection block444, e.g., repetition block441, puncture block442, or interleaver block443, b′kmay likely have been specified by one or more previously executed blocks because the circular selection is fixed as consecutively and circularly selecting.

In addition to information about where the transmitted subpacket data may be found in a radio resource, TD210may provide enough information about the functional blocks to the SSs220by using one or more control signals or through system specifications. For example, if an interleaver block443is used, SS220may require information regarding the interleaving table or pattern in order to successfully recover the bit sequence. Similarly, TD210should provide information to SSs220regarding repetition block441and puncturing block442. In order to provide the information about interleaving and puncture to SSs220, TD210may provide SSs220with information about bk, e.g., the pattern which records how bkis transformed into b′k. In addition, TD210should advise SSs220about the initial index F0used by bit selection block444.

FIG. 7is a diagram illustrating a second exemplary subpacket generator440for generating one or more data subpackets, e.g., c0k, c1k, c2k, and c3k, consistent with certain disclosed embodiments. Similarly toFIG. 6, subpacket generator440ofFIG. 7may also be configured to receive one or more encoded packets bk. Subpacket generator440may include a number of functional blocks, such as, for example, repetition block441, puncture block442, interleaver block443, bit selection block444, and buffer445, and subblock generator440may utilize one or more of these functional blocks in any desired order. The desired order may be determined based on the type of subpacket received and/or the desired output. As shown inFIG. 7, the determined order of functional blocks in subblock generator440is repetition block441, puncture block442, interleaver block443, buffer445, and bit selection block444. In addition,FIG. 7includes buffer445so that bit selection block444may configure access coded bits circularly from buffer445.

FIG. 8is a diagram illustrating an third exemplary subpacket generator440for generating one or more data subpackets, e.g., c0k, c1k, c2k, and c3A, consistent with certain disclosed embodiments. Similarly toFIGS. 6 and 7, subpacket generator440ofFIG. 7may also be configured to receive one or more encoded packets bk. Subpacket generator440may include a number of functional blocks, such as, for example, repetition block441, puncture block442, interleaver block443, and bit selection block444, and subblock generator440may utilize one or more of these functional blocks in any desired order. The desired order may be determined based on the type of subpacket received and/or the desired output. As shown inFIG. 8, the determined order of functional blocks in subblock generator440is repetition block441, puncture block442, bit selection block444, and interleaver block443. InFIG. 8, interleaver block443follows bit selection block444. That is, subblock generator440may be configured to perform bit selection before interleaving. Thus, the pth quasi-subpacket may be permuted to form the pth subpacket cpkfor p=0, 1, . . . , Nksubpack. These Nksubpacksubpackets (or subblocks) may pass through the same interleaving as individual packets. In some embodiments, the interleaving method for every subpacket in a packet may be different.

In this manner, the apparatuses and methods disclosed may be configured to adapt the bit order and weighting based on priority or one or more conditions to achieve any kind of diversity, including, for example, time diversity, frequency diversity, spatial diversity, and constellation diversity, which, in turn, may improve performance. Although the choices of functional blocks may, in some cases, be the same for different systems, it is possible to choose the most appropriate method to design subblock generator440to improve performance and reduce complexity in accordance with conditions of the system, such as, for example, coding scheme, modulator, channel interleaver, etc.

It will be apparent to those skilled in the art that various modifications and variations can be made in the system and method for reception in communication networks. It is intended that the disclosed standards and embodiments are to be considered as exemplary only, with a true scope of the invention being indicated by the following claims and their equivalents.