1460724372-4f5b17df-aa12-4886-8d0e-bbd47a8d2346

1. A magnetic field sensor for sensing a position of a target object configured to rotate, comprising:
a semiconductor substrate;
a plurality of magnetic field sensing elements disposed on the semiconductor substrate, wherein the plurality of magnetic field sensing elements is configured to generate a respective plurality of magnetic field sensing element output signals responsive to a magnetic field having a direction component in an x-y plane parallel to a first major surface of the semiconductor substrate, the x-y plane having an x-direction and a y-direction orthogonal to the x-direction;
an angle detection circuit coupled to receive a signal representative of the plurality of magnetic field sensing element output signals, and configured to generate an x-y angle signal indicative of an angle of the direction component of the magnetic field in the x-y plane; and
a thresholding processor coupled to receive the x-y angle signal, configured to compare a plurality of threshold values with the x-y angle signal to generate a thresholded signal having at least two states, wherein the thresholded signal is in one of the at least two states at some times and in another one of the at least two states at other times as the direction component of the magnetic field rotates in the x-y plane.
2. The magnetic field sensor of claim 1, wherein the plurality of magnetic field sensing elements comprises a plurality of vertical Hall elements arranged as a circular vertical Hall (CVH) structure, wherein each one of the plurality of vertical Hall elements is arranged upon a common circular implant region.
3. The magnetic field sensor of claim 2, wherein the plurality of vertical Hall elements, the angle detection circuit, and the thresholding circuit are disposed upon a common substrate.
4. The magnetic field sensor of claim 2, wherein the x-y angle signal is linearly related to the angle of the direction component of the magnetic field.
5. The magnetic field sensor of claim 2, wherein the plurality of threshold values is selected to result in the thresholded signal being substantially the same as a known true power on state (TPOS) signal used in an engine control system.
6. The magnetic field sensor of claim 2, further comprising:
a memory device configured to receive and store the plurality of threshold values, wherein the thresholding circuit is coupled to receive the plurality of threshold values from the memory device.
7. The magnetic field sensor of claim 6, wherein the plurality of threshold values is selected to result in the thresholded signal being substantially the same as a known true power on state (TPOS) signal used in an engine control system.
8. The magnetic field sensor of claim 6, wherein the memory device is configured to receive the plurality of threshold values from outside of the magnetic field sensor.
9. The magnetic field sensor of claim 2, further comprising:
a rotation speed processor coupled to receive the x-y angle signal and configured to generate a rotation speed signal indicative of a speed of rotation of the object by identifying a rate of angle change represented by the x-y angle signal.
10. The magnetic field sensor of claim 9, further comprising:
a rotation direction processor coupled to receive the x-y angle signal and configured to generate a rotation direction signal indicative of a direction of rotation of the object by identifying direction of angle change represented by the x-y angle signal.
11. The magnetic field sensor of claim 10, further comprising:
an output protocol processor coupled to receive the thresholded signal and at least one of the rotation speed signal or the rotation direction signal, and configured to generate an output signal representative of the thresholded signal and representative of at least one of the rotation speed signal or the rotation direction signal, wherein the output signal is in a format selected from among a SENT format, an I2C format, a pulse width modulated (PWM) format, or a VDA format.
12. The magnetic field sensor of claim 2, further comprising:
an output protocol processor coupled to receive the thresholded signal, and configured to generate an output signal representative of the thresholded signal, wherein the output signal is in a format selected from among a SENT format, an I2C format, a pulse width modulated (PWM) format, or a VDA format.
13. The magnetic field sensor of claim 2, further comprising:
a magnet disposed proximate to the plurality of magnetic field sensing elements and coupled to the target object, the magnet to generate the magnetic field, wherein the magnet comprises a disk magnet for which half of the disk magnet is polarized in a first direction and the other half of the disk magnet is polarized in a second direction opposite from the first direction, wherein the disk magnet is affixed to the object.
14. The magnetic field sensor of claim 13, wherein the disk magnet has a generally round shape with a center, wherein an axis of rotation of the disk magnet intersects the center, and wherein the disk magnet is disposed such that the axis of rotation also intersects a center of the CVH structure.
15. The magnetic field sensor of claim 13, wherein the disk magnet has a generally round shape with a center, wherein an axis of rotation of the disk magnet intersects the center, and wherein the disk magnet is disposed such that the axis of rotation does not intersect a center of the CVH structure, wherein the disk magnet is disposed such that a major plane of the disk magnet is in the same plane as a major plane of the CVH structure.
16. The magnetic field sensor of claim 1, wherein the plurality of magnetic field sensing elements comprises a plurality of magnetoresistance elements.
17. A method used in a magnetic field sensor, comprising:
generating a plurality magnetic field sensing element output signals with a corresponding plurality of magnetic field sensing elements disposed on a semiconductor substrate, wherein the plurality of magnetic field sensing element output signals is responsive to a magnetic field having a direction component in an x-y plane parallel to a first major surface of the semiconductor substrate, the x-y plane having an x-direction and a y-direction orthogonal to the x-direction;
generating an x-y angle signal indicative of an angle of the direction component in the x-y plane in response to a signal representative of the plurality of magnetic field sensing element output signals; and
comparing a plurality of threshold values with the x-y angle signal to generate a thresholded signal having at least two states, wherein the thresholded signal is in one of the at least two states at some times and in another one of the at least two states at other times as the direction component of the magnetic field rotates in the x-y plane.
18. The method of claim 17, wherein the plurality of magnetic field sensing elements comprises a plurality of vertical Hall elements arranged as a circular vertical Hall (CVH) structure, wherein each one of the plurality of vertical Hall elements is arranged upon a common circular implant region.
19. The method of claim 18, wherein the plurality of vertical Hall elements, the angle detection circuit, and the thresholding circuit are disposed upon a common substrate.
20. The method of claim 18, wherein the x-y angle signal is linearly related to the angle of the direction component of the magnetic field.
21. The method of claim 18, further comprising:
selecting the plurality of threshold values to result in the thresholded signal being substantially the same as a known true power on state (TPOS) signal used in an engine control system.
22. The method of claim 18, further comprising:
receiving and storing the plurality of threshold values with a memory device.
23. The method of claim 22, wherein the memory device is configured to receive the plurality of threshold values from outside of the magnetic field sensor.
24. The method of claim 18, further comprising:
processing the x-y angle signal to generate a rotation speed signal indicative of a speed of rotation of the object by identifying a rate of state transitions in the thresholded signal.
25. The method of claim 24, further comprising:
processing the x-y angle signal to generate a rotation direction signal indicative of a direction of rotation of the object by identifying a pattern of state transitions in the thresholded signal.
26. The method of claim 25, further comprising:
processing the thresholded signal and at least one of the rotation speed signal or the rotation direction signal to generate an output signal representative of the thresholded signal and representative of at least one of the rotation speed signal or the rotation direction signal, wherein the output signal is in a format selected from among a SENT format, an I2C format, a pulse width modulated (PWM) format, or a VDA format.
27. The method of claim 18, further comprising:
processing the thresholded signal to generate an output signal representative of the thresholded signal, wherein the output signal is in a format selected from among a SENT format, an I2C format, a pulse width modulated (PWM) format, or a VDA format.
28. The method of claim 17, wherein the plurality of magnetic field sensing elements comprises a plurality of magnetoresistance elements.

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 method comprising:
determining whether an amount of available computing resources at a client device comprising a processor and memory meets or exceeds a computing resource availability threshold at the client device;
performing a processing operation on a data stream at the client device to produce a pre-processed data stream when it is determined that the amount of available computing resources meets or exceeds the computing resource availability threshold; and
transmitting the pre-processed data stream for storage to a networked storage system via a network, the networked storage system operable to store deduplicated data for retrieval via the network.
2. The method recited in claim 1, wherein the processing operation comprises:
deduplicating the data stream.
3. The method recited in claim 1, wherein the processing operation comprises compressing the data stream.
4. The method recited in claim 1, wherein the processing operation comprises encrypting the data stream.
5. The method recited in claim 1, wherein the processing operation comprises:
parsing the data stream to identify one or more data chunks, and
for one or more of the identified data chunks, performing an operation selected from the group consisting of: deduplicating the identified data chunk, compressing the identified data chunk, and encrypting the identified data chunk.
6. The method recited in claim 5, wherein the one or more data chunks are identified via a rolling hash parsing technique operable to generate at least some identical chunks when parsing different but overlapping data streams.
7. The method recited in claim 5, wherein the processing operation further comprises:
determining a respective fingerprint for each identified data chunk by applying a hash function to the identified data chunk.
8. The method recited in claim 7, wherein the processing operation further comprises:
determining whether each identified data chunk is stored at a networked storage system by transmitting each fingerprint to the networked storage system via the network.
9. The method recited in claim 8, wherein determining whether the identified chunk is stored at the networked storage system further comprises:
receiving a fingerprint status message from the networked storage system, the fingerprint status message indicating whether the chunk associated with the fingerprint is stored at the networked storage system.
10. The method recited in claim 5, wherein the processing operation further comprises:
transmitting a block map update request message to the networked storage system, the block map update request message including information for updating a block map at the networked storage system, the block map identifying a designated memory location at which each data encrypted chunk is stored at the networked storage system.
11. The method recited in claim 1, the method further comprising:
identifying an amount of available computing resources at the networked storage system.
12. The method recited in claim 1, wherein the data stream is generated at the client device via a network storage protocol selected from the group consisting of: the Network File System (NFS) protocol, the Common Internet File System (CIFS) protocol, and the Open Storage (OST) protocol.
13. A device comprising:
memory operable to store a data stream;
a processor operable to determine whether an amount of available computing resources at a client device meets or exceeds a computing resource availability threshold at the client device and perform a processing operation on the data stream to produce a pre-processed data stream when it is determined that the amount of available computing resources meets or exceeds the computing resource availability threshold; and
a communications interface operable to transmit the pre-processed data stream for storage to a networked storage system via a network, the networked storage system operable to store deduplicated data for retrieval via the network.
14. The device recited in claim 13, wherein the processing operation is an operation selected from the group consisting of: deduplicating the data stream, encrypting the data stream, and compressing the data stream.
15. The device recited in claim 13, wherein the processing operation comprises:
parsing the data stream to identify one or more data chunks.
16. The device recited in claim 15, wherein the one or more data chunks are identified via a rolling hash parsing technique operable to generate at least some identical chunks when parsing different but overlapping data streams.
17. The device recited in claim 15, wherein the processing operation further comprises:
determining a respective fingerprint for each identified data chunk by applying a hash function to the identified data chunk.
18. The device recited in claim 17, wherein the processing operation further comprises:
determining whether each identified data chunk is stored at a networked storage system by transmitting each fingerprint to the networked storage system via the network.
19. The device recited in claim 18, wherein determining whether the identified chunk is stored at the networked storage system further comprises:
receiving a fingerprint status message from the networked storage system, the fingerprint status message indicating whether the chunk associated with the fingerprint is stored at the networked storage system.
20. One or more computer readable media having instructions stored thereon for performing a method, the method comprising:
determining whether an amount of available computing resources at a client device comprising a processor and memory meets or exceeds a computing resource availability threshold at the client device;
performing a processing operation on a data stream at the client device to produce a pre-processed data stream when it is determined that the amount of available computing resources meets or exceeds the computing resource availability threshold; and
transmitting the pre-processed data stream for storage to a networked storage system via a network, the networked storage system operable to store deduplicated data for retrieval via the network.