CROSS REFERENCESThe present Application for Patent claims priority to U.S. Provisional Patent Application No. 62/028,231 by Sahu et al., entitled “NOTIFYING AVAILABILITY OF INTERNET PROTOCOL MULTIMEDIA SUBSYSTEM SERVICES,” filed Jul. 23, 2014, assigned to the assignee hereof, and expressly incorporated by reference herein.
BACKGROUNDThe following relates generally to wireless communication, and more specifically to notifying whether an Internet Protocol (IP) Multimedia Subsystem (IMS) service is available to a mobile device. Wireless communications systems are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, and so on. These systems may be multiple-access systems capable of supporting communication with multiple users by sharing the available system resources (e.g., time, frequency, and power). Examples of such multiple-access systems include code-division multiple access (CDMA) systems, time-division multiple access (TDMA) systems, frequency-division multiple access (FDMA) systems, and orthogonal frequency-division multiple access (OFDMA) systems.
A wireless multiple-access communications system may include access points supporting communication for multiple devices. Access points may communicate with devices on downstream and upstream links. Each access point has a coverage range, which may be referred to as the coverage area of the access point. Some access points may be multimode access points simultaneously supporting communications over multiple radio access technologies. For example, a multimode access point may concurrently communicate with a mobile device (i.e., a wireless station) over a WLAN or Wi-Fi network and a cellular base station over a cellular network. The multimode access point may provide bridging services (e.g., wireless fidelity (Wi-Fi) hotspot services) between the mobile device and the base station where the mobile device accesses services of the base station through the multimode access point.
A mobile device (e.g., cellular phone, laptop computer, tablet computer, desktop computer, etc.) communicating with a multimode access point may desire to access a service of a base station in communication with the multimode access point over a cellular network. In some cases, the availability of the service for the mobile device depends on the configuration of the base station, channel conditions between the multimode access point and the base station, network loading, or other factors. Because the multimode access point maintains the connection with the base station, the mobile device may be unaware of what services are available from the base station and, therefore, initiate an activity (e.g., a voice call) based on an assumption that the service is available. When the service is not available, however, attempted access to the service may time out before ultimately failing, thereby introducing unnecessary delay.
SUMMARYThe described features generally relate to one or more improved systems, methods, and/or apparatuses for informing a mobile device whether a service is available. The mobile device may communicate with a multimode access point on a first communication link (e.g., a first radio access technology (RAT)) and the multimode access point may communicate with the base station on a second communication link (e.g., a second RAT). The multimode access point may determine whether the service is available from the base station and inform the mobile device accordingly. The service from the base station may be via the RAT and the multimode access point may inform the mobile device about the availability of the service via the second RAT. The first RAT may be a cellular communications network and the second RAT may be a wireless local area network (WLAN), for example. The mobile device may, based on the availability of the service, configure a voice call session based on the availability of the service and initiate the voice call session according to the configuration. In some examples, the mobile device may include a voice over WLAN (VoWLAN) client operating on the mobile device and the service may be a voice over long term evolution (VoLTE) service.
In a first illustrative set of examples, a method for wireless communication is described. The method may include: determining, by a multimode access point, whether a service is available for a mobile device on a first radio access technology (RAT); and providing, to the mobile device, an indication of the availability of the service on the first RAT via a second RAT. In some aspects, providing the indication of the availability of the service on the first RAT via the second RAT may include sending a beacon to the mobile device via the second RAT. The beacon may include a first information element indicative of the first RAT and a second information element indicative of the availability of the service on the first RAT. The first RAT may be a cellular communications network and the service may be a voice over Long Term Evolution (LTE) (VoLTE) service.
In some aspects, determining whether the service is available may include: intercepting a message from a network entity to the mobile device; modifying an information element included in the message to indicate the availability of the service on the first RAT; and forwarding the message with the modified information element to the mobile device. The message may include a general advertisement service initial response message. The information element may be a connection capability information element. The first RAT may be a cellular communications network and the second RAT may be a wireless local area network. The service may be a semi-persistent scheduling service.
In a second illustrative set of examples, an apparatus for wireless communication is described. The apparatus may include: a service manager configured to determine, by a multimode access point, whether a service is available for a mobile device on a first radio access technology (RAT); and a transmitter configured to provide, to the mobile device, an indication of the availability of the service on the first RAT via a second RAT. The transmitter configured to provide the indication of the availability of the service on the first RAT via the second RAT may be further configured to send a beacon to the mobile device via the second RAT. In some aspects, the beacon may include a first information element indicative of the first RAT and a second information element indicative of the availability of the service on the first RAT. The first RAT may be a cellular communications network and the service may be a voice over Long Term Evolution (LTE) (VoLTE) service.
In some aspects, the service manager configured to determine whether the service is available may be further configured to: intercept a message from a network entity to the mobile device; and modify an information element included in the message to indicate the availability of the service on the first RAT; and wherein the transmitter is further configured to forward the message with the modified information element to the mobile device. The message may be a general advertisement service initial response message. The information element may include a connection capability information element. The first RAT may be a cellular communications network and the second RAT may be a wireless local area network. The service may be a semi-persistent scheduling service.
In a third set if illustrative examples, a method for wireless communication is described. The method may include: receiving, via a second radio access technology (RAT), an indication of the availability of a service on a first RAT; determining, by a mobile device, a configuration for a voice call session based on the availability of the service on the first RAT; and initiating the voice call session according to the determined configuration. The method may include de-registering the service on the mobile device in response to receiving an indication that the service is not available on the first RAT. Receiving the indication of the availability of the service on the first RAT may include receiving a beacon via the second RAT.
In some aspects, the beacon may include a first information element indicative of the first RAT and a second information element indicative of the availability of the service on the first RAT. The first RAT may be a cellular communications network and the service may be a voice over Long Term Evolution (LTE) (VoLTE) service available for the mobile device. The first RAT may be a cellular communications network and the second RAT may be a wireless local area network. The service may be a semi-persistent scheduling service.
In a fourth set of illustrative examples, an apparatus for wireless communication is described. The apparatus may include: a receiver configured to receive, via a second radio access technology (RAT), an indication of the availability of a service on a first RAT; and a voice call session manager configured to determine, by a mobile device, a configuration for a voice call session based on the availability of the service on the first RAT, and to initiate the voice call session according to the determined configuration.
In some aspects, the voice call session manager may be further configured to de-register the service on the mobile device in response to receiving an indication that the service is not available on the first RAT. The receiver configured to receive the indication of the availability of the service on the first RAT may be further configured to receive a beacon via the second RAT.
In some aspects, the beacon may include a first information element indicative of the first RAT and a second information element indicative of the availability of the service on the first RAT. The first RAT may be a cellular communications network and the service may be a voice over Long Term Evolution (LTE) (VoLTE) service available for the mobile device.
Further scope of the applicability of the described methods and apparatuses will become apparent from the following detailed description, claims, and drawings. The detailed description and specific examples are given by way of illustration only, since various changes and modifications within the spirit and scope of the description will become apparent to those skilled in the art.
BRIEF DESCRIPTION OF THE DRAWINGSA further understanding of the nature and advantages of the present invention may be realized by reference to the following drawings. In the appended figures, similar components or features may have the same reference label. Further, various components of the same type may be distinguished by following the reference label by a dash and a second label that distinguishes among the similar components. If only the first reference label is used in the specification, the description is applicable to any one of the similar components having the same first reference label irrespective of the second reference label.
FIG. 1 shows a diagram of a wireless communications system;
FIG. 2 shows a call flow diagram of an exemplary wireless communication system;
FIG. 3 shows a call flow diagram of another exemplary wireless communication system;
FIG. 4 shows a call flow diagram of another exemplary wireless communication system;
FIGS. 5A and 5B show block diagrams of exemplary multimode access points;
FIGS. 6A and 6B show block diagrams of exemplary mobile devices;
FIG. 7 shows a block diagram of a device configured for communication in a wireless communication system;
FIG. 8 shows a block diagram of another device configured for communication in a wireless communication system; and
FIG. 9 shows a flowchart diagram of an illustrative method for wireless communications;
FIG. 10 shows a flowchart diagram of an illustrative method for wireless communications;
FIG. 11 shows a flowchart diagram of an illustrative method for wireless communications; and
FIG. 12 shows a flowchart diagram of an illustrative method for wireless communications.
DETAILED DESCRIPTIONThe described features generally relate to a multimode access point (AP) informing a mobile device of the availability of a service on a first radio access technology (RAT) via a second RAT. The mobile device may be connected to and communicate with the multimode AP via the second RAT (e.g., a wireless local area network (WLAN)). The multimode AP may be connected to and communicate with a base station via the first RAT, (e.g., a cellular communications network). The multimode AP may determine whether a service is available from the base station on the first RAT and send information to the mobile device to indicate the service availability via the second RAT. The mobile device may initiate a voice call or perform another action based at least in part on the availability of the service.
In some examples, the service may be a voice over WLAN (VoWLAN) service and the mobile device may initiate a VoWLAN call session upon receiving an indication that the VoWLAN service is available. If the mobile device receives an indication that the VoWLAN service is not available, it may initiate the voice call configured according to a circuit-switched RAT, for example. The mobile device may register or de-register with an internet protocol multimedia system (IMS) based on receiving an indication that the VoWLAN service is available or unavailable, respectively.
The following description provides examples, and is not limiting of the scope, applicability, or configuration set forth in the claims. Changes may be made in the function and arrangement of elements discussed without departing from the scope of the disclosure. Various embodiments may omit, substitute, or add various procedures or components as appropriate. For instance, the methods described may be performed in an order different from that described, and various steps may be added, omitted, or combined. Also, features described with respect to certain embodiments may be combined in other embodiments.
Referring first toFIG. 1, a diagram illustrates an example of awireless communication system100 which may provide access to one or more wireless networks. Thewireless communication system100 may include one or more multimode access point (AP)105 providing wireless local area network (WLAN) communications with one or more mobile devices115 (i.e., wireless stations (STAs)).Multimode APs105 may communicate withmobile devices115 according to wireless protocols that, for example, adhere to the IEEE 802.11 family of standards. Thewireless communication system100 may also includecellular base stations110 which may provide cellular communications with one or more of themobile devices115 and/or themultimode APs105. While only two base stations110-aand110-bare illustrated, additional base stations may exist in various examples. Likewise, while only onemobile device115 is illustrated, additional mobile devices may exist in various examples.
Themultimode AP105 may be distributed or deployed within a coverage area135-aof base station110-aand/or a coverage area135-bof base station110-b. Themultimode AP105 may associate and wirelessly communicate via communication links125-aand/or125-bwith base stations110-aand/or110-b, respectively. Themultimode AP105 may be stationary or mobile. Themultimode AP105 may wirelessly communicate with thebase stations110 via one or more antennas. Themultimode AP105 may communicate with thebase stations110 via multiple carriers. Themultimode AP105 may providecommunication coverage area140 for a respective geographic area. In some embodiments, amultimode AP105 may be referred to as a base station, a radio base station, a basic service set (BSS), a hotspot, a MiFi access point, a wireless fidelity (Wi-Fi) AP, an extended service set (ESS), or some other suitable terminology. Thecommunication coverage area140 formultimode AP105 may be divided into sectors making up only a portion of the coverage area (not shown). Thewireless communication system100 may include APs of different types (e.g., metropolitan area, home network, etc.), with varying sizes of coverage areas and overlapping coverage areas for different technologies.
Themobile devices115 may be dispersed throughout thecommunication coverage area140. Themobile device115 may be stationary or mobile. Themobile device115 may associate and communicate usingcommunication link120 with themultimode AP105. Themobile device115 may associate and communicate with other base stations (not shown), i.e., base stations other than base stations110-aand110-b. In some examples, themobile device115 may be able to communicate with different types of access points viacommunication links120, and/or with different base station(s)110 via communication links125. Themobile device115 may be referred to as mobile stations (MSs), mobile devices, stations (STAs), access terminals (ATs), user equipment (UE), subscriber stations (SSs), or subscriber units. Themobile device115 may include cellular phones and wireless communications devices, but may also include personal digital assistants (PDAs), other handheld devices, wearable devices, netbooks, notebook computers, tablet computers, etc.
The communication links120 shown in thewireless communication system100 may include uplinks (ULs) for uplink transmissions from amobile device115 to amultimode AP105, and/or downlinks (DLs) for downlink transmissions, from themultimode AP105 to themobile device115. Similarly, communication links125-aand125-bshown in thewireless communication system100 may include uplinks (ULs) for uplink transmissions from amultimode AP105 to abase station110, and/or downlinks (DLs) for downlink transmissions, from abase station110 to amultimode AP105. The downlink transmissions may also be called forward link transmissions, while the uplink transmissions may also be called reverse link transmissions.
In some examples, base station110-aand110-bmay be associated with different cellular communications network technologies. For example, base station110-amay be configured to support packet-switched communications (e.g., an LTE configured base station) whereas base station110-bmay be a legacy base station configured to support circuit-switched communications (e.g., a code division multiple access (CDMA) base station). Accordingly, base station110-amay provide services tomultimode AP105 that are the same as, or different from the services provided by base station110-b. Communication link125-amay be a cellular network communication link providing LTE-based communications whereas communication link125-bmay similarly be a cellular network communication link but providing a legacy technology.
As illustrated inFIG. 1, themultimode AP105 may be configured to act as a wireless router that provides a Wi-Fi hotspot for themobile device115. Themultimode AP105 may connect to thebase stations110 via cellular communication links (e.g., communication links125) to access one or more services, e.g., internet access, voice call services, application specific services, etc. Themultimode AP105 may make these services available to themobile device115 via a WLAN communication link (e.g., communication link120). Themobile device115 may receive information associated with features supported by themultimode AP105, e.g., that voice call services are available, that internet access is available, etc. This information may, however, be generic in the sense that themobile device115 is unaware of the specific aspects of the services, e.g., themobile device115 may receive a beacon from themultimode AP105 with an “Internet Connectivity” flag set to 1.
Accordingly,mobile device115 desiring to place a VoWLAN call may attempt to access an IP Multimedia Service (IMS) core of an LTE network via themultimode AP105. To begin a voice call, themobile device115 may start the IMS registration process based on receipt of an IMS Packet Data Network (PDN) attach response message (with IMSVoPS=1). A loss of the LTE connection at the multimode AP105 (e.g., when the multimode AP is handed over from an LTE base station to a non-LTE base station or when cellular service is lost at the multimode AP105) may prevent themobile device115 from making voice calls over VoWLAN. Themobile device115, however, may be unaware that the LTE connection has been lost. For example, themultimode AP105 may hand over to a non-LTE base station that maintains internet service to themobile device115, but does not provide an IMS VoLTE service. Accordingly, because internet connectivity has not been lost, themobile device115 may believe that the LTE connection is still available and attempt to initiate a VoWLAN call session. Without access at themultimode AP105 to an IMS that supports VoLTE, the call session may fail.
Aspects of the present disclosure relate to themultimode AP105 notifying the availability of the IMS service to themobile device115. Generally, themultimode AP105 may notify the IMS service availability by transmitting information to themobile device115 as a part of a WLAN poll or beacon, and/or by themobile device115 querying themultimode AP105 for the IMS service status. Certain services (e.g., VoWLAN/VoLTE, enhanced Multimedia Broadcast Multicast Service (eMBMS), etc.) are dependent on a specific RAT being available to themultimode AP105. Some aspects may provide for themultimode AP105 to publish to the mobile device115 a current RAT for the backhaul connection between themultimode AP105 and a core network and the status of services available for this RAT. Accordingly, the VoWLAN client on themobile device115 can monitor the active RAT of themultimode AP105 and the status of available IMS services from that RAT. Based on this monitoring, the mobile device may take action (e.g., initiate an SIP_INVITE message for a voice call) or refrain from taking action (e.g., refrain from initiating an SIP_INVITE message for the voice call). According to other aspects, for such services themobile device115 may query themultimode AP105 to determine the status of IMS services before initiating an action that is dependent on the availability of the service (e.g., before sending a SIP_INVITE message for a voice call).
FIG. 2 is a call flow diagram200 illustrating communication in a wireless communication system according to various embodiments. The diagram200 may illustrate aspects of thewireless communication system100 described with reference toFIG. 1. The diagram200 includes a mobile device115-a, a multimode AP105-a, and a base station110-c. Each of these may be examples of corresponding devices of thewireless communication system100 ofFIG. 1. Generally, the diagram200 illustrates amultimode AP105 indicating the availability of services to the mobile device115-a.
The multimode AP105-amay be associated and communicating with the base station110-cvia afirst RAT connection205 and, also, associated and communicating with the mobile device115-avia asecond RAT connection210. In some examples, the first RAT is a cellular network communications technology (e.g., LTE, CDMA, WCDMA, GSM, etc.) and the second RAT is a WLAN connection. At215, the multimode AP105-amay determine whether a service is available on the first RAT, i.e., from the base station110-c. The multimode AP105-amay receive one or more information elements from the base station110-cduring initial connection, handover, and/or cell reselection to the base station110-cand/or periodically indicative of the services the base station110-ccan provide. At220, the multimode AP105-amay send information to the mobile device115-ato indicate which services are available from the base station110-c. In some examples, the multimode AP105-amay send information indicative of what RAT the base station110-cis configured to support as well as what services are available from the base station110-c.
The mobile device115-amay determine a voicecall session configuration225 based at least in part on the services indicated available from the multimode AP105-a. The mobile device115-amay initiate the voice call session configured according to the indicated available services at230 by sending amessage235 to the multimode AP105-a, to be forwarded asmessage240 to the base station110-c. In some examples when the base station110-cis an LTE base station and the multimode AP105-aindicates a VoWLAN service is available, the mobile device115-amay send a SIP_INVITE message through the multimode AP105-aand the base station110-cto an IMS core (i.e., tunnel the message) to begin the voice call. In other examples when the base station110-cis a legacy base station and the multimode AP105-aindicates a VoWLAN service is not available, the mobile device115-amay transmit an origination message via an access channel to initiate the voice call session. The mobile device115-amay send the origination message to the base station110-cdirectly or to a different legacy base station (not shown). In other examples when the base station110-cis a legacy base station and the multimode AP105-aindicates a VoWLAN service is not available, the mobile device115-amay delay initiating a voice call session until a VoWLAN service is available again.
FIG. 3 is a call flow diagram300 illustrating communications in a wireless communication system according to various embodiments. The diagram300 may illustrate aspects of thewireless communication system100 described with reference toFIG. 1. The diagram300 includes a mobile device115-b, a multimode AP105-b, and a base station110-d. Each of these may be examples of corresponding devices of thewireless communication system100 ofFIG. 1. Generally, the diagram300 illustrates the multimode AP105-bindicating the availability of a service to the mobile device115-butilizing a beacon and the mobile device115-bde-registering from a service that is not available.
The multimode AP105-bmay be associated and communicating with the base station110-dvia afirst RAT connection305 and, also, associated and communicating with the mobile device115-bvia asecond RAT connection310. At315, the multimode AP105-bmay determine whether a service is available on the first RAT, i.e., from the base station110-d. At320, the multimode AP105-bmay send a beacon to the mobile device115-bincluding information indicative of which services are available (or unavailable as the case may be) from the base station110-d. The multimode AP105-bmay send information indicative of what RAT the base station110-dis configured to support as well as what services are available from the base station110-d. In one example, a new information element (IE) field can be added to the beacon transmitted by the multimode AP105-bthat indicates the current active RAT associated with the base station110-dand the status of the associated services. For example, the multimode AP105-bmay add a Backhaul_RAT IE to the beacon indicating LTE is available and a VoLTE flag IE set to TRUE when the LTE connection supports VoLTE service.
The mobile device115-bmay determine a voice call session configuration based on the services indicated available, or unavailable as the case may be, from the multimode AP105-b. Continuing with the above example, when the mobile device115-breceives the beacon from the multimode AP105-bwhere Backhaul RAT=LTE and VoLTE=TRUE, the mobile device115-bmay send one or more messages to the multimode AP105-bto initiate an IMS registration process, as discussed above with respect toFIG. 2. In the situation where the mobile device115-breceives the beacon from the multimode AP105-bwhere the Backhaul_RAT=WCDMA and the VoLTE=FALSE (assuming the multimode AP105-bmoves to a WCDMA connection when the LTE connection is lost), the mobile device115-bmay update the VoLTE status to not available and refrain from making the voice call, or instead, rely on a different RAT (i.e., something other than the multimode AP105-b) to place a voice call. When the mobile device115-bdetermines that VoLTE service is unavailable, the mobile device115-bmay locally de-register with the IMS core at325.
The mobile device115-bmay initiate the voice call session configured according to the indicated available services at330 by sending amessage345 to the multimode AP105-b, to be forwarded asmessage350 to the base station110-d. In the example where the VoLTE service is unavailable, the mobile device115-bmay transmit an origination message via an access channel to initiate the voice call session with the base station110-d.
FIG. 4 is a call flow diagram400 illustrating communication in a wireless communication system according to various embodiments. The diagram400 may illustrate aspects of thewireless communication system100 described with reference toFIG. 1. The diagram400 includes a mobile device115-c, a multimode AP105-c, and a base station110-e. Each of these may be examples of corresponding devices of thewireless communication system100 ofFIG. 1. Generally, the diagram400 illustrates a polling mechanism to enable the multimode AP105-cto determine and indicate the availability of services to the mobile device115-c.
The multimode AP105-cmay be associated and communicating with the base station110-evia a first RAT (e.g., LTE)connection405 and, also, associated and communicating with the mobile device115-cvia a second RAT (e.g., WLAN)connection410. At415 and420, the mobile device may send a General Advertisement Service (GAS) Initial Request message (e.g., Access Network Query Protocol (ANQP), Connection Capability IE, etc.) to an “Advertise Server” located in the operator's core network (not shown), i.e., through the multimode AP105-cand the base station110-eto the Advertise Server. The Advertise Server may respond with Connection Capability IE in a GAS Initial Response (e.g., “Protocol/Port 6/5060 (VoIP) OPEN/CLOSED) at425. According to current designs, the multimode AP105-cacts as a pass-through between the mobile device115-cand the Advertise Server and simply passes the GAS Initial Response on to the client at430.
According to aspects of the present disclosure though, the multimode AP105-cmay intercept the GAS Initial Response at435 and read the GAS Initial Response message and, if necessary, modify an IE at440 based on the availability of services. For example, the multimode AP105-cmay overwrite the Connection Capability IE with information indicative of the VoLTE status/capability. In another example, when the multimode AP105-creceives information indicating that the VoLTE service is available via NAS signaling (e.g., PDN Attach Response), the multimode AP105-cmay overwrite the IE to read “Protocol/Port 6/5060 (VoIP) OPEN.” When the LTE connection is lost and, hence, the VoLTE service is unavailable, the multimode AP105-cmay overwrite the IE to read “Protocol/Port 6/5060 (VoIP) CLOSED.” The multimode AP105-cmay send the modified GAS Initial Response to the mobile device115-cat445 to indicate the availability of the services.
The mobile device115-cmay determine a voicecall session configuration450 based on the services indicated available from the multimode AP105-avia the modified GAS Initial Response message. The mobile device115-cmay initiate the voice call session configured according to the indicated available services at455 by sending amessage460 to the multimode AP105-c, to be forwarded asmessage465 to the base station110-e.
FIG. 5A shows a block diagram500-aof an apparatus105-dfor wireless communication, in accordance with various aspects of the present disclosure. In some embodiments, the apparatus105-dmay be an example of aspects of themultimode AP105 described with reference toFIG. 1, 2, 3 or 4.
The apparatus105-dmay be an example of amultimode AP105 configured to determine what services are available from a base station on a first RAT and indicate the availability of the services to amobile device115 via a second RAT. The apparatus105-dmay include areceiver505, aservice manager510, and/or atransmitter515. Each of these components may be in communication with each other.
The components of the apparatus105-dmay, individually or collectively, be implemented using an ASIC adapted to perform some or all of the applicable functions in hardware. Alternatively, the functions may be performed by other processing units (or cores), on an integrated circuit. The apparatus105-dmay be a processor. In other embodiments, other types of integrated circuits may be used (e.g., Structured/Platform ASICs, FPGAs, and other Semi-Custom ICs), which may be programmed in any manner known in the art. The functions of each unit may also be implemented, in whole or in part, with instructions embodied in a memory, formatted to be executed by general or application-specific processors.
In some embodiments, thereceiver505 may be or include one or more RF receivers such as a WLAN receiver. Thereceiver505 may also include other receivers, such as a Wi-Fi receiver and/or a wireless wide area network (WWAN) receiver (e.g., a cellular receiver). Thereceiver505 may be used to receive various types of data and/or control signals (i.e., transmissions) over communication links (e.g., physical channels) of a wireless communication system such as thewireless communication system100 described with reference toFIG. 1. For example, thereceiver505 may be used to receive one or more messages exchanged with a base station to determine the RAT being implemented by the base station and the services associated with the base station. In another example, thereceiver505 may be used to receive one or more messages exchanged with a mobile device to initiate a voice call session, for example.
In some embodiments, thetransmitter515 may be or include an RF transmitter such as a WLAN transmitter. Thetransmitter515 may also include other transmitters, such as a Wi-Fi transmitter and/or a WWAN transmitter (e.g., a cellular transmitter). Thetransmitter515 may be used to transmit various types of data and/or control signals (i.e., transmissions) over communication links (e.g., physical channels) of a wireless communication system such as thewireless communication system100 described with reference toFIG. 1. For example, thetransmitter515 may be used to transmit to a mobile device information associated with an indication of what services are available from a base station. Thetransmitter515 may be used to transmit to a base station information associated with a voice call session, for example. In some embodiments, thereceiver505 may receive information from a base station on a first RAT (e.g., LTE) and thetransmitter515 may transmit to the mobile device on a second RAT (e.g., WLAN), or vice versa.
In some embodiments, theservice manager510 may be an example of a module that manages the functions described with reference toFIG. 1, 2, 3 or 4. In some examples, theservice manager510 may be used to manage determining an available service from a base station and informing a mobile device of the service availability. Theservice manager510 may be configured to determine what services are available from a base station on a first RAT (e.g., a VoWLAN service on an LTE base station). Theservice manager510 may determine whether the service is available (or unavailable) and send an indication of what services are available (or unavailable) to a mobile device on a second RAT. Theservice manager510 may send an indication of available services via one or more information elements (IEs) of a beacon, in response to a poll from the mobile device, etc.
FIG. 5B shows a block diagram500-bof an apparatus105-efor wireless communication, in accordance with various aspects of the present disclosure. In some embodiments, the apparatus105-emay be an example of aspects of themultimode AP105 described with reference toFIG. 1, 2, 3 or 4. The apparatus105-emay be an example of amultimode AP105 configured to determine whether a service is available from a base station on a first RAT and send an indication of the available services to a mobile device on a second RAT.
The apparatus105-emay include a receiver505-a, a service manager510-a, and/or a transmitter515-a. Each of these components may be in communication with each other. The components of the apparatus105-emay, individually or collectively, be implemented using an ASIC adapted to perform some or all of the applicable functions in hardware. Alternatively, the functions may be performed by other processing units (or cores), on an integrated circuit. The apparatus105-emay also be a processor programmed to perform the applicable functions. In other embodiments, other types of integrated circuits may be used (e.g., Structured/Platform ASICs, FPGAs, and other Semi-Custom ICs), which may be programmed in any manner known in the art. The functions of each unit may also be implemented, in whole or in part, with instructions embodied in a memory, formatted to be executed by general or application-specific processors.
In some embodiments, the receiver505-amay be or include one or more RF receivers such as a WLAN receiver. The receiver505-amay also include other receivers, such as a Wi-Fi receiver and/or a wireless wide area network (WWAN) receiver (e.g., a cellular receiver). The receiver505-amay be used to receive various types of data and/or control signals (i.e., transmissions) over communication links (e.g., physical channels) of a wireless communication system such as thewireless communication system100 described with reference toFIG. 1. For example, the receiver505-amay be used to receive one or more messages exchanged with a base station to determine the RAT being implemented by the base station and the services associated with the base station. In another example, the receiver505-amay be used to receive one or more messages exchanged with a mobile device to initiate a voice call session, for example.
In some embodiments, the transmitter515-amay be or include an RF transmitter such as a WLAN transmitter. The transmitter515-amay also include other transmitters, such as a Wi-Fi transmitter and/or a WWAN transmitter (e.g., a cellular transmitter). The transmitter515-amay be used to transmit various types of data and/or control signals (i.e., transmissions) over communication links (e.g., physical channels) of a wireless communication system such as thewireless communication system100 described with reference toFIG. 1. For example, the transmitter515-amay be used to transmit to a mobile device information associated with an indication of what services are available from a base station. The transmitter515-amay be used to transmit to a base station information associated with a voice call session, for example. In some embodiments, the receiver505-amay receive information from a base station on a first RAT (e.g., LTE) and the transmitter515-amay transmit to the mobile device on a second RAT (e.g., WLAN), or vice versa.
In some embodiments, the service manager510-amay be an example of a module that manages the functions described with reference toFIG. 1, 2, 3 or 4. The service manager510-amay include a firstRAT Communication Manager520, a second RAT communication manager525, a VoLTEservice availability manager530, and aservice indication manager535. Generally, the service manager510-amay be used to manage a determination of availability of services and an indication of such available services.
In some examples, the firstRAT communication manager520 may be configured to manage communications with a base station via a first RAT, e.g., LTE, WCDMA, etc. The firstRAT communication manager520 may receive signals or information from the base station via the receiver505-aand transmit signals or information to the base station via the transmitter515-a. The second RAT communication manager525 may be configured to manage communications with a mobile device via a second RAT, e.g., WLAN, Wi-Fi, etc. The second RAT communication manager525 may receive signals or information from the mobile device via the receiver505-aand transmit signals or information to the device via the transmitter515-a.
In some examples, the VoLTEservice availability manager530 may be configured to determine whether a VoLTE service is available from the base station on the first RAT. The VoLTEservice availability manager530 may communicate with the firstRAT communication manager520 to determine what RAT is being utilized by the base station and which services are available from the base station on the first RAT. The VoLTEservice availability manager530 may determine, for example, that the base station is configured to support a LTE RAT and that a VoLTE service is available from the LTE base station.
In some examples, theservice indication manager535 may be configured to indicate the available services to a mobile device. Theservice indication manager535 may communicate with the VoLTEservice availability manager530 to receive information indicative of the available services. Theservice indication manager535 may communicate with the transmitter515-ato send an indication to the mobile device of the available services. In some embodiments, theservice indication manager535 may send the indication as one or more information elements in a beacon transmitted to the mobile device. That is, theservice indication manager535 may cooperate with the second RAT communication manager525 and/or the transmitter515-ato encode a beacon with information indicative of the available service, e.g., a first information element indicative of the first RAT and a second information element indicative of the service availability on the first RAT. In other embodiments, theservice indication manager535 may cooperate with the firstRAT communication manager520 and/or the VoLTEservice availability manager530 to intercept a message from a network entity (e.g., an IMS core) directed to the mobile device. Theservice indication manager535 may read one or more information elements in the message and, if necessary, modify an information element to indicate the availability of the service on the first RAT. Theservice indication manager535 may send the modified message including the information element indicative of the available services to the mobile device via the second RAT.
FIG. 6A shows a block diagram600-aof an apparatus115-dfor wireless communication, in accordance with various aspects of the present disclosure. In some embodiments, the apparatus115-dmay be an example of aspects of themobile device115 described with reference toFIG. 1, 2, 3 or 4.
The apparatus115-dmay be an example of amobile device115 configured to receive, via a second RAT, an indication of what services are available from a base station on a first RAT and configure a voice call session based at least in part on the received indication. The apparatus115-dmay include areceiver605, a voicecall session manager610, and/or atransmitter615. Each of these components may be in communication with each other.
The components of the apparatus115-dmay, individually or collectively, be implemented using an ASIC adapted to perform some or all of the applicable functions in hardware. Alternatively, the functions may be performed by other processing units (or cores), on an integrated circuit. The apparatus115-dmay be a processor. In other embodiments, other types of integrated circuits may be used (e.g., Structured/Platform ASICs, FPGAs, and other Semi-Custom ICs), which may be programmed in any manner known in the art. The functions of each unit may also be implemented, in whole or in part, with instructions embodied in a memory, formatted to be executed by general or application-specific processors.
In some embodiments, thereceiver605 may be or include one or more RF receivers such as a WLAN receiver. Thereceiver605 may also include other receivers, such as a Wi-Fi receiver. Thereceiver605 may be used to receive various types of data and/or control signals (i.e., transmissions) over communication links (e.g., physical channels) of a wireless communication system such as thewireless communication system100 described with reference toFIG. 1. For example, thereceiver605 may be used to receive one or more messages exchanged with a multimode AP indicating what services are available from a base station.
In some embodiments, thetransmitter615 may be or include an RF transmitter such as a WLAN transmitter. Thetransmitter615 may also include other transmitters, such as a Wi-Fi transmitter. Thetransmitter615 may be used to transmit various types of data and/or control signals (i.e., transmissions) over communication links (e.g., physical channels) of a wireless communication system such as thewireless communication system100 described with reference toFIG. 1. For example, thetransmitter615 may be used to transmit one or messages associated with a voice call session configured based at least in part on what services are available from a base station.
In some embodiments, the voicecall session manager610 may be an example of a module that manages the functions described with reference toFIG. 1, 2, 3 or 4. In some examples, the voicecall session manager610 may be used to manage receiving an indication of available service from a multimode AP and configuring a voice call session accordingly. The voicecall session manager610 may be configured to receive, from a multimode AP on a second RAT, what services are available from a base station on a first RAT (e.g., a VoLTE service from a LTE base station). The voicecall session manager610 may configure a voice call session dependent at least in part on what services are available (e.g., a VoWLAN voice call session that relies on VoLTE service at the multimode AP). The voicecall session manager610 may initiate the voice call session according to the configuration.
FIG. 6B shows a block diagram600-bof an apparatus115-efor wireless communication, in accordance with various aspects of the present disclosure. In some embodiments, the apparatus115-emay be an example of aspects of themobile device115 described with reference toFIG. 1, 2, 3 or 4. The apparatus115-emay be an example of amobile device115 configured to receive, via a second RAT, an indication of whether a service is available from a base station on a first RAT and configure a voice call session accordingly.
The apparatus115-emay include a receiver605-a, a voice call session manager610-a, and/or a transmitter615-a. Each of these components may be in communication with each other. The components of the apparatus115-emay, individually or collectively, be implemented using an ASIC adapted to perform some or all of the applicable functions in hardware. Alternatively, the functions may be performed by other processing units (or cores), on an integrated circuit. The apparatus115-emay also be a processor programmed to perform the applicable functions. In other embodiments, other types of integrated circuits may be used (e.g., Structured/Platform ASICs, FPGAs, and other Semi-Custom ICs), which may be programmed in any manner known in the art. The functions of each unit may also be implemented, in whole or in part, with instructions embodied in a memory, formatted to be executed by general or application-specific processors.
In some embodiments, the receiver605-amay be or include one or more RF receivers such as a WLAN receiver. The receiver605-amay also include other receivers, such as a Wi-Fi receiver. Thereceiver605 may be used to receive various types of data and/or control signals (i.e., transmissions) over communication links (e.g., physical channels) of a wireless communication system such as thewireless communication system100 described with reference toFIG. 1. For example, the receiver605-amay be used to receive one or more messages exchanged with a multimode AP indicating what services are available from a base station.
In some embodiments, the transmitter615-amay be or include an RF transmitter such as a WLAN transmitter. The transmitter615-amay also include other transmitters, such as a Wi-Fi transmitter. The transmitter615-amay be used to transmit various types of data and/or control signals (i.e., transmissions) over communication links (e.g., physical channels) of a wireless communication system such as thewireless communication system100 described with reference toFIG. 1. For example, the transmitter615-amay be used to transmit one or messages associated with a voice call session configured based at least in part on what services are available from a base station.
In some embodiments, the voice call session manager610-amay be an example of a module that manages the functions described with reference toFIG. 1, 2, 3 or 4. The voice call session manager610-amay include a secondRAT communication manager620, a service availability manager625, aservice registration manager630, and a voice call configuration manager635. Generally, the voice call session manager610-amay be used to configure a voice call session based on a received indication of available services.
The secondRAT communication manager620 may be configured to manage communications with a multimode AP via a second RAT, e.g., WLAN, Wi-Fi, etc. The secondRAT communication manager620 may receive signals or information from the multimode AP via the receiver605-aand transmit signals or information to the multimode AP via the transmitter615-a.
In some examples, the service availability manager625 may be configured to receive an indication of whether a VoLTE service is available from the base station on the first RAT. The service availability manager625 may communicate with the secondRAT communication manager620 to receive one or more messages from the multimode AP via a second RAT including one or more information elements indicative of what RAT is being utilized by the base station and which services are available from the base station on the first RAT. The service availability manager625 may determine that the base station is configured to support a LTE RAT and that a VoLTE service is available from the LTE base station by reading one or more information elements included in a beacon and/or a GAS Initial Response message, for example.
In some examples, theservice registration manager630 may be configured to manage a registration and/or de-registration with a service on the base station. For example, theservice registration manager630 may communicate with the service availability manager625 to determine that the base station is configured to support a LTE RAT and that a VoLTE service is available from the LTE base station. Theservice registration manager630 may communicate with the secondRAT communication manager620, the receiver605-a, and/or the transmitter615-ato initiate or maintain a registration with an IMS core accordingly. In another example, theservice registration manager630 may communicate with the service availability manager625 to determine that the base station is configured to support a WCDMA RAT, for example, and that a VoLTE service is unavailable from the base station. Theservice registration manager630 may communicate with the secondRAT communication manager620, the receiver605-a, and/or the transmitter615-ato exchange messages with the IMS core to de-register the apparatus115-e.
In some examples, the voice call configuration manager635 may be configured to manage the determination of a configuration for a voice call session based at least in part on the available services. For example, the voice call configuration manager635 may communicate with the service availability manager625 and/or theservice registration manager630 to receive information indicative of what services are available from a base station and/or with what services the apparatus115-eis currently registered. The voice call configuration manager635 may configured a voice call session according to the available services, e.g., a VoLTE voice call session when the base station is configured to support a LTE RAT and that a VoLTE service is available.
FIG. 7 shows a block diagram700 of an apparatus105-fconfigured for wireless communication, in accordance with various aspects of the present disclosure. The apparatus105-fmay have various configurations and may be part of a computer (e.g., a laptop computer, netbook computer, tablet computer, etc.), a cellular telephone, a personal digital assistant (PDA), a digital video recorder (DVR), an internet appliance, a gaming console, an e-reader, etc. The apparatus105-fmay in some cases have an internal power supply (not shown), such as a small battery, to facilitate mobile operation. In some embodiments, the apparatus105-fmay be an example of aspects of themultimode AP105 described with reference toFIG. 1, 2, 34,5A, or5B. The apparatus105-fmay be configured to implement the features and functions described with reference toFIG. 1, 2, 3, 4, 5 or 6. The apparatus105-fmay be configured to communicate withmobile device115 and/or withbase stations110 described with reference toFIG. 1, 2, 34,6A, or6B.
The apparatus105-fmay include aprocessor735, a memory730 (including software code740), afirst RAT transceiver725 communicating via antenna(s)720, asecond RAT transceiver715 communicating via antenna(s)710, and/or a service manager510-b. Each of these components may be in communication with each other, directly or indirectly, over abus755.
Thefirst RAT transceiver725, in conjunction with antenna(s)720, may facilitate wireless communication withbase stations110. Wireless communication with a base station via the first RAT, as described above, may be managed using the service manager510-b. Thesecond RAT transceiver715, in conjunction with antenna(s)710, may facilitate wireless communication withmobile devices115 and/or other apparatuses. Wireless communication with amobile device115 over the second RAT, as described above, may be managed using the service manager510-b.
Theprocessor735 may include an intelligent hardware device, e.g., a central processing unit (CPU), a microcontroller, an ASIC, etc. Theprocessor735 may process information received through thetransceivers725 and/or715 and/or process information to be sent to thetransceivers725 and/or715 for transmission through theantennas720 and710, respectively. Theprocessor735 may handle, alone or in connection with the service manager510-b, various aspects of communicating over a wireless and/or wireline communication system.
Thememory730 may include RAM and/or ROM. Thememory730 may store computer-readable, computer-executable software (SW)code740 containing instructions that are configured to, when executed, cause theprocessor735 to perform various functions described herein for communicating over a wireless communication system. Alternatively, thesoftware code740 may not be directly executable by theprocessor735 but be configured to cause the apparatus105-f(e.g., when compiled and executed) to perform various of the functions described herein.
The service manager510-bmay be an example of aspects of theservice manager510 described with reference toFIG. 5A or 5B. The service manager510-bmay be used to manage the wireless connections of the apparatus105-fas they relate to determining a service available from a base station and sending an indication of the available services to a mobile device. In some embodiments, the service manager510-b, or portions of same, may include a processor, and/or some or all of the functionality of the service manager510-bmay be performed by theprocessor735 and/or in connection with theprocessor735.
FIG. 8 shows a block diagram800 of an apparatus115-fconfigured for wireless communication, in accordance with various aspects of the present disclosure. The apparatus115-fmay have various configurations and may be or be part of a computer (e.g., a laptop computer, netbook computer, tablet computer, etc.), a cellular telephone, a personal digital assistant (PDA), a digital video recorder (DVR), an internet appliance, a gaming console, an e-reader, etc. The apparatus115-fmay in some cases have an internal power supply (not shown), such as a small battery, to facilitate mobile operation. In some embodiments, the apparatus115-fmay be an example of aspects of themobile devices115 described with reference toFIG. 1, 2, 34,6A, or6B. The apparatus115-fmay be configured to implement the features and functions described with reference toFIG. 1, 2, 3, 4, 5 or 6. The apparatus115-fmay be configured to communicate withmultimode AP105 described with reference toFIG. 1, 2, 34,6A, or6B.
The apparatus115-fmay include aprocessor835, a memory825 (including software code830), atransceiver815 communicating via antenna(s)810, and/or a voice call session manager610-b. Each of these components may be in communication with each other, directly or indirectly, over abus855.
Thetransceiver815, in conjunction with antenna(s)810, may facilitate wireless communication withmultimode AP105. Wireless communication with amultimode AP105 may be via a second RAT, as described above, and may be managed using the voice call session manager610-b.
Theprocessor835 may include an intelligent hardware device, e.g., a central processing unit (CPU), a microcontroller, an ASIC, etc. Theprocessor835 may process information received through the transceiver(s)815 and/or process information to be sent to the transceiver(s)815 for transmission through theantennas810. Theprocessor835 may handle, alone or in connection with the voice call session manager610-b, various aspects of communicating over a wireless and/or wireline communication system.
Thememory825 may include RAM and/or ROM. Thememory825 may store computer-readable, computer-executable software (SW)code830 containing instructions that are configured to, when executed, cause theprocessor835 to perform various functions described herein for communicating over a wireless communication system. Alternatively, thesoftware code830 may not be directly executable by theprocessor835 but be configured to cause the apparatus115-f(e.g., when compiled and executed) to perform various of the functions described herein.
The voice call session manager610-bmay be an example of aspects of the voicecall session manager610 described with reference toFIG. 6A or 6B. The voice call session manager610-bmay be used to manage the wireless connections of the apparatus115-fas they relate to receiving an indication of a service available from a base station and configuring a voice call session based at least in part on the available services In some embodiments, the voice call session manager610-b, or portions of same, may include a processor, and/or some or all of the functionality of the voice call session manager610-bmay be performed by theprocessor835 and/or in connection with theprocessor835.
FIG. 9 shows a flowchart diagram of anillustrative method900 for wireless communications according to aspects of the principles described above. Themethod900 may be implemented by amultimode AP105 described above with reference toFIG. 1, 2, 3, 4, 5A or 5B and/or anapparatus105 ofFIG. 7. In some examples, amultimode AP105 or anapparatus105 may execute sets of codes to control the functional elements of the multimode AP to perform the functions described below.
Atblock905, themethod900 may determine, by amultimode AP105, whether a service is available for a mobile device on a first radio access technology (RAT). For example, the determination may be performed at215,315,435-440, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock910, themethod900 may include provide, to the mobile device, an indication of the availability of the service on the first RAT via a second RAT. For example, the indication of the available service may be performed at220,320,445, as described above with reference toFIG. 2, 3, or4, respectively.
In some embodiments, the operations atblocks905 or910 may be performed byservice manager510 described with reference toFIG. 5A, 5B or 7. Nevertheless, it should be noted that themethod900 is just one implementation and that the operations of themethod900 may be rearranged or otherwise modified such that other implementations are possible.
FIG. 10 shows a flowchart diagram of anillustrative method1000 for wireless communications according to aspects of the principles described above. Themethod1000 may be implemented by amobile device115 described above with reference toFIG. 1, 2, 3, 4, 5A or 5B and/or anapparatus115 ofFIG. 8. In some examples, amobile device115 or anapparatus115 may execute sets of codes to control the functional elements of the multimode AP to perform the functions described below.
Atblock1005, themethod1000 may receive, via a second RAT, an indication of the availability of a service on a first RAT. For example, the received indication may be performed at220,320,445, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1010, themethod1000 may include determine, by a mobile device, a configuration for a voice call session based on the availability of the service on the first RAT. For example, the determination may be performed at225,325-330,450, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1015, themethod1000 may include initiate the voice call session according to the determined configuration. For example, the initiation may be performed at230-240,340-350,455-465, as described above with reference toFIG. 2, 3, or4, respectively.
In some embodiments, the operations atblocks1005,1010, or1015 may be performed by the voicecall session manager610 described with reference toFIG. 6A, 6B or 8. Nevertheless, it should be noted that themethod1000 is just one implementation and that the operations of themethod1000 may be rearranged or otherwise modified such that other implementations are possible.
FIG. 11 shows a flowchart diagram of anillustrative method1100 for wireless communications according to aspects of the principles described above. Themethod1100 may be implemented by amultimode AP105 described above with reference toFIG. 1, 2, 3, 4, 5A or 5B and/or anapparatus105 ofFIG. 7. In some examples, amultimode AP105 or anapparatus105 may execute sets of codes to control the functional elements of the multimode AP to perform the functions described below.
Atblock1105, themethod1100 may intercept a message from a network entity to a mobile device. For example, the interception may be performed at215,315,425-430, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1110, themethod1100 may determine, by a multimode AP, whether a service is available for a mobile device on a first radio access technology (RAT). For example, the determination may be performed at215,315,435-440, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1115, themethod1100 may include modifying an information element included in the message to indicate the availability of the service on the first RAT. For example, the modification of the information element may be performed at215,315,440, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1120, themethod1100 may include forward the message with the modified information element to the mobile device to indicate the availability of the service. For example, the forwarding may be performed at220,320,445, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1125, themethod1100 may include receive, from the mobile device, a voice call session initiated according to a configuration based at least in part on the availability of the service. For example, the receiving may be performed at230-235,340-345,455-460, as described above with reference toFIG. 2, 3, or4, respectively.
In some embodiments, the operations atblocks1105,1110,1115,1120, or1125 may be performed byservice manager510 described with reference toFIG. 5A, 5B or 7. Nevertheless, it should be noted that themethod1100 is just one implementation and that the operations of themethod1100 may be rearranged or otherwise modified such that other implementations are possible.
FIG. 12 shows a flowchart diagram of anillustrative method1200 for wireless communications according to aspects of the principles described above. Themethod1200 may be implemented by amobile device115 described above with reference toFIG. 1, 2, 3, 4, 5A or 5B and/or anapparatus115 ofFIG. 8. In some examples, amobile device115 or anapparatus115 may execute sets of codes to control the functional elements of the multimode AP to perform the functions described below.
Atblock1205, themethod1200 may receive, via a second RAT, an indication of the availability of a service on a first RAT. For example, the received indication may be performed at220,320,445, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1210, themethod1200 may De-registering the service on the mobile device in response to receiving an indication that the service is not available on the first RAT. For example, the re-registration may be performed at225,325,450, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1215, themethod1200 may include determine, by the mobile device, a configuration for a voice call session based on the availability of the service on the first RAT. For example, the determination may be performed at225,325-330,450, as described above with reference toFIG. 2, 3, or4, respectively.
Atblock1220, themethod1200 may include initiate the voice call session according to the determined configuration. For example, the initiation may be performed at230-240,340-350,455-465, as described above with reference toFIG. 2, 3, or4, respectively.
In some embodiments, the operations atblocks1205,1210,1215, or1220 may be performed by the voicecall session manager610 described with reference toFIG. 6A, 6B or 8. Nevertheless, it should be noted that themethod1200 is just one implementation and that the operations of themethod1200 may be rearranged or otherwise modified such that other implementations are possible.
The detailed description set forth above in connection with the appended drawings describes exemplary embodiments and does not represent the only embodiments that may be implemented or that are within the scope of the claims. The term “exemplary” used throughout this description means “serving as an example, instance, or illustration,” and not “preferred” or “advantageous over other embodiments.” The detailed description includes specific details for the purpose of providing an understanding of the described techniques. These techniques, however, may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the described embodiments.
Information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
The various illustrative blocks and modules described in connection with the disclosure herein may be implemented or performed with a general-purpose processor, a digital signal processor (DSP), an ASIC, a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as instructions or code on a computer-readable medium. Other examples and implementations are within the scope of the disclosure and appended claims. For example, due to the nature of software, functions described above can be implemented using software executed by a processor, hardware, firmware, hardwiring, or combinations of any of these. Features implementing functions may also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations. Also, as used herein, including in the claims, “or” as used in a list of items prefaced by “at least one of” indicates a disjunctive list such that, for example, a list of “at least one of A, B, or C” means A or B or C or AB or AC or BC or ABC (i.e., A and B and C).
Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage medium may be any available medium that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of computer-readable media.
The previous description of the disclosure is provided to enable a person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the scope of the disclosure. Throughout this disclosure the term “example” or “exemplary” indicates an example or instance and does not imply or require any preference for the noted example. Thus, the disclosure is not to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.