TECHNICAL FIELD

The disclosed technology relates generally to communication systems, and more particularly, some embodiments relate to systems and methods for modulation and coding selection.

DESCRIPTION OF THE RELATED ART

Contemporary communication technologies provide enhanced multimedia services (e.g., voice, data, video, etc.) to end-users over various delivery platforms, including terrestrial wire-line, fiber and wireless communications and networking technologies, and satellite communications and networking technologies. The relatively recent proliferation of mobile communications has spurred growth in the demand for such enhanced multimedia services over mobile communications networks (both terrestrial and satellite based). As part of the continued evolution of such communications platforms and supporting technologies, the Digital Video Broadcasting (DVB) organization was formed (as an industry-led, global consortium of broadcasters, manufacturers, network operators, software developers, regulatory bodies and others) to advance the design of open interoperable standards for the global delivery of digital media and broadcast services.

The DVB-S2 standard is a digital satellite transmission system standard covering a variety of data and multimedia services delivered over satellite communications systems. The DVB-S2 standard also covers various technological features, such as a flexible input stream adapter (suitable for operation with single and multiple input streams of various formats), a robust Forward Error Correction (FEC) coding system based on Low-Density Parity Check (LDPC) codes concatenated with Bose Chaudhuri Hocquenghem (BCH) codes, a wide range of code rates (from 1/4 up to 9/10), four signal constellations (ranging in spectrum efficiency from 2 bit/s/Hz to 5 bit/s/Hz), and Adaptive Coding and Modulation (ACM) functionality (optimizing channel coding and modulation on a frame-by-frame basis).

The DVB-S2 standard on the forward link uses LDPC for FEC. The forward link uses ACM (Adaptive Coded Modulation) scheme proposed in DVB-S2 standard. ACM improves capacity on the forward link by transmitting the frames to the terminal using the modulation and coding method that matches the channel conditions. The modulation and coding, sometimes referred to as MODCOD, varies depending on the channel conditions such as clear sky, rain etc.

BRIEF SUMMARY OF EMBODIMENTS

According to various embodiments of the disclosed technology a demodulator of a communication receiver computes the SNR on received, which can be done based on header information. The SNR is generally independent of MODCODs. A software processor selects the target MODCOD based on the SNR and stored trajectory information. In various embodiments, the terminal requests the Gateway to send information using the target MODCOD and the target MODCOD can be sent to a Code Block Selector to drop data with a MODCOD above the target MODCOD at the terminal. A decoder can be provided to decode the filtered frames, monitor the number of iterations taken by the target MODCOD and maintain a weighted average over a configurable interval to determine a reported iteration for the target MODCOD. If the reported iteration of the target MODCOD is the same as or less than the predetermined reference iteration, this implies the frame is early terminated, and the real SNR is higher than the estimated. No adjustment is applied to the ACM trajectory information and the terminal continues to estimate the SNR and compute new target MODCODs for data received.

If the reported iteration of the target MODCOD is more than the reference iteration, this may be an indication that iteration borrowing happens on the target MODCOD. In this case the terminal can be configured to request a higher MODCOD for data transmission. In some embodiments, an SNR threshold value for each said available MODCOD is stored in memory and adjusted by further storing an SNR adjustment value for the selected MODCOD. In other embodiments, the SNR threshold value stored for the selected MODCOD is adjusted.

In some embodiments, to maintain hysteresis, the reported number of iterations must be greater than the number of reference iterations by a configurable number (e.g., 2), before the terminal adjusts ACM trajectory data. If the extra iteration gained on the target MODCOD is more than the configurable number, the terminal can be configured to shift its ACM trajectory information by a given amount. In some embodiments, this amount can be, for example, 0.05 dB. This is done by adding this amount to the estimated SNR when the new the target MODCOD is selected. The MODCOD selection process can be repeated with the new target MODCOD.

In various embodiments a communication apparatus can include: a demodulator; a MODCOD determination block comprising an input coupled to a demodulator and an output, wherein the MODCOD determination block is configured to determine a selected MODCOD for receiver operation using a SNR determined for received data; a memory associated with the MODCOD determination block to store trajectory data comprising available MODCODs and a threshold SNR for the available MODCODs; a decoder comprising an input coupled to an output of the demodulator; a memory associated with the decoder to store a reference number of decoder iterations used to decode data using the selected MODCOD and an actual number of decoder iterations used to decode data using the selected MODCOD; wherein the decoder is configured to adjust the threshold SNR for the selected MODCOD if the number of iterations used to decode the data using the first selected MODCOD is greater than the reference number of iterations. In various embodiments, a SNR estimation block having an input coupled to the demodulator and an output coupled to the MODCOD determination block can be included. The SNR estimation block may be configured to determine a signal-to-noise ratio (SNR) for the received data.

The communication apparatus may further include a code block selector comprising an input coupled to the demodulator and an output coupled to the decoder, where in the code block selector is configured to filter the received code blocks based on the selected MODCOD.

In various embodiments, determining the selected MODCOD may include determining a MODCOD that will operate under the determined SNR. The threshold SNR for each MODCOD may correspond to a threshold Frame Error Rate specified by a network over which the data is received.

In some applications, the memory associated with the MODCOD determination block may include an SNR adjustment amount, and adjusting a SNR threshold value for the selected MODCOD may include modifying an SNR adjustment amount in the table of two or more available MODCODs. In other applications, adjusting a SNR threshold value for the selected MODCOD comprises shifting the SNR threshold values of one or more available MODCODs by a determined amount. Determining the selected MODCOD may include determining a MODCOD that will operate under the determined SNR using one or more adjusted SNR threshold values for one or more available MODCODs.

In still further embodiments, a method for ACM communication, may include receiving data at a communications receiver; decoding the received data based on a selected MODCOD; monitoring a number of iterations used to decode the data using the selected MODCOD; comparing the number of iterations used to decode the data using the first selected MODCOD to a reference number of iterations; and adjusting a required SNR threshold value for the selected MODCOD where the number of iterations used to decode the data using the first selected MODCOD is greater than the reference number of iterations. The operation may further include determining a signal-to-noise ratio (SNR) for the received data and selecting the MODCOD based on the determined SNR. In some applications, selecting the MODCOD may include determining a MODCOD that will operate under the determined SNR.

In various embodiments, the process may further include maintaining a table of two or more available MODCODs and an SNR threshold value for said available MODCOD, wherein selecting the MODCOD comprises selecting a MODCOD that will operate under the determined SNR. In some applications, the threshold SNR for each MODCOD may correspond to a threshold Frame Error Rate specified by a network over which the data is received. Adjusting a SNR threshold value for the selected MODCOD may include modifying an SNR adjustment amount in the table of two or more available MODCODs. In other embodiments, adjusting a SNR threshold value for the selected MODCOD may include shifting the SNR threshold values in the table of two or more available MODCODs by a determined amount. Selecting the MODCOD may include determining a MODCOD that will operate under the determined SNR using one or more adjusted SNR threshold values for one or more available MODCODs.

The may further include storing a reference number of iterations without iteration borrowing or early termination for available MODCODs; and determining an average number of actual iterations required for decoding using the selected MODCOD; wherein comparing may include comparing the determined average number of actual iterations to the stored reference number of iterations.

In some embodiments, the process further includes storing an identification of two or more available MODCODs and an SNR threshold value for each said available MODCOD, and adjusting a SNR threshold value for the selected MODCOD includes further storing an SNR adjustment value for the selected MODCOD. In other embodiments, adjusting a SNR threshold value for the selected MODCOD comprises adjusting the value stored for the SNR threshold of the selected MODCOD.

Other features and aspects of the disclosed technology will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, which illustrate, by way of example, the features in accordance with embodiments of the disclosed technology. The summary is not intended to limit the scope of any inventions described herein, which are defined solely by the claims attached hereto.

