Patent Description:
An accelerometer is a device that measures acceleration forces on an object (i.e., forces on the object that are caused by acceleration of the object). The acceleration of the object is the rate of change of velocity of the object. The acceleration forces may include static acceleration forces and dynamic acceleration forces. An example of a static acceleration force is a gravitational force on the object caused by the Earth's gravitation. Dynamic forces are forces caused by movement (e.g., vibration) of the object.

Acceleration detection systems traditionally include an accelerometer and a processor to determine acceleration of an object. The accelerometer generates raw data signals representing the acceleration forces that are measured by the accelerometer. The processor processes the raw data signals from the accelerometer to calculate the acceleration of the object. The processor traditionally is separate from the accelerometer. For example, the processor may be formed on a chip that is different from a chip on which the accelerometer is formed. In another example, the processor may be included in a computer to which signals from the accelerometer are routed for processing.

The accelerometer traditionally is not capable of calculating the acceleration of the object in absence of the processor. Moreover, by including a processor that is separate from the accelerometer, conventional acceleration detection systems consume a substantial amount of power and a substantial amount of space. <CIT> relates to a pedometer device and step detection method. <CIT> relates to a capacitive interface circuit for a low power sensor system.

Accelerometers having root-mean-square (RMS) outputs are described herein. For instance, a first example accelerometer is described that includes a microelectromechanical systems (MEMS) device and an application-specific integrated circuit (ASIC). The MEMS device includes a structure (e.g., capacitive structure) having an attribute (e.g., capacitance) that is configured to change in response to acceleration of an object. The ASIC is configured to determine acceleration of the object based at least in part on changes in the attribute of the structure. The ASIC includes analog circuitry, an analog-to-digital converter (ADC), and RMS firmware. The analog circuitry is configured to measure the changes in the attribute of the structure and to generate analog signals that represent the changes in the attribute. The analog circuitry (AFE) is configured to convert a charge input from the MEMS to a voltage and is capable of lower-noise operation using a capacitance provided within the ASIC. The ADC is configured to convert the analog signals to digital signals. The RMS firmware is configured to perform a RMS calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object. The ASIC further comprises a digital filter configured to filter the digital signals to provide filtered digital signals; wherein the RMS firmware is configured to perform the RMS calculation on the filtered digital signals to provide the RMS value that represents the amount of the acceleration of the object; wherein the digital filter includes a plurality of signal processing filters; wherein each of the plurality of signal processing filters has a set of user-programmable coefficients that are capable of having a plurality of sets of values, at least a first set of values causing the respective signal processing filter to be configured as a first filter, at least a second set of values causing the respective signal processing filter to be configured as a second filter, and wherein the first and second filters are any of a Butterworth filter, a Bessel filter and a Chebyshev filter.

Example methods are also described. In a first example method of making an accelerometer, a semiconductor package is fabricated to include a MEMS device and an ASIC. Fabricating the semiconductor package includes providing the MEMS device including a capacitive structure having a capacitance that is configured to change in response to acceleration of an object. Fabricating the semiconductor package further includes configuring the ASIC to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. Configuring the ASIC includes incorporating analog circuitry, an ADC, and RMS firmware into the ASIC. The analog circuitry is configured to measure the changes in the capacitance of the capacitive structure and is further configured to generate analog signals that represent the changes in the capacitance. The ADC is configured to convert the analog signals to digital signals. The RMS firmware is configured to perform a RMS calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object.

In a second example method of making an accelerometer, a semiconductor substrate is provided. A microelectromechanical systems (MEMS) device, which includes a capacitive structure having a capacitance that is configured to change in response to acceleration of an object, is formed on the semiconductor substrate. An ASIC is formed on the semiconductor substrate to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. The ASIC includes analog circuitry, an ADC, and RMS firmware. Forming the ASIC on the semiconductor substrate includes configuring the analog circuitry to measure the changes in the capacitance of the capacitive structure and to generate analog signals that represent the changes in the capacitance. Forming the ASIC on the semiconductor substrate further includes configuring the ADC to convert the analog signals to digital signals. Forming the ASIC on the semiconductor substrate further includes configuring the RMS firmware to perform a RMS calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object.

In a second example of an accelerometer, the accelerometer includes a microelectromechanical systems (MEMS) device and an application-specific integrated circuit (ASIC). The MEMS device includes a capacitive structure having a capacitance that is configured to change in response to acceleration of an object. The ASIC is configured to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. The ASIC is configured to calculate a representative value that represents the changes in the capacitance in a designated frequency range, and to provide an interrupt signal when the representative value is greater than or equal to a threshold value for at least a specified period of time. The representative value is a root-mean-square (RMS) of an input value.

Moreover, it is noted that the invention is not limited to the specific embodiments described in the Detailed Description and/or other sections of this document. Such embodiments are presented herein for illustrative purposes only. Additional embodiments will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein.

The accompanying drawings, which are incorporated herein and form a part of the specification, illustrate embodiments and, together with the description, further serve to explain the principles of the embodiments and to enable a person skilled in the pertinent art to make and use the disclosed technologies.

The features and advantages of the disclosed technologies will become more apparent from the detailed description set forth below when taken in conjunction with the drawings, in which like reference characters identify corresponding elements throughout. In the figures, the drawing in which an element first appears is indicated by the leftmost digit(s) in the corresponding reference number.

The following detailed description refers to the accompanying drawings that illustrate exemplary embodiments of the present invention. However, the scope of the present invention is not limited to these embodiments, but is instead defined by the appended claims. Thus, embodiments beyond those shown in the accompanying drawings, such as modified versions of the illustrated embodiments, may nevertheless be encompassed by the present invention.

References in the specification to "one embodiment," "an embodiment," "an example embodiment," or the like, indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Furthermore, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the relevant art(s) to implement such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.

Example accelerometers described herein are capable of providing a root-mean-square (RMS) output. For instance, an example accelerometer includes a motion sensor, such as a microelectromechanical systems (MEMS) device, and an application-specific integrated circuit (ASIC). The motion sensor (e.g., the MEMS device) includes a structure (e.g., capacitive structure) having an attribute (e.g., capacitance) that is configured to change in response to acceleration of an object. The ASIC is configured to determine acceleration of the object based at least in part on changes in the attribute of the structure. The ASIC includes analog circuitry, an analog-to-digital converter (ADC), and RMS firmware. The analog circuitry is configured to measure the changes in the attribute of the structure and to generate analog signals that represent the changes in the attribute. The ADC is configured to convert the analog signals to digital signals. The RMS firmware is configured to perform a RMS calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object.

Example techniques described herein have a variety of benefits as compared to conventional techniques for determining acceleration of an object. For instance, the example techniques may perform fewer computations to determine acceleration of such an object. The example techniques may incorporate RMS calculation functionality into a chip on which the motion sensor and ASIC are formed and/or into a semiconductor package that includes both the motion sensor and the ASIC. Accordingly, the example techniques may consume less space (e.g., have a smaller form factor) than conventional acceleration determination systems, which often require an external microprocessor to perform post-processing of the raw data generated by an accelerometer therein. The example techniques may operate at a relatively lower power than a conventional acceleration determination system. For instance, computers that perform more complex calculations and consume more power than a single chip is capable of handling are often used to perform calculations for determining acceleration of an object. The example techniques need not necessarily communicate as much information (e.g., over a communication bus) to a microprocessor that is external to a chip on which the accelerometer is formed, as compared to conventional acceleration determination systems. For instance, information that is not desired may be filtered out before the remaining (i.e., desired) information is communicated externally from the chip. Some example techniques utilize a finite impulse response (FIR) filter to reduce a number of frequencies that are taken into consideration to generate an RMS value that represents acceleration of an obj ect.

The example techniques may be capable of representing acceleration of an object with a higher resolution than conventional acceleration determination systems. For instance, if outputs of a FIR filter in the digital filter are n-bits wide, some of the internal calculations may be wider than n bits. The example techniques may introduce less quantization noise and/or calculation error into processed data than conventional acceleration determination systems. The example techniques may generate more data from which to determine acceleration of an object than conventional acceleration determination systems. The data path of the accelerometer may have a fixed width and depending on the corner frequency of each filter therein, the respective filter may not need the full fixed width. For instance, if the corner frequency of a filter is on the order of <NUM>/<NUM> of the sample rate, the full width of the data path may be needed; however, if the filter has a relatively higher bandwidth, the filter may have excess bits for that bandwidth. Having the extra bits may enable the filter to perform calculations with a higher precision. The example techniques may enable a user to configure filters in the accelerometer to a greater extent than a conventional accelerometer. For instance, the accelerometers described herein may enable a user to select values for coefficients of filters in the accelerometer, rather than merely selecting from a fixed number of pre-defined filter responses. The filters may be configurable to narrow the frequency range of interest.

Example accelerometers described herein may be capable of outputting RMS values directly. For example, the output of an accelerometer may be a root-mean-square (RMS) broadband acceleration value. An example accelerometer may include a MEMS device, analog circuitry that is used to directly measure the MEMS device, and a component (e.g., firmware, software, and/or hardware circuitry) that is used to determine the RMS values. The component may be integrated on the same ASIC as the analog circuitry and/or in the same semiconductor package as the analog circuitry.

Traditionally, accelerometers output an indication of acceleration of a device in a transient type of way. For example, if the device is vibrating, a sinusoidal wave may be generated, representing the vibrations. A representation of the sinusoidal wave may be fed into a processor for further processing, which may require substantial power and time. No conventional accelerometers output a single RMS value to represent the amount of vibration. Example accelerometers described herein may incorporate all the filters and the mathematical calculation functionality needed to output a single value for representing the amount of vibration of the device (e.g., in a single chip).

<FIG> is a block diagram of an example accelerometer <NUM> that has an RMS output in accordance with an embodiment described herein. As shown in <FIG>, accelerometer <NUM> includes a motion sensor, such as a microelectromechanical systems (MEMS) device <NUM>, and an application-specific integrated circuit (ASIC) <NUM>. The MEMS device <NUM> includes a structure (e.g., capacitive structure) <NUM> having an attribute (e.g., capacitance) that is configured to change in response to acceleration of an object. The ASIC <NUM> is configured to determine acceleration of the object based at least in part on changes in the attribute of the structure <NUM>. The ASIC <NUM> includes analog circuitry <NUM>, an analog-to-digital converter (ADC) <NUM>, and firmware <NUM>. The analog circuitry <NUM> is configured to measure the changes in the attribute of the structure <NUM> and to generate analog signals <NUM> that represent the changes in the attribute. The ADC <NUM> is configured to convert the analog signals <NUM> to digital signals <NUM>. The firmware <NUM> includes RMS firmware <NUM>. It will be recognized that the firmware <NUM> may include logic that is hard-coded onto the accelerometer <NUM> so that the accelerometer <NUM> runs more efficiently. The RMS firmware <NUM> is configured to perform a root-mean-square (RMS) calculation on a representation of the digital signals <NUM> to provide an RMS value <NUM> that represents an amount of the acceleration of the object. The representation of the digital signals <NUM> may include (e.g., be) an unaltered version of the digital signals <NUM>, a filtered version of the digital signals, an average of the digital signals <NUM> (e.g., a rolling average, a down-sampled average, a down-sampled rolling average) of the digital signals <NUM>, or other suitable representation of the digital signals <NUM>. The RMS value <NUM> may or may not be filtered.

In an example embodiment, the RMS firmware <NUM> is configured to perform multiple RMS calculations on the representation of the digital signals <NUM> to provide multiple respective RMS values that represent respective amounts of the acceleration of the object with respect to respective frequencies. The RMS calculations can be implemented as consecutive RMS calculations, sliding RMS calculations, or resynchronized RMS calculations, though the scope of the example embodiments is not limited in this respect.

In another example embodiment, the RMS firmware <NUM> is configured to generate an interrupt signal based at least in part on the RMS value <NUM> reaching a threshold. For example, the RMS firmware <NUM> may generate such an interrupt signal based at least in part on the RMS value <NUM> being less than or equal to a first threshold. In another example, the RMS firmware <NUM> may generate such an interrupt signal based at least in part on the RMS value <NUM> being greater than or equal to a second threshold. For instance, the second threshold may be greater than the first threshold.

In an example embodiment, the analog circuitry <NUM>, the ADC <NUM>, and the firmware <NUM> are implemented on a common (e.g., single) semiconductor chip. In other example embodiments, the MEMS device <NUM> and the ASIC <NUM> are implemented on a common semiconductor chip, i.e., on a common substrate, and/or included in a single package, as shown by dashed box <NUM>.

The accelerometer <NUM> may be incorporated into any suitable type of acceleration determination system (e.g., a vibration sensor). For example, the accelerometer may be incorporated into a vibration sensor to monitor health of a machine (e.g., a motor). In accordance with this example, the extent to which the machine vibrates, as measured by the accelerometer <NUM>, may indicate a time at which the machine is likely to fail (e.g., stop operating). A vibration sensor that includes the accelerometer <NUM> may be used in applications in which the frequency domain acceleration is of more interest than the time domain acceleration, for example. The vibration sensor may be configured to use internal filters to be sensitive to specific frequency ranges. For instance, the accelerometer <NUM> may report the RMS value of the vibration in the configured range.

It will be recognized that accelerometer <NUM> may not include all of the components shown in <FIG>. Furthermore, accelerometer <NUM> may include component(s) in addition to or in lieu of those shown in <FIG>. For instance, the accelerometer may include analog and/or digital filter(s). By including one or more filters, the accelerometer <NUM> may be capable of combining filtering and calculating a series of interval RMS values over a slice of time to directly output a broad-band value of the acceleration of the object. <FIG> shows an accelerometer <NUM> that includes a digital filter <NUM> for illustrative purposes. <FIG> shows an accelerometer <NUM> that includes an analog filter <NUM> for illustrative purposes. <FIG> and <FIG> are described in further detail below.

As shown in <FIG>, the accelerator includes a MEMS device <NUM> and an ASIC <NUM>. The MEMS device <NUM> includes a structure <NUM>. The ASIC <NUM> includes analog circuitry <NUM>, an ADC <NUM>, and firmware <NUM>. The MEMS device <NUM>, structure <NUM>, analog circuitry <NUM>, and ADC <NUM> are operable in a manner similar to the MEMS device <NUM>, structure <NUM>, analog circuitry <NUM>, and ADC <NUM> of <FIG>. The firmware <NUM> includes a digital filter <NUM> and RMS firmware <NUM>. The digital filter <NUM> is configured to filter the digital signals to provide filtered digital signals for processing by the RMS firmware <NUM>. For example, the digital filter <NUM> may be configured to sample the digital signals at a sampling frequency that is greater than or equal to an output data rate (ODR) of the RMS firmware <NUM>. In another example, the digital filter <NUM> may be configured to sample the digital signals at a sampling frequency that is greater than or equal to an integer multiple of the ODR of the RMS firmware <NUM>. For instance, the integer multiple may be <NUM>, <NUM>, <NUM>, <NUM>, or <NUM>. The RMS firmware <NUM> is configured to perform a RMS calculation on the filtered digital signals to provide the RMS value <NUM>, which represents the amount of the acceleration of the object.

The digital filter <NUM> is shown in <FIG> to include a finite impulse response (FIR) filter <NUM> and infinite impulse response (IIR) filter(s) <NUM> for non-limiting, illustrative purposes. It will be recognized that the digital filter <NUM> need not necessarily include the FIR filter <NUM> and/or the IIR filter(s) <NUM>. The FIR filter <NUM> is configured to down-sample a rolling average of the digital signals <NUM> to provide a down-sampled rolling average (DSRA) signal <NUM>. The IIR filter(s) <NUM> are configured to modify a frequency response of the digital filter <NUM>. For instance, the IIR filter(s) <NUM> may modify a shape of the DSRA signal <NUM>. If the FIR filter <NUM> and the IIR filter(s) <NUM> are included in the digital filter <NUM>, the RMS firmware <NUM> is configured to perform a RMS calculation on the DSRA signal <NUM> to provide the RMS value <NUM>.

In an example embodiment, the IIR filter(s) <NUM> include at least one Butterworth filter, at least one Bessel filter, and/or at least one Chebyshev filter. Each filter that is included in the IIR filter(s) <NUM> may be any suitable order (e.g., first order, second order, or third order). Each filter may be a band-pass filter, a band-reject filter (a. band-stop filter), a high-pass filter, a low-pass filter, or any combination thereof. For example, the IIR filter(s) <NUM> may include a bandpass filter configured to allow frequencies that are included in a designated (e.g., predetermined) frequency band to pass (e.g., and to block frequencies that are not included in the designated frequency band. In another example, the IIR filter(s) <NUM> may include a band-reject filter configured to block frequencies that are included in a designated (e.g., predetermined) frequency band (e.g., and to allow frequencies that are not included in the designated frequency band to pass).

In another example embodiment, the IIR filter(s) <NUM> include multiple IIR filters. In accordance with this embodiment, each of the IIR filters has a set of user-programmable coefficients that are capable of having multiple sets of values. In further accordance with this embodiment, a first set of values causes a first IIR filter to be configured as a Butterworth filter. In further accordance with this embodiment, a second set of values causes a second IIR filter to be configured as a Bessel filter.

In an example embodiment, the FIR filter <NUM> is configured to sample the rolling average of the digital signals <NUM> at a sampling frequency that is greater than or equal to an output data rate of the RMS firmware <NUM>. In another example embodiment, the FIR filter <NUM> is configured to sample the rolling average of the digital signals <NUM> at a sampling frequency that is greater than or equal to two times the output data rate of the RMS firmware <NUM>. In yet another example embodiment, the FIR filter <NUM> is configured to sample the rolling average of the digital signals <NUM> at a sampling frequency that is greater than or equal to four times the output data rate of the RMS firmware <NUM>.

It will be recognized that any of the filtering functionality described above with reference to the digital filter <NUM> may be performed by an analog filter. For instance, the accelerometer <NUM> of <FIG> includes a MEMS device <NUM> and an ASIC <NUM>. The MEMS device <NUM> includes a structure <NUM>. The ASIC <NUM> includes analog circuitry <NUM>, an analog filter <NUM>, an ADC <NUM>, and firmware <NUM>. The MEMS device <NUM>, structure <NUM>, analog circuitry <NUM>, and ADC <NUM> are operable in a manner similar to the MEMS device <NUM>, structure <NUM>, analog circuitry <NUM>, and ADC <NUM> of <FIG>. The ASIC <NUM> further includes an analog filter <NUM> coupled between the analog circuitry <NUM> and the ADC <NUM>. The analog filter <NUM> is configured to filter the analog signals <NUM> that are provided by the analog circuitry <NUM>. For instance, any of the filtering operations that the digital filter <NUM> of <FIG> may perform on the digital signals <NUM> may be performed on the analog signals <NUM> by the analog filter <NUM>. The firmware <NUM> is shown to include a digital filter <NUM> and RMS firmware <NUM> for non-limiting, illustrative purposes. It will be recognized that the firmware <NUM> need not necessarily include the digital filter <NUM>. The digital filter <NUM> may be configured to perform any of the filtering operations that are described above with reference to the digital filter of <FIG>. The RMS firmware may be configured to perform any of the operations that are described above with reference to the RMS firmware <NUM> of <FIG> and/or the RMS firmware <NUM> of <FIG>.

<FIG> is a block diagram of another example accelerometer <NUM> that has an RMS output in accordance with an embodiment described herein. As shown in <FIG>, accelerometer <NUM> includes an ADC <NUM>, a digital filter <NUM>, and RMS firmware <NUM>. The digital filter <NUM> includes a FIR filter <NUM>, a first IIR filter 428a, and a second IIR filter 428b. The ADC <NUM> and the FIR filter <NUM> are operable in a manner similar to the ADC <NUM> and the FIR filter <NUM> described above with reference to <FIG>. The first IIR filter 428a is defined by first coefficients 438a. The second IIR filter 428b is defined by second coefficients 438b. Each of the first and second IIR filters 428a and 428b are any of a Bessel filter, a Chebyshev filter, or a Butterworth filter. For instance, a Butterworth filter may be chosen to provide a relatively quick cutoff at the cutoff frequency. A Bessel may be chosen to provide a phase response that is substantially linear in the passband. The accelerometer <NUM> is shown in <FIG> to include two IIR filters 428a and 428b for non-limiting, illustrative purposes. By knowing the first and second coefficients 438a and 438b and the input data rate (IDR) of the first and second IIR filters 428a and 428b, the corner frequencies of the first and second IIR filters 428a and 428b may be set. The IDR of the first and second IIR filters 428a and 428b is the same as the output data rate (ODR) of the FIR filter <NUM>. The ODR of the FIR filter <NUM> is the data rate at which data is generated by the FIR filter <NUM>. It will be recognized that the accelerometer <NUM> may include any suitable number of filters (e.g., <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and so on). The first and second IIR filters 428a and 428b may be incorporated into the FIR filter <NUM>, though the scope of the example embodiments is not limited in this respect.

Each of the first and second IIR filters 428a and 428b may have any suitable number of poles. For instance, each of the first and second IIR filters 428a and 428b may be a single-pole filter, a double-pole filter, etc. In one example, the first IIR filter 428a may be a double-pole filter and the second IIR filter 428b may be a single-pole filter, or vice versa. The number of poles is a design consideration that depends on the desired performance of the accelerometer <NUM>. A higher number of poles provides relatively higher frequency isolation; whereas, a lower number of poles provides a relatively smaller form factor, which may lead to greater size optimization.

The RMS firmware <NUM> includes variance logic <NUM> and interrupt logic <NUM>. The variance logic <NUM> is configured to calculate the variance "v" associated with a first input "a" and a second input "b". The first and second inputs are shown in <FIG> to be coupled to an input of the second IIR filter 428b and an output of the second IIR filter 428b for non-limiting, illustrative purposes. Each of the first and second inputs may be coupled to any suitable node in the accelerometer <NUM> (e.g., an output of the FIR filter <NUM>, an input of the first IIR filter 428a, an output of the first IIR filter 428a, an input of the second IIR filter 428b, an output of the second IIR filter 428b, and so on). The interrupt logic <NUM> compares the variance "v" to a high reference <NUM>, which corresponds to a "wake up" threshold (WUFTH), and a low reference <NUM>, which corresponds to a "back to sleep" threshold (BTSTH). The interrupt logic <NUM> is configured to generate an interrupt based at least in part on the variance "v" is greater than the high reference <NUM> or less than the low reference <NUM>. The variance "v" being greater than the high reference <NUM> indicates that the vibration of the object is greater than the WUFTH. The variance "v" being less than the low reference <NUM> indicates that the vibration of the object is less than the BTSTH.

If the accelerometer <NUM> down-samples digital signals that are provided by the ADC <NUM>, the accelerometer is configurable to utilize additional bit(s) if the down-sample rate needs a greater range. If the ODR is less than a threshold rate (e.g., <NUM> Hertz (Hz)), an enable/disable bit associated with the digital filter <NUM> may be repurposed so that the extra bit may be utilized.

<FIG> is a block diagram of an example model <NUM> of the accelerometer <NUM> shown in <FIG> in accordance with an embodiment described herein. The model <NUM> includes a transfer function <NUM>, a first adder <NUM>, a discrete FIR filter <NUM>, a tapped delay <NUM>, first hold logic <NUM>, a low pass filter (LPF) 528a, a high pass filter (HPF) 528b, a scope <NUM>, and RMS logic <NUM>. The transfer function <NUM> is configured to operate on an input signal <NUM>. For instance, the input signal <NUM> may be a chirp signal, and the transfer function <NUM> may be represented as num(s)/den(s). The first adder <NUM> adds an output of the transfer function <NUM> and a constant <NUM>. The discrete FIR filter <NUM> filters the output of the first adder <NUM>, which leads to the tapped delay <NUM>. The first hold logic <NUM> holds the output of the first adder <NUM>, which is then provided to the LPF 528a. The LPF 528a includes the first gain logic 522a and the second discrete filter 524a. The first gain logic 522a amplifies the output of the first hold logic <NUM>, which is then filtered by the second discrete filter 524a. The HPF 528b includes the second gain logic 522b and the third discrete filter 524b. The second gain logic 522b amplifies the output of the LPF 528a, which is then filtered by the third discrete filter 524b.

The RMS logic includes a second adder <NUM>, first math function logic <NUM>, absolute value logic <NUM>, first memory, <NUM>, second memory <NUM>, a third adder <NUM>, a switch <NUM>, a pulse generator <NUM>, second math function logic <NUM>, a divider <NUM>, second hold logic <NUM>, and square root logic <NUM>. The second adder <NUM> adds the output of the LPF 528a and the output of the HPF 528b. The first math function logic <NUM> calculates the square of the output of the second adder <NUM>. The absolute value logic calculates the absolute value of the output of the first math function logic <NUM>. The third adder <NUM> adds the output of the absolute value logic <NUM>, the output of the first memory <NUM>, and the output of the second memory <NUM>. The first memory stores the output of the third adder <NUM>. The second memory stores the output of the switch <NUM>. The pulse generator <NUM> generates pulses that control operation of the switch <NUM>. The switch is turned on for a duration of each pulse and turned off between the pulses. Other inputs to the switch <NUM> include the output of the third adder <NUM> and a constant <NUM> that is equal to zero. The second math function logic <NUM> calculates the square of the input value <NUM>. The divider <NUM> divides the output of the third adder <NUM> by the output of the second math function logic <NUM>. The second hold logic <NUM> holds the output of the divider <NUM>, which is then provided to the square root logic <NUM>. The square root logic <NUM> calculates the square root of the output of the second hold logic <NUM>. The scope receives the output of the first adder <NUM>, the output of the LPF 528a, the output of the HPF 528b, and the output of the square root logic <NUM> for viewing by a user of the model <NUM>.

<FIG> shows plots <NUM> of example output signals <NUM>, <NUM>, <NUM>, and <NUM> of respective components of an accelerometer in accordance with embodiments described herein. Output signal <NUM> represents example changes in an attribute of a structure in a MEMS device (e.g., structure <NUM> in MEMS device <NUM> of <FIG>). For instance, the output signal <NUM> may correspond to the output of the first adder <NUM> shown in <FIG>. Output signal <NUM> represents an example output of a first filter (e.g., first filter 428a of <FIG> or LPF 528a of <FIG>). Output signal <NUM> represents an example output of a second filter (e.g., second filter 428b of <FIG> or HPF 528b of <FIG>). Output signal <NUM> represents an example output of RMS firmware (e.g., RMS firmware <NUM> of <FIG> or RMS logic <NUM> of <FIG>). For instance, the output signal <NUM> may represents a series of RMS values corresponding to respective frequencies.

<FIG> show block diagrams of example accelerometers <NUM> and <NUM> having respective modes of operation in accordance with embodiments described herein. As shown in <FIG>, each of the accelerometers <NUM> and <NUM> includes an ADC <NUM>, a FIR filter <NUM>, a first IIR filter 728a, a second IIR filter 728b, RMS firmware <NUM>, interrupt logic <NUM>, and an output register <NUM>. RMS firmware <NUM> includes squaring logic <NUM>, averaging logic <NUM>, and square-root logic <NUM>. The ADC <NUM>, the FIR filter <NUM>, the first IIR filter 728a, the second IIR filter 728b, and the interrupt logic <NUM> are operable in a manner similar to the ADC <NUM>, the FIR filter <NUM>, the first IIR filter 428a, the second IIR filter 428b, and the interrupt logic <NUM> of <FIG>. The squaring logic <NUM> squares each received data point to provide a squared data point. The averaging logic <NUM> averages a designated number of squared data points that are received from the squaring logic <NUM> to provide an average value. The square-root logic <NUM> performs a square root on the average value to provide an RMS value. The output register <NUM> stores the output of the RMS firmware <NUM> or the output of the second IIR filter 728b, depending on the mode of operation. For example, in the accelerometer <NUM> of <FIG>, the output register <NUM> is configured to store the output of the RMS firmware <NUM> in accordance with a first mode of operation. In the accelerometer <NUM> of <FIG>, the output register <NUM> is configured to store the output of the second IIR filter 728b in accordance with a second mode of operation.

<FIG> shows example timing diagrams <NUM>, <NUM>, and <NUM> of an accelerometer for respective modes of operation in accordance with embodiments described herein. The accelerometer includes an ADC, a digital filter, and RMS firmware. The frequency of the digital signals that are provided by the ADC is <NUM> for each of the timing diagrams <NUM>, <NUM>, and <NUM> for non-limiting, illustrative purposes.

The first timing diagram <NUM> corresponds to a full power mode of operation of the accelerometer. The full power mode may provide the highest current and the best filter performance (i.e., least aliasing) of the modes discussed with regard to <FIG>. In the first timing diagram <NUM>, the digital filter is continuously enabled, corresponding to a duty cycle of <NUM>% for the control signal that is configured to control operation of the digital filter. In this mode, the digital filter samples the digital signals at <NUM>/8th of the frequency of the digital signals (i.e., (<NUM>)/<NUM> = <NUM>). Accordingly, the "filter frequency" of the digital filter is said to be <NUM>. In this mode, the ODR of the RMS firmware is <NUM>/4th of the filter frequency (i.e., (<NUM>)/<NUM> = <NUM> = <NUM>).

The second timing diagram <NUM> corresponds to a low power low frequency mode of operation of the accelerometer. The low power low frequency mode may provide sampling for relatively low frequency filter coefficients. This mode may keep the filter coefficients reasonable with relatively large sample frequency separation and/or corner frequency separation. In the second timing diagram <NUM>, each of the control signal of the digital filter and the filter frequency of the digital filter has a frequency that is <NUM>/8th of the frequency of the digital signals (i.e., (<NUM>)/<NUM> = <NUM>). In this mode, the ODR of the RMS firmware is <NUM>/4th of the filter frequency (i.e., (<NUM>)/<NUM> = <NUM> = <NUM>).

The third timing diagram <NUM> corresponds to a low power high frequency mode of operation of the accelerometer. The low power high frequency mode may provide sampling for relatively high frequency filter coefficients. This mode may keep the sampling rate relatively high for less aliasing at high filter corners. In the third timing diagram <NUM>, each of the control signal and the ODR of the RMS firmware has a frequency that is <NUM>/32nd of the frequency of the digital signals (i.e., (<NUM>)/<NUM> = <NUM> = <NUM>). In this mode, the filter frequency of the digital filter is equal to the frequency of the digital signals (i.e., <NUM>).

<FIG> show example plots <NUM>, <NUM>, <NUM>, and <NUM> of input acceleration versus RMS output for respective modes of operation in accordance with embodiments described herein. Plots <NUM> and <NUM> correspond to example implementations of the full power mode described above with regard to timing diagram <NUM> of <FIG>. Plot <NUM> corresponds to an example implementation of the low power low frequency mode described above with regard to timing diagram <NUM> of <FIG>. Plot <NUM> corresponds to an example implementation of the low power high frequency mode described above with regard to timing diagram <NUM> of <FIG>. The input acceleration in each of <FIG> may represent the physical vibration of an object. The RMS output for each of <FIG> is a series of RMS values corresponding to respective frequencies in the frequency spectrum. The mode of operation depicted by each of <FIG> corresponds to a respective set of filter settings that is calibrated to a respective frequency range. For example, in <FIG>, the corner frequency of the high-pass filter (HPF) is <NUM>, and the corner frequency of the low-pass filter (LPF) is <NUM>. In <FIG>, the corner frequency of the HPF is <NUM>, and the corner frequency of the LPF is <NUM>. In <FIG>, the corner frequency of the HPF is <NUM>, and the corner frequency of the LPF is <NUM>. In <FIG>, the corner frequency of the HPF is <NUM>, and the corner frequency of the LPF is <NUM>.

<FIG> and <FIG> show tables <NUM> and <NUM> of example ports for filtering and RMS functional blocks in an accelerometer (e.g., filters 428a and 428b and RMS firmware <NUM> in accelerometer <NUM> of <FIG>) in accordance with embodiments described herein. The filtering and RMS functional blocks may be configurable. For example, the filtering and RMS functional blocks may include a second-order infinite impulse response (IIR) filter configurable as low-pass only with optional bypass. In accordance with this example, the filtering and RMS functional blocks may further include a second-order IIR filter configurable as either low-pass or high-pass with optional bypass. In further accordance with this example, the filtering and RMS functional blocks may further include an RMS calculation block with configurable window size. In further accordance with this example, the filtering and RMS functional blocks have two configurable outputs.

<FIG> is a block diagram of the filtering and RMS functional blocks <NUM> described above with reference to <FIG> and <FIG> in accordance with an embodiment described herein. The filtering and RMS functional blocks <NUM> include a first filter 1528a, a second filter 1528b, and RMS window logic <NUM>. The first filter 1528a, the second filter 1528b, and the RMS window logic <NUM> may be operable in a manner similar to the first IIR filter 428a, the second IIR filter 428b, and the RMS firmware <NUM>, respectively, which are described above with reference to <FIG>, though the scope of the example embodiments is not limited in this respect.

<FIG> are block diagrams of respective filters <NUM> and <NUM> in accordance with embodiments described herein. Filters <NUM> and <NUM> are example implementations of respective filters 1528a and 1528b shown in <FIG>. <FIG> show tables <NUM> and <NUM> of example signal mappings in accordance with embodiments described herein. For instance, referring to <FIG>, the signals rms_f1_ish_map and rms_f2_ish_map are generated from rms_f1_ish and rms_f2_ish inputs as shown in <FIG>. Mapping for the signal rms_f2_osh is shown in <FIG>.

An example technique for determining coefficient settings for the filters <NUM> and <NUM> will now be described.

The generic filter implementation has the following transfer function. For filter <NUM>, the desired transfer function may be created in the following form. <MAT> A, B and C are positive values and may have further restrictions as noted below. An example procedure to determine filter coefficient settings from the above transfer function is as follows:.

Set rms_f1_1a to TMP1A dropping <NUM> in bit <NUM>. Set rms_f1_ba to TMPBA. Set rms_f1_ca to TMPCA. Set rsm_f1_ish to (TMPIRS - <NUM>). Set rms_f1_osh to TEMPORS.

The generic filter implementation has the following transfer function. For filter <NUM>, the desired transfer function may be created in one of these two forms. (Only filter <NUM> is high-pass in this example for non-limiting, illustrative purposes. ) <MAT> A, B and C are positive values and may have further restrictions as noted below. An example procedure to determine filter coefficient settings from the above transfer functions is as follows:.

Set rms_f2_1a to TMP1A dropping <NUM> in bit <NUM>. Set rms_f2_ba to TMPBA. Set rsm_f2_ish to (TMPIRS - <NUM>). Set rms_f2_osh to TEMPORS. Set rms_f2_hp to <NUM> for a high-pass or <NUM> for a low-pass.

<FIG> are flowcharts <NUM> and <NUM> of methods for making an accelerometer in accordance with embodiments described herein. For illustrative purposes, flowcharts <NUM> and <NUM> are described with respect fabrication system <NUM> shown in <FIG>. As shown in <FIG>, fabrication system <NUM> includes MEMS logic <NUM> and ASIC logic <NUM>. Further structural and operational embodiments will be apparent to persons skilled in the relevant art(s) based on the discussion regarding flowcharts <NUM> and <NUM>.

The method of flowchart <NUM> relates to fabricating a semiconductor package to include a microelectromechanical systems (MEMS) device and an application-specific integrated circuit (ASIC). As shown in <FIG>, the method of flowchart <NUM> begins at step <NUM>. In step <NUM>, the MEMS device is fabricated to include a capacitive structure having a capacitance that is configured to change in response to acceleration of an object. In an example implementation, MEMS logic <NUM> provides a MEMS device <NUM>.

At step <NUM>, the ASIC is configured to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. In an example implementation, ASIC logic <NUM> configures an ASIC <NUM>.

Step <NUM> includes steps <NUM>, <NUM>, and <NUM>. At step <NUM>, analog circuitry is incorporated into the ASIC. The analog circuitry is configured to measure the changes in the capacitance of the capacitive structure and further configured to generate analog signals that represent the changes in the capacitance.

At step <NUM>, an analog-to-digital converter (ADC) is incorporated into the ASIC. The ADC is configured to convert the analog signals to digital signals.

At step <NUM>, RMS firmware is incorporated into the ASIC. The RMS firmware is configured to perform a root-mean-square (RMS) calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object.

In an example embodiment, providing the MEMS device at step <NUM> includes fabricating the MEMS device to include the capacitive structure. In accordance with this embodiment, configuring the ASIC at step <NUM> includes fabricating the ASIC. In an aspect of this embodiment, fabricating the ASIC includes fabricating the analog circuitry, the ADC, and the RMS firmware on a common substrate (e.g., a common semiconductor substrate). In an implementation of this aspect, fabricating the MEMS device includes fabricating the MEMS device on the common substrate. In another aspect of this embodiment, fabricating the ASIC includes fabricating a digital filter that includes a bandpass filter configured to block frequencies that are not included in a designated frequency band such that the digital filter is coupled between the ADC and the RMS firmware.

In another example embodiment, incorporating the analog circuitry into the ASIC at step <NUM> includes fabricating the analog circuitry (e.g., to form the ASIC); incorporating the ADC into the ASIC at step <NUM> includes fabricating the ADC; and/or incorporating the RMS firmware into the ASIC at step <NUM> includes fabricating the RMS firmware.

In yet another example embodiment, configuring the ASIC at step <NUM> includes configuring (e.g., fabricating) a digital filter to down-sample a rolling average of the digital signals to provide a down-sampled rolling average signal. In accordance with this embodiment, incorporating the RMS firmware into the ASIC at step <NUM> includes configuring (e.g., fabricating) the RMS firmware to perform the RMS calculation on the down-sampled rolling average signal to provide the RMS value that represents the amount of the acceleration of the object.

In still another example embodiment, incorporating the RMS firmware into the ASIC at step <NUM> includes configuring the RMS firmware to perform multiple RMS calculations on the representation of the digital signals to provide respective RMS values that represent respective amounts of the acceleration of the object with respect to respective frequencies.

In yet another example embodiment, incorporating the RMS firmware into the ASIC at step <NUM> includes configuring the RMS firmware to be capable of generating an interrupt signal based at least in part on the RMS value reaching a threshold (e.g., based at least in part on the RMS value being greater than or equal to an upper threshold or less than or equal to a lower threshold). For instance, the RMS firmware may be configured to generate the interrupt signal.

In some example embodiments, one or more steps <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM> of flowchart <NUM> may not be performed. Moreover, steps in addition to or in lieu of steps <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM> may be performed.

As shown in <FIG>, the method of flowchart <NUM> begins at step <NUM>. In step <NUM>, a semiconductor substrate is provided. In an example implementation, the MEMS logic <NUM> and/or the ASIC logic <NUM> provides the semiconductor substrate.

At step <NUM>, a MEMS device is formed on the semiconductor substrate. The MEMS device includes a capacitive structure having a capacitance that is configured to change in response to acceleration of an object. In an example implementation, the MEMS logic <NUM> forms a MEMS device <NUM> on the semiconductor substrate.

At step <NUM>, an ASIC is formed on the semiconductor substrate to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. The ASIC includes analog circuitry, an ADC, and RMS firmware. In an example implementation, the ASIC logic <NUM> forms an ASIC <NUM> on the semiconductor substrate.

Step <NUM> includes steps <NUM>, <NUM>, and <NUM>. At step <NUM>, the analog circuitry is configured to measure the changes in the capacitance of the capacitive structure and to generate analog signals that represent the changes in the capacitance.

At step <NUM>, the ADC is configured to convert the analog signals to digital signals.

At step <NUM>, the RMS firmware is configured to perform a RMS calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object.

In some example embodiments, one or more steps <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM> of flowchart <NUM> may not be performed. Moreover, steps in addition to or in lieu of steps <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and/or <NUM> may be performed.

<FIG> shows an example plot <NUM> of digital output versus RMS output in accordance with at least one embodiment described herein. The plot <NUM> shows a digital output signal S2 that can be created before an RMS calculation, and an RMS output signal S4 that can be created after the RMS calculation. In at least one embodiment, the RMS calculation result (i.e., the RMS output signal S4) is fed to an interrupt controller. The interrupt controller outputs an interrupt signal to a microcomputer. When an acceleration sensor is used as a motion sensor to measure motion of a measurement object, the digital output signal S2 contains an oscillating component (i.e., alternating-current component) that reflects the motion of the measurement object (i.e., the acceleration that acts on the motion sensor). As shown in <FIG>, when the measurement object is in motion, as shown by time periods <NUM> and <NUM>, the digital signal S2 contains an oscillating component with a signal value having an amplitude that is greater than a predetermined threshold level Vth.

The signal before the RMS calculation can be an output signal after variable filtering is applied. Variable filtering includes filtering that has a variable arrangement. For example, variable filtering can be implemented by serial arrangement of two variable filtering portions. In at least one embodiment, each variable filtering portion can be a LPF or a HPF. A cut-off frequency of each variable filtering portion can be a variable, or the variable filtering portion can be changed from LPF to HPF, or HPF to LPF. For example, a serial arrangement of HPF (cut-off frequency fH) and LPF (cut-off frequency fL) with fH < fL for variable filtering can create a signal after the variable filtering that is in a particular frequency range between fH and fL. As a result, the digital output signal S2 can indicate motion or oscillation in a particular frequency range after applying variable filtering.

In the illustrated embodiment, the amplitude of the digital output signal S2 does not remain greater than the threshold level Vth at all instances of time while the measurement object is in motion. Instead, the amplitude of the digital output signal S2 oscillates so that it rises above, and falls below, the threshold level Vth. Because of that oscillation in amplitude, feeding the digital output signal S2 directly to the interrupt controller and comparing it with the threshold level Vth can create error in detection of a motion or oscillation within a particular frequency range. Additionally, the oscillation of the digital signal S2 can be asynchronous with the operation timing of the interrupt controller (i.e., the timing with which the interrupt controller samples the signal fed to it). A sufficiently high operating speed (i.e., clock frequency) in the interrupt controller would be required if the digital output signal S2 were fed directly to the interrupt controller to avoid the error.

However, the RMS output signal S4 can be fed to the interrupt controller to reduce error. The RMS signal S4, which can be generated by subjecting the digital output signal S2 to variable filtering and then to RMS calculation, has an amplitude that is maintained greater than the threshold level Vth for the entire duration that a motion or oscillation is in a particular frequency range, which can be defined by the pass band of a variable filter. The RMS calculation is performed, for example, by calculating the RMS signal as√/(S13(<NUM>)<NUM> + S13(<NUM>)<NUM>. + S13(N)<NUM>) using N digital signals S13(<NUM>)-S13(N). For example, N digital signals can be <NUM> digit signals S13(<NUM>)-S13(<NUM>) for x, y, z-axis signals. Other arrangements are possible for the N digital signals S13(<NUM>)-S13(N).

In at least one embodiment, the interrupt controller can detect a motion or oscillation in the particular frequency range by checking whether the amplitude of the RMS output signal S4 has remained greater than the predetermined threshold level Vth (e.g., Vth = <NUM> V) for a predetermined threshold time period Tth. In an example embodiment, the threshold time period Tth is <NUM>. In another example embodiment, the threshold time period Tth is in a range between about <NUM> and about <NUM>. In the illustrated example, the RMS output signal S4 rises above the predetermined threshold level Vth twice over the plotted duration. In an example, the first motion M1 of time period <NUM> can be ignored by the interrupt controller because the time period T1 for which S4 > Vth is shorter than the threshold time period Tth. In contrast, the second motion M2 can be detected by the interrupt controller because the time period for which S4 > Vth is longer than the threshold time period Tth.

<FIG> is a block diagram showing an example accelerometer <NUM>. Accelerometer <NUM> includes a MEMS device <NUM> and an ASIC <NUM>. The MEMS device <NUM> includes a structure <NUM> that can be a capacitive structure. The ASIC <NUM> includes switches <NUM>, an analog front end (AFE) <NUM>, capacitors <NUM>, an ADC <NUM>, a digital signal processor (DSP) <NUM>, a first-in-first-out (FIFO) buffer <NUM>, a communication interface <NUM>, a temperature sensor <NUM>, an internal power source <NUM>, and buffers <NUM>. The ASIC <NUM> can be connected to a host microcomputer (not shown).

The switches <NUM> and the capacitors <NUM> can be used to eliminate the noise that occurs in the ASIC <NUM> when it detects acceleration along an axis, such as an X-axis as will be described below. A similar construction can be adopted for constructions that are configured to detect acceleration along each of a Y-axis and a Z-axis. The capacitors <NUM> can be selected to have any capacitance value. In at least one embodiment, the capacitors <NUM> have the same capacitance value.

The AFE <NUM> performs predetermined analog adjustment processing on a sensor output signal S10 to generate an analog signal S11. In an example embodiment, the AFE is configured to provide amplification of the sensor output signal S10. In an example embodiment, the AFE <NUM> is configured to provide noise elimination on the sensor output signal S10. The analog signal S11 is fed into the ADC <NUM>, which converts the analog signal S11 to a digital signal S12.

In some example embodiments, the DSP <NUM> is configured to receive the digital signal S12 and to generate an interrupt signal S20. The ASIC <NUM> can output the interrupt signal S20 to a host microcomputer. The DSP <NUM> can also generate an output selection signal S15 to send to the FIFO buffer <NUM>. The DSP <NUM> can also be configured to access the FIFO buffer <NUM>, conduct serial communication via the communication interface <NUM>, monitor the temperature sensor <NUM>, and perform <NUM>-axis (e.g., X-axis, Y-axis, and Z-axis) calibration on the MEMS device <NUM> via the buffers <NUM>.

In some example embodiments, the FIFO buffer <NUM> holds, on a first-in-first-out basis, various kinds of data that are processed by the DSP <NUM>. The kinds of data can include raw acceleration data and/or RMS calculation data. A host can access the FIFO buffer <NUM> via the communication interface <NUM> to read the various kinds of data stored in the FIFO buffer <NUM>. In at least one embodiment, the data is read serially.

In some example embodiments, the communication interface <NUM> is an interface for bidirectional serial communication with a host via an I2C/SPI bus <NUM>. In at least one embodiment, the communication interface <NUM> includes control registers.

In some example embodiments, the temperature sensor <NUM> is an incorporated sensor that senses the temperature of the ASIC <NUM>. In at least one example embodiment, the temperature sensor senses the temperature of the ASIC <NUM> at a junction between a semiconductor substrate and the MEMS device <NUM> and/or the ASIC <NUM>.

In some example embodiments, the internal power source <NUM> generates an internal supply voltage Vcc from an external supply voltage Vdd to supply it to the different blocks in the ASIC <NUM>.

The buffers <NUM> respectively shape the waveforms of calibration signals fed from the DSP <NUM> and feed the calibration signals to the MEMS device <NUM>. The calibration signals can be used to drive the MEMS device <NUM>.

In some example embodiments, the ASIC <NUM> is provided with a plurality of terminals, or pads <NUM>, for electrical connection with devices outside of the ASIC <NUM>. In the illustrated embodiment, a plurality of pads <NUM> are provided for electrical connection with devices outside of the ASIC <NUM> (e.g., chgin (corresponding to an input element), car1_x, car2_x, car1_y, car2_y, car1_z, car2_z, iddq_en_ex, dvdd1_ex, Vdd, GND, IOVdd, nCS, SDO/ADDR, SDA, SCL, TRIG, INT1, and INT2).

In at least one example embodiment, X-axis differential drive signals are fed from the DSP <NUM> to the MEMS device <NUM> via the buffers <NUM> (e.g., through pads car1_x and car2_x). Similarly, Y-axis differential drive signals can be fed via the buffers <NUM> to the MEMS device <NUM> (e.g., through pads car1_y and car2_y). Similarly, Z-axis differential drive signals can be fed via the buffers <NUM> to the MEMS device <NUM> (e.g., through pads car1_z and car2_z).

In example embodiments, the drive signals are fed to MEMS capacitors (not shown) of the MEMS structure <NUM> provided in the MEMS device <NUM>, where two MEMS capacitors are provided equivalently for each of X, Y, and Z axes. The MEMS structure <NUM> is configured so that capacitance values of the two MEMS capacitors for each axis vary such that, according to acceleration, one increases and the other decreases. In at least one embodiment, adding the capacitance values of the two MEMS capacitors cancels an offset that can arise within the MEMS device <NUM> due to temperature characteristics etc. and noise applied to the MEMS device <NUM>.

<FIG> shows an example timing diagram <NUM> of an accelerometer, such as accelerometer <NUM> of <FIG>. The timing diagram <NUM> illustrates elimination of noise from an ASIC, such as ASIC <NUM> of <FIG>. The timing diagram <NUM> illustrates an example operational mode of the accelerometer where an acceleration of <NUM> is detected along an X-axis.

In an example embodiment, drive signals for differential control are fed via buffers <NUM> to the two MEMS capacitors (not shown) included in the MEMS structure <NUM> of the MEMS device <NUM>. A value V-QMEM resulting from adding up capacitance values of the MEMS capacitors is fed into the ASIC <NUM>, such as via the pad <NUM> chgin.

In example embodiments, the outputs of the buffers <NUM> (e.g., <NUM>-<NUM> and <NUM>-<NUM>) are controlled so that their sum equals the difference between H (V) relative to M (V). During time period T1, the switch <NUM>-<NUM> is on and the switches <NUM>-<NUM> and <NUM>-<NUM> are off; thus, the value fed in via the terminal chgin is the capacitance value V-QMEM from the MEMS device <NUM>.

During time period T2, the switch <NUM>-<NUM> is off and the switches <NUM>-<NUM> and <NUM>-<NUM> are on; thus, the value fed in via the terminal chgin is the capacitance value V-Qcap from the noise elimination capacitors <NUM>. Then a calculator, that can be included in the DSP <NUM>, can calculate the difference between V-QMEM and V-Qcap as converted into digital values. As a result, even in the presence of noise from the ASIC <NUM>, as in time periods T3 and T4, the noise can be cancelled with the calculated difference. In at least one embodiment, if the switch <NUM>-<NUM> is on and the switches <NUM>-<NUM> and <NUM>-<NUM> are off for all of the time periods, the digital signal S12 is outputted (i.e., the calculator outputs the digital signal S12).

<FIG> is a block diagram <NUM> showing an example of a DSP <NUM>, such as the DSP <NUM> that is included in the accelerometer <NUM> of <FIG>. The DSP <NUM> includes a calculator <NUM> ("CALC"), a preprocessor <NUM>, an RMS processor <NUM>, an output data controller <NUM>, various engines <NUM>, and an interrupt controller <NUM>.

In an example, the calculator <NUM> performs predetermined calculation processing to the digital signal S12 fed to it from the terminal chgin via the AFE <NUM> and the ADC <NUM>, to output a digital signal S13a. For example, the predetermined calculation processing can include a calculation of the difference between H (V) relative to M (V) mentioned above. Also as described above, if the switch <NUM>-<NUM> is on and the switches <NUM>-<NUM> and <NUM>-<NUM> are off for all of the time periods, the calculator <NUM> can be configured to output the digital signal S12.

In some embodiments preprocessor <NUM> subjects the digital signal S13a to various kinds of preprocessing to output a digital signal S13. For example, the preprocessing can include noise elimination, offset adjustment, gain adjustment, variable filtering, and band-width restriction.

In some embodiments, the RMS processor <NUM> calculates the root-mean-square of the digital signal S13 to output an RMS signal S14. For example, when calculating the root-mean-square of N digital signals S13(<NUM>)-S13(N), the RMS signal S14 is defined as S14 = √(S13(<NUM>)<NUM> + S13(<NUM>)<NUM>. + S13(N)<NUM>), as a RMS calculation result.

As illustrated, the RMS signal S14 is outputted to the interrupt controller <NUM>. In an example embodiment, the digital signal S12 corresponds to the signal S2 in <FIG>, and the RMS signal S14 corresponds to the signal S4 in <FIG>.

In some embodiments, the output data controller <NUM> feeds either the digital signal S13 or the RMS signal S14 out of the DSP <NUM> (to the FIFO buffer) as a selection signal S15. In at least one example embodiment, the output data controller <NUM> feeds the selection signal S15 to the FIFO buffer, such as FIFO buffer <NUM> of <FIG>.

In at least one example embodiment, an information acquisition engine <NUM> is a functional block that acquires various kinds of information (e.g., the status of an electronic device) from the digital signal S13 (i.e., raw acceleration data that has not been subjected to RMS calculation). The engine <NUM> can include a plurality of engines. In the illustrated embodiment, the information acquisition engine <NUM> includes a first engine <NUM>-<NUM> and a second engine <NUM>-<NUM>.

In some embodiments, the interrupt controller <NUM> generates an interrupt signal S20 that is output to the host microcomputer. In at least one embodiment, the interrupt controller <NUM> generates the interrupt signal S20 according to the RMS signal S14 fed from the RMS processor <NUM>. The interrupt controller <NUM> can also reference various detection signals S16a and S16b fed from the information acquisition engine <NUM>, to output an interrupt signal S20 to the host microcomputer.

<FIG> illustrate an accelerometer <NUM> in accordance with an embodiment. The accelerometer <NUM> includes a MEMS device and an ASIC that are housed inside of a package <NUM>. In the illustrated embodiment, the package <NUM> is shaped as a thin parallelepiped having a top surface <NUM>, a bottom surface <NUM> opposite from the top surface <NUM>, and four side surfaces <NUM>-<NUM> to <NUM>-<NUM> extending between the top surface <NUM> and the bottom surface <NUM>.

In at least one embodiment, the side surfaces <NUM>-<NUM> and <NUM>-<NUM>, which are disposed opposite from each other, each include a plurality of external terminals <NUM> and <NUM>, respectively. The plurality of external terminals <NUM> and <NUM> are exposed from the side surfaces <NUM>-<NUM> and <NUM>-<NUM>, and also exposed from the bottom surface <NUM>. In at least one embodiment, a bottom terminal <NUM> is provided on the bottom surface <NUM>. The bottom terminal <NUM> can be configured to cover a large portion of the bottom surface <NUM>. In at least one embodiment, the bottom terminal <NUM> is a heat-sink pad that is configured to provide heat dissipation from the components in the package <NUM>. In the illustrated embodiment, accelerometer <NUM> employs a dual flatpack no-leaded (DFN) package.

<FIG> shows an example of an internal structure of an accelerometer <NUM> in accordance with an embodiment. For example, the structure shown in <FIG> can be included in accelerometer <NUM> of <FIG>. In the illustrated embodiment, the accelerometer <NUM> is configured as a stacked assembly of a MEMS device <NUM>, an ASIC <NUM>, and a substrate <NUM>. In the illustrated embodiment, the MEMS device <NUM> and the ASIC <NUM> are stacked on the substrate <NUM>. The substrate <NUM> can be a laminate substrate. In at least one non-limiting embodiment, the MEMS device <NUM> is mounted on a top surface of the substrate <NUM>, and the ASIC <NUM> is mounted on a top surface of the MEMS device <NUM> so that the components form a stack on a common substrate. In other example embodiments, the MEMS device and the ASIC are mounted side by side on the common substrate. In other example embodiments, the MEMS device and the ASIC can be formed by fabricating the components in a common substrate.

In some embodiments, the ASIC <NUM> is provided with terminals, or pads <NUM>. The pads <NUM> can be arranged in any way on the ASIC <NUM>. In at least one example, the pads <NUM> are arranged in an array disposed along one side of the ASIC <NUM>. The ASIC <NUM> can be a chip that is cut out in the shape of a thin rectangular sheet.

In some embodiments, the MEMS device <NUM> is formed in the shape of a thin rectangular sheet. In at least one embodiment, the MEMS device <NUM> includes a lowered step that extends along one side of the MEMS device <NUM>. The MEMS device <NUM> can also include terminals, or pads <NUM>. The pads <NUM> can be arranged in an array.

In some embodiments, the pads <NUM> on the ASIC <NUM> and the pads <NUM> on the MEMS device <NUM> are arranged in two rows extending beside each other. The ASIC <NUM> can be arranged so that one side of the ASIC <NUM> is flush with a side of the step on the MEMS device <NUM>, as shown, so that the pads <NUM> of the ASIC <NUM> are disposed adjacent the pads <NUM> of the MEMS device <NUM>. The proximity of the pads <NUM> of the ASIC <NUM> and the pads <NUM> of the MEMS device <NUM> can be utilized to reduce the length of wires (not shown) used to form electrical connections between the MEMS device <NUM> and the ASIC <NUM>.

In some embodiments, an integrated circuit (AFE) can include a driver configured to feed a MEMS device with a drive signal for noise elimination, an input element configured to be fed with an output from the MEMS device resulting from the driving signal being output via the MEMS device, a calculator configured to process a signal from the input element, and a capacitor provided between the driver and the input element and configured to turn on and off electrical connection therebetween. In at least one embodiment, the calculator can be configured to calculate the difference between the signal output via the MEMS device and the signal output via the capacitor without passing through the MEMS device. In at least one embodiment, the integrated circuit can further include a first switch provided between the input element and the calculator. In a further aspect, the integrated circuit can include a second switch configured to turn on and off electrical connection of the capacitor. In a further aspect, the first and second switches can be configured to be turned on and off in a mutually exclusive relationship. In a further aspect, the first and second switches can be configured to be turned on and off at equal time intervals. In at least one embodiment, the drive signal can be configured to be a differential signal between two paths. In a further aspect, the integrated circuit can include, as the capacitor, two capacitors and further include, in addition to the second switch, a third switch, with the second and third switches being configured to be turned on and off to be in the same state.

A first example accelerator comprises a microelectromechanical systems (MEMS) device, an application-specific integrated circuit (ASIC), and RMS firmware. The MEMS device includes a capacitive structure having a capacitance that is configured to change in response to acceleration of an object. The ASIC is configured to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. The ASIC comprises analog circuitry and an analog-to-digital converter (ADC). The analog circuitry is configured to measure the changes in the capacitance of the capacitive structure. The analog circuitry is further configured to generate analog signals that represent the changes in the capacitance. The ADC is configured to convert the analog signals to digital signals. The RMS firmware is configured to perform a root-mean-square (RMS) calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object. The ASIC further comprises a digital filter configured to filter the digital signals to provide filtered digital signals; wherein the RMS firmware is configured to perform the RMS calculation on the filtered digital signals to provide the RMS value that represents the amount of the acceleration of the object. The digital filter includes a plurality of signal processing filters. Each of the plurality of signal processing filters has a set of user-programmable coefficients that are capable of having a plurality of sets of values, at least a first set of values causing the respective signal processing filter to be configured as a first filter, at least a second set of values causing the respective signal processing filter to be configured as a second filter. The first and second filters are any of a Butterworth filter, a Bessel filter and a Chebyshev filter.

In a first aspect of the first example accelerator, the MEMS device and the ASIC are implemented on a common semiconductor chip.

In a second aspect of the first example accelerator, the digital filter includes at least one Butterworth filter. The second aspect of the first example accelerometer may be implemented in combination with the first aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In a third aspect of the first example accelerometer, the digital filter includes at least one Bessel filter. The third aspect of the first example accelerometer may be implemented in combination with the first and/or second aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In a fourth aspect of the first example accelerometer, the digital filter includes at least one Chebyshev filter. The fourth aspect of the first example accelerometer may be implemented in combination with the first, second, and/or third aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In a fifth aspect of the first example accelerometer, the ASIC further comprises a digital filter configured to filter the digital signals to provide filtered digital signals. In accordance with the fifth aspect, the RMS firmware is configured to perform the RMS calculation on the filtered digital signals to provide the RMS value that represents the amount of the acceleration of the object. In further accordance with the fifth aspect, the digital filter includes a bandpass filter configured to block frequencies that are not included in a designated frequency band. The fifth aspect of the first example accelerometer may be implemented in combination with the first, second, third, and/or fourth aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In a sixth aspect of the first example accelerometer, the ASIC further comprises a digital filter configured to filter the digital signals to provide filtered digital signals. In accordance with the sixth aspect, the RMS firmware is configured to perform the RMS calculation on the filtered digital signals to provide the RMS value that represents the amount of the acceleration of the object. In further accordance with the sixth aspect, the digital filter includes a plurality of signal processing filters. In further accordance with the sixth aspect, each of the plurality of signal processing filters has a set of user-programmable coefficients that are capable of having a plurality of sets of values. In further accordance with the sixth aspect, at least a first set of values causes the respective signal processing filter to be configured as a Butterworth filter, and at least a second set of values causes the respective signal processing filter to be configured as a Bessel filter. The sixth aspect of the first example accelerometer may be implemented in combination with the first, second, third, fourth, and/or fifth aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In a seventh aspect of the first example accelerometer, the ASIC further comprises a digital filter configured to filter the digital signals to provide filtered digital signals. In accordance with the seventh aspect, the RMS firmware is configured to perform the RMS calculation on the filtered digital signals to provide the RMS value that represents the amount of the acceleration of the object. In further accordance with the seventh aspect, the digital filter is configured to sample the representation of the digital signals at a sampling frequency that is greater than or equal to an output data rate of the RMS firmware. The seventh aspect of the first example accelerometer may be implemented in combination with the first, second, third, fourth, fifth, and/or sixth aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In an eighth aspect of the first example accelerometer, the ASIC further comprises a digital filter configured to filter the digital signals to provide filtered digital signals. In accordance with the eighth aspect, the RMS firmware is configured to perform the RMS calculation on the filtered digital signals to provide the RMS value that represents the amount of the acceleration of the object. In further accordance with the eighth aspect, the digital filter is configured to sample the representation of the digital signals at a sampling frequency that is greater than or equal to four times an output data rate of the RMS firmware. The eighth aspect of the first example accelerometer may be implemented in combination with the first, second, third, fourth, fifth, sixth, and/or seventh aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In a ninth aspect of the first example accelerometer, the ASIC further comprises a digital filter configured to down-sample a rolling average of the digital signals to provide a down-sampled rolling average signal. In accordance with the ninth aspect, the RMS firmware is configured to perform the RMS calculation on the down-sampled rolling average signal to provide the RMS value that represents the amount of the acceleration of the object. The ninth aspect of the first example accelerometer may be implemented in combination with the first, second, third, fourth, fifth, sixth, seventh, and/or eighth aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In a tenth aspect of the first example accelerometer, the RMS firmware is configured to perform a plurality of RMS calculations on the representation of the digital signals to provide a plurality of respective RMS values that represent respective amounts of the acceleration of the object with respect to respective frequencies. The tenth aspect of the first example accelerometer may be implemented in combination with the first, second, third, fourth, fifth, sixth, seventh, eighth, and/or ninth aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In an eleventh aspect of the first example accelerometer, the RMS firmware is configured to generate an interrupt signal based at least in part on the RMS value reaching a threshold. The eleventh aspect of the first example accelerometer may be implemented in combination with the first, second, third, fourth, fifth, sixth, seventh, eighth, ninth, and/or tenth aspect of the first example accelerometer, though the example embodiments are not limited in this respect.

In a first example method of making an accelerometer, a semiconductor package is fabricated to include a microelectromechanical systems (MEMS) device and an application-specific integrated circuit (ASIC). The fabricating comprises providing the MEMS device including a capacitive structure having a capacitance that is configured to change in response to acceleration of an object. The fabricating further comprises configuring the ASIC to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. The configuring comprises incorporating analog circuitry into the ASIC. The analog circuitry is configured to measure the changes in the capacitance of the capacitive structure and is further configured to generate analog signals that represent the changes in the capacitance. The configuring further comprises incorporating an analog-to-digital converter (ADC) into the ASIC. The ADC is configured to convert the analog signals to digital signals. The configuring further comprises incorporating RMS firmware into the ASIC. The RMS firmware is configured to perform a root-mean-square (RMS) calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object.

In a first aspect of the first example method, providing the MEMS device comprises fabricating the MEMS device to include the capacitive structure. In accordance with the first aspect, configuring the ASIC comprises fabricating the ASIC.

In a first example of the first aspect, fabricating the ASIC comprises fabricating the analog circuitry, the ADC, and the RMS firmware on a common substrate.

In an implementation of the first example of the first aspect, fabricating the MEMS device comprises fabricating the MEMS device on the common substrate.

In a second example of the first aspect, fabricating the ASIC comprises fabricating a digital filter that includes a bandpass filter configured to block frequencies that are not included in a designated frequency band such that the digital filter is coupled between the ADC and the RMS firmware.

In a second aspect of the first example method, configuring the ASIC comprises configuring a digital filter to down-sample a rolling average of the digital signals to provide a down-sampled rolling average signal. In accordance with the second aspect, incorporating the RMS firmware into the ASIC comprises configuring the RMS firmware to perform the RMS calculation on the down-sampled rolling average signal to provide the RMS value that represents the amount of the acceleration of the object. The second aspect of the first example method may be implemented in combination with the first aspect of the first example method, though the example embodiments are not limited in this respect.

In a third aspect of the first example method, incorporating the RMS firmware into the ASIC comprises configuring the RMS firmware to perform a plurality of RMS calculations on the representation of the digital signals to provide a plurality of respective RMS values that represent respective amounts of the acceleration of the object with respect to respective frequencies. The third aspect of the first example method may be implemented in combination with the first and/or second aspect of the first example method, though the example embodiments are not limited in this respect.

In a fourth aspect of the first example method, incorporating the RMS firmware into the ASIC comprises configuring the RMS firmware to be capable of generating an interrupt signal based at least in part on the RMS value reaching a threshold. The fourth aspect of the first example method may be implemented in combination with the first, second, and/or third aspect of the first example method, though the example embodiments are not limited in this respect.

In a second example method of making an accelerometer, a semiconductor substrate is provided. A microelectromechanical systems (MEMS) device, which includes a capacitive structure having a capacitance that is configured to change in response to acceleration of an object, is formed on the semiconductor substrate. An application-specific integrated circuit (ASIC), which includes analog circuitry, an analog-to-digital converter (ADC), and RMS firmware, is formed on the semiconductor substrate to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. Forming the ASIC on the semiconductor substrate comprises configuring the analog circuitry to measure the changes in the capacitance of the capacitive structure and to generate analog signals that represent the changes in the capacitance. Forming the ASIC on the semiconductor substrate further comprises configuring the ADC to convert the analog signals to digital signals. Forming the ASIC on the semiconductor substrate further comprises configuring the RMS firmware to perform a root-mean-square (RMS) calculation on a representation of the digital signals to provide an RMS value that represents an amount of the acceleration of the object.

A second example accelerometer comprises a microelectromechanical systems (MEMS) device and an application-specific integrated circuit (ASIC). The MEMS device includes a capacitive structure having a capacitance that is configured to change in response to acceleration of an object. The application-specific integrated circuit (ASIC) is configured to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure. The ASIC is configured to calculate a representative value that represents the changes in the capacitance in a designated frequency range, and provide an interrupt signal when the representative value is greater than or equal to a threshold value for at least a specified period of time. The representative value is a root-mean-square (RMS) of an input value.

In a first aspect of the second example accelerometer, the ASIC comprises driver circuitry, input circuitry, capacitors, and switches. The drive circuitry is configured to provide a drive signal to the MEMS device. The input circuitry is configured to receive an input signal that represents the changes in the capacitance of the capacitive structure from the MEMS device. The input signal is based at least in part on the drive signal. The capacitors are coupled between first nodes of the drive circuitry and second nodes of the input circuitry. The switches are coupled in series with the capacitors between the first nodes and the second nodes, and the switches are controllable to selectively couple the drive circuitry to the input circuitry via the capacitors. The ASIC is configured to calculate a differential signal that represents a difference between the input signal at the second nodes and the drive signal at the first nodes.

In a second aspect of the second example accelerometer, the MEMS device and the ASIC are included in a single package. The MEMS device has input terminals to receive the drive signal from the drive circuitry of the ASIC, and an output terminal to provide the input signal to the ASIC. The input terminals of the MEMS device and the drive circuitry of the ASIC are coupled by wire in the single package, and the output terminal of the MEMS device and the input circuitry of the ASIC are coupled by wire in the single package. The second aspect of the second example accelerometer may be implemented in combination with the first aspect of the second example accelerometer, though the example embodiments are not limited in this respect.

Example embodiments, systems, components, subcomponents, devices, methods, flowcharts, steps, and/or the like described herein, including but not limited to fabrication system <NUM> and flowcharts <NUM> and <NUM> may be implemented in hardware (e.g., hardware logic/electrical circuitry), or any combination of hardware with software (computer program code configured to be executed in one or more processors or processing devices) and/or firmware. The embodiments described herein, including systems, methods/processes, and/or apparatuses, may be implemented using well known computing devices, such as computer <NUM> shown in <FIG>. For example, fabrication system <NUM>, each of the steps of flowchart <NUM>, and each of the steps of flowchart <NUM> may be implemented using one or more computers <NUM>.

Computer <NUM> can be any commercially available and well known communication device, processing device, and/or computer capable of performing the functions described herein, such as devices/computers available from International Business Machines®, Apple®, HP®, Dell®, Cray®, Samsung®, Nokia®, etc. Computer <NUM> may be any type of computer, including a server, a desktop computer, a laptop computer, a tablet computer, a wearable computer such as a smart watch or a head-mounted computer, a personal digital assistant, a cellular telephone, etc..

Computer <NUM> includes one or more processors (also called central processing units, or CPUs), such as a processor <NUM>. Processor <NUM> is connected to a communication infrastructure <NUM>, such as a communication bus. In some embodiments, processor <NUM> can simultaneously operate multiple computing threads. Computer <NUM> also includes a primary or main memory <NUM>, such as random access memory (RAM). Main memory <NUM> has stored therein control logic <NUM> (computer software), and data.

Computer <NUM> also includes one or more secondary storage devices <NUM>. Secondary storage devices <NUM> include, for example, a hard disk drive <NUM> and/or a removable storage device or drive <NUM>, as well as other types of storage devices, such as memory cards and memory sticks. For instance, computer <NUM> may include an industry standard interface, such a universal serial bus (USB) interface for interfacing with devices such as a memory stick. Removable storage drive <NUM> represents a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup, etc..

Removable storage drive <NUM> interacts with a removable storage unit <NUM>. Removable storage unit <NUM> includes a computer useable or readable storage medium <NUM> having stored therein computer software <NUM> (control logic) and/or data. Removable storage unit <NUM> represents a floppy disk, magnetic tape, compact disk (CD), digital versatile disc (DVD), Blu-ray disc, optical storage disk, memory stick, memory card, or any other computer data storage device.

Computer <NUM> also includes input/output/display devices <NUM>, such as touchscreens, LED and LCD displays, keyboards, pointing devices, etc..

Computer <NUM> further includes a communication or network interface <NUM>. Communication interface <NUM> enables computer <NUM> to communicate with remote devices. For example, communication interface <NUM> allows computer <NUM> to communicate over communication networks or mediums <NUM> (representing a form of a computer useable or readable medium), such as local area networks (LANs), wide area networks (WANs), the Internet, etc. Network interface <NUM> may interface with remote sites or networks via wired or wireless connections. Examples of communication interface <NUM> include but are not limited to a modem (e.g., for <NUM> and/or <NUM> communication(s)), a network interface card (e.g., an Ethernet card for Wi-Fi and/or other protocols), a communication port, a Personal Computer Memory Card International Association (PCMCIA) card, a wired or wireless USB port, etc. Control logic <NUM> may be transmitted to and from computer <NUM> via the communication medium <NUM>.

Any apparatus or manufacture comprising a computer useable or readable medium having control logic (software) stored therein is referred to herein as a computer program product or program storage device. Examples of a computer program product include but are not limited to main memory <NUM>, secondary storage devices <NUM> (e.g., hard disk drive <NUM>), and removable storage unit <NUM>. Such computer program products, having control logic stored therein that, when executed by one or more data processing devices, cause such data processing devices to operate as described herein, represent embodiments. For example, such computer program products, when executed by processor <NUM>, may cause processor <NUM> to perform any of the steps of flowchart <NUM> of <FIG> and/or flowchart <NUM> of <FIG>.

Devices in which embodiments may be implemented may include storage, such as storage drives, memory devices, and further types of computer-readable media. Examples of such computer-readable storage media (e.g., non-transitory media) include a hard disk, a removable magnetic disk, a removable optical disk, flash memory cards, digital video disks, random access memories (RAMs), read only memories (ROM), and the like. As used herein, the terms "computer program medium" and "computer-readable medium" are used to generally refer to the hard disk associated with a hard disk drive, a removable magnetic disk, a removable optical disk (e.g., CD ROMs, DVD ROMs, etc.), zip disks, tapes, magnetic storage devices, optical storage devices, MEMS-based storage devices, nanotechnology-based storage devices, as well as other media such as flash memory cards, digital video discs, RAM devices, ROM devices, and the like. Such computer-readable storage media may store program modules that include computer program logic to implement, for example, embodiments, systems, components, subcomponents, devices, methods, flowcharts, steps, and/or the like described herein (as noted above), and/or further embodiments described herein. Embodiments are directed to computer program products comprising such logic (e.g., in the form of program code, instructions, or software) stored on any computer useable medium. Such program code, when executed in one or more processors, causes a device to operate as described herein.

Note that such computer-readable storage media are distinguished from and non-overlapping with communication media (do not include communication media). Embodiments are also directed to such communication media.

The disclosed technologies can be put into practice using software, firmware, and/or hardware implementations other than those described herein. Any software, firmware, and hardware implementations suitable for performing the functions described herein can be used.

Claim 1:
An accelerometer (<NUM>) comprising:
a microelectromechanical systems, MEMS, device (<NUM>) that includes a capacitive structure (<NUM>) having a capacitance that is configured to change in response to acceleration of an object; and
an application-specific integrated circuit, ASIC, (<NUM>) configured to determine acceleration of the object based at least in part on changes in the capacitance of the capacitive structure (<NUM>), the ASIC (<NUM>) comprising:
analog circuitry (<NUM>) configured to measure the changes in the capacitance of the capacitive structure (<NUM>), the analog circuitry (<NUM>) further configured to generate analog signals (<NUM>) that represent the changes in the capacitance;
an analog-to-digital converter, ADC, (<NUM>) configured to convert the analog signals (<NUM>) to digital signals (<NUM>); and
RMS firmware (<NUM>) configured to perform a root-mean-square, RMS, calculation on a representation of the digital signals (<NUM>) to provide an RMS value (<NUM>) that represents an amount of the acceleration of the object,
characterised in that the ASIC (<NUM>) further comprises:
a digital filter (<NUM>) configured to filter the digital signals (<NUM>) to provide filtered digital signals (<NUM>);
wherein the RMS firmware (<NUM>) is configured to perform the RMS calculation on the filtered digital signals (<NUM>) to provide the RMS value that represents the amount of the acceleration of the object;
wherein the digital filter (<NUM>) includes a plurality of signal processing filters;
wherein each of the plurality of signal processing filters has a set of user-programmable coefficients that are capable of having a plurality of sets of values, at least a first set of values causing the respective signal processing filter to be configured as a first filter, at least a second set of values causing the respective signal processing filter to be configured as a second filter, and
wherein the first and second filters are any of a Butterworth filter, a Bessel filter and a Chebyshev filter.