Aspects of the present disclosure relate generally to wireless communication systems, and more particularly, to high speed inter-radio access technology (IRAT) handover.
Wireless communication networks are widely deployed to provide various communication services such as telephony, video, data, messaging, broadcasts, and so on. Such networks, which are usually multiple access networks, support communications for multiple users by sharing the available network resources. One example of such a network is the universal terrestrial radio access network (UTRAN). The UTRAN is the radio access network (RAN) defined as a part of the universal mobile telecommunications system (UMTS), a third generation (3G) mobile phone technology supported by the 3rd Generation Partnership Project (3GPP). The UMTS, which is the successor to global system for mobile communications (GSM) technologies, currently supports various air interface standards, such as wideband-code division multiple access (W-CDMA), time division-code division multiple access (TD-CDMA), and time division-synchronous code division multiple access (TD-SCDMA). For example, China is pursuing TD-SCDMA as the underlying air interface in the UTRAN architecture with its existing GSM infrastructure as the core network. The UMTS also supports enhanced 3G data communications protocols, such as high speed packet access (HSPA), which provides higher data transfer speeds and capacity to associated UMTS networks. HSPA is a collection of two mobile telephony protocols, high speed downlink packet access (HSDPA) and high speed uplink packet access (HSUPA) that extends and improves the performance of existing wideband protocols.
As the demand for mobile broadband access continues to increase, research and development continue to advance the UMTS technologies not only to meet the growing demand for mobile broadband access, but to advance and enhance the user experience with mobile communications.
According to one aspect of the present disclosure, a method for wireless communication includes receiving a handover command that includes a scheduling request configuration but does not have a random access configuration. The method also includes determining the random access configuration based on the scheduling request configuration.
According to another aspect of the present disclosure, an apparatus for wireless communication includes means for receiving a handover command that includes a scheduling request configuration but does not include a random access configuration. The apparatus also includes means for determining the random access configuration based on the scheduling request configuration.
According to one aspect of the present disclosure, an apparatus for wireless communication includes a memory and a processor(s) coupled to the memory. The processor(s) is configured to receive a handover command that includes a scheduling request configuration but does not include a random access configuration. The processor(s) is also configured to determine the random access configuration based on the scheduling request configuration.
According to one aspect of the present disclosure, a computer program product for wireless communication in a wireless network includes a computer readable medium having non-transitory program code recorded thereon. The program code includes program code to receive a handover command that includes a scheduling request configuration but does not include a random access configuration. The program code also includes program code to determine the random access configuration based on the scheduling request configuration.
This has outlined, rather broadly, the features and technical advantages of the present disclosure in order that the detailed description that follows may be better understood. Additional features and advantages of the disclosure will be described below. It should be appreciated by those skilled in the art that this disclosure may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present disclosure. It should also be realized by those skilled in the art that such equivalent constructions do not depart from the teachings of the disclosure as set forth in the appended claims. The novel features, which are believed to be characteristic of the disclosure, both as to its organization and method of operation, together with further objects and advantages, will be better understood from the following description when considered in connection with the accompanying figures. It is to be expressly understood, however, that each of the figures is provided for the purpose of illustration and description only and is not intended as a definition of the limits of the present disclosure.
For a more complete understanding of the present disclosure, reference is now made to the following description taken in conjunction with the accompanying drawings.
The detailed description set forth below, in connection with the appended drawings, is intended as a description of various configurations and is not intended to represent the only configurations in which the concepts described herein may be practiced. The detailed description includes specific details for the purpose of providing a thorough understanding of the various concepts. However, it will be apparent to those skilled in the art that these concepts may be practiced without these specific details. In some instances, well-known structures and components are shown in block diagram form in order to avoid obscuring such concepts.
Turning now to
The geographic region covered by the RNS 107 may be divided into a number of cells, with a radio transceiver apparatus serving each cell. A radio transceiver apparatus is commonly referred to as a nodeB in UMTS applications, but may also be referred to by those skilled in the art as a base station (BS), a base transceiver station (BTS), a radio base station, a radio transceiver, a transceiver function, a basic service set (BSS), an extended service set (ESS), an access point (AP), or some other suitable terminology. For clarity, two nodeBs 108 are shown; however, the RNS 107 may include any number of wireless nodeBs. The nodeBs 108 provide wireless access points to a core network 104 for any number of mobile apparatuses. Examples of a mobile apparatus include a cellular phone, a smart phone, a session initiation protocol (SIP) phone, a laptop, a notebook, a netbook, a smartbook, a personal digital assistant (PDA), a satellite radio, a global positioning system (GPS) device, a multimedia device, a video device, a digital audio player (e.g., MP3 player), a camera, a game console, or any other similar functioning device. The mobile apparatus is commonly referred to as user equipment (UE) in UMTS applications, but may also be referred to by those skilled in the art as a mobile station (MS), a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a remote unit, a mobile device, a wireless device, a wireless communications device, a remote device, a mobile subscriber station, an access terminal (AT), a mobile terminal, a wireless terminal, a remote terminal, a handset, a terminal, a user agent, a mobile client, a client, or some other suitable terminology. For illustrative purposes, three UEs 110 are shown in communication with the nodeBs 108. The downlink (DL), also called the forward link, refers to the communication link from a nodeB to a UE, and the uplink (UL), also called the reverse link, refers to the communication link from a UE to a nodeB.
The core network 104, as shown, includes a GSM core network. However, as those skilled in the art will recognize, the various concepts presented throughout this disclosure may be implemented in a RAN, or other suitable access network, to provide UEs with access to types of core networks other than GSM networks.
In this example, the core network 104 supports circuit-switched services with a mobile switching center (MSC) 112 and a gateway MSC (GMSC) 114. One or more RNCs, such as the RNC 106, may be connected to the MSC 112. The MSC 112 is an apparatus that controls call setup, call routing, and UE mobility functions. The MSC 112 also includes a visitor location register (VLR) (not shown) that contains subscriber-related information for the duration that a UE is in the coverage area of the MSC 112. The GMSC 114 provides a gateway through the MSC 112 for the UE to access a circuit-switched network 116. The GMSC 114 includes a home location register (HLR) (not shown) containing subscriber data, such as the data reflecting the details of the services to which a particular user has subscribed. The HLR is also associated with an authentication center (AuC) that contains subscriber-specific authentication data. When a call is received for a particular UE, the GMSC 114 queries the HLR to determine the UE's location and forwards the call to the particular MSC serving that location.
The core network 104 supports packet-data services with a serving general packet radio service (GPRS) support node (SGSN) 118 and a gateway GPRS support node (GGSN) 120. GPRS is designed to provide packet-data services at speeds higher than those available with standard GSM circuit-switched data services. The GGSN 120 provides a connection for the RAN 102 to a packet-based network 122. The packet-based network 122 may be the Internet, a private data network, or some other suitable packet-based network. The primary function of the GGSN 120 is to provide the UEs 110 with packet-based network connectivity. Data packets are transferred between the GGSN 120 and the UEs 110 through the SGSN 118, which performs primarily the same functions in the packet-based domain as the MSC 112 performs in the circuit-switched domain.
The UMTS air interface is a spread spectrum Direct-Sequence Code Division Multiple Access (DS-CDMA) system. The spread spectrum DS-CDMA spreads user data over a much wider bandwidth through multiplication by a sequence of pseudorandom bits called chips. The TD-SCDMA standard is based on such direct sequence spread spectrum technology and additionally calls for a time division duplexing (TDD), rather than a frequency division duplexing (FDD) as used in many FDD mode UMTS/W-CDMA systems. TDD uses the same carrier frequency for both the uplink (UL) and downlink (DL) between a nodeB 108 and a UE 110, but divides UL and DL transmissions into different time slots in the carrier.
At the UE 350, a receiver 354 receives the downlink transmission through an antenna 352 and processes the transmission to recover the information modulated onto the carrier. The information recovered by the receiver 354 is provided to a receive frame processor 360, which parses each frame, and provides the midamble 214 (
In the uplink, data from a data source 378 and control signals from the controller/processor 390 are provided to a transmit processor 380. The data source 378 may represent applications running in the UE 350 and various user interfaces (e.g., keyboard). Similar to the functionality described in connection with the downlink transmission by the nodeB 310, the transmit processor 380 provides various signal processing functions including CRC codes, coding and interleaving to facilitate FEC, mapping to signal constellations, spreading with OVSFs, and scrambling to produce a series of symbols. Channel estimates, derived by the channel processor 394 from a reference signal transmitted by the nodeB 310 or from feedback contained in the midamble transmitted by the nodeB 310, may be used to select the appropriate coding, modulation, spreading, and/or scrambling schemes. The symbols produced by the transmit processor 380 will be provided to a transmit frame processor 382 to create a frame structure. The transmit frame processor 382 creates this frame structure by multiplexing the symbols with a midamble 214 (
The uplink transmission is processed at the nodeB 310 in a manner similar to that described in connection with the receiver function at the UE 350. A receiver 335 receives the uplink transmission through the antenna 334 and processes the transmission to recover the information modulated onto the carrier. The information recovered by the receiver 335 is provided to a receive frame processor 336, which parses each frame, and provides the midamble 214 (
The controller/processors 340 and 390 may be used to direct the operation at the nodeB 310 and the UE 350, respectively. For example, the controller/processors 340 and 390 may provide various functions including timing, peripheral interfaces, voltage regulation, power management, and other control functions. The computer-readable media of memories 342 and 392 may store data and software for the nodeB 310 and the UE 350, respectively. For example, the memory 392 of the UE 350 may store a handover module 391 which, when executed by the controller/processor 390, configures the UE 350 to perform a high speed inter-radio access technology handover based on aspects of the present disclosure. A scheduler/processor 346 at the nodeB 310 may be used to allocate resources to the UEs and schedule downlink and/or uplink transmissions for the UEs.
High speed uplink packet access (HSUPA) or time division high speed uplink packet access (TD-HSUPA) is a set of enhancements to time division synchronous code division multiple access (TD-SCDMA) in order to improve uplink throughput. In TD-HSUPA, the following physical channels are relevant.
The enhanced uplink dedicated channel (E-DCH) is a dedicated transport channel that features enhancements to an existing dedicated transport channel carrying data traffic.
The enhanced data channel (E-DCH) or enhanced physical uplink channel (E-PUCH) carries E-DCH traffic and schedule information (SI). Information in this E-PUCH channel can be transmitted in a burst fashion.
The E-DCH uplink control channel (E-UCCH) carries layer 1 (or physical layer) information for E-DCH transmissions. The transport block size may be 6 bits and the retransmission sequence number (RSN) may be 2 bits. Also, the hybrid automatic repeat request (HARQ) process ID may be 2 bits.
The E-DCH random access uplink control channel (E-RUCCH) is an uplink physical control channel that carries SI and enhanced radio network temporary identities (E-RNTI) for identifying UEs.
The absolute grant channel for E-DCH (enhanced access grant channel (E-AGCH)) carries grants for E-PUCH transmission, such as the maximum allowable E-PUCH transmission power, time slots, and code channels.
The hybrid automatic repeat request (hybrid ARQ or HARQ) indication channel for E-DCH (E-HICH) carries HARQ ACK/NAK signals.
The operation of TD-HSUPA may also have the following steps. First, in the resource request step, the UE sends requests (e.g., via scheduling information (SI)) via the E-PUCH or the E-RUCCH to a base station (e.g., NodeB). The requests are for permission to transmit on the uplink channels. Next, in a resource allocation step, the base station, which controls the uplink radio resources, allocates resources. Resources are allocated in terms of scheduling grants (SGs) to individual UEs based on their requests. In the third step (i.e., the UE Transmission step), the UE transmits on the uplink channels after receiving grants from the base station. The UE determines the transmission rate and the corresponding transport format combination (TFC) based on the received grants. The UE may also request additional grants if it has more data to transmit. Finally, in the fourth step (i.e., the base station reception step), a hybrid automatic repeat request (hybrid ARQ or HARQ) process is employed for the rapid retransmission of erroneously received data packets between the UE and the base station.
The transmission of SI (scheduling information) may consist of two types in TD-HSUPA: (1) In-band and (2) Out-band. For in-band, which may be included in MAC-e PDU (medium access control e-type protocol data unit) on the E-PUCH, data can be sent standalone or may piggyback on a data packet. For Out-band, data may be sent on the E-RUCCH in case that the UE does not have a grant. Otherwise, the grant expires.
The scheduling information (SI) may include the following information or fields: the highest priority logical channel ID (HLID) field, the total E-DCH buffer status (TEBS) field, the highest priority logical channel buffer status (HLBS) field and the UE power headroom (UPH) field.
The highest priority logical channel ID (HLID) field unambiguously identifies the highest priority logical channel with available data. If multiple logical channels exist with the highest priority, the one corresponding to the highest buffer occupancy will be reported.
The total E-DCH buffer status (TEBS) field identifies the total amount of data available across all logical channels for which reporting has been requested by the radio resource control (RRC) and indicates the amount of data in number of bytes that is available for transmission and retransmission in the radio link control (RLC) layer. When the medium access control (MAC) is connected to an acknowledged mode (AM) RLC entity, control protocol data units (PDUs) to be transmitted and RLC PDUs outside the RLC transmission window are also be included in the TEBS. RLC PDUs that have been transmitted but not negatively acknowledged by the peer entity shall not be included in the TEBS. The actual value of TEBS transmitted is one of 31 values that are mapped to a range of number of bytes (e.g., 5 mapping to TEBS, where 24<TEBS<32).
The highest priority logical channel buffer status (HLBS) field indicates the amount of data available from the logical channel identified by HLID, relative to the highest value of the buffer size reported by TEBS. In one configuration, this report is made when the reported TEBS index is not 31, and relative to 50,000 bytes when the reported TEBS index is 31. The values taken by HLBS are one of a set of 16 values that map to a range of percentage values (e.g., 2 maps to 6%<HLBS<8%).
The UE power headroom (UPH) field indicates the ratio of the maximum UE transmission power and the corresponding dedicated physical control channel (DPCCH) code power.
The serving neighbor path loss (SNPL) reports the path loss ratio between the serving cells and the neighboring cells. The base station scheduler incorporates the SNPL for inter-cell interference management tasks to avoid neighbor cell overload.
The handover or cell reselection may be performed when the UE moves from a coverage area of a TD-SCDMA cell to the coverage area of an LTE cell, or vice versa. A handover or cell reselection may also be performed when there is a coverage hole or lack of coverage in the TD-SCDMA network or when there is traffic balancing between the TD-SCDMA and LTE networks. As part of that handover or cell reselection process, while in a connected mode with a first system (e.g., TD-SCDMA) a UE may be specified to perform a measurement of a neighboring cell (such as LTE cell). For example, the UE may measure the neighbor cells of a second network for signal strength, frequency channel, and base station ID. The UE may then connect to the strongest cell of the second network. Such measurement may be referred to as inter-radio access technology (IRAT) measurement.
The UE may send a serving cell a measurement report indicating results of the IRAT measurement performed by the UE. The serving cell may then trigger a handover of the UE to a new cell in the other RAT based on the measurement report. The triggering may be based on a comparison between measurements of the different RATs. The measurement may include a TD-SCDMA serving cell signal strength, such as a received signal code power (RSCP) for a pilot channel (e.g., primary common control physical channel (P-CCPCH)). The signal strength is compared to a serving system threshold. The serving system threshold can be indicated to the UE through dedicated radio resource control (RRC) signaling from the network. The measurement may also include a neighbor cell received signal strength indicator (RSSI). The neighbor cell signal strength can be compared with a neighbor system threshold.
Other radio access technologies, such as a wireless local area network (WLAN) or WiFi may also be accessed by a user equipment (UE) in addition to cellular networks such as TD-SCDMA or GSM. For the UE to determine nearby WiFi access points (APs), the UE scans available WiFi channels to identify/detect if any WiFi networks exist in the vicinity of the UE. In one configuration, the UE may use TD-SCDMA reception/transmission gaps to switch to the WiFi network to scan the WiFi channels.
Aspects of the disclosure are directed to increasing handover success rate when performing handover from one radio access technology (RAT) to another RAT. The handover may be an inter-radio access technology (IRAT) handover from a long term evolution (LTE) system to a time division synchronous code division multiple access (TD-SCDMA) system. IRAT handover may occur when a user equipment (UE) is in a connected mode to enable a packet switched data connection transition from a source RAT to a target RAT.
In some aspects of the present disclosure, the UE is configured to perform hard handover rather than baton handover when a handover command includes a scheduling request configuration and does not include a random access configuration.
In the case of hard handover, a user equipment (UE) may switch both downlink (DL) and uplink (UL) communications from a source cell to a target cell simultaneously. In the case of baton handover, upon receiving the handover command from the source eNodeB, the UE may first switch uplink communications to the target cell, and then switch downlink communications to the target cell. These two steps of baton handover allows the target cell to acquire uplink communications, measure timing/power, and configure beamforming before the UE switches downlink communications to the target cell. Because of the two step process, the baton handover may be less disruptive than the hard handover.
The scheduling request configuration may include an enhanced data channel random access uplink control channel (E-RUCCH). The E-RUCCH is an uplink physical control channel that carries scheduling information and enhanced radio network temporary identities (E-RNTI) for identifying UEs. In general, a random access configuration includes an uplink synchronization configuration and a random access response. Although LTE to TD-SCDMA handover is described, other types of IRAT handover are also contemplated, for example, LTE to LTE handover, and TD-SCDMA to TD-SCDMA handover.
In some communication specifications, handover is performed via random access based hard handover or baton handover. For example, LTE to TD-SCDMA handover is performed with random access information for a target TD-SCDMA cell indicated in a “handover to UTRAN command” message, such as “mobilityfromEUTRAcommand.” To accomplish synchronization in the case of hard handover, the UE may be specified to transmit the uplink synchronization sequence, SYNC-UL, and to receive a random access response (FPACH message) before the normal communication (e.g., data transmission) begins. In the case of baton handover, the UE first switches uplink communications to allow a target NodeB to measure the uplink timing for subsequent adjustment in an end stage of the baton handover.
In some instances, when the handover command, such as a LTE to TD-SCDMA cell handover command, does not include a random access configuration (e.g., an uplink synchronization parameter), the UE performs baton handover. While baton handover can reduce latency relative to hard handover, successful handover is not guaranteed due to open loop power and timing control inaccuracy associated with baton handover. For example, because of the open loop nature of baton handover timing and power handover, in certain circumstances, the transmit power calculated/estimated by the UE is inaccurate. As a result of the inaccurate timing estimation, the uplink DPCH data or a special burst arrival timing may not fall within the target NodeB monitor window, and may not be detected by the target NodeB. If the target NodeB does not detect the uplink DPCH data or a special burst, the target NodeB fails to start downlink transmission, such as downlink dedicated physical channel (DPCH) or special burst. As noted, without the uplink communications from the UE, the target NodeB fails to determine beamforming for downlink communications to the UE, and fails to configure downlink transmissions to the UE. This failure to configure the downlink transmissions results in a handover failure.
Aspects of the present disclosure include a high speed inter-radio access technology (IRAT) handover procedure that allows a user equipment (UE) to perform hard handover rather than performing baton handover when a handover command includes a scheduling request configuration but no random access configuration. In this case, the random access configuration for performing hard handover may be determined based on the scheduling request configuration. For example, an uplink synchronization sequence for the random access configuration is determined based on uplink synchronization sequences included in the scheduling request configuration.
In some aspects, the scheduling request configuration includes a physical schedule request channel configuration. The physical schedule request channel configuration may include random access preambles allocated for a schedule request and radio resource locations. In addition, the physical schedule request channel configuration may include procedures to transmit random access preambles and/or procedures to monitor a grant after transmitting the schedule request. The schedule request may be transmitted in response to a random access response.
In some aspects, the random access configuration includes a physical random access channel configuration. The physical random access channel configuration may include random access preambles for access request, radio resource locations, procedures to send random access preambles and/or procedures to monitor random access responses.
In some aspects of the disclosure, the UE 502 generates a physical random access channel (PRACH) configuration for the hard handover, based on the received E-RUCCH configuration. The UE 502 then transmits a preamble or training sequence to the target NodeB 506, at time 512, based on the generated PRACH configuration. In some aspects, the E-RUCCH configuration may be allocated a portion of a number (N) SYNC-UL sequences that are allocated to the UE 502 for communication. For example, when eight (8) SYNC-UL sequences are allocated to the UE 502, a portion of the eight SYNC-UL sequences are used for the E-RUCCH configuration and the remaining portion for the PRACH configuration. For example, the ERUCCH configuration may use SYN-UL sequences 1, 2 and 3, and the generated PRACH configuration may use the rest of the SYN-UL sequences (e.g., SYN-UL sequences 4, 5, 6, 7 and 8).
The hard handover procedure may be performed based at least in part on a random access response sent from the target NodeB 506, at time 514, and other random access response parameters. Examples of other random access response parameters may include a preamble detected by a network, uplink timing and power adjustment commands. For example, the random access response from the target NodeB 506 is carried on a random access response channel (e.g., FPACH) and is used to perform the hard handover rather than the baton handover. The random access response from the target NodeB 506 may include timing adjustment information used by the UE 502 to transmit uplink dedicated physical channel (DPCH) data or a special burst (SB), at time 516, in accordance with the hard handover procedure. Next, the UE 502 monitors the downlink DPCH or SB and receives a downlink DPCH or SB from the target NodeB 506, at time 518. As noted, the reception of the downlink DPCH or SB indicates the quality of downlink reception from the target NodeB 506 and may correspond to the detection of the downlink in-sync message from the target NodeB 506. When the UE 502 detects the downlink in-sync message from the target NodeB 506, at time 520, the handover procedure is completed, at time 522.
If the handover command does not include E-RUCCH information, the UE performs baton handover where successful handover is not guaranteed due to open loop power and timing control inaccuracy associated with the baton handover.
The apparatus includes a handover system 714 coupled to a transceiver 730. The transceiver 730 is coupled to one or more antennas 720. The transceiver 730 enables communicating with various other apparatus over a transmission medium. The handover system 714 includes a processor 722 coupled to a computer-readable medium 726. The processor 722 is responsible for general processing, including the execution of software stored on the computer-readable medium 726. The software, when executed by the processor 722, causes the handover system 714 to perform the various functions described for any particular apparatus. The computer-readable medium 726 may also be used for storing data that is manipulated by the processor 722 when executing software.
The handover system 714 includes a receiving module 702 for receiving a handover command including a scheduling request configuration and not having a random access configuration. The handover system 714 also includes a determining module 704 for determining the random access configuration based on the scheduling request configuration. The modules may be software modules running in the processor 722, resident/stored in the computer-readable medium 726, one or more hardware modules coupled to the processor 722, or some combination thereof. The handover system 714 may be a component of the UE 350 and may include the memory 392, and/or the controller/processor 390.
In one configuration, an apparatus, such as an UE 350, is configured for wireless communication including means for receiving. In one aspect, the above means may be the antennas 352, 720, the receiver 354, the transceiver 730, the receive processor 370, the controller/processor 390, the memory 392, the handover module 391, the receiving module 702, the processor 722, and/or the handover system 714 configured to perform the functions recited by the aforementioned means. In another aspect, the aforementioned means may be a module or any apparatus configured to perform the functions recited by the aforementioned means.
In one configuration, the apparatus configured for wireless communication also includes means for determining. In one aspect, the above means may be the receive processor 370, the controller/processor 390, the memory 392, the handover module 391, the determining module 704, the processor 722, and/or the handover system 714 configured to perform the functions recited by the aforementioned means. In another aspect, the aforementioned means may be a module or any apparatus configured to perform the functions recited by the aforementioned means.
Several aspects of a telecommunications system has been presented with reference to TD-SCDMA and LTE systems. As those skilled in the art will readily appreciate, various aspects described throughout this disclosure may be extended to other telecommunication systems, network architectures and communication standards. By way of example, various aspects may be extended to other UMTS systems such as W-CDMA, high speed downlink packet access (HSDPA), high speed uplink packet access (HSUPA), high speed packet access plus (HSPA+) and TD-CDMA. Various aspects may also be extended to systems employing global system for mobile communications (GSM), long term evolution (LTE) (in FDD, TDD, or both modes), LTE-Advanced (LTE-A) (in FDD, TDD, or both modes), CDMA2000, evolution-data optimized (EV-DO), ultra mobile broadband (UMB), IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802.20, ultra-wideband (UWB), Bluetooth, and/or other suitable systems. The actual telecommunication standard, network architecture, and/or communication standard employed will depend on the specific application and the overall design constraints imposed on the system.
Several processors have been described in connection with various apparatuses and methods. These processors may be implemented using electronic hardware, computer software, or any combination thereof. Whether such processors are implemented as hardware or software will depend upon the particular application and overall design constraints imposed on the system. By way of example, a processor, any portion of a processor, or any combination of processors presented in this disclosure may be implemented with a microprocessor, microcontroller, digital signal processor (DSP), a field-programmable gate array (FPGA), a programmable logic device (PLD), a state machine, gated logic, discrete hardware circuits, and other suitable processing components configured to perform the various functions described throughout this disclosure. The functionality of a processor, any portion of a processor, or any combination of processors presented in this disclosure may be implemented with software being executed by a microprocessor, microcontroller, DSP, or other suitable platform.
Software shall be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executables, threads of execution, procedures, functions, etc., whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise. The software may reside on a computer-readable medium. A computer-readable medium may include, by way of example, memory such as a magnetic storage device (e.g., hard disk, floppy disk, magnetic strip), an optical disk (e.g., compact disc (CD), digital versatile disc (DVD)), a smart card, a flash memory device (e.g., card, stick, key drive), random access memory (RAM), read only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), a register, or a removable disk. Although memory is shown separate from the processors in the various aspects presented throughout this disclosure, the memory may be internal to the processors (e.g., cache or register).
Computer-readable media may be embodied in a computer-program product. By way of example, a computer-program product may include a computer-readable medium in packaging materials. Those skilled in the art will recognize how best to implement the described functionality presented throughout this disclosure depending on the particular application and the overall design constraints imposed on the overall system.
It is to be understood that the specific order or hierarchy of steps in the methods disclosed is an illustration of exemplary processes. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the methods may be rearranged. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented unless specifically recited therein.
The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects. Thus, the claims are not intended to be limited to the aspects shown herein, but is to be accorded the full scope consistent with the language of the claims, wherein reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more.” Unless specifically stated otherwise, the term “some” refers to one or more. A phrase referring to “at least one of” a list of items refers to any combination of those items, including single members. As an example, “at least one of: a, b, or c” is intended to cover: a; b; c; a and b; a and c; b and c; and a, b and c. All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims. No claim element is to be construed under the provisions of 35 U.S.C. §112, sixth paragraph, unless the element is expressly recited using the phrase “means for” or, in the case of a method claim, the element is recited using the phrase “step for.”