Patent Description:
Piezoelectric components are becoming more common in various electronic devices. As an example, a piezoelectric component can be used to generate haptic vibrations and/or a speakers in electronic devices such as mobile phone, tablets, PC, etc. Similarly, MEMS devices are increasingly being used as sensors, such as acceleration sensors, or actuators.

Piezoelectric components and MEMS devices are often seen by a driver, in first approximation, as a capacitive load. This often results in a low impedance. Values under <NUM> Ohm are for instance common, especially for high frequency signal content. This, in turn, requires a very large current compared to higher impedance loads.

Moreover, in particular in mobile devices, capacitive loads are typically powered by the system battery, whose voltage for a <NUM> cell generally ranges from 3V to 5V. Common peak voltages when driving a capacitive load - such as for instance a PZT thin film or a MEMS micro speaker - can be higher than 20V.

Therefore, a boost converter is required to raise the battery voltage up to the needed driving level. The current drawn from the battery can then be several times larger than the instantaneous current flowing into the capacitive load.

Thus, a proper control of voltage and/or current should be implemented to avoid triggering protections and/or reaching saturation of one or more components. In particular, various kind of protection circuits can be implemented in the driver, the boost converter, or in the battery itself, to limit voltage and current. Intervention of such protection circuits can generate artefacts in the signal driving the load, or even cause one or more parts of the circuitry to shut down for prevention. Similar situation arise when one or more component along the driving chain saturates.

<FIG> schematically illustrates a circuit 1000A for driving a capacitive load L comprising an amplifier <NUM> and a low pass filter 1200A formed by a resistor <NUM> and the capacitive load L itself.

In this configuration, the current drawn from amplifier <NUM> can be limited at high frequencies, thanks to the low pass filter 1200A. This configuration is however not efficient since the amplifier <NUM> is set to output the maximum voltage and/or a significant portion of the output power is dissipated by the series resistor <NUM>.

Another known solution is illustrated in <FIG>, which schematically illustrates a circuit 1000B for driving a capacitive load L. Here the low pass filter 1200B is positioned before the amplifier <NUM>, in order to avoid the high power dissipation in the series transistor <NUM>.

Also in this case, however, the low-pass filter 1200B must be designed for the worst-case scenario. This includes the maximum load capacitance, the maximum input signal amplitude and the maximum frequency. On a battery-operated device, this further includes the lowest battery level. It is evident that such worst-case scenario is not a frequent situation so that, for most of the operating time, the filter 1200B results in an excessive filtering. For instance, in the case of a piezoelectric component used for generating sound, as the capacitive load L, this implementation lowers the available sound to pressure level of the transducer under conditions where this would not normally be needed.

<FIG> illustrates a yet another alternative driving circuit 1000C comprising an adaptive filter <NUM> and a model <NUM> of the load. The adaptive filter <NUM> can control voltage and/or current between the input signal and the amplifier <NUM> based on the model <NUM> of the load L. This can overcome the worst-case filter design limitation, discussed for <FIG>, by updating the model in accordance with the specific characteristics of the load, for instance during an initial characterization phase.

This implementation is nevertheless also not ideal, since the load model <NUM> is fixed and does not track the load variations. This forces the load model to be based on a worst-case assumption. Moreover, for battery-operated devices, there is no information about the system battery level, so that design assumptions concerning the available current and/or voltage from the battery also have to be made for the worst-case conditions.

There is therefore a need to provide a driving circuit and/or method which allows an efficient driving of a capacitive load, particularly for implementations in battery-operated devices.

Driving circuits according to the prior art are known, for instance, from <CIT>.

In general, the invention relies on an adaptive filter, whose characteristics are dynamically adjusted. The adjustment can be in particular based on dynamically adjusted characteristics of the load and of the battery. Thanks to the dynamic adjustment of the filter it is possible to maximize the driving signals to the load without introducing artefacts or triggering over current protection mechanisms. In particular, the invention is defined by independent claim <NUM>.

An embodiment useful for understanding the invention can relate to a circuit for driving a capacitive load comprising: an amplifier for driving the load based on an input signal, the amplifier comprising at least a boost converter, a dynamic model configured to track a capacitance of the load and a voltage of the source for powering at least parts of the circuit, an adaptive filter, configured to filter the input signal based on an output of the dynamic model.

Thanks to this configuration it is advantageously possible to drive the capacitive load by taking into account variations in the capacitance value of the load as well as in the voltage of the power source. This allows the adaptive filter to be operated under conditions representative of the actual driving configuration instead of worst-case scenario configurations, which might otherwise needlessly limit the driving capability.

In some embodiments, the dynamic model can comprise a load current model configured to output a calculated amplifier current, the calculated amplifier current being a current expected to be outputted by the amplifier as a function of at least the input signal and of the tracked capacitance of the load, and/or a boost current model configured to output a calculated boost current, the calculated boost current being a current expected to be outputted by an inductor of the boost converter as a function of at least the input signal and the voltage of the source.

Thanks to this configuration it is advantageously possible to model those values based on easily available input signals. The modelled values can allow the dynamic model to drive the adaptive filter as function of the input signals as well as of the load and power supply conditions.

In some embodiments, the load current model can be configured to receive as input VL a value representative of the voltage across the load, receive as input IL a value representative of the current across the load, receive as input VIN a value representative of the input signal, and output the calculated amplifier current IOUT_PRED as IOUT_PRED = f (VIN * YL) where YL is the admittance of the load and where f is a bijective function.

Thanks to this configuration it is advantageously possible to compute the calculated amplifier current IOUT_PRED in a simple and reliable manner.

In some embodiments, the load current model can comprise a load capacitance model configured to output a calculated capacitance value of the load calculated from VL and IL, an amplifier model configured to output an expected output voltage of the amplifier calculated from VIN, a current calculator configured to calculate the calculated amplifier current based on the calculated capacitance value of the load and on the expected output voltage as IOUT_PRED = f (VOUT_PRED * YL) where f is a bijective function.

In some embodiments, the load capacitance model can comprise a least mean square filter.

Thanks to this configuration it is advantageously possible to simply and reliably compute the load capacitance based on voltage and current measurements of the signals across the load capacitance.

In some embodiments, the load current model can comprise a model of a voltage to current transfer function of the load.

Thanks to this configuration it is advantageously possible to simply and reliably compute the value of IOUT_PRED by inserting the value of VOUT_PRED into the transfer function, having CL as variable.

In some embodiments, the boost current model can be configured to receive as input VBAT a value representative of the voltage across the source, receive as input <IMG> a value representative of an efficiency of the boost converter, receive as input IOUT_PRED a value representative of the calculated amplifier current, receive as input VIN a value representative of the input signal, output the calculated boost current IBST_PRED as IBST_PRED = f [VOUT * IOUT_PRED / (<IMG> * VBAT)] where f is a bijective function.

Thanks to this configuration it is advantageously possible to compute the calculated boost current IBST_PRED in a simple and reliable manner.

In some embodiments, the boost current model can comprise an amplifier model configured to output an expected output voltage of the amplifier calculated from VIN, a current calculator configured to calculate the calculated boost current based on the expected output voltage.

Thanks to this configuration it is advantageously possible to compute the calculated boost current in a simple and reliable manner.

In some embodiments, the dynamic model can further comprise a coefficient computing logic configured to receive as input the calculated amplifier current and/or the calculated boost current, output at least one coefficient for controlling the adaptive filter based on values of at least one of the calculated amplifier current and the calculated boost current.

Thanks to this configuration it is advantageously possible to control the adaptive filter based on the calculated currents, which are a function of the actual driving conditions and not as a function of worst-case considerations.

In some embodiments, the adaptive filter can comprises a variable low-pass filter having as controlling input at least a roll-off coefficient, and the computing logic can be configured to compute the roll-off coefficient as a function of the calculated boost current and/or of the calculated output current.

Thanks to this configuration it is advantageously possible to control the roll-off coefficient of the adaptive filter based on the calculated currents, representing the actual driving conditions.

In some embodiments, the coefficient computing logic can comprise a first peak detector configured to receive as input the calculated amplifier current and determine a maximum calculated amplifier current as a maximum value of the calculated amplifier current, and/or the coefficient computing logic can comprise a second peak detector configured to receive as input the calculated boost current and determine a maximum calculated boost current as a maximum value of the calculated boost current, wherein the coefficient computing logic can comprise a comparator configured to compare the maximum calculated amplifier current with a predetermined maximum amplifier current, and/or compare the maximum calculated boost current with a predetermined maximum boost current, output at least one coefficient based on a result of the comparison.

Thanks to this configuration it is advantageously possible to control the values of the coefficients based on the maximum values reached by the currents, so that the adaptive filter can be controlled based on those maximum values, as those are the values which can cause the most artefacts.

In some embodiments, the adaptive filter can comprise a multiplier having as controlling input at least a multiplier coefficient, and the computing logic can be configured to compute the multiplier coefficient as a function of the calculated boost current and/or of the calculated output current.

Thanks to this configuration it is advantageously possible to provide more flexibility in how the adaptive filter operates on the input signal.

In some embodiments, the coefficient computing logic can comprise at least one smoothing filter configured to receive as input the at least one coefficient, and the dynamic model can be configured to output the at least one coefficient after application of the least one smoothing filter.

Thanks to this configuration it is advantageously possible to avoid fast variations of the filters which might cause artefacts in the amplification.

In some embodiments, the circuit can further comprise a delay element connected between the input signal and the adaptive filter.

Thanks to this configuration it is advantageously possible to allow sufficient time for the processing of the dynamic model.

In some embodiments, the circuit can further comprise a second adaptive filter connected between the input signal and the dynamic model, wherein the second adaptive filter can be configured to provide substantially the same filtering of the adaptive filter, wherein the second adaptive filter is configured to filter the input signal based on the output of the dynamic model.

Thanks to this configuration it is advantageously possible to provide an input to the dynamic model which is representative of the input provided to the amplifier.

In some embodiments, the adaptive filter can comprise a plurality of low-pass filters and high-pass filters for filtering the input signal along at least two branches, preferably three.

Thanks to this configuration it is advantageously possible to allow an easy control of the roll-off of the filter by use of coefficients applied to one or more of the branches.

In some embodiments, the capacitive load can be a speaker based on one or more a piezoelectric components or MEMS.

Thanks to this configuration it is advantageously possible to use the driving circuit for driving the speaker without introducing artefacts and without needlessly limiting the driving power applied to the speaker based on worst-case scenario considerations.

A further embodiment of the invention can relate to a device comprising a speaker and a circuit according to any previous embodiment for driving the speaker.

A further embodiment of the invention can relate to a computing unit comprising a processor and a memory, the memory comprising instructions which, when executed by the processor, cause the processor to operate as the circuit of any of the previous embodiments.

According to the techniques described herein, it is possible to drive a capacitive load in a highly efficient manner, avoiding the triggering of over-voltage or over-current protections which would otherwise introduce artefacts in the driving signal as well as limiting energy consumption.

<FIG> schematically illustrates a driving circuit <NUM> for a capacitive load L. In the context of the application, unless specified otherwise, the capacitive load can be any of a MEMS load, a piezoelectric component, a capacitor, or any other component which, when driven by a driving circuit, can be - as first approximation - modelled by one or more capacitors. Preferably, the capacitive load is a speaker, even more preferably a speaker implemented by a piezoelectric component.

As visible in <FIG>, the circuit <NUM> comprises an amplifier <NUM> for driving the load L based on an input signal VIN. In particular, the amplifier <NUM> comprises at least a boost converter so as to increase the voltage from a lower level VIN_FILT to a higher lever VL. In this manner it is possible to drive loads L which require higher driving voltages.

The circuit <NUM> further comprises a dynamic model <NUM> configured to track a capacitance CL of the load L and a voltage VBAT of the source, for instance a battery, for powering at least parts of the circuit <NUM>. In particular, the source is configured for powering at least the amplifier <NUM>. In preferred embodiments, the source can be configured for powering the entire circuit <NUM>.

While in this embodiment and throughout the remaining description reference is made to a battery, as energy source for driving the circuit <NUM>, it will be clear that similar considerations can apply to any other source, for instance any kind of voltage generator. The invention is particularly advantageous when applied to battery operated devices, as the voltage of the battery might change more than that of other sources, such as an AC powered voltage generator. However, the invention is not limited thereto.

The tracking of the voltage VBAT can be achieved in known manners, for instance through a voltage sensor. It is noted that, for operating, the invention does not need the voltage VBAT to correspond, in terms of Volts, to the tracked source voltage. It is sufficient that the voltage VBAT provides an indication of the tracked source voltage. That is, the voltage VBAT can result from any bi-univocal function applied to the tracked source voltage.

The tracking of the capacitance CL can be also performed in known manners, for instance by measuring voltage VL and current IL and then computing capacitance CL therefrom.

Additionally the circuit <NUM> further comprises an adaptive filter <NUM>, configured to filter the input signal VIN based on an output of the dynamic model <NUM>. Preferably, the adaptive filter <NUM> can implement at least a low-pass filter having a predetermined cut-off frequency and roll-off value.

In general, in some embodiments, the dynamic model <NUM> can provide an output to the adaptive filter <NUM> which causes the adaptive filter <NUM> to increase filtering when the voltage VBAT is reduced. Alternatively, or in addition, the dynamic model <NUM> can provide an output to the adaptive filter <NUM> which causes the adaptive filter <NUM> to increase filtering when the capacitance CL is increased. Here, the increase of the filtering can be understood as to mean applying a lower cut-off frequency, and/or a higher roll-off value.

By tracking the capacitance of the load CL and the voltage of the source VBAT, the model <NUM> can advantageously consider both parameters and avoid being designed for worst-case conditions or one or both of those parameters. This, in turn, allows the increase of the filtering to be limited to the conditions in which this is actually needed, thus avoiding excessive filtering which can lower the performances of the circuit <NUM>.

It is thus evident that several possible embodiments can be implemented so as to achieve the behaviour described above for the adaptive filter <NUM> and its influence on the dynamic model <NUM>. In the following, some possible implementations will be described, the invention is however not limited thereto.

<FIG> illustrates a circuit <NUM> which differs from circuit <NUM> due to the additional presence of blocks <NUM>, <NUM> and <NUM> in the dynamic model <NUM>, which might provide one example of an implementation of the dynamic model <NUM>. Although the illustrated embodiments operates with both blocks <NUM> and <NUM>, it will be clear that, in some embodiments, only one of them might be implemented.

In particular, the dynamic model <NUM> comprises a load current model <NUM> configured to output a calculated amplifier current IOUT_PRED, the calculated amplifier current IOUT_PRED being a current expected to be outputted by the amplifier <NUM> as a function of at least the input signal VIN and of the tracked capacitance of the load CL.

Alternatively, or in addition, the dynamic model <NUM> comprises a boost current model <NUM> configured to output a calculated boost current IBST_PRED, the calculated boost current IBST_PRED being a current expected to be outputted by an inductor of the boost converter as a function of at least the input signal VIN and the voltage of the source VBAT.

To clarify the meaning of those currents, <FIG> schematically illustrates an amplifier <NUM>, comprising a boost converter <NUM> and a driver <NUM>, powered by the boost converter <NUM>. It will be clear to those skilled in the art that several alternative potential implementations are however possible.

The calculated amplifier current IOUT_PRED can be understood as being a computed version of the current IOUT to be outputted by the amplifier <NUM>, and in particular by the driver <NUM>, as a function of a number of input parameters, including the input signal VIN and the capacitance of the load CL. Similarly, the calculated boost current IBST_PRED can be understood as being a computed version of the current IBST expected to cross the inductor in the boost converter <NUM>, as a function of a number of input parameters, including the input signal VIN and the voltage of the source VBAT.

The use of the indicated input parameters, for the respective current, allows a computation of the current which is both simple and reliable enough for further processing. Moreover the computation of the calculated amplifier current IOUT_PRED, and/or of the calculated boost current IBST_PRED, advantageously allows to provide a dynamic model <NUM> which can be used to more finely control the adaptive filter <NUM> than with other parameters.

It will be clear that the specific relationship between the calculated values and the respective input parameters can be depending on the specific topology of the amplifier, so that the skilled person will know how to compute the indicated values once the topology of the amplifier is defined.

In some embodiments, the function relating the calculated amplifier current IOUT_PRED and the input signal VIN can be such that IOUT_PRED increases as VIN increases, and/or IOUT_PRED decreases as VIN decreases. Alternatively, or in addition, the function relating the calculated amplifier current IOUT_PRED and the capacitance CL can be such that IOUT_PRED increases as CL increases, and/or IOUT_PRED decreases as CL decreases.

Similarly, in some embodiments, the function relating the calculated boost current IBST_PRED and the input signal VIN can be such that IBST_PRED increases as VIN increases, and/or IBST_PRED decreases as VIN decreases. Alternatively, or in addition, the function relating the calculated boost current IBST_PRED and the source voltage VBAT can be such that IBST_PRED increases as VBAT decreases, and/or IBST_PRED decreases as VBAT increases.

<FIG> schematically illustrates a load current model <NUM>, which can be a possible implementation of the load current model <NUM>. The load current model <NUM> is configured to receive inputs VL and IL respectively representative of the voltage and current values across the load L or, as will be described more in details in the following, across a capacitance value of the load L.

Here, the term "a value representative of" is intended to indicate that the values inputted to the load current model <NUM> allow the load current model <NUM> to determine the respective value across the load. For instance, the input VL can be, simply, the voltage VL measured across the load. In other words, the term "a value representative of" can be interpreted, in its most direct implementation, as corresponding to the respective value.

However, the invention is not limited thereto and any value for VL received by the load current model <NUM>, which allows the load current model <NUM> to determine the voltage VL measured across the load, can be used instead. For instance, the value VL received by the load current model <NUM> can be the voltage VL measured across the load multiplied by a coefficient. Alternatively, or in addition, the value VL received by the load current model <NUM> can be a digital representation of the analog voltage VL measured across the load. Still alternatively, or in addition, the value VL received by the load current model <NUM> can be a current value which is a function of the voltage value VL measured across the load. Similar considerations apply to the input IL.

The load current model <NUM> is further configured to receive as input VIN a value representative of the input signal VIN. The same considerations above apply, for how input VIN to the load current model <NUM> can be a value representative of the input signal VIN.

The load current model <NUM> is then configured to output a calculated amplifier current IOUT_PRED as <MAT> where YL is the admittance of the load L, k is a multiplication factor, preferably corresponding to the multiplication of amplifier <NUM>, and where f is a bijective function. In some implementations, the function f can simply be the identity function, that is, f can be removed from the equation above.

It is therefore clear how the calculated amplifier current IOUT_PRED can be easily and reliably be calculated based on the input parameters. In particular, it will be clear to those skilled in the art how the admittance YL of the load L can be derived from the remaining input parameters, namely inputs VL and IL.

In some embodiments, the load L for the purpose of the computation of the admittance YL can be derived from the capacitance C of the load L alone. Alternatively, or in addition, the load L can be modelled to comprise the capacitance C, in series with one or more of an inductance L1, an inductance L2 and a resistor R1.

More specifically, as visible in <FIG>, the load L as seen by the amplifier <NUM> can be modelled by a series connection of, in order, one or more of L<NUM>, R<NUM>, CL and L<NUM>. Although all of L<NUM>, R<NUM>, CL and L<NUM> are illustrated in <FIG> it will be clear that the invention is not limited to this specific model, as the skilled person is aware of alternative manners for modelling the load L. In some embodiments, the inputs VL and IL can be understood to relate to measurements taken across the capacitance CL and thus be used to derive the value of this capacitance in a known manner. The remaining parameters of the model, for instance L<NUM>, R<NUM> and L<NUM>, can be set to predetermined values, based on the known configuration of the load L.

<FIG> schematically illustrates further details on how the load current model <NUM> can be implemented, in some embodiments. In particular, in the illustrated implementation, the load current model <NUM> can comprise a load capacitance model <NUM> configured to output a calculated capacitance value CL_PRED of the load L calculated from VL and IL. As discussed above, the computation of a capacitance value from the voltage and currents measures across the capacitance is known to the skilled person.

The load current model <NUM> can further comprise an amplifier model <NUM> configured to output an expected output voltage VOUT_PRED of the amplifier calculated from VIN. That is, the amplifier model <NUM> can model the operation of the amplifier <NUM>. In this manner it is possible to compute the output VOUT_PRED that the amplifier <NUM> presents, when provided with an input VIN. The amplifier model <NUM> can be a simple gain stage or a more complex transfer function. In some embodiments, the amplifier model <NUM> could depend on the signal frequency. In its simplest form, VOUT_PRED can be obtained by VIN by multiplying VOUT_PRED by a multiplication factor applied by the amplifier <NUM>. The load current model <NUM> can further comprise a current calculator <NUM> configured to calculate the calculated amplifier current IOUT_PRED based on the calculated capacitance value CL_PRED of the load L and on the expected output voltage VOUT_PRED as <MAT> where f is a bijective function. In some implementations, the function f can simply be the identity function, that is, f can be removed from the equation above.

Also in this case, the previous considerations made on YL apply. That is, the load L might be modelled by a circuit comprising more than the capacitance CL computed by the load capacitance model <NUM>, and the computation of the resulting admittance YL, at the current calculator <NUM>, can take that into account, in known manners. In other words, the load current model <NUM> allows tracking of a variable component CL of the load. Any other components of the load L can be assigned to a predetermined value, based on the design of the load L.

As indicated above, the skilled person is aware of several manners for computing the value of CL based on the inputs VL and IL. In a possible specific implementation, the load capacitance model <NUM> can comprise a least mean square filter.

In particular, the load capacitance admittance can be defined as a function of CL, for instance as s* CL, and it can be represented in a discrete way as <MAT> in a known manner.

The least mean square filter algorithm can be used to calculate the coefficients a and b, in a known manner, and thus the value of CL.

Moreover, in some embodiments, the load current model <NUM> can comprises a model of a voltage to current transfer function of the load L, and/or of the capacitance value CL of the load L. In this manner, the value of IOUT_PRED can be simply computed by inserting the value of VOUT_PRED into the transfer function, having CL as variable.

Several manners have thus been described for the computation of a predicted value IOUT_PRED of the current IOUT, that is, of the current that would be outputted by the amplifier <NUM> as a function of a given load L, in particular of a given capacitance CL of the load L, and as function of a given input signal VIN.

This enables the dynamic model to compute what current IOUT_PRED would be outputted by the amplifier <NUM>, should this current be available. As will become clearer in the following, this current can be compared to threshold values so that if the IOUT_PRED cannot be achieved, the dynamic model can provide an indication to the adaptive filter <NUM>, in order to act on the signal VIN so as to bring the current IOUT to a value which can be sustained.

Moreover, as the computation of the current IOUT_PRED is a function of the status of the load L, in particular of the status of a variable capacitance component CL of the load L, the model can track, potentially and preferably in real time, the actual status of the load L instead of being pre-programmed to take into account the worst case scenario, in which the load L is drawing as much current as allowed by the design.

This is a significant advantage since, as it is known to those skilled in the art, semiconductor components can have characteristics with rather large ranges when evaluated under all possible conditions, such as process, age, temperature and driving conditions. However, the worst case scenario, namely the worst possible combination of those characteristics, is an event which is statistically very unlikely to happen, so that designing the model <NUM> on a static set of parameters leads to severe filtering by filter <NUM> which, in most cases, is not needed.

The description above provided details on how the calculated amplifier current IOUT_PRED can be computed. In the following, it will be described how the calculated boost current IBST_PRED can be computed. Considerations made above for the modelling of the load L continue to apply.

<FIG> schematically illustrates a boost current model <NUM>, which can be a possible implementation of the boost current model <NUM>. The boost current model <NUM> is configured to receive as inputs:.

output the calculated boost current IBST_PRED as <MAT> where VOUT can be computed from VIN in a known manner, for instance by the multiplication of VIN and the amplification factor of the amplifier <NUM>, and where f is a bijective function. In some implementations, the function f can simply be the identity function, that is, f can be removed from the equation above.

This allows the calculated boost current IBST_PRED to be easily and reliably computed. The value of the calculated boost current IBST_PRED provides an important indication on the current which is drawn from the power supply source, and, as will become clearer in the following, can be used to determine if this value is higher than what the power supply source can provide, which indicates that filtering is needed.

Moreover, by re-using the calculated amplifier current IOUT_PRED, the dynamic model <NUM> can make an efficient use of computational resources which have already been employed.

<FIG> schematically illustrates further details on how the boost current model <NUM> can be implemented, in some embodiments. In particular, in the illustrated implementation, the boost current model <NUM> can comprise an amplifier model <NUM> configured to output an expected output voltage VOUT_PRED of the amplifier calculated from VIN.

While the amplifier model <NUM> is shown in <FIG> as being in addition to the one shown in <FIG>, it will be clear to those skilled in the art that the same amplifier model <NUM> can be shared by the models <NUM> and <NUM>. For instance, a single amplifier model could be connected to VIN, so at to provide both blocks <NUM> and <NUM> with an expected output voltage VOUT_PRED. Alternatively, or in addition, the model <NUM> can output the value of VOUT_PRED to the model <NUM>, in addition to the value of IOUT_PRED.

The boost current model <NUM> can further comprise a current calculator <NUM> configured to compute the calculated boost current IBST_PRED based on the expected output voltage VOUT_PRED in a manner which will be clear to those skilled in the art.

In some embodiments, the current calculator <NUM> can implement a function which provides an increase in the calculated boost current IBST_PRED when the expected output voltage VOUT_PRED increases, and/or a decrease in the calculated boost current IBST_PRED when the expected output voltage VOUT_PRED decreases. Alternatively, or in addition, the current calculator <NUM> can implement a function which provides an increase in the calculated boost current IBST_PRED when the source voltage VBAT decreases, and/or a decrease in the calculated boost current IBST_PRED when the source voltage VBAT increases.

This provides an efficient manner for computing the calculated boost current IBST_PRED.

It has thus been described how the calculated boost current IBST_PRED and/or the calculated amplifier current IOUT_PRED can be computed. As noted above, those values do not need to identically numerically represent the respective currents. That is, it is sufficient that the values of the calculated boost current IBST_PRED and/or the calculated amplifier current IOUT_PRED are linked in a known manner, through the bijective function f, to the respective currents.

As an example, if the amplifier current is corresponding to 10mA, for a given set of inputs, the calculated amplifier current IOUT_PRED can be expressed, for instance if expressed as a voltage, as X Volts, as long as it is possible to associate the value 10mA to the value of X.

Based on the calculated boost current IBST_PRED and/or the calculated amplifier current IOUT_PRED, the dynamic model <NUM> can provide one or more output to the adaptive filter <NUM>, which influence the operation of the adaptive filter <NUM>.

In general, if the value of any of the calculated boost current IBST_PRED and/or the calculated amplifier current IOUT_PRED is over a respective predetermined threshold, the dynamic model <NUM> can provide one or more output to the adaptive filter <NUM>, which causes the adaptive filter <NUM> to increase filtering of the input signal VIN. More specific manners of operation implementing this general concept will be described more in details in the following.

As visible in <FIG> and <FIG>, the dynamic model <NUM> can further comprises a coefficient computing logic <NUM> configured to receive as input the calculated amplifier current IOUT_PRED and/or the calculated boost current IBST_PRED, and output at least one value for controlling the adaptive filter <NUM> based on values, preferably maximum values, of at least one of the calculated amplifier current IOUT_PRED and the calculated boost current IBST_PRED.

In particular, the adaptive filter <NUM> can comprise a low-pass filter <NUM>, whose roll-off coefficient can be controlled by the value of ROFF. For instance, as ROFF increases, the roll-off coefficient can increase and as ROFF decreases, the roll-off coefficient can decrease. Alternatively, or in addition, the adaptive filter <NUM> can comprise a multiplier whose multiplication coefficient can be controlled by the value of XMULT. For instance, as XMULT increases, the multiplication coefficient can increase and as XMULT decreases, the multiplication coefficient can decrease. In the following description, it is assumed that the adaptive filter <NUM> implements both the control on ROFF and on XMULT. It will however be clear that embodiments are possible in which only one of those controls is possible.

In general, any of XMULT and/or ROFF can be calculated based on any of IOUT_PRED and/or IBST_PRED. In some preferred embodiments, any of any of XMULT and/or ROFF can be calculated based on both of IOUT_PRED and/or IBST_PRED.

In particular, the coefficient computing logic <NUM> can be configured so that if at least one among IOUT_PRED and/or IBST_PRED is above a predetermined threshold, then at least one of XMULT is reduced and/or ROFF is increased. In other words, the coefficient computing logic <NUM> can be configured so that if at least one among the currents is above a predetermined threshold, then the filtering of filter <NUM> is increased, so that it can be ensured that the driving circuit can operate correctly, in particular without introducing artefacts due to saturation and/or limitation and/or protection circuits.

The thresholds for IOUT_PRED and/or IBST_PRED can thus be selected depending on the maximum respective current which can be sustained by the circuit and/or by the load and/or by the power supply. It will be clear to those skilled in the art how specific values of the threshold can be selected, depending on specific circuit configuration.

Thus, the coefficient computing logic <NUM> can be configured to act on at least one of XMULT and/or ROFF if at least one among IOUT_PRED and/or IBST_PRED is above a predetermined threshold, so as to change the operation of filter <NUM>. While both XMULT and/or ROFF have the effect of reducing the amplitude of output signal VIN_FILT compared to VIN, it will be clear to those skilled in the art that their effect is different. In particular, XMULT applies to all frequencies of the input signal while ROFF applies only to frequencies above a certain cut-off frequency.

In preferred embodiments, the combined use of both XMULT and ROFF can thus be particularly advantageous. For instance, if a signal which is causing one of the calculated currents to pass its respective threshold is at a frequency lower than the cut-off frequency, increasing ROFF will provide no effect. Similarly, if said signal is only slightly above the cut-off frequency, it would necessitate a strong increase of ROFF, while a more moderate decrease of XMULT might achieve the same result without limiting too much the other frequencies in the signal.

This can be achieved by advantageously configuring the computing logic <NUM> to act on both XMULT and ROFF if at least one among IOUT_PRED and/or IBST_PRED is above a predetermined threshold. In preferred embodiments, where action is taken on both coefficients, it can be further preferred to configuring the computing logic <NUM> so that, of the total filtering applied by filter <NUM>, more filtering is achieved by increasing ROFF than by reducing XMULT.

Alternatively, or in addition, the computing logic <NUM> can be configured to act ROFF at first and, if an increase of until a predetermined threshold does not suffice to bring the computed current, or the computed currents, below the respective threshold, then the computing logic <NUM> can further act XMULT, alone or in combination with ROFF.

Although throughout the description embodiments are described with reference to the roll-off value of the filter <NUM>, in further alternative embodiments similar results can be obtained by acting on the cut-off frequency of the filter <NUM>, instead of, or in addition to, the action on the roll-off value. Thus, in the description, when reference is made to the increase of ROFF, alternative embodiments can be implemented in which this can be replaced by, or added to, the decrease of the cut-off frequency. The same applies vice versa, for the decrease of ROFF.

While above the general operation of the computing logic <NUM> and of the filter <NUM> have been provided, further specific possible implementations will be described in the following. It will be clear to those skilled in the art that the invention is not limited to those specific implementations.

In particular, in some embodiments, the adaptive filter <NUM> can comprise the variable low-pass filter <NUM> having as controlling input at least the roll-off coefficient ROFF, and the computing logic <NUM> can be configured to compute the roll-off coefficient ROFF as a function of the calculated boost current IBST_PRED and/or of the calculated output current IOUT_PRED, preferably as previously described.

Moreover, in some embodiments, the adaptive filter <NUM> can comprise the multiplier <NUM> having as controlling input at least the multiplier coefficient XMULT, and the computing logic <NUM> can be configured to compute the multiplier coefficient XMULT as a function of the calculated boost current IBST_PRED and/or of the calculated output current IOUT_PRED, preferably as previously described.

In some preferred embodiments, a smoothing filter, not illustrated, can be applied to the coefficient XMULT and/or ROFF. Preferably, the smoothing filter can have an attack time slow enough to avoid artefacts in the driving signal of the load L. In particular, if the load L is a piezoelectric speaker, the smoothing filter can be configured to have an attack time slow enough to avoid audible artefacts in the audio signal outputted by the speaker. That is, thanks to the presence of the smoothing filter it is possible to avoid an abrupt variation of the respective coefficient, which could generate artefacts. Specific values for the attack time will thus be depending on the specific configuration of the circuit and/or of the load. As a reference value, in some preferred embodiments, the attack time is preferably in the range of <NUM>-<NUM>, even more preferably <NUM>-<NUM>.

In the embodiments implementing the filter with a smoothing filter having an attack time higher than zero, if a local maximum occurs in the current prediction, the attack time might not react fast enough to prevent the overcurrent condition, which might then lead to artefacts due to possible current limitations. In those embodiments, the filtering based on the multiplier <NUM> is thus particular advantageous, as it can react faster to the local overcurrent situation.

In preferred embodiments, the coefficient XMULT can advantageously correspond to a ratio of a current threshold for IOUT_PRED and/or IBST_PRED, and the value of IOUT_PRED and/or IBST_PRED which has been detected as being over the respective threshold. As an example, if IOUT_PRED is at <NUM>% of the respective threshold, the coefficient XMULT can advantageously correspond to <NUM>/<NUM>, so that the multiplication by multiplier <NUM> can bring the signal back to a level which does not result in an overcurrent situation.

In those embodiments operating based on both IOUT_PRED and IBST_PRED, if both current thresholds for IOUT_PRED and IBST_PRED are overcome by the respective currents, the coefficient XMULT can preferably correspond to the lower of the two ratios computed as described above.

In further preferred embodiments, the operation of the multiplier <NUM> can be advantageously limited to a time range corresponding to the attack time of the smoothing filter, so as to allow sufficient filtering also in this time region. Alternatively, the multiplier <NUM> can be configured to provide a higher filtering in time range corresponding to the attack time of the filter than in the subsequent time range.

In the description above it has thus been exemplified how the filter <NUM> can provide various kinds of filtering based on the feedback received by the dynamic model <NUM>. In general, the operation of the dynamic model has been exemplified as being based on the computation of one or more currents and the comparison of those currents to predetermined thresholds, by the coefficient computing logic <NUM>, in order to output signals indicative of overcurrent situations. This comparison can be implemented by the coefficient computing logic <NUM> in a plurality of manners which are per se known, for instance by implementing a comparator based on a differential amplifier, when operating with analog signals, or a digital comparator, when operating with digital signals.

In the following, further specific embodiments will be described in which particularly advantageous implementations for the comparison are described, with reference to <FIG>.

In particular, as visible in <FIG>, in some embodiments the coefficient computing logic <NUM>, which can be a possible further implementation of the coefficient computing logic <NUM>, can comprise a first peak detector <NUM> and/or a second peak detector <NUM>.

The first peak detector <NUM> is configured to receive as input the calculated amplifier current IOUT_PRED and determine a maximum calculated amplifier current IOUT_PRED_MAX as a maximum value of the calculated amplifier current IOUT_PRED. Similarly, the second peak detector <NUM> is configured to receive as input the calculated boost current IBST_PRED and determine a maximum calculated boost current IBST_PRED_MAX as a maximum value of the calculated boost current IBST_PRED.

The coefficient computing logic <NUM> can further comprises a comparator <NUM> configured to compare the maximum calculated amplifier current IOUT_PRED_MAX with a predetermined maximum amplifier current IOUT_MAX, and/or compare the maximum calculated boost current IBST_PRED_MAX with a predetermined maximum boost current IBST_MAX, and output at least one coefficient ROFF, XMULT based on a result of the comparison.

Concerning the specific changes to the one or more coefficient as a function of the one or more inputs, reference is made to the previously described embodiments. In particular, where previously reference has been made to a comparison of IOUT_PRED and IBST_PRED with the respective thresholds, similar considerations can apply to the comparison of IOUT_PRED_PEAK and IBST_PRED_PEAK with the respective thresholds, namely IOUT_MAX and IBST_MAX.

The introduction of the peak detectors allow to consider the part of the current signals which lead to the overcurrent situations. This simplifies the input to the comparator <NUM>, which only has to operate on peak values and not on the complete signals. In some preferred embodiments, the peak detectors preferably output the maximum amplitude of their respective inputs. In some further preferred embodiments, they might also output information concerning the duration of the maximum amplitude, for instance in absolute and/or relative terms. This timing information can also be used by the comparator, by comparing it with respective timing thresholds, not illustrated. In this manner, if the timing information outputted by the peak detector is not higher than the respective threshold, the comparator can be configured to take no action of its outputs. This might be useful, for instance, to avoid reacting to very narrow peaks and/or spikes caused by noise, short transitory effects and/or measurement errors.

As an alternative to this approach, and as visible in <FIG>, the coefficient computing logic <NUM> can comprises at least one smoothing filter <NUM>, <NUM> configured to receive as input the at least one coefficient ROFF, XMULT, and to output the at least one coefficient ROFF, XMULT after application of the least one smoothing filter <NUM>, <NUM>.

In this manner it can be abrupt changes in the transfer function of filter <NUM> can be avoided. This avoid abrupt changes in the signal filtered by filter <NUM>, which could cause artefacts, for instance audible artefacts in case of using the circuit for driving a speaker as load. The optional smoothing filters thus provide a simple and effective way to low pass the output of the computing logic <NUM>. In preferred embodiments, the one or more smoothing filter could be implemented by low-pass filters.

It will further be clear that the implementation of the smoothing filter <NUM> is independent from the implementation of the smoothing filter <NUM>. Moreover, those skilled in the art will appreciate that the characteristics of the smoothing filters <NUM> and <NUM> do not need to be the same. In particular, each of them can have its own attack and/or release time, which can be programmed to trade between avoiding audible artefacts and maximizing the algorithm effectiveness. In preferred embodiments, the attack and/or release time are preferably comprised between <NUM> microseconds and <NUM>, even more preferably between <NUM> microseconds and <NUM>.

It has thus been described how various embodiments of the invention can compute one or more currents of the driving circuit and how this information can be used as a feedback loop to filter the input signal, so as to avoid introducing artefacts in the signal due overcurrent situations.

<FIG> schematically illustrates a driving circuit <NUM>, which differs from the previously described embodiments due to, among others, the presence of a delay element <NUM> connected between the input signal VIN and the adaptive filter <NUM>.

Generally, the purpose of the delay element is to allow the delay caused by the processing in the feedback loop, through the dynamic model <NUM>, to be compensated. in this manner it is possible to ensure that the part of the signal which is filtered by the filter <NUM> is the one which was previously modelled by the dynamic model <NUM>.

In some preferred embodiments, the delay introduced by delay element <NUM> can therefore correspond to the processing time of the dynamic model <NUM>. Preferably, the processing time of the dynamic model <NUM> can be understood to be the time incurring between a change in one or more of its inputs and a corresponding change in one or more of its outputs.

In some practical implementations, it has been found that delays in between <NUM> and <NUM> offer a sufficient time for the processing of the dynamic model <NUM> while not significantly negatively impacting the operation of the driving circuit.

Moreover, as visible in <FIG>, the driving circuit <NUM> differs from the previously described embodiments due to, among others, the presence of a second adaptive filter <NUM> connected between the input signal VIN and the dynamic model <NUM>.

It will be clear that the filter <NUM> can be implemented independently of the delay <NUM>. In this respect, it is noted that throughout the description, various embodiments are illustrated and/or described, each comprising a plurality of features. This is not to be limiting the invention to the specific combination of features of the embodiments as illustrated and/or described. To the contrary, any feature from any of the embodiments can be combined with any features from any remaining embodiment.

In particular, the second adaptive filter <NUM> can be configured to provide substantially the same filtering of the adaptive filter <NUM>. Here, the term substantially can be interpreted so as to mean that the filtering provided by the second adaptive filter <NUM> is such that the signal outputted to the model <NUM> allows the model <NUM> to operate so that, when the model <NUM> drives the filter <NUM>, it is possible to obtain the previously described operation, and in particular to avoid overcurrent situations in the driver <NUM> and/or in the load L. In other words, while the filters <NUM> and <NUM> do not need to provide exactly the same output, they will provide an output similar enough for allowing the operation of the model <NUM> in accordance with its purpose, as previously defined.

In further embodiments, the second adaptive filter <NUM> can be configured to provide a filtering within a range of +/- <NUM>% of the filtering applied by the adaptive filter <NUM>. In further embodiments, the second adaptive filter <NUM> can be configured to provide the same filtering of filter <NUM>.

Moreover, the second adaptive filter <NUM> can be configured to filter the input signal VIN based on the output of the dynamic model, in a manner similar to what has been discussed with respect to filter <NUM>. This ensures that the output of filter <NUM> is compatible with that of filter <NUM>, so that the model <NUM> can more precisely model the evolution of the currents in the circuit.

<FIG> illustrates a further possible implementation of filter <NUM>, in form of adaptive filter <NUM>. As visible in <FIG>, the adaptive filter <NUM> can comprise a plurality of low-pass filters and high-pass filters for filtering the signal VIN along at least two branches, preferably three. For instance, a first branch comprises low-pass filter <NUM>, a second branch comprises high-pass filter <NUM> and low-pass filter <NUM>, a third branch comprises high-pass filter <NUM> and high-pass filter <NUM>.

The output VIN_FILT of the filter <NUM> is obtained by combining the output of at least two branches through an adder <NUM>.

Preferably, before the combination, the output of one or more branches can be multiplied by a gain. For instance, the output of the second branch as illustrated is multiplied by the gain G<NUM> at multiplier <NUM>, while the output of the third branch as illustrated is multiplied by the gain G<NUM> at multiplier <NUM>.

In preferred embodiments, the high-pass filter <NUM> and the low-pass filter <NUM> constitute an all-pass section <NUM>. Similarly, the high-pass filter <NUM> and the low-pass filter <NUM> can constitute an all-pass section <NUM>.

Such configuration is particularly advantageous. In particular, it allows an easy control of the roll-off of filter <NUM>. In particular, when no filtering action is required, that is a roll-off value of <NUM> dB/decade, the filter <NUM> can implement an all-pass filter by appropriately controlling G<NUM> and G<NUM> and/or by appropriately controlling the cut-off frequency of all-pass section <NUM> and/or of all-pass section <NUM>.

In particular, in some embodiments, an iterative process can be configured to identify the low pass and the high pass filter cut off frequencies and G<NUM> and G<NUM> so that the filter <NUM> is an approximation of a requested profile.

More specifically, in some embodiments G<NUM> and G<NUM> can be determined as <MAT> <MAT>.

Where dB is the desired roll off and where delta<NUM> and delta<NUM> can be determined by an iterative process as a function of the desired roll-off.

It has thus been described how the invention can provide a circuit for driving a generic capacitive load L. As it is evident from the description above, this applies to any capacitive load and has the advantage of being able to track possible variation in the capacitance and/or in the power supply when filtering the input signal, so as to avoid overcurrent situations which might lead to the presence of artefacts in the signal.

Such behavior, while desirable when driving any load L, is particularly advantageous when the capacitive load L is a speaker, and even more preferably so when the speaker is based on one or more a piezoelectric components or MEMS. Various manners are known for implementing a speaker with those technologies and are per se known.

Further it is noted that the invention can obtain the advantages described above without measuring the load L directly, but relying on measurements of voltages and/or currents across the load L and/or at the output of the driver <NUM>. Thus the invention can be applied to a wide range of loads, without significant changes.

While the invention has been directed to a driving circuit, it will be clear that is can also be directed to a device, such as a mobile phone, a table, a notebook, or more generally any kind of electronic device comprising a speaker, preferably based on one or more a piezoelectric components or MEMS, and a circuit according to any of the described embodiments, for driving the speaker.

Additionally, while the invention has been described in terms of an apparatus, it is evident to those skilled in the art that a corresponding method and/or computing device can be implemented.

In general, all functionalities described with reference to the dynamic model and the adaptive filter above can be implemented by corresponding method steps and/or by corresponding instructions executed by a CPU.

For instance, <FIG> illustrates a method comprising steps S101-S104.

Step S101 comprises acquiring inputs for the dynamic models. The inputs can be any of the previously described inputs, such as, for instance, any of VIN, VL, IL, VBAT, <IMG>, and more generally any of the values which have been described as being inputted in the dynamic model. In preferred embodiments, the inputs tracked by the dynamic model comprise at least the capacitance CL of the load L and the voltage VBAT of the source used for powering at least parts of the circuit.

Step S102 comprises computing one or more outputs of the dynamic model. The outputs can be any of the previously described outputs, such as, for instance, any of XMULT, ROFF, G<NUM>, G<NUM>, <IMG>, and more generally any of the values which have been described as being outputted by the dynamic model.

Step S103 comprises configuring the filter based on the outputs of the dynamic model, as previously described, which might vary depending on the specific configuration of the filter.

Step S104 comprises filtering the input signal with the configured filter while driving the load L.

Further steps can be defined to carry out the functionalities previously described in terms of apparatus features.

Similarly, the invention can be implemented by a computing device <NUM> in which the various functionalities previously described can be implemented by appropriately driving a processor. With reference to <FIG>, the computing device <NUM> can in particular comprise a processor <NUM>, input/output means <NUM> and a memory <NUM>. The memory can comprise instructions which, when executed by the processor, can cause the processor to execute any of the functionalities previously described. Moreover, through input/output means <NUM>, possibly driven directly based on instructions from the memory and/or through the processor, it is possible to acquire the one or more inputs and provide the one or more outputs.

In particular, the invention could also be implemented as a combination of discrete components and a computing device. Preferably, the computing device could be used to implement the dynamic model and/or the various filters, while discrete components could be used for the remaining features, and notably for the driver.

It has therefore been shown how a capacitive load can be driven in an efficient way, taking into account real-world conditions and not based on worst-case assumptions. This allows the load to be driven without needlessly sacrificing driving power which is instead available and can be used without generating artefacts in the driving signal. At the same time, the configuration of the invention allows the amplification to be reduced in real-time for the conditions of load, power supply and driving signal which would otherwise lead to the generation of artefacts.

Claim 1:
A circuit (<NUM>, <NUM>, <NUM>) for driving a capacitive load (L) comprising:
an amplifier (<NUM>, <NUM>) configured to drive the load (L) based on a filtered input signal (VIN_FILT), the amplifier comprising at least a boost converter (<NUM>) configured to power a driver (<NUM>) based on a voltage of a source (VBAT), the driver (<NUM>) being configured to receive the filtered input signal (VIN_FILT) and drive the load (L),
a dynamic model (<NUM>, <NUM>, <NUM>) configured to track a capacitance of the load (CL) and configured to provide an output based on the capacitance of the load (CL),
an adaptive filter (<NUM>, <NUM>, <NUM>), configured to filter an input signal (VIN) based on the output of the dynamic model (<NUM>, <NUM>, <NUM>), and output the filtered input signal (VIN_FILT),
wherein the boost converter is configured to increase a voltage of the filtered input signal (VIN_FILT) from a lower level to a higher lever (VL), for driving the load (L),
wherein
the dynamic model (<NUM>, <NUM>, <NUM>) is further configured to track the voltage of the source (VBAT) for powering at least parts of the circuit (<NUM>, <NUM>, <NUM>) and further configured to provide the output based on the capacitance of the load (CL) and the voltage of the source (VBAT).