The embodiments of the invention relate to active noise control or active noise cancelling (ANC) systems that feature an adaptive filter and an adaptive filter controller.
In consumer electronics personal listening devices, such as smart phones and other audio devices that work with headsets, such as tablet computers and laptop computers, the listening device often does not have sufficient passive noise attenuation. For instance, a more comfortable loose fitting ear bud is often preferred, which provides lesser passive ambient noise reduction than a larger and heavier yet better sealed outside-the-ear unit, or a completely sealed in-ear earphone. In addition, a user is often moving around with the listening device, e.g. while walking or jogging. In the case of a smart phone that is being used in handset mode (against the ear), the phone is held against the user's ear differently by different users, and also tends to move around during a phone call. These user-specific factors change the acoustic environment or acoustic loading of the listening device in real-time. As a result, the use of an adaptive ANC system has been suggested, to help improve the user's listening experience by attempting to produce a quieter environment.
An ANC system produces an “anti-noise” sound wave in such a way, that is, having a certain spectral content, that is intended to destructively interfere with or cancel the ambient or background noise sound that would otherwise be heard by the user. Attempts have also been made to improve the performance of the ANC system in personal listening devices, by making the system adaptive. An adaptive filter and an adaptive controller are provided, which aim to model the different parts of the acoustic environment that is surrounding the user, or the various acoustic paths leading to the user's eardrum. Based on sensing the acoustic environment using at least a reference microphone and an error microphone, the ANC system adapts or continuously changes the state of its adaptive filter in real-time so as to produce an anti-noise signal that better cancels the offending or unwanted noise.
It has been found that certain ANC systems do not respond well in the presence of background/ambient noise that has a focused or narrow-band, low frequency content. Examples of such narrow-band low frequency noise include car noise, such as when a user of a listening device is riding inside a car, bus, train or is otherwise in a similar environment in which the ambient noise has predominantly narrow-band and low frequency focused content. The adaptive algorithm tends to adapt incorrectly in the presence of such narrow-band or focused low frequency noise, because the algorithm operates by trying to produce an anti-noise that is intended to cancel the more dominant or more spectrally rich aspect of such ambient noise. The adaptive algorithm tries to configure the adaptive filter so as to model a narrow-band frequency response, in proportion to the energy of the detected noise, and will, as a result, not be sufficiently constrained in the rest of the audio band of interest. In so doing, the algorithm inadvertently “ignores” a high frequency band, which still needs adequate anti-noise in order to provide the user a comfortable listening experience. This problem may become worse particularly when the precision of the adaptive filter is limited in the low frequency band, due to practical limitations, for example, having a limited number of taps in a FIR filter implementation. This causes the accuracy of the adaptive filter to degrade in the low frequency band of interest, in this case, for example, between 5 Hz an 500 Hz.
An embodiment of the invention is an audio apparatus that has an ANC processor in which an adaptive filter is to use a reference microphone signal to produce an anti-noise signal. An adaptive filter algorithm engine is to configure the filter coefficients in accordance with signals at a first input and a second input. A first pre-shaping filter filters the reference signal for the first input of the engine, while a second pre-shaping filter filters the error signal for the second input of the engine. Each of the pre-shaping filters has a high pass transfer function that is designed to suppress energy in a low frequency band, relative to a high frequency band.
The pre-shaping filters together enable the engine to adapt the adaptive filter to thereby produce substantial anti-noise in the high frequency band, even during the presence of focused or narrow-band noise energy in the low frequency band. In other words, the pre-shaping filters prevent the narrow-band low frequency content from being passed to the computation engine of the adaptive filter algorithm. Experimental results have shown that such a technique may help prevent instability in the ANC processor, and may also increase noise cancellation performance within a high frequency band (and especially during the presence of focused or narrow-band ambient noise in a low frequency band). It has been found that the ambient noise's high energy content in the low frequency band will cause the adaptive filter algorithm engine to attempt to cancel such a signal, by producing the anti-noise primarily in that band, and as a result “ignoring” to a certain extent the rest of the audio band of interest. This problem is more serious when there is a lack of precision in the low frequency band, by the adaptive filter, e.g. because of the limited length of the adaptive filter. Also, in some personal listening devices, the acoustic response of the speaker that is used to audibilize the anti-noise signal tends to roll off substantially in the low frequency band. All of this means that allowing the adaptive engine to focus the anti-noise on the low frequency band is unlikely to yield a better overall noise cancellation experience for the user. In such a situation, the pre-shaping filters can help reshape the spectra of the reference and error signals that are used by the adaptive algorithm engine, to force the engine to avoid attempting to converge on a solution that is rich in low frequency content, and instead will force the engine to focus on the rest of the audio band of interest, and in particular the high frequency band where better cancellation performance may be available.
Note that there may be some trade off in that the components of the ambient noise that are within the low frequency band, namely below the knee of the high pass section of the transfer function of the pre-shaping filters, may not be effectively canceled by the ANC processor. However, the ANC system remains effective in the frequency range above the cut-off frequency of the high pass transfer function. Since the ANC system is not as effective in the low frequency band, due to the above-mentioned issues concerning limited adaptive filter length and roll off in the speaker response, the adaptive filter engine is thus steered into the more effective frequency band.
The above summary does not include an exhaustive list of all aspects of the present invention. It is contemplated that the invention includes all systems and methods that can be practiced from all suitable combinations of the various aspects summarized above, as well as those disclosed in the Detailed Description below and particularly pointed out in the claims filed with the application. Such combinations have particular advantages not specifically recited in the above summary.
The embodiments of the invention are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings in which like references indicate similar elements. It should be noted that references to “an” or “one” embodiment of the invention in this disclosure are not necessarily to the same embodiment, and they mean at least one.
Several embodiments of the invention with reference to the appended drawings are now explained. Whenever the shapes, relative positions and other aspects of the parts described in the embodiments are not clearly defined, the scope of the invention is not limited only to the parts shown, which are meant merely for the purpose of illustration. Also, while numerous details are set forth, it is understood that some embodiments of the invention may be practiced without these details. In other instances, well-known circuits, structures, and techniques have not been shown in detail so as not to obscure the understanding of this description.
The adaptive filter algorithm engine has at least two inputs, one to receive a filtered signal from the pre-shaping filter 8 (PSF_1), and a second input to receive a filtered signal from the pre-shaping filter 10 (PSF_2). Each of the pre-shaping filters has a high pass section in its transfer function that is designed to suppress energy in a low frequency band relative to the high frequency band. The transfer function of each filter (where these need not be identical but should be similar), should be selected in view of the particular narrow-band noise that is of concern, although the PSF_1, PSF_2 can be “always on” in that they need not be switched out when the ambient noise characteristics are different. It has been found that without the use of such pre-shaping filters, the ANC processor 1 may have very limited noise canceling ability across the full band (namely from about 5 Hz to about 4 kHz) in the presence of focused low frequency noise. In particular, performance appears to suffer significantly within 500 Hz and 1 kHz. As explained in the Summary section above, this may be due to the adaptive algorithm engine 9 being “overwhelmed” by the energy focused or narrow-band noise that is primarily within the low frequency band, namely less than 500 Hz and, in particular, between 5 Hz to 400 Hz.
A solution that may help the ANC processor 1 show better performance, that is better noise cancellation in the upper frequencies, may be to design the pre-shaping filters to have essentially high pass transfer functions, for example any of those depicted in
In general, without the pre-shaping filters, the ANC processor 1 may be expected to be substantially less effective across the full band of ANC operation, e.g. from 100 Hz to 3,000 Hz, when there is focused noise energy that is narrow-band and that lies below approximately 400 Hz. In one embodiment, the low frequency band is defined as the smallest frequency band that contains substantially all of the energy of the ambient noise, for example, as measured through the reference microphone signal.
Turning now to
In addition to the high-pass filter 7, there is a further high-pass filter 19, which may have essentially an identical counterpart in high-pass filter 17. These high-pass filters 17, 19 serve to once again remove some very low frequency components, so as to improve the ability to track the secondary acoustic path (via the SE tracking block, as shown in
In one embodiment, still referring to
Finally, it should be noted that the pre-shaping filters PSF_1, PSF_2 may each be infinite impulse response filters, or they may be finite impulse response filters. It is expected that a phase response of PSF_1 should be similar to the phase response of PSF_2 so as to “match” the arrival of information at both inputs of the adaptive algorithm engine 9. In one embodiment, the pre-shaping filters may be substantially identical, and each may be comprised of two bi-quads (in an IIR implementation). One of the bi-quads may be a second order high-pass filter, while the other is a second order peaking filter with a peak at about 600 Hz, so as to emphasize the frequency range from 400 Hz to 800 Hz, as well as help suppress components below 400 Hz—see
The mobile device 12 has an exterior housing in which are integrated an earpiece speaker (which may be the speaker 5—see
A block diagram of some of the functional unit blocks of the mobile device 12 is shown in
The user-level functions of the mobile device 12 are implemented under the control of an applications processor 19 or a system on a chip (SoC) processor that is programmed in accordance with instructions (code and data) stored in memory 28 (e.g., microelectronic non-volatile random access memory). The terms “processor” and “memory” are generically used here to refer to any suitable combination of programmable data processing components and data storage that can implement the operations needed for the various functions of the device described here. An operating system 32 may be stored in the memory 28, with several application programs, such as a telephony application 30 as well as other applications 31, each to perform a specific function of the device when the application is being run or executed. The telephony application 30, for instance, when it has been launched, unsuspended or brought to the foreground, enables a near-end user of the mobile device 12 to “dial” a telephone number or address of a communications device of the far-end user, to initiate a call, and then to “hang up” the call when finished.
For wireless telephony, several options are available in the mobile device 12 as depicted in
The uplink and downlink signals for a call that is being conducted using the cellular radio 18 can be processed by a channel codec 16 and a speech codec 14 as shown. The speech codec 14 performs speech coding and decoding in order to achieve compression of an audio signal, to make more efficient use of the limited bandwidth of typical cellular networks. Examples of speech coding include half-rate (HR), full-rate (FR), enhanced full-rate (EFR), and adaptive multi-rate wideband (AMR-WB). The latter is an example of a wideband speech coding protocol that transmits at a higher bit rate than the others, and allows not just speech but also music to be transmitted at greater fidelity due to its use of a wider audio frequency bandwidth. Channel coding and decoding performed by the channel codec 16 further helps reduce the information rate through the cellular network, as well as increase reliability in the event of errors that may be introduced while the call is passing through the network (e.g., cyclic encoding as used with convolutional encoding, and channel coding as implemented in a code division multiple access, CDMA, protocol). The functions of the speech codec 14 and the channel codec 16 may be implemented in a separate integrated circuit chip, some times referred to as a baseband processor chip. It should be noted that while the speech codec 14 and channel codec 16 are illustrated as separate boxes, with respect to the applications processor 19, one or both of these coding functions may be performed by the applications processor 19 provided that the latter has sufficient performance capability to do so.
The applications processor 19, while running the telephony application program 30, may conduct the call by enabling the transfer of uplink and downlink digital audio signals (also referred to here as voice or speech signals) between itself or the baseband processor on the network side, and any user-selected combination of acoustic transducers on the acoustic side. The downlink signal carries speech of the far-end user during the call, while the uplink signal contains speech of the near-end user that has been picked up by the handset talker microphone 6.
The analog-digital conversion interface between the acoustic transducers and the digital downlink and uplink signals may be accomplished by an audio codec 22. The acoustic transducers include an earpiece speaker (also referred to as a receiver) which may be the speaker 5, a loud speaker or speaker phone (not shown), one or more microphones including the talker microphone 6 that are intended to pick up the near-end user's speech primarily, a secondary microphone such as reference microphone 2 that is primarily intended to pick up the ambient or background sound, and the error microphone 3. The audio codec 22 may interface with the ANC processor 1 as shown, in that it outputs or provides the digital audio signals of reference microphone 2 and the error microphone 3 to the ANC processor 1, while receiving the anti-noise signal from the ANC processor 1. The audio codec 22 may then mix the anti-noise signal with the downlink audio (coming from the downlink audio signal processing chain) prior to driving a power amplifier that in turn drives the speaker 5.
The codec 22 may also provide coding and decoding functions for preparing any data that may need to be transmitted out of the mobile device 12 through a peripheral device connector such as a USB port (not shown), as well as data that is received into the mobile device 12 through that connector. The connector may be a conventional docking connector that is used to perform a docking function that synchronizes the user's personal data stored in the memory 28 with the user's personal data stored in the memory of an external computing system such as a desktop or laptop computer.
Still referring to
Various types of audio processing functions may be implemented in the downlink and uplink signal processing paths. The downlink signal path receives a downlink digital signal from either the baseband processor (and speech codec 14 in particular) in the case of a cellular network call, or the applications processor 19 in the case of a WLAN/VoIP call. The signal is buffered and is then subjected to various functions, which are also referred to here as a chain or sequence of functions. These functions are implemented by downlink processing blocks or audio signal processors that may include, one or more of the following which operate upon the downlink audio data stream or sequence: a noise suppressor, a voice equalizer, an automatic gain control unit, a compressor or limiter, and a side tone mixer.
The uplink signal path of the audio signal processor passes through a chain of several processors that may include an acoustic echo canceller, an automatic gain control block, an equalizer, a compander or expander, and an ambient noise suppressor. The latter is to reduce the amount of background or ambient sound that is in the talker signal coming from the primary microphone 6, using, for instance, the ambient sound signal picked up by a secondary microphone (e.g., reference microphone 2). Examples of ambient noise suppression algorithms are the spectral subtraction (frequency domain) technique where the frequency spectrum of the audio signal from the primary microphone 8 is analyzed to detect and then suppress what appear to be noise components, and the two microphone algorithm (referring to at least two microphones being used to detect a sound pressure difference between the microphones and infer that such is produced by noise rather than speech of the near-end user.
As explained above, an embodiment of the invention may be a machine-readable medium (such as microelectronic memory) having stored thereon instructions, which program one or more data processing components (generically referred to here as a “processor”) to perform the digital audio processing operations described above in connection with the ANC processor 1 including noise and signal strength measurement, filtering, mixing, adding, inversion, comparisons, and decision making. In other embodiments, some of these operations might be performed by specific hardware components that contain hardwired logic (e.g., dedicated digital filter blocks and hardwired state machines). Those operations might alternatively be performed by any combination of programmed data processing components and fixed hardwired circuit components.
While certain embodiments have been described and shown in the accompanying drawings, it is to be understood that such embodiments are merely illustrative of and not restrictive on the broad invention, and that the invention is not limited to the specific constructions and arrangements shown and described, since various other modifications may occur to those of ordinary skill in the art. The description is thus to be regarded as illustrative instead of limiting.
This application claims the benefit of the earlier filing date of provisional application No. 61/699,129, filed Sep. 10, 2012, entitled “Prevention of ANC Instability in the Presence of Low Frequency Noise”.
Number | Date | Country | |
---|---|---|---|
61699129 | Sep 2012 | US |