TOOLS AND METHODS FOR DESIGNING FILTERS FOR USE IN ACTIVE NOISE CANCELLING SYSTEMS
20240203391 ยท 2024-06-20
Assignee
Inventors
Cpc classification
G10K11/17881
PHYSICS
G10K2210/3028
PHYSICS
G10K11/17817
PHYSICS
International classification
Abstract
A computer-implemented method of automated filter design comprising designing a feedback filter for an active noise cancelling system.
Claims
1. A computer-implemented method of automated filter design comprising designing a feedback filter for an active noise cancelling system.
2. The method of claim 1, wherein designing the feedback filter comprises determining a filter transfer function of the feedback filter.
3. The method of claim 2, wherein the filter transfer function is determined using an optimization method.
4. The method of claim 3, wherein determining the filter transfer function comprises: defining a target transfer function of the feedback filter; and applying the optimization method using the target transfer function to determine a filter expression for the filter transfer function.
5. The method of claim 3, wherein the optimization method is a least square method.
6. The method of claim 5, wherein determining the filter transfer function comprises: defining an error function that is dependent on an open loop design target and the target transfer function, the open loop design target being dependent on the filter transfer function; and applying the least square method using the error function to determine the filter expression for the filter transfer function that either: i) reduces the error function to a sufficiently small value that is indicative of the open loop design target being sufficiently close to the target transfer function; and/or ii) minimizes the error function.
7. The method of claim 6, wherein the open loop design target is dependent on a feedback path transfer function, being representative of the feedback from a driver to a feedback microphone.
8. The method of claim 7, wherein the open loop design target is the product of the feedback path transfer function and the filter transfer function.
9. The method of claim 6, wherein the error function is dependent on the difference between the open loop design target and the target transfer function.
10. The method of claim 8, wherein the least square method is a weighted least square method such that the error function is dependent on a weighting vector.
11. The method of claim 10, wherein the error function is approximately equal to the magnitude squared of a first expression, the first expression being equal to the square root of the weighting vector multiplied by the difference between the open loop design target and the target transfer function.
12. The method of claim 10, wherein the weighting vector is multiplied by a weighting factor.
13. The method of claim 12, comprising: a) updating the weighting factor thereby updating the error function; b) applying the least squares method using the error function to determine an alternative expression for the filter transfer function that either: i) reduces the error function to a sufficiently small value that is indicative of the open loop design target being sufficiently close to the target transfer function; and/or ii) minimizes the error function; c) updating the filter expression to the alternative expression if the error function after updating is smaller than the error function prior to updating; and d) repeating steps a) to c) until: a number of repetitions of the steps a) to c) exceed a limit; and/or the error function is less than a threshold value.
14. The method of claim 10, wherein the weighting vector is proportional to one divided by the magnitude of the target transfer function squared.
15. The method of claim 4, wherein defining the target transfer function comprises providing a target transfer function comprising: a magnitude being greater than 0 dB in a frequency range from 20 Hz to 800 Hz and/or; a magnitude peak in a frequency range from 100 Hz to 200 Hz; and/or a magnitude less than zero at frequencies greater than 800 Hz.
16. The method of claim 5, wherein determining the filter transfer function comprises: defining a target transfer function of the feedback filter; determining a filter expression for the open loop design target comprising: determining a first filter expression, the first filter expression comprising a first numerator polynomial and a first denominator polynomial; and determining the first filter expression by applying the least square method using the target transfer function to determine the roots of the first denominator polynomial.
17. The method of claim 16, wherein determining the first filter expression comprises applying the least square method using the target transfer function to determine the roots of the first numerator polynomial after the roots of the first denominator polynomial have been determined.
18. The method of claim 1 comprising designing a feedforward filter for the active noise cancelling system.
19. A computer system comprising a module configured as an automated filter design tool configured to design a feedback filter for an active noise cancelling system.
20. An active noise cancelling system comprising a feedback filter being designed using a method of automated filter design comprising designing the feedback filter.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0051] The disclosure is described in further detail below by way of example and with reference to the accompanying drawings, in which:
[0052]
[0053]
[0054]
[0055]
[0056]
[0057]
[0058]
[0059]
DETAILED DESCRIPTION
[0060]
[0061] A feedback section 113 comprises the feedback microphone 104, the speaker driver 106 and the transfer functions H.sub.AFB, H.sub.FB, H.sub.DMFB.
[0062] The speaker driver 106 and the ambient noise source represent two inputs to the ANC system, with a signal D representing an input signal at the speaker driver 106 and a signal A representing an input signal provided by the ambient noise source 108.
[0063] The aim of an ANC system providing feedback ANC is to provide a filter H.sub.FB such as to cancel A.Math.H.sub.AFB at the feedback microphone 104 and the ear 110 by means of destructive interference.
[0064] The present disclosure relates to methods and tools for designing a feedback filter for an ANC system. It will be appreciated that the ANC system as shown in
[0065]
[0066] In a specific embodiment, designing the feedback filter may comprise determining a filter transfer function H.sub.FB of the feedback filter, at a step 204. The filter transfer function H.sub.FB may be determined using an optimisation method.
[0067]
[0068] In the present embodiment, determining the filter transfer function H.sub.FB comprises defining a target transfer function H.sub.T of the feedback filter at a step 206 and applying the optimization method using the target transfer function H.sub.T to determine a filter expression for the filter transfer function H.sub.FB, at a step 208.
[0069] In a specific embodiment, the optimization method may be a least square method, which may, for example, be a weighted least square method.
[0070]
[0071] Determining the filter transfer function H.sub.FB further comprises applying the least square method using the error function Err to determine the filter expression for the filter transfer function H.sub.FB that either reduces the error function Err to a sufficiently small value that is indicative of the open loop design target H.sub.OL being sufficiently close to the target transfer function H.sub.T and/or minimizes the error function Err, at a step 212.
[0072] In a specific embodiment, the open loop design target H.sub.OL may be dependent on a feedback path transfer function H.sub.DMFB. The feedback path transfer function H.sub.DMFB is representative of the feedback from the driver 106 to the feedback microphone 104.
[0073] The open loop design target H.sub.OL may be the product of the filter transfer function H.sub.FB and the feedback path transfer function H.sub.DMFB, which may be represented as follows:
H.sub.OL=H.sub.FB.Math.H.sub.DMFB(1)
[0074] The open loop response, as provide by the open loop design target H.sub.OL may be used to determine closed loop stability by determining gain and phase margin.
[0075] The target transfer function H.sub.T represents the gain and phase characteristics of the feedback microphone 104 in an idealised ANC system that would provide optimum noise cancellation characteristics. To provide this optimum functionality, it is necessary to determine the filter expression for the filter transfer function H.sub.FB that provides an open loop design target H.sub.OL that matches, or is sufficiently close to, the gain and phase change characteristics represented by the target transfer function H.sub.T.
[0076] It will be appreciated that any determination of H.sub.OL as described herein may be used to determine a suitable transfer function H.sub.FB for the feedback filter in accordance with the understanding of the skilled person and, for example, using the relation described by equation (1).
[0077] The target transfer function H.sub.T may not be a system measured response but a transfer function derived for optimal FB ANC performance.
[0078] The filter expression for the filter transfer function H.sub.FB that is derived will be achievable using physical circuit components and parameters, such that the designed feedback filter can be implemented using these circuit components and parameters to provide the optimal ANC functionality that is represented by the target transfer function H.sub.T.
[0079] The filter expression of the filter transfer function H.sub.FB is a mathematical expression and may be a polynomial, where the coefficients of the filter expression can be written in corresponding registers of an integrated circuit (IC) implementing digital signal processing (DSP) for ANC.
[0080] The filter expression of the filter transfer function H.sub.FB may be described by a fraction having a numerator polynomial and a denominator polynomial. The highest order of the two polynomials determines the filter order.
[0081] A polynomial of Nth order is determined by N+1 coefficients. For example, a 2nd order IIR filter may be expressed by the expression:
[0082] A detailed and complicated frequency response requires a very high filter order for its polynomial representation. Poles are the roots of the denominator polynomial and zeros are the roots of the numerator polynomial. Also, it is possible to calculate coefficients from given poles and vice versa from standard equations.
[0083] The error function Err is a measure of how close the open loop design target H.sub.OL matches the target transfer function H.sub.T. It is desirable for the open loop design target H.sub.OL to match the target transfer function H.sub.T exactly, which would yield an error function Err equal to zero.
[0084] However, in a practical implementation that uses physically implementable circuits and parameters, it is not feasible to match the open loop design target H.sub.OL exactly to the target transfer function H.sub.T.
[0085] As such, it is desirable that the error function Err is of a sufficiently small value that is indicative of the filter transfer function H.sub.FB providing the necessary functionality within an application-dependent tolerance range.
[0086] For example, in an ANC system, it will be less relevant to provide optimal noise cancelling outside the range of human hearing, and the system may compromise in this area. Preferably, the error function Err is minimised.
[0087] The error function Err may be dependent on the difference between the open loop design target H.sub.OL and the target transfer function H.sub.T, for example as follows:
[0088] In a further embodiment, the least square method may be a weighted least square method such that the error function Err is dependent on a weighting vector W, as follows:
[0089] As shown in equation (4) the error function Err in the present embodiment is equal to the magnitude squared of a first expression, given by the square root of the weighting vector W, multiplied by the difference between the open loop design target H.sub.OL and the target transfer function H.sub.T.
[0090] The weighting vector W is preferably a vector with appropriate weight values to minimise errors between the target transfer function H.sub.T and the open loop design target H.sub.OL in specific frequency ranges. For example, for high performance ANC, it may be essential that the target transfer function H.sub.T and the open loop design target H.sub.OL match very closely over a first frequency range, whilst the transfer functions H.sub.T, H.sub.OL can differ largely over a second frequency range. The weighting vector W can be used to weight the importance of the matching of the transfer functions H.sub.OL, H.sub.T over the different frequency ranges, which can simplify and/or speed up the design process.
[0091] The weighting vector W may have two functions, namely: reducing the distance, represented by the value of the error function Err, between H.sub.OL and H.sub.T in the ANC range (the first frequency range) and increasing the distance elsewhere (the second frequency range). The increase in the error function Err value in the second frequency range is necessary for reducing overshoots.
[0092] Step 3 of designing an ANC headset, as described previously is as follows: Utilize the measurements in order to design the filters for achieving the desired ANC performance. Methods of the present disclosure may be applied to facilitate the 3rd step for a FB filter design.
[0093] As described previously, the aim of an ANC system providing feedback ANC is to provide a filter H.sub.FB such as to cancel A.Math.H.sub.AFB at the feedback microphone 104 and the ear 110 by means of destructive interference. In an ideal system, the error signal, e, as shown in
[0094] In a physical system, this is not practically possible as there are electrical, mechanical and acoustic delays in the feedback section 113, which make it impossible to perfectly cancel all of the ambient noise signal. The impact of these delays is denoted by the feedback path transfer function H.sub.DMFB, which denotes the feedback from the driver 106 to the microphone 104.
[0095] Each feedback ANC headset may comprise electro-acoustic components such as the speaker 106 and the FB microphone 104, in addition to mechanical components like a cushion and a speaker cavity. Collectively, these components determine the gain and phase response of a headset. The feedback path transfer function H.sub.DMFB describes the gain and phase response of the headset and may be modelled as shown in
[0096] The feedback path transfer function H.sub.DMFB may, for example, be determined by acoustic measurement of a representative ANC system or may be determined by modelling/simulation a representative ANC system.
[0097] Different headsets will typically have different gain and phase responses, therefore characterization to optimize each headset in terms of FB ANC performance may be used to achieve a maximum bandwidth.
[0098] The output of the microphone feedback cancellation signal is passed through the feedback filter H.sub.FB. Therefore, the active feedback component of an ANC system can be described as:
FBANC=e/A.Math.H.sub.AFB(5)
[0099] FBANC is a measure of feedback ANC performance of the ANC system. As it is desirable to minimise the error signal e, it is desirable for FBANC to tend to zero.
[0100] The error signal, e, that is picked up by the FB microphone 104 is the error signal resulting from the feedback loop signal, e. H.sub.FB.Math.H.sub.DMFB, being added acoustically to the ambient noise, A.Math.H.sub.AFB. The aim is to design the filter H.sub.FB such as to maximise the ANC suppression while maintaining enough open loop gain and phase margin to ensure stability. This may be represented by the following:
e=A.Math.H.sub.AFB+e.Math.H.sub.FB.Math.H.sub.DMFB(6)
[0101] Note we are using the convention of adding the two acoustic signals A. H.sub.AFB and e. H.sub.FB.Math.H.sub.DMFB in space (air) as opposed to subtracting the two signals as in traditional closed feedback loop performance definition.
[0102] This leads us to define the feedback ANC performance as:
[0103] Embodiments of the present disclosure provide methods to calculate an optimal feedback filter transfer function H.sub.FB coefficients for optimizing the ANC performance in the feedback path 113 in
[0104] The automatic FB ANC filter design algorithms of the present disclosure may be implemented for utilization in ANC headset design. The algorithm may take into account specific acoustic measurements in order to approximate a filter that better produces an anti-noise signal from the headset speaker 106 to the FB Microphone 104 and ear 110.
[0105] U.S. Ser. No. 11/404,040B1 relates to automated feedforward filter design. For automated feedback filter design as described herein, and unlike in automated feedforward filter design, there is no direct target for designing the filter
[0106] However, by utilising the fact that the open loop filter response, H.sub.FB. H.sub.DMFB, directly dictates the closed loop performance (equation (7)), this can be used in conjunction with gain and phase margin stability criteria to form an open loop design target H.sub.OL. As discussed previously, the open loop design target be given by equation (1).
[0107] The magnitude response of the open loop design target H.sub.OL may be adapted to improve the algorithm performance. The open loop design target H.sub.OL may be limited by the characteristics of H.sub.DMFB.
[0108] Equation (4) may be rewritten as follows:
where, the error signal e may be the error function Err, as described previously.
[0109] In order to achieve the approximation of the target H.sub.T, embodiments of the present disclosure may use the weighted least square approximation, as discussed previously. In this sense, the algorithm will minimize the error e provided by equation (8).
[0110] In a specific embodiment of the present disclosure, the weighting vector W may be multiplied by a weighting factor.
[0111] The method may further comprise a first step of updating the weighting factor thereby updating the error function Err, a second step of applying the least squares method, for example, provided by equation (4) using the error function Err to determine an alternative expression for the filter transfer function H.sub.FB that either: [0112] reduces the error function Err to a sufficiently small value that is indicative of the open loop design target H.sub.OL being sufficiently close to the target transfer function H.sub.T and/or [0113] minimizes the error function Err
[0114] The method then further comprises a third step of updating the filter expression to the alternative expression if the error function Err after updating is smaller than the error function Err prior to updating and repeating steps one to three until a number of repetitions of the steps exceeds a limit and/or the error function Err is less than a threshold value.
[0115] The weighting vector W may be multiplied by the weighting factor in a frequency range having a minimum frequency and a maximum frequency. In a specific embodiment the weighting vector W may be proportional to one divided by the magnitude of the target transfer function H.sub.T squared as follows:
[0116] In a specific embodiment, the feedback filter may be designed within a frequency range having a maximum frequency and a minimum frequency.
[0117] A designer undertaking the steps of embodiments of the methods disclosed herein may set the minimum and maximum desired ANC frequency range in Hz (f.sub.min and f.sub.max). An ideal feedback open loop magnitude response curve may be determined within the designer designed frequency range to provide the target transfer function H.sub.T. Following this step, the weighting vector may be determined as follows:
where f is a frequency within the range as previously described: f.sub.min?f?f.sub.max.
[0118] Computing of the weighting vector using equation (10) may be used to minimise overshoots in the ANC performance.
[0119] The least square approximation accuracy may be increased by multiplying W in the range f.sub.min?f?f.sub.max with a weight factor, as discussed previously. This provides a user-defined weighting which can be used to add emphasis or weight to the least square approximation in a particular frequency region, e.g. if targeting maximum suppression at 200 Hz the weighting factor at 200 Hz could be increased (the weighting factor will bias the least square calculation to minimise error in the range with largest weight).
[0120] The calculation can iterate the values of W in the range of w.sub.min?W?w.sub.max seeking the value that provides best performance combined with low overshoot level. It will be appreciated that the use of the weight factor can be omitted at the expense of performance.
[0121] In a specific embodiment, within each iteration step, the calculation filter performance is calculated and if the filter matches the criteria set by the user and/or is better performing than a previously calculated filter, it updates the best filter solution.
[0122] In specific embodiments of the methods disclosed herein, the FB filter design algorithm not only designs the FB filter to best match the open loop target magnitude H.sub.T using a least squares (LS) approach, it also enables precise control of gain margin, phase margin and overshoot level. This ensures precise control of stability margins which facilitate stable performance when worn/tested with different listeners/users. It is possible to set the range, lower and upper frequency limits, of optimisation ensuring best performance in the desired frequency region.
[0123] However, this may not be possible to over the whole audible frequency range (20 Hz-20 kHz) due to the inherent latency of the open loop. Therefore, the least square approximation method could be supported with features (methods) that allow the calculated filter frequency response to achieve both the error minimization in the desired frequency range and obtain specific characteristics in order to minimize overshoot level outside of it. This may be achieved, for example, by using the weighting vector as discussed herein.
[0124] In summary, the use of a weighting vector W can improve stability of the ANC performance of the designed feedback filter. The weighted accuracy/bias for least square component within user defined desired frequency range can provide minimization of the least square approximation error, which corresponds to matching of the desired open loop target response H.sub.T with calculated open loop response H.sub.OL using newly designed feedback filter.
[0125] In a specific embodiment of the present disclosure determining the filter transfer function (for example as shown by step 204 of
[0126] There may be provided an initial estimate of filter pole positioning, for example, by splitting the poles in two groups, namely higher and lower frequency regions. This may be performed using the least square method in the warped frequency domain using different warping parameters for lower and higher frequencies. The low frequency range may align with the ANC operation frequency range and the high frequency range may align with a frequency range over which overshoots are expected to occur.
[0127] Initial estimation of filter pole positioning using logarithmic separation in the area where ANC is desired/possible. This approach provides optimized pole positioning allowing the least square approximation to calculate a transfer function that better matches defined open loop target response in the desired frequency range specified by the user.
[0128] The warped frequency domain is a way to affect the spectral density of (change the resolution of) the frequency response points with a different factor in different ranges. This can yield different importance for the least square method in two ranges: the range with large compression will lead to less detail (higher error) in the least square method. This technique may imitate the human ear resolution.
[0129] Determining the first filter expression may comprise applying the least square method using the target transfer function H.sub.T to determine the roots of the first numerator polynomial after the roots of the first denominator polynomial have been determined. The first filter expression may be updated using the roots of the first denominator polynomial prior to determination of the roots of the first numerator polynomial.
[0130] The pole positions may be split into one or more frequency ranges, for example, for a single frequency range f.sub.low?f?f.sub.high. f.sub.low is the lowest frequency in the range and f.sub.last is the maximum frequency that Least Square operation will take into account.
[0131] In a further embodiment, the pole positions may be split into two frequency ranges as follows:
1?f?f.sub.c(11)
f.sub.c?f?f.sub.last(12)
where f.sub.c is a central frequency that divides the two ranges, f.sub.last is a maximum frequency that the least square method will take into account and f is a frequency.
[0132] The number of poles depends on the order of the feedback filter, which may be a user-defined parameter. Preferably, the number of poles in the ranges defined by equations (11) and (12) should total the feedback filter order.
[0133] The number of poles in each of the ranges defined by equations (11) and (12) can be user defined or iterated by seeking the solution that gives the best results. This step may be substituted by any suitable method to calculate the initial complex pole values, including a user manual input of a pole set. If the split pole method is used, the following procedure is preferably applied for each frequency range.
[0134] The following steps can be applied for each of the frequency ranges to determine the poles (the denominator polynomial of the open loop design target H.sub.OL): [0135] 1. Compute a warped angular frequency ? using a normalized angular frequency ? via the formula:
where ? is a variable having a value between zero and one, with a higher value providing a larger spectral density, and
where f.sub.s is a sampling frequency of the ANC system. [0136] 2. Defining
H.sub.OL/H.sub.DMFB=B/A(15)
where B is the numerator polynomial and A is the denominator polynomial, as previously discussed. [0137] 3. Rewriting the error function Err of equation (4) as follows:
[0139] Once the roots of the A and B polynomials have been determined, it is possible to calculate the filter frequency response of the filter expression having the A and B polynomials using the coefficients of the polynomials. In the present example it is possible to determine the filter frequency response of the first filter expression. The ANC performance may be determined using equation (7).
[0140] The roots of a polynomial can be used to determine the coefficients of the polynomial and therefore can be used to determine a suitable filter expression for the open loop design target H.sub.OL.
[0141] Determining the filter expression may further comprise determining a second filter expression. The second filter expression may comprise a second numerator polynomial and a second denominator polynomial. The roots of the second denominator polynomial may be equal to the roots of the first numerator polynomial. Determining the filter expression may further comprise determining the second filter expression by applying the least square method using the target transfer function H.sub.T to determine the roots of the second numerator polynomial.
[0142] In summary, the process may be iterated to optimize both the poles and the zeroes of the designed IIR filter. In order to achieve this the steps below should be followed [0143] i. Compute the filter frequency response using the coefficients of polynomials B and A. [0144] ii. Compute the ANC performance of the designed filter using formula (7). [0145] iii. If the performance of the filter in current iteration is better than the previous best performing filter according to criteria set by the user such as attenuation, gain margin, phase margin and maximum overshoot limit, set the current filter settings as the best. [0146] iv. Calculate the zeroes of the current iteration as roots of B polynomial. [0147] v. Invert H.sub.OL and H.sub.out and repeat the process using the zeroes as input for the fixed pole structure. [0148] vi. Repeat the last steps as many times as set by the user. [0149] vii. Return the best performing filter coefficients.
[0150] Determining the filter expression may further comprise evaluating which of the first filter expression and the inverse of the second filter expression best meets a design specification and setting the filter expression as the one of the first filter expression and the inverse of the second filter expression that best meet the design specification.
[0151] At least one design specification may comprise one or more of adaptive noise cancelling performance, attenuation gain, and/or overshoot characteristics.
[0152] The open loop design target H.sub.OL is broken down into parallel sections. The parallel sections are all added to determine the overall response of the open loop design target H.sub.OL at a point 300.
[0153] A first series of blocks 302 represents the denominator polynomial determined by the warped frequency method described previously. b.sub.00 and b.sub.01 are the coefficients of the numerator polynomial as determined previously and are part of a first section 304. The total number of available sections are related to the overall filter order that is required prior to running this method; an overall filter of Nth order will be broken down to N/2 sections. g0 is a flat gain added to the overall system (numeral 306). If the order is an odd value, a first order section will be introduced.
[0154] Additional sections are labelled 307 and 308. b.sub.10, b.sub.11 are the coefficients of numerator polynomials of section 307 and b.sub.N0, b.sub.N1 are coefficients of the numerator polynomials of section 308. Reference numeral 310 denotes an optional FIR part.
[0155] In a preferred embodiment the methods disclosed herein uses parallel structure Second Order Sections (SOS) to enhance accuracy and reduce error. The overall open loop transfer function H.sub.OL be derived by adding the individual sections as shown in
[0156] It will be appreciated that the parallel SOS can be converted to a sequential SOS (for example if required by the DSP architecture) using standard methodologies as will be clear to the skilled person.
[0157]
[0158] The computer system 402 may comprise a processor 404, a storage device 406, RAM 408, ROM 410, a data interface 412, a communications interface 414, a display 416, and an input device 418. The computer system 400 may comprise a bus 420 to enable communication between the different components.
[0159] The computer system 400 may be configured to load an application. The instructions provided by the application may be carried out by the processor 404. The application may be the automated feedback filter design tool of the present disclosure.
[0160] A user may interact with the computer system 400 using the display 416 and the input device 418 to instruct the computer system 400 to implement the methods of the present disclosure in the automated design of a feedforward filter for an ANC system.
[0161] The weighting vector W and the target transfer function H.sub.T may be defined automatically as part of the method 200, or may alternatively be provided as inputs, for example by a user interacting with the computer system 400. Determination of the open loop design target H.sub.OL and the filter transfer function H.sub.FB of the feedback filter may be automated using the method 200.
[0162]
[0163] It will be appreciated that the feedback filter 423 may comprise one or more sub-filters.
[0164] In a specific embodiment, the active noise cancelling system 422 may comprise a feedforward filter 426 such that the system 422 is a hybrid ANC system.
[0165] In a further embodiment, the methods disclosed herein may also comprise designing a feedforward filter for the active noise cancelling system. This may be an automated design method, for example as described in U.S. Ser. No. 11/404,040B1. The feedforward filter of a specific embodiment of the system 422 may be designed using an automated method such as this.
[0166] The present disclosure provides methods and tools for fast automated feedback filter design to facilitate digital and/or analogue Active Noise Cancelling (ANC) headphones (both FB-only and hybrid (optionally, in conjunction with FF design)).
[0167]
[0168]
[0169] The
[0170]
[0171]
[0172]
[0173]
[0174] The traces 516, 616, 716 show examples of the open loop design target H.sub.OL after application of the methods disclosed herein in providing a H.sub.OL that is suitably close to the target transfer function H.sub.T.
[0175] It is desirable to have a higher open loop gain as this results in better ANC performance. This can be seen from the relationship between open loop gain and ANC suppression. For example, and with reference to
[0176] Feedback ANC suppression is generally in lower frequency regions from approximately 20 Hz up to 800 Hz with the peak in the range of 100 Hz to 200 Hz depending on the acoustics of the headset.
[0177] It can be seen from the typical headset examples shown in
[0178] The knowledge of the phase response of H.sub.DFMB can be used to set the peak of the target transfer function H.sub.T and the absolute suppression level will be limited by the ability to stay within the desired open loop gain and phase stability margins.
[0179] The target transfer function H.sub.T may comprise a magnitude being greater than 0 dB in a frequency range from 20 Hz to 800 Hz and/or may comprise a magnitude peak in a frequency range from 100 Hz to 200 Hz and/or may comprise a magnitude less than zero at frequencies greater than 800 Hz.
[0180]
[0181] An audio measurement instrument 800 is used to generate a frequency sweep from 10 Hz to 20 kHz. This is amplified using a headphone amplifier 802 and used to drive the feedback loudspeaker (part of a headphone 804). The resulting feedback mic signal is captured, and the results are routed through an evaluation board 806 back to the audio measurement instrument 800.
[0182] The evaluation board 806, which is configured with a flat frequency response, is included so that its latency is included in the captured result and to provide D/A conversion of the FB mic signal before input to the audio measurement instrument 800.
[0183] The evaluation board 806 represents a generic hardware signal path without any ANC filters, i.e. pass through. The only signal change through the evaluation board 806 will be due to the inherent latency/delay from input to output. When the ANC filters are tuned they may be implemented on the evaluation board 806 in this example.
[0184] Various improvements and modifications may be made to the above without departing from the scope of the disclosure.