AVOIDING CLIPPING IN AUDIO POWER DELIVERY BY PREDICTING AVAILABLE POWER SUPPLY ENERGY

20200382078 ยท 2020-12-03

    Inventors

    Cpc classification

    International classification

    Abstract

    A power output circuit supplies an audio power output signal that is adjusted to prevent clipping when needed based on an estimate of available energy from the power supply supplying the power output circuit. The power output circuit may be an audio power output circuit that generates an audio power output signal from samples of an audio program that are stored in a buffer. A processing block determines an energy requirement for producing the audio power output signal from the audio program and adjusts an amplitude of the audio power output signal in conformity with the determined energy requirement and an available energy determined for the power supply so that the audio power output signal is reproduced without clipping of the audio power output signal.

    Claims

    1. A method of preventing clipping in a power output circuit that provides a power output signal, the method comprising: determining energy available from a power supply that supplies the power output circuit by determining a stored energy in an output storage capacitance of the power supply, determining an input energy available to an input of the power supply, and combining the input energy available to the input of the power supply circuit and the stored energy in the output storage capacitance to determine an energy available to the power output circuit; calculating an energy requirement for producing the power output signal; and adjusting an amplitude of the power output signal in conformity with the determined energy available to the power output circuit so that the power output signal is reproduced without clipping of the power output signal.

    2. The method of claim 1, wherein the power output circuit is an audio power output circuit for supplying an audio power output signal to an electro-acoustic output transducer.

    3. (canceled)

    4. The method of claim 1, further comprising buffering samples of an input signal that is reproduced by the power output circuit to provide the power output signal, and wherein the calculating an energy requirement computes the energy requirement based upon the samples of the input signal in the buffer.

    5. The method of claim 1, further comprising comparing the energy requirement to the energy available to the power output circuit to determine a gain or attenuation value to apply to the power output signal.

    6. The method of claim 1, further comprising estimating a capacitance value of the output storage capacitance, and wherein the determining the stored energy in the output storage capacitance of the power supply determines the stored energy using the estimated capacitance value.

    7. The method of claim 6, wherein the estimating a capacitance of the output storage capacitance computes the capacitance from conservation of a power supplied from the output storage capacitance, a power supplied to the input of the power supply and a power supplied to the power output circuit.

    8. The method of claim 7, further comprising measuring a voltage across the output storage capacitance, wherein the power supplied from the output storage capacitance is determined from the estimated capacitance value and changes in the measured voltage.

    9. The method of claim 8, wherein the power supplied to the input of the power supply is computed from a current limit value of the power supply and from a voltage across the input of the power supply while the input of the power supply is in a current-limited condition, and wherein the estimating a capacitance of the output storage capacitance computes the capacitance only while the power supply is in a current-limited condition.

    10. The method of claim 7, further comprising: determining an error in the estimated capacitance value by subtracting the power supplied to the input of the power supply and the power supplied from the capacitor, according to the estimated capacitance value, from power values representing power delivered to the power output circuit; accumulating a result of the subtracting to produce an energy error value; and updating the estimated capacitance value in conformity with the energy error value.

    11. The method of claim 10, wherein the determining an error and the updating are performed so that variation in the capacitance of the output storage capacitor is modeled over time and compensated for in the determining of the energy available from the power supply.

    12. A system that provides a power output signal to an output transducer based on a program, the system comprising: a power supply; a buffer for storing samples of the program; a power output circuit that generates the power output signal from the samples of the program; and a processing subsystem that determines an energy requirement for producing the power output signal from the program and adjusts an amplitude of the power output signal in conformity with the determined energy requirement and an available energy determined for the power supply so that the power output signal is reproduced without clipping of the power output signal, wherein the processing subsystem determines the available energy by determining a stored energy in an output storage capacitance of the power supply, determining an input energy available to an input of the power supply, and combining the input energy available to the input of the power supply circuit and the stored energy in the output storage capacitance to determine an energy available to the power output circuit, and wherein the processing subsystem adjusts the amplitude of the power output signal in conformity with the determined available energy.

    13. The system of claim 12, wherein the power output circuit is an audio power output circuit for supplying an audio power output signal to an electro-acoustic output transducer, and wherein the program is an audio program.

    14. (canceled)

    15. The system of claim 12, wherein the processing subsystem calculates an energy requirement based upon the samples of the input signal stored in the buffer.

    16. The system of claim 15, wherein the processing subsystem compares the energy requirement to the energy available to the power output circuit to determine a gain or attenuation value to apply to the power output signal.

    17. The system of claim 12, wherein the processing subsystem estimates a capacitance value of the output storage capacitance and determines the stored energy in the output storage capacitance using the estimated capacitance value.

    18. The system of claim 17, wherein the processing subsystem computes the capacitance value from conservation of a power supplied from the output storage capacitance, a power supplied to the input of the power supply, and a power supplied to the power output circuit.

    19. The system of claim 18, further comprising a voltage measuring circuit for measuring a voltage across the output storage capacitance, wherein the power supplied from the output storage capacitance is determined from the computed capacitance value and changes in the measured voltage.

    20. The system of claim 19, wherein processing subsystem computes the power supplied to the input of the power supply from a current limit value of the power supply and from a voltage across the input of the power supply while the input of the power supply is in a current-limited condition, and wherein the processing circuit computes the capacitance value only while the power supply is in a current-limited condition.

    21. The system of claim 18, wherein the processing subsystem further determines an error in the estimated capacitance value by subtracting the power supplied to the input of the power supply and the power supplied from the capacitor, according to the estimated capacitance, from power values representing power delivered to the power output circuit, wherein the processing subsystem accumulates a result of the subtracting to produce an energy error value, and updates the estimated capacitance value in conformity with the energy error value.

    22. The system of claim 21, wherein the processing subsystem updates the estimated capacitance value so that variation in the capacitance of the output storage capacitance is modeled over time and compensated for when determining the energy available from the power supply.

    23. A system that provides an audio power output signal to an audio output transducer based on an audio program, the system comprising: a power supply; a buffer for storing samples of the audio program; an audio power output circuit that generates the audio power output signal from the samples of the audio program; and a processing subsystem that determines an energy requirement for producing the audio power output signal from the audio program and adjusts an amplitude of the audio power output signal in conformity with the determined energy requirement and an available energy determined for the power supply so that the audio power output signal is reproduced without clipping of the audio power output signal, wherein the processing subsystem determines the available energy by determining a stored energy in an output storage capacitance of the power supply, determining an input energy available to an input of the power supply, and combining the input energy available to the input of the power supply circuit and the stored energy in the output storage capacitance to determine an energy available to the power output circuit, and wherein the processing subsystem adjusts the amplitude of the power output signal in conformity with the determined available energy.

    24. (canceled)

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0009] FIG. 1 is a block diagram of a system in which techniques according to an embodiment of the present disclosure are practiced.

    [0010] FIG. 2 is a block diagram illustrating processing within signal processing block 20 of FIG. 1.

    [0011] FIG. 3 is a block diagram illustrating processing within capacitance estimator 30 of FIG. 1.

    [0012] FIG. 4 is a block diagram of a system in which techniques according to an embodiment of the present disclosure are practiced.

    [0013] FIG. 5 is a graph depicting operation of the systems illustrated herein.

    DESCRIPTION OF ILLUSTRATIVE EMBODIMENT

    [0014] The present disclosure encompasses methods, systems and circuits that control the generation of an audio power output signal according to energy measurements associated with a power supply in order to prevent clipping or other distortion of the audio power output signal waveform. The techniques use measurements of the power supply output voltage, the power supply input voltage (e.g., battery terminal voltage), a current limit value provided by the power supply and the value of the power supply output capacitance to calculate the available energy as the sum of the stored energy in the power supply output capacitance and the energy transfer available through the power supply. The available energy is compared to a calculated energy needed to deliver the output voltage waveform to the connected audio output transducer(s) based on samples of an audio program input stored in a buffer that delays the audio input program. If the available energy is insufficient to meet the output voltage waveform requirement for the samples in the buffer, the amplitude of the audio input program is reduced to generate an output voltage waveform that will not cause a demand exceeding the available energy, preventing clipping of the output voltage waveform. The value of the power supply output capacitance may be updated via a computation based on conservation of power between the power supply input, the power supplied to generate the audio power output signal, and power due to removal of energy from the output capacitance. The techniques described herein may be applied to other power output circuits, such as those that drive electromechanical devices such as haptic feedback devices.

    [0015] FIG. 1 shows a block diagram of an example amplifier system and circuit 10 in which techniques according to an embodiment of the disclosure are practiced. A power converter 14 delivers operating voltage V.sub.SUPPLY to an amplifier 16, which generates an output voltage waveform 18, which is ultimately delivered to an audio output transducer, such as a micro speaker or loudspeaker SPKR. Alternatively, the audio output transducer may be a haptic feedback device such as a linear resonant actuator (LRA) or eccentric rotating mass (ERM). Across the output of power converter 14 is an output capacitance C.sub.O, which represents the total parallel output capacitance at the output of power converter 14 including the effective output capacitance of any switching circuits in power converter 14 and any externally connected filter capacitance, etc. The input of power converter 14 is shown connected to a battery 12, but the techniques herein may be applied to any source of power suitable for providing input voltage/current to power converter 14. A series resistance R.sub.S represents the series internal resistance of battery 12 and associated external circuit resistance, which causes reduction in a battery terminal voltage V.sub.BATT and thus the energy/power delivered from battery 12 to power supply 14. In the illustrated system, if the terminal voltage V.sub.BATT of battery 12 is reduced with an active current limit provided by power converter 14, the current that may be drawn by the battery-powered circuits including power converter 14 is reduced, which could cause an eventual reduction in the output voltage V.sub.SUPPLY of power converter 14, which is the voltage across output capacitance C.sub.O. The above-described condition can occur when the output power delivered by amplifier 16 is greater than the input power supplied to power converter 14. If voltage V.sub.SUPPLY falls below the power supply voltage needed to reproduce the output voltage waveform at speaker SPKR, which is generally the amplitude of output voltage waveform 18 plus a voltage drop due to the output resistance of transistors generating the output of amplifier 16, then output voltage waveform 18 will be clipped at the maximum amplitude until the input signal falls in amplitude so that output voltage waveform 18 may again be generated at full peak voltage.

    [0016] In order to prevent clipping of the output voltage waveform, a signal processor 20 provides a processing subsystem that controls the amplitude of a signal V.sub.OUT that is provided to the input of amplifier 16, so that when signal processor 20 determines that the energy demanded by full reproduction of input signal V.sub.IN is greater than a measure of available energy, signal processor 20 reduces the amplitude of signal V.sub.OUT, so that clipping of output voltage waveform 18 does not occur. Details of signal processor 20 are omitted for clarity, but will be described in further detail below with reference to the other Figures. The reduction reduces a gain or increases an attenuation applied to input signal V.sub.IN, i.e., signal processor compresses the amplitude of signal V.sub.OUT uniformly with respect to both polarities of signal V.sub.OUT, so that clipping and asymmetric distortion is prevented. Signal processor 20 receives values of battery terminal voltage V.sub.BATT from power converter 14. It is understood that the above-described techniques may also prevent non-linear distortion from amplifier 16 that may occur rather than clipping when output voltage V.sub.SUPPLY of power supply 16 approaches the voltage that output voltage waveform 18 would assume without gain reduction by signal processor 20 by including an offset in the energy demanded to accommodate any additional voltage needed at the power supply input to amplifier 16. Signal processor 20 requires a value of output capacitance C.sub.O, in order to determine the portion of available energy stored in output capacitance C.sub.O, which may be a predetermined value, but in some embodiments of the disclosure includes a capacitance estimator 30 that determines a value of output capacitance C.sub.O from measurements within the circuit of FIG. 1 and which will be described in further detail below with reference to FIG. 3. Capacitance estimator 30 also receives the input signals provided to signal processor 20, which will be disclosed in further detail below and have been omitted from FIG. 1 for clarity.

    [0017] While the following description is provided with reference to a block diagram, it is understood that the description and the calculations included therein are applicable to a process that may be implemented by a digital signal processor executing a computer program product according to an embodiment of the disclosure as described in further detail below. Further, the disclosed embodiment is a discrete-time embodiment that calculates energy values and power values as sequences based on sequential values of voltage measurements and input samples. Continuous as used herein includes discrete-time sampled processes that update values periodically as a sequence of values, generally at a predetermined sample rate.

    [0018] FIG. 2 is a block diagram depicting a process of gain control as applied to signal V.sub.OUT by signal processor 20 in the circuit of FIG. 1. Power converter 14 receives power supply input current I.sub.amp and generates a power converter output voltage V.sub.SUPPLY, which is provided to amplifier 16. A calculation of available energy E.sub.AVAIL is performed by summing operation 23, which adds a calculated value of the stored energy E.sub.STORE determined by E.sub.STORE calculation block 22A with a calculated value of the maximum energy input that is available to power converter E.sub.IN calculated by E.sub.IN calculation block 22B. A demanded energy E.sub.OUT that would be required to generate the output voltage waveform 18, at full-scale, over samples x[n] of audio input V.sub.IN that are stored in a buffer 25, is calculated by E.sub.OUT calculation block 22C, and an energy ratio G.sub.energy is computed by dividing available energy E.sub.AVAIL by energy demand E.sub.OUT. Since the energy of output voltage waveform 18 over time is proportional to the square of the voltage of output voltage waveform 18, a square root computation 26 is performed on energy ratio G.sub.energy to obtain a voltage ratio G.sub.voltage, which is a ratio of the desired amplitude of output voltage waveform 18 to avoid clipping to the full-scale amplitude of output voltage waveform based on audio input V.sub.IN. To avoid expanding output voltage waveform 18 beyond unity gain, a ceiling computation 27 is performed to take the minimum of voltage ratio G.sub.voltage and unity: MIN(1, G.sub.VOLTAGE), so that an output gain is never greater than unity. A gain control block is provided by multiplier 28 which scales the samples x[n] of audio input V.sub.IN by output gain of ceiling computation 27 in order to reduce the amplitude of output voltage waveform 18 when available energy E.sub.AVAIL is less than energy demand E.sub.OUT.

    [0019] The energy calculations performed by energy calculation blocks 22A-22C are based on measurements and provided values. E.sub.STORE is not the total energy stored in output capacitance C.sub.O, but is the difference between the total energy stored in output capacitance C.sub.O, and the energy stored in output capacitance C.sub.O when the value of power converter output voltage V.sub.SUPPLY is equal to that required to produce the instantaneous value of output voltage waveform 18 without clipping. Therefore, E.sub.STORE calculation block 22A computes the stored energy as:


    E.sub.STORE=C.sub.O(V.sub.SUPPLY.sup.2V.sub.OUT.sup.2),

    E.sub.IN calculation block 22B computes the maximum available input energy that can be drawn by power converter 24 from the input power source from a predefined current limit value Limn and the actual terminal voltage V.sub.BATT of the battery or other source supplying energy to power converter 24. E.sub.OUT calculation block 22C calculates demanded energy E.sub.OUT from samples x[n] of audio input V.sub.IN by integrating the power corresponding to the individual samples on a continuous basis, i.e.,


    E.sub.OUT=k.sub.n.sup.n-1-Nx.sup.2[n]/R.sub.O,

    where R.sub.O is the load impedance of the load connected to the output of amplifier 16 and k is any gain or attenuation factor between samples x[n] and amplifier output waveform 18. Given the above values computed by energy calculation blocks 22A-22C, the ratio of available energy E.sub.AVAIL to demanded output energy E.sub.OUT is computed and the gain/attenuation factor gain set as described above.

    [0020] FIG. 3 shows details of computations within capacitance estimator 30 within example amplifier system and circuit 10 of FIG. 1. The value of output capacitance C.sub.O is estimated using power calculations according to the conservation of power within example amplifier system and circuit 10 of FIG. 1, during periods when the conservation of power is accurate, which in the disclosed embodiment is during periods when power converter 14 is current-limited as will be described below. During and across the above-described periods, the value of the estimated output capacitance C.sub.O is updated continuously, so that variations in the estimated output capacitance C.sub.O are tracked over time and temperature. The power P.sub.CAP provided from output capacitance C.sub.O is calculated by P.sub.CAP calculation block 32A and the power P.sub.IN[n] provided to power converter 24 is calculated by P.sub.IN calculation block 32B, and which is given by:


    P.sub.IN[n]=V.sub.BATT[n]I.sub.LIMIT[n].

    The output power P.sub.OUT[n] provided by amplifier 16 is computed by P.sub.OUT calculation block 32C, which can be computed as:


    P.sub.OUT[n]=V.sub.OUT.sup.2/R.sub.L,

    where R.sub.L is the load impedance at the output of amplifier 16, and


    P.sub.OUT[n]=V.sub.OUT.sup.2/R.sub.L=(gain x[n]).sup.2/R.sub.L.

    A subtraction operation 33B calculates the power that is removed from output capacitance C.sub.O by subtracting power converter 14 input power P.sub.IN[n] from output power P.sub.OUT[n] and subtraction operation 33A computes a power error P.sub.ERROR due to error in the estimate of output capacitance C.sub.O, by subtracting the computed power P.sub.CAP provided from output capacitance C.sub.O. An accumulator 34 accumulates the computed power error P.sub.ERROR to generate an energy error E.sub.ERROR. Since, as described in more detail below, the power converter input power P.sub.IN[n] is determined from the power supply current limit value I.sub.LIMIT, accumulator 24 is enabled for update by a control signal calculate_enable, which ensures that capacitance estimator is only updated when the input of power converter 24 is current-limited. Energy error E.sub.ERROR is scaled by a scaling operation 35 and adder 36 scale the computed error by a factor (k+1). The error factor is multiplied by a nominal estimated starting capacitance value c_nominal by a multiplier 32, so that a corrected capacitance value C.sub.corrected is produced that can be used in further computations by E.sub.STORE calculation block 22A of FIG. 2.

    [0021] The power calculations performed by power calculation blocks 32A-32C are based on measurements and provided values. The actual output power sequence P.sub.OUT is computed by P.sub.OUT calculation block 32C from input samples x[n] and the load resistance at the output of amplifier 16, as described above. The input power sequence is computed as described above by multiplying the current limit value LIMIT by the terminal voltage V.sub.BATT of the battery or other input power source. The power provided by draining energy from output capacitance C.sub.O is computed as:

    [00001] P C .Math. A .Math. P [ n ] = V S .Math. U .Math. P .Math. P .Math. L .Math. Y [ n ] .Math. I C .Math. A .Math. P [ n ] = V S .Math. U .Math. P .Math. P .Math. L .Math. Y .Math. C O [ n ] .Math. d .Math. V S .Math. U .Math. P .Math. P .Math. L .Math. Y [ n ] d .Math. t ,

    which can be computed from finite differences between the sample values of power supply output voltage V.sub.SUPPLY and the instant estimate of output capacitance C.sub.O: C[n].

    [0022] Referring now to FIG. 4, a digital signal processing system is shown, which can be used to implement the techniques of the present disclosure. A digital signal processor (DSP) 42 (or a suitable general-purpose processor) executes program instructions stored in a non-volatile memory 44 and that form a computer-program product in accordance with the present disclosure. DSP 42 receives samples of the audio input signal V.sub.IN at an input INPUT from a program source, such as a CODEC. DSP 42 also receives samples of output voltage V.sub.SUPPLY of power converter 24 from an ADC 41B, which serves as a voltage measurement circuit, and the values of current limit Limn and battery terminal voltage V.sub.BATT of battery 12 from power converter 14. A digital-to-analog converter (DAC) 43 receives output values corresponding to the processed amplifier output signal V.sub.OUT, which represent audio input samples that have been processed according to the processes described with reference to FIG. 2 and FIG. 3, to prevent clipping or other distortion due to insufficient energy available from power converter 14 and output capacitance C.sub.O. DAC 43 provides output signal V.sub.OUT to an amplifier 46, which generates output voltage waveform 18. Alternatively, DSP 42 may provide samples to a pulse-width modulator (PWM) (class-D) type amplifier or generate PWM signals directly provided to switching circuits that are supplied with supply voltage V.sub.SUPPLY provided by power converter 14 and output capacitance C.sub.O.

    [0023] Referring to FIG. 5, a graph shows an example operation of the amplifier described above with reference to FIGS. 1-4. The available energy E.sub.AVAIL is shown occasionally dropping below the demanded energy E.sub.OUT and the value gain is lowered by the action of the above-described processing for these intervals so that clipping of the output voltage waveform 18 does not occur.

    [0024] As mentioned above portions or all of the disclosed process may be carried out by the execution of a collection of program instructions forming a computer program product stored on a non-volatile memory, but that also exist outside of the non-volatile memory in tangible forms of storage forming a computer-readable storage medium. The computer-readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. Specific examples of the computer-readable storage medium includes the following: a hard disk, semiconductor volatile and non-volatile memory devices, a portable compact disc read-only memory (CD-ROM) or a digital versatile disk (DVD), a memory stick, a floppy disk or other suitable storage device not specifically enumerated. A computer-readable storage medium, as used herein, is not to be construed as being transitory signals, such as transmission line or radio waves or electrical signals transmitted through a wire. It is understood that blocks of the block diagrams described above may be implemented by computer-readable program instructions. These computer readable program instructions may also be stored in other storage forms as mentioned above and may be downloaded into a non-volatile memory for execution therefrom. However, the collection of instructions stored on media other than system non-volatile memory described above also form a computer program product that is an article of manufacture including instructions which implement aspects of the functions/actions specified in the block diagram block or blocks.

    [0025] In summary, the instant disclosure discloses a power output circuit that supplies a power output signal that is adjusted to prevent clipping when needed based on an estimate of available energy from the power supply supplying the amplifier. The power output circuit generates the power output signal from samples of the program that are stored in a buffer. A processing block determines an energy requirement for producing the power output signal from the program and adjusts an amplitude of the power output signal in conformity with the determined energy requirement and an available energy determined for the power supply so that the power output signal is reproduced without clipping of the power output signal. The system provides a power output signal to an output transducer based on a program and includes a power supply, a buffer for storing samples of the program, a power output circuit that generates the power output signal from the samples of the program, and a processing subsystem that determines an energy requirement for producing the power output signal from the program and adjusts an amplitude of the power output signal in conformity with the determined energy requirement and an available energy determined for the power supply so that the power output signal is reproduced without clipping of the power output signal. The program may be an audio program and the power output signal an audio power output signal. Alternatively, the power output signal may be a signal for driving another electromechanical output transducer, such as a haptic feedback device.

    [0026] The processing subsystem may determine an energy available from the power supply circuit by determining a stored energy in an output storage capacitance of the power supply, determining an input energy available to an input of the power supply, and combining the input energy available to the input of the power supply circuit and the stored energy in the output storage capacitance to determine an energy available to the power output circuit. The processing subsystem adjusts the amplitude of the power output signal in conformity with the determined energy available to the power output circuit. The processing subsystem may calculate the energy requirement based upon the samples of the input signal stored in the buffer and compare the energy requirement to the energy available to the power output circuit to determine a gain or attenuation value to apply to the power output signal. The processing subsystem may also estimate a capacitance value of the output storage capacitance and determine the stored energy in the output storage capacitance using the estimated capacitance value. The processing subsystem may compute the capacitance value from conservation of a power supplied from the output storage capacitance, a power supplied to the input of the power supply, and a power supplied to the power output circuit. The system may further include a voltage measuring circuit for measuring a voltage across the output storage capacitance and determine the power supplied from the output storage capacitance from the computed capacitance value and changes in the measured voltage. The processing subsystem may compute the power supplied to the input of the power supply from a current limit value of the power supply and from a voltage across the input of the power supply while the input of the power supply is in a current-limited condition, and may compute the capacitance value only while the power supply is in a current-limited condition. The processing subsystem may further determine an error in the estimated capacitance value by subtracting the power supplied to the input of the power supply and the power supplied from the capacitor, according to the estimated capacitance, from power values representing power delivered to the power output circuit. The processing system may then accumulate a result of the subtracting to produce an energy error value, and update the estimated capacitance value in conformity with the energy error value. The processing subsystem may update the estimated capacitance value so that variation in the capacitance of the output storage capacitance is modeled over time and compensated for when determining the energy available from the power supply.

    [0027] While the disclosure has shown and described particular embodiments of the techniques disclosed herein, it will be understood by those skilled in the art that the foregoing and other changes in form, and details may be made therein without departing from the spirit and scope of the disclosure. For example, the techniques of the disclosed embodiments may be combined with other compression algorithms such as loudness contours to provide a combined reduction in volume when needed due to the power constraint or for signal enhancement.