Reusing frequencies among high altitude platforms

A method for determining a frequency usage pattern of one or more satellites includes receiving, at data processing hardware, identifications of one or more satellite communication frequencies used by a satellite at corresponding locations of the satellite along a non-geostationary satellite orbit. The method includes determining, by the data processing hardware, a pattern of frequency usage by the satellite at the corresponding locations of the satellite. The method also includes instructing, by the data processing hardware, communication between a high altitude platform and a ground terminal using an identified satellite communication frequency during a non-interfering period of time based on the pattern of frequency usage by the satellite. The high altitude platform has an altitude lower than the satellite.

TECHNICAL FIELD

This disclosure relates to reusing frequencies among high altitude platforms.

BACKGROUND

A communication network is a large distributed system for receiving information (signal) and transmitting the information to a destination. Over the past few decades the demand for communication access has dramatically increased. Although conventional wire and fiber landlines, cellular networks, and geostationary satellite systems have continuously been increasing to accommodate the growth in demand, the existing communication infrastructure is still not large enough to accommodate the increase in demand. Airborne communication networks provisioned for wireless communication services can aid coverage and capacity of the communication network.

An airborne communication network sometimes includes satellites and/or airborne base stations, such as high altitude platform stations (HAPSs). A high altitude platform (HAP) is generally considered a station on an object (e.g., a high-altitude balloon or an aircraft system) at an altitude of 17 to 50 kilometers and at a specified, nominal, fixed point relative to Earth. The station typically has equipment for carrying on communications via radio waves. Generally, the equipment includes a receiver and/or a transmitter, an antenna, and control circuitry. In operation, the HAPS may fly in a particular pattern or along a particular path for a duration of time.

SUMMARY

As a non-geostationary satellite passes over a terrestrial base station, the terrestrial base station may observe a frequency usage pattern of the satellite's communications, while the satellite communicates with other terrestrial base stations and/or airborne base stations. Based on the observed frequency usage pattern, the terrestrial base stations and/or the airborne base stations may use the same frequencies as the satellite communications during non-interfering time periods (e.g., when the satellite is not communicating and/or when the satellite is not overhead, among other scenarios).

One aspect of the disclosure provides a method for reusing frequencies among high altitude platforms. The method includes receiving, at data processing hardware, identifications of one or more satellite communication frequencies used by a satellite at corresponding locations of the satellite along a non-geostationary satellite orbit, and determining, by the data processing hardware, a pattern of frequency usage by the satellite at the corresponding locations of the satellite. The method also includes instructing, by the data processing hardware, communication between a high altitude platform and a ground terminal using an identified satellite communication frequency during a non-interfering period of time based on the pattern of frequency usage by the satellite, the high altitude platform having an altitude lower than the satellite.

Implementations of the disclosure may include one or more of the following optional features. In some implementations, the method includes receiving the identifications of the one or more satellite communication frequencies used by the satellite from mobile devices. The method may also include steering, by the data processing hardware, an antenna of the ground terminal away from the high altitude platform and toward the satellite for a period of time when the ground terminal is not communicating with the high altitude platform. In some examples, the method includes identifying, using the antenna of the ground terminal, the one or more satellite communication frequencies used by the satellite at the corresponding locations of the satellite, and receiving the identifications of the one or more satellite communication frequencies used by the satellite from the ground terminal. The antenna may be a phased array antenna.

In some examples, identifying the one or more satellite communication frequencies used by the satellite includes measuring a signal power at a target frequency band. The method may also include steering the antenna of the ground terminal toward the high altitude platform when the ground terminal communicates with the high altitude platform. The method may also include modifying, by the data processing hardware, a power or a communication frequency. Additionally, the method may include modifying, by the data processing hardware, an activation of any communication beams of a phased array antenna of the ground terminal that pass in a shadow projected by the satellite through the high altitude platform to a ground surface, so as to not interfere with the one or more satellite communication frequencies used by the satellite.

In some implementations, the method includes receiving, at data processing hardware, identifications of one or more target communication frequencies used by at least one other frequency band user and determining, using the data processing hardware, a pattern of frequency usage by the at least one other frequency band user. The method may also include instructing, by the data processing hardware, communication between the ground terminal and the high altitude platform using an identified satellite communication frequency or an identified target communication frequency during a non-interfering period of time based on the pattern of frequency usage by the satellite and the pattern of frequency usage by the other least one frequency band user. In some examples, the method includes predicting, by the data processing hardware, potential communication interferences between each communication beam of the high altitude platform and the satellite based on a satellite map. Determining the pattern of frequency usage by the satellite may include generating the satellite map. The satellite map may include satellite locations of the satellite, and for each satellite location, at least one of a communication frequency or a communication signal power of the satellite. The method may also include predicting, by the data processing hardware, potential communication interferences between each communication beam of the high altitude platform and the satellite based on the pattern of frequency usage by the satellite. For each communication beam of the high altitude platform, the method may include selecting an identified satellite communication frequency for any communications via the communication beam during a corresponding non-interfering period of time for the communication beam.

Another aspect of the disclosure provides a method for reusing frequencies among high altitude platforms. The method includes steering an antenna of a ground terminal away from a high altitude platform and toward a satellite having a non-geostationary satellite orbit for a period of time when the ground terminal is not communicating with the high altitude platform. The high altitude platform has an altitude lower than the satellite. The method also includes identifying, using the antenna of the ground terminal, one or more satellite communication frequencies used by the satellite at corresponding locations of the satellite, and determining, using data processing hardware in communication with the ground terminal, a pattern of frequency usage by the satellite at the corresponding locations of the satellite.

Implementations of the disclosure may include one or more of the following optional features. In some implementations, the antenna of the ground terminal includes a phased array antenna. The method may also include steering the antenna of the ground terminal toward the high altitude platform when the ground terminal communicates with the high altitude platform. The method also includes instructing, by the data processing hardware, communication between the ground terminal and the high altitude platform using an identified satellite communication frequency during a non-interfering period of time based on the pattern of frequency usage by the satellite. The method may further include modifying, by the data processing hardware, a power, a communication frequency, or an activation of any communication beams of the antenna of the grouped terminal that pass in a shadow projected by the satellite through the high altitude platform to a ground surface, when the communication frequency includes the one or more satellite communication frequencies. Identifying the one or more satellite communication frequencies used by the satellite may include measuring a signal power at a target frequency band.

In some examples, the method includes steering the antenna of the ground terminal away from the high altitude platform and toward at least one other band user for another period of time when the ground terminal is not communicating with the high altitude platform. The method may also include identifying, using the phased array antenna of the ground terminal, one or more target communication frequencies used by the at least one other band user, and determining, using data processing hardware in communication with the ground terminal, a pattern of frequency usage by the at least one other band user. The method may further include steering the antenna of the ground terminal toward the high altitude platform when the ground terminal communicates with the high altitude platform. The method may also include instructing, by the data processing hardware, communication between the ground terminal and the high altitude platform using an identified satellite communication frequency or an identified target communication frequency during a non-interfering period of time based on the pattern of frequency usage by the satellite and the pattern of frequency usage by the at least one other band user.

In some examples, the high altitude platform includes a phased array antenna configured to project multiple communication beams toward earth. Each communication has a corresponding communication beam frequency. The method may also include predicting, by the data processing hardware, potential communication interferences between each communication beam of the high altitude platform and the satellite based on the pattern of frequency usage by the satellite. Determining the pattern of frequency usage by the satellite may include generating a satellite map. The satellite map may include satellite locations of the satellite, and for each satellite location, at least one of a communication frequency or a communication signal power of the satellite. For each communication beam of the high altitude platform, the method may include selecting an identified satellite communication frequency as the communication beam frequency during a corresponding non-interfering period of time for the communication beam based on the pattern of frequency usage by the satellite or the predicted potential communication interferences.

DETAILED DESCRIPTION

Referring toFIGS. 1A-1C, in some implementations, a global-scale communication system100includes terrestrial terminals110(e.g., ground base stations), high altitude platform stations (HAPSs) or airborne base stations200, and satellites300. HAPSs and airborne base stations200may be used interchangeably. The terrestrial terminal110may communicate with the satellites300, the satellites300may communicate with the airborne base stations200, and the airborne base stations200may communicate with the terrestrial terminals110. In some examples, the terrestrial terminal110also operates as a linking-terrestrial terminal110linking two satellites300. The terrestrial terminal110may be connected to one or more service providers and the terrestrial terminals110may be user terminals (e.g., mobile devices, residential WiFi devices, home networks, etc.). In some implementations, an airborne base station200is an aerial communication device that operates at high altitudes (e.g., 17-22 km). The airborne base station200may be released into the earth's atmosphere, e.g., by an aircraft, or flown to the desired height. Moreover, the airborne base station200may operate as a quasi-stationary aircraft. In some examples, the airborne base station200is an aircraft200a, such as an unmanned aerial vehicle (UAV); while in other examples, the airborne base station200is a communication balloon200b. The satellite300may be in Low Earth Orbit (LEO), Medium Earth Orbit (MEO), or High Earth Orbit (HEO), including Geosynchronous Earth Orbit (GEO).

The airborne base stations200may move about the earth 5 along a flight path, trajectory, or orbit202(also referred to as a plane, since their orbit or trajectory may approximately form a geometric plane). Moreover, several airborne base stations200may operate in the same or different flight paths202. For example, some airborne base stations200may move approximately along a latitude of the earth 5 (or in a trajectory determined in part by prevailing winds) in a first orbit202a, while other airborne base stations200may move along a different latitude or trajectory in a second orbit202b. The airborne base stations200may be grouped amongst several different flight paths202about the earth 5 and/or they may move along other paths202(e.g., individual paths). Similarly, the satellites300may move along different orbits302,302a-n. Multiple satellites300working in concert form a satellite constellation. The satellites300within the satellite constellation may operate in a coordinated fashion to overlap in ground coverage. In the example shown inFIG. 1B, the satellites300operate in a polar constellation by having the satellites300orbit the poles of the earth 5. Whereas, in the example shown inFIG. 1C, the satellites300operate in a Walker constellation, which covers areas below certain latitudes and provides a larger number of satellites300simultaneously in view of a terrestrial terminal110on the ground (leading to higher availability, fewer dropped connections).

Referring toFIGS. 2A and 2B, in some implementations, an airborne base station200includes an airborne base station body210and a first antenna220disposed on the airborne base station body210. The first antenna220receives a communication20from a satellite300and reroutes the communication20to a destination terrestrial terminal110via a second antenna230and vice versa. In some examples, the first and/or second antenna(s)220,230includes a phased array antenna system (e.g., tracking antenna). The airborne base station200may include a data processing device900that processes the received communication20and determines a path of the communication20to arrive at the destination terrestrial terminals110b(e.g., user terminal). In some implementations, terrestrial terminals110on the ground have specialized antennas that send communication signals to the airborne base stations200. The airborne base station200receiving the communication20sends the communication20to another airborne base station200, to a satellite300, or to another terrestrial terminal110(e.g., a terrestrial terminal110b).

FIG. 2Billustrates an example communication balloon200bthat includes a balloon204(e.g., sized about 49 feet in width and 39 feet in height and filled with helium or hydrogen), an equipment box206as an airborne base station body210, and solar panels208. The equipment box206includes a data processing device900that executes algorithms to determine where the high-altitude balloon200aneeds to go, then each high-altitude balloon200bmoves into a layer of wind blowing in a direction that will take it where it should be going. The equipment box206also includes batteries to store power and a transceiver (e.g., antennas220) to communicate with other devices (e.g., other airborne base stations200, satellites300, terrestrial terminals110, such as terrestrial terminals110b, internet antennas on the ground, etc.). The solar panels208may power the equipment box206.

Communication balloons200bare typically released in to the earth's stratosphere to attain an altitude between 11 to 23 miles and provide connectivity for a ground area of 25 miles in diameter at speeds comparable to terrestrial wireless data services (such as, 3G or 4G). The communication balloons200bfloat in the stratosphere at an altitude twice as high as airplanes and the weather (e.g., 20 km above the earth's surface). The high-altitude balloons200aare carried around the earth 5 by winds and can be steered by rising or descending to an altitude with winds moving in the desired direction. Winds in the stratosphere are usually steady and move slowly at about 5 and 20 mph, and each layer of wind varies in direction and magnitude.

Referring toFIG. 3, a satellite300is an object placed into orbit302around the earth 5 and may serve different purposes, such as military or civilian observation satellites, communication satellites, navigations satellites, weather satellites, and research satellites. The orbit302of the satellite300varies depending in part on the purpose of the satellite300. Satellite orbits302may be classified based on their altitude from the surface of the earth 5 as Low Earth Orbit (LEO), Medium Earth Orbit (MEO), and High Earth Orbit (HEO). LEO is a geocentric orbit (i.e., orbiting around the earth 5) that ranges in altitude from 0 to 1,240 miles. MEO is also a geocentric orbit that ranges in altitude from 1,200 mile to 22,236 miles. HEO is also a geocentric orbit and has an altitude above 22,236 miles. Geosynchronous Earth Orbit (GEO) is a special case of HEO. Geostationary Earth Orbit (GSO, although sometimes also called GEO) is a special case of Geosynchronous Earth Orbit.

In some implementations, the satellite300includes a satellite body304having a data processing device900, e.g., similar to the data processing device900of the airborne base stations200. The data processing device900executes algorithms to determine where the satellite300is heading. The satellite300also includes an antenna320for receiving and transmitting a communication20. The satellite300may include solar panels308mounted on the satellite body304for providing power to the satellite300. In some examples, the satellite300includes rechargeable batteries used when sunlight is not reaching and charging the solar panels308.

When constructing a global-scale communications system100using airborne base stations200, it is sometimes desirable to route traffic over long distances through the system100by linking airborne base stations200to satellites300and/or one airborne base station200to another. For example, two satellites300may communicate via inter-device links and two airborne base stations200may communicate via inter-device links. Inter-device link (IDL) eliminates or reduces the number of airborne base stations200or satellites300to terrestrial terminal110hops, which decreases the latency and increases the overall network capabilities. Inter-device links allow for communication traffic from one airborne base station200or satellite300covering a particular region to be seamlessly handed over to another airborne base station200or satellite300respectively. The airborne base station200or satellite300cover the same region. As such, a first airborne base station200or satellite300leaves the first area and a second airborne base station200or satellite300enters the area. Such inter-device linking is useful to provide communication services to areas away from a source at destination terrestrial terminals110a,110band may also reduce latency and enhance security (fiber optic cables may be intercepted and data going through the cable may be retrieved). This type of inter-device communication is different than the “bent-pipe” model, in which all the signal traffic goes from a source terrestrial terminals110ato a satellite300, and then directly down to a destination terrestrial terminals110b(e.g., terrestrial terminal) or vice versa. The “bent-pipe” model does not include any inter-device communications. Instead, the satellite300acts as a repeater. In some examples of “bent-pipe” models, the signal received by the satellite300is amplified before it is re-transmitted; however, no signal processing occurs. In other examples of the “bent-pipe” model, part or all of the signal may be processed and decoded to allow for one or more of routing to different beams, error correction, or quality-of-service control; however no inter-device communication occurs.

In some implementations, large-scale communication constellations are described in terms of a number of orbits202,302, and the number of airborne base stations200or satellites300per orbit202,302. Airborne base stations200or satellites300within the same orbit202,302maintain the same position relative to their intra-orbit airborne base station200or satellite300neighbors. However, the position of an airborne base station200or a satellite300relative to neighbors in an adjacent orbit202,302may vary over time. For example, in a large-scale satellite constellation with near-polar orbits, satellites300within the same orbit302(which corresponds roughly to a specific latitude, at a given point in time) maintain a roughly constant position relative to their intra-orbit neighbors (i.e., a forward and a rearward satellite300). However, the satellites300within the same orbit302vary their position relative to neighbors in an adjacent orbit302varies over time. A similar concept applies to the airborne base stations200; however, the airborne base stations200move about the earth 5 along a latitudinal plane and maintain roughly a constant position to a neighboring airborne base station200.

A terrestrial terminal110may be used as a connector between satellites300and the Internet, or between airborne base stations200and terrestrial terminals110. In some examples, the system100utilizes the terrestrial terminals110as linking-terrestrial terminals110afor relaying a communication20from one airborne base station200or satellite300to another airborne base station200or satellite300, where each airborne base station200or satellite300is in a different orbit202,302. For example, the linking-terrestrial terminal110amay receive a communication20from an orbiting satellite300, process the communication20, and switch the communication20to another satellite300in a different orbit302. Therefore, the combination of the satellites300and the linking-terrestrial terminals110aprovide a fully-connected system100. For the purposes of further examples, the terrestrial terminals110(e.g., terrestrial terminal110and terrestrial terminals110), shall be referred to as terrestrial terminals110.

FIG. 4provides a schematic view of an exemplary architecture of a communication system100establishing a communications link via a communication beam410between an airborne base station200and a terrestrial terminal110(e.g., a ground station). In some examples, the airborne base station200is an unmanned aerial system (UAS). In the example shown, the airborne base station200includes one or more antennas230configured to project multiple communication beams410toward earth 5 for communication with one or more terrestrial terminals110,110a-n. In some implementations, the antenna230is a phased array antenna. Each communication beam410may include a communication20(e.g., data), which may be transmitted to/from the terrestrial terminal110(e.g., via radio signals or electromagnetic energy). Each communication beam410associated with the airborne base station110has a communication frequency fHassociated with the communication beam410and is hereafter referred to as an airborne base station (ABS) communication beam410, having a corresponding ABS communication beam pattern412. The airborne base stations200may move about the earth 5 along a path, trajectory, or orbit202(also referred to as a plane, since their orbit or trajectory may approximately form a geometric plane).

The terrestrial terminal110includes a ground antenna122designed to communicate with the airborne base station200. The airborne base station200may communicate various data and information to the terrestrial terminal110, such as, but not limited to, airspeed, heading, attitude position, temperature, GPS (global positioning system) coordinates, wind conditions, flight plan information, fuel quantity, battery quantity, data received from other sources, data received from other antennas, sensor data, etc. The terrestrial terminal110may communicate to the airborne base station200various data and information including data to be forwarded to other terrestrial terminals110or to other data networks. Moreover, the airborne base station200may be various implementations of flying craft including a combination of the following such as, but not limited to an airplane, airship, helicopter, gyrocopter, blimp, multi-copter, glider, balloon, fixed wing, rotary wing, rotor aircraft, lifting body, heavier than air craft, lighter than air craft, etc.

In some implementations, the communication system100includes a satellite300having an antenna320. The antenna320is configured to project multiple communication beams420toward the airborne base station200and the earth 5, for communication with one or more airborne base station200and optionally with the terrestrial terminal110. The satellite300may be non-geostationary, i.e., the satellite300moves with respect to a point on earth 5. For example, the satellite300moves with respect to a terrestrial terminal110or a reference point540. The satellites300may move along an orbit302around the earth 5 and may serve different purposes, such as military or civilian observation satellites, communication satellites, navigations satellites, weather satellites, and research satellites.

FIG. 5Ais a perspective schematic view of an example airborne base station200operating over a given region of earth 5 to provide service to a given target area550of earth 5. The airborne base station200travels along a flight path202, which may be roughly circular or have any closed or open shape. In the example shown, the flight path202has a diameter212measured across two points of the flight path202. In some examples, the airborne base station200maintains a majority of line-of-sight to the terrestrial terminal110. In other examples, the diameter212of the flight path202is less than a diameter of the earth 5 preventing gravitational based orbits. The airborne base station200and the flight path202may be fully enclosed in the atmosphere of the earth 5. As the airborne base station200moves along the flight path202, the airborne base station200transmits ABS communication beams410to various terrestrial terminals110. Each ABS communication beam410of the airborne base station200includes an ABS communication beam pattern412, which defines an area in which the communication link using the ABS communication beam410between the terrestrial terminal110and airborne base station200exists. The ABS communication beam patterns412,412a-cmay be any shape, may be separate, or may overlap each other. The ABS communication beam patterns412may or may not have defined edges for a given region.

With continued reference to the example shown inFIG. 5A, as the airborne base station200travels counter-clockwise around the flight path202, a first ABS communication beam410,410aof the airborne base station200with a first ABS communication beam pattern412,412acomes into contact with a first terrestrial terminal110,110a. The airborne base station200and the first terrestrial terminal110amay communicate while the airborne base station200is in a position520H and an orientation530H that allows for the first ABS communication beam410,410aand the first ABS communication beam pattern412,412ato remain in contact with the first terrestrial terminal110a. As the airborne base station200continues to move counter-clockwise around the flight path202, a second ABS communication beam410,410band a second ABS communication beam pattern412,412bof the airborne base station200come into contact with a second terrestrial terminal110b. The second ABS communication beam pattern412,412ballows for communication between the second terrestrial terminal110band the airborne base station200using the second ABS communication beam410,410bwhile the second ABS communication beam pattern412,412bencompasses the second terrestrial terminal110b. As the airborne base station200continues to move counter-clockwise around the flight path202, a third ABS communication beam410,410cand a third ABS communication beam pattern412,412cof the airborne base station200comes into contact with a third terrestrial terminal110c. The third ABS communication beam pattern412,412callows for communication between the third terrestrial terminal110cand the airborne base station200using the third ABS communication beam410,410cwhile the third ABS communication beam pattern412,412cencompasses the third terrestrial terminal110c. In some examples, multiple ABS communication beam patterns412and ABS communication beams410of the airborne base station200overlap, allowing for the terrestrial terminal110to select between one of the ABS communication beams410,410a-cor have transmissions across multiple ABS communication beams410.

As the airborne base station200flies along the flight path202while operating over a target area550, the airborne base station200has a position520H and an orientation530H with respect to a reference point540at a given moment in time. In some examples, the reference point540is one of the terrestrial terminals110. The terrestrial terminal110or airborne base station200may be in communication with data processing hardware900in order to process and receive the position520H and orientation530H of the airborne base station200as it moves about its flight path202. Multiple data processing hardware900may be present, with separate units connected to the terrestrial terminal110, and/or the airborne base station200. In some examples, the data processing hardware900is separate and only in communication with both or either of the terrestrial terminal110or the airborne base station200.

FIG. 5Bis a top view of exemplary ABS communication beam patterns412of ABS communication beams410projected from an antenna230of an airborne base station200. The pattern of ABS communication beams410includes seven ABS communication beams410,410a-410g, each creating their own ABS communication beam pattern412,412a-412gat a different time TH1−TH2. A first ABS communication beam pattern412,412aat a first time TH1, a second ABS communication beam pattern412,412bat a second time TH2, a third ABS communication beam pattern412,412cat a third time TH3, a fourth ABS communication beam pattern412,412dat a fourth time TH4, a fifth ABS communication beam pattern412,412eat a fifth time TH5, and a sixth ABS communication beam pattern412,412fat a sixth time TH6surround a seventh ABS communication beam pattern412,412gat a seventh time TH7. As the airborne base station200operates in its flight path202and its position520H changes with respect to time TH1−TH2, the respective position of the ABS communication beams410,410a-410gand the ABS communication beam patterns412,412a-412gappear to rotate and move in relation to the terrestrial terminal110on the ground. As the airborne base station200operates in its flight path202and the orientation530H changes, the respective shape of the ABS communication beams410,410a-410gand the ABS communication beam patterns412,412a-412gappear to distort and move in relation to the terrestrial terminal110on the ground. As the airborne base station200continues to operate in a predictable manner patrolling its orbit over its target area550, the motion and shape of the ABS communication beams410,410a-410gand the ABS communication beam patterns412,412a-412gmay become more regular and predictable. There is no limit to the number of ABS communication beams410and ABS communication beam patterns412that may be projected from the airborne base station200. The airborne base station200and the terrestrial terminals110,110a-nare in communication with a scheduler560that determines a communication frequency f, fHa-gassociated with each of the ABS communication beams410for a duration of time so as to not interfere with other frequency band users, such as the satellites300using the frequency band. In some examples, the airborne base station200sends the scheduler560information including the communication frequency f, fHa-gof an ABS communication beam410that the airborne base station200is using.

FIG. 5Cis a perspective schematic view of an example operating satellite300. The satellite300may be operating over a given region of earth 5 and provides service to a given target area550of earth 5. The satellite300may travel along an orbit302. The orbit302may be roughly circular, but may include any closed or open shape. The orbit302may be around the earth 5. In some examples, the satellite300maintains a line-of-sight to the terrestrial terminal110within a portion of its satellite orbit302. In other examples, a diameter of the satellite orbit302is greater than a diameter of the earth 5. As the satellite300moves along the orbit302, the satellite300may transmit communications beams420to various terrestrial terminals110and/or airborne base stations200. Since the satellite300can serve different purposes, such as military or civilian observation satellites, communication satellites, navigations satellites, weather satellites, and research satellites, the satellite300may or may not be configured to communicate with terrestrial terminals110and/or airborne base stations200. In addition, the satellite300may be configured to communicate with only certain terrestrial terminals110and/or airborne base stations200. In examples, where the satellite300does not communicate with the terrestrial terminals110or at times when the satellite300is not communicating with a given terrestrial terminal110, the terrestrial terminal(s)110listens to the satellite communication beams420to identify a frequency f, fSof the communication beams420. In some examples, the terrestrial terminal110checks multiple frequencies within a frequency band to determine which frequency is being used by the satellite300. Furthermore, in some examples, the terrestrial terminal110measures a signal power at each frequency (i.e., at each target frequency) to determine the frequency f, fSthat is being used by the satellite300.

Each satellite communication beam420may include a satellite communication beam pattern422, which defines an area in which the communication link using the satellite communication beam420between a terrestrial terminal110and/or an airborne base station200and satellite300exists. The satellite communication beam patterns422may be any shape and may be separate or they may overlap each other. The communication beam patterns422may not have defined edges or be a given region. For example, as the satellite300travels about the satellite orbit302, a first satellite communication beam420,420awith a first satellite communication beam pattern422,422acomes into contact with the first terrestrial terminal110aand/or the airborne base station200at a first time TS1. The satellite300and the terrestrial terminal110and/or the airborne base station200may communicate while the satellite300is in a position520S and an orientation530S to allow for the first satellite communication beam420,420aand the first satellite communication beam pattern422,422ato remain in contact with the first terrestrial terminal110aand/or the airborne base station200. As the satellite300continues to move about the satellite orbit302, at a second time TS2, a second satellite communication beam420,420band a second satellite communication beam pattern422,422bcomes into contact with a second terrestrial terminal110b(e.g., a user device), allowing for communication between the second terrestrial terminal110b(e.g., the user device) and the satellite300using the second satellite communication beam420,420b. The second satellite communication beam pattern422,422bencompasses the second terrestrial terminal110b(e.g., the user device). As the satellite300continues to move about the satellite orbit302, a third satellite communication beam420,420cand a third satellite communication beam pattern422,422ccomes into contact with a third terrestrial terminal110c. In this example, the third terrestrial terminal110cis not configured to communicate with the satellite300; therefore, the third terrestrial terminal110clistens to the third satellite communication beam420,420cto determine a frequency f, fScassociated with the third satellite communication beam pattern422,420cat the corresponding location (i.e., at position520S and orientation530S) of the satellite300. The third satellite communication beam pattern422,422cencompasses the third terrestrial terminal110c. As such, the scheduler560determines a pattern of frequency usage by the satellite300at the corresponding location520S,530S of the satellite300based on listening to the satellite frequency f, fSover a period of time (e.g., days, weeks, months) and identifying the pattern of frequency usage by the satellite300. In some examples, multiple satellite communication beam patterns422and satellite communication beams420overlap, allowing for the terrestrial terminal110or satellite300to select between one of the satellite communication beams420or have transmissions across multiple satellite communication beams420.

As the satellite300moves along the satellite orbit302while operating over a target area550, the satellite300has a position520S and an orientation530S with respect to a reference point540at a given moment in time. The terrestrial terminal110or satellite300may be in communication with data processing hardware900in order to process and receive the position520S and orientation530S of the satellite300. In some examples, the data processing hardware900is separate and only in communication with both or either of the terrestrial terminal110or the satellite300.

FIG. 5Dis a top view of an exemplary beam pattern422of satellite communication beams420projected from an antenna320on a satellite300. The pattern of satellite communication beams420includes three satellite communication beams420,420a-420c, each creating their own communication beam pattern422,422a-422c, a first satellite communication beam pattern422,422a, a second satellite communication beam pattern422,422b, and a third satellite communication beam pattern422,422c. As the satellite300operates in its satellite orbit302and its position520S changes, the respective position of the satellite communication beams420,420a-420cand the satellite communication beam patterns422,422a-422cappear to rotate and move in relation to the terrestrial terminal110on the ground and/or the airborne base stations200. As the satellite300operates in its satellite orbit302and its orientation530S changes, the respective shape of the satellite communication beams420,420a-420gand the satellite communication beam patterns420,420a-420gappear to distort and move in relation to the terrestrial terminal110on the ground. As the satellite300continues to operate in a predictable manner patrolling its satellite orbit302over the target area550, the motion and shape of the satellite communication beams420,420a-420cand the satellite communication beam patterns420,420a-420cmay become more regular and predictable. There is no limit to the number of satellite communications beams420and satellite communication beam patterns422that may be projected from the satellite300.

As discussed earlier, the scheduler560determines a communication frequency f, fHa-gof an ABS communication beam410between a terrestrial terminal110and an airborne base station200for a duration of time so as to not interfere with other frequency band users, such as the satellite300. Therefore, as the satellite300emits satellite communication beams420, the communication frequency f, fHa-gof the ABS communication beam410between the terrestrial terminal110and the airborne base station200does not interfere with the communication frequency f, fSa-nof the satellite communication beam420.

In some implementations, the satellite300, the terrestrial terminals110,110a-n, and the airborne base station200are all in communication with the scheduler560. In such implementations, the scheduler560may also determine a communication frequency f, fSa-nof the satellite communication beam420for a duration of time so as to not interfere with other frequency band users, such as, for example, between the terrestrial terminals110,110a-n, and the airborne base station200.

FIGS. 5E and 5Fare perspective schematic views of an example communication system100including terrestrial terminals110, an airborne base station200, and a satellite300. The airborne base station200and the satellite300are shown operating over a given region of earth 5 to provide service to the given target area550of the earth 5. The airborne base station200travels along the corresponding flight path202; while the satellite300travels about the corresponding satellite orbit302. As the airborne base station200moves along the flight path202, the airborne base station200transmits ABS communication beams420to various terrestrial terminals110. In addition, as the satellite300travels about the satellite orbit302, the satellite300transmits satellite communication beams420to the airborne base station200and/or the terrestrial terminals110. Each communication beam410,420, i.e., ABS communication beam410and satellite communication beam420, may include a corresponding beam pattern412,422, i.e., an ABS communication beam pattern412and a satellite communication beam pattern422.

In some implementations, the ABS communication beam410and the satellite communication beam420interfere with one another when the airborne base station200and the satellite300transmit corresponding communication beams410,420having overlapping communication beam patterns412,422with one another and having an interfering frequency f (e.g., the same frequency). Therefore, the scheduler560receives information from the terrestrial terminal110, the airborne base station200, and/or the satellite300and optionally stores the information on non-transitory memory920in communication with the data processing hardware900executing the scheduler560. Based on the received information, the scheduler560determines a pattern of frequency usage by the satellite(s)300at corresponding satellite locations (e.g., position520S and orientation530S) as shown inFIG. 5H. In addition, the scheduler560may also determine a pattern of frequency usage by the airborne base station(s) at corresponding airborne base station200locations, i.e., position520H, and orientation530H. In some examples, the airborne base station200travels counter-clockwise around the flight path202, while the satellite300travels around the earth 5 in the satellite orbit302. The satellite beam pattern422,422aand the ABS beam pattern412,412amay overlap.

Referring to the example shown inFIG. 5E, in some implementations, as the satellite300orbits the earth 5 in the satellite orbit302, the satellite300transmits a first satellite communication beam pattern422aat a first satellite time TS1. At a second satellite time (not shown), a second satellite communication beam pattern422is at a different location from the first satellite communication beam pattern422a. In some examples, the first and second satellite beam patterns422overlap. Meanwhile, an airborne base station200is flying about its flight path202. At a first ABS time TH1, a first ABS communication beam pattern412aoverlaps with the first satellite communication beam pattern422a. As the airborne base station200moves along its flight path202at a second ABS time TS2, the airborne base station200transmits a second ABS communication beam410having a second ABS communication beam pattern412bthat does not overlap with the first satellite communication beam pattern422a. As the airborne base station200moves along its flight path202, the first ABS communication beam pattern412ano longer overlaps with the first satellite communication beam pattern422a(as shown inFIG. 5F).

With continued reference to bothFIGS. 5E and 5F, in some examples, a first terrestrial terminal110ais configured to communicate with the airborne base station200. When the airborne base station200is transmitting the first ABS communication beam410,410a, the first ABS communication beam pattern412,412aenvelops the first terrestrial terminal110a, and the first terrestrial terminal110acommunicates with the airborne base station200. However, as shown inFIG. 5F, when the airborne beam station200proceeds along its flight path202and the first ABS communication beam410ano longer envelops the first terrestrial terminal110aor the airborne beam station200ceases communication with the first terrestrial terminal110a, the first terrestrial terminal110adirects its antenna112towards the satellite300and listens to the satellite300. The first terrestrial terminal110alistens to the satellite300to identify one or more satellite frequencies fSthat the satellite300is using to transmit/receive communications20from a corresponding location520A,530S and sends the satellite frequencies fSand corresponding location520A,530S (collectively referred to as satellite information) to the scheduler560. The scheduler560optionally stores the satellite information and determines a pattern of frequency usage by the satellite300. Since the satellite300travels the orbit302in a periodic manner, i.e., revisits the same location at a specific interval of time, the scheduler560can learn the communication patterns of the satellite300. Moreover, the scheduler560may aggregate satellite information from many listening terrestrial terminals110, process the aggregated satellite information, and identify a pattern of frequency usage by each observed satellite300. Furthermore, the scheduler560may also identify a pattern of frequency usage by the airborne base stations200. Based on the pattern of frequency usage by the satellite300and/or the airborne base stations200, the scheduler560can instruct communication between the terrestrial terminals110and the airborne base stations200to use an identified satellite communication frequency f, fSa-nduring a non-interfering period of time. The non-interfering period of time is a period of time when an ABS communication beam410of the airborne base station200has an ABS beam frequency fHthat does not interfere with a satellite communication beam frequency fS.

In some implementations, the scheduler560predicts potential communication interferences between the ABS communication beams410and the satellite communication beam420based on a satellite map562containing the pattern of frequency usage stored on the non-transitory memory920. The scheduler560may generate the satellite map562based on the satellite information received from the terrestrial terminals110, while in other examples, the satellites300or a system associated with the satellites300transmit the satellite map562to the schedule560. The satellite map may include a satellite location520A,530S of the satellite300, and for each satellite location520A,530S, at least one of a satellite communication frequency fSor a communication signal power of the satellite300.

Based on the patterns of frequency usage of the airborne base station200and/or the satellite300, the scheduler560modifies a communication frequency fHor an activation of any ABS communication beams410of the antenna122of the terrestrial terminal110so as to not interfere with the one or more satellite communication frequencies fSused by the satellite300. In other words, and with reference toFIG. 5E, the scheduler560instructs the first terrestrial terminal110ato communicate with the airborne base station200over a first airborne frequency fHathat is different than the satellite communication frequency fSa. In some examples, the satellite300is transmitting the satellite communication beam420,420ahaving the corresponding communication beam pattern422,422aand the satellite communication beam frequency fSawhile the airborne base station200is also transmitting an ABS communication beam410,410ahaving the corresponding ABS communication beam pattern412a. In this example, both communication beam patterns412a,422ainclude the terrestrial terminals110a. As such, the scheduler560instructs the terrestrial terminal110a(and sometimes the airborne base station200) to communicate over a frequency fHadifferent from the satellite communication beam frequency fSa. However, when the ABS communication beam pattern412aof the airborne base station200no longer overlaps with the satellite communication beam pattern422a, the airborne base station200may communicate with the terrestrial terminal110at a frequency fH, fHb, fHcthat is the same as the satellite communication beam frequency fSa. Moreover, while the first terrestrial terminal110acannot use a frequency f that is the same as the satellite communication beam frequency fSaduring an interfering period of time, second and third terrestrial terminals110a,110bmay use a communication frequency fHb, fHcthat is the same as the satellite communication beam frequency fSaat non-interfering periods of time.

FIG. 5Gis a top view of the exemplary beam pattern412of communication beams410projected from the antenna230of the airborne base station200, as shown inFIG. 5B, and the exemplary satellite communication beam patterns422of satellite communication beams420projected from the antenna320of the satellite300, as shown inFIG. 5D. Similar toFIG. 5B, the pattern of the ABS communication beams410includes seven ABS communication beams410,410a-410g, each creating their own ABS communication beam pattern412,412a-412g. Also, similar toFIG. 5D, the pattern of satellite communication beams420includes three satellite communication beams420,420a-420c, each creating their own satellite communication beam pattern422,422a-422c. At a first satellite time TS1, a first satellite communication beam420ahas a first satellite frequency fSaand a corresponding first satellite communication beam pattern422athat does not yet envelop first and second terrestrial terminals110a,110band the airborne base station200.

At a second satellite time TS2, a second satellite communication beam420bhas a second satellite frequency fSband a corresponding second satellite communication beam pattern422bthat envelops the first terrestrial terminal110aand the airborne base station200, but not the second terrestrial terminal110b. Since a first communication beam pattern412aof a first ABS communication beam410aoverlaps with the second satellite communication beam pattern422bof the second satellite communication beam420b, the scheduler560instructs the terrestrial terminal110aor the airborne base station200to use a corresponding first communication frequency f, fHathat is different than the second satellite frequency fSbof the second satellite communication beam420b. Therefore, the first terrestrial terminal110acan communicate with the airborne base station200without interfering with the second satellite communication beam420b.

At a third satellite time TS3, a third satellite communication beam420chas a third satellite frequency fScand a corresponding third satellite communication beam pattern422cthat envelops the second terrestrial terminal110b, but not the first terrestrial terminal110aand the airborne base station200. In this example, the satellite300is not communicating with the second terrestrial terminal110b, so the second terrestrial terminal110blistens to the satellite300at the third satellite time TS3and sends satellite information to the scheduler560to maintain an up-to-date pattern of frequency usage by the satellite300and/or the airborne base station200. As mentioned earlier, the satellite information may include satellite frequencies fSat corresponding satellite locations (e.g., position520S and orientation530S).

FIG. 5Hillustrates an exemplary communication table570of frequency pattern usage based on satellite information received by the scheduler560from one or more of the terrestrial terminals110, the airborne base stations200, and/or the satellites300. The scheduler560executes on data processing hardware900in communication with non-transitory memory920. The non-transitory memory920stores accumulated information allowing the data processing hardware900to identify the pattern of frequency usage by satellites300. As shown, the pattern of frequency usage table570is associated with a satellite300; however, a pattern of frequency usage table570associated with the airborne base stations200is possible as well. The scheduler560may store the received satellite information in the form of a table having rows and columns, where the rows define a time and the columns define a satellite. Each row and column forms a cell that identifies a location (e.g., position520S and orientation530S) and satellite frequency fSassociated with each satellite300. As such, the scheduler560can accumulate time, location, and satellite frequency fSinformation for each satellite300and after a period of time, identify patterns of frequency usage associated with each satellite300. The scheduler560may include a table of frequency usage associated with each terrestrial terminal110. While a communication table570is shown, other implementations are possible as well, such key-value pair data stores, databases, and the like.

FIGS. 6A-6Cillustrate example communication systems100that include satellite(s)300, airborne base station(s)200, and terrestrial terminal(s)110. In the example shown inFIG. 6A, the communication system100includes a first terrestrial terminal110abeing a user device in communication with a first satellite300a. The communication system100also includes first and second airborne base stations200a,200a,200bin communication with the first satellite300a. The communication system100includes a second satellite300bthat is not within a line-of-sight of the first and second terrestrial terminals110a,110bor the first and second airborne base stations200a,200b. The first satellite300acommunicates with the first terrestrial terminal110a, the first airborne base station200a, and the second airborne base station200busing a first satellite frequency f, fS, fSa; while the second terrestrial terminal110bcommunicates with the second airborne base station200busing an airborne frequency f, fH, fHathat is not the same as the first satellite frequency f, fS, fSa. As shown, the second terrestrial terminal110bis in the shadow of the second airborne base station200b, which is in communication with the first satellite300ausing the first satellite frequency f, fS, fSa. Therefore, to avoid interference with the first satellite300a, the second terrestrial terminal110band the second airborne base stations200bdo not use a frequency, i.e., an ABS frequency f, fH, fHathat is the same as the first satellite frequency f, fS, fSa. In this case, the scheduler560, which identifies a pattern of frequency usage of the first satellite300a, instructs the second terrestrial terminal110bto use an ABS frequency f, fH, fHathat is different from the first satellite frequency f, fS, fSa(fHa≠fSa). However, when the second airborne base station200bmoves away and is no longer communicating with the second terrestrial terminal110b, as in the example shown inFIG. 6B, the second terrestrial terminal110bis no longer in the shadow of the second airborne base station200band becomes in a line-of-sight with the first satellite300a. During this time the second terrestrial terminal110bcan listen to the first satellite300ato identify satellite frequencies f, fS, used by the first satellite300ato update or generate the pattern of frequency usage by the satellite300. In the example shown inFIG. 6C, when the second and third terrestrial terminals110b,110care far apart and the second terrestrial terminal110bis in communication with (or listening to) the first satellite300a, the third terrestrial terminal110ccan use an ABS frequency f, fH, fHato communicate with an airborne base station200bthat is the same the satellite frequency f, fS, fSathat the second terrestrial terminal110ais using to communicate (or is listening to) with the first satellite300a.

FIG. 7illustrates a method700of selecting an identified satellite communication frequency fSfor use between a terminal terrestrial terminal110and an airborne base station200based on a pattern of frequency usage (e.g., the communication table570) by a satellite300associated with the identified satellite communication frequency fS. At block702, the method700includes receiving, at data processing hardware900(e.g., executing a scheduler560) identifications of one or more satellite communication frequencies fSused by a satellite300at corresponding locations (e.g., location520S and/or orientation530H) of the satellite300along a non-geostationary satellite orbit302. At block704, the method700includes determining, by the data processing hardware900, a pattern of frequency usage by the satellite300at the corresponding locations of the satellite300. At block706, the method700includes instructing, by the data processing hardware900, communication between a high altitude platform200(e.g., an airborne base station200) and a terrestrial terminal110using an identified satellite communication frequency fSduring a non-interfering period of time based on the pattern of frequency usage by the satellite300. The high altitude platform200has an altitude lower than the satellite300.

In some implementations, the method700further includes receiving the identifications of the one or more satellite communication frequencies fSused by the satellite300from mobile devices (e.g., terrestrial terminals110). In some examples, the mobile devices110are located on the earth 5.

In some examples, the method700includes steering, by the data processing hardware900, an antenna122(e.g., a phased array antenna) of the terrestrial terminal110away from the high altitude platform200and toward the satellite300for a period of time when the terrestrial terminal110is not communicating with the high altitude platform200. In addition, the method700includes identifying, using the antenna122of the terrestrial terminal110, the one or more satellite communication frequencies fSused by the satellite300at the corresponding locations of the satellite300. Identifying the one or more satellite communication frequencies fSused by the satellite300may include measuring a signal power at a target frequency band. The method700may also include receiving the identifications of the one or more satellite communication frequencies fSused by the satellite300from the terrestrial terminal110. The method700may include steering the antenna122of the terrestrial terminal110toward the high altitude platform200when the terrestrial terminal110communicates with the high altitude platform200.

In some implementations, the method700further includes modifying, by the data processing hardware900, a power, a communication frequency, or an activation of any ABS communication beams410of a phased array antenna122of the terrestrial terminal110that pass in a shadow projected by the satellite300through the high altitude platform200to a ground surface550. As such the ABS communication beams410of the phased array antenna122do not interfere with the one or more satellite communication frequencies fSused by the satellite300(an example of which is shown inFIG. 6A).

The method700may include receiving, at the data processing hardware900, identifications of one or more target communication frequencies f, fHused by at least one other frequency band user (e.g., the high altitude platform200). The method700may also include determining, using the data processing hardware900, a pattern of frequency usage by the at least one other frequency band user. The method700may include instructing, by the data processing hardware900, communication between the terrestrial terminal110and the high altitude platform200using an identified satellite communication frequency fSor an identified target communication frequency f during a non-interfering period of time based on the pattern of frequency usage by the satellite300and the pattern of frequency usage by the other least one frequency band user. For example, the data processing hardware900, may determine a pattern of frequency usage by the satellite and a different pattern of frequency usage by the high altitude platform200. As such, the data processing hardware900instructs the terrestrial terminal110and the high altitude platform200to communicate over a frequency f during a non-interfering period of time based on the pattern of frequency usage by the satellite300and the pattern of frequency usage by the high altitude platform200.

Additionally, the method700may include predicting, by the data processing hardware900, potential communication interferences between each communication beam410,420of the high altitude platform200and the satellite300based on a satellite map562. Determining the pattern of frequency usage by the satellite300includes generating the satellite map562. The satellite map562includes satellite locations of the satellite; and for each satellite location, at least one of a communication frequency or a communication signal power of the satellite.

In some implementations, the method700further includes predicting, by the data processing hardware900, potential communication interferences between each communication beam410,420of the high altitude platform200and the satellite300based on the pattern of frequency usage by the satellite300. For each ABS communication beam410of the high altitude platform200, the method700includes selecting an identified satellite communication frequency fsfor any communications20via the ABS communication beam410during a corresponding non-interfering period of time for the ABS communication beam410.

FIG. 8illustrates an exemplary arrangement of operations for method800of determining a pattern of frequency used by the satellite at corresponding locations of the satellite300. At block802, the method800includes steering an antenna122(e.g., a phased array antenna) of a terrestrial terminal110away from a high altitude platform200and toward a satellite300having a non-geostationary satellite orbit (i.e., the satellite that moved with respect to the terrestrial terminal110) for a period of time when the terrestrial terminal110is not communicating with the high altitude platform200. The high altitude platform200has an altitude lower than the satellite300. At block804, the method800includes identifying, using the antenna122of the terrestrial terminal110, one or more satellite communication frequencies f, fSused by the satellite300at corresponding locations of the satellite300. At block806, the method800includes determining, using data processing hardware900in communication with the terrestrial terminal110, a pattern of frequency usage (e.g.,FIG. 5H) by the satellite300at the corresponding locations of the satellite300.

In some implementations, the method800further includes steering the antenna122of the terrestrial terminal110toward the high altitude platform200when the terrestrial terminal110communicates with the high altitude platform200. The method may also include instructing, by the data processing hardware900, communication between the terrestrial terminal110and the high altitude platform200using an identified satellite communication frequency f, fSduring a non-interfering period of time based on the pattern of frequency usage by the satellite300. The method800may also include modifying, by the data processing hardware900, a power, a communication frequency, or an activation of any communication beams of the antenna of the terrestrial terminal110that pass in a shadow projected by the satellite through the high altitude platform200to a ground surface550, when the communication frequency includes the one or more satellite communication frequencies. In some examples, identifying the one or more satellite communication frequencies f, fSused by the satellite includes measuring a signal power at a target frequency band.

In some implementations, the method includes steering the antenna122of the terrestrial terminal110away from the high altitude platform200and toward at least one other band user (e.g., a satellite300) for another period of time when the terrestrial terminal110is not communicating with the high altitude platform. The method800may also include identifying, using the phased array antenna122of the terrestrial terminal110, one or more target communication frequencies f, fSused by the at least one other band user. The method800also includes determining, using data processing hardware900in communication with the terrestrial terminal110, a pattern of frequency usage by the at least one other band user. In some examples, the method800includes steering the antenna122of the terrestrial terminal110toward the high altitude platform200when the terrestrial terminal110communicates with the high altitude platform200. The method800may also include instructing, by the data processing hardware900, communication between the terrestrial terminal110and the high altitude platform200using an identified satellite communication frequency f, fSor an identified target communication frequency during a non-interfering period of time based on the pattern of frequency usage by the satellite300and the pattern of frequency usage by the at least one other band user.

In some examples, the high altitude platform200includes a phased array antenna220configured to project multiple communication beams410,420(i.e., ABS communication beam410and satellite communication beam420) toward earth 5. Each communication beam410,420may have a corresponding communication beam frequency f, fS, fH.

In some examples, the method800includes predicting, by the data processing hardware900, potential communication interferences between each communication beam of the high altitude platform200and the satellite300based on the pattern of frequency usage by the satellite300. Determining the pattern of frequency usage by the satellite300includes generating a satellite map562. The satellite map562may include satellite locations of the satellite, and for each satellite location, at least one of a communication frequency or a communication signal power of the satellite. The method may also include for each ABS communication beam410of the high altitude platform200, selecting an identified satellite communication frequency f, fS, as the communication beam frequency f, fS, during a corresponding non-interfering period of time for the ABS communication beam410based on the pattern of frequency usage by the satellite300or the predicted potential communication interferences.

FIG. 9is schematic view of an example computing device900that may be used to implement the systems and methods described in this document. The computing device900is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The components shown here, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed in this document.

The computing device900includes a processor910, memory920, a storage device930, a high-speed interface/controller940connecting to the memory920and high-speed expansion ports950, and a low speed interface/controller960connecting to low speed bus970and storage device930. Each of the components910,920,930,940,950, and960, are interconnected using various busses, and may be mounted on a common motherboard or in other manners as appropriate. The processor910can process instructions for execution within the computing device900, including instructions stored in the memory920or on the storage device930to display graphical information for a graphical user interface (GUI) on an external input/output device, such as display980coupled to high speed interface940. In other implementations, multiple processors and/or multiple buses may be used, as appropriate, along with multiple memories and types of memory. Also, multiple computing devices900may be connected, with each device providing portions of the necessary operations (e.g., as a server bank, a group of blade servers, or a multi-processor system).

The memory920stores information non-transitorily within the computing device900. The memory920may be a computer-readable medium, a volatile memory unit(s), or non-volatile memory unit(s). The non-transitory memory920may be physical devices used to store programs (e.g., sequences of instructions) or data (e.g., program state information) on a temporary or permanent basis for use by the computing device900. Examples of non-volatile memory include, but are not limited to, flash memory and read-only memory (ROM)/programmable read-only memory (PROM)/erasable programmable read-only memory (EPROM)/electronically erasable programmable read-only memory (EEPROM) (e.g., typically used for firmware, such as boot programs). Examples of volatile memory include, but are not limited to, random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), phase change memory (PCM) as well as disks or tapes.

The storage device930is capable of providing mass storage for the computing device900. In some implementations, the storage device930is a computer-readable medium. In various different implementations, the storage device930may be a floppy disk device, a hard disk device, an optical disk device, or a tape device, a flash memory or other similar solid state memory device, or an array of devices, including devices in a storage area network or other configurations. In additional implementations, a computer program product is tangibly embodied in an information carrier. The computer program product contains instructions that, when executed, perform one or more methods, such as those described above. The information carrier is a computer- or machine-readable medium, such as the memory920, the storage device930, or memory on processor910.

The high speed controller940manages bandwidth-intensive operations for the computing device900, while the low speed controller960manages lower bandwidth-intensive operations. Such allocation of duties is exemplary only. In some implementations, the high-speed controller940is coupled to the memory920, the display980(e.g., through a graphics processor or accelerator), and to the high-speed expansion ports950, which may accept various expansion cards (not shown). In some implementations, the low-speed controller960is coupled to the storage device930and low-speed expansion port970. The low-speed expansion port970, which may include various communication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet), may be coupled to one or more input/output devices, such as a keyboard, a pointing device, a scanner, or a networking device, such as a switch or router, e.g., through a network adapter.

The computing device900may be implemented in a number of different forms, as shown in the figure. For example, it may be implemented as a standard server900aor multiple times in a group of such servers900a, as a laptop computer900b, or as part of a rack server system900c.