Patent application title: SERIAL-CHAINING PROXIMITY SENSORS FOR GESTURE RECOGNITION
Warren Craddock (San Francisco, CA, US)
David W. Ritter (San Jose, CA, US)
David W. Ritter (San Jose, CA, US)
Philip Golden (Menlo Park, CA, US)
Intersil Americas Inc.
IPC8 Class: AH01L3100FI
Class name: Radiant energy invisible radiant energy responsive electric signalling infrared responsive
Publication date: 2011-07-28
Patent application number: 20110180709
A system and method for identifying a position of a moving object,
utilizing a serial chain of sensors is provided. The serial chain reduces
the power needed for the motion detection system, allowing implementation
of the motion detection system on a low-power computing device, such as a
microcontroller. The serial chain can provide automatic address
assignment without dedicated pins. The serial chain can also provide
automatic sequencing of access to a shared LED. The serial chain can also
provide automatic time correlation of data from multiple sensors in the
motion detection system.
1. An apparatus, comprising: at least one detector that generates an
electrical signal in response to detecting at least one motion; and a
motion detector circuit that determines that the electrical signal
corresponds to the at least one motion; wherein, the at least one
detector sends the electrical signal to the motion detector circuit
across a bus; and the at least one detector receives an address on the
bus according to a serial chain.
2. The apparatus of claim 1, wherein the at least one detector is at least one light sensor.
3. The apparatus of claim 3, wherein the at least one light sensor comprises at least one infrared (IR) sensor.
4. The apparatus of claim 1, wherein the electrical signal comprises a datagram and the address is assigned for the at least one detector based at least in part on the datagram
5. The apparatus of claim 4, wherein the datagram comprises a first field that indicates that an address should be incremented by a number in a second field.
6. The apparatus of claim 5, wherein the first data field is a COMMAND field set to 00.
7. The apparatus of claim 5, wherein the second data field is an 8-bit field.
8. The apparatus sensor of claim 7, wherein the second data field is initially set to 1.
9. The apparatus of claim 8, wherein the at least one detector increments the second data field by one before sending the datagram to a next detector.
10. The apparatus of claim 1, wherein the at least one detector comprises an input pin that is driven high and an output pin that is driven low on power up.
11. The apparatus of claim 7, further comprising a next detector coupled to the first detector, wherein the next detector comprises an input pin that is driven low and an output pin that is driven low on power up.
12. A method, comprising: configuring at least a first sensor and a next sensor on a serial chain to share an emitter; driving the emitter by the first sensor for a predetermined time period; sending a datagram from the first sensor to the next sensor; and driving the emitter by the second sensor for the predetermined time period.
13. The method of claim 12, wherein the pre-determined time period is 8 milliseconds.
14. The method of claim 12, wherein the configuring further comprises configuring the at least the first sensor and the second sensor on the serial chain to share the emitter through a register map.
15. The method of claim 12, wherein the driving the emitter by the first sensor further comprises driving the emitter for 128 samples, each 62.5 microseconds long.
16. The method of claim 12, wherein the driving the emitter by using the first sensor further comprises driving the emitter by using the first sensor through a driving pin of the first sensor.
17. A system, comprising: at least one light emitting diode (LED) that emits a signal, wherein at least a portion of the signal reflects back from a moving object; one or more sensors for generating an electric signal based on a peak in the reflected portion of the frequency modulated signal, wherein the one or more sensors are arranged in a serial chain and transmit the electric signal across the serial chain; and a signal processing circuit that reconstructs the at least one gesture based at least in part on the electric signal.
18. The system of claim 17, wherein the serial chain facilitates automatic time correlation between the one or more sensors.
19. The system of claim 17, wherein the one or more sensors comprise one or more four-sample first-in-first-outs (FIFOs) that store a time code of the peak and a magnitude of the peak.
20. The system of claim 19, wherein the signal processing circuit reads the peak from the one or more sensors and reconstructs the at least one gesture based at least in part on the magnitude of the peak and the time code of the peak.
CROSS REFERENCE TO RELATED APPLICATIONS
 This application claims priority to U.S. Provisional Patent Application Ser. No. 61/298,895, filed on Jan. 27, 2010, and entitled "ARCHITECTURE FOR A REFLECTION BASED LONG RANGE PROXIMITY AND MOTION DETECTOR HAVING AN INTEGRATED AMBIENT LIGHT SENSOR," the entirety of which is incorporated by reference herein. Further, this application is related to co-pending U.S. patent application Ser. No. 12/979,726, filed on Dec. 28, 2010 (Attorney docket number SE-2773/INTEP105USA), entitled "DISTANCE SENSING BY IQ DOMAIN DIFFERENTIATION OF TIME OF FLIGHT (TOF) MEASUREMENTS," co-pending U.S. patent application Ser. No. ______, filed on ______ (Attorney docket number SE-2874-AN/INTEP105USB), entitled "DIRECT CURRENT (DC) CORRECTION CIRCUIT FOR A TIME OF FLIGHT (TOF) PHOTODIODE FRONT END", co-pending U.S. patent application Ser. No. ______, filed on ______ (Attorney docket number SE-2785-AN/INTEP105USC), entitled "PHOTODIODE FRONT END WITH IMPROVED POWER SUPPLY REJECTION RATIO (PSRR)," co-pending U.S. patent application Ser. No. ______, filed on ______ (Attorney docket number SE-2877-AN/INTEP105USD), entitled "AUTOMATIC CALIBRATION TECHNIQUE FOR TIME OF FLIGHT (TOF) TRANSCEIVERS," and co-pending U.S. patent application Ser. No. ______, filed on ______ (Attorney docket number SE-2878-AN/INTEP105USF), entitled "GESTURE RECOGNITION WITH PRINCIPAL COMPONENT ANALYSIS." The entireties of each of the foregoing applications are incorporated herein by reference.
BRIEF DESCRIPTION OF THE DRAWINGS
 FIG. 1 illustrates an exemplary system that detects motion utilizing a serial chain of optical sensors.
 FIG. 2 illustrates an exemplary topology for a serial chain utilized by a motion detection system.
 FIG. 3 illustrates an exemplary datagram sent by optical sensors in the serial chain.
 FIG. 4 illustrates an exemplary methodology for assigning addresses to optical sensors in a motion detection system.
 FIG. 5 illustrates an exemplary methodology for automatic emitter sharing between optical sensors in a motion detection system.
 FIG. 6 illustrates an exemplary methodology for automatic time correlation between optical sensors in a motion detection system.
 FIG. 7 illustrates an exemplary functional block diagram for the architecture of the subject disclosure.
 A category of monolithic devices is emerging that allows electronic products to sense their environment. These include diverse devices, such as, accelerometers, monolithic gyroscopes, light sensors and imagers. In particular, light sensors are one of the simplest and cheapest, allowing their inclusion in multitudes of consumer products, for example, nightlights, cameras, cell phones, laptops etc. Typically, light sensors can be employed in a wide variety of applications related to proximity sensing, such as, but not limited to, detecting the presence and/or distance of a user to the product for the purpose of controlling power, displays, or other interface options.
 Infrared (IR) detectors utilize IR light to detect objects within the sense area of the IR sensor. Moreover, IR light is transmitted by an IR Light emitting diode (LED) emitter, which reflects off of objects in the surrounding area and the reflections are sensed by a detector. Moreover, the detector can be a diode, e.g., a PIN diode, and/or any other type of apparatus that converts IR light into an electric signal. The sensed signal is analyzed to determine whether an object is present in the sense area and/or to detect motion within the sense area. It can be appreciated that although the subject specification is described with respect to IR light, the systems and methods disclosed herein can utilize most any wavelength. As an example, the subject system and/or methodology can be employed for acoustical proximity detection and/or ultrasonic range finding applications.
 For example, the sensor can be one of multiple proximity sensors arranged on a device to detect motion. In a motion detection system, multiple sensors can be arranged to detect motion, for example, a gesture on a screen. Each of the multiple sensors that can sense the gesture, for example, at different times at different locations on the screen. Each of the multiple sensors can transmit a sensed signal corresponding to the gesture to be analyzed across a system bus. In conventional systems, addresses of the multiple sensors are assigned through dedicated pins. The systems and methods disclosed herein allow for automatic address assignment for multiple sensors without dedicated pins. Through a serial chain of sensors, access to an emitter shared by the sensors can be automatically sequenced and data from the sensors can be automatically time-correlated without involvement of a controller, conserving power because these capabilities can be done in firmware. In contrast, conventional systems waste power because they cannot perform these actions in firmware, and, instead, must invoke substantial processing power of corresponding devices.
 The subject matter is described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the subject disclosure. It may be evident, however, that the subject matter may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to facilitate describing the subject disclosure. Many modifications may be made to this configuration without departing from the scope or spirit of the claimed subject matter.
 Moreover, the word "exemplary" is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other aspects or designs. Rather, use of the word "exemplary" is intended to present concepts in a concrete fashion. As used in this application, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or". That is, unless specified otherwise, or clear from context, "X employs A or B" is intended to mean any of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, then "X employs A or B" is satisfied under any of the foregoing instances. In addition, the articles "a" and "an" as used in this application and the appended claims should generally be construed to mean "one or more" unless specified otherwise or clear from context to be directed to a singular form. In addition, the word "coupled" is used herein to mean direct or indirect electrical or mechanical coupling. Further, the terms "sense area," "vision field," "optical field," and similar terminology are utilized interchangeably in the subject application, unless context warrants particular distinction(s) among the terms. Moreover, the terms "sensor," "detector," and similar terminology are utilized interchangeably in the subject application, unless context warrants particular distinction(s) among the terms.
 Referring initially to FIG. 1, there illustrated is an example system 100 that employs optical sensors 102 to sense distance, motion and/or ambient light, according to an aspect of the subject specification. For example, the optical sensors 102 can include one or more proximity sensors. In one aspect, the optical sensors 102 can include one or more infrared sensors (e.g., photodiodes, such as tuned positive-intrinsic-negative (PIN) diodes). However, the optical sensors 102 can include any sensors that can convert a light signal to an electric signal. It can be appreciated that the optical sensors 102 are not limited to utilizing IR light, and, instead, can be any sensor, detector, or combination of sensors and detectors that can utilize light signals of most any wavelength. Although three optical sensors 102 are shown for simplicity in system 100, a system can employ more optical sensors 102 or fewer optical sensors 102. It can be appreciated that the optical sensors 102 can be an array of optical sensors 102.
 In general, system 100 can be employed in most any light sensing/optical proximity application. For example, a laptop computer can detect a gesture (e.g., a tap or a swipe) on a track pad utilizing optical sensors arbitrarily arranged on the track pad. In another example, a cellular phone or a personal digital assistant (PDA) can detect a gesture (e.g., a tap or a swipe) on a screen utilizing optical sensors arbitrarily arranged on the screen.
 The optical sensors 102 can be coupled to a signal processing circuit 104 to transmit sensed outputs 106, 108, 110. In one aspect the sensed outputs 106, 108, 110 are electrical signals corresponding to sensed light. These electrical signals can vary over time. The signal processing circuit 104 can analyze the sensed outputs 106, 108, 110 and determine whether an object 112 is present in the sense area and/or to detect motion by the object 112 within the sense area. The object 112 can be most any entity of interest, such as, but not limited to, a human entity, an automated component, a device, an item, an animal, etc.
 According to one aspect, signal processing circuit 104 can be embedded on a single integrated circuit (IC) chip (e.g., a microcontroller). However, the signal processing circuit 104 need not be embedded on a single IC chip, and, instead, components of the signal processing circuit 104 can be distributed among several IC chips. The sensed outputs 106, 108, 110 can be transmitted to the signal processing circuit 104 via a bus 114 (e.g. a serial bus, such as an Inter Integrated Circuit ("I2C") bus). Although an I2C bus is described herein, it should be understood that the I2C bus is only utilized as an example and the systems and methods described herein can be utilized with any serial bus.
 According to an aspect, the bus 114 can be an I2C bus. The I2C bus includes two wires: a clock line and a data line. The clock line can synchronize data transfers across the I2C bus. The clock line and the data line are connected to each optical sensor 102 on the I2C bus. The signal processing circuit 104 a master on the I2C bus to the optical sensors 102, which are slaves. The master signal processing circuit 104 drives the clock line. The slave optical sensors 102 are unable to initiate transmission or data (e.g. sensed outputs 106, 108, 110). Instead, data transmission from the slave optical sensors 102 is controlled by the master signal processing circuit 104 and can only begin when initiated by the master signal processing circuit 104.
 In order to communicate across the bus, each optical sensor 102 requires a unique address on the bus (for example, the address can be an I2C address) for data transfer to take place. For example, the address can be a seven bit address. In some conventional systems, addresses are assigned by hardware on the signal processing circuit 104. For example, the addresses can be assigned according to dedicated hardware (e.g., dedicated pins).
 System 100, in contrast, can automatically assign addresses (e.g., I2C addresses) to each optical sensor 102 without requiring dedicated hardware. System 100 does not require involvement by the signal processing circuit 104 to assign addresses to the optical sensors 102. Instead, system 100 configures the sensors 102 in accordance with a serial chain. For example, the serial chain can be a daisy chain.
 The serial chain can be utilized to automatically assign unique addresses to each optical sensor 102. This eliminates the need for the signal processor 104 to be involved with assigning addresses. Eliminating the need for the signal processor 104 to be involved with assigning addresses can conserve power, allowing system 100 to be implemented on a low power a microcontroller.
 Referring now to FIG. 2, illustrated is a topology for a serial chain 200 employed by a motion detection system. For example, the serial chain 200 can be implemented within system 100 as described above. Although only three optical sensors 102a, 102b, 102c are illustrated, serial chain 200 can be constructed between many more optical sensors 102. For example, serial chain 200 can be constructed between more than 255 optical sensors 102. The number of optical sensors 102 supported by serial chain 200 can be limited only by capabilities of the serial bus. Serial chain 200 can be utilized to automatically assign addresses (e.g., I2C addresses) to each optical sensor 102a, 102b, and 102c on the serial chain 200.
 Optical sensors 102 can include a digital input 202a, 202b, 202c and a digital output 204a, 204b, 204c, which are utilized to construct serial chain 200 between the optical sensors 102a, 102b, 102c. For example, the digital input 202a, 202b, 202c can be an ENABLE ("EN") pin and the digital output 204a, 204b, 204c can be an INT pin. The ENABLE pin and the INT pin can have other purposes including enabling/disabling the associated device and/or signaling an interrupt based on an activity in at least one sensor's 102 sense area. Serial chain 200 can be utilized to relay ENABLE input from a first optical sensor to one or more other optical sensors, thereby preserving ENABLE functionality. Additionally, serial chain 200 can relay INT output from one or more optical sensors to a last optical sensor on the serial chain 200, thereby preserving INT functionality. It is noted that sensors 102a, 102b, 102c can have additional and/or different pins that are not illustrated for the sake of simplicity.
 Serial chain 200 is a unidirectional interface between the output of a first optical sensor and the input of a second optical sensor. Serial chain 200 can transmit one or more datagrams of specific format from the first optical sensor to the second optical sensor. For example, output 204c from optical sensor 102a can be connected to input 202b of sensor 102b. Output 204b from optical sensor 102b can be connected to input 202c of sensor 102c. Serial chain 200 can automatically sequence access to a single, shared emitter (not shown), like a light emitting diode (LED), without involvement from a controller 206 (e.g., a microcontroller).
 Serial chain 200 can be asynchronous and/or self-clocking, allowing serial chain 200 to automatically time-correlate data from the optical sensors 102a, 102b, 102c. One example of a self clocking methodology employed by sensors 102a, 102b, 102c in the serial chain 200 is Manchester coding. Manchester coding, also known as Phase Encoding, can encode data from one or more of sensors 102a, 102b, 102c with a clock signal that can be recovered from the encoded data.
 For example, each of the optical sensors 102a, 102b, 102c can include a four-sample first-in-first-out (FIFO) that can operate in a "peak detect" mode to store a time and a magnitude of peaks in magnitude of an electrical signal. For example, the peaks in magnitude can correspond to a gesture.
 When a peak is detected, the magnitude value for the peak and a time code can be pushed into the FIFO. The time code can be the last Sequence Value received over the serial chain 200. Accordingly, time can be sub-divided into 8 millisecond periods, each labeled with a unique 8-bit code. The unique 8-bit code can be agreed upon by all sensors 102a, 102b, 102c within the serial chain 200. An interrupt can be sent to a microcontroller indicating the peaks. The microcontroller can read the peaks (magnitude values and time code pairs) from each sensor and reconstruct the gesture associated with the peak in magnitude at times corresponding to the peaks.
 Since the serial chain is unidirectional, the first sensor is responsible for sending datagrams with appropriate time codes down the serial chain. The first sensor can include a register that stores the number of sensors in the serial chain for this purpose.
 All of the behaviors (addressing, sequencing access to a shared emitter and time correlation) are automatic and do not require any interaction with the microcontroller. In this way, the device (e.g., laptop, control panel, cellular phone, etc.) associated with motion sensing system 100 can remain in its lowest power mode until a gesture occurs.
 Referring now to FIG. 3, illustrated is a datagram 300 that can be utilized by a serial chain in a motion detection system. According to an aspect, one or more optical sensors can transmit datagrams (e.g., packets) formatted in accordance with datagram 300 through serial chain 200. A datagram is a basic transfer unit in which the delivery arrival time and order of packets of data (e.g., from different sources) are not guaranteed.
 Datagram 300 can be formatted in a specific manner for transmission between sensors. For example, datagram 300 can be formatted with four distinct fields: Sequence Value 302, INT 304, EN 306 and COMMAND 308. The Sequence Value 302 field can be an 8-bit field that is incremented by one each time a sensor communicates with the next sensor in the serial chain. The INT 304 field can be a 2-bit field that indicates a status of an interrupt signal from previous sensors. Any optical sensor on the serial chain can send an interrupt that can propagate to the end of the serial chain to the controller, depending on register settings. The EN 306 field can be a 1-bit field that can indicate a status of a first sensor's ENABLE pin. The enable signal from the first device in the serial chain can, depending on register settings, propagate through the entire serial chain.
 The COMMAND 308 field can be a 2-bit field containing a command being transmitted. For example, the value of the COMMAND 308 field can be, for example, 00, indicating that the Sequence Value should be used as an address offset or 01, indicating that the Sequence Value should be used as a time code for time correlation. Other vales for the COMMAND 308 field can exist.
 Referring now to FIG. 4, illustrated is an exemplary methodology 400 for automatic address assignment in a motion detection system. The methodology can address one or more optical sensors in the motion detection system via a serial chain. Unlike conventional addressing methodologies, methodology 400 does not utilize dedicated pins. Accordingly, this methodology leads to less power consumption than conventional methods for assigning addresses to the optical sensors.
 The methodology 400 begins at element 402 where the sensors are powered up. At power up, INT pins on every sensor are driven low. A first sensor on the serial chain has its ENABLE pin driven high, while the other sensors have their ENABLE pins driven low. At element 404, the sensors can determine which sensor is the first sensor on the serial chain. For example, each sensor can determine whether it is the first sensor on the serial chain by determining whether it is the sensor with its ENABLE pin driven high.
 After the power-on process (or power-on-reset process) of 402 and 404 completes, the methodology moves to element 406. At element 406, the first sensor can send a datagram (e.g., a datagram in accordance with datagram 300 as described above) to the next sensor (e.g., a second sensor) on the serial chain. For example, the datagram can be configured with a COMMAND field sent to 00, indicating that a Sequence Value should be used as an address offset, and the Sequence Value set to 1.
 At element 408, the second sensor can receive the datagram from the first sensor and set its address (e.g., I2C address) with the given address offset from the Sequence Value. At element 410, the second sensor can increment the sequence value (e.g. the Sequence Value can be set to 2, indicating that a sensor has communicated twice with the next sensor on the serial chain). At element 412, the second sensor can send the datagram to the next sensor (third sensor on the serial chain).
 Referring now to FIG. 5, illustrated is an exemplary methodology 500 for automatic emitter (e.g., LED) sharing between optical sensors of a motion control system. For example, access to the shared emitter by the optical sensors can be facilitated through automatic sequencing of the access to the shared emitter.
 The methodology 500 begins at element 502, where all sensors on a serial chain are configured to share an emitter. For example, the sensors can be configured to share the emitter through a register map. At element 504, a first sensor is able to drive the emitter. For example, the first sensor can drive the emitter through an assigned pin (such as an IRDR pin, not illustrated). The first sensor can drive the emitter, for example, for 128 samples, each 62.5 microseconds long, for a total of 8 milliseconds.
 After driving the emitter for a certain time (e.g., 8 milliseconds), at element 506 the first sensor stops driving the emitter. For example, the first sensor can turn off its assigned pin. At element 508, the first sensor sends a datagram (e.g., a datagram 300 as defined in FIG. 3) to a next sensor. At element 510, the next sensor can drive the emitter for a certain time (e.g., 8 milliseconds). This methodology can repeat until all sensors on the serial chain have an opportunity to drive the emitter.
 Referring now to FIG. 6, illustrated is an exemplary methodology 600 for automatic time correlation between optical sensors in a motion control system. This time correlation can be done in firmware. Accordingly, this methodology leads to greater power savings when compared to conventional methodologies.
 Methodology 600 begins at element 602, where sensors are configured to store a time and a magnitude of peaks in magnitude of an electrical signal. Each of the sensors can include a four-sample first-in-first-out (FIFO) that can be configured to operate in a "peak detect" mode, where the FIFO can store the time and magnitude of peaks in magnitude. For example, a peak in magnitude can be detected when a user's hand makes its closest approach to the optical sensor (e.g., when making a gesture).
 At element 604, a sensor can detect a peak. When a peak is detected, the magnitude value for the peak and a time code can be pushed into the FIFO. The time code can be the last Sequence Value received over the serial chain. Accordingly, time can be sub-divided into 8 millisecond periods, each labeled with a unique 8-bit code. The unique 8-bit code can be agreed upon by all sensors within the serial chain.
 At element 606, an interrupt can be sent to a microcontroller. The microcontroller can read the peaks (magnitude values and time code pairs) from each sensor and reconstruct the gesture associated with the peak in magnitude.
 In order to provide additional context for various aspects of the subject specification, FIG. 7 illustrates an exemplary functional block diagram for the architecture 700 of the subject disclosure. In one aspect, the systems (e.g., 100-200) disclosed herein can be employed in a reflection based proximity and motion detector with an integrated ambient light sensor (ALS) depicted in FIG. 7. The architecture 700 includes one or more LEDs and associated driver circuitry, one or more photodiode sensors (arranged in a serial chain, for example the serial chain as illustrated in FIG. 2), an analog front end and signal processing (e.g., of signals from the photodiodes arranged in the serial chain, for example elements 106, 108, 110 as illustrated in FIG. 1 above.), data conversion circuitry, digital control and signal processing, interface circuitry and results display. The architecture 700 adaptively optimizes sensitivity and power for a given environment. Moreover, the architecture 700 derives significant performance improvements from its novel ALS structure, and its light emitting diode (LED) driver circuitry is much more efficient than the conventional resistive drive.
 According to an aspect of the subject disclosure, the architecture 700 includes a Resonant Front End 702, which includes a Trans-Impedance Resonator (TIR). In the architecture 700, the TIR 702 is used in place of the Trans-Inductance Amplifier (TIA), which is conventionally used. However, TIA can also be employed in signal processing applications of signals received from the serial chained photodiodes (e.g., signals 106, 108, 110 as described above.).
 Although the TIR 702 plays the same role as a conventional TIA, the TIR 702 gives an order of magnitude improvement in achievable Signal-to-Noise-Ratio (SNR) due to its band-pass nature (e.g., TIR 702 includes an inductor and a capacitor), which allows for an increased range of sensing. The capacitor of the TIR can include the capacitance of the photodiode that is being resonated. The band-pass nature of the TIR 702 causes the architecture 700 to operate over a narrow band of frequencies, which allows for little noise compared to the wide band TIA.
 According to another aspect of the subject disclosure, the ALS 710 uses a light to frequency converter based on a relaxation oscillator instead of the conventional TIA. A relaxation oscillator is an oscillator based upon the relaxation behavior of a physical system. An exemplary implementation for the relaxation oscillator of the subject disclosure can be done by connecting the inverting input of an Operational Amplifier (Op Amp) to a fixed bias voltage via a switch and also the photodiode, with the non-inverting input connected to ground. When the switch to the fixed bias voltage is opened, the photodiode will discharge towards ground. The rate of discharge will depend on the photodiode current, which is a measure of the incident ambient light. When the photodiode is discharged to ground, the Computer Programmable Logic Device (CPLD) resets the oscillator by switching back in the bias voltage. The CPLD counts the number of cycles that the photodiode takes to discharge, and thus can estimate the ambient light intensity incident on the photodiode. The ALS 710 can be used for ambient light sensing applications and the TIR 702 can be used for proximity and motion sensing applications.
 The output of the Front end 702 is subjected to multiple stages of voltage gain 716 to maximize the SNR of the output signal. The voltage gain is adaptively set based on the magnitude of the signal received from the Front end 702, which is potentially made up of both measureable interferers such as a backscatter and a crosstalk from the LED, and also the desired signal to be measured. The interferers are dynamically calibrated out of the measurement to improve the sensitivity. According to another aspect of the subject disclosure, the LED drive circuitry 756 uses an inductive drive, which results in a significant efficiency improvement over the conventional resistive drive.
 The architecture 700 also includes a Quad Demodulator with low pass filters (LPFs) 720, dual [I & Q] Analog to Digital Converters (ADCs) 726, Digital to Analog Converters (DACs) 730 driven by the bias voltage provided by the Automatic Gain Control module, Oscillator DACs 744 for 1 and Q carriers, the Universal Serial Bus (USB) processor for Control Interface, and the Computer Programmable Logic Device (CPLD) that include several modules. The CPLD is merely exemplary. One or more different parts can be employed in lieu of a CPLD. For example, one or more Application Specific IC(s), a digital signal processor and memory. The I and Q relate to In-Phase and Quadrature demodulation components.
 QAM is both an analog and a digital modulation scheme. Moreover, QAM is a modulation scheme in which two sinusoidal carriers, one exactly 90 degrees out of phase with respect to the other, are used to transmit data over a given physical channel. Since the orthogonal carriers occupy the same frequency band and differ by a 90 degree phase shift, each can be modulated independently, transmitted over the same frequency band, and separated by demodulation at the receiver. Thus, QAM enables data transmission at twice the rate of standard pulse amplitude modulation (PAM) without any degradation in the bit error rate (BER). In one example a numerically controlled oscillator (NCO) can be employed to design a dual-output oscillator that accurately generates the in-phase and quadrature carriers used by a QAM modulator and/or demodulator. A filter, for example, a raised cosine finite impulse response (FIR) filter can be utilized to filter the data streams before modulation onto the quadrature carriers.
 The in-phase and quadrature demodulated components are created by multiplying the signal by both a carrier signal, and also a signal 90 degrees out of phase of that carrier, and low pass filtering the result (720 in FIG. 7). The resultant I and Q are a baseband representation of the received signal. In one example, the phase of the derivative of I and Q channels can be obtained, which is indicative of the distance of the target to be calculated. Further, the position of a moving object can be accurately identified based on the phase data. Typically, the resultant phase information can be used as a direct output of the system as a measure of distance/position, and/or can be used to reconstruct the static component of the signal and allow the calibration of a non-derivative time of flight (TOF) measurement.
 The architecture 700 of the subject disclosure can be used in many applications including computers, automotive, industrial, television displays and others. For example, the architecture 700 can be used to detect that a user has entered the room and automatically cause a laptop computer in hibernation mode to wake up and enter into the active mode so that the user can use it. In another example, the architecture 700 of the subject disclosure can be used to automatically and adaptively adjust the intensity of a liquid crystal display (LCD) based on the ambient lighting conditions. According to an aspect of the subject disclosure, the architecture 700 can perform motion and proximity sensing at a range of up to 1-2 meters. According to another aspect of the subject disclosure, the architecture 700 of the subject disclosure can perform its operations by using less than twenty milli-watts (mW) of power.
 In one embodiment of the subject disclosure, the entire architecture 700 can be implemented in a single integrated circuit chip (IC). In another embodiment of the subject disclosure, all components of the architecture 700 can be implemented in the IC except for the two inductors for the TIR 702 and the LED driver circuitry 756 and the LED, which can be implemented outside the IC. In yet another embodiment of the subject disclosure, all components of the architecture 700 can be implemented in the IC except for the TIR 702 inductor, the LED and the inductor and the resistor for the LED driver circuitry, which can be implemented outside the IC. In still another embodiment of the subject disclosure, various components of the architecture 700 can be located inside or outside the IC.
 What has been described above includes examples of the subject disclosure. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the claimed subject matter, but many further combinations and permutations of the subject disclosure are possible. Accordingly, the claimed subject matter is intended to embrace all such alterations, modifications, and variations that fall within the spirit and scope of the appended claims.
 In particular and in regard to the various functions performed by the above described components, devices, circuits, systems and the like, the terms (including a reference to a "means") used to describe such components are intended to correspond, unless otherwise indicated, to any component which performs the specified function of the described component (e.g., a functional equivalent), even though not structurally equivalent to the disclosed structure, which performs the function in the herein illustrated exemplary aspects of the claimed subject matter. In this regard, it will also be recognized that the disclosure includes a system as well as a computer-readable medium having computer-executable instructions for performing the acts and/or events of the various methods of the claimed subject matter.
 The aforementioned systems/circuits/modules have been described with respect to interaction between several components. It can be appreciated that such systems/circuits/modules and components can include those components or specified sub-components, some of the specified components or sub-components, and/or additional components, and according to various permutations and combinations of the foregoing. Sub-components can also be implemented as components communicatively coupled to other components rather than included within parent components (hierarchical). Additionally, it should be noted that one or more components may be combined into a single component providing aggregate functionality or divided into several separate sub-components, and any one or more middle layers, such as a management layer, may be provided to communicatively couple to such sub-components in order to provide integrated functionality. Any components described herein may also interact with one or more other components not specifically described herein but generally known by those of skill in the art.
 In addition, while a particular feature of the subject disclosure may have been disclosed with respect to only one of several implementations, such feature may be combined with one or more other features of the other implementations as may be desired and advantageous for any given or particular application. Furthermore, to the extent that the terms "includes," "including," "has," "contains," variants thereof, and other similar words are used in either the detailed description or the claims, these terms are intended to be inclusive in a manner similar to the term "comprising" as an open transition word without precluding any additional or other elements.
Patent applications by David W. Ritter, San Jose, CA US
Patent applications by Intersil Americas Inc.
Patent applications in class Infrared responsive
Patent applications in all subclasses Infrared responsive