1. A method of generating updated feed-forward equaliser (FFE) coefficients for use in an equaliser in a wireless receiver, the equaliser comprising a FFE and a decision-feedback equaliser (DFE) and the method comprising:
updating a channel impulse response estimate;
updating DFE coefficients; and
calculating updated FFE coefficients based on the updated channel impulse response estimate and the updated DFE coefficients.
2. The method according to claim 1, wherein the DFE coefficients are updated based on a decision directed error signal.
3. The method according to claim 1, wherein calculating updated FFE coefficients comprises:
multiplying a reciprocal of the updated channel impulse response estimate in the frequency domain and the updated DFE coefficients in the frequency domain.
4. The method according to claim 1, wherein the DFE coefficients are updated using a least-mean-square algorithm.
5. The method according to claim 1, wherein the updated FFE coefficients are generated in the frequency domain.
6. The method according to claim 1, wherein the updated FFE coefficients are generated in the time domain.
7. An equaliser for use in a wireless receiver, comprising:
a feed-forward equaliser (FFE);
a decision-feedback equaliser (DFE); and
a coefficient tracking module arranged to generate updated coefficients for the FFE and DFE, including
a channel impulse response (CIR) estimation module arranged to store and update an averaged estimate of CIR,
a DFE coefficient update module arranged to generate updated DFE coefficients, and
hardware logic arranged to generate updated FFE coefficients based on the updated CIR estimate and the updated DFE coefficients.
8. The equaliser according to claim 7, wherein the DFE coefficient update module comprises an input for receiving a decision directed error signal and wherein the module is arranged to update the DFE coefficients based on the received decision directed error signal.
9. The equaliser according to claim 7, wherein the hardware logic comprises:
a multiplier arranged to multiply a reciprocal of the updated channel impulse response estimate in the frequency domain and the updated DFE coefficients in the frequency domain.
10. A digital television receiver, comprising the equaliser as claimed in claim 7.
11. A non-transitory computer readable storage medium having stored thereon computer readable instructions that, when executed at a computer system for generating a representation of a digital circuit from definitions of circuit elements and data defining rules for combining those circuit elements, cause the computer system to generate a processor comprising the equaliser as claimed in claim 7.
12. A non-transitory computer readable storage medium having stored thereon computer readable instructions that, when executed at a computer system for generating a representation of a digital circuit from definitions of circuit elements and data defining rules for combining those circuit elements, cause the computer system to generate a processor configured to:
update a channel impulse response estimate of a wireless receiver having a decision feedback equaliser (DFE) and a feed-forward equaliser (FFE);
update DFE coefficients; and
calculate updated FFE coefficients based on the updated channel impulse response estimate and the updated DFE coefficients.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A system for hosting one or more mobile devices on one or more servers in a cloud computing environment for testing one or more mobile applications, the system comprising:
one or more client virtualization managers, residing in the one or more mobile devices, configured to collect and send information related to the one or more mobile devices to the one or more servers to facilitate hosting of the one or more mobile devices;
one or more mobile devices virtualization managers, residing in the one or more servers, configured to receive and use the information related to the one or more mobile devices to establish a connection with the one or more client virtualization managers for accessing and hosting the one or more mobile devices;
a server application configured to facilitate one or more testers to select a mobile device from a list of the one or more hosted mobile devices rendered on the server application; and
an automation tool interface handler configured to:
virtualize Universal Serial Bus (USB) port of one or more local machines connected to the one or more servers;
connect the selected mobile device to the virtualized USB port of the one or more local machines, such that the selected mobile device is locally available for use on the one or more local machines; and
facilitate testing of the one or more mobile applications on the locally available mobile device by one or more test automation tools.
2. The system of claim 1 further comprising one or more client applications configured to provide one or more options to one or more users for hosting the one or more mobile devices on the one or more servers.
3. The system of claim 1, wherein the one or more client virtualization managers comprise:
a client device enumerator configured to identify and collect the information related to the mobile device;
a client connection manager configured to establish the connection for hosting the mobile device and maintaining the connection between the hosted mobile device and the one or more servers using the collected information;
a device session manager configured to initiate and maintain a session between the hosted mobile device and a server once the connection is established; and
a client events handler configured to:
facilitate encrypting and decrypting one or more requests associated with one or more hosted mobile device specific operations when the session is in progress; and
forward the one or more encrypted and decrypted requests to a client kernel services module, residing in the mobile device, for performing the one or more hosted mobile device specific operations associated with the one or more encrypted and decrypted requests.
4. The system of claim 3, wherein the one or more hosted mobile device specific operations associated with the one or more requests include at least one of: placing a call, sending an SMS message, downloading and using an application, testing of the one or more mobile applications and any other device specific operation initiated by the one or more test automation tools.
5. The system of claim 3, wherein the server application facilitates the one or more test automation tools to use the hosted mobile device selected by the one or more testers for testing by:
initiating the session with the client virtualization manager of the hosted mobile device to be used for testing of the one or more mobile applications; and
sending the one or more requests, associated with the testing of the one or more mobile applications, to the client virtualization manager once the session is initiated, wherein the one or more requests correspond to the one or more hosted mobile device specific operations initiated by the one or more test automation tools.
6. The system of claim 5, wherein the one or more mobile devices virtualization managers comprise:
a server enumerator configured to receive information related to the one or more mobile devices from the one or more client virtualization managers;
a server connection manager configured to ensure connectivity of the server with the one or more hosted mobile devices using the received information;
a server session manager configured to initiate and maintain the session between the one or more hosted mobile devices connected to the server; and
a server events handler configured to encrypt and decrypt the one or more requests associated with the one or more hosted mobile device specific operations initiated by the one or more test automation tools when the session is in progress.
7. The system of claim 1, wherein the information related to the one or more mobile devices include at least one of: model number, manufacturing details, Operating System (OS) version details, location details and carrier details.
8. The system of claim 1, wherein the one or more test automation tools reside in the one or more local machines.
9. The system of claim 1, wherein the one or more test automation tools are connected to the one or more local machines.
10. A computer-implemented method for hosting one or more mobile devices on one or more servers in a cloud computing environment for testing one or more mobile applications, via program instructions stored in a memory and executed by a processor, the computer-implemented method comprising:
capturing and sending information related to the one or more mobile devices to the one or more servers to facilitate hosting of the one or more mobile devices;
receiving and using, at the one or more servers, the information related to the one or more mobile devices to establish a connection for accessing and hosting the one or more mobile devices;
facilitating one or more testers to select, via one or more local machines, a mobile device from a list of the one or more hosted mobile devices rendered on a server application;
virtualizing Universal Serial Bus (USB) port of the one or more local machines connected to the one or more servers;
connecting the selected mobile device to the virtualized USB port of the one or more local machines, such that the selected mobile is locally available for use on the one or more local machines; and
facilitating testing of the one or more mobile applications on the locally available mobile device by one or more test automation tools.
11. The computer-implemented method of claim 10 further comprising providing one or more options, via a client application, to one or more users for hosting the one or more mobile devices on the one or more servers.
12. The computer-implemented method of claim 11, wherein facilitating testing of the one or more mobile applications on the locally available mobile device by the one or more test automation tools comprise:
encrypting and decrypting one or more requests associated with one or more hosted mobile device specific operations when a session is in progress, wherein the one or more hosted mobile device specific operations are initiated by the one or more test automation tools; and
forwarding the one or more encrypted and decrypted requests to a client kernel services module, residing in the mobile device, for performing the one or more hosted mobile device specific operations associated with the one or more encrypted and decrypted requests.
13. The computer-implemented method of claim 12, wherein the one or more hosted mobile device specific operations associated with the one or more requests include at least one of: placing a call, sending an SMS message, downloading and using the one or more mobile applications, testing of the one or more mobile applications and any other device specific operation performed by the one or more test automation tools.
14. A computer program product for hosting one or more mobile devices on one or more servers in a cloud computing environment for testing one or more mobile applications, the computer program product comprising:
a non-transitory computer-readable medium having computer-readable program code stored thereon, the computer-readable program code comprising instructions that when executed by a processor, cause the processor to:
capture and send information related to the one or more mobile devices to the one or more servers to facilitate hosting of the one or more mobile devices;
receive and use, at the one or more servers, the information related to the one or more mobile devices to establish a connection for accessing and hosting the one or more mobile devices;
facilitate one or more testers to select, via one or more local machines, a mobile device from a list of the one or more hosted mobile devices rendered on a server application;
virtualize Universal Serial Bus (USB) port of the one or more local machines connected to the one or more servers;
connect the selected mobile device to the virtualized USB port of the one or more local machines, such that the selected mobile is locally available for use on the one or more local machines; and
facilitate testing of the one or more mobile applications on the locally available mobile device by one or more test automation tools.
15. The computer program product of claim 14 further comprising providing one or more options, via a client application, to one or more users for hosting the one or more mobile devices on the one or more servers.