Methods and apparatuses for transmission of bursty transport data on one or more channels
Demand-based per channel power control and statistical multiplexing of transmit power optimize ACM systems for bursty data transmission, addressing inefficiencies by selecting the least spectrally efficient modulation and coding scheme based on demand, resulting in efficient power utilization across multiple channels.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- VIASAT INC
- Filing Date
- 2024-12-23
- Publication Date
- 2026-07-02
AI Technical Summary
Conventional adaptive coding and modulation (ACM) systems face challenges in dynamically changing scenarios, particularly in managing transmit power for bursty data transmission across multiple channels, leading to inefficiencies and potential waste of resources.
Implementing demand-based per channel power control and statistical multiplexing of transmit power across channels, where the least spectrally efficient modulation and coding scheme is selected for each time interval based on demand, with aggregate power control procedures to manage total transmit power usage.
This approach optimizes power usage by minimizing dummy data transmission and ensuring efficient utilization of shared transmit power across multiple channels, thereby enhancing throughput and reducing resource wastage.
Smart Images

Figure US2024061802_02072026_PF_FP_ABST
Abstract
Description
METHODS AND APPARATUSES FOR TRANSMISSION OF BURSTY TRANSPORT DATA ON ONE OR MORE CHANNELSHELD OF THE INVENTION
[0001] Disclosed methods and apparatuses provide for demand-based transmit power control on individual channels and, with respect to exercising such control on a plurality of channels sharing power for the transmission of bursty data, statistical multiplexing of that power across the channels as a function of varying demand.BACKGROUND
[0002] Adaptive coding and modulation (ACM) is a technique used in wireless communication systems to optimize data transmission rates under varying channel conditions. In conventional ACM systems, the transmitter adjusts its coding rate and modulation scheme (modcode) based on feedback from the receiver about the current channel quality from the receiver. This allows the system to maintain reliable communication while maximizing throughput as channel conditions fluctuate.
[0003] The coding rate in ACM refers to the amount of redundancy added to the transmitted data for error correction. Lower coding rates add more redundancy, improving error resilience at the cost of reduced data throughput. Modulation schemes determine how information is encoded onto the carrier signal, with higher-order modulations (e.g., 64-QAM) allowing for higher data rates but requiring better signal quality compared to lower-order modulations (e.g., QPSK).
[0004] Conventional ACM implementations typically use a set of predefined modcodes, each optimized for a specific range of channel quality. The receiver estimates received signal quality or some related metric, for example, and feeds this information back to the transmitter. The transmitter then selects the modcode that offers the highest data rate while meeting the required error performance for the current channel conditions.
[0005] While conventional ACM works well in many scenarios, it may be problematic in other scenarios. For example, conventional ACM has particular disadvantages in dynamically changing scenarios.SUMMARY
[0006] An example communications system transmits bursty transport data on a channel, by matching channel transmit power to demand. Matching involves choosing the least spectrally efficient modulation and coding scheme (modcode) for each time interval that allows for transmission of the corresponding amount of data in the interval. Replication of this per channel power control procedure across a plurality of channels provides statistical multiplexing of anavailable total transmit power shared for transmitting on the channels. At least one disclosed embodiment further uses aggregate power control procedures that manage utilization of the available total transmit power, by one or both of limiting the modcodes available for selection or limiting how many of the channels are allowed to be active in respective time intervals. The communications system comprises a satellite communications system, for example, with the per channel power control and aggregate power control procedures applied per satellite.
[0007] An example embodiment comprises a method of transmitting bursty transport data on a channel. The method includes: identifying an amount of transport data to be transmitted on the channel in a corresponding time interval; selecting a modcode from a set of available modcodes having respective spectral efficiencies, based on selecting a minimum efficiency one of the modulation codes from the available set which permit the identified amount of transport data to be transmitted on the channel in the corresponding timing interval using a fixed symbol rate; determining a transmit power to use for the transmission, in dependence on a minimum required signal-to-interference-and-noise ratio (SINR) required for the selected modcode; and applying the selected modcode and the determined transmit power for the transmission.
[0008] A related example embodiment comprises a communications system configured for transmitting bursty transport data on a channel. The communications system includes transmit circuitry configured for transmitting on the channel and further includes processing circuitry that implements a per channel power control procedure for transmitting on the channel. The procedure includes the following steps or operations: identify an amount of transport data to be transmitted on the channel in a corresponding time interval; select a modcode from a set of available modcodes having respective spectral efficiencies, based on selecting a minimum efficiency one of the modulation codes from the available set which permit the identified amount of transport data to be transmitted on the channel in the corresponding timing interval using a fixed symbol rate; determine a transmit power to use for the transmission, in dependence on a minimum required SINR required for the selected modcode; and apply the selected modcode and the determined transmit power for the transmission.
[0009] A further example embodiment comprises a method of operation by a communications system that includes a plurality of transmitters for transmitting on respective channels, where the transmitters share an available total transmit power. For example, the transmitters are forward link transmitters onboard a satellite, sharing an available total transmit power for transmitting bursty transport data on respective channels realized as forward user beams. The method includes multiplexing the available total transmit power across the plurality channels by applying the per channel power control procedure to each channel. Thus, the method includes selecting, for each channel and with respect to each time interval in a succession of timeintervals, a modcode that minimizes the transmit power required for conveying an amount of transport data to be transmitted during the time interval; and setting the channel powers for each time interval according to the selected modcodes. In at least one such embodiment, the method of operation further comprises the communications system controlling which channels or how many channels are active in respective ones of the time intervals, to limit the aggregate transmit power used in the respective time intervals. Additionally or alternatively, the method includes controlling or limiting the aggregate transmit power by restricting which modcodes are available for selection, such as by limiting the maximum modcode allowable for selection.
[0010] Of course, the present invention is not limited to the above features and advantages. Indeed, those skilled in the art will recognize additional features and advantages upon reading the following detailed description, and upon viewing the accompanying drawings.BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1 is a block diagram of a communications system, according to one or more example embodiments.
[0012] Figure 2 is a diagram of an example set of defined modulation and coding schemes (modcodes).
[0013] Figure 3 is a block diagram of a calculator for calculating transmit power on a channel, according to one or more example embodiments.
[0014] Figure 4 is a block diagram of example details for a communications system.
[0015] Figure 5 is a block diagram of a satellite communications system, according to one or more example embodiments.
[0016] Figure 6 is a logic flow diagram of a method of operation for aggregate power control across a plurality of channels, according to one or more example embodiments.
[0017] Figure 7 is a logic flow diagram of a method of operation for aggregate power control across a plurality of channels, according to another example embodiment.
[0018] Figure 8 is a logic flow diagram of a method of implementing a per channel power control procedure, according to one or more example embodiments.
[0019] Figures 9 and 10 are diagrams comparing Medium Access Control (MAC) frame generation in the context of conventional adaptive coding and modulation, versus demand-based, minimum-efficiency coding and modulation used in an example per channel power control procedure.
[0020] Figure 11 is a block diagram of a scheduler and modulator implementing a per channel power control procedure that provides demand-based power control, according to one or more example embodiments.
[0021] Figure 12 is a block diagram of a communications-system circuitry configured for operation with demand-based per channel power control and aggregate power control for a plurality of channels, according to one or more example embodiments.
[0022] Figure 13 is a block diagram illustrating aggregate power control via modcode restrictions, according to one or more example embodiments.
[0023] Figure 14 is a block diagram of a scheduler that operates with data queues corresponding to different users, with Figure 15 being a diagram of a corresponding example user beam coverage area containing the different users.
[0024] Figure 16 illustrates a communications system in the form of a satellite communications system that is configured for demand-based per channel power control and complementary aggregate power control, according to one or more example embodiments.
[0025] Figure 17 illustrates a communications system in the form of a satellite communications system that is configured for demand-based per channel power control and complementary aggregate power control, according to one or more example embodiments.DETAILED DESCRIPTION
[0026] Figure 1 illustrates a communications transceiver 10 used to transmit transport data 12 on a channel 14, for reception at one or more remote communications transceivers 16. Each remote communications transceiver 16 includes receiver (RX) circuitry 18 and transmitter (TX) circuitry 20.
[0027] The communications transceiver 10 in one or more embodiments is configured for operation in a communications system 22 that includes one or more other system entities 24. For example, the other system entities 24 interface with one or more external networks 26, such as the Internet. The communications system 22 in such embodiments serves as an access network for the remote communication transceivers 16, coupling them with one or more types of communication services available via the external networks 26.
[0028] In one or more embodiments, the communications system 22 is configured to apply a per channel power control procedure to each of one or more channels 14 on which it transmits, where the per channel power control procedure is also referred to as “demand-based power control.” Applying the per channel power control procedure to an individual channel 14 improves efficiency by matching transmit power used for the channel 14 to the varying “demand” represented by the bursty data. Independently applying the per channel power control procedure to each one among a plurality of channels 14 that “share” an overall available transmit power advantageously provides for statistical multiplexing of that shared power across the channels 14, as a function of the varying per channel demands inherent in bursty data.
[0029] Channels 14 that share a transmit power resource may be understood as a channel set or channel group. In an example embodiment, the communications system 22 transmits one or more channel sets, e.g., the communications transceiver 10 transmits one or more channel sets, or there may be a respective communications transceiver 10 for each such channel set. Further, in at least one embodiment, the communications system 22 is configured to apply one or more aggregate power control procedures to each such channel set or channel group. For example, aggregate power control maintains utilization of the overall transmit power available for the channel set at a certain percentage, or otherwise prevents the aggregate required transmit power from exceeding the total available power.
[0030] In the context of bursty data, references to the transport data 12 should be understood as referring to given data at given times. For example, the transport data 12 comprises scheduled transmissions of transport data contained in an incoming transport data stream 28. Processing circuitry 32 included in the communications system 22 performs scheduling of data from the data stream 28 for transmission via the communications transceiver 10, with the scheduled data targeting one or more of the remote communications transceivers 16. The processing circuitry 32 comprises fixed or programmatically configured circuitry that is configured for processing the data stream 28, such as scheduling particular data or portions of data in the data stream 28 for transmission in corresponding time intervals, which may be referred to as scheduling intervals.
[0031] In the example depiction, the processing circuitry 32 is configured to perform a per channel power control procedure for each of one or more channels 14. The included processing in one or more embodiments comprises forming Medium Access Control (MAC) layer frames of the data to be transmitted in any given scheduling interval, and outputting the MAC layer frames directly or indirectly to physical-layer processing circuitry, which may be included in the processing circuitry 32. Such circuitry includes, for example, digital domain modulation circuitry that generates modulation-symbol samples scaled to reflect the per channel power control decisions made for each scheduling interval.
[0032] The processed signal samples output from the processing circuitry 32 flow directly or indirectly to the communications transceiver 10, which includes transmit circuitry 34 that is configured for transmitting on the involved channel(s) 14. The transmit circuitry 34 includes one or more power amplifiers (PAs) 36, and the per channel power control procedure(s) applied by the processing circuitry 32 for the involved channel(s) 14 controls the transmit power required by the transmit circuitry 34.
[0033] In one or more embodiments, the processing circuitry 32 is remote from the communications transceiver 10, with one or more intermediate entities and corresponding communicative couplings between the processing circuitry 32 and the communicationstransceiver 10. However, regardless of whether the processing circuitry 32 is remote from or integrated in the communications transceiver 10, it is configured to perform demand-based power control with respect to transmission by the communications transceiver 10 on the channel(s) 14.
[0034] For such transmissions, the transmit circuitry 34 outputs one or more analog-domain transmit signals 38 to one or more antennas 40 of the communications transceiver 10, for transmission on the channel(s) 14. The transmit signal(s) 38 convey transport data 12 in each scheduling interval, or at least in each scheduling interval for which the channel 14 is active. In at least some embodiments, the communications system 22 operates according to aggregate power control decisions made by an aggregate power control function 44 included in the communications system 22. For example, the other system entities 24 include a computer server or other computer apparatus configured to operate as the aggregate power control function 44, which provides aggregate power control signaling 42 to respective scheduler(s) 50 that are implemented via the processing circuitry 32 and which perform the per channel power control procedure in conjunction with scheduling transport data 12 on a per channel basis, with respect to successive scheduling intervals.
[0035] As a particular example, the channel 14 is one among a plurality of channels 14 on which the communications transceiver 10 transmits respective transport data 12 and there is a respective scheduler 50 and corresponding per channel power control function 52 per channel 14. In such arrangements, the aggregate power control function 44 operates to limit or otherwise control the overall or aggregate transmit power used on the plurality of channels 14.
[0036] However, even without consideration of the aggregate power control function 44 and the corresponding aggregate power control signaling 42 that are present in one or more embodiments, the communications system 22 in an example embodiment performs advantageous channel power control with respect to each channel 14 on which it transmits. In particular, the communications system 22 implements a “power matching” or “power scaling” technique that is also referred to as demand-based power control.
[0037] According to demand-based power control, the communications system 22 varies the transmit power used for transmitting transport data 12 on a channel 14 as a function of demand. “Demand” is assessed, for example, in terms of how much data is queued or buffered from the incoming transport data stream for transmission in a given scheduling interval.
[0038] Assume, for example that the communications system 22 transmits on a channel 14 using a fixed symbol rate and that the scheduling intervals have a defined duration. As such, there is a given number of transmit symbols — modulation symbols — in each scheduling interval. If there is a large amount of data to be transmitted in a given scheduling interval, the demandmay be said to be “higher” in comparison to another given scheduling interval for which there is less data to be transmitted. With the number of data bits conveyed by each transmit symbol being a function of the modulation and coding scheme (modcode) selected by the communications system 22, the communications system 22 varies its modcode selection as a function of demand.
[0039] Particularly, with respect to any given scheduling interval, the communications system 22 is configured to use the least spectrally efficient modcode that still allows for transmission of the amount of transport data to be transmitted in that interval. For example, the processing circuitry 32 implements one or more schedulers 50, such as one scheduler 50 per channel 14. Each scheduler 50 implements or is associated with a corresponding per channel power control function 52 that controls modcode selection as described above.
[0040] In an example implementation, each scheduler 50 includes one or more queues 54 — e.g., memory — for queuing a respective incoming transport data stream 28. In a case where the communications transceiver 10 transmits on multiple channels 14, each channel 14 may serve a respective remote communications transceiver 16, or a respective group of such transceivers, with the communications system 22 transmitting respective transport data 12 in each interval on each such channel 14. Put simply, the communications system 22 in one or more embodiments is configured to receive multiple incoming transport data streams 28 and transmit each such stream on a respective one among a plurality of channels 14, with the communications system 22 performing demand-based power control with respect to each channel 14.
[0041] The communications system 22 may receive data transmissions from the one or more remote communications transceivers 16, e.g., as relayed via the communications transceiver 10. For example, in at least one embodiment, each remote communications transceiver 16 transmits user traffic 60 at one or more times, and such transmissions may be performed in dependence on scheduling control by the communications system 22 and in dependence on the availability or amount of user traffic at the respective remote communications transceivers 16.
[0042] In at least one embodiment, a remote communications transceiver 16 being served by the communications system 22 provides channel quality feedback 62 for the channel 14, which is used by the communications system 22 in determining the transmit power needed to achieve the minimum required signal-to-interference-and-noise ratio (SINR) corresponding to the modcode selected by the communications system 22 for transmitting on the channel 14. Thus, in one or more embodiments, receive circuitry 64 in the communications transceiver 10 receives signals 66 from a remote communications transceiver 16 via the antenna(s) 40, where such signals 66 include user traffic 60, e.g., for forwarding to the external network(s) 26, and channel quality feedback 62. This “return” traffic and feedback signaling may be relayed through thecommunications transceiver to the processing circuitry 32 and / or another processing entity among the other system entities 24.
[0043] Consider an example case that looks at a single incoming data stream 28 and a corresponding single channel 14. At least with the assumption that the channel 14 is active according to aggregate power control, the communications system 22 transmits transport data 12 from the transport data stream 28 in each scheduling interval, based on operation of the associated scheduler 50 and the associated per channel power control function 52. Each scheduling interval has associated with it some corresponding amount of data to be transmitted, with the amount representing the demand for that scheduling interval. Correspondingly, the per channel power control function 52 performs demand-driven modcode selection for each such interval.
[0044] As noted, the processing circuitry 32 in one or more embodiments includes physical layer processing circuitry, shown as circuitry 58 in Figure 1, which applies or otherwise operates according to the power control decisions made by the per channel power control function(s) 52. For example, each per channel power control function 52 determines the required transmit power for a corresponding channel, for each scheduling interval, based on its minimum-modcode selection operations. Correspondingly, the digital-domain modulation samples generated by the physical layer processing circuitry 58 for signal transmission in each such scheduling interval are scaled according to the transmit power decisions. To better understand power control based on minimum-modcode selection, consider Figure 2.
[0045] Figure 2 illustrates an example defined set of modcodes, e.g., the illustrated set represents all possible modcodes usable by the communications system 22. The set is listed as MODCODE1 through MODCODE8, going from a lowest spectral efficiency / lowest required minimum SINR to a highest spectral efficiency / highest required minimum SINR. Thus, the spectral efficiency and the corresponding required minimum SINR at a given remote communications transceiver 16 for MODCODE2 is higher than that of MODCODE1, and so on. For the same channel conditions, a modcode with a higher required SINR at the receiver requires a higher transmit power than a modcode with a lower required SINR at the receiver. As such, the respective modcodes can be understood as having different spectral efficiencies and, for given channel conditions, different transmit power requirements.
[0046] With respect to the communications system 22 using a fixed symbol rate for transmitting on a channel 14, the different spectral efficiencies can be understood as different throughputs or different data rates. Cast in terms of throughput, and with respect to a given amount of data to be transmitted in a given interval, demand-based modcode selection meansthat the processing circuitry 32 selects the lowest throughput modcode that allows for the given amount of data to be transmitted on the channel 14 within the given interval.
[0047] As a further, optional point of flexibility, aggregate power control procedures in one or more embodiments include dynamic control of the modcodes available for use by the processing circuitry 32 — i.e., dynamic restrictions that disallow selection of the highest efficiency one(s) among the defined set of modcodes. Such restrictions represent a mechanism for limiting the maximum per channel transmit power used for each channel 14. In one such embodiment, the aggregate power control function 44 uses the aggregate power control signaling 42 to indicate which modcodes are available for selection by the schedulers 50, which are implemented via the processing circuitry 32.
[0048] Restricting one or more higher-efficiency / higher-power ones of the modcodes from selection has particular value in scenarios where the communications system 22 performs demand-based modcode selection on a per channel basis, with respect to transmitting simultaneously on a plurality of channels 14. In such scenarios, the same modcode restrictions may be applied to all channels 14, or only some of the channels 14. Additionally, in at least one embodiment, different modcode restrictions may be applied to different channels, e.g., to reflect different prioritizations.
[0049] Figure 2 illustrates a restriction example, where the set of available modcodes goes from MODCODE1 to MODCODE6, with MODCODE7 and MODCODE8 restricted from selection. The restriction may be temporary and may be removed or modified at a later time. For example, in one or more multi-channel embodiments, the communications system 22 transmits on multiple channels 14 via the communications transceiver 10, with the transmit power for each channel 14 drawn from a shared total available transmit power provided by a power supply 61 of the communications transceiver 10, as shown in Figure 1. In this case, the aggregate power control function 44 lowers or limits the aggregate instantaneous or average transmit power represented by the plurality of channels 14 by disallowing the per channel power control functions 52 from selecting one or more of the highest efficiency modcodes.
[0050] Turning back to Figure 2, for a given time interval in which the communications system 22 has a given amount of data to be transmitted on a channel 14 at a defined or fixed symbol rate, there may be multiple modcodes in the set of available modcodes that allow for all of the data queued for that interval to be transmitted within the interval. In other words, there may be multiple modcodes in the set of available modcodes that have spectral efficiencies sufficient to permit all of the data queued for that interval to be transmitted within the interval.
[0051] According to the minimum modcode selection logic used by the communications system 22, the communications system 22 selects the lowest efficiency one among thesecandidate modcodes. In the example of Figure 2, one may assume that MODCODE3 through MODCODE6 all have sufficient spectral efficiency to drain the queued data within the time interval, and the communications system 22 thus selects MODCODE3 as the least spectrally efficient one among the usable (candidate) modcodes — i.e., in this example, M0DC0DE3 is the “minimum” modcode with respect to the given time interval. This lowest efficiency modcode may be referred to as the “depletion” modcode, to denote the fact that it distributes or spreads the data to be transmitted over as much of the scheduling interval as possible — from among the modcodes that are selectable — while still allowing for all of the data to be transmitted within the bounds of the interval.
[0052] A conventional implementation of adaptive coding and modulation (ACM) aims for maximizing channel throughput, which would mean selecting MODCODE6 for the given interval, rather than MODCODE3. Using MODCODE6 means conveying more data bits per symbol than conveyed when using MODCODE3. For example, assume that using MODCODE6 rather than MODCODE3 results in all of the queued data being transmitted in the first third of the interval. A conventional transceiver in this case may transmit dummy or padding data during the remainder of the interval. Thus, one view or understanding of the advantageous demandbased power control is that it avoids or minimizes the transmission of dummy data by, in effect, distributing the amount of transport data to be transmitted in the interval over the full interval, or at least as close to the full interval as is allowed for by the set of available modcodes.
[0053] For example, with respect to the example of Figure 2 and a given amount of data to be transmitted in a given interval using a fixed symbol rate, MODCODE2 may be too “slow” or too spectrally inefficient in the sense that its corresponding data-bits-per-symbol value does not allow for transmission of all of the data within the interval. MODCODE4 may be too “fast” or too spectrally efficient in the sense that its corresponding data-bits-per-symbol value would result in all of the data being transmitted in the first half of the interval. MODCODE3 in this example case may be assumed to have a data-bits-per-symbol value that results in all but a small fraction of the interval being “filled” with actual transport data rather than dummy data.
[0054] Each modcode in the defined set of modcodes has a corresponding minimum required SINR at the targeted receiver, such as may be defined in terms of a maximum acceptable decoding error rate. Figure 3 illustrates use of the minimum SINR for MODCODE3, as selected by the communications system 22 in the example context of Figure 2. The communications system 22 implements a channel transmit (“TX”) power calculation, which determines the channel transmit power to use for the given time interval as a function of the minimum required SINR, channel quality feedback, and, optionally, a margin. For example, channel transmit power may be calculated based on the minimum SINR and the channel quality, and then adjustedupward by a margin of, say, five percent or ten percent, to account for inaccuracy or delay in the corresponding channel quality feedback 62 shown in Figure 1.
[0055] Minimum-modcode selection operations offer advantages on a per channel basis, such as in terms of power saving through minimization of “wasted” transmissions of dummy data. However, additional, significant advantages accrue in instances where the minimum-modcode selection operations are practiced across a potentially large plurality of channels 14 that share an available total transmit power. Referring back to Figure 1 momentarily, consider a case where the channel 14 is one among a plurality of channels 14 on which the communications transceiver 10 transmits, with each channel 14 used for conveying a respective transport data stream 28 to a respective remote communications transceiver 16 or to given ones among a respective group of remote communications transceivers 16. In Figure 1, the power supply 61 provides the available total transmit power, with that total power being a shared resource for transmitting on the plurality of channels 14.
[0056] Performing per channel power control as disclosed herein provides for a statistical multiplexing of the available total transmit power across the plurality of channels, and advantageously exploits the fact that, with uncorrelated transport data streams 28, the instantaneous traffic demand varies independently for the respective channels 14. Thus, for any given scheduling interval, some channels 14 may have relatively low demand, allowing the use of lower transmit power, while some channels 14 may have relatively high demand, requiring the use of higher transmit power. Such operation prevents power wasting in scheduling intervals for channels 14 that do not need higher transmit powers, which frees up shared power for allocation to the channels 14 that do need higher transmit powers in those intervals.
[0057] Figure 4 illustrates in relevant part a corresponding example communications system 22, including implementations of the aforementioned processing circuitry 32 and communications transceiver 10. The communications system 22 receives N transport data streams 28-1, 28-2,... 28-N, where N is a potentially large integer number. For example, N is 2000. One or more transport data sources 100 in the communications system 22 provide the transport data streams 28 — see, for example, the entities 24 shown in Figure 1, which interface with one or more external networks 26 for receiving user traffic from which the transport data streams 28 are formed within the communications system 22.
[0058] In this example, each transport data stream 28 carries user data for a respective remote communications transceiver 16. That is, stream 28-1 corresponds with remote communications transceiver 16-1, stream 28-2 corresponds with remote communications transceiver 16-2, stream 28-3 corresponds with remote communications transceiver 16-3, and so on. Of course, it may be that a remote communications transceiver 16 serves as a mobile routeror gateway for multiple downstream users. In such cases, the transport data stream 28 may comprise multiple streams of user data that are time-multiplexed together.
[0059] In any case, the communications system 22 advantageously includes per channel schedulers 50-1, 50-2, 50-3,... 50-N, which perform per channel demand-based power control as described herein. As such, the per channel transmit powers drawn or required from a shared power supply 104 vary on a per channel basis, as a function of varying per channel traffic demand.
[0060] The per channel demand-based power control provides for advantageous statistical multiplexing of the available total transmit power across the plurality of channels 14. These advantages are supplemented in one or more embodiments with aggregate power control, e.g., with processing circuitry 106 implementing the aforementioned aggregate power control function. The processing circuitry 106 comprises, for example, one or more microprocessors or other type of computer processors that is / are specially adapted to carry out aggregate power control based on the execution of computer program instructions stored in computer readable media associated with the processor(s), such as program memory.
[0061] The processing circuitry 106 is centralized in one or more embodiments, where “centralized” refers to the processing circuitry 106 being implemented apart from the schedulers 50 and providing common observation, supervision, and / or aggregate control for the schedulers 50. Such arrangements provide for independence among the individual schedulers 50, which avoids the complexities of interdependent scheduling and inter- scheduler communications and coordination, while still providing for overall, aggregate power control of the plurality of schedulers 50.
[0062] With the above example details in mind, one embodiment disclosed herein comprises a communications system 22 that is configured for transmitting bursty transport data 12 on a channel 14. In an example configuration, a communications transceiver 10 of the communications system 22 includes transmit circuitry 34 that is configured for transmitting on the channel 14, and the communications system 22 further includes processing circuitry 32 that is operatively associated with the transmit circuitry 34. Here, “operatively associated” means that the processing circuitry 32 controls at least some aspects of operation of the transmit circuitry 34, such as in carrying out the demand-based transmit power control and in scheduling data for transmission via the transmit circuitry 34.
[0063] The processing circuitry 32, which comprises one or more programmatically-configured computer processors in one or more embodiments, is configured to implement a per channel power control procedure for each of one or more channels 14. The procedure comprises the following steps or operations: (1 ) identify an amount of transport data to be transmitted onthe channel 14 in a corresponding time interval; (2) select a modcode from a set of available modcodes having respective spectral efficiencies, based on selecting a minimum efficiency one of the modulation codes from the available set which permit the identified amount of transport data to be transmitted on the channel 14 in the corresponding timing interval using a fixed symbol rate; (3) determine a transmit power to use for the transmission, in dependence on a minimum required SINR required for the selected modcode; and (4) apply the selected modcode and the determined transmit power for the transmission.
[0064] In one or more embodiments, the processing circuitry 32 is configured to determine the minimum required transmit power corresponding to the minimum required SINR and according to channel quality feedback 62 received for the channel 14. For example, the processing circuitry 32 is configured to determine the transmit power by adding a defined margin to the minimum required transmit power.
[0065] In one or more embodiments, the set of available modcodes belong to a set of modcodes defined for use in the communications system 22. Thus, the set of available modcodes may be the entire set or universe of modcodes possible for use in the communications system 22 or may be a restricted subset that excludes the highest-efficiency one or ones among the possible modcodes.
[0066] Figure 5 illustrates another example embodiment wherein the communications system 22 comprises a satellite communications system (SCS) that includes at least one communications satellite 110 and a supporting ground segment or network 112. The communications satellite 110 is an example of a communications transceiver 10, and the ground network 112 implements per channel power control and aggregate power control procedures, for controlling or otherwise managing the transmit power requirements at the communications satellite 110.
[0067] The ground network 112 interfaces with one or more external networks 114, and includes a communications processing system (CPS) 120 that is configured for processing user data incoming from and outgoing to the external networks 114, including forming respective transport data streams for transmission to respective remote communications terminals 16, e.g., 16-1 through 16-N. One or more feeder uplink signals 122 convey these respective streams — which are not explicitly shown in the diagram for ease of illustration. The feeder uplink signal(s) 122 form part of a feeder link 124 that includes feeder downlink signals 126, which, among other things, convey user data transmitted from respective ones of the remote communications transceivers 16.
[0068] In the ground network 112, one or more ground stations 128 each support a corresponding feeder link 124 with the satellite 110, and there may be multiple ground stations128 and multiple satellites 110 included. Each such satellite 110 includes a corresponding feeder link interface 130, which may be RF based or optically based, depending upon whether the SCS uses RF or optical spectrum for implementing the feeder link 124.
[0069] The satellite 110 includes a communications payload 132 comprising transmit circuitry. In one or more embodiments, the transmit circuitry 134 includes a plurality of signal amplification paths that include respective transmit power amplifiers, for transmitting a plurality of forward user beams 136 via a user-link interface 140. For example, the user-link interface 140 comprises a phased array antenna having a plurality of antenna elements, with the transmit circuitry 134 including a respective transmit amplifier for transmitting an amplified signal from each antenna element. The transmit circuitry 134 represents an example of the aforementioned transmit circuitry 34, with the CPS 150 providing per channel and aggregate power control procedures for controlling or otherwise managing the per channel and aggregate transmit power required onboard the satellite 110 for formation of the forward user beams 136.
[0070] In an example scenario, the forward user beam 136-1 serves a remote communications transceiver 16-1, conveying respective transport data 12-1, and there may be multiple such beams. Each beam may serve multiple remote communications transceivers 16, with one or more of them providing channel quality feedback 62, for use in the power control operations described herein. Thus, the diagram depicts the remote communications transceiver 16-1 returning channel quality feedback 62-1 for the forward user beam 136-1 with the same arrangement applying for the remaining example forward user beams 136-2 through 136-N.
[0071] Consider the example context of the transmit circuitry 134 comprising RF transmitters and RF receivers for downlink and uplink communications with remote communications transceivers 16, and the user link interface 140 comprising one or more phased array antenna systems having a plurality of transmit antenna elements. In such contexts, each forward user beam 136 is formed by transmitting weighted copies of the same signal from the plurality of transmit antenna elements, according to beam weights — gain / phase values — that result in constructive and destructive combining of signals — signal superpositions — in the far field. The beam weights are calculated for far-field formation of the respective forward user beams 136, according to the desired beam shapes and orientations.
[0072] The beams may be static or may be steered, such as where the remote communications transceivers 16 reside onboard aircraft or other moving vehicles or systems. Regardless, the forward user beams 136 are examples of forward downlink channels used in satellite communications for transmitting data to respective user terminals or other endpoints served by the satellite communications system.
[0073] A power supply 142 onboard the satellite 110 provides the power for transmitting on the respective forward user beams 136, such that the plurality of forward user beams 136 “share” an available total transmit power. Correspondingly, the CPS 120 in one or more embodiments includes processing circuitry 150 configured to implement a version of the aggregate power control function 44 described earlier herein, along with the per channel power control functions 52. Together, these functions control or otherwise limit the transmit power demands placed on the satellite 110 with respect to forming the forward user beams 136. For example, the per channel power control functions 52 provide advantageous demand-based power control on a per beam basis. The aggregate power control function 44 controls aggregate beam power across the plurality of forward user beams 136, to avoid exceeding the available total transmit power of the power supply 142, or some threshold fraction thereof, or otherwise to control the utilization of the available total transmit power.
[0074] Whether in the satellite context or in the context of another type of communications system, in one or more embodiments, a communications system 22 is configured to perform ongoing per channel power control with respect to individual ones among a plurality of time intervals, for a plurality of channels 14. The per channel power control procedures advantageously limit per channel transmit powers in each time interval, for statistical multiplexing of an available total transmit power across the plurality of channels 14 as a function of varying per channel demands.
[0075] The per channel power control is implemented, for example, in first processing circuitry of the communications system 22. In at least one embodiment, second processing circuitry of the communications system 22 performs further aggregate power control procedures, to control an aggregate transmit power used in each scheduling interval for the plurality of channels 14. Aggregate control is with respect to an available total transmit power that is shared by the channels 14. Example first and second processing circuitry is shown together in Figure 5 as processing circuitry 150, which is included in the ground segment 112 of a SCS. Figure 1 illustrates a more generic example, where an aggregate power control function 44 is realized in one or more other entities 24 of an overall communications system 22 that includes a communications transceiver 10 that is configured for per channel power control based on minimum modcode selection.
[0076] However realized, with respect to an available total transmit power, the aggregate power control procedures in one or more embodiments comprise at least one of: precluding transmission on one or more of the plurality of channels 14 in the corresponding time interval, in conjunction with the aggregate transmit power exceeding the available total transmit power, orapplying a power normalization across the plurality of channels, in conjunction with the aggregate transmit power not exceeding the available total transmit power.
[0077] Regarding per channel power control procedures with respect to the exercise of supervisory or overriding aggregate power control procedures, the step or operation of determining the transmit power for any given channel 14 that is precluded (inactive or deactivated) with respect to any given time interval comprises setting the transmit power to zero and dropping or buffering the corresponding transport data to have been transmitted during the given time interval. In other words, for a channel 14 that is not precluded with respect to a given time interval, per channel power control determines the transmit power using the minimum modcode selection operations described herein, where the transmit power is set as a function of the minimum modcode. But, if transmission is precluded for the interval(s) at issue, the per channel power control sets the transmission power on the channel to zero, along with dropping or deferring the affected data. Deferred data may be moved to a later time interval — a later scheduling interval — where demand on the channel 14 is lower. More generally, deferred data may be distributed over multiple subsequent scheduling intervals, at least within any sequencing or latency limitations of the involved communication service(s).
[0078] The aggregate power control procedures in one or more embodiments include determining the aggregate transmit power based on observing the per channel transmit powers controlled by the per channel power control procedures. Applying this approach to the context of Figure 1, there is a scheduler 50 per channel 14, with each scheduler 50 including a per channel power control function 42 that performs the per power control procedure. Additional processing circuitry implements the aggregate power control function 44, where that procedure includes observing the per channel transmit powers. These observations provide a basis for tracking or otherwise monitoring utilization of the available total transmit power shared by the channels 14.
[0079] In at least one embodiment, the per channel power control procedures comprise, for each given channel 14 and each given time interval, buffering transport data for transmission in the given time interval in a corresponding First-In-First-Out (FIFO) buffer, and transmitting or not transmitting from the corresponding FIFO buffer, in dependence on whether the given channel 14 is or is not currently precluded from transmitting. Correspondingly, in such embodiments, the aggregate power control procedures include precluding transmission on channels having shortest FIFO buffer lengths among the plurality of channels 14, in dependence on whether the aggregate transmit power exceeds the available total transmit power.
[0080] As noted, the aggregate power control procedures in one or more embodiments comprise a centralized control function implemented via processing circuitry and driven by observing the per channel power control procedures. Correspondingly, the per channel powercontrol procedures comprise distributed functions in the sense that the per channel power control functions 52 may operate independently for the respective channels 14 and may be, but need not be, implemented in the same node or computing cluster.
[0081] Each scheduler 50 operating independently of the other scheduler 50 offers significant advantages. For example, more complex scheduling arrangements with visibility across multiple channels 14 are not needed. And, as suggested above, implementation of the schedulers 50 may be distributed across computing resources, thus easing the processing requirements of any given computing node or cluster.
[0082] With respect to Figure 1, for example, a per channel scheduler 50 implements a per power control function 52 for a respective channel 14 among a plurality of channels 14. The per channel power control procedure as replicated for each channel 14 relies on the minimum modcode selection operations described herein. The same or other computing resources may be used for implementation of the aggregate power control function 44, for carrying out the aggregate power control procedures across the plurality of channels 14 being individually subjected to the demand-based power control provided by the per channel power control procedure.
[0083] In at least one embodiment, the aggregate power control procedures comprise a method 600 of operation, as shown in Figure 6. The method 600 includes: determining (Block 602) the aggregate transmit power based on observing the per channel transmit powers for a plurality of channels sharing a same available total transmit power; monitoring (Block 604), based on observing the aggregate transmit power over one or more durations, a utilization of the available total transmit power; and adjusting (Block 606) the set of modcodes available for use by the respective per channel power control procedures associated with the plurality of channels 14, responsive to the utilization of the available total transmit power. Adjusting the set of available modcodes comprises, for example, an aggregate power control function 44 being configured to: increase the highest efficiency modcode available for use, responsive to underutilization of the available total transmit power; and decrease the highest efficiency modcode available for use, responsive to overutilization of the available total transmit power.
[0084] Figure 7 illustrates another method 700 of aggregate power control. In one or more embodiments, either the method 600 or the method 700 comprise the aggregate power control procedures carried out by the aggregate power control function 44. In other embodiments, the aggregate power control function 44 performs both the method 600 and the method 700 as the aggregate power control procedures.
[0085] The method 700 controls the aggregate transmit power used in each scheduling interval for the plurality of channels 14, with respect to an available total transmit power. Themethod 700 is performed based on monitoring or determining an aggregate transmit power associated with transmitting on a plurality of channels 14. The aggregate transmit power may be equal to a maximum total transmit power available for the channels, or it may be derated, e.g., set at some percentage of a maximum power limit. Figure 7 uses “utilization threshold” to indicate this possibility.
[0086] The method 700 includes determining (Block 702) whether the aggregate transmit power exceeds the utilization threshold. In response to the threshold being exceed (YES from Block 702), processing includes precluding (Block 704) transmission on one or more of the channel(s) 14. This operation can be understood as deeming the one or more channels 14 to be inactive or in an inactive state with respect to the involved scheduling intervals, and it represents an advantageous way of lowering the overall transmit power demand for the plurality of channels 14.
[0087] Alternatively, if the aggregate transmit power is below the utilization threshold — NO from Block 702), the method 700 includes applying a power normalization across the plurality of channels 14. Such normalization may be used to increase the aggregate transmit power being used for the plurality of channels 14 to match or come closer to the utilization threshold. An example utilization threshold is ninety-five percent of a maximum transmit power possible for the involved communications transceiver 10. Also, it should be understood that the communications transceiver 10 may be configured with hysteresis and / or filtering, to prevent too rapid or too frequent preclusion or normalization decisions. In one approach, the communications system 22 uses a first, lower utilization threshold for deciding when to perform the power normalization and thereby increase the aggregate transmit power of the plurality of channels 14, and uses a second, higher utilization threshold for deciding when to apply preclusion. Of course, the number of channels 14 to which preclusion is applied may be varied, for example, in dependence on monitoring the utilization behavior or based on other observed behavior of the aggregate transmit power.
[0088] Figure 8 illustrates an example method 800 of operation by the earlier illustrated per channel power control function 52, implemented in a scheduler 50 with respect to a particular channel 14. The method 800 may be performed independently with respect to each one among a plurality of channels 14 that share an available total transmit power. The method 800 represents an example implementation of the per channel power control procedure discussed throughout and it includes the following steps or operations: identifying (Block 802) an amount of transport data to be transmitted on the channel 14 in a corresponding time interval; selecting (Block 804) a modcode from a set of available modcodes having respective spectral efficiencies, based on selecting a minimum efficiency one of the modulation codes from the available set which permitthe identified amount of transport data to be transmitted on the channel 14 in the corresponding timing interval using a fixed symbol rate; determining (Block 806) a transmit power to use for the transmission, in dependence on a minimum SINR required for the selected modcode; and applying (Block 808) the selected modcode and the determined transmit power for the transmission.
[0089] In embodiments that include aggregate power control procedures that include inactivating one or more channels 14 to reduce the aggregate power demand, the method 800 can be understood as what happens with respect to a given timing interval for which the subject channel 14 is active — i.e., not precluded from transmission. If the subject channel 14 is inactive for a given timing interval, then the transmit power is set to zero for the channel 14, for that timing interval. Channel activation / deactivation may be decided on a per timing interval basis, or according to a slower timeline, such that the activation / deactivation decision applies to some minimum number of consecutive timing intervals.
[0090] Further, it should be understood that the minimum-modcode selection logic of Block 804 applies in operating scenarios where at least one of the modcodes in the set of available modcodes has a spectral efficiency high enough to permit all of the data to be transmitted within the given timing interval. For example, with reference back to Figure 2, consider an example timing interval where the amount of data to be transmitted on the involved channel 14 in a given timing interval requires the use of MODCODE7 or MODCODE8, but those two modcodes have been restricted from use. In such a case, the modcode selection logic in at least one embodiment selects the highest efficiency one among the available modcodes, and the data that cannot be transmitted within the applicable time limit using that selected modcode is dropped or it is deferred for later transmission.
[0091] In a satellite-specific context, the techniques described herein provide practical forward link power- adaptation mechanisms for beamforming satellites, with the potential to eliminate virtually all waste due to bursty offered load, by matching beam capacity to demand scheduling timescales (e.g., milliseconds). Relatively simple mechanisms, as described herein, realize the overall functionality and do so without requiring cumbersome or complex coordination between per channel scheduling and power control, nor complex coordination between aggregate / centralized power control and the per channel power control. The approach yields peak aggregate speeds that can be multiples higher than achievable when a plurality of beams is operated at a fixed capacity.
[0092] Consider Figure 9, which illustrates a scheduler using conventional ACM-based generation of MAC layer frames of transport data for a given amount of transport data to be transmitted in a given scheduling interval. Conventional ACM for a fixed symbol ratetransmission selects, for any given time window, the highest efficiency modcode supported by the involved channel when generating MAC frames containing the data to be transmitted. This approach drains the queue(s) as quickly as possible for channel conditions, meaning that transmission of user data often completes well before the scheduling interval ends, with conventional ACM using dummy or padding bytes to fill in the remaining portion of the scheduling interval. In other words, conventional ACM uses more power than is strictly needed to complete the user data transmission within the scheduling interval, with transmit power being wasted on padding transmissions.
[0093] Figure 10 illustrates the minimum modcode selection used to effect demand-based power control for individual channels 14. One may assume that the symbol rate, scheduling interval duration, and amount of data to be transmitted in the context of Figure 10 is identical to that of Figure 9. By selecting the minimum modcode — the minimum spectral efficiency modcode that still allows all of the queued data to be transmitted within the fixed scheduling interval at the fixed symbol rate, the scheduler of Figure 10 “distributes” the data across the scheduling interval, thus minimizing the amount of padding that must be transmitted. Note that the amount of padding depends on how many modcodes there are to choose from or, more accurately, depends on the amount of data to be transmitted and how close the minimum modcode comes to perfectly distributing the queued data across the scheduling interval.
[0094] In an example of operation, assume that a per channel scheduler 50 has the form illustrated in Figure 10, and assume that an aggregate power control function 44 acts as a centralized “resource allocator” that tells the scheduler 50 the maximum modcode that it is allowed to use with respect to each scheduling interval. For each scheduling interval, the scheduler 50 examines enqueued bytes and determines the minimum modcode as the most robust modcode among the set of modcodes available for selection that will empty all queues over the scheduling interval.
[0095] For example, assume that there is a given amount of enqueued data to be transmitted on a given channel 14 in a given scheduling interval. As a non-limiting example, the scheduling interval is a 100-millisecond window. However, longer or shorter scheduling intervals may be used. Further, assume that there are eight modcodes possible for use, going from a lowest efficiency one to a highest efficiency one; assume that the six lowest efficiency ones among these eight are currently indicated as comprising the set of available modcodes; and assume that the three highest efficiency ones among the set of available modcodes would all drain the enqueued data within the scheduling interval.
[0096] In this example, then, there are three available modcodes that are usable in the sense that they drain the queue, and minimum modcode selection means selecting the lowest efficiencyone among the three usable modcodes. Understanding the power-reducing advantages of using lower efficiency modcodes depends on recognizing that lower efficiency modcodes are more robust than higher efficiency modcodes, because they map to lower required minimum SINRs at the targeted receiver. There is a possibility that the minimum efficiency modcode is outside of the set of available modcodes. For example, modcode restrictions imposed as part of aggregate power control may prevent selection of the modcode that would be needed to complete the transmission of the data enqueued for transmission in a given scheduling interval. One approach to handling such occurrences is not to transmit on the involved channel 14 during the scheduling interval. This approach frees up the power that would have been used, for use on other channels 14.
[0097] Thus, one embodiment of demand-based power control effected by the described per channel power control procedure can be understood as, with respect to any given scheduling interval, selecting the lowest efficiency modcode usable for transmitting the data enqueued for transmission on the corresponding channel 14 during the interval, if such a modcode exists within the set of available modcodes, and otherwise not transmitting on the channel 14, e.g., by withholding the data from the downstream transmit signal chain.
[0098] Figure 11 illustrates further example details for per channel power control. In a case where the channel 14 is a RF beam, e.g., a forward user beam in a SCS, the channel power at issue is a beam power. Where the beam is one among a plurality of beams transmitted simultaneously using a shared source of power, performing demand-based per beam power control as suggested in Figure 11 results in a statistical multiplexing of the shared power across the plurality of beams. Varying the per beam powers as a function of demand allows low demand beams to use less shared power, which makes more shared power available for higher demand beams.
[0099] In the illustrated operation, the power control function 52 of the scheduler 50 performs minimum modcode selection with respect to a given channel 14 for a given scheduling interval, and forms a set of MAC frames for the interval using the selected modcode. The per channel power control function 52 further determines the transmit power for the channel 14, for the interval, based on the selected modcode. The scheduler 50 sends the MAC frames to physical-layer processing circuitry 58 comprising digital-domain modulation circuitry in one or more embodiments, along with an indication of the required power. The circuitry 58 generates modulated data — a modulated signal — for transmission on the involved channel 14 at the required power. Such data may couple directly into the transmit circuitry 34 for generation of the corresponding analog-domain transmit signals, or it may couple through one or more intermediate entities comprising an overall transmit signal chain.
[0100] In addition to the modulated signal, the information stream flowing from the physical-layer processing circuitry 58 in one or more embodiments includes an indication of the relative power (in dB) of the modulated signal. These indications are transmitted to the remote communications transceiver (RCT) 16. In a SCS-based example, the RCT 16 comprises, for example, a user terminal (UT). The RCT 16 measures the SINR (in dB), and uses the embedded power levels indicated to it, to compute the channel quality Q. Particularly, Q = SINR - P. For example, P = OdB, SINR = 4dB, so Q = 4dB. As another example, P = 3dB, SINR = 7dB, so Q = 4dB. Periodically, the RCT 16 averages previous measurements of channel quality and sends this value back to the scheduler 50 as feedback 62.
[0101] By virtue of this arrangement, the scheduler 50 is free to increase or decrease transmit power on the channel 14 as quickly and by as much as is desired or practical, based on knowledge of the channel quality. In short, with respect to each scheduling interval: (a) the scheduler 50 determines the modcode it wants to use (minimum modcode determination); (b) the scheduler 50 looks up the SINR needed to close the link for the selected modcode; (c) the scheduler 50 computes the correspondingly required transmit power as P = SINR - Q; and (d) the scheduler 50 “pairs” the required power P with the MAC layer frames and sends the data and an indication of the required power to the physical-layer processing circuitry 58.
[0102] For most waveforms, modcodes have discrete steps between them. The average SINR step between modcodes is around 1 dB, for example. Typically, the SINR of a beam or other channel is somewhere between adjacent modcodes in the set of available modcodes; in such cases, a scheduler 50 operating as disclosed herein chooses the lower efficiency one of the two modcodes. For example, the average gap is half the average step, or 0.5 dB for a step size of 1 dB. With this approach, the transmit power on the beam or other channel is only ever just enough to close the link, which yields a per beam or channel power savings of 0.5 dB for the example gap size.
[0103] Figure 12 illustrates another example arrangement where a plurality of schedulers 50-1 through 50- provide demand-based per beam control for a plurality of RF beams. The plurality of RF beams are shown as BEAM1 through BEAM / V. Beam formation relies on a shared power source.
[0104] Per beam power control relies on the minimum modcode selection technique disclosed herein, as practiced on a per channel basis by each respective scheduler 50. Further, an aggregate power control function 44 provides overall control of the aggregate power demand for the plurality of RF beams. In one or more example SCS contexts, the aggregate power control function 44 and the schedulers 50-1 through 50-N reside on the ground, but provide power control for transmit circuitry 34 residing onboard a satellite — not explicitly shown in Figure 12.
[0105] N is an integer number, and may be much larger than one. For example, N is 500 or greater. With / beams, there are? schedulers 50-1 through 50-? / , with each scheduler 50 performing per beam power control, based on the minimum modcode selection described herein. Each scheduler 50 operates independently with respect to each scheduling interval, according to the amount of data to be transmitted on the corresponding beam in that interval. Each scheduler 50 reports the beam power required for each interval to the aggregate power control function 44, which uses such information to monitor or otherwise determine aggregate beam power demand. The required powers reported to the aggregated power control function 44 are denoted as “RPs” in the diagram and, for convenience, the aggregate power control function 44 may be referred to as “PSF” to denote “power sharing function.”
[0106] The PSF uses the aggregate beam power demand to determine beam activation / deactivation. For example, to lower the aggregate beam power demand below an available total transmit power, the aggregate power control function 44 deactivates one or more beams.
[0107] Supporting beam activation and deactivation, there is a physical-layer circuit block 58 corresponding to each scheduler 50, e.g., block 58-1 corresponds with scheduler 50-1, block 58-2 corresponds with scheduler 50-2, and so on. With each scheduler 50 receiving corresponding beam data — transport data for transmission on the corresponding RF beam — each physical-layer circuit block 58 receives MAC frames for transmission in each interval, along with a required power indicated for each interval.
[0108] Each block 58 includes a data queue 160 — e.g., a FIFO buffer — for queuing the MAC frames (shown as “MF” in the diagram) for each interval, and for storing the required power (shown as “RP” in the diagram) for each interval. Each block 58 further includes a queue gate 162 that is turned on or off (set to a blocking or non-blocking state) responsive to activation control signaling from the PSF. Turning off the queue gate 162 in the block 58 corresponding to a given one of the RF beams “deactivates” that beam, meaning that data is not transmitted on the beam and the beam power allocation is zero for the intervals during which the beam is deactivated.
[0109] A modulation circuit 164 follows each queue gate 162, and comprises, for example, a digital modulation circuit. If the associated beam is active, the queued MAC frames for each interval flow into the modulation circuit 164, which outputs modulated data / signals to a power scaling circuit 166. RP indications held in the queue 160 control power scaling by the power scaling circuit 166. Consider scheduling intervals m and m+1, for which the scheduler 50 selected respective minimum modcodes and computed the corresponding RP. These RPs are applied by the power scaling circuit 166 — i.e., the RP for the interval m is applied to the dataflowing from the queue 160 for the interval m, and the RP for the interval m+1 is applied to the data flowing from the queue for the interval m+1.
[0110] The power-scaled, modulated signal 168 output from each power scaling circuit 166 flows into a beamformer 170, which stores or otherwise accesses multiple beam weight sets 172. In particular, each beam weight set 172 contains a set of beam weights — e.g., digital values representing a particular phase delay and attenuation. Each beam weight set 172 corresponds with a particular one among the N beams to be formed, i.e., the beam weight set 172-1 is computed for formation of BEAM1, the beam weight set 172-2 is computed for formation of BEAM2, and so on.
[0111] Each beam weight in each set 172 corresponds with a particular transmit antenna element of a phased array antenna 174 used for forming BEAM1 through BE A. I A. For example, assume that there are R transmit antenna elements used in beamforming. With this assumption, the beamformer 170 splits each signal 168 into R copies, with each copy corresponding to a respective one of the transmit antenna elements, and with each copy weighted by the corresponding beam weight in the corresponding beam weight set 172. In an example embodiment, the beamformer 170 combines all of the weighted copies corresponding to the same antenna element and outputs these combined weighted copies as a set of element signals 176. The transmit circuitry 34 used for transmission via the antenna 174 contains PAs 177, which provide analog-domain amplification of the element signals 176, for input to the phased array antenna 174 as antenna element signals 178. Note that the figure implies direct connection between the beamformer 170 and the PAs 177, but there may be one or more intermediate couplings between the beamformer 170 and the PAs 177.
[0112] Regardless, each antenna element signal 178 is radiated from the respective transmit antenna element in the phased array antenna 174 as a corresponding transmit signal 182.Simultaneous transmission of these transmit signals 182 result, according to the applied beam weights, in formation of BEAM1 through BE AM A, as a consequence of the patterns of constructive and destructive signal superpositions that occur in the far field.
[0113] In operation, PSF is aware of all scheduler-to-modulator transmissions happening with respect to the plurality of beams or a particular frequency subchannel. For example, a single satellite in a SCS may contain the PAs 177 and be responsible for transmitting the beams, using an overall shared power available onboard the satellite. Here, the PSF knows the required power for each beam, for each transmission. The PSF in one or more embodiments maintains an inner state machine representing the queue states in each physical-layer block 58, or otherwise obtains queue state information from the physical-layer blocks 58.
[0114] For each timeslot or other sequential interval, broadly understood herein as a scheduling interval or other timing interval of interest, the PSF decides which physical-layer blocks 58 can transmit, and which ones must wait. In other words, it decides which beams are active. If the sum of the required powers at the head of the modulator queues 160 across the plurality of physical-layer blocks 58 is less than the total available power, all physical-layer blocks 58 can transmit. Otherwise, in an example embodiment, the PSF chooses those physicallayer blocks 58 with the fewest enqueued transmissions and signals them to wait. The PSF does this for as many of the physical-layer blocks 58 as is necessary to not violate the total power constraint.
[0115] Framing the problem in the context of a satellite, assume that the total available power onboard the satellite is “1.” When the total demand on the satellite is low, the total required power will be less than 1. As the traffic load on the satellite increases over time, however, this sum will start to increase (e.g., 0.2, then 0.5, then 0.8). Eventually the total required power will start to exceed the available power. This may happen occasionally at first, and then consistently, leading to queue build-up in the physical-layer blocks 58.
[0116] As an advantageous “slow feedback mechanism,” for every timeslot or other scheduling interval of interest, the PSF remembers total required power arriving at the physical-layer blocks 58. Here, “power arriving” at the blocks 58 refers to the required power indications provided by each scheduler 50-x to each block 58-x, where “x” denotes any suffix from 1 to N, assuming A beams. Periodically, such as every five seconds, the PSF takes the average of these values, and the PSF maintains a TEP which it can allocate across all beams. In the baseline implementation, TEP = 1.
[0117] The PSF in one or more embodiments operates with a target for the total required power incoming to the physical-layer blocks 58-1 through 58-A from the schedulers 50-1 through 50- A. For example, the PSF uses a target of 0.95, meaning that the PSF targets a power utilization of ninety-five percent of the available total power. The PSF in one or more embodiments increases the TEP responsive to the average incoming power being below the target utilization. Conversely, the PSF decreases the TEP responsive to the average incoming power exceeding the target utilization. In at least one embodiment, the PSF uses a waterfilling algorithm to allocate the TEP across the beams in a way that is efficient and fair.
[0118] Once done with waterfilling, the PSF uses per-beam channel quality information reported to it by the schedulers 50 or the RCTs 16. With this approach, the PSF can convert its power allocations to “max allowed modcodes” for each beam and communicate these values to the schedulers 50. As noted, modcode restrictions may be applied on a per beam basis, or may be applied to all beams or to respective subsets of beams. Equivalently, the PSF passes the per beamallocations of shared power directly to the schedulers 50, and the schedulers 50 convert these indicated allocations to max modcodes.
[0119] When computing what modcode to use to ostensibly deplete the queues 160, the schedulers 50 cannot exceed the maximum modcodes indicated to them. When the maximum is reduced across all the schedulers 50, loading on the physical-layer blocks 58 is reduced, keeping the sum of the required powers below 1 and the modulator queues 160 empty. Figure 13 illustrates modcode-restriction control used in one or more embodiments. When the PSF sees that required powers indicated by the schedulers 50 is too high, it applies modcode restrictions to one, some, or all of the schedulers 50, with a resulting reduction in the required powers (denoted as incoming power).
[0120] Such operations improve in statistical sense with larger pluralities of beams or, more broadly, with larger numbers of channels 14. Dynamically allocating power to respective beams on a demand basis allows high demand beams to operate with higher powers than would otherwise be permitted in a fixed capacity arrangement. That is, lower demand beams require less power that would be used in a uniform, fixed-capacity scheme, and that “spare” power may be used to run higher demand beams at higher capacity. The statistically multiplexed power allocations may be viewed in the aggregate as a “total effective power” or TEP. If one takes the aggregate power that would be used in a fixed-capacity scheme as the reference, the TEP may exceed the fixed-capacity power. Simulations indicate that the TEP can exceed ten during stages of low-to-moderate traffic loading and be in the range of two to three during heavy loading.
[0121] In a case where the disclosed techniques are applied in the context of a satellite providing a plurality of RF beams, one assumption may be that interference between beams is negligible, which allows one beam to rapidly change power without affecting the SINRs of other beams. However, the techniques apply even in cases where the beams have non-negligible interference. For example, an additional power or modcode margin can be employed to overcome inter-beam interference, with a corresponding small reduction in overall capacity of the beams.
[0122] Another assumption is that a shared power constraint applies to the plurality of beams. An example where such a constraint applies comes in the context of a satellite that uses multiple transponders to illuminate the same patch of ground, and the techniques disclosed herein allow one beam to use power not used by another beam. The technique further applies in cases where a satellite has several regional shared power constraints, rather than a single global one. However, in general, the statistical multiplexing gains provided by controlling per beam power as a function of demand are higher with larger numbers of beams subject to the power sharing constraint. Mechanisms for tuning the statistical multiplexing to fewer beams includeany one or more of: increasing the margin, providing faster feedback, and / or using longer modulator queues.
[0123] Further points of variation or extension involve “multi-user” beams or, more generally, multi-user channels. For example, consider Figures 14 and 15.
[0124] Figure 14 illustrates a scheduler 50 with respective transport data queues for “USER1,” “USER2,” through “USER M," where M is an integer number greater than one, and all users are served by a same beam, BEAM1. USER1 may represent a first RCT 16-1, USER2 may represent a second RCT 16-2, and so on. It should be understood that a satellite or other example communications transceiver 10 may include a scheduler and associated transmit circuitry for each one among a plurality of beams, with any one or more of those beams serving more than one user. Also, each user may have more than one user-specific queue, e.g., for queuing different transport data associated with different communications sessions or services.
[0125] Figure 15 illustrates a corresponding user beam coverage area illuminated by BEAM1, with USER1, USER2, USER3, through USERA1 being located in the user beam coverage area. In an example context, BEAM1 is a forward user beam and the user beam coverage area is a forward user beam coverage area. Assuming that the beam is centered on the user beam coverage area — highest beam strength at the center of the coverage area and falling off towards the coverage area border — different users experience different channel qualities, in dependence on their position within the user beam coverage area. Figure 15 depicts example channel qualities for various users at different locations.
[0126] In adapting the foregoing techniques especially to the multi-user beam case, each user served by the beam can independently report channel qualities back to scheduler 50. Rather than controlling the maximum modcode available to the scheduler 50, the PSF may instead indicate a maximum power usable by the scheduler 50. For example, with respect to a plurality of schedulers 50, each associated with a multi-user beam, the PSF may indicate maximum powers usable by each scheduler 50, with respect to individual scheduling intervals.
[0127] Questions of particular interest in the multi-user beam context include the question of how resources are allocated fairly when there is congestion (excess aggregate power demand). Another interesting question in the multi-user beam case is how beam power is computed for a beam serving multiple users reporting different channel qualities.
[0128] To explore these questions, consider a baseline scenario where there are multiple beams or other type of multiple channels 14, and where there is one user per beam or channel. (As noted, that one user may be a gateway device serving multiple downstream devices, but there is a single channel quality at issue.)
[0129] In the baseline case, each scheduler 50 is given maximum power Pmax (e.g., -lOdB) and there is one user reporting channel quality for decision making. Similarly, there is just one queue with B enqueued bytes awaiting transmission in each scheduling interval. Assuming a fixed symbol rate for transmitting on the beam or other channel, e.g., a symbol rate of 500e6 symbols per second, the goal is to empty the queue(s) in T seconds, where T denotes the length of the scheduling interval. As noted, T may be of essentially any value, with 100 milliseconds being one example. In this baseline scenario, the scheduler 50 can easily convert or map between SINR and modcode efficiency.
[0130] For each scheduling interval, the scheduler 50 (1) computes the maximum SINR as SINRMAX = PMAx + Q; (2) computes the maximum capacity in bytes as BMAX=R*T*S’2E(SMAX) / 8, where S2E( ) denotes the SINR-to-Efficiency mapping; (3) if the amount of data queued for transmission in the interval BENQUEUED >= BMAX, then the beam is congested and the required power PREQUIRED = PMAX and the modcode corresponding to SMA is selected; (4) if BENQUEUED < BMAX, then the beam is not congested and minimum modcode selection and power setting is used, wherein the scheduler 50 (i) computes the required efficiency for draining the enqueued data as EREQUIRED = BENQUEUED *8 / (R*T), (ii) computes the required SINR as SINRREQUIRED = E2S(EREQUIRED), where E2S( ) is the efficiency to modcode mapping function and where the scheduler 50 uses the modcode associated with SINRREQUIRED. and (iii) computes the required power for the beam as PREQUIRED = SINRREQUIRED * Q.
[0131] In the more difficult multi-user beam scenario, each scheduler 50 is given a maximum power PMAX, e.g., PMAX = -10 dB. With more than one user reporting channel quality for each beam, each reported channel quality is associated with unique Quality-of-Service (QoS) parameters, such as weight, priority, etc. As a further complication, the amount of data enqueued for transmission in any given interval may be different for the different users. However, the goal remains emptying the queue(s) for each user served by the beam in each scheduling interval.
[0132] An example algorithm for a scheduler 50 handling a multi-user beam or other type of multi-user channel 14 is as follows: (1) compute maximum SINRMAX = PMAX + Q; (2) compute maximum capacity in bytes BMAX = R*T*S2E(SMAX) / 8; (3) add up the enqueued bytes in all the queues and call it BTOTAL; (4) if BTOTAL >= BMAX, then beam is congested and the required power PREQUIRED = PMAX and the modcode associated with SMAX is selected... this may be done so that BMAX is fairly divided across the different user queues according to their QoS parameter, e.g., using a weighted fair share algorithm or a multi-priority weighted fair share algorithm; (5) if BTOTAL < BMAX, then the beam is not congested and the scheduler 50 performs minimum modcode selection and corresponding required-power computation based on (i) computing the required efficiency EREQUIRED = BTOTAL * (8 / (R*T), (ii) computing the required SINRREQUIRED =E2S (EREQUIRED), (iii) computing the required SINRREQUIRED = E2S(EREQUIRED) and using the modcode associated with SINRREQUIRED. Here, all queues of all users sharing the beam or other channel 14 are depleted within the involved scheduling interval, so no fairness computation is needed.
[0133] The immediately foregoing algorithm may be modified for use in even more challenging situations where, for a given beam or other channel 14, there are many users and many queues. The algorithm for per beam / channel power control with respect to each scheduling interval then becomes: (1) set a guessed required power PGUESS to PMAX; (2) compute the efficiency of each user as EUSE = S2E'(PGUESS + QUSER), noting that these are also the efficiencies of the queues associated with each user; (3) run a "symbols-based bits-fair QoS function" to determine how many bytes each queue gets, where (i) total capacity is R*T symbols, (ii) priorities MRTRs and MSTRs are treated in the usual way, (iii) the weight of each queue is scaled by the inverse of its efficiency, such as WNEW = WUSER_ORIGINAL / EUSER, such that, with all else equal, a user with twice the efficiency will get half as many symbols in the interval, resulting in fair allocations when measured in bits, where (iv) the fair QoS function returns BQUEUE, indicating the number of bytes allocated to each queue and SREMAINING indicates the symbols remaining in the interval after giving each queue the number of symbols needed; (4) if SREMAINING = 0, then the beam is congested and the power required for the beam for the involved interval (PREQUIRED) is set to PGUESS, with the scheduler 50 using the modcodes for each user queue associated with user efficiency EUSER; (5) if SREMAINING > 0, then the PGUESS was more power than was required to empty the queues, with the scheduler 50 responding by reducing PGUESS and repeating steps 2-5 until SREMAINING is about 0. One method for computing the next power guess isPGUESS = PGUESS_PREVIOUS *(R*T - SREMAINING) / (R*T).
[0134] From a high-level design perspective, per channel power control as disclosed herein brings with it a number of advantages, with an example advantage being the elimination or substantial reduction of padding -byte transmissions by a scheduler 50 on a channel 14. Rather than using the maximum modcode supported by current channel conditions applicable to a given scheduling interval, the scheduler chooses the minimum modcode — i.e., the most robust I least spectrally efficient one among the modcodes available for selection that still provides for transmission of all of the data queued for transmission on the channel 14 in the scheduling interval. In the physical layer (PHY), rather than applying a fixed channel power, the example communications transceiver 10 instead uses the minimum power required to close the link for the minimum modcode.
[0135] For example, consider a single-user beam with a mobile terminal that usually requires 10Mbps but occasionally requires bursts of 150Mbps. Say the beam has 10 timeslots on a 458Msps carrier, and then when given 0.5% of sampling channel power, the beam's SINR is 7dB. Because the beam uses 10 out of 64 timeslots, it has an effective symbol rate of 72Msps. When demand is 10Mbps, then a modcode with efficiency of 10Mbps / 72Msps = 0.14 bits per symbol is required. Loosely, the modcode BPSK 1 / 2 spread-factor-3 can achieve this efficiency. It requires -5dB SINR. If the beam can get 7dB at 0.5% power, then it requires 0.03% power for -5dB. When demand is 150Mbps, then a modcode with efficiency of 150Mbps / 72Msps = 2.2 bits per symbol is required. Loosely, the modcode 8PSK 3 / 4 can achieve this efficiency. It requires 9.6dB SINR and 0.9% of beam power.
[0136] Thus, the term minimum modcode or depletion modcode refers to the modcode required for the scheduler 50 to deplete its queues over the involved scheduling interval. Note that for single-user beams or other channel types, there may be many queues but only a single modcode for transport data. In operation with respect to successive scheduling intervals, the scheduler 50 determines the depletion modcode to use for transport-data transmission in each interval, and it determines the corresponding beam / channel power for each such interval based on the depletion modcode.
[0137] With the depletion modcode possibly changing from one interval to the next, the SINR of the beam or other channel may change correspondingly. More specifically, for each timeslot or other scheduling interval, the SINR of the beam needs to match the threshold SINR corresponding to the modcode selected for the interval (possibly with margin added to account for imperfect channel feedback, delays, etc.), so that just the bare minimum power is used on the beam.
[0138] In a linear channel with negligible interference, the end-to-end SINR of a beam varies linearly with its power P, and the scheduler 50 can compute one from the other if “channel quality” Q is known for the beam. In dB, the relationship looks like this: SINR = P + Q.Consider the following example where the beam power is 0 dB relative to some reference power, and this corresponds to a SINR of 5 dB. In this case, channel quality Q = SINR - P or 5 dB - 0 dB = 5 dB. As another example, assume a relative beam power of 3 dB and a SINR of 8 dB, yielding a corresponding channel quality Q of 8 dB - 3 dB = 5 dB.
[0139] Thus, channel quality pins down the relationship between beam power and SINR, or, more generally, between channel power and SINR. In effect, Q captures all the features of the channel (like antenna gain, noise, rain fade, etc.) while abstracting away the beam power. As long as beam powers are not allowed to be too high, and if beams using the same REB arespaced far enough apart, then channels will be both linear and have negligible interference. In such contexts, channel quality Q changes on a slow timescale.
[0140] With channel quality known for the beam, computing the correct beam power is simple, once the modcode is selected. For each scheduling interval, the scheduler 50 selects the modcode to use for that interval, looks up the threshold SINR required for the selected modcode, and computes the required power for the beam for this interval as PREQUIRED = SINRMODCODE -Q. As noted, however, the scheduler 50 may add margin, e.g., 0.2dB.
[0141] As for applying the required beam power, one mechanism is scaling the digital samples by the square root of the required power. Here linear power, rather than dB, is computed. See, e.g., the scaling circuits 166-1 through 166-N shown in Figure 12. In that same context, then, the example schedulers 50-1 through 50-A may be understood as embedding the per-interval required power values in one or more of the MAC frames being generated for the interval, e.g., in the first MAC frame generated for each interval. These embedded values can be read and applied for amplitude scaling in the digital domain.
[0142] As for measuring the channel quality Q of a beam or other type of channel 14, the RCT 16 served by the beam is informed of the beam power for each scheduling interval.Correspondingly, in one or more embodiments, the RCT 16 is configured to compute, aggregate, and report channel qualities Q instead of SINR. For example, for each scheduling interval t, the instantaneous power P(t) of the beam is embedded in the waveform header or provided to the RCT 16 in a management message.
[0143] The RCT 16 computes channel quality Q(t) = SINR(t) - P(t), and it repeats this process for each scheduling interval in a succession of scheduling intervals. On a defined periodic interval, independently for each interval t, the RCT 16 averages all previous Q(t) measurements since the last interval. At this point, the RCT 16 has one average channel quality value for each timeslot and it sends these values back to the scheduler 50 over a return link.
[0144] Now consider total required power and total available power with respect to a plurality of beams or other channels 14 that all share power. Assume that transmit powers are computed for all beams in the manner described above. On a large beamformed geostationary satellite, this could be thousands of beams. Now consider any given scheduling interval, which could be allocated to up to several hundred beams depending on the reuse and time coloring. The modulator 36 associated with the beam will be receiving MAC frames from the corresponding scheduler 50 at the depletion modcode, with an associated power level which has been computed based on the channel quality of the beam for that timeslot. The sum of per-beam powers is a total power (TP) for the involved scheduling interval and how TP relates to the total satellite payloadpower constraint, referred to as available power or AP, is important and, as explained herein, may be addressed using aggregate power control.
[0145] Figure 16 illustrates an overall schematic for implementation of per channel and aggregate power control in a communications system 22 for a plurality of channels 14. Here, the channels 14 are realized as forward link (FL) beams 200, with each FL beam 200 serving a respective one or more RCTs 16. In one example, each FL beam 200 illuminates a respective forward user beam coverage area and carries user traffic for the RCT(s) 16 located in that forward user beam coverage area. Power indications are also carried on each FL beam 200, indicating transmit power used for the beam, in association with the per channel power control disclosed herein, which is based on minimum modcode selection.
[0146] To that end, there is a MAC layer processing block 202 for each FL beam 200, which includes one or more queues 204 that are configured for queuing transport data to be transmitted on the corresponding FL beam 200 in respective scheduling intervals. A scheduling function 206 handles the scheduling, including selecting the modcode to be used with respect to each scheduling interval and correspondingly determines the per interval power to be used. These operations depend on channel quality feedback — shown as feedback 210 in the diagram- provided by the RCTs 16 for the respective FL beams 200, and further depend on modcode restriction signaling 212 provided by a resource manager 214. The resource manager 214 can be understood as being an example of the aforementioned aggregate power control function 44.
[0147] The resource manager 214 uses the modcode restriction signaling 212 to limit the maximum modcode(s) selectable by the MAC layer processing blocks 202, to limit the aggregate power demand represented by the FL beams 200. In the illustrated embodiment, the per interval beam power determinations flow from the MAC layer processing blocks 202 into the resource manager 214 as beam power indications 216. The resource manager 214 tracks or otherwise monitors the per beam powers for each scheduling interval, for determination of a total power (TP) associated with the FL beams 200.
[0148] In at least one embodiment, the resource manager 214 stores TPs and / or TP statistics in a TP database 218, and an included modcode restriction controller 220 generates the modcode restriction signaling 212 in dependence on its tracking of TP for the FL beams 200. Additionally, or alternatively, the resource manager 214 includes a beam activation controller 222 that generates activation control signaling 224 on a per beam or per beam-group basis, to control the number of FL beams 200 that are active with respect to given scheduling intervals. Inactive FL beams 200 are not transmitted, which can be understood as allocating zero power to them. The modcode restriction signaling 212 indirectly influences TP by limiting the maximum modcodes selectable for use with any one or more of the FL beams 200, and the activation control signaling224 directly influences TP by limiting how many and / or which ones among the overall plurality of FL beams 200 are active with respect to given scheduling intervals.
[0149] While the modcode restriction signaling 212 influences operation of the MAC layer processing blocks 202, the activation control signaling 224 flows into physical layer blocks 230, which are implemented at least functionally on a per beam basis. Each physical layer block 230 receives MAC layer frames and beam power (BP) indications from a corresponding one of the MAC layer processing blocks 202. The blocks 230 represent a further example implementation of the blocks 58 discussed earlier.
[0150] Modulator circuitry 232 generates modulated data 234 in the digital domain. A gating or deactivation circuit 236 does or does not pass the modulated data 234 to a scaling circuit 238, in dependence on the associated activation control signaling 224. If that signaling 224 indicates that the corresponding FL beam 200 is deactivated, the data is not passed and the beam is zero power for the affected intervals. If the FL beam 200 is active — not deactivated — the modulated data 234 flows into the scaling circuit 238, which applies amplitude scaling according to the indicated BP, i.e., the amplitudes of the modulated data samples are scaled according to [BP, where BP is the indicated beam power for each scheduling interval.
[0151] Resulting power-scaled data 240 flows into a beamformer (BF) 242, which forms a weighted set of signal samples using a beam weight (BW) set 244. There is a respective BW set 244 for each FL beam 200, with each set calculated in dependence on corresponding channel information. The resulting signal samples 246 flow to associated transmitters 248 and the satellite 250 that is used in forming the plurality of FL beams 200.
[0152] Because the scheduling function 206 for each FL beam 200 identifies or determines the depletion modcode for each scheduling interval, and because it knows the minimum SINRs per modcode and the applicable channel quality, it has everything needed to compute the required BP for each scheduling interval. To provide for the channel quality feedback from one or more of the RCTs 16 served by the associated FL beam 200, for each scheduling interval, the scheduling function 206 embeds the BP in one or more of the MAC frames sent for that scheduling interval, e.g., in at least the first MAC frame. As such, a RCT 16 reports channel quality feedback based on receiving an indication of the BP used for each scheduling interval, with an example channel quality calculation being:Q(t) = avg([SINR(t,f") — BP(t, f) for all ]), where Q(t) = channel quality for scheduling interval t, and BP is the indicated beam power for scheduling interval t.
[0153] As an overview of the operations and advantages provided by the example arrangement shown in Figure 16, the arrangement: (1) eliminates or reduces the need fortransmitting padding bytes, based on the general proposition of using depletion modcodes for each FL beam 200 and for each scheduling interval, with the depletion modcode for any given scheduling interval and for any given FL beam 200 being a function of queue length for that interval; (2) transmitting the FL beams 200 at dynamic (varying) power levels according to the depletion modcodes, such that per beam powers “track” corresponding per beam channel quality, with beam powers generally set at just the power needed to close the link; and (3) controlling total power (TP) of the plurality of FL beams 200; for example, when TP is less than the available satellite payload power, the PHY layer blocks normalize (i.e., increase) the power of all beams, resulting in higher-than-necessary SINRs, but, if the TP exceeds the available satellite pay load power, on a per interval basis, supervisory control mechanisms disable some transmissions (and drop or defer the affected data) so that the other beams can use the power they require. In order to limit the frequency of these occurrences, the supervisory control mechanisms — e.g., the resource manager 214 — receives feedback from the PHY layer blocks on the statistical distribution of the sum-total power and correspondingly determines the maximum modcode restrictions applicable to one or more of the FL beams 200. Scheduling functions 206 of the modcode restricted beams encode using the depletion modcode for each interval, unless the depletion modcode exceeds the maximum allowed modcode.
[0154] While the power control described in the above item (3) provides sufficient control for minimizing frame errors, there is some attendant capacity waste. Consider that the total required power across a large enough plurality of FL beams 200 follows a Gaussian distribution. Thus, for the 99.999th percentile (i.e., 10-5) occurrence to require exactly the total available payload power, the mean occurrence must require significantly less than what is available. Put simply, for most of the time, the TP needed for the plurality of FL beams 200 using the depletion modcode scheme will be well below any available power limits.
[0155] PHY layer queuing represents one way to avoid the capacity waste mentioned above. This approach involves controlling the TP to be just below 100% of the available power (AP), which means that, absent aggregate power control, the required TP will exceed the AP about half of the time. To avoid that issue, selective beam deactivation is used, as described above. For a disabled beam, the data that would have been transmitted absent the disabling may be queued for later transmission. This deferred data may be transmitted in one or more subsequent scheduling intervals during which the beam is not disabled and the TP is than the AP.
[0156] The overall arrangement shown in Figure 16 represents one approach to managing power demands placed on the satellite 250. That is, the operations associated with Figure 16 provide ongoing per channel and aggregate power control that limits or otherwise manages the power demands placed on the onboard transmitter(s) of the satellite 250 with respect toformation of the FL beams 200. Advantageously, such control may be managed within the ground segment of the involved satellite communications system.
[0157] In Figure 16, the signal samples 246 inherently reflect the ongoing per channel and aggregate power control decisions being made by the ground-segment processing circuitry, which includes the resource manager 214 for aggregate power control, and the MAC layer processing blocks 202 for per channel power control. Specifically, the signal samples 246 are formed using minimum-mode code selections and modcode restrictions. Further, the signal samples 246 reflect the individual or group activation / deactivation decisions made with respect to the overall plurality of FL beams 200 because there is no data in the signal samples 246 for deactivated FL beams 200.
[0158] In more detailed terms, there is no power-scaled data 240 generated for deactivated FL beams 200 and, for activated FL beams 200, the power-scaled data 240 depends on the minimum-modcode selections made by the MAC layer processing blocks 202, and those selections depend on the modcode restrictions decided by the resource manager 214. Thus, the uplink data received by the satellite 250 via the feeder uplink transmissions from the transmitters 248 implicitly controls or otherwise limits the power demands placed on the onboard transmitters of the satellite 250 used for formation of the FL beams 200. In this regard, the signal samples 246 in one or more embodiments comprise a sample stream per transmitter 248, with each transmitter 248 forming its feeder uplink signal from its incoming sample stream.
[0159] To better understand this stream arrangement, consider that there is a stream of power-scaled data 240 for each active FL beam 200, and there is a corresponding beam weight set 244 comprising an array of complex coefficients corresponding to antenna elements of a phased array onboard the satellite 250. Assuming N antenna elements, the BF 242 forms N weighted signals for each stream of power-scaled data 240, with each such weighted signal being weighted for transmission from a respective one of the N antenna elements, according to the beam weight corresponding to that element. These sets of weighted signals comprise the signals samples 246, and each one of the transmitters 248 may transmit one or more of the sets, e.g., depending upon feeder-link bandwidth, etc.
[0160] In comparing the example implementation of Figure 16 with the example implementation depicted in Figure 1, the combination of the physical layer blocks 230, the beamformer 242, the ground-station transmitters 248, and the satellite 250 corresponds with the communications transceiver 10 of Figure 1. Of course, as explained above, it is the transmit power demands placed on the onboard transmi tter(s) of the satellite 250 that is managed by the per channel and aggregate power control operations, rather than the power demands placed on the ground-station transmitters 248. Indeed, the power control operations are “transparent” to theground- station transmitters 248, which perform feeder uplink transmissions according to feeder uplink power control driven by feeder uplink quality considerations.
[0161] The example arrangement depicted in Figure 16 may be modified to provide for PHY layer data queueing, as shown in Figure 17, where the communications system 22 serves respective RCTs 16 or respective groups of RCTs 16 using a plurality of FL beams 300. As with Figure 16, the described per channel and aggregate power control operations control or otherwise limit the onboard power required in the satellite 336 used in forming the plurality of FL beams 300.
[0162] Data packets incoming from the Internet or other data source await transmission inside service flow queues 304 of per beam MAC layer processing blocks 302. Each MAC layer processing block 302 includes a scheduling function 306. Like the scheduling functions 206 shown in Figure 16, the per beam scheduling functions 306 select the modcode to use for encoding the data to be transmitted in each one in a succession of scheduling intervals.Specifically, each scheduling function 306 performs minimum modcode — depletion modcode — selection with respect to each interval, subject to any modcode selection restrictions that are imposed via modcode restriction signaling 308 output by a resource manager 310.
[0163] Unlike the scheduling functions 206, however, the scheduling functions 306 do not compute the beam powers (BPs) to be used with respect to each scheduling interval. Thus, each per beam scheduling function 306 simply provides MAC frames to a corresponding per beam PHY layer block 312. Here, each PHY layer block 312 includes a FIFO 314 that enqueues all MAC frames incoming from the associated scheduling function 306. In particular, the FIFO 314 in one or more embodiments includes buffering on a per interval basis, such that all MAC frames generated by the associated scheduling function 306 for each scheduling interval are queued together.
[0164] An associated gating circuit 316 in each PHY layer block 312 controls whether the MAC frames for a given scheduling interval are de-queued from the FIFO 314 for transmission on the corresponding FL beam 300, in dependence on per beam activation signaling 318 provided by the resource manager 310. For each scheduling interval for which the associated FL beam 300 is active, the gating circuit 316 provides the dequeued MAC frames to a modulator 321, which outputs corresponding modulated data 322 to a power scaler 324. The power scaler 324 amplitude- scales the modulated data samples according to a beam power (BP) value to produce scaled samples 326, which are input to a beamformer 328.
[0165] The beamformer 328, which comprises one or more Field Programmable Gate Arrays (FPGAs) or digital signal processors (DSPs) and associated buffers, for example, forms beam weighted signal samples 330 corresponding to each FL beam 300, according to a respectivebeam weight set 332. These weighted signal samples 330 flow to one or more associated groundstation transmitters 334 for feeder uplink transmission to the satellite 336, for formation of the FL beams 300. As with the arrangement detailed in Figure 16, the power control decisions made and imposed in the ground segment — via the MAC layer processing blocks 302, the physical layer blocks 312, and the resource manager 310 — are inherently reflected or captured in the scaled samples 326 in the sense that no scaled samples 326 are generated for deactivated FL beams 300 and the scaled samples 326 generated for activated FL beams 300 are generated according to the minimum modcode selections and modcode restrictions.
[0166] Here, the resource manager 310 uses channel quality feedback 340 from the RCTs 16 served via the respective FL beams 300 for computation of the required BPs. In contrast, in the context of Figure 16, each scheduling function 206 receives channel quality feedback for the corresponding FL beam 200 and computes the required BP on a per interval basis.
[0167] The resource manager 310 in the embodiment shown in Figure 17 includes a beam power (BP) computer 320 that computes the required power for each FL beam 300. In particular, the RCTs 16 providing the channel quality feedback do so based on measuring SINR for each scheduling interval as Q = SINR - P, where P is the beam power indicated for the scheduling interval and SINR is as measured at each reporting RCT 16. Correspondingly, the BP computer 320 computes the required BP for each FL beam 300 for each scheduling interval, given the modcode applied by the corresponding scheduling function 306 for that interval.
[0168] Particularly, the BP computer 320 computes the required BP for each FL beam based on the modcode used for data queued at the head of the corresponding FIFO 314, and the channel quality applicable to that data. In one approach to beam deactivation control, the resource manager 310 includes a beam activation controller 342 that prevents the TP from exceeding the AP by deactivating selected FL beams 300 for one or more scheduling intervals. The beam activation controller 342 outputs activation control signaling 344 to indicate its activation control decisions. In one approach, the FL beams 300 having the shortest FIFO queues — the least amount of enqueued data in their respective FIFOs 314 — are allocated zero power until the TP is below the AP. The corresponding gating circuits 316 respond by operating as follows: if the allocated BP is zero, the gating circuit 316 does not dequeue data from the FIFO 314; however, if the allocated BP is not zero, the gating circuit 316 dequeues data from the FIFO 314, with the dequeued MAC frames flowing into the modulator 321. These operations apply per scheduling interval.
[0169] In one or more embodiments, the resource manager 310 includes a modcode restriction controller 346, which monitors the total power (TP) used across the FL beams 300, such as may be tracked and stored in a TP database 348. The modcode restriction controller 346monitors the TP and adjusts the maximum modcodes allowable for use by some or all of the scheduling functions 306, in dependence on how close the TP is to the AP. For example, the modcode restriction controller 346 imposes or lifts (or otherwise adjusts) the modcode restrictions as needed, to maintain the TP at ninety-five percent (or some other utilization threshold) of the AP. Note, too, that in at least one embodiment, the resource manager 310 monitors the FIFO 314 for each FL beam 300 and adjusts the scheduling transmit duty cycles to avoid backing up the FIFOs 314.
[0170] In a functional sense, the per beam FIFOs 314 and the associated gating circuits 316 may be considered to be part of the resource manager 310, such that the resource manager 310 can be understood as “intercepting” the per interval MAC frames encoded by the per beam scheduling functions 306. Alternatively, the resource manager 310 may be understood as having visibility into the state of each FIFO 314, e.g., via FIFO status signaling 338. In any case, the resource manager 310 maintains an awareness of the state of each FIFO 314, including how the amount or number of MAC frames buffered for each scheduling interval and the modcode used to encode those MAC frames.
[0171] Use of the FIFOs 314 allows the involved satellite 336 to remain fully utilized all of the time — that is, its AP may be fully allocated across all active FL beams 300. This full utilization results from the described approach. Namely, when the computed TP exceeds the AP, the FIFOs 314 for one or more of the FL beams 300 are gated off, by allocating zero BP. The gated data remains queued for the affected beams and when the TP falls below the AP, this queued (deferred) data may be transmitted. In a particular example, if the TP for a given scheduling interval is less than the AP, all BPs for that interval are normalized (i.e., increased) such that they add up to exactly the AP, where AP is the satellite payload power in this example. The MAC frames at the head of each FIFO 314 for each FL beam 300 can then be forwarded to the corresponding modulator 321. However, if for a given interval, the TP will exceed the AP, the resource manager 310 selects the FL beams 300 having the shortest FIFO queues — as evaluated based on the data fill levels or occupancy of the respective FIFOs 314 — and sets the BPs for those beams to zero. This operation is repeated until the TP is less than the AP, at which point a small amount of normalization may be performed, to make the TP equal the AP. Because the beams with the shortest FIFOs are delayed, all beams experience the same FIFO delay (plus or minus one interval). In practice, these delays can be kept negligible.
[0172] For each FL beam 300 that is not gated off in any given scheduling interval, one approach to indicating the per interval BP used for the beam is for the associated scheduling function 306 to add a placeholder field to the first MAC frame encoded for the interval, with thatfield then used to indicate the BP computed by the BP computer 320 for the beam. That indicated BP then flows to the associated RCT(s) 16 as part of the overall transmission of data.
[0173] Resource management feedback provided to the scheduling functions 306 in the context of Figure 17 take two forms. First, the scheduling functions 306 receive maximum-modcode feedback, to restrict the modcodes allowed for selection. Second, the scheduling functions 306 receive transmit duty cycle feedback. This second type of feedback solves the problem wherein each MAC layer processing block 302 will, as a general proposition, transmit a bundle of MAC frames to the corresponding PHY layer block 312, for each scheduling interval. When the involved FL beam 300 has low demand, those MAC frames will be encoded using lower-efficiency ones among the set of available modcodes. Thus, unless demand is zero, there will be MAC frames flowing to the associated PHY layer block 312 for each scheduling interval.
[0174] The resulting problem is that when the TP across all FL beams 300 exceeds the AP, some beams are gated off. For example, assume that a particular one of the FL beams 300 is deactivated once every one-hundred scheduling intervals. In this sense, although data is transmitted from the PHY layer block 312 for only ninety -nine scheduling intervals, data flows into the PHY layer block 312 for one hundred scheduling intervals. As a consequence, the queue length of fill level of the involved FIFO 314 necessarily grows over time.
[0175] To solve this problem, the scheduling function 306 must occasionally transmit nothing to the PHY layer block 312. In the example above, omitting a transmission once every one-hundred scheduling intervals would be sufficient. Many dynamic mechanisms can be envisioned to solve this problem, but a relatively simple approach which work well is as follows.
[0176] For each FL beam 300, the resource manager 310 monitors the FIFO blockage rate, which is how often a bundle of MAC frames at the head of the FIFO queue existed but was not transmitted and it converts this blockage rate to a duty cycle by subtracting it from 100%. For example, with the beam blocked for one scheduling interval per every one hundred scheduling intervals, the blockage rate is 1% and the duty cycle is 100% - 1% = 99%.
[0177] Periodically, such as every one second, the resource manager 310 decreases that duty cycle by some small amount, e.g., from 99% to 95%, and instructs the scheduling function 306 to adhere to that duty cycle by periodically omitting transmissions. This mechanism ensures that over the long run that the involved FIFO 314 does not overfill. Broadly, then, the maximum modcode control manages the TP, while the transmit duty cycle control keeps the FIFO queues from growing indefinitely.
[0178] The arrangements and attendant operations associated with Figures 16 and 17 rely on channel quality feedback to compute the BPs on a per scheduling interval basis. Channel quality encapsulates the gain, noise, and interference present in a channel. A RCT 16 reporting channelquality must measure it and report it. Thus, the channel quality feedback process inherently has at best one round-trip-time (RTT) of delay. RTT for a geostationary satellite link is about 500 milliseconds.
[0179] However, inter-beam interference can change as fast as the beams change power. Consequently, the actual channel quality for a particular FL beam 300 with respect to a particular scheduling interval is known only to the extent that the most recent channel quality feedback received for that FL beam 300 is not stale. For example, the actual channel quality applicable to the scheduling interval of interest may be worse than estimated, because a nearby interfering beam has a temporarily high BP.
[0180] One approach to reducing this staleness problem is adding margin, in encoding and / or BP calculation, resulting in the decoded signal at the involved RCTs 16 being slightly better than the minimum needed to close the link according to the reported channel quality. Another approach is to use a wider beam spacing, to reduce the root problem of inter-beam interference. Still another mitigation is limiting the maximum BP permitted. Of course, all three of these approaches introduce some measure of inefficiency or some degree of capacity underutilization.
[0181] A better, more advantageous approach involves accounting for inter-beam coupling coefficients among the plurality of FL beams 300. Of course, the approach extends to other kinds of channels 14 and may be understood more generally as accounting for inter-channel interference among a plurality of channels 14 used simultaneously for transmission, where the channels 14 share an available power.
[0182] Operations described for the arrangement depicted in Figure 17 is modified according to one or more embodiments to incorporate the use of inter-beam coupling coefficients into the beam power calculations, to more accurately predict interference. As a first modification, the beamformers 328 compute a coupling matrix C, asC = |H * B|2,where H is the channel matrix and B is the beamforming matrix, and where this calculation is done for each REB.
[0183] These coupling matrix determinations are provided to the resource manager 310. With dimensions N x M, the n, m element of C signifies how much beam power for the m-th beam is going into the n-th beam. The BP computer 320 adapts its calculations of the required BPs for the FL beams 300, in dependence on the beam couplings. For example, if beam m requires a high power due to high demand and the coupling matrix C indicates that beam m strongly interferes with beam n, then the BP computer 320 allocates a bit more power to beam n (i.e., more power than would have been allocated without consideration of inter-beam interference).
[0184] The coupling matrix calculations and power determinations may be done for each beamforming solution which has a different channel matrix H and beamforming matrix B. Further, the SINR for any given beam b among the plurality of FL beams 300 can be computed according to the following formula:\HB\SINRb2b,b*Pb= - H2- -b,Lub\ B\2b l*Pl+Qb'where Pnis the required power for the n-th beam, | HB |„mis the coupling coefficient from beam m into beam n, and Qbis a channel quality that encapsulates all other SINR-degrading aspects of the beam- / ? channel, including gain, fade, and noise.
[0185] The “job” of the BP computer 320 in this context is to compute the required power, and the required BP for each FL beam 300, with respect to each scheduling interval. Using P„ to denote the BP calculation for the n-th beam (Ptl) are based on: (i) the coupling matrix |HB|2, (ii) the value Qb for each beam b, which is tracked and reported by the reporting RCTs 16, and (iii) the SINR for each beam, which is based on the modcode used for the beam.
[0186] With this approach, for N beams, the problem comprises a system of Al equations with N unknowns. Therefore, a solution exists.
[0187] For the system of equations to be solvable, the value Qb for each beam b must be known. Note that each scheduling interval will have a slightly different Q. An example algorithm for the BP computer 320 determining Q for each beam b is as follows: (1) For each scheduling interval, a RCT 16 on beam b is informed of two values, including its received signal power \HB \b* Pband its total received interference power
[0188] The reporting RCT 16 computes Qb for a given scheduling interval asQb = '“S OMilN Kfr* ~ ZubWB^i * Pi (Eq. 1)where SINRb is the SINR measured by the RCT 16 for the scheduling interval.
[0189] Over time, e.g., over one frame comprising a plurality of scheduling intervals, the RCT 16 will have a Qb for each such interval. Over many such frames, the RCT 16 may average its Qb measurements. Periodically, the RCT 16 reports the averaged Qb measurement for scheduling interval.
[0190] Iterative beam power computation using coupling coefficients may be performed, once the channel qualities Qb), required SINRs, and coupling coefficients are known, for a given scheduling interval with N beams active. This system of N equations has N unknowns, which are the per beam power. Further, there is the additional constraint that the sum of all the beam transmit powers cannot exceed the AP.
[0191] An example iterative algorithm for solving such a problem with arbitrarily low error is as follows. In practice, beam powers to within about 0.1 dB of the exact correct power are known after about five iterations.
[0192] First, all beams are logically assigned zero power and then the power for each beam is computed by solving for P;, in Eq. 1, given the powers of all other beams from the previous step, along with the coupling coefficients, and channel quality determined for the beam.
[0193] If the sum of these beam powers exceeds available payload power, respective beams are turned off (i.e., they get 0 power and cannot transmit) until the sum falls back below available payload power. Again, the beams with the shortest FIFO queues are turned off first. These steps may be repeated until the beam powers converge — i.e., until the changes in beam powers from one iteration to the next is below some threshold.
[0194] Another issue is preventing an interference “arms race.” Consider a scenario where two beams interfere with each other but no other beams. A closed-form expression for the power of either beam can be derived as:_ S1S2Ki2N2+SiNi11 — S1S2K12K21where Pi is the power for beam 1, Si and S2 are the required SINRs for beams 1 and 2 (based on the modcodes to be used for beams 1 and 2, for the involved scheduling interval), Ni and N2 are the noise / gain terms for beams 1 and 2, and Kxyis the coupling coefficient from beam y into beam x, and the coupling terms are normalized such that KI 1 = 1.
[0195] Notice that when the term Si*S2*Ki2*K2i exceeds 1, there is no solution. K12 and K21 are large when beams 1 and 2 interfere strongly with each other. Si or S2 can be large if beam 1 or beam 2 has high demand and thus needs high SINR. This means that sometimes two beams cannot simultaneously transmit and both close the link at a certain required SINR no matter how much power they are given. This is called an "interference arms race. " The only solution is to turn one of the beams off.
[0196] When computing beam powers, the BP computer 320 in such embodiments must detect these arms races and prevent them from occurring. To do so, the iterative power computation algorithm described above is modified by adding an additional series of steps which occur at the end of each iteration: (1) identify any / all beams with power increase more than ~2x above their initial computed power from the first iteration, (2) of those beams, find the beam A with the shortest FIFO queue, (3) find the beam that interferes most strongly with beam A, denoted here as beam B, (4) turn off beam A or beam B, in dependence on which one has the shortest FIFO queue, and (5) recompute the powers of the beams and determine whether any still have a power increase more than ~2x. If so, repeat the immediately preceding steps 2-5.
[0197] Notably, modifications and other embodiments of the disclosed invention(s) will come to mind to one skilled in the art having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the invention(s) is / are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of this disclosure. Although specific terms may be employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
Claims
1. CLAIMSWhat is claimed is:
1. A method of transmitting bursty transport data on a channel, the method comprising: identifying an amount of transport data to be transmitted on the channel in a corresponding time interval;selecting a modulation and coding scheme (modcode) from a set of available modcodes having respective spectral efficiencies, based on selecting a minimum efficiency one of the modulation codes from the available set which permit the identified amount of transport data to be transmitted on the channel in the corresponding timing interval using a fixed symbol rate;determining a transmit power to use for the transmission, in dependence on a minimum signal-to-interference-and-noise ratio (SINR) required for the selected modcode; andapplying the selected modcode and the determined transmit power for the transmission.
2. The method according to claim 1, wherein determining the transmit power to use for the transmission comprises determining a minimum required transmit power corresponding to the minimum required SINR and according to channel quality feedback received for the channel.
3. The method according to claim 2, wherein determining the transmit power comprises adding a defined margin to the minimum required transmit power.
4. The method according to any one of claims 1-3, wherein the channel is a channel used by a communications system, and wherein the set of available modcodes belong to a set of modcodes defined for use in the communications system.
5. The method according to claim 4, wherein the communications system is a satellite communications system (SCS), and wherein the channel is a forward downlink channel of the SCS.
6. The method according to any one of claims 1-5, wherein the corresponding time interval is one among a plurality of time intervals and the channel is one among a plurality of channels, and wherein the steps of identifying, selecting, determining, and applying are performed as per channel power control procedures used to limit per channel transmit powers in each timeinterval, for statistical multiplexing of an available total transmit power across the plurality of channels as a function of varying per channel demands.
7. The method according to claim 6, wherein the method further comprises performing aggregate power control procedures to control an aggregate transmit power used in each scheduling interval for the plurality of channels, with respect to the available total transmit power.
8. The method according to claim 7, wherein the aggregate power control procedures comprise at least one of:precluding transmission on one or more of the plurality of channels in the corresponding time interval, in conjunction with the aggregate transmit power exceeding the available total transmit power;applying a power normalization across the plurality of channels, in conjunction with the aggregate transmit power not exceeding the available total transmit power.
9. The method according to claim 8, wherein the step of determining the transmit power for any given channel that is precluded with respect to any given time interval comprises setting the transmit power to zero and dropping or buffering the corresponding transport data to have been transmitted during the given time interval.
10. The method according to any one of claims 7-9, wherein the aggregate power control procedures include determining the aggregate transmit power based on observing the per channel transmit powers controlled by the per channel power control procedures.
11. The method according to any one of claims 7-10 wherein the per channel power control procedures comprise, for each given channel and each given time interval, buffering transport data for transmission in the given time interval in a corresponding First- In-First-Out (FIFO) buffer, and transmitting or not transmitting from the corresponding FIFO buffer, in dependence on whether the given channel is or is not currently precluded from transmitting.
12. The method according to claim 11, wherein the aggregate power control procedures include precluding transmission on channels having shortest FIFO buffer lengths among the plurality of channels, in dependence on whether the aggregate transmit power exceeds the available total transmit power.
13. The method according to any one of claims 7-12, wherein the aggregate power control procedures comprise a centralized control function driven by observing the per channel power control procedures, and wherein the per channel power control procedures comprise distributed functions, each distributed function applied independently of the other distributed functions, on a respective one among the plurality of channels.
14. The method according to any one of claims 7-13, wherein the plurality of channels comprises a plurality of forward user beams of a satellite in a satellite communications system and the varying per channel demands comprise varying per beam demands, and wherein the statistical multiplexing of the available total transmit power comprises statistical multiplexing of an overall forward transmission power of the satellite across the plurality of forward user beams.
15. The method according to any one of claims 7-14, wherein the aggregate power control procedures comprise:determining the aggregate transmit power based on observing the per channel transmit powers;monitoring, based on observing the aggregate transmit power over one or more durations, a utilization of the available total transmit power; andadjusting the set of available modcodes for use by the respective per channel power control procedures associated with the plurality of channels, responsive to the utilization of the available total transmit power.
16. The method according to claim 15, wherein adjusting the set of available modcodes comprises:increasing the highest efficiency modcode available for use, responsive to underutilization of the available total transmit power; anddecreasing the highest efficiency modcode available for use, responsive to overutilization of the available total transmit power.
17. A communications system configured for transmitting bursty transport data on a channel, the communication system comprising:transmit circuitry that is configured for transmitting the bursty transport data on the channel; andprocessing circuitry implementing a per channel power control procedure for transmitting the bursty transport data via the transmit circuitry, according to which the processing circuitry is configured to:identify an amount of transport data to be transmitted on the channel in a corresponding time interval;select a modulation and coding scheme (modcode) from a set of available modcodes having respective spectral efficiencies, based on selecting a minimum efficiency one of the modulation codes from the available set which permit the identified amount of transport data to be transmitted on the channel in the corresponding timing interval using a fixed symbol rate; determine a transmit power to use for the transmission, in dependence on a minimum required signal-to-interference-and-noise ratio (SINR) required for the selected modcode; andapply the selected modcode and the determined transmit power for the transmission.
18. The communications system according to claim 17, wherein the processing circuitry is configured to determine a minimum required transmit power corresponding to the minimum required SINR and according to channel quality feedback received for the channel.
19. The communications system according to claim 18, wherein the processing circuitry is configured to determine the transmit power by adding a defined margin to the minimum required transmit power.
20. The communications system according to any one of claims 17-19, wherein the set of available modcodes belong to a set of modcodes defined for use in the communications system.
21. The communications system according to claim 20, wherein the communications system is a satellite communications system (SCS), wherein the channel is a forward downlink channel of the SCS, and wherein the transmit circuitry is onboard a satellite of the SCS.
22. The communications system according to any one of claims 17-21, wherein the corresponding time interval is one among a plurality of time intervals, wherein the channel is one among a plurality of channels, and wherein the processing circuitry is configured to implement the per channel power control procedure independently for each channel in each time interval,for statistical multiplexing of an available total transmit power across the plurality of channels as a function of varying per channel demands.
23. The communications system according to claim 22, wherein the communications system comprises further processing circuitry configured to perform aggregate power control procedures to control an aggregate transmit power used in each scheduling interval for the plurality of channels, with respect to the available total transmit power.
24. The communications system according to claim 23, wherein the aggregate power control procedures comprise at least one of:precluding transmission on one or more of the plurality of channels in the corresponding time interval, in conjunction with the aggregate transmit power exceeding the available total transmit power;applying a power normalization across the plurality of channels, in conjunction with the aggregate transmit power not exceeding the available total transmit power.
25. The communications system according to claim 24, wherein determining the transmit power for any given channel that is precluded with respect to any given time interval comprises setting the transmit power to zero and dropping or buffering the corresponding transport data to have been transmitted during the given time interval.
26. The communications system according to any one of claims 23-25, wherein the aggregate power control procedures include determining the aggregate transmit power based on observing the per channel transmit powers controlled by the respective per channel power control procedures.
27. The communications system according to any one of claims 23-26 wherein, for each given channel and each given time interval, the respective power control procedure comprises buffering transport data for transmission in the given time interval in a corresponding First- In-First-Out (FIFO) buffer, and transmitting or not transmitting from the corresponding FIFO buffer, in dependence on whether the given channel is or is not currently precluded from transmitting.
28. The communications system according to claim 27, wherein the aggregate power control procedures include precluding transmission on channels having shortest FIFO buffer lengthsamong the plurality of channels, in dependence on whether the aggregate transmit power exceeds the available total transmit power.
29. The communications system according to any one of claims 23-28, wherein the aggregate power control procedures comprise a centralized control function implemented via first processing circuitry and driven by observing the respective per channel power control procedures, and wherein the respective per channel power control procedure applied independently for each corresponding channel.
30. The communications system according to any one of claims 23-29, wherein the communications system comprises a satellite communications system (SCS), wherein the plurality of channels comprises a plurality of forward user beams of a satellite in the SCS, wherein varying per channel demands comprise varying per beam demands, and wherein the statistical multiplexing of the available total transmit power comprises statistical multiplexing of an overall forward transmission power of the satellite across the plurality of forward user beams.
31. The communications system according to any one of claims 23-30, wherein the aggregate power control procedures comprise:determining the aggregate transmit power based on observing the per channel transmit powers;monitoring, based on observing the aggregate transmit power over one or more durations, a utilization of the available total transmit power; andadjusting the set of available modcodes for use by the respective per channel power control procedures associated with the plurality of channels, responsive to the utilization of the available total transmit power.
32. The communications system according to claim 31, wherein adjusting the set of available modcodes comprises the processing circuitry being configured to:increase the highest efficiency modcode available for use, responsive to underutilization of the available total transmit power; anddecrease the highest efficiency modcode available for use, responsive to overutilization of the available total transmit power.