Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
HYBRID ARQ SCHEMES BASED ON LOW DENSITY PARITY CHECK CODES
Document Type and Number:
WIPO Patent Application WO/2017/091244
Kind Code:
A1
Abstract:
Coding and retransmission schemes including variations to HARQ feedback techniques for broadband wireless communication networks are provided. A first codeword (308) can be obtained by encoding an information block (302) according to a first parity-check matrix (304). A portion of the first codeword (310) can be transmitted to a remote device. A second codeword (314) can be obtained by encoding the information block according to a second parity-check matrix (306). A portion of the second codeword (312) can be transmitted to the remote device for soft-combining decoding. Alternatively, the first codeword (408) can be obtained by modifying the information block according to a first permutation (404) and the second codeword (416) can be obtained by modifying the information block according to a second permutation (412) prior to encoding by the same parity-check matrix (406, 414). The parity-check matrices can be based on rate-adaptable LDPC codes. Permutation variations and parity-check matrix variations can be explicitly or implicitly provided to the remote device.

Inventors:
NIMBALKER AJIT (US)
NIU HUANING (US)
KRISHNAMURTHY SANDEEP (US)
FWU JONG-KAE (US)
PAWAR SAMEER (US)
Application Number:
PCT/US2016/025318
Publication Date:
June 01, 2017
Filing Date:
March 31, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
INTEL IP CORP (US)
International Classes:
H03M13/27; H03M13/11; H03M13/37; H04L1/18; H03M13/29
Domestic Patent References:
WO2015006640A12015-01-15
Foreign References:
US20080301518A12008-12-04
US20100211841A12010-08-19
Other References:
None
Attorney, Agent or Firm:
KACVINSKY, John F. (US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. An apparatus, comprising:

a memory; and

logic, at least a portion of the logic implemented in circuitry coupled to the memory, the logic to:

encode an information block based on a first parity-check matrix of a low density parity-check (LDPC) code to obtain a first codeword block;

select a portion of the first codeword block for use in a first transmission;

process feedback information related to the first transmission;

encode the information block based on a second parity-check matrix of the LDPC code to obtain a second codeword block; and

select a portion of the second codeword block for use in a second transmission.

2. The apparatus of claim 1, the first parity-check matrix determined based on a first redundancy version indicator associated with the first transmission.

3. The apparatus of claim 2, the logic further comprising transmission logic to transmit the first redundancy version indicator in the first transmission.

4. The apparatus of claims 2 or 3, the second parity-check matrix determined based on a second redundancy version indicator associated with the second transmission.

5. The apparatus of claim 4, the logic further comprising transmission logic to transmit the second redundancy version indicator in the second transmission.

6. The apparatus according to any one of the preceding claims, the first parity-check matrix distinct from the second parity-check matrix.

7. The apparatus according to any one of the preceding claims, the logic to select the portion of the second codeword block based on the feedback information.

8. The apparatus of claim 7, the feedback information to indicate whether a remote device can soft combine the selected portion of the first codeword block and the selected portion of the second codeword block.

9. The apparatus of claim 7, the feedback information to indicate a failed decoding of the first codeword block.

10. A mobile device, comprising:

an apparatus according to any of claims 1 to 9; and

at least one radio frequency (RF) transceiver.

11. A base station, comprising:

an apparatus according to any of claims 1 to 9; and

at least one radio frequency (RF) transceiver.

12. An apparatus, comprising:

a memory; and

logic, at least a portion of the logic implemented in circuitry coupled to the memory, the logic to:

modify an information block based on a first permutation to obtain a first modified information block;

encode the first modified information block based on a parity-check matrix of a low density parity-check (LDPC) code to obtain a first codeword block;

select a portion of the first codeword block for use in a first transmission;

process feedback information related to the first transmission;

modify the information block based on a second permutation to obtain a second modified information block;

encode the second modified information block based on the parity-check matrix to obtain a second codeword block; and

select a portion of the second codeword block for use in a second transmission.

13. The apparatus of claim 12, the first permutation determined based on a first redundancy version indicator associated with the first transmission.

14. The apparatus of claim 13, the logic further comprising transmission logic to transmit the first redundancy version indicator in the first transmission.

15. The apparatus of claims 13 or 14, the second permutation determined based on a second redundancy version indicator associated with the second transmission.

16. The apparatus of claim 15, the logic further comprising transmission logic to transmit the second redundancy version indicator in the second transmission.

17. The apparatus according to any one of the preceding claims, the first and second permutations to comprise vector permutations based on an expansion factor of the parity-check matrix.

18. The apparatus according to any one of the preceding claims, the logic to select the portion of the second codeword block based on the feedback information.

19. The apparatus of claim 18, the feedback information to indicate whether a remote device can soft combine the selected portion of the first codeword block and the selected portion of the second codeword block.

20. The apparatus according to any one of the preceding claims, the selected portion of the first codeword block self-decodable and the selected portion of the second codeword block self- decodable.

21. At least one computer-readable storage medium comprising a set of wireless communication instructions that, in response to being executed on a computing device, cause the computing device to:

encode an information block using a first parity-check matrix based on a low density parity check (LDPC) code to obtain a first codeword;

select a portion of the first codeword for use in a first transmission;

process feedback information related to the first transmission;

encode the information block using a second distinct parity-check matrix based on the LDPC code to obtain a second codeword; and

select a portion of the second codeword block for use in a second transmission based on the feedback information.

22. The at least one non-transitory computer-readable storage medium of claim 21, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the first parity-check matrix based on a first redundancy version indicator associated with the first transmission.

23. The at least one non- transitory computer-readable storage medium of claim 22, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the first redundancy version indicator in the first transmission.

24. The at least one non- transitory computer-readable storage medium of claims 22 or 23, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the second distinct parity-check matrix based on a second redundancy version indicator associated with the second transmission.

25. The at least one non- transitory computer-readable storage medium of claim 24, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the second redundancy version indicator in the second transmission.

AMENDED CLAIMS

received by the International Bureau on 23 March 2017 (23.03.2017)

CLAIMS

What is claimed is:

1. An apparatus, comprising:

a memory; and

logic, at least a portion of the logic implemented in circuitry coupled to the memory, the logic to:

encode an information block based on a first parity-check matrix of a low density parity- check (LDPC) code to obtain a first codeword block;

select a portion of the first codeword block for use in a first transmission;

process feedback information related to the first transmission;

encode the information block based on a second parity-check matrix of the LDPC code to obtain a second codeword block; and

select a portion of the second codeword block for use in a second transmission.

2. The apparatus of claim 1, the first parity-check matrix determined based on a first redundancy version indicator associated with the first transmission.

3. The apparatus of claim 2, the logic further comprising transmission logic to transmit the first redundancy version indicator in the first transmission.

4. The apparatus of claim 2, the second parity-check matrix determined based on a second redundancy version indicator associated with the second transmission.

5. The apparatus of claim 4, the logic further comprising transmission logic to transmit the second redundancy version indicator in the second transmission.

6. The apparatus of claim 1, the first parity-check matrix distinct from the second parity- check matrix.

7. The apparatus of claim 1, the logic to select the portion of the second codeword block based on the feedback information.

8. The apparatus of claim 7, the feedback information to indicate whether a remote device can soft combine the selected portion of the first codeword block and the selected portion of the second codeword block.

9. The apparatus of claim 7, the feedback information to indicate a failed decoding of the first codeword block.

10. A mobile device, comprising:

an apparatus according to any of claims 1 to 9; and

at least one radio frequency (RF) transceiver.

11. A base station, comprising:

an apparatus according to any of claims 1 to 9; and

at least one radio frequency (RF) transceiver.

12. An apparatus, comprising:

a memory; and

logic, at least a portion of the logic implemented in circuitry coupled to the memory, the logic to:

modify an information block based on a first permutation to obtain a first modified information block;

encode the first modified information block based on a parity-check matrix of a low density parity-check (LDPC) code to obtain a first codeword block;

select a portion of the first codeword block for use in a first transmission;

process feedback information related to the first transmission;

modify the information block based on a second permutation to obtain a second modified information block;

encode the second modified information block based on the parity-check matrix to obtain a second codeword block; and

select a portion of the second codeword block for use in a second transmission.

13. The apparatus of claim 12, the first permutation determined based on a first redundancy version indicator associated with the first transmission.

14. The apparatus of claim 13, the logic further comprising transmission logic to transmit the first redundancy version indicator in the first transmission.

15. The apparatus of claim 13, the second permutation determined based on a second redundancy version indicator associated with the second transmission.

16. The apparatus of claim 15, the logic further comprising transmission logic to transmit the second redundancy version indicator in the second transmission.

17. The apparatus of claim 12, the first and second permutations to comprise vector permutations based on an expansion factor of the parity-check matrix.

18. The apparatus of claim 12, the logic to select the portion of the second codeword block based on the feedback information.

19. The apparatus of claim 18, the feedback information to indicate whether a remote device can soft combine the selected portion of the first codeword block and the selected portion of the second codeword block.

20. The apparatus of any of claims 12 to 19, the selected portion of the first codeword block self-decodable and the selected portion of the second codeword block self-decodable.

21. At least one computer-readable storage medium comprising a set of wireless communication instructions that, in response to being executed on a computing device, cause the computing device to:

encode an information block using a first parity-check matrix based on a low density parity check (LDPC) code to obtain a first codeword;

select a portion of the first codeword for use in a first transmission;

process feedback information related to the first transmission;

encode the information block using a second distinct parity-check matrix based on the LDPC code to obtain a second codeword; and

select a portion of the second codeword block for use in a second transmission based on the feedback information.

22. The at least one non-transitory computer-readable storage medium of claim 21, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the first parity-check matrix based on a first redundancy version indicator associated with the first transmission.

23. The at least one non-transitory computer-readable storage medium of claim 22, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the first redundancy version indicator in the first transmission.

24. The at least one non-transitory computer-readable storage medium of claim 22, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the second distinct parity-check matrix based on a second redundancy version indicator associated with the second transmission.

25. The at least one non-transitory computer-readable storage medium of claim 24, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the second redundancy version indicator in the second transmission.

Description:
HYBRID ARQ SCHEMES BASED ON LOW DENSITY PARITY CHECK CODES

RELATED CASE

This application claims priority to United States Provisional Patent Application Number 62/258,918, filed November 23, 2015, the entirety of which is hereby incorporated by reference.

TECHNICAL FIELD

Embodiments herein generally relate to communications between devices in broadband wireless communications networks.

BACKGROUND

Adaptive modulation and coding schemes (MCS) and hybrid automatic repeat request (HARQ) retransmission for 3rd Generation Partnership Project (3GPP) Long Term Evolution (LTE) require rate-compatible channel coding of data and redundant versions thereof at any arbitrary coding rate. It is anticipated that 5G systems will also support MCS across a wide range of coding rates. A retransmission scheme for 5G systems using highly efficient codes across a range of MCS, however, has yet to be developed.

BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 illustrates an exemplary operating environment.

FIG. 2 illustrates an exemplary retransmission technique.

FIG. 3 illustrates a first exemplary coding and retransmission technique.

FIG. 4 illustrates a second exemplary coding and retransmission technique.

FIG. 5 illustrates an exemplary decoder.

FIG. 6 illustrates an embodiment of a first logic flow.

FIG. 7 illustrates an embodiment of a second logic flow.

FIG. 8 illustrates an embodiment of a storage medium.

FIG. 9 illustrates an embodiment of a first device.

FIG. 10 illustrates an embodiment of a second device.

FIG. 11 illustrates an embodiment of a wireless network.

FIG. 12 illustrates a second exemplary coding and retransmission technique.

DETAILED DESCRIPTION

Various embodiments may be generally directed to coding and retransmission schemes including variations to hybrid automatic repeat request (HARQ) feedback techniques for broadband wireless communication networks. In various embodiments, a first codeword can be obtained by encoding an information block according to a first parity-check matrix. A portion of the first codeword can be transmitted to a remote device. A second codeword can be obtained by encoding the information block according to a second parity-check matrix. A portion of the second codeword can be transmitted to the remote device for soft-combining decoding. In various embodiments, the first codeword can be obtained by modifying the information block according to a first permutation and the second codeword can be obtained by modifying the information block according to a second permutation prior to encoding by the same parity-check matrix. In various embodiments, the parity-check matrices can be based on rate- adaptable low density parity-check (LDPC) codes. Permutation variations and parity-check matrix variations can be explicitly or implicitly provided to the remote device. Other embodiments are described and claimed.

Various embodiments may comprise one or more elements. An element may comprise any structure arranged to perform certain operations. Each element may be implemented as hardware, software, or any combination thereof, as desired for a given set of design parameters or performance constraints. Although an embodiment may be described with a limited number of elements in a certain topology by way of example, the embodiment may include more or less elements in alternate topologies as desired for a given implementation. It is worthy to note that any reference to "one embodiment" or "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrases "in one embodiment," "in some

embodiments," and "in various embodiments" in various places in the specification are not necessarily all referring to the same embodiment.

The techniques disclosed herein may involve transmission of data over one or more wireless connections using one or more wireless mobile broadband technologies. For example, various embodiments may involve transmissions over one or more wireless connections according to one or more 3rd Generation Partnership Project (3GPP), 3GPP Long Term

Evolution (LTE), and/or 3 GPP LTE- Advanced (LTE-A) technologies and/or standards, including their revisions, progeny and variants - including 4G and 5G wireless networks.

Various embodiments may additionally or alternatively involve transmissions according to one or more Global System for Mobile Communications (GSM)/Enhanced Data Rates for GSM Evolution (EDGE), Universal Mobile Telecommunications System (UMTS)/High Speed Packet Access (HSPA), and/or GSM with General Packet Radio Service (GPRS) system (GSM/GPRS) technologies and/or standards, including their revisions, progeny and variants.

Examples of wireless mobile broadband technologies and/or standards may also include, without limitation, any of the Institute of Electrical and Electronics Engineers (IEEE) 802.16 wireless broadband standards such as IEEE 802.16m and/or 802.16p, International Mobile Telecommunications Advanced (IMT-ADV), Worldwide Interoperability for Microwave Access (WiMAX) and/or WiMAX II, Code Division Multiple Access (CDMA) 2000 (e.g., CDMA2000 lxRTT, CDMA2000 EV-DO, CDMA EV-DV, and so forth), High Performance Radio

Metropolitan Area Network (HIPERMAN), Wireless Broadband (WiBro), High Speed

Downlink Packet Access (HSDPA), High Speed Orthogonal Frequency-Division Multiplexing (OFDM) Packet Access (HSOPA), High-Speed Uplink Packet Access (HSUPA) technologies and/or standards, including their revisions, progeny and variants.

Some embodiments may additionally or alternatively involve wireless communications according to other wireless communications technologies and/or standards. Examples of other wireless communications technologies and/or standards that may be used in various

embodiments may include, without limitation, other IEEE wireless communication standards such as the IEEE 802.11, IEEE 802.11a, IEEE 802.11b, IEEE 802.1 lg, IEEE 802.11η, IEEE 802. l lu, IEEE 802.1 lac, IEEE 802.1 lad, IEEE 802.11af, and/or IEEE 802.11ah standards, High-Efficiency Wi-Fi standards developed by the IEEE 802.11 High Efficiency WLAN (HEW) Study Group, Wi-Fi Alliance (WFA) wireless communication standards such as Wi-Fi, Wi-Fi Direct, Wi-Fi Direct Services, Wireless Gigabit (WiGig), WiGig Display Extension (WDE), WiGig Bus Extension (WBE), WiGig Serial Extension (WSE) standards and/or standards developed by the WFA Neighbor Awareness Networking (NAN) Task Group, machine-type communications (MTC) standards such as those embodied in 3GPP Technical Report (TR) 23.887, 3 GPP Technical Specification (TS) 22.368, and/or 3 GPP TS 23.682, and/or near-field communication (NFC) standards such as standards developed by the NFC Forum, including any revisions, progeny, and/or variants of any of the above. The embodiments are not limited to these examples.

In addition to transmission over one or more wireless connections, the techniques disclosed herein may involve transmission of content over one or more wired connections through one or more wired communications media. Examples of wired communications media may include a wire, cable, metal leads, printed circuit board (PCB), backplane, switch fabric, semiconductor material, twisted-pair wire, co-axial cable, fiber optics, and so forth. The embodiments are not limited in this context.

LTE supports adaptive modulation and coding across a wide range of supported resource allocations such as, for example, different packet and transport block sizes. LTE also supports retransmission schemes such as, for example, variations of automatic repeat request (ARQ) schemes and hybrid ARQ (HARQ) schemes - including, for example, Chase combing HARQ schemes and incremental redundancy (IR) HARQ schemes. The flexibility of the modulation and coding schemes (MCS) and flexibility of the retransmission schemes of LTE can be better served by rate-compatible coding. Techniques described herein can include rate-compatible channel coding for encoding a packet or transport block at any arbitrary coding rate according to a selected MCS level while defining multiple redundancy transmission versions to support HARQ operation.

IEEE 802.1 ln 1 lac does not support HARQ operation but does provides a low density parity-check (LDPC) code design. The IEEE 802.1 ln/1 lac LDPC code design, however, is based on a limited set of code rates and block sizes as shown in Table 1 :

Table 1

To encode and transmit a packet over available channel resources, IEEE 802.1 ln 1 lac specifies mechanisms for shortening and puncturing. For example, with shortening-based mechanisms, an effective lower code rate can be achieved while with puncturing-based mechanisms, an effective higher code rate can be achieved. Rate matching can therefore be implemented by either shortening a higher rate code or puncturing a lower rate code.

Techniques described herein can provide LDPC IR support in LTE radio access networks (RANs) including, for example, 4G and 5G networks. Techniques described herein can include rate-compatible channel coding for encoding a packet or transport block at any arbitrary coding rate according to a selected MCS level while defining multiple redundancy transmission versions to support HARQ operation based on the LDPC code design defined in IEEE 802.1 ln 1 lac. Techniques described herein can obtain lower rate codes using the LDPC code design by re- encoding techniques using multiple high rate codes. Further, techniques described herein can create multiple redundancy (transmission) versions for HARQ operation by reorganizing parity bits. As described herein, these techniques can provide form Chase combining (CC) and IR using LDPC in 5G networks.

FIG. 1 illustrates an exemplary operating environment 100 such as may be representative of some embodiments in which techniques for rate-compatible coding using LDPC codes with CC or IR may be implemented. The operating environment 100 can include a mobile device 102 and a cellular base station 104. The mobile device 102 can communicate with the base station 104 over a wireless communications interface 106. The mobile device 102 can be a smartphone, tablet, laptop, netbook, or other mobile computing device capable of communicating wirelessly with one or more wireless communication networks. As an example, the mobile device 102 can be a user equipment (UE). The base station 104 can be a cellular base station such as, for example, an evolved node B (eNB). The base station 104 can be a serving cell for the UE 102 such as, for example, a primary or secondary serving cell. The wireless communications interface 106 can be, for example, a wireless interface for any of the wireless networks or standards described herein including, for example, a 5G wireless network. The mobile device 102 and the base station 104 can communicate using retransmission schemes such as, for example, the HARQ schemes described herein. The mobile device 102 and the base station 104 can transmit and receive communications based on rate-compatible coding using LDPC codes with CC or IR.

FIG. 2 illustrates an exemplary retransmission technique 200 in accordance with the present disclosure. The retransmission technique 200 can be based on HARQ operation as described herein. For example, with HARQ operation, if a first transmission fails, a transmitter can repeat the same packet or transport block in a second transmission. Based on the type of encoding by the transmitter - including, for example, variations in the redundancy version and/or allocated MCS - the parity bits selected for the second transmission may or may not be identical to the parity bits contained in the first transmission.

In one form of HARQ operation as illustrated in FIG. 2, the same parity bits can be retransmitted in a second transmission. As shown in FIG. 2, information bits or symbols 202 (shown as "s" in FIG. 1) can be provided to an LDPC encoder 204. The LDPC encoder 204 can encode the information bits 202 based on a parity-check matrix 206 (represented as "H" in FIG. 1). The output of the encoding operation can be a codeword 204 represented by the information bits "s" and parity bits or symbols "p". In a first transmission 210, a first subset of the codeword 208 can be selected for transmission. If used, in a second transmission 212,a second subset of the codeword 208 can be selected for transmission. The second transmission 212 can be transmitted if requested by a receiver when, for example, the receiver indicates that the first transmission 210 failed (e.g., if the receiver cannot correctly decode the codeword 208 from only the first transmission 210). Using both the first transmission 210 and the second transmission 212 can increase the likelihood that the codeword 208 is correctly decoded.

The retransmission technique 200 shown in FIG. 2 allows an LDPC encoder (e.g., the encoder 204 shown in FIG. 2) and corresponding LDPC decoder to be reused without the need for substantial modifications. For a CC LDPC encoding technique as shown in FIG. 2, a decoder can use soft memory to store log likelihood ratios (LLRs) corresponding to failed transmissions and can use soft-combining decoding capabilities. Enhancements to the retransmission scheme 200 such that different parity bits are transmitted in subsequent transmission are described herein.

FIG. 3 illustrates a first exemplary coding and retransmission scheme 300 that can improve rate-compatibility using a parity-check matrix with a fixed coding rate. The exemplary coding and retransmission scheme 300 may be representative of some embodiments in which techniques for rate-compatible coding using LDPC codes with CC or IR may be implemented. As shown in FIG. 3, information bits or symbols 302 (represented by "s" in FIG. 3) can be provided to an encoder 304. The input 302 can be considered to be an information block. The encoder 304 can implement an encoding operation based on a first parity-check matrix (represented by "Hi" in FIG. 3) to produce a first codeword 308. The codeword 308 can include the information bits 302 provided to the encoder 304 as well as a first set of parity bits (represented by "pi" in FIG. 3). All or a portion of the codeword 308 can be transmitted in a first transmission 310.

As further shown in FIG. 3, the information bits 302 can also be provided to an encoder

306. The encoder 306 can implement an encoding operation based on a second parity-check matrix (represented by Ή 2 " in FIG. 3) to produce a second codeword 314. The codeword 310 can include the information bits 302 provided to the encoder 304 as well as a second set of parity bits (represented by "p2" in FIG. 3). All or a portion of the codeword 310 can be transmitted in a second transmission 312.

A receiver can receive the first transmission 310 and can attempt to decode the first transmission 310 to recover the information bits 302. If the decoding operation fails, the receiver can indicate a failed transmission to a transmitter which can perform a retransmission, for example, as part of a HARQ retransmission process. Therefore, for retransmission, the second codeword 314 can be generated. The second transmission 312 can then be transmitted to include all or a portion of the second codeword 314. The receiver can then use both the first

transmission 310 and the second transmission 312 to attempt to decode and recover the information bits 302.

The parity-check matrices Hi and ¾ can be based on parity-check matrices defined in IEEE 802.1 ln/1 lac (e.g., based on the LDPC code design provided by IEEE 802.11n/l lac). Further, the encoders 304 and 306 are not limited to separate encoders but instead can represent different encoding operations performed by a same encoder. Accordingly, the encoders 304 and 306 (and the encoding operations performed as described above) can be implemented by a single encoder. In the exemplary coding and retransmission scheme 300, the information bits 302 can represent a k-bit input block encoded using the Hi parity-check matrix having a dimension of n-k by n bits to generate the codeword 308 having n bits. As such, the code rate for this process can be k/n and the encoding process can place the k systematic bits (represented by "s" in FIG. 3) in the codeword 308. The same k-bit input block 302 can be re-encoded by the encoder 306 with the second parity-check matrix (i.e., ¾) to generate a second n-bit codeword 310 which also includes the k systematic bits (e.g., again a systematic coding operation). As a result, the overall code rate of the processes can be k/ (n + n-k) = k/(2n-k), with k systematic bits, (n-k) parity bits resulting from first encoder/encoding operation 304, and (n-k) parity bits resulting from the second encoder/encoding operation 306.

FIG. 4 illustrates a second exemplary coding and retransmission scheme 400 that can improve rate-compatibility using a parity-check matrix with a fixed coding rate. The exemplary coding and retransmission scheme 400 may be representative of some embodiments in which techniques for rate-compatible coding using LDPC codes with CC or IR may be implemented. As shown in FIG. 4, information bits or symbols 402 (represented by "s" in FIG. 4) can be provided to a first interleaver 404. The input 402 can be considered to be an information block. The first interleaver 404 can generate a first permutation (represented by "jti" in FIG. 4) of the information bits 402 and can provide the interleaved version of the information bits 402 to an encoder 406. The encoder 304 can implement an encoding operation based on a first parity- check matrix (represented by "Hi" in FIG. 4) to produce a first codeword 408. The codeword 408 can include the information bits 402 as well as a first set of parity bits (represented by "pi" in FIG. 4). All or a portion of the codeword 408 can be transmitted in a first transmission 410.

As further shown in FIG. 4, the information bits 402, in a re-encoding process, can also be provided to a second interleaver 412. The second interleaver 412 can generate a second permutation (represented by "π 2 " in FIG. 4) of the information bits 402 and can provide this second interleaved version of the information bits 402 to an encoder 414. The encoder 414 can implement an encoding operation based on the same first parity-check matrix (represented by "HI" in FIG. 4) to produce a second codeword 416. The codeword 416 can include the information bits 402 (represented by "s"'as well as a second set of parity bits (represented by "p2" in FIG. 4). All or a portion of the codeword 416 can be transmitted in a second transmission 418. As shown in FIG. 4, the same information bits 402 are re-encoded based on the same parity-check matrix after undergoing different permutation operations. As a result, different sets of parity bits are generated for each codeword 408 and 416.

A receiver can receive the first transmission 410 and can attempt to decode the first transmission 410 to recover the information bits 402. If the decoding operation fails, the receiver can request a retransmission for example as part of a HARQ retransmission process. Therefore, if requested, the second codeword 416 can be generated. The second transmission 418 can then be transmitted to include all or a portion of the second codeword 416. The receiver can then use both the first transmission 410 and the second transmission 418 to attempt to decode and recover the information bits 402.

As mentioned above, the parity-check matrix Hi can be based on a parity-check matrix defined in IEEE 802.11n/llac (e.g., based on the LDPC code design provided by IEEE

802.11n/llac). Further, the encoders 406 and 414 are not limited to separate encoders but instead can represent different encoding operations performed by a same encoder. Accordingly, the encoders 406 and 414 (and the encoding operations performed as described above) can be implemented by a single encoder.

A transmitter implementing the coding and retransmission schemes 300 and 400 of FIGs. 3 and 4, respectively, can indicate to a receiver which scheme is implemented and which parity- check matrix was used or what permutation was used, as appropriate. For example, for the coding and retransmission scheme 300 illustrated in FIG. 3, a redundancy version indicator can be used to indicate which parity-check matrix (i.e., either parity-check matrix Hi or ¾) is used for encoding a particular transmission. A transmission indicator "rv_idx" can represent this redundancy version indicator. As such, in various embodiments, rv_idx = 0 can indicate parity- check matrix Hi is used for encoding and rv_idx = 1 can indicate parity-check matrix ¾ is used for encoding.

Alternatively, for the coding and retransmission scheme 400 illustrated in FIG. 4, the redundancy version indicator can be used to indicate which permutation is used. For example, rv_idx = 0 can indicate that the first permutation jti using the first interleaver 404 is used and rv_idx = 1 can indicate that the first permutation ni using the second interleaver 412 is used.

Under both schemes 300 and 400, the redundancy version indicator can be provided to a receiver such that a particular parity-check matrix used for encoded can be derived and/or a particular permutation used prior to encoding can be derived, for use during decoding by the receiver. Further, in various embodiments, the redundancy version may be explicitly indicated in the control information (e.g., in a control channel transmission) associated with the input block (or a transport block). Additionally, in various embodiments, the redundancy version may be implicitly tied to a known parameter such as, for example, the subframe number or the transmission number of a transmission. For example, the value of rv_idx can vary according to whether the transmission is an even or odd numbered transmission (e.g., 1 st TX => rv_idx = 0, 2 nd TX => rv_idx = 1, 3 rd TX => rv_idx = 0, etc.). Implicitly relating the value of the redundancy to a known parameter can be particular efficient when encoding provided self-decodable transmissions.

Each of the above schemes 300 and 400 described above and provision of a redundancy version indicator can be extended to multiple encoders using multiple parity-check matrices (e.g., Hi, ¾, H 3 , H4, etc.) and multiple permutations (jti, π 2 , π 3 , π 4 , etc.).

In contrast to the retransmission scheme 200 shown in FIG. 2, the coding and

retransmission schemes 300 and 400 of FIGs. 3 and 4, respectively, can use a variety of parity- check matrices and/or a variety of permutations. As such, the retransmission scheme 200 shown in FIG. 2 may operate without such additional control information (such as, for example, a redundancy version indicator) indicating which parity-check matrix and/or permutation is used as there may be no variation of either.

The parity-check matrices provided in IEEE 802.11n/l lac can be modified or augmented to provide rate-compatible coding. For example, a parity-check matrix provided in IEEE 802.1 ln/11 ac for a particular code rate can be modified to form a parity-check matrix for a different code rate. An example of modifying a given parity-check matrix for use in the coding and retransmission scheme 400 of FIG. 4 is provided below.

For the provided example, a given 5/6 rate LDPC code is provided (e.g., based on a given 5/6 rate LDPC code specified in IEEE 802.1 ln 1 lac). A 5/7 code can be generated from the 5/6 rate code. In the example, the first permutation jti can be an identity permutation (i.e., jti(i) = i). Parity-check matrix Hi (e.g., again, as specified in IEEE 802.11n/l lac) for rate 5/6 and z=81

(where z is a known expansion or parallelism factor for the parity-check matrix) can be provided as (after permutation of the systematic bits, where Hi is a 4 by 24 matrix originally):

S3 ¾i « f 74 7 30 76 52 37 60 -1 '» 73 31 74 73 23 -t 1 0

& (i3 56 64 77 *i7 65 6 16 51 -5 64 -1 «S S 4S 62 54 27 - 1 0

51 15 c HO It- 25 42 54 44 7i i 67 35 -! 5S ·; 29 -1 53 0 ·;

56 29 36 4 j 44 36 59 3 50 24 -i a 65 51 -1 -1 7 5i 1

An extended parity-check matrix of code rate-5/7 can be generated based on FIG. 4 and can denoted as follows.

H, { :A k) Hy.,k ~ \ 0

//,Ο,ΛτίΙ : *)) 0 //, (:,*

Using the second permutation π 2 = [ 6 3 16 11 7 17 14 8 5 19 15 1 2 4 18 13 9 20 10 12] and Hi, an extended parity-check matrix H can be as follows (where the top four rows denotes Hi and the bottom four rows denote the encoding with interleaved systematic bits):

In the above resulting matrix, the first twenty columns can represent the systematic bits "s" (e.g., the first four rows and first twenty columns can represent Hi and the second four rows and first twenty columns can represent ¾), the twenty-first to twenty-fourth columns can represent first parity bits "pi" (e.g., the first four rows and twenty-first to twenty-fourth columns), and the twenty-fifth to twenty-eighth columns can represent first parity bits "p2" (e.g., the first four rows and twenty-fifth to twenty-eighth columns). Further, in the above example, interleaving can be performed on the vectorized input, (i.e., the permutation is designed using the parity-check matrix parameter such that the expansion factor z is taken into account).

Numerous advantages of the coding and retransmission schemes described herein are apparent in view of the above-provided example. First, each of the above encodings are self- decodable. As such, a receiver need not perform soft-combining (i.e., a decoder can decode based on either Hi or ¾) if it does not have sufficient memory storage for HARQ operation.

Second, if the receiver does include soft buffer storage, then the receiver can soft-combine multiple transmissions and decode based on the extended parity-check matrix shown above. In various embodiments, soft combining can occur with the systematic bits only. To maintain high throughput, the number of layered-decoding iterations may be different between the extended parity-check decoding and H1/H2 decoding, such that the decoder can complete decoding in an approximately same amount of time to decode either Hi or ¾.

Lastly, a decoder implementation for use with an original parity-check matrix (e.g., Hi as described above) can be largely reused for decoding the extended parity-check matrix described above since the original parity-check matrix properties/structure are mostly preserved.

In various embodiments, the coding and retransmission schemes 300 and 400 can be implemented by a mobile device (e.g., the mobile device 102) or a base station (e.g., the base station 104). In various embodiments, the coding and retransmission schemes 300 and 400 can be implemented by a UE or an eNB and/or can be implemented by mobile devices and base stations of 5G systems. In various embodiments, the parity-check matrices can be modified in accordance with a desired coding rate and based on a known information rate of an input information block to provide rate-compatible coding using LDPC codes.

FIG. 5 illustrates an exemplary decoder 500. As shown in FIG. 5, the decoder 500 can include a HARQ memory 502, a soft-combining unit 504, an iterative decoder 506, and a parity- matrix (H) determination unit. Each of the constituent components of the decoder 500 - e.g., the HARQ memory 502, the soft-combining unit 504, the iterative decoder 506, and the parity- matrix (H) determination unit can be implemented in hardware, software, or any combination thereof.

An input to the decoder 500 can be channel log-likelihood ratios (LLRs) 510. The channel LLRs 510 can be provided to the parity-matrix determination unit 508 and the soft- combining unit 504. The channel LLRs 510 can represent received values for a particular transmission/current packet transmission. The soft-combining unit 504 can combine the channel LLRs 510 of a current packet with those of a prior packet as stored in the HARQ memory 502. The results from the soft-combining unit 504 can be provided to the iterative decoder 506. The parity-check matrix determination unit 508 can use information related to the current packet and the channel LLRS 510 (as well as information about prior packets and channel LLRs stored in the HARQ memory 502) to determine an appropriate parity-check matrix for decoding. As an alternative or in addition thereto, the parity-check matrix determination unit 508 can receive and use a redundancy version indicator as described above for determining a current parity-check matrix to use for decoding.

The iterative decoder 506 can perform decoding operations based on inputs received from the parity-check matrix determination unit 508 and the soft-combining unit 504 to provide an output 512. The decoder 506 can perform iterative decoding based on information from current and past transmissions to improve performance.

FIG. 6 illustrates an example of a logic flow 600 that may be representative of the implementation of one or more of the disclosed coding and retransmission techniques according to various embodiments. For example, logic flow 600 may be representative of operations that may be performed in some embodiments by mobile device 102 (e.g., as a UE) or base station 104 (e.g., as an eNB) in operating environment 100 of FIG. 1. Further, logic flow 600 may be representative of operations related to the coding and retransmission scheme 300 of FIG. 3.

As shown in FIG. 6, an information block can be received at 602. The information block can comprise data. The information block can comprise bits or symbols prior to encoding for transmission over a wireless medium.

At 604, the information block can be encoded based on a first parity-check matrix to generate a first codeword block. The first parity-check matrix can be based on the LDPC code design and/or parity-check matrices defined in IEEE 802.1 ln/1 lac. Prior to encoding the information block using the first parity-check matrix, the first parity-check matrix can be modified (e.g., expanded) based on a desired coding rate and known information rate of the information block. The first codeword block can comprise bits or symbols resulting from the encoding process. The first parity-check matrix can be selected or determined based on a first redundancy version indicator related or associated with a first transmission. In various embodiments, the first redundancy version indicator can be explicitly indicated. In various embodiments, the first redundancy version indicator can be implicitly determined for example by being related to a transmission parameter (e.g., a subframe number).

At 606, a portion of the first codeword block can be selected for transmission. In various embodiments, the entirety of the first codeword block can be selected for transmission. In various other embodiments, less than the entirety of the first codeword block can be selected for transmission. At 606, the selected portion of the first codeword block can be transmitted (e.g., by an RF transceiver) over a wireless medium. In various embodiments, the first redundancy version indicator can also be transmitted. For example, the first redundancy version indicator can be transmitted as part of control information. The transmitted selected portion of the first codeword block can be received by a remote device (e.g., a mobile device or a base station). The remote device can attempt to decode the received transmission. If the information block cannot be recovered from the received transmission, the remote device can indicate that the decoding and/or transmission of the selected portion of the first codeword block has failed. The indication can be transmitted to the device performing the logic flow 600.

At 608, feedback related to the first transmission can be received. As mentioned above, the feedback can be related to the success and/or failure of a remote device to effectively recover the information block from the transmitted selected portion of the first codeword block. In various embodiments, the feedback can be related to a HARQ operation. For example, the feedback can contain an indication that the transmission/reception has failed. The feedback information can prompt further operation of the HARQ operation.

At 610, the information block can be encoded based on a second parity-check matrix to generate a second codeword block. The second parity-check matrix can be based on the LDPC code design and/or parity-check matrices defined in IEEE 802.1 ln/1 lac. The first and second parity-check matrices can be distinct. Prior to encoding the information block using the second parity-check matrix, the second parity-check matrix can be modified (e.g., expanded) based on a desired coding rate and known information rate of the information block. The second codeword block can comprise bits or symbols resulting from the encoding process. The second parity- check matrix can be selected or determined based on a second redundancy version indicator related or associated with a second transmission. In various embodiments, the second redundancy version indicator can be explicitly indicated. In various embodiments, the second redundancy version indicator can be implicitly determined for example by being related to a transmission parameter (e.g., a subframe number).

At 612, a portion of the second codeword block is selected for transmission. In various embodiments, the entirety of the second codeword block can be selected for transmission. In various other embodiments, less than the entirety of the second codeword block can be selected for transmission. At 612, the selected portion of the second codeword block can be transmitted (e.g., by the RF transceiver) over the wireless medium. In various embodiments, the second redundancy version indicator can also be transmitted. For example, the second redundancy version indicator can be transmitted as part of control information. The transmitted selected portion of the second codeword block can be received by the remote device. The remote device can attempt to decode the received transmission. In various embodiments, the remote device can attempt to recover the information block by combining information from the first and second received transmissions.

In various embodiments, the selected portions of the first and second codeword blocks can be self-decodable. For example, the selected portions of the first and second codeword blocks can be decoded to recover the information block without using or relying on other portions of any other codeword blocks. In various embodiments, the selected portions of the first and second codeword blocks can be based on the capabilities of the remote device. For example, if the remote device can perform soft-combing (e.g., has HARQ memory and related processing for soft-combing), then portions of the first and second codeword blocks selected for

transmission may vary from selected portions if the remote device does not have the ability to perform soft-combing. The embodiments are not limited to these examples.

The remote device that receives the first and second transmissions as described above can determine a first set of log-likelihood ratios based on the received portion of the first codeword block and can determine a second set of log-likelihood ratios based on the received portion of the second codeword block. In various embodiments, the remote device can determine the first parity-check matrix and the second parity-check matrix. For example, the remote device can determine the first and second parity-check matrices based on first and second redundancy version indicators, respectively. In various embodiments, the first and second redundancy version indicators can be received in transmissions (e.g., as part of control information) containing the selected portions of the first and second codeword blocks, respectively. In various embodiments, the first and second redundancy version indicators can be implicitly determined. The remote device can indicate that a decoding of the selected portion of the first codeword block failed, prompting transmission of the selected portion of the second codeword block. In various embodiments, the remote device can soft-combine the first and second log- likelihood ratios based on the determined first and second parity-check matrices. In various embodiments, the remote device can decode the soft-combined first and second log-likelihood ratios based on the determined first and second parity-check matrices to obtain an estimation of the information block. The embodiments are not limited to these examples.

FIG. 7 illustrates an example of a logic flow 700 that may be representative of the implementation of one or more of the disclosed coding and retransmission techniques according to various embodiments. For example, logic flow 700 may be representative of operations that may be performed in some embodiments by mobile device 102 (e.g., as a UE) or base station 104 (e.g., as an eNB) in operating environment 100 of FIG. 1. Further, logic flow 700 may be representative of operations related to the coding and retransmission scheme 400 of FIG. 4.

As shown in FIG. 7, an information block can be received at 702. The information block can comprise data. The information block can comprise bits or symbols prior to encoding for transmission over a wireless medium.

At 704, the information block can be modified based on a first permutation to generate a first modified information block. The first permutation can be performed, for example, by an interleaver. The first permutation can comprise a re-ordering of the components of the information block. The first permutation can be selected or determined based on a first redundancy version indicator related or associated with a first transmission. In various embodiments, the first redundancy version indicator can be explicitly indicated. In various embodiments, the first redundancy version indicator can be implicitly determined for example by being related to a transmission parameter (e.g., a subframe number).

At 706, the first modified information block can be encoded based on a parity-check matrix to generate a first codeword block. The parity-check matrix can be based on the LDPC code design and/or parity-check matrices defined in IEEE 802.11n/llac. Prior to encoding the first modified information block using the parity-check matrix, the parity-check matrix can be modified (e.g., expanded) based on a desired coding rate and known information rate of the modified information block. The first codeword block can comprise bits or symbols resulting from the encoding process.

At 708, a portion of the first codeword block can be selected for transmission. In various embodiments, the entirety of the first codeword block can be selected for transmission. In various other embodiments, less than the entirety of the first codeword block can be selected for transmission. At 708, the selected portion of the first codeword block can be transmitted (e.g., by an RF transceiver) over a wireless medium. In various embodiments, the first redundancy version indicator can also be transmitted. For example, the first redundancy version indicator can be transmitted as part of control information. The transmitted selected portion of the first codeword block can be received by a remote device (e.g., a mobile device or a base station). The remote device can attempt to decode the received transmission. If the information block cannot be recovered from the received transmission, the remote device can indicate that the decoding and/or transmission of the selected portion of the first codeword block has failed. The indication can be transmitted to the device performing the logic flow 700.

At 710, feedback related to the first transmission can be received. As mentioned above, the feedback can be related to the success and/or failure of a remote device to effectively recover the information block from the transmitted selected portion of the first codeword block. In various embodiments, the feedback can be related to a HARQ operation. For example, the feedback can contain an indication that the transmission/reception has failed. The feedback information can prompt further operation of the HARQ operation.

At 712, the information block can be modified based on a second permutation to generate a second modified information block. The second permutation can be performed, for example, by an interleaver. The second permutation can comprise a re-ordering of the components of the information block. The second permutation can be selected or determined based on a second redundancy version indicator related or associated with a second transmission. In various embodiments, the second redundancy version indicator can be explicitly indicated. In various embodiments, the second redundancy version indicator can be implicitly determined for example by being related to a transmission parameter (e.g., a subframe number).

At 714, the second modified information block can be encoded based on the parity-check matrix to generate a second codeword block. The parity-check matrix can be the same parity- check matrix used at 706. Prior to encoding the second modified information block using the parity-check matrix, the parity-check matrix can be modified (e.g., expanded) based on a desired coding rate and known information rate of the modified information block. The second codeword block can comprise bits or symbols resulting from the encoding process.

At 716, a portion of the second codeword block can be selected for transmission. In various embodiments, the entirety of the second codeword block can be selected for

transmission. In various other embodiments, less than the entirety of the second codeword block can be selected for transmission. At 716, the selected portion of the second codeword block can be transmitted (e.g., by the RF transceiver) over the wireless medium. In various embodiments, the second redundancy version indicator can also be transmitted. For example, the second redundancy version indicator can be transmitted as part of control information. The transmitted selected portion of the second codeword block can be received by the remote device. The remote device can attempt to decode the received transmission. In various embodiments, the remote device can attempt to recover the information block by combining information from the first and second received transmissions.

In various embodiments, the selected portions of the first and second codeword blocks can be self-decodable. For example, the selected portions of the first and second codeword blocks can be decoded to recover the information block without using or relying on other portions of any other codeword blocks. In various embodiments, the selected portions of the first and second codeword blocks can be based on the capabilities of the remote device. For example, if the remote device can perform soft-combing (e.g., has HARQ memory and related processing for soft-combing), then portions of the first and second codeword blocks selected for

transmission may vary from selected portions if the remote device does not have the ability to perform soft-combing. In various embodiments, each of the first and second permutations can comprise vector permutations based on an expansion factor of the parity-check matrix. The embodiments are not limited to these examples.

The remote device that receives the first and second transmissions as described above can determine a first set of log-likelihood ratios based on the received portion of the first codeword block and can determine a second set of log-likelihood ratios based on the received portion of the second codeword block. In various embodiments, the remote device can determine the first permutation and the second permutation. For example, the remote device can determine the first and second permutations based on the first and second redundancy version indicators, respectively. In various embodiments, the first and second redundancy version indicators can be received in transmissions (e.g., as part of control information) containing the selected portions of the first and second codeword blocks, respectively. In various embodiments, the first and second redundancy version indicators can be implicitly determined. The remote device can indicate that a decoding of the selected portion of the first codeword block failed, prompting transmission of the selected portion of the second codeword block. In various embodiments, the remote device can soft-combine the first and second log-likelihood ratios based on the determined first and second permutations. In various embodiments, the remote device can decode the soft-combined first and second log-likelihood ratios based on the determined first and second permutations to obtain an estimation of the information block. The embodiments are not limited to these examples.

FIG. 12 illustrates a third exemplary coding and retransmission scheme 1200. The exemplary coding and retransmission scheme 1200 may be representative of some embodiments in which techniques for rate-compatible coding using LDPC codes with CC or IR may be implemented. As shown in FIG. 12, information bits or symbols 1202 (represented by "s" in FIG. 12) can be provided to an encoder 1204. The input 1202 can be considered to be an information block. The encoder 1204 can implement an encoding operation based on a parity- check matrix 1206 (represented by "H" in FIG. 12) to produce a first codeword 1208. The codeword 1208 can include the information bits 1202 provided to the encoder 1204 as well as a first set of parity bits (represented by "p" in FIG. 12). All or a portion of the codeword 1208 can be transmitted in a first transmission 1210.

A receiver can receive the first transmission 1210 and can attempt to decode the first transmission 1210 to recover the information bits 1202. If the decoding operation fails, the receiver can request a retransmission for example as part of a HARQ retransmission process. Therefore, if requested, a second codeword 1214 can be generated. A second transmission 1216 can then be transmitted to include all or a portion of the second codeword 1214. The receiver can then use both the first transmission 1210 and the second transmission 1216 to attempt to decode and recover the information bits 1202.

The second codeword 1214 can be a permutation of the first codeword 1208. Specifically, as shown in FIG. 12, the first codeword 1208 can be provided to permutation block 1212 (represented by "π" in FIG. 12). The permutation block can modify or rearrange the first codeword 1208 to obtain the second codeword 1214. The permutation block 1212 can be implemented, for example, by an interleaver. The second codeword 1214 is represented as modified by the information bits (represented as "s"' in FIG. 12) and parity bits (represented as "ρ'" in FIG. 12). The permutation employed in the permutation block 1212 can be defined using a redundancy version indicator as previously described.

Based on the coding and retransmission scheme 1200, all or a portion of the first codeword 1208 can be selected to be provided in the first transmission 1210 and all or a portion of the second codeword 1214 can be selected to be provided in the second transmission 1216.

Accordingly, the parity bits selected for the first transmission 1210 can differ from the parity bits selected for the second transmission 1216. A receiver that receives the first and second transmissions 1210 and 1216 and that is HARQ capable (e.g., includes HARQ memory and/or can perform soft-combining) can perform soft-combining of the log-likelihood ratios derived from each of the first and second transmissions 1210 and 1216. The first and second transmissions 1210 and 1216 can also be self-decodable, allowing a non-HARQ capable receiver to discard determined log-likelihood ratios if a decoding operation fails.

The coding and retransmission scheme 1200 can be employed when puncturing is used to enable rate matching. For example, punctured parity bits from the first transmission 1210 can prioritized for inclusion in the second transmission 1216. The coding and retransmission scheme 1200 can be extended for use with multiple parity-check matrices and/or multiple permutation versions.

Each of the coding and retransmission schemes 300, 400, and 1200 can be implemented by the mobile device 102 and the base station 104 of FIG. 1.

FIG. 8 illustrates an embodiment of a storage medium 800 and an embodiment of a storage medium 850. Storage media 800 and 850 may comprise any non-transitory computer-readable storage media or machine-readable storage media, such as an optical, magnetic or semiconductor storage media. In various embodiments, storage media 800 and 850 may comprise an article of manufacture. In some embodiments, storage media 800 and 850 may store computer-executable instructions, such as computer-executable instructions to implement logic flow 600 of FIG. 6 and logic flow 700 of FIG. 7, respectively. Examples of a computer-readable storage medium or machine-readable storage medium may include any tangible media capable of storing electronic data, including volatile memory or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writeable or re-writeable memory, and so forth. Examples of computer-executable instructions may include any suitable type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, object-oriented code, visual code, and the like. The embodiments are not limited in this context.

As used herein, the term "circuitry" may refer to, be part of, or include an Application Specific Integrated Circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group), and/or memory (shared, dedicated, or group) that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable hardware

components that provide the described functionality. In some embodiments, the circuitry may be implemented in, or functions associated with the circuitry may be implemented by, one or more software or firmware modules. In some embodiments, circuitry may include logic, at least partially operable in hardware. Embodiments described herein may be implemented into a system using any suitably configured hardware and/or software.

FIG. 9 illustrates an example of a mobile device 900 that may be representative of a mobile device such as, for example, a UE that implements one or more of the disclosed techniques in various embodiments. For example, mobile device 900 may be representative of mobile device 102 according to some embodiments. In some embodiments, the mobile device 900 may include application circuitry 902, baseband circuitry 904, Radio Frequency (RF) circuitry 906, front-end module (FEM) circuitry 908 and one or more antennas 910, coupled together at least as shown.

The application circuitry 902 may include one or more application processors. For example, the application circuitry 902 may include circuitry such as, but not limited to, one or more single-core or multi-core processors. The processor(s) may include any combination of general-purpose processors and dedicated processors (e.g., graphics processors,

application processors, etc.). The processors may be coupled with and/or may include memory/storage and may be configured to execute instructions stored in the memory/storage to enable various applications and/or operating systems to run on the system.

The baseband circuitry 904 may include circuitry such as, but not limited to, one or more single-core or multi-core processors. The baseband circuitry 904 may include one or more baseband processors and/or control logic to process baseband signals received from a receive signal path of the RF circuitry 906 and to generate baseband signals for a transmit signal path of the RF circuitry 906. Baseband processing circuity 904 may interface with the application circuitry 902 for generation and processing of the baseband signals and for controlling operations of the RF circuitry 906. For example, in some embodiments, the baseband circuitry 904 may include a second generation (2G) baseband processor 904a, third generation (3G) baseband processor 904b, fourth generation (4G) baseband processor 904c, and/or other baseband processor(s) 904d for other existing generations, generations in development or to be developed in the future (e.g., fifth generation (5G), 6G, etc.). The baseband circuitry 904 (e.g., one or more of baseband processors 904a-d) may handle various radio control functions that

enable communication with one or more radio networks via the RF circuitry 906. The radio control functions may include, but are not limited to, signal modulation/demodulation, encoding/decoding, radio frequency shifting, etc. In some embodiments,

modulation/demodulation circuitry of the baseband circuitry 904 may include Fast-Fourier Transform (FFT), precoding, and/or constellation mapping/demapping functionality. In some embodiments, encoding/decoding circuitry of the baseband circuitry 904 may include convolution, tail-biting convolution, turbo, Viterbi, and/or Low Density Parity Check (LDPC) encoder/decoder functionality. Embodiments of modulation/demodulation and encoder/decoder functionality are not limited to these examples and may include other suitable functionality in other embodiments.

In some embodiments, the baseband circuitry 904 may include elements of a protocol stack such as, for example, elements of an evolved universal terrestrial radio access network

(EUTRAN) protocol including, for example, physical (PHY), media access control (MAC), radio link control (RLC), packet data convergence protocol (PDCP), and/or radio resource control (RRC) elements. A central processing unit (CPU) 904e of the baseband circuitry 904 may be configured to run elements of the protocol stack for signaling of the PHY, MAC, RLC, PDCP and/or RRC layers. In some embodiments, the baseband circuitry may include one or more audio digital signal processor(s) (DSP) 904f. The audio DSP(s) 904f may be include elements for compression/decompression and echo cancellation and may include other suitable processing elements in other embodiments. Components of the baseband circuitry may be suitably combined in a single chip, a single chipset, or disposed on a same circuit board in some embodiments. In some embodiments, some or all of the constituent components of the baseband circuitry 904 and the application circuitry 902 may be implemented together such as, for example, on a system on a chip (SOC).

In some embodiments, the baseband circuitry 904 may provide for

communication compatible with one or more radio technologies. For example, in some embodiments, the baseband circuitry 904 may support communication with an evolved universal terrestrial radio access network (EUTRAN) and/or other wireless metropolitan area networks (WMAN), a wireless local area network (WLAN), a wireless personal area network (WPAN). Embodiments in which the baseband circuitry 904 is configured to support radio

communications of more than one wireless protocol may be referred to as multi-mode baseband circuitry.

RF circuitry 906 may enable communication with wireless networks

using modulated electromagnetic radiation through a non-solid medium. In various

embodiments, the RF circuitry 906 may include switches, filters, amplifiers, etc. to facilitate the communication with the wireless network. RF circuitry 906 may include a receive signal path which may include circuitry to down-convert RF signals received from the FEM circuitry 908 and provide baseband signals to the baseband circuitry 904. RF circuitry 906 may also include a transmit signal path which may include circuitry to up-convert baseband signals provided by the baseband circuitry 904 and provide RF output signals to the FEM circuitry 908 for transmission.

In some embodiments, the RF circuitry 906 may include a receive signal path and a transmit signal path. The receive signal path of the RF circuitry 906 may include mixer circuitry 906a, amplifier circuitry 906b and filter circuitry 906c. The transmit signal path of the RF circuitry 906 may include filter circuitry 906c and mixer circuitry 906a. RF circuitry 906 may also include synthesizer circuitry 906d for synthesizing a frequency for use by the mixer circuitry 906a of the receive signal path and the transmit signal path. In some embodiments, the mixer circuitry 906a of the receive signal path may be configured to down-convert RF signals received from the FEM circuitry 908 based on the synthesized frequency provided by synthesizer circuitry 906d. The amplifier circuitry 906b may be configured to amplify the down-converted signals and the filter circuitry 906c may be a low-pass filter (LPF) or band-pass filter (BPF) configured to remove unwanted signals from the down-converted signals to generate output baseband signals. Output baseband signals may be provided to the baseband circuitry 904 for further processing. In some embodiments, the output baseband signals may be zero-frequency baseband signals, although this is not a requirement. In some embodiments, mixer circuitry 906a of the receive signal path may comprise passive mixers, although the scope of the embodiments is not limited in this respect.

In some embodiments, the mixer circuitry 906a of the transmit signal path may be configured to up-convert input baseband signals based on the synthesized frequency provided by the synthesizer circuitry 906d to generate RF output signals for the FEM circuitry 908. The baseband signals may be provided by the baseband circuitry 904 and may be filtered by filter circuitry 906c. The filter circuitry 906c may include a low-pass filter (LPF), although the scope of the embodiments is not limited in this respect.

In some embodiments, the mixer circuitry 906a of the receive signal path and the mixer circuitry 906a of the transmit signal path may include two or more mixers and may be arranged for quadrature downconversion and/or upconversion respectively. In some embodiments, the mixer circuitry 906a of the receive signal path and the mixer circuitry 906a of the transmit signal path may include two or more mixers and may be arranged for image rejection (e.g., Hartley image rejection). In some embodiments, the mixer circuitry 906a of the receive signal path and the mixer circuitry 906a may be arranged for direct downconversion and/or direct upconversion, respectively. In some embodiments, the mixer circuitry 906a of the receive signal path and the mixer circuitry 906a of the transmit signal path may be configured for super-heterodyne operation.

In some embodiments, the output baseband signals and the input baseband signals may be analog baseband signals, although the scope of the embodiments is not limited in this respect. In some alternate embodiments, the output baseband signals and the input baseband signals may be digital baseband signals. In these alternate embodiments, the RF circuitry 906 may include analog-to-digital converter (ADC) and digital-to- analog converter (DAC) circuitry and the baseband circuitry 904 may include a digital baseband interface to communicate with the RF circuitry 906.

In some dual-mode embodiments, a separate radio IC circuitry may be provided for processing signals for each spectrum, although the scope of the embodiments is not limited in this respect.

In some embodiments, the synthesizer circuitry 906d may be a fractional-N synthesizer or a fractional N/N+l synthesizer, although the scope of the embodiments is not limited in this respect as other types of frequency synthesizers may be suitable. For example, synthesizer circuitry 906d may be a delta-sigma synthesizer, a frequency multiplier, or a synthesizer comprising a phase-locked loop with a frequency divider.

The synthesizer circuitry 906d may be configured to synthesize an output frequency for use by the mixer circuitry 906a of the RF circuitry 906 based on a frequency input and a divider control input. In some embodiments, the synthesizer circuitry 906d may be a fractional N/N+l synthesizer.

In some embodiments, frequency input may be provided by a voltage controlled oscillator (VCO), although that is not a requirement. Divider control input may be provided by either the baseband circuitry 904 or the applications processor 902 depending on the desired output frequency. In some embodiments, a divider control input (e.g., N) may be determined from a look-up table based on a channel indicated by the applications processor 902.

Synthesizer circuitry 906d of the RF circuitry 906 may include a divider, a delay-locked loop (DLL), a multiplexer and a phase accumulator. In some embodiments, the divider may be a dual modulus divider (DMD) and the phase accumulator may be a digital phase accumulator (DPA). In some embodiments, the DMD may be configured to divide the input signal by either N or N+l (e.g., based on a carry out) to provide a fractional division ratio. In some example embodiments, the DLL may include a set of cascaded, tunable, delay elements, a phase detector, a charge pump and a D-type flip-flop. In these embodiments, the delay elements may be configured to break a VCO period up into Nd equal packets of phase, where Nd is the number of delay elements in the delay line. In this way, the DLL provides negative feedback to help ensure that the total delay through the delay line is one VCO cycle.

In some embodiments, synthesizer circuitry 906d may be configured to generate a carrier frequency as the output frequency, while in other embodiments, the output frequency may be a multiple of the carrier frequency (e.g., twice the carrier frequency, four times the carrier frequency) and used in conjunction with quadrature generator and divider circuitry to generate multiple signals at the carrier frequency with multiple different phases with respect to each other. In some embodiments, the output frequency may be a LO frequency (fLO). In some

embodiments, the RF circuitry 906 may include an IQ/polar converter.

FEM circuitry 908 may include a receive signal path which may include circuitry configured to operate on RF signals received from one or more antennas 910, amplify the received signals and provide the amplified versions of the received signals to the RF circuitry 906 for further processing. FEM circuitry 908 may also include a transmit signal path which may include circuitry configured to amplify signals for transmission provided by the RF circuitry 906 for transmission by one or more of the one or more antennas 910.

In some embodiments, the FEM circuitry 908 may include a TX/RX switch to switch between transmit mode and receive mode operation. The FEM circuitry may include a receive signal path and a transmit signal path. The receive signal path of the FEM circuitry may include a low-noise amplifier (LNA) to amplify received RF signals and provide the amplified received RF signals as an output (e.g., to the RF circuitry 906). The transmit signal path of the FEM circuitry 908 may include a power amplifier (PA) to amplify input RF signals (e.g., provided by RF circuitry 906), and one or more filters to generate RF signals for subsequent transmission (e.g., by one or more of the one or more antennas 910.

In some embodiments, the mobile device 900 may include additional elements such as, for example, memory/storage, display, camera, sensor, and/or input/output (I/O) interface.

FIG. 10 illustrates an embodiment of a communications device 1000 that may implement one or more of mobile device 102, base station 104, logic flow 600, logic flow 700, storage medium 800, storage medium 850, and the mobile device 900. In various embodiments, device 1000 may comprise a logic circuit 1028. The logic circuit 1028 may include physical circuits to perform operations described for one or more of mobile device 102, base station 104, logic flow 600, logic flow 700, and the mobile device 900 of FIG. 9 for example. As shown in FIG. 10, device 1000 may include a radio interface 1010, baseband circuitry 1020, and computing platform 1030, although the embodiments are not limited to this configuration.

The device 1000 may implement some or all of the structure and/or operations for one or more of mobile device 102, base station 104, logic flow 600, logic flow 700, storage medium 800, storage medium 850, the mobile device 900, and logic circuit 1028 in a single computing entity, such as entirely within a single device. Alternatively, the device 1000 may distribute portions of the structure and/or operations for one or more of mobile device 102, base station 104, logic flow 600, logic flow 700, storage medium 800, storage medium 850, the mobile device 900, and logic circuit 1028 across multiple computing entities using a distributed system architecture, such as a client-server architecture, a 3-tier architecture, an N-tier architecture, a tightly-coupled or clustered architecture, a peer-to-peer architecture, a master-slave architecture, a shared database architecture, and other types of distributed systems. The embodiments are not limited in this context.

In one embodiment, radio interface 1010 may include a component or combination of components adapted for transmitting and/or receiving single-carrier or multi-carrier modulated signals (e.g., including complementary code keying (CCK), orthogonal frequency division multiplexing (OFDM), and/or single-carrier frequency division multiple access (SC-FDMA) symbols) although the embodiments are not limited to any specific over-the-air interface or modulation scheme. Radio interface 1010 may include, for example, a receiver 1012, a frequency synthesizer 1014, and/or a transmitter 1016. Radio interface 1010 may include bias controls, a crystal oscillator and/or one or more antennas 1018-/. In another embodiment, radio interface 1010 may use external voltage-controlled oscillators (VCOs), surface acoustic wave filters, intermediate frequency (IF) filters and/or RF filters, as desired. Due to the variety of potential RF interface designs an expansive description thereof is omitted. Baseband circuitry 1020 may communicate with radio interface 1010 to process receive and/or transmit signals and may include, for example, a mixer for down-converting received RF signals, an analog-to-digital converter 1022 for converting analog signals to digital form, a digital-to- analog converter 1024 for converting digital signals to analog form, and a mixer for up-converting signals for transmission. Further, baseband circuitry 1020 may include a baseband or physical layer (PHY) processing circuit 1026 for PHY link layer processing of respective receive/transmit signals. Baseband circuitry 1020 may include, for example, a medium access control (MAC) processing circuit 1027 for MAC/data link layer processing. Baseband circuitry 1020 may include a memory controller 1032 for communicating with MAC processing circuit 1027 and/or a computing platform 1030, for example, via one or more interfaces 1034.

In some embodiments, PHY processing circuit 1026 may include a frame construction and/or detection module, in combination with additional circuitry such as a buffer memory, to construct and/or deconstruct communication frames. Alternatively or in addition, MAC processing circuit 1027 may share processing for certain of these functions or perform these processes independent of PHY processing circuit 1026. In some embodiments, MAC and PHY processing may be integrated into a single circuit.

The computing platform 1030 may provide computing functionality for the device 1000. As shown, the computing platform 1030 may include a processing component 1040. In addition to, or alternatively of, the baseband circuitry 1020, the device 1000 may execute processing operations or logic for one or more of mobile device 102, base station 104, logic flow 600, logic flow 700, storage medium 800, storage medium 850, the mobile device 900, and logic circuit 1028 using the processing component 1040. The processing component 1040 (and/or PHY 1026 and/or MAC 1027) may comprise various hardware elements, software elements, or a combination of both. Examples of hardware elements may include devices, logic devices, components, processors, microprocessors, circuits, processor circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, and so forth), integrated circuits, application specific integrated circuits (ASIC), programmable logic devices (PLD), digital signal processors (DSP), field programmable gate array (FPGA), memory units, logic gates, registers, semiconductor device, chips, microchips, chip sets, and so forth. Examples of software elements may include software components, programs, applications, computer programs, application programs, system programs, software development programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application program interfaces (API), instruction sets, computing code, computer code, code segments, computer code segments, words, values, symbols, or any combination thereof. Determining whether an embodiment is implemented using hardware elements and/or software elements may vary in accordance with any number of factors, such as desired computational rate, power levels, heat tolerances, processing cycle budget, input data rates, output data rates, memory resources, data bus speeds and other design or performance constraints, as desired for a given implementation.

The computing platform 1030 may further include other platform components 1050. Other platform components 1050 include common computing elements, such as one or more processors, multi-core processors, co-processors, memory units, chipsets, controllers, peripherals, interfaces, oscillators, timing devices, video cards, audio cards, multimedia input/output (I/O) components (e.g., digital displays), power supplies, and so forth. Examples of memory units may include without limitation various types of computer readable and machine readable storage media in the form of one or more higher speed memory units, such as read-only memory (ROM), random-access memory (RAM), dynamic RAM (DRAM), Double-Data-Rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, polymer memory such as ferroelectric polymer memory, ovonic memory, phase change or ferroelectric memory, silicon-oxide-nitride-oxide-silicon (SONOS) memory, magnetic or optical cards, an array of devices such as Redundant Array of Independent Disks (RAID) drives, solid state memory devices (e.g., USB memory, solid state drives (SSD) and any other type of storage media suitable for storing information.

Device 1000 may be, for example, an ultra-mobile device, a mobile device, a fixed device, a machine-to-machine (M2M) device, a personal digital assistant (PDA), a mobile computing device, a smart phone, a telephone, a digital telephone, a cellular telephone, user equipment, eBook readers, a handset, a one-way pager, a two-way pager, a messaging device, a computer, a personal computer (PC), a desktop computer, a laptop computer, a notebook computer, a netbook computer, a handheld computer, a tablet computer, a server, a server array or server farm, a web server, a network server, an Internet server, a work station, a mini-computer, a main frame computer, a supercomputer, a network appliance, a web appliance, a distributed computing system, multiprocessor systems, processor-based systems, consumer electronics, programmable consumer electronics, game devices, display, television, digital television, set top box, wireless access point, base station, node B, subscriber station, mobile subscriber center, radio network controller, router, hub, gateway, bridge, switch, machine, or combination thereof. Accordingly, functions and/or specific configurations of device 1000 described herein, may be included or omitted in various embodiments of device 1000, as suitably desired. Embodiments of device 1000 may be implemented using single input single output (SISO) architectures. However, certain implementations may include multiple antennas (e.g., antennas 1018- ) for transmission and/or reception using adaptive antenna techniques for beamforming or spatial division multiple access (SDMA) and/or using MIMO communication techniques.

The components and features of device 1000 may be implemented using any combination of discrete circuitry, application specific integrated circuits (ASICs), logic gates and/or single chip architectures. Further, the features of device 1000 may be implemented using

microcontrollers, programmable logic arrays and/or microprocessors or any combination of the foregoing where suitably appropriate. It is noted that hardware, firmware and/or software elements may be collectively or individually referred to herein as "logic" or "circuit."

It should be appreciated that the exemplary device 1000 shown in the block diagram of FIG. 10 may represent one functionally descriptive example of many potential implementations. Accordingly, division, omission or inclusion of block functions depicted in the accompanying figures does not infer that the hardware components, circuits, software and/or elements for implementing these functions would be necessarily be divided, omitted, or included in embodiments.

FIG. 11 illustrates an embodiment of a broadband wireless access system 1100. As shown in FIG. 11, broadband wireless access system 1100 may be an internet protocol (IP) type network comprising an internet 1110 type network or the like that is capable of supporting mobile wireless access and/or fixed wireless access to internet 1110. In one or more

embodiments, broadband wireless access system 1100 may comprise any type of orthogonal frequency division multiple access (OFDMA)-based or single-carrier frequency division multiple access (SC-FDMA)-based wireless network, such as a system compliant with one or more of the 3GPP LTE Specifications and/or IEEE 802.16 Standards, and the scope of the claimed subject matter is not limited in these respects.

In the exemplary broadband wireless access system 1100, radio access networks (RANs) 1112 and 1118 are capable of coupling with evolved node Bs or base stations (eNBs) 1114 and 1120, respectively, to provide wireless communication between one or more fixed devices 1116 and internet 1110 and/or between or one or more mobile devices 1122 and Internet 1110. One example of a fixed device 1116 and a mobile device 1122 is device 1000 of FIG. 10, with the fixed device 1116 comprising a stationary version of device 1000 and the mobile device 1122 comprising a mobile version of device 1000. RANs 1112 and 1118 may implement profiles that are capable of defining the mapping of network functions to one or more physical entities on broadband wireless access system 1100. eNBs 1114 and 1120 may comprise radio equipment to provide RF communication with fixed device 1116 and/or mobile device 1122, such as described with reference to device 1000, and may comprise, for example, the PHY and MAC layer equipment in compliance with a 3GPP LTE Specification or an IEEE 802.16 Standard. Base stations or eNBs 1114 and 1120 may further comprise an IP backplane to couple to Internet 1110 via RANs 1112 and 1118, respectively, although the scope of the claimed subject matter is not limited in these respects.

Broadband wireless access system 1100 may further comprise a visited core network (CN) 1124 and/or a home CN 1126, each of which may be capable of providing one or more network functions including but not limited to proxy and/or relay type functions, for example

authentication, authorization and accounting (AAA) functions, dynamic host configuration protocol (DHCP) functions, or domain name service controls or the like, domain gateways such as public switched telephone network (PSTN) gateways or voice over internet protocol (VoIP) gateways, and/or internet protocol (IP) type server functions, or the like. However, these are merely example of the types of functions that are capable of being provided by visited CN 1124 and/or home CN 1126, and the scope of the claimed subject matter is not limited in these respects. Visited CN 1124 may be referred to as a visited CN in the case where visited CN 1124 is not part of the regular service provider of fixed device 1116 or mobile device 1122, for example where fixed device 1116 or mobile device 1122 is roaming away from its respective home CN 1126, or where broadband wireless access system 1100 is part of the regular service provider of fixed device 1116 or mobile device 1122 but where broadband wireless access system 1100 may be in another location or state that is not the main or home location of fixed device 1116 or mobile device 1122. The embodiments are not limited in this context.

Fixed device 1116 may be located anywhere within range of one or both of base stations or eNBs 1114 and 1120, such as in or near a home or business to provide home or business customer broadband access to Internet 1110 via base stations or eNBs 1114 and 1120 and RANs 1112 and 1118, respectively, and home CN 1126. It is worthy of note that although fixed device 1116 is generally disposed in a stationary location, it may be moved to different locations as needed. Mobile device 1122 may be utilized at one or more locations if mobile device 1122 is within range of one or both of base stations or eNBs 1114 and 1120, for example. In accordance with one or more embodiments, operation support system (OSS) 1128 may be part of broadband wireless access system 1100 to provide management functions for broadband wireless access system 1100 and to provide interfaces between functional entities of broadband wireless access system 1100. Broadband wireless access system 1100 of FIG. 11 is merely one type of wireless network showing a certain number of the components of broadband wireless access system 1100, and the scope of the claimed subject matter is not limited in these respects. Various embodiments may be implemented using hardware elements, software elements, or a combination of both. Examples of hardware elements may include processors,

microprocessors, circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, and so forth), integrated circuits, application specific integrated circuits (ASIC), programmable logic devices (PLD), digital signal processors (DSP), field programmable gate array (FPGA), logic gates, registers, semiconductor device, chips, microchips, chip sets, and so forth. Examples of software may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application program interfaces (API), instruction sets, computing code, computer code, code segments, computer code segments, words, values, symbols, or any combination thereof. Determining whether an embodiment is implemented using hardware elements and/or software elements may vary in accordance with any number of factors, such as desired computational rate, power levels, heat tolerances, processing cycle budget, input data rates, output data rates, memory resources, data bus speeds and other design or performance constraints.

One or more aspects of at least one embodiment may be implemented by representative instructions stored on a machine-readable medium which represents various logic within the processor, which when read by a machine causes the machine to fabricate logic to perform the techniques described herein. Such representations, known as "IP cores" may be stored on a tangible, machine readable medium and supplied to various customers or manufacturing facilities to load into the fabrication machines that actually make the logic or processor. Some embodiments may be implemented, for example, using a machine -readable medium or article which may store an instruction or a set of instructions that, if executed by a machine, may cause the machine to perform a method and/or operations in accordance with the embodiments. Such a machine may include, for example, any suitable processing platform, computing platform, computing device, processing device, computing system, processing system, computer, processor, or the like, and may be implemented using any suitable combination of hardware and/or software. The machine-readable medium or article may include, for example, any suitable type of memory unit, memory device, memory article, memory medium, storage device, storage article, storage medium and/or storage unit, for example, memory, removable or nonremovable media, erasable or non-erasable media, writeable or re-writeable media, digital or analog media, hard disk, floppy disk, Compact Disk Read Only Memory (CD-ROM), Compact Disk Recordable (CD-R), Compact Disk Rewriteable (CD-RW), optical disk, magnetic media, magneto-optical media, removable memory cards or disks, various types of Digital Versatile Disk (DVD), a tape, a cassette, or the like. The instructions may include any suitable type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, encrypted code, and the like, implemented using any suitable high-level, low- level, object-oriented, visual, compiled and/or interpreted programming language.

The following examples pertain to further embodiments:

Example 1 is an apparatus comprising a memory and logic, at least a portion of the logic implemented in circuitry coupled to the memory, the logic to encode an information block based on a first parity-check matrix of a low density parity-check (LDPC) code to obtain a first codeword block, select a portion of the first codeword block for use in a first transmission, process feedback information related to the first transmission, encode the information block based on a second parity-check matrix of the LDPC code to obtain a second codeword block; and select a portion of the second codeword block for use in a second transmission.

Example 2 is an extension of Example 1 or any other example disclosed herein, the first parity-check matrix determined based on a first redundancy version indicator associated with the first transmission.

Example 3 is an extension of Example 2 or any other example disclosed herein, the logic further comprising transmission logic to transmit the first redundancy version indicator in the first transmission.

Example 4 is an extension of Example 3 or any other example disclosed herein, the transmission logic to transmit the first redundancy version indicator as part of control information in the first transmission.

Example 5 is an extension of Example 2 or any other example disclosed herein, the second parity-check matrix determined based on a second redundancy version indicator associated with the second transmission.

Example 6 is an extension of Example 5 or any other example disclosed herein, the logic further comprising transmission logic to transmit the second redundancy version indicator in the second transmission.

Example 7 is an extension of Example 6 or any other example disclosed herein, the transmission logic to transmit the second redundancy version indicator as part of control information in the second transmission.

Example 8 is an extension of Example 1 or any other example disclosed herein, the first parity-check matrix distinct from the second parity-check matrix.

Example 9 is an extension of Example 1 or any other example disclosed herein, the logic to select the portion of the second codeword block based on the feedback information. Example 10 is an extension of Example 9 or any other example disclosed herein, the feedback information to indicate whether a remote device can soft combine the selected portion of the first codeword block and the selected portion of the second codeword block.

Example 11 is an extension of Example 9 or any other example disclosed herein, the feedback information to indicate a failed decoding of the first codeword block.

Example 12 is an extension of Example 1 or any other example disclosed herein, the selected portion of the first codeword block self-decodable.

Example 13 is an extension of Example 1 or any other example disclosed herein, the selected portion of the second codeword block self-decodable.

Example 14 is a mobile device comprising an apparatus according to any of Examples 1 to

13 or any other example disclosed herein and at least one radio frequency (RF) transceiver.

Example 15 is a base station comprising an apparatus according to any of Examples 1 to 13 or any other example disclosed herein and at least one radio frequency (RF) transceiver.

Example 16 is a wireless communication method comprising encoding an information block based on a first parity-check matrix of a low density parity-check (LDPC) code to obtain a first codeword block, selecting a portion of the first codeword block for use in a first transmission, processing feedback information related to the first transmission, encoding the information block based on a second parity-check matrix of the LDPC code to obtain a second codeword block, and selecting a portion of the second codeword block for use in a second transmission.

Example 17 is an extension of Example 16 or any other example disclosed herein, comprising determining the first parity-check matrix based on a first redundancy version indicator associated with the first transmission.

Example 18 is an extension of Example 17 or any other example disclosed herein, comprising including the first redundancy version indicator in the first transmission.

Example 19 is an extension of Example 18 or any other example disclosed herein, comprising including the first redundancy version indicator as part of control information in the first transmission.

Example 20 is an extension of Example 17 or any other example disclosed herein, comprising determining the second parity-check matrix based on a second redundancy version indicator associated with the second transmission.

Example 21 is an extension of Example 20 or any other example disclosed herein, comprising including the second redundancy version indicator in the second transmission. Example 22 is an extension of Example 21 or any other example disclosed herein, comprising including the second redundancy version indicator as part of control information in the second transmission.

Example 23 is an extension of Example 16 or any other example disclosed herein, the first parity-check matrix distinct from the second parity-check matrix.

Example 24 is an extension of Example 16 or any other example disclosed herein, comprising selecting the portion of the second codeword block based on the feedback information.

Example 25 is an extension of Example 24 or any other example disclosed herein, the feedback information to indicate whether a remote device can soft combine the selected portion of the first codeword block and the selected portion of the second codeword block.

Example 26 is an extension of Example 24 or any other example disclosed herein, the feedback information to indicate a failed decoding of the first codeword block.

Example 27 is an extension of Example 16 or any other example disclosed herein, the selected portion of the first codeword block self-decodable.

Example 28 is an extension of Example 16 or any other example disclosed herein, the selected portion of the second codeword block self-decodable.

Example 29 is at least one non-transitory computer-readable storage medium comprising a set of instructions that, in response to being executed on a computing device, cause the computing device to perform a wireless communication method according to any of Examples 16 to 28 or any other example disclosed herein.

Example 30 is an apparatus, comprising means for performing a wireless communication method according to any of Examples 16 to 28 or any other example disclosed herein.

Example 31 is at least one computer-readable storage medium comprising a set of wireless communication instructions that, in response to being executed on a computing device, cause the computing device to encode an information block using a first parity-check matrix based on a low density parity check (LDPC) code to obtain a first codeword, select a portion of the first codeword for use in a first transmission, process feedback information related to the first transmission, encode the information block using a second distinct parity-check matrix based on the LDPC code to obtain a second codeword, and select a portion of the second codeword block for use in a second transmission based on the feedback information.

Example 32 is an extension of Example 31 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the first parity-check matrix based on a first redundancy version indicator associated with the first transmission. Example 33 is an extension of Example 32 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the first redundancy version indicator in the first transmission.

Example 34 is an extension of Example 33 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the first redundancy version indicator as part of control information in the first transmission.

Example 35 is an extension of Example 32 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the second distinct parity-check matrix based on a second redundancy version indicator associated with the second transmission.

Example 36 is an extension of Example 35 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the second redundancy version indicator in the second transmission.

Example 37 is an extension of Example 36 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the second redundancy version indicator as part of control information in the second transmission.

Example 38 is an extension of Example 31 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to select the portion of the second codeword block based on the feedback information.

Example 39 is an apparatus, comprising a memory and logic, at least a portion of the logic implemented in circuitry coupled to the memory, the logic to process a portion of a first codeword, the first codeword based on an information block, determine a first set of log- likelihood ratios based on the portion of the first codeword, determine a first parity-check matrix of a low density parity-check (LDPC) code associated with the first codeword, retrieve from the memory a second set of log-likelihood ratios based on a portion of a second codeword, the second codeword based on the information block, determine a second parity-check matrix of the LDPC code associated with the second codeword, soft-combine the first and second log- likelihood ratios based on the determined first and second parity-check matrices, and decode the soft-combined first and second log-likelihood ratios based on the determined first and second parity-check matrices to obtain an estimation of the information block. Example 40 is an extension of Example 39 or any other example disclosed herein, the first parity-check matrix determined by a first redundancy version indicator.

Example 41 is an extension of Example 40 or any other example disclosed herein, the logic to process the first redundancy version indicator.

Example 42 is an extension of Example 41 or any other example disclosed herein, the logic to process the first redundancy version indicator as part of control information associated with the first codeword.

Example 43 is an extension of Example 40 or any other example disclosed herein, the second parity-check matrix determined by a second redundancy version indicator.

Example 44 is an extension of Example 43, the logic to process the second redundancy version indicator.

Example 45 is an extension of Example 44 or any other example disclosed herein, the logic to process the second redundancy version indicator as part of control information associated with the second codeword.

Example 46 is an extension of Example 39 or any other example disclosed herein, the first parity-check matrix distinct from the second parity-check matrix.

Example 47 is a mobile device, comprising an apparatus according to any of Examples 39 to 46 or any other example disclosed herein and at least one radio frequency (RF) transceiver.

Example 48 is a base station, comprising an apparatus according to any of Examples 39 to 46 or any other example disclosed herein and at least one radio frequency (RF) transceiver.

Example 49 is a wireless communication method, comprising processing a portion of a first codeword, the first codeword based on an information block, determining a first set of log- likelihood ratios based on the portion of the first codeword, determining a first parity-check matrix of a low density parity-check (LDPC) code associated with the first codeword, retrieving from a memory a second set of log-likelihood ratios based on a portion of a second codeword, the second codeword based on the information block, determining a second parity-check matrix of the LDPC code associated with the second codeword, soft-combining the first and second log- likelihood ratios based on the determined first and second parity-check matrices, and decoding the soft-combined first and second log-likelihood ratios based on the determined first and second parity-check matrices to obtain an estimation of the information block.

Example 50 is an extension of Example 49 or any other example disclosed herein, comprising determining the first parity-check matrix based on a first redundancy version indicator.

Example 51 is an extension of Example 50 or any other example disclosed herein, comprising processing the first redundancy version indicator. Example 52 is an extension of Example 51 or any other example disclosed herein, comprising processing the first redundancy version indicator as part of control information associated with the first codeword.

Example 53 is an extension of Example 50 or any other example disclosed herein, comprising determining the second parity-check matrix based on a second redundancy version indicator.

Example 54 is an extension of Example 53 or any other example disclosed herein, comprising processing the second redundancy version indicator.

Example 55 is an extension of Example 54 or any other example disclosed herein, comprising processing the second redundancy version indicator as part of control information associated with the second codeword.

Example 56 is an extension of Example 49 or any other example disclosed herein, the first parity-check matrix distinct from the second parity-check matrix.

Example 57 is at least one non-transitory computer-readable storage medium comprising a set of instructions that, in response to being executed on a computing device, cause the computing device to perform a wireless communication method according to any of Examples 49 to 56 or any other example disclosed herein.

Example 58 is an apparatus, comprising means for performing a wireless communication method according to any of Examples 49 to 56 or any other example disclosed herein.

Example 59 is at least one non-transitory computer-readable storage medium comprising a set of wireless communication instructions that, in response to being executed on a computing device, cause the computing device to process a portion of a first codeword, the first codeword based on an information block, determine a first set of log-likelihood ratios based on the portion of the first codeword, determine a first parity-check matrix of a low density parity-check (LDPC) code associated with the first codeword, retrieve from a memory a second set of log-likelihood ratios based on a portion of a second codeword, the second codeword based on the information block, determine a second parity-check matrix of the LDPC associated with the second codeword, soft-combine the first and second log-likelihood ratios based on the determined first and second parity-check matrices, and decode the soft-combined first and second log-likelihood ratios based on the determined first and second parity-check matrices to obtain an estimation of the information block.

Example 60 is an extension of Example 59 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the first parity-check matrix based on a first redundancy version indicator. Example 61 is an extension of Example 60 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to process the first redundancy version indicator.

Example 62 is an extension of Example 61 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to process the first redundancy version indicator as part of control information associated with the first codeword.

Example 63 is an extension of Example 60 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the second parity-check matrix based on a second redundancy version indicator.

Example 64 is an extension of Example 63 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to process the second redundancy version indicator.

Example 65 is an extension of Example 64 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to process the second redundancy version indicator as part of control information associated with the second codeword.

Example 66 is an apparatus, comprising a memory and logic, at least a portion of the logic implemented in circuitry coupled to the memory, the logic to modify an information block based on a first permutation to obtain a first modified information block, encode the first modified information block based on a parity-check matrix of a low density parity-check (LDPC) code to obtain a first codeword block, select a portion of the first codeword block for use in a first transmission, process feedback information related to the first transmission, modify the information block based on a second permutation to obtain a second modified information block, encode the second modified information block based on the parity-check matrix to obtain a second codeword block, and select a portion of the second codeword block in a second transmission.

Example 67 is an extension of Example 66 or any other example disclosed herein, the first permutation determined based on a first redundancy version indicator associated with the first transmission.

Example 68 is an extension of Example 67 or any other example disclosed herein, the logic further comprising transmission logic to transmit the first redundancy version indicator in the first transmission. Example 69 is an extension of Example 68 or any other example disclosed herein, the transmission logic to transmit the first redundancy version indicator as part of control information in the first transmission.

Example 70 is an extension of Example 67 or any other example disclosed herein, the second permutation determined based on a second redundancy version indicator associated with the second transmission.

Example 71 is an extension of Example 70 or any other example disclosed herein, the logic further comprising transmission to transmit the second redundancy version indicator in the second transmission.

Example 72 is an extension of Example 71 or any other example disclosed herein, the transmission logic to transmit the second redundancy version indicator as part of control information in the second transmission.

Example 73 is an extension of Example 66 or any other example disclosed herein, the first and second permutations to comprise vector permutations based on an expansion factor of the parity-check matrix.

Example 74 is an extension of Example 66 or any other example disclosed herein, the logic to select the portion of the second codeword block based on the feedback information.

Example 75 is an extension of Example 74 or any other example disclosed herein, the feedback information to indicate whether a remote device can soft combine the selected portion of the first codeword block and the selected portion of the second codeword block.

Example 76 is an extension of Example 66 or any other example disclosed herein, the selected portion of the first codeword block self-decodable.

Example 77 is an extension of Example 66 or any other example disclosed herein, the selected portion of the second codeword block self-decodable.

Example 78 is a mobile device, comprising an apparatus according to any of Examples 66 to 77 or any other example disclosed herein and at least one radio frequency (RF) transceiver.

Example 79 is a base station, comprising an apparatus according to any of Examples 66 to 77 or any other example disclosed herein and at least one radio frequency (RF) transceiver.

Example 80 is a wireless communication method, comprising modifying an information block based on a first permutation to obtain a first modified information block, encoding the first modified information block based on a parity-check matrix of a low density parity-check (LDPC) code to obtain a first codeword block, selecting a portion of the first codeword block for use in a first transmission, processing feedback information related to the first transmission, modifying the information block based on a second permutation to obtain a second modified information block, encoding the second modified information block based on the parity-check matrix to obtain a second codeword block, and selecting a selected portion of the second codeword block for use in a second transmission.

Example 81 is an extension of Example 80 or any other example disclosed herein, comprising determining the first permutation based on a first redundancy version indicator associated with the first transmission.

Example 82 is an extension of Example 81 or any other example disclosed herein, comprising including the first redundancy version indicator in the first transmission.

Example 83 is an extension of Example 82 or any other example disclosed herein, comprising including the first redundancy version indicator as part of control information in the first transmission.

Example 84 is an extension of Example 81 or any other example disclosed herein, comprising determining the second permutation based on a second redundancy version indicator associated with the second transmission.

Example 85 is an extension of Example 84 or any other example disclosed herein, comprising including the second redundancy version indicator in the second transmission.

Example 86 is an extension of Example 85 or any other example disclosed herein, comprising including the second redundancy version indicator as part of control information in the second transmission.

Example 87 is an extension of Example 80 or any other example disclosed herein, the first and second permutations to comprise vector permutations based on an expansion factor of the parity-check matrix.

Example 88 is an extension of Example 80 or any other example disclosed herein, comprising selecting the portion of the second codeword block based on the feedback information.

Example 89 is an extension of Example 88 or any other example disclosed herein, the feedback information to indicate whether a remote device can soft combine the selected portion of the first codeword block and the selected portion of the second codeword block.

Example 90 is an extension of Example 80 or any other example disclosed herein, the selected portion of the first codeword block self-decodable.

Example 91 is an extension of Example 80 or any other example disclosed herein, the selected portion of the second codeword block self-decodable.

Example 92 is at least one computer-readable storage medium comprising a set of instructions that, in response to being executed on a computing device, cause the computing device to perform a wireless communication method according to any of Examples 80 to 91 or any other example disclosed herein. Example 93 is an apparatus, comprising means for performing a wireless communication method according to any of Examples 80 to 91 or any other example disclosed herein.

Example 94 is at least one computer-readable storage medium comprising a set of wireless communication instructions that, in response to being executed on a computing device, cause the computing device to modify an information block based on a first permutation to obtain a first modified information block, encode the first modified information block using a parity-check matrix based on a low density parity-check (LDPC) code to generate a first codeword, select a portion of the first codeword for use in a first transmission, process feedback information related to the first transmission, modify the information block based on a second permutation to obtain a second modified information block, encode the second modified information block based on the parity-check matrix to obtain a second codeword, and select a portion of the second codeword for use in a second transmission.

Example 95 is an extension of Example 94 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the first permutation based on a first redundancy version indicator associated with the first transmission.

Example 96 is an extension of Example 95 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the first redundancy version indicator in the first transmission.

Example 97 is an extension of Example 96 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the first redundancy version indicator as part of control information in the first transmission.

Example 98 is an extension of Example 95 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the second permutation based on a second redundancy version indicator associated with the second transmission.

Example 99 is an extension of Example 98 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the second redundancy version indicator in the second transmission.

Example 100 is an extension of Example 99 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to include the second redundancy version indicator as part of control information in the second transmission.

Example 101 is an extension of Example 94 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to select the portion of the second codeword block based on the received feedback information.

Example 102 is an apparatus, comprising a memory and logic, at least a portion of the logic implemented in circuitry coupled to the memory, the logic to process a portion of a first codeword block, the first codeword block based on an information block, determine a first set of log-likelihood ratios based on the portion of the first codeword block, determine a first permutation of the information block based on the first codeword block, retrieve from the memory a second set of log-likelihood ratios based on a portion of a second codeword block, the second codeword block based on the information block, determine a second permutation of the information block based on the second codeword block, soft-combine the first and second log- likelihood ratios based on the determined first and second permutations, and decode the soft- combined first and second log-likelihood ratios based on a parity-check matrix and the determined first and second permutations to obtain an estimation of the information block.

Example 103 is an extension of Example 102 or any other example disclosed herein, the logic to determine the first permutation based on a first redundancy version indicator.

Example 104 is an extension of Example 103 or any other example disclosed herein, the logic to process the first redundancy version indicator.

Example 105 is an extension of Example 104 or any other example disclosed herein, the logic to process the first redundancy version indicator as part of control information associated with the first codeword block.

Example 106 is an extension of Example 103 or any other example disclosed herein, the logic to determine the second permutation based on a second redundancy version indicator.

Example 107 is an extension of Example 106 or any other example disclosed herein, the logic to process the second redundancy version indicator.

Example 108 is an extension of Example 107 or any other example disclosed herein, the logic to process the second redundancy version indicator as part of control information associated with the second codeword block.

Example 109 is an extension of Example 102 or any other example disclosed herein, the first and second permutations to comprise vector permutations based on an expansion factor of the parity-check matrix. Example 110 is a mobile device, comprising an apparatus according to any of Examples 102 to 109 or any other example disclosed herein and at least one radio frequency (RF) transceiver.

Example 111 is a base station, comprising an apparatus according to any of Examples 102 to 109 or any other example disclosed herein and at least one radio frequency (RF) transceiver.

Example 112 is a wireless communication method, comprising processing a portion of a first codeword, the first codeword based on an information block, determining a first set of log- likelihood ratios based on the portion of the first codeword, determining a first permutation of the information block based on the first codeword, retrieving from the memory a second set of log-likelihood ratios based on a portion of a second codeword, the second codeword based on the information block, determining a second permutation of the information block based on the second codeword, soft-combining the first and second log-likelihood ratios based on the determined first and second permutations, and decoding the soft-combined first and second log- likelihood ratios based on a parity-check matrix and the determined first and second

permutations to obtain an estimation of the information block.

Example 113 is an extension of Example 112 or any other example disclosed herein, comprising determining the first permutation based on a first redundancy version indicator.

Example 114 is an extension of Example 113 or any other example disclosed herein, comprising processing the first redundancy version indicator.

Example 115 is an extension of Example 114 or any other example disclosed herein, comprising processing the first redundancy version indicator as part of control information associated with the first codeword.

Example 116 is an extension of Example 113 or any other example disclosed herein, comprising determining the second permutation based on a second redundancy version indicator.

Example 117 is an extension of Example 114 or any other example disclosed herein, comprising processing the second redundancy version indicator.

Example 118 is an extension of Example 117 or any other example disclosed herein, comprising processing the second redundancy version indicator as part of control information associated with the second codeword.

Example 119 is an extension of Example 112 or any other example disclosed herein, the first and second permutations to comprise vector permutations based on an expansion factor of the parity-check matrix.

Example 120 is at least one non-transitory computer-readable storage medium comprising a set of instructions that, in response to being executed on a computing device, cause the computing device to perform a wireless communication method according to any of Examples 112 to 119 or any other example disclosed herein.

Example 121 is an apparatus, comprising means for performing a wireless communication method according to any of Examples 112 to 119 or any other example disclosed herein.

Example 122 is at least one non-transitory computer-readable storage medium comprising a set of wireless communication instructions that, in response to being executed on a computing device, cause the computing device to process a portion of a first codeword, the first codeword based on an information block, determine a first set of log-likelihood ratios based on the portion of the first codeword, determine a first permutation of the information block based on the first codeword, retrieve from the memory a second set of log-likelihood ratios based on a portion of a second codeword, the second codeword based on the information block, determine a second permutation of the information block based on the second codeword, soft-combine the first and second log-likelihood ratios based on the determined first and second permutations, and decode the soft-combined first and second log-likelihood ratios based on a parity-check matrix and the determined first and second permutations to obtain an estimation of the information block.

Example 123 is an extension of Example 122 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the first permutation based on a first redundancy version indicator.

Example 124 is an extension of Example 123 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to process the first redundancy version indicator.

Example 125 is an extension of Example 124 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to process the first redundancy version indicator as part of control information associated with the first codeword.

Example 126 is an extension of Example 123 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to determine the second permutation based on a second redundancy version indicator.

Example 127 is an extension of Example 126 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to process the second redundancy version indicator. Example 128 is an extension of Example 127 or any other example disclosed herein, comprising wireless communication instructions that, in response to being executed on the computing device, cause the computing device to process the second redundancy version indicator as part of control information associated with the second codeword.

Numerous specific details have been set forth herein to provide a thorough understanding of the embodiments. It will be understood by those skilled in the art, however, that the embodiments may be practiced without these specific details. In other instances, well-known operations, components, and circuits have not been described in detail so as not to obscure the embodiments. It can be appreciated that the specific structural and functional details disclosed herein may be representative and do not necessarily limit the scope of the embodiments.

Some embodiments may be described using the expression "coupled" and "connected" along with their derivatives. These terms are not intended as synonyms for each other. For example, some embodiments may be described using the terms "connected" and/or "coupled" to indicate that two or more elements are in direct physical or electrical contact with each other. The term "coupled," however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other.

Unless specifically stated otherwise, it may be appreciated that terms such as "processing," "computing," "calculating," "determining," or the like, refer to the action and/or processes of a computer or computing system, or similar electronic computing device, that manipulates and/or transforms data represented as physical quantities (e.g., electronic) within the computing system' s registers and/or memories into other data similarly represented as physical quantities within the computing system's memories, registers or other such information storage, transmission or display devices. The embodiments are not limited in this context.

It should be noted that the methods described herein do not have to be executed in the order described, or in any particular order. Moreover, various activities described with respect to the methods identified herein can be executed in serial or parallel fashion.

Although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. It is to be understood that the above description has been made in an illustrative fashion, and not a restrictive one. Combinations of the above

embodiments, and other embodiments not specifically described herein will be apparent to those of skill in the art upon reviewing the above description. Thus, the scope of various embodiments includes any other applications in which the above compositions, structures, and methods are used. It is emphasized that the Abstract of the Disclosure is provided to comply with 37 C.F.R. § 1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate preferred embodiment. In the appended claims, the terms "including" and "in which" are used as the plain- English equivalents of the respective terms "comprising" and "wherein," respectively.

Moreover, the terms "first," "second," and "third," etc. are used merely as labels, and are not intended to impose numerical requirements on their objects.

Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.