SELECTIVE MULTICHANNEL AMPLIFICATION IN A DISTRIBUTED ANTENNA SYSTEM (DAS)
20180206197 ยท 2018-07-19
Inventors
Cpc classification
H04W52/52
ELECTRICITY
International classification
H04W52/34
ELECTRICITY
Abstract
Embodiments of the disclosure relate to selective multichannel amplification in a distributed communication system. In this regard, a remote antenna unit (RAU) in the distributed communication system receives downlink digital signals associated with downlink channels having respective downlink channel bandwidths. The RAU digitally scales the downlink digital signals based on respective digital scaling factors to generate scaled downlink digital signals having a substantially equal channel power density in the downlink channels. By digitally scaling the downlink digital signals to provide the substantially equal channel power density in the downlink channels, it is possible to provide substantially uniform radio frequency (RF) coverage range across the downlink channels, thus helping to improve overall RF coverage and user experience in a coverage area of the distributed communication system.
Claims
1. A remote antenna unit (RAU) in a distributed communication system, comprising a plurality of channel circuits configured to: receive a plurality of downlink digital signals at a plurality of signal power levels to be communicated in a plurality of downlink channels having a plurality of downlink channel bandwidths, respectively; and digitally scale the plurality of downlink digital signals based on a plurality of digital scaling factors determined according to the plurality of downlink channel bandwidths to generate a plurality of scaled downlink digital signals having a substantially equal channel power density in the plurality of downlink channels.
2. The RAU of claim 1, wherein the plurality of channel circuits is configured to receive the plurality of downlink digital signals at the plurality of signal power levels that is substantially equal.
3. The RAU of claim 1, wherein each of the plurality of channel circuits is configured to mathematically multiply magnitudes of digital samples representing a respective downlink digital signal among the plurality of downlink digital signals by a respective digital scaling factor to generate a respective scaled downlink digital signal among the plurality of scaled downlink digital signals.
4. The RAU of claim 2, wherein the plurality of channel circuits comprises a plurality of digital channel processing units, respectively, the plurality of digital channel processing units configured to: receive the plurality of digital scaling factors, respectively; and digitally scale the plurality of downlink digital signals based on the plurality of digital scaling factors to generate the plurality of scaled downlink digital signals.
5. The RAU of claim 4, wherein the plurality of channel circuits further comprises a plurality of digital upconverters, respectively, the plurality of digital upconverters configured to digitally upconvert the plurality of scaled downlink digital signals into respective downlink transmission frequencies.
6. The RAU of claim 1, further comprising a channel identifier and router configured to: receive a downlink digital communications signal; split the downlink digital communications signal into the plurality of downlink digital signals; and route the plurality of downlink digital signals to the plurality of channel circuits, respectively.
7. The RAU of claim 6, wherein the channel identifier and router is further configured to: receive the downlink digital communications signal in common public radio interface (CPRI) format; examine control fields in CPRI frames conveyed in the downlink digital communications signal to determine the plurality of downlink channels; and split the downlink digital communications signal into the plurality of downlink digital signals based on the plurality of downlink channels.
8. The RAU of claim 6, further comprising a digital combiner configured to combine the plurality of scaled downlink digital signals to generate a combined downlink digital signal.
9. The RAU of claim 8, further comprising: a broadband digital-to-analog converter (DAC) configured to receive and convert the combined downlink digital signal into a downlink analog radio frequency (RF) signal; and a power amplifier configured to receive and amplify the downlink analog RF signal to generate a downlink RF communications signal.
10. The RAU of claim 8, wherein: the plurality of downlink digital signals comprises a plurality of in-phase (I) sample signals and a plurality of quadrature (Q) sample signals, respectively; and the plurality of channel circuits is configured to: receive the plurality of I sample signals and the plurality of Q sample signals, respectively; and digitally scale the plurality of I sample signals and the plurality of Q sample signals based on the plurality of digital scaling factors to generate a plurality of scaled I sample signals and a plurality of scaled Q sample signals, respectively; and the digital combiner is configured to: combine the plurality of scaled I sample signals to generate a combined downlink I sample signal; and combine the plurality of scaled Q sample signals to generate a combined downlink Q sample signal.
11. The RAU of claim 10, further comprising an I-Q combiner configured to combine the combined downlink I sample signal and the combined downlink Q sample signal to generate the combined downlink digital signal.
12. A method for digitally scaling a plurality of downlink digital signals in a remote antenna unit (RAU) in a distributed communication system, comprising: receiving the plurality of downlink digital signals at a plurality of signal power levels to be communicated in a plurality of downlink channels having a plurality of downlink channel bandwidths, respectively; digitally scaling the plurality of downlink digital signals based on a plurality of digital scaling factors determined according to the plurality of downlink channel bandwidths to generate a plurality of scaled downlink digital signals having a substantially equal channel power density in the plurality of downlink channels.
13. The method of claim 12, further comprising receiving the plurality of downlink digital signals at the plurality of signal power levels that is substantially equal.
14. The method of claim 12, further comprising mathematically multiplying magnitudes of digital samples representing a respective downlink digital signal among the plurality of downlink digital signals by a respective digital scaling factor to generate a respective scaled downlink digital signal among the plurality of scaled downlink digital signals.
15. The method of claim 14, further comprising digitally upconverting the plurality of scaled downlink digital signals into respective downlink transmission frequencies.
16. The method of claim 14, further comprising: receiving a downlink digital communications signal; splitting the downlink digital communications signal into the plurality of downlink digital signals; and routing the plurality of downlink digital signals to a plurality of channel circuits, respectively.
17. The method of claim 16, further comprising: receiving the downlink digital communications signal in common public radio interface (CPRI) format; examining control fields in CPRI frames conveyed in the downlink digital communications signal to determine the plurality of downlink channels; and splitting the downlink digital communications signal into the plurality of downlink digital signals based on the plurality of downlink channels.
18. The method of claim 14, further comprising combining the plurality of scaled downlink digital signals to generate a combined downlink digital signal.
19. The method of claim 18, further comprising: converting the combined downlink digital signal into a downlink analog radio frequency (RF) signal; and amplifying the downlink analog RF signal to generate a downlink RF communications signal.
20. The method of claim 18, further comprising: receiving a plurality of in-phase (1) sample signals and a plurality of quadrature (Q) sample signals; digitally scaling the plurality of I sample signals and the plurality of Q sample signals based on the plurality of digital scaling factors to generate a plurality of scaled I sample signals and a plurality of scaled Q sample signals, respectively; combining the plurality of scaled I sample signals to generate a combined downlink I sample signal; and combining the plurality of scaled Q sample signals to generate a combined downlink Q sample signal.
21. The method of claim 20, further comprising combining the combined downlink I sample signal and the combined downlink Q sample signal to generate the combined downlink digital signal.
22.-37. (canceled)
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
DETAILED DESCRIPTION
[0027] Embodiments of the disclosure relate to selective multichannel amplification in a distributed antenna system (DAS). In this regard, a remote antenna unit (RAU) in the DAS is configured to receive a plurality of downlink digital signals associated with a plurality of downlink channels having respective downlink channel bandwidths. The RAU is configured to digitally scale the downlink digital signals based on respective digital scaling factors to generate a plurality of scaled downlink digital signals having a substantially equal channel power density in the downlink channels. By digitally scaling the downlink digital signals to provide the substantially equal channel power density in the downlink channels, it is possible to provide substantially uniform radio frequency (RF) coverage range across the downlink channels, thus helping to improve overall RF coverage and user experience in a coverage area of the RAU in the DAS.
[0028] Before discussing exemplary aspects of selective multichannel amplification in a DAS that includes specific aspects of the present disclosure, a brief overview of a conventional RAU without the capability of digitally scaling downlink digital signals based on respective downlink channel bandwidths is first provided in reference to
[0029] In this regard,
[0030] In this regard,
[0031] With reference to
[0032] A respective channel power density of the downlink digital signal 204(1) is proportionally related to the respective signal power level P.sub.1 and inversely related to the downlink channel bandwidth BW.sub.1. Likewise, a respective channel power density of the downlink digital signal 204(N) is proportionally related to the respective signal power level P.sub.N and inversely related to the downlink channel bandwidth BW.sub.N. In this regard, since the downlink digital signals 204(1), 204(N) are at the same signal power level P.sub.1, P.sub.N of approximately 35 dBm, the respective channel power densities of the downlink digital signals 204(1), 204(N) will depend inversely upon the downlink channel bandwidths BW.sub.1, BW.sub.N, respectively. As a result, the respective channel power density of the downlink digital signal 204(1), which is associated with the downlink channel bandwidth BW.sub.1 of 5 MHz, will be higher than the respective channel power density of the downlink digital signal 204(N), which is associated with the downlink channel bandwidth BW.sub.N of 20 MHz.
[0033] As illustrated in
[0034] In this regard,
[0035] In this regard, the digital scaling factors F.sub.1-F.sub.N can be determined based on the downlink channel bandwidths BW.sub.1-BW.sub.N, as shown in the equation (Eq. 1) below.
[0036] Accordingly, the channel circuits 306(1)-306(N) are configured to digitally scale the downlink digital signals 302(1)-302(N) based on the digital scaling factors F.sub.1-F.sub.N. In this regard, each of the channel circuits 306(1)-306(N) is configured to mathematically multiply magnitudes of digital samples representing a respective downlink digital signal among the downlink digital signals 302(1)-302(N) by a respective digital scaling factor among the digital scaling factors F.sub.1-F.sub.N. For example, if the downlink digital signal 302(1) includes one hundred digital samples having one hundred respective magnitudes, the channel circuit 306(1) will multiply each of the one hundred respective magnitudes by the digital scaling factor F.sub.1 to generate the scaled downlink digital signal 304(1). The digital scaling performed by the channel circuits 306(1)-306(N) can cause the scaled downlink digital signals 304(1)-304(N) to have a plurality of scaled signal power levels P.sub.1-P.sub.N that is proportional to the downlink channel bandwidths BW.sub.1-BW.sub.N of the downlink channels CH.sub.1-CH.sub.N. As a result, it is possible for the scaled downlink digital signals 304(1)-304(N) to have the substantially equal channel power density in the downlink channels CH.sub.1-CH.sub.N. The RAU 300 includes a digital combiner 308 configured to combine the scaled downlink digital signals 304(1)-304(N) to generate a combined downlink digital signal 310 at a combined signal power level P.sub.C. In a non-limiting example, the digital scaling performed by the channel circuits 306(1)-306(N) can cause the combined signal power level P.sub.C to substantially equal each of the signal power levels P.sub.1-P.sub.N of the downlink digital signals 302(1)-302(N).
[0037] To further illustrate effects of the digital scaling performed by the channel circuits 306(1)-306(N),
[0038]
[0039] For the purpose of illustration, it is assumed that the downlink channel bandwidth BW.sub.1 of the downlink channel CH.sub.1 is 5 MHz and the downlink channel bandwidth BW.sub.N of the downlink channel CH.sub.N is 20 MHz. As such, according to the equation (Eq. 1) above, the digital scaling factor F.sub.1 and the digital scaling factor F.sub.N will be twenty percent (20%) and eighty percent (80%), respectively. It is further assumed that the signal power level P.sub.1 of the downlink digital signal 302(1) and the signal power level P.sub.N of the downlink digital signal 302(N) are both 35 dBm. Accordingly, the channel circuit 306(1) digitally scales the downlink digital signal 302(1) based on the digital scaling factor F.sub.1 to generate the scaled downlink digital signal 304(1) at the scaled signal power level P.sub.1, which is approximately negative forty-two decibel-milliwatts (42 dBm). Likewise, the channel circuit 306(N) digitally scales the downlink digital signal 302(N) based on the digital scaling factor F.sub.N to generate the scaled downlink digital signal 304(N) at the scaled signal power level P.sub.N, which is approximately negative thirty-six decibel-milliwatts (36 dBm). As illustrated in
[0040] By digitally scaling the signal power levels P.sub.1, P.sub.N to the scaled signal power levels P.sub.1, P.sub.N based on the digital scaling factors F.sub.1, F.sub.N, the channel power densities D.sub.1, D.sub.N of the scaled downlink digital signals 304(1), 304(N) will be substantially equal, as illustrated in
[0041] With reference back to
[0042] The RAU 300 can be configured to digitally scale the downlink digital signals 302(1)-302(N) according to a process. In this regard,
[0043] According to the process 400, the channel circuits 306(1)-306(N) in the RAU 300 receive the downlink digital signals 302(1)-302(N) at the signal power levels P.sub.1-P.sub.N to be communicated in the downlink channels CH.sub.1-CH.sub.N having the downlink channel bandwidths BW.sub.1-BW.sub.N, respectively (block 402). Next, the channel circuits 306(1)-306(N) in the RAU 300 digitally scale the downlink digital signals 302(1)-302(N) based on the digital scaling factors F.sub.1-F.sub.N determined according to the downlink channel bandwidths BW.sub.1-BW.sub.N to generate the scaled downlink digital signals 304(1)-304(N) having the substantially equal channel power density in the downlink channels CH.sub.1-CH.sub.N (block 404).
[0044] With reference back to
[0045] The RAU 300 also includes a channel identifier and router 324. In a non-limiting example, the channel identifier and router 324 can be implemented using a Field Programmable Gate Array (FPGA). In another non-limiting example, the channel identifier and router 324 can be implemented as an embedded software system employing a central processing unit (CPU), storage, and memory. In another non-limiting example, the channel identifier and router 324 can be implemented in the same physical FPGA or embedded system as other components, such as the digital channel processing units 320(1)-320(N). The channel identifier and router 324 can be configured to receive a downlink digital communications signal 326. The channel identifier and router 324 splits the downlink digital communications signal 326 into the downlink digital signals 302(1)-302(N) and routes the downlink digital signals 302(1)-302(N) to the channel circuits 306(1)-306(N), respectively.
[0046] In a non-limiting example, the channel identifier and router 324 receives the downlink digital communications signal 326 in common public radio interface (CPRI) format. The channel identifier and router 324 can be configured to examine control fields in CPRI frames conveyed in the downlink digital communications signal 326 to determine the downlink channels CH.sub.1-CH.sub.N. The channel identifier and router 324 then splits the downlink digital communications signal 326 into the downlink digital signals 302(1)-302(N) based on the downlink channels CH.sub.1-CH.sub.N.
[0047] With continuing reference to
[0048] In a non-limiting example, the power scaling controller 328 receives the downlink digital communications signal 326, which is configured to be distributed to the RAU 300, in the CPRI format. In this regard, the power scaling controller 328 examines the control fields in the CPRI frames conveyed in the downlink digital communications signal 326 to determine the downlink channel bandwidths BW.sub.1-BW.sub.N of the downlink channels CH.sub.1-CH.sub.N.
[0049] In another non-limiting example, the power scaling controller 328 is communicatively coupled to a management database 330 configured to store configuration information determined by a management module 332. The management module 332, which may be provided inside or outside the RAU 300, is responsible for configuration and ongoing management of the RAU 300. The management module 332 provides, for example, a management interface to enable management of the RAU 300 by an operator. The management interface may be, for example, a human controlled graphical user interface (GUI). Alternatively, the management interface may be, for example, an electronic interface using a scheme such as Simple Network Management Protocol (SNMP) or various automation schemes. The management module 332 stores functional parameters obtained via the management interface in the management database 330.
[0050] The functional parameters managed via the management module 332 may include, for example, activating and deactivating the RAU 300, or controlling various configuration parameters. These configuration parameters may include, for example, a specification of the number of channels that the RAU 300 will amplify and the downlink channel bandwidths BW.sub.1-BW.sub.N (in, for example, quanta of 100 kiloHertz (Khz)) that the downlink channels CH.sub.1-CH.sub.N utilize. The functional parameters stored in the management database 330 may be utilized by the power scaling controller 328 to determine the downlink channel bandwidths BW.sub.1-BW.sub.N of the downlink channels CH.sub.1-CH.sub.N. In addition, the functional parameters stored in the management database 330 may be utilized by the digital channel processing units 320(1)-320(N) to digitally scale the downlink digital signals 302(1)-302(N) based on the digital scaling factors F.sub.1-F.sub.N.
[0051] Upon determining the downlink channel bandwidths BW.sub.1-BW.sub.N of the downlink channels CH.sub.1-CH.sub.N, the power scaling controller 328 calculates a total downlink channel bandwidth BW.sub.TOTAL (BW.sub.TOTAL=.sub.i=1.sup.i=NBWi) of the downlink digital signals 302(1)-302(N). The power scaling controller 328 then determines a digital scaling factor F.sub.1 for each of the downlink digital signals 302(1)-302(N) according to the equation (Eq. 1) above.
[0052] The power scaling controller 328 may determine the digital scaling factors F.sub.1-F.sub.N according to a process. In this regard,
[0053] The power scaling controller 328 then selects a downlink channel bandwidth BW.sub.i (1iN) among the downlink channel bandwidths BW.sub.1-BW.sub.N of a downlink channel CH.sub.i (1iN) among the downlink channels CH.sub.1-CH.sub.N (block 508). The power scaling controller 328 then computes a digital scaling factor F.sub.1 (1iN) for the downlink channel CH.sub.i (1iN) (block 510). The power scaling controller 328 then increases the pointer i by one (1) (i=i+1) (block 512). The power scaling controller 328 then checks whether the pointer i equals N (block 514). If the pointer i is less than N, the power scaling controller 328 returns to block 508 to compute a next digital scaling factor. Otherwise, the power scaling controller 328 ends the process (block 516).
[0054] With reference back to
[0055] According to the process 600, the digital channel processing unit 320(1) performs policy-independent scaling on the downlink digital signal 302(1) based on a policy-independent scaling factor (block 602). In a non-limiting example, the policy-independent scaling can help reduce magnitude (e.g., amplitude) of the downlink digital signal 302(1) to prevent gain compression in the power amplifier 316 of
[0056] With reference back to
[0057] Subsequently, the digital upconverters 322(1)-322(N) digitally upconvert the scaled I sample signals 338(1)-338(N) and the scaled Q sample signals 340(1)-340(N) into the respective downlink transmission frequencies. The digital combiner 308 combines the scaled I sample signals 338(1)-338(N) to generate a combined downlink I sample signal 342. The digital combiner 308 also combines the scaled Q sample signals 340(1)-340(N) to generate a combined downlink Q sample signal 344.
[0058] In a non-limiting example, the RAU 300 further includes an I-Q combiner 346 coupled to the digital combiner 308. The I-Q combiner 346 is configured to combine the combined downlink I sample signal 342 and the combined downlink Q sample signal 344 to generate the combined downlink digital signal 310. The broadband DAC 312 converts the combined downlink digital signal 310 into the downlink analog RF signal 314.
[0059] With continuing reference to
[0060] In one non-limiting example, the RAU 300 may include a plurality of the power amplifier 316 and/or a plurality of the digital combiner 308. As such, each power amplifier 316 amplifies a particular range of frequencies. Each of the channel circuits 306(1)-306(N) may be coupled to a respective digital combiner 308 according to the downlink channels CH.sub.1-CH.sub.N. In this manner, each of the downlink channels CH.sub.1-CH.sub.N is amplified by a respective power amplifier 316.
[0061] In another non-limiting example, the RAU 300 may include a plurality of the broadband DAC 312 coupled directly to the channel circuits 306(1)-306(N), respectively. In this regard, the broadband DAC 312 receives and converts the scaled downlink digital signals 304(1)-304(N) into respective downlink analog RF signals. As such, the digital combiner 308 may be replaced by an analog combiner disposed between the broadband DAC 312 and the power amplifier 316.
[0062]
[0063] For example, one RIM 702 may be configured to support the Personalized Communications System (PCS) radio band. Another RIM 702 may be configured to support the 800 megahertz (MHz) radio band. In this example, by inclusion of the RIMs 702(1)-702(M), the HEU 704 could be configured to support and distribute communications signals on both PCS and Long-Term Evolution (LTE) 700 radio bands, as an example. The RIMs 702 may be provided in the HEU 704 that support any frequency bands desired, including but not limited to the US Cellular band, PCS band, Advanced Wireless Service (AWS) band, 700 MHz band, Global System for Mobile communications (GSM) 900, GSM 1800, and Universal Mobile Telecommunications System (UMTS). The RIMs 702(1)-702(M) may also be provided in the HEU 704 that support any wireless technologies desired, including but not limited to Code Division Multiple Access (CDMA), CDMA200, 1RTT, EvolutionData Only (EV-DO), UMTS, High-speed Packet Access (HSPA), GSM, General Packet Radio Services (GPRS), Enhanced Data GSM Environment (EDGE), Time Division Multiple Access (TDMA), LTE, iDEN, and Cellular Digital Packet Data (CDPD).
[0064] The RIMs 702(1)-702(M) may be provided in the HEU 704 that support any frequencies desired, including but not limited to US FCC and Industry Canada frequencies (824-849 MHz on uplink and 869-894 MHz on downlink), US FCC and Industry Canada frequencies (1850-1915 MHz on uplink and 1930-1995 MHz on downlink), US FCC and Industry Canada frequencies (1710-1755 MHz on uplink and 2110-2155 MHz on downlink), US FCC frequencies (698-716 MHz and 776-787 MHz on uplink and 728-746 MHz on downlink), EU R & TTE frequencies (880-915 MHz on uplink and 925-960 MHz on downlink), EU R & TTE frequencies (1710-1785 MHz on uplink and 1805-1880 MHz on downlink), EU R & TTE frequencies (1920-1980 MHz on uplink and 2110-2170 MHz on downlink), US FCC frequencies (806-824 MHz on uplink and 851-869 MHz on downlink), US FCC frequencies (896-901 MHz on uplink and 929-941 MHz on downlink), US FCC frequencies (793-805 MHz on uplink and 763-775 MHz on downlink), and US FCC frequencies (2495-2690 MHz on uplink and downlink).
[0065] With continuing reference to
[0066] The OIMs 708(1)-708(N) each include E/O converters to convert the downlink digital communications signals 706D(1)-706D(R) into the downlink optical fiber-based communications signals 710D(1)-710D(R). The downlink optical fiber-based communications signals 710D(1)-710D(R) are communicated over a downlink optical fiber-based communications medium 712D to a plurality of remote antenna units (RAUs) 714(1)-714(S). A plurality of RAUs among the RAUs 714(1)-714(S) are provided as the RAU 300 of
[0067] RAU E/O converters are also provided in the RAUs 714(1)-714(S) to convert uplink digital communications signals 718U(1)-718U(S) received from the client devices through the antennas 716(1)-716(S) into uplink optical fiber-based communications signals 710U(1)-710U(S). The RAUs 714(1)-714(S) communicate the uplink optical fiber-based communications signals 710U(1)-710U(S) over an uplink optical fiber-based communications medium 712U to the OIMs 708(1)-708(N) in the HEU 704. The OIMs 708(1)-708(N) include O/E converters that convert the received uplink optical fiber-based communications signals 710U(1)-710U(S) into uplink digital communications signals 720U(1)-720U(S), which are processed by the RIMs 702(1)-702(M) and provided as the uplink digital communications signals 720U(1)-720U(S). The HEU 704 may provide the uplink digital communications signals 720U(1)-720U(S) to a base station or other communications system.
[0068] Note that the downlink optical fiber-based communications medium 712D and the uplink optical fiber-based communications medium 712U connected to each RAU 714(1)-714(S) may be a common optical fiber-based communications medium, wherein for example, wave division multiplexing (WDM) is employed to provide the downlink optical fiber-based communications signals 710D(1)-710D(R) and the uplink optical fiber-based communications signals 710U(1)-710U(S) on the same optical fiber-based communications medium.
[0069] The DAS 700 further includes the power scaling controller 328 of
[0070] The DAS 700 of
[0071]
[0072] In this regard, the computer system 900 in
[0073] The exemplary computer system 900 in this embodiment includes a processing device or processor 902, a main memory 904 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM), such as synchronous DRAM (SDRAM), etc.), and a static memory 906 (e.g., flash memory, static random access memory (SRAM), etc.), which may communicate with each other via a data bus 908. Alternatively, the processor 902 may be connected to the main memory 904 and/or the static memory 906 directly or via some other connectivity means. The processor 902 may be a controller including the power scaling controller 328 and the digital channel processing units 320(1)-320(N) of
[0074] The processor 902 represents one or more general-purpose processing devices, such as a microprocessor, central processing unit, or the like. More particularly, the processor 902 may be a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a processor implementing other instruction sets, or other processors implementing a combination of instruction sets. The processor 902 is configured to execute processing logic in instructions for performing the operations and steps discussed herein.
[0075] The computer system 900 may further include a network interface device 910. The computer system 900 also may or may not include an input 912, configured to receive input and selections to be communicated to the computer system 900 when executing instructions. The computer system 900 also may or may not include an output 914, including but not limited to a display, a video display unit (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device (e.g., a keyboard), and/or a cursor control device (e.g., a mouse).
[0076] The computer system 900 may or may not include a data storage device that includes instructions 916 stored in a computer-readable medium 918. The instructions 916 may also reside, completely or at least partially, within the main memory 904 and/or within the processor 902 during execution thereof by the computer system 900, the main memory 904 and the processor 902 also constituting computer-readable medium. The instructions 916 may further be transmitted or received over a network 920 via the network interface device 910.
[0077] While the computer-readable medium 918 is shown in an exemplary embodiment to be a single medium, the term computer-readable medium should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term computer-readable medium shall also be taken to include any medium that is capable of storing, encoding, or carrying a set of instructions for execution by the processing device and that cause the processing device to perform any one or more of the methodologies of the embodiments disclosed herein. The term computer-readable medium shall accordingly be taken to include, but not be limited to, solid-state memories, optical medium, and magnetic medium.
[0078] The embodiments disclosed herein include various steps. The steps of the embodiments disclosed herein may be formed by hardware components or may be embodied in machine-executable instructions, which may be used to cause a general-purpose or special-purpose processor programmed with the instructions to perform the steps. Alternatively, the steps may be performed by a combination of hardware and software.
[0079] The embodiments disclosed herein may be provided as a computer program product, or software, that may include a machine-readable medium (or computer-readable medium) having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to the embodiments disclosed herein. A machine-readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium includes: a machine-readable storage medium (e.g., ROM, random access memory (RAM), a magnetic disk storage medium, an optical storage medium, flash memory devices, etc.); and the like.
[0080] Unless otherwise expressly stated, it is in no way intended that any method set forth herein be construed as requiring that its steps be performed in a specific order. Accordingly, where a method claim does not actually recite an order to be followed by its steps, or it is not otherwise specifically stated in the claims or descriptions that the steps are to be limited to a specific order, it is in no way intended that any particular order be inferred.
[0081] It will be apparent to those skilled in the art that various modifications and variations can be made without departing from the spirit or scope of the invention. Since modifications, combinations, sub-combinations and variations of the disclosed embodiments incorporating the spirit and substance of the invention may occur to persons skilled in the art, the invention should be construed to include everything within the scope of the appended claims and their equivalents.