Recovery from programming failure in non-volatile memory
US-9135113-B2 · Sep 15, 2015 · US
US12089964B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12089964-B2 |
| Application number | US-201917270971-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 23, 2019 |
| Priority date | Aug 24, 2018 |
| Publication date | Sep 17, 2024 |
| Grant date | Sep 17, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A microcontroller for recording and storing physiological data includes an analog-to-digital converter for converting analog physiological sensor signals to digital signals, a sample buffer for holding a temporal sequence of the digital signals, a central processing unit (CPU), and a non-volatile memory. The non-volatile memory includes (i) a code storage encoding machine-readable data compression instructions that, when executed by the CPU, control the CPU to (a) transform the temporal sequence of the digital signals to produce transformed physiological data characterized by a set of transformation coefficients and (b) compress the set of transformation coefficients to generate compressed physiological data, and (ii) a data storage configured to contain several different instances of the compressed physiological data respectively associated with several different instances of the temporal sequence of the digital signals.
Opening claim text (preview).
What is claimed is: 1. A microcontroller for recording and storing physiological data, comprising: an analog-to-digital converter (ADC) for converting analog physiological sensor signals to digital signals; a sample buffer for holding a temporal sequence of the digital signals; a central processing unit (CPU); and a non-volatile memory including: (i) a code storage encoding machine-readable data compression instructions that, when executed by the CPU, control the CPU to (a) transform the temporal sequence of the digital signals by applying a wavelet transformation to produce transformed physiological data characterized by a set of transformation coefficients, the set of transformation coefficients consisting of N transformation coefficients, the most significant subset being K largest transformation coefficients, N and K being positive integers, N/K>5, and (b) compress the set of transformation coefficients to generate compressed physiological data as a subset of the set of transformation coefficients, and (ii) a data storage configured to contain several different instances of the compressed physiological data respectively associated with several different instances of the temporal sequence of the digital signals. 2. The microcontroller of claim 1 , characterized by a current draw no greater than 10 milliamperes and a clock rate no greater than 32 megahertz, the non-volatile memory having capacity no greater than 1 megabyte, the CPU being configured to process word lengths of no more than 24 bits. 3. The microcontroller of claim 2 , the current draw being no greater than 0.1 milliamperes, the clock rate being no greater than 16 megahertz, the non-volatile memory having capacity no greater than 64 kilobytes, the CPU being configured to process word lengths of no more than 16 bits. 4. The microcontroller of claim 2 , the ADC having a bit depth in range from 10 to 16 bits. 5. The microcontroller of claim 1 , the wavelet transformation being a multi-level wavelet transformation, each level of the multi-level wavelet transformation producing a low-passed version and a band-passed version of an input signal to the level, the input signal to a first level including the temporal sequence of the digital signals, the input signal to each subsequent level being the low-passed version produced by the preceding level. 6. The microcontroller of claim 5 , the data compression instructions including Daubechies scaling and wavelet coefficients. 7. The microcontroller of claim 5 , the low-passed version being a wavelet approximation coefficients vector of the input signal, the band-passed version being a detail coefficients vector, the set of transformation coefficients being a concatenation of the approximation coefficients vector of a last level and the detail coefficients vector of each level, the compressed physiological data consisting of the approximation coefficients vector and the largest magnitude subset; the code storage further including machine-readable data encoding instructions that, when executed by the CPU, control the CPU to encode the compressed physiological data in the data storage as (a) all values of the approximation coefficients vector, and (b) value and address, in the detail coefficients vector, of each of the detail coefficients of the largest magnitude subset; the data encoding instructions being configured to encode (a) each entry of the approximation coefficients vector in a different respective word of the data storage, (b) each half of each address of at least a subset of the detail coefficients in a different respective word of the data storage also containing an entry of the approximation coefficients vector, and (c) each two values of the at least a subset of the detail coefficients together in a different respective word of the data storage; and the non-volatile memory having a word length of 16 bits, the ADC having a bit depth of 12 bits, each entry of the approximation coefficients vector having a word length of 12 bits, each entry of the detail coefficients vector having a word length of 8 bits, the temporal sequence of the digital signals containing no more than 2 8 digital signals. 8. A device for recording and storing physiological data, comprising: a sensor for sensing a physiological parameter of a user and generating an analog physiological sensor signal representative of the physiological parameter; and the microcontroller of claim 1 , further including, in the code storage, machine-readable sampling instructions that, when executed by the CPU, control the CPU to sample, via the ADC and at a sampling rate, the analog physiological sensor signals to generate the temporal sequence of digital signals. 9. The device of claim 8 , further comprising a frequency filter for filtering the analog physiological sensor signal prior to conversion by the ADC. 10. The device of claim 9 , the frequency filter being a low-pass filter with a cutoff frequency no greater than one hertz. 11. The device of claim 8 , the sensor being an electrodermal activity sensor. 12. The device of claim 8 , each of the sampling instructions and the data compression instructions being interrupt-based. 13. A method for recording and storing physiological data, comprising, within a microcontroller, performing steps of: sampling, over time and via an analog-to-digital converter, an analog physiological sensor signal received by the microcontroller to produce a temporal sequence of digital signals; transforming the temporal sequence of the digital signals by applying a wavelet transformation to produce transformed physiological data characterized by a set of transformation coefficients, the set of transformation coefficients consisting of N transformation coefficients, the most significant subset being K largest transformation coefficients, N and K being positive integers, N/K>5; compressing the set of transformation coefficients to generate compressed physiological data as a subset of the set of transformation coefficients; and encoding the compressed physiological data in a non-volatile memory onboard the microcontroller. 14. The method of claim 13 , the analog physiological sensor signal being aperiodic. 15. The method of claim 13 , comprising repeating the steps of sampling, transforming, compressing, and encoding to store, in the non-volatile memory, a plurality of successive instances of the compressed physiological data. 16. The method of claim 13 , the wavelet transformation being a multi-level wavelet transformation, the step of transforming comprising, for each level of the multi-level wavelet transformation, producing a low-passed version and a band-passed version of an input signal to the level, the input signal to a first level including the temporal sequence of the digital signals, the input signal to each subsequent level being the low-passed version produced by the preceding level; the low-passed version being an approximation coefficients vector of the input signal, the band-passed version being a detail coefficients vector, the set of transformation coefficients being a concatenation of the approximation coefficients vector of a last level and the detail coefficients vector of each level, the compressed physiological data consisting of the approximation coefficients vector and a largest-magnitude subset of the detail coefficients vector; the step of encoding comprising encoding the compressed physiological data as (i) all values of the approximation coefficients vector, and (ii) value and address, in the detail coefficients vector, of each of the detail coefficients of the largest-ma
Vector coding (for television signals, see H04N19/94) · CPC title
Measuring skin impedance · CPC title
using Wavelet transforms · CPC title
Details of analogue processing, e.g. isolation amplifier, gain or sensitivity adjustment, filtering, baseline or drift compensation (input circuits for detecting, measuring, or recording bioelectric or biomagnetic signals A61B5/30; specific diagnostic methods using bioelectric or biomagnetic signals A61B5/316) · CPC title
Wristwatch-type devices · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.