Patent Publication Number: US-6700976-B2

Title: Noise canceler system with adaptive cross-talk filters

Description:
BACKGROUND AND PRIOR ART 
     This invention relates to a system for noise suppression, particularly a noise canceler capable of cancelling background noise in a voice signal that is intermingled with noise, an accompanying method and a transceiver. 
     In many cases, noise corrupts a voice (speech) signal and hence the quality of recognition of the voice signal significantly. An example for such noise is background noise intermingled with the voice signal acquired by a microphone, a hand-free phone, a handset or the like. 
     It is important to recognize voice in a noisy environment, e.g. a construction site, a sport club, a Karaoke room, a hands-free communication system in a vehicle, especially a car, a helicopter, a tank or the like. Furthermore, noise suppression is useful in a live reporting system, a public addressing system or the like. 
     The recognition of voice can be done by an automatic voice recognition system or by at least one human listener. 
     The undesirable background noise can be of different sources. For example, making telephone calls out of a driving car, the driving noise, especially the noise of the engine, is a dynamically varying kind of noise that results in poor recognition of the voice, particularly in a hands-free speaking environment of the car. The addressee permanently hears a contaminated acoustic signal, in which the voice of the driver is included but difficult to understand. As a consequence, the driver has to speak up or take the handset of the telephone, which binds his attention to the handset and not the traffic—a very undesirable effect. 
     Moreover, there are lots of sites which need better recognition of voice and/or better understanding because of a noisy background. Some sites, additional to the above mentioned scenarios, are: airplanes, helicopters, airports, trains, buses, train stations, bus stops, construction sites, highways, streets or the like. 
     In [1] a concept and basic approach for adaptive noise cancellation are given. It can be used to eliminate background noise and improve a signal-to-noise-ratio (SNR). Therefore, a main input containing a corrupted signal and a reference input containing noise correlated in some unknown way with the primary noise are used. This reference input is adaptively filtered and subtracted from the main input to obtain the signal estimate. Adaptive filtering before subtraction allows the treatment of inputs that are deterministic or stochastic, stationary or time variable. Wiener solutions are developed to describe asymptotic adaptive performance and output SNR for stationary stochastic inputs, including single and multiple reference inputs. These solutions show that, when the reference input is free of signal and certain other conditions are met, noise in the main input can be essentially eliminated without signal distortion. In this case, the canceler behaves as a linear, time-invariant system, with the adaptive filter converging on a dynamic rather than a static solution. 
     A kind of adaptive noise canceler with adaptive cross-talk filters can be found in some articles and patents. [1] is used as a basis for improvement to eliminate cross-talk between voice and noise signals from a main input and a reference input (see [2], [3] and [4] for further details). 
     In [5] a different configuration of a cross-talk adaptive noise canceler is developed by splitting the adaptive cross-talk filter into a pre-filter section and an adaptive filter section. 
     Document [6] discloses a noise canceler utilizing four adaptive filters and a signal-to-noise power ratio estimator to do cross-talk noise cancellation. Furthermore, adjustment of the step sizes of the two main adaptive cross-talk filters is provided to incorporate a better tracking ability while the wanted voice signal does not exist. On the other hand, a smaller residual noise is achieved while the wanted voice signal is present. 
     FIG. 1 shows a noise canceler as disclosed in [6]. This noise canceler includes a main input  1  (first microphone) to obtain a main signal x 1 ( n ), a reference input  2  (second microphone) to obtain a reference signal x 2 ( n ), a signal output  5 , adaptive filters  3  and  6 , adders  4  and  7 , delay circuits  8  and  9 , a signal-to-noise power ratio estimator  10  and a step size output circuit  11 . The signal-to-noise power ratio estimator  10  is made up of adaptive filters  12  and  13 , adders  14  and  15 , power mean circuits  16 ,  17 ,  18  and  19 , and Dividers  20  and  21 . 
     The main signal x 1 ( n ) is delayed by the delay circuit  8  by D samples to turn out a delayed main signal. This delayed main signal is applied to the subtracter  4 . On the other hand, the reference signal x 2 ( n ) is delayed by the delay circuit  9  by D samples to turn out a delayed reference signal that is applied to the subtracter  7 . The adaptive filter  3  operates to estimate a noise signal included in the main signal x 1 ( n ) while the adaptive filter  6  operates to estimate a desired signal included in the reference signal x 2 ( n ). To allow the filter  3  to estimate the noise signal y 1 ( n ), the desired signal y 2 ( n ) estimated by filter  6  is subtracted from the reference signal x 2 ( n ) by the subtracter  7 , and the resulting noise signal e 2 ( n ) is input to the filter  3 . Likewise, the noise signal y 1 ( n ) estimated by the filter  3  is subtracted from the main signal x 1 ( n ), and the resulting desired signal e 1 ( n ) is input to filter  6 . For this purpose, the two filters  3  and  6  are cross-coupled, as illustrated. 
     Now, for the adaptive filter  3  to estimate the noise signal y 1 ( n ) in the main signal accurately, it is necessary to increase the amount of updating of the filter coefficient when the desired signal of the main signal obstructing the estimation is smaller than the noise signal to be estimated. Conversely, when the desired signal of the main signal is greater than the noise signal, it is necessary to reduce the above amount because the signal obstructing the estimation is greater than the noise signal. 
     On the other hand, for the adaptive filter  6  to estimate the desired signal of the reference signal accurately, it is necessary to increase the amount of updating of the filter coefficient when the noise signal contained in the reference signal obstructing the estimation is smaller than the desired signal. Conversely, when the noise signal of the reference signal is greater than the desired signal, it is necessary to reduce the above amount because the signal obstructing the estimation is greater than the desired signal. 
     The coefficient for each adaptive filter can be controlled to meet the above requirement by controlling the step size of the adaptive filters. 
     It is a significant disadvantage of the system disclosed in [6] that the noise canceler as shown in FIG. 1 comprises a signal-to-noise power ratio estimator  10  with two additional adaptive filters  12  and  13 . The computations of the noise canceler are increased due to these filters  12  and  13 . Moreover, the adaptive filters  12  and  13  embody fixed step sizes affecting an inflexible voice and noise estimation. 
     SUMMARY OF THE INVENTION 
     It is an object of the present invention to provide an acoustic noise canceler to be able to achieve a good noise cancellation with reduced computational effort. 
     Furthermore, it is an object of the invention to provide a noise suppression system and an accompanying method. 
     More specifically, it is an object of the invention to provide an adaptive cross-talk noise canceler which comprises two cross-coupled adaptive filters with adjustable step sizes for updating the coefficients of the filters. 
     Other objects, features and advantages according to the present invention will be presented in the following detailed description of the illustrated embodiments when read in conjunction with the accompanying drawings. 
     These objects of the present invention are achieved by the features of the independent claims. Additional features result from the dependent claims. 
     A noise canceler of the present invention is composed of a main signal input, a reference signal input, a signal output, a voice detection circuitry, a step decision circuitry and two adaptive filters. 
     The main input receives a main signal which is a voice signal (speech signal) contaminated by noise. The reference input receives a reference signal which is a noise intermingled by cross-talk voice signal (speech signal). The signal output sends out the voice signal with suppressed noise. Further processing might be provided as an automatic voice recognition system. Alternatively, the human listener is the recipient of the noise suppressed voice signal. 
     The Voice Detection Circuitry detects whether or not voice signal is present. A measurement regarding to the voice signal is obtained based on a certain criterion (either power mean or cross-correlation). The presence of voice can be measured as a comparison of the value of that measurement with a predefined threshold value. Then the comparison results are used to determine the presence of the voice signal. The mechanism about the measurement and comparison will be described in detail latter. 
     The Step Size Decision Circuitry decides about the size of the steps that should be used for the next update of the two adaptive filters. The first adaptive filter  3  estimates the noise which is used to cancel the noise contained in the main signal. The second adaptive filter  6  estimates the voice signal which is used to remove the voice signal contained in the reference signal. 
     It is another embodiment of the present invention that the described system is a transceiver. 
     It is yet another embodiment of the present invention to provide a method for noise suppression to be executed on any of the above described systems. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Examples of the present invention will be described in detail in view of the following drawings. 
     FIG. 1 shows a block diagram of the a noise canceler (prior art); 
     FIG. 2 illustrates a system for noise suppression; 
     FIG. 3 illustrates a first energy based voice detection circuit; 
     FIG. 4 illustrates a second energy based voice detection circuit; 
     FIG. 5 illustrates a first cross-correlation based voice detection circuit; 
     FIG. 6 illustrates a second cross-correlation based voice detection circuit; 
     FIG. 7 illustrates a Step Size Decision Circuitry. 
    
    
     DETAILED DESCRIPTION OF THE DRAWINGS 
     FIG. 2 illustrates a block diagram of a system for noise suppression (hereafter referred to as a noise canceler) of the present invention. The noise canceler includes a main input  1  (first microphone), a reference input  2  (second microphone), a signal output  5 , adaptive filters  3  and  6 , adders  4  and  7 , a Voice Detection Circuitry  24  and a Step Size Decision Circuitry  29 . It has to be noted that “macro-units” such as the Voice Detection Circuitry  24  or the Step Size circuitry  29  need not to be formed as separate circuits. Each macro-unit is provided to logically separate functional circuits for the purpose of clarity. 
     A main signal x 1 ( n ) is applied to the adder  4 , and a reference signal x 2 ( n ) is applied to the adder  7 . 
     The adaptive filter  3  is used to estimate a first noise signal y 1 ( n ) included in the main signal x 1 ( n ) while the adaptive filter  6  is used to estimate a cross-talked voice signal (=filtered voice signal) y 2 ( n ) included in the reference signal x 2 ( n ). The adder  4  subtracts the first noise signal y 1 ( n ) of the adaptive filter  3  from the main signal x 1 ( n ) to get a noise suppressed voice signal e 1 ( n ). The adder  7  subtracts the output signal y 2 ( n ) of the adaptive filter  6  from the reference signal x 2 ( n ) to obtain a second noise signal e 2 ( n ). 
     The adaptive filter  3  uses the second noise signal e 2 ( n ) as its reference, the noise suppressed signal e 1 ( n ) as its error signal and a signal ua(n) as its step size to update its coefficients. 
     Similarly, the adaptive filter  6  uses the noise suppressed signal e 1 ( n ) as its reference, the second noise signal e 2 ( n ) as its error signal and a signal ub(n) as its step size to update its coefficients. 
     The signal ua(n) and the signal ub(n) are generated by the Step Size Decision Circuitry  29  that will be explained further below. 
     The two adaptive filters  3  and  6  are cross-coupled, as shown in FIG.  2 . After the adaptive filters  3  and  6  converge, the adaptive filter  3  can estimate the first noise signal y 1 ( n ) contained in the main signal x 1 ( n ) accurately and the adaptive filter  6  can estimate the filtered voice signal y 2 ( n ) in the reference signal x 2 ( n ) accurately. As a result, the signal e 1 ( n ) is the voice signal with suppressed noise and embodies the output of the noise canceler. 
     If there is no control of the update step sizes ua(n) and ub(n), the existence of voice signal will affect the performance of the system. Conceptually, it is necessary for the adaptive filter  3  to increase its step size when the voice signal does not exist. Conversely, when the voice signal is present, it is necessary for the adaptive filter  3  to reduce its step size. On the other hand, the operation for adaptive filter  6  is just the opposite. It needs to increase its step size when the voice signal exists. Conversely, when the voice signal is not present, it is necessary to reduce its step size. To achieve this, the Voice Detection Circuitry  24  and a the Step Size Decision Circuitry  29  provide the step sizes ua(n+1) and ub(n+1) for the next updates of the two adaptive filters  3  and  6 , respectively. The Voice Detection Circuitry  24  comprises energy based voice detection circuits  25  and  26 , and cross-correlation based voice detection circuits  27  and  28  as described in detail below. 
     FIG. 3 shows the energy based voice detection circuit  25  for the main signal comprising Power Calculators  250  and  251 , Smoothers  253  and  254 , a Divider  255 , a Threshold Calculator  256 , a Comparer  257 , a Time Counter  258  and a Decision Circuit  259 . 
     The Power Calculators  250  and  251  receive the main signal x 1 ( n ) and the first noise signal y 1 ( n ) from the adaptive filter  3 , respectively, and output the power signals pa 1 ( n ) and pa 2 ( n ), respectively. The power signals pa 1 ( n ) and pa 2 ( n ) are sent to the Smoothers  253  and  254 , respectively, to output smoothed power signals spa 1 ( n ) and spa 2 ( n ). The Divider  255  receives the signals spa 1 ( n ) and spa 2 ( n ), respectively, and divides spa 1 ( n ) by spa 2 ( n ) to obtain a quotient signal dva(n). This quotient signal dva(n) is compared with a threshold Ta from the Threshold Calculator  256  at the Comparer  257 . The Comparer  257  evaluates a comparison result ca(n): 
     ca(n)=0 for dva(n)&lt;Ta, i.e. voice signal is not present; 
     ca(n)=1 for dva(n)≧Ta, i.e. voice signal exists. 
     The Time Counter  258  detects whether the value (0 or 1) of the comparison result ca(n) is kept unchanged consecutively over a certain period T of time and outputs a signal tha(n): 
     tha(n)=0 for ca(n) is changed during period T; 
     tha(n)=1 for ca(n) is kept unchanged during period T. 
     The Decision Circuit  259  uses the signal tha(n) from the Time Counter  258  and the comparison result ca(n) from the Comparer  257  to evaluate the first decision signal q 1 ( n ) to be input to the Step Size Decision Circuitry  29 . The values of this first decision signal q 1 ( n ) are as follows: 
     q 1 ( n )=0 (i.e. voice signal is not present) 
     q 1 ( n )=1 (i.e. voice signal exists) 
     The operation of the Decision Circuit  259  is described in Equation (1), i.e., 
     
       
           q   1 ( n− 1), if  tha ( n )=0;  
       
     
     
       
           q   1 ( n )=1, if  tha ( n )=1 and  ca ( n )=1;  
       
     
     
       
         0, if  tha ( n )=1 and  ca ( n )=0.  (1)  
       
     
     Similarly, as shown in FIG. 4, the energy based voice detection circuit  26  for the reference signal x 2 ( n ) consists of Power Calculators  260  and  261 , Smoothers  263  and  264 , a Divider  265 , a Threshold Calculator  266 , a Comparer  267 , a Time Counter  268  and a Decision Circuit  269 . 
     The Power Calculators  260  and  261  receive the reference signal x 2 ( n ) and the filtered voice signal y 2 ( n ) from the adaptive filter  6 , respectively, and output the power signals pb 1 ( n ) and pb 2 ( n ), respectively. The power signals pb 1 ( n ) and pb 2 ( n ) are sent to the Smoothers  263  and  264 , respectively, to output the smoothed power signals spb 1 ( n ) and spb 2 ( n ). The Divider  265  receives the signals spb 1 ( n ) and spb 2 ( n ), respectively, and divides spb 1 ( n ) by spb 2 ( n ) to obtain a quotient signal dvb(n). This quotient signal dvb(n) is compared with a threshold Tb from the Threshold Calculator  266  at the Comparer  267 . The Comparer  267  evaluates a comparison result cb(n): 
     cb(n)=0 for dvb(n)&lt;Tb, i.e. voice signal exists; 
     cn(n)=1 for dvb(n)≧Tb, i.e. voice signal is not present. 
     The Time Counter  268  detects whether the value (0 or 1) of the comparison result cb(n) is kept unchanged consecutively over a certain period T of time and outputs a signal thb(n): 
     thb(n)=0 for cb(n) is changed during period T; 
     thb(n)=1 for cb(n) is kept unchanged during period T. 
     The Decision Circuit  269  uses the signal thb(n) from the Time Counter  268  and the comparison result cb(n) from the Comparer  267  to evaluate the second decision signal q 2 ( n ) to be input to the Step Size Decision Circuitry  29 . The values of this second decision signal q 2 ( n ) are as follows: 
     q 2 ( n )=0 (i.e. voice signal is not present) 
     q 2 ( n )=1 (i.e. voice signal exists) 
     The operation of the Decision Circuit  269  is described in Equation (2), i.e., 
     
       
           q   2 ( n− 1), if  thb ( n )=0;  
       
     
     
       
           q   2 ( n )=1, if  thb ( n )=1 and  cb ( n )=0;  
       
     
     
       
         0, if  thb ( n )=1 and  cb ( n )=1.  (2)  
       
     
     Please note that q 2 ( n )=1 if cb(n)=0 and q 2 ( n )=0 if cb(n)=1 under the condition of thb(n)=1. This is different from Equation (1). 
     FIG. 5 illustrates the cross-correlation based voice detection circuit  27  for the main signal x 1 ( n ) comprising a Cross-Correlation Calculator  270 , a Normalization Circuit  271 , a Threshold Calculator  272 , a Comparer  273 , a Time Counter  274  and a Decision Circuit  275 . 
     The Cross-Correlation Calculator  270  receives the main signal x 1 ( n ) and the output signal y 1 ( n ) from the adaptive filter  3 , and computes their cross-correlation r 1 ( n ). The signal r 1 ( n ) is input to the Normalization Circuit  271  to do normalization and hence obtain a normalized signal c 1 ( n ). This signal c 1 ( n ) is sent to the Comparer  273  to be compared with a threshold Tc from the Threshold Calculator  272 . The Comparer  272  outputs a comparison result cc(n): 
     cc(n)=0 for c 1 ( n )&lt;Tc, i.e. voice signal does not exist; 
     cc(n)=1 for c 1 ( n )≧Tc, i.e. voice signal is present. 
     The Time Counter  274  detects whether the value (0 or 1) of the comparison result cc(n) is kept unchanged consecutively over a certain period T of time and outputs a signal thc(n): 
     thc(n)=0 for cc(n) is changed during period T; 
     thc(n)=1 for cc(n) is kept unchanged during period T. 
     The Decision Circuit  275  uses the signal thc(n) from the Time Counter  274  and the comparison result cc(n) from the Comparer  273  to evaluate the third decision signal q 3 ( n ) to be input for the Step Size Decision Circuitry  29 . The values of this third decision signal are as follows: 
     q 3 ( n )=0 (i.e. voice signal is not present); 
     q 3 ( n )=1 (i.e. voice signal exists). 
     The operation of the Decision Circuit  273  is described in Equation (3), i.e., 
     
       
           q   3 ( n− 1), if  thc ( n )=0;  
       
     
     
       
           q   3 ( n )=1, if  thc ( n )=1 and  cc ( n )=1;  
       
     
     
       
         0, if  thc ( n )=1 and  cc ( n )=0.  (3)  
       
     
     Similarly, FIG. 6 shows the cross-correlation based voice detection circuit  28  for the reference signal x 2 ( n ) comprising a Cross-Correlation Calculator  280 , a Normalization Circuit  281 , a Threshold Calculator  282 , a Comparer  283 , a Time Counter  284  and a Decision Circuit  285 . The Cross-Correlation Calculator  280  receives the reference signal x 2 ( n ) and the filtered voice signal y 2 ( n ) from the adaptive filter  6  and computes their cross-correlation r 2 ( n ). The signal r 2 ( n ) is input to the Normalization Circuit  281  to do normalization and hence obtain a normalized signal c 2 ( n ). This signal c 2 ( n ) is sent to the Comparer  283  to be compared with a threshold Td from the Threshold Calculator  282 . The Comparer  282  outputs a comparison result cd(n): 
     cd(n)=0 for c2(n)&lt;Td, i.e. voice signal exists; 
     cd(n)=1 for c2(n)≧Td, i.e. voice signal is not present. 
     The Time Counter  284  detects whether the value (0 or 1) of the comparison result cd(n) is kept unchanged consecutively over a certain period T of time and outputs a signal thd(n): 
     thc(n)=0 for cd(n) is changed during the period T; 
     thc(n)=1 for cd(n) is kept unchanged during the period T. 
     The Decision Circuit  285  uses the signal thd(n) from the Time Counter  284  and the comparison result cd(n) from the Comparer  283  to evaluate the forth decision signal q 4 ( n ) to be input for the Step Size Decision Circuitry  29 . The values of this forth decision signal q 4 ( n ) are as follows: 
     q 4 ( n )=0 (i.e. voice signal is not present); 
     q 4 ( n )=1 (i.e. voice signal exists). 
     The operation of the Decision Circuit  283  is described in Equation (4), i.e., 
     
       
           q   4 ( n− 1), if  thd ( n )=0;  
       
     
     
       
           q   4 ( n )=1, if  thd ( n )=1 and  cd ( n )=0;  
       
     
     
       
         0, if  thd ( n )=1 and  cd ( n )=1.  (4)  
       
     
     Please note that q 4 ( n )=1 if cd(n)=0 and q 4 ( n )=0 if cd(n)=1 under the condition of thd(n)=1. This is different from Equation (4). 
     FIG. 7 shows the Step Size Decision Circuit  29  comprising a Voice Energy Decision Circuit  290 , a Voice Cross-Correlation Decision Circuit  291 , a Voice Detection Circuit  292  and a Step Size Output Circuit  293 . 
     The Voice Energy Decision Circuit  290  receives the first decision signal q 1 ( n ) and the second decision signal q 2 ( n ) to evaluate the voice detection result based on energy and outputs a decision signal za(n) which has three possible values {0, 1, 2}. The decision of the Voice Energy Decision Circuit  290  is described in Equation (5), i.e.,                    0   ,               if                   q1        (   n   )         =       0                 and                   q2        (   n   )         =   0       ;                   za        (   n   )       =   1     ,               if                   q1        (   n   )         =       1                 or                   q2        (   n   )         =   1       ;               2   ,             if                   q1        (   n   )         =       1                 and                   q2        (   n   )         =   1.                   (   5   )                         
     Likewise, the Voice Cross-Correlation Decision Circuit  291  receives the third decision signal q 3 ( n ) and the forth decision signal q 4 ( n ) to evaluate the voice detection result based on cross-correlation and outputs a decision signal zb(n) which has three possible values {0, 1, 2}. The decision of the Voice Cross-Correlation Decision Circuit  291  is described in Equation (6), i.e.,                    0   ,               if                   q3        (   n   )         =       0                 and                   q4        (   n   )         =   0       ;                   zb        (   n   )       =   1     ,               if                   q3        (   n   )         =       1                 or                   q4        (   n   )         =   1       ;               2   ,             if                   q3        (   n   )         =       1                 and                   q4        (   n   )         =   1.                   (   6   )                         
     The Voice Detection Circuit  292  receives the decision signals za(n) and zb(n) to make the final decision of voice existence and outputs a decision signal zo(n) which has six possible values {0, 1, 2, 3, 4, 5}. The decision of the Voice Detection Circuit  292  is described in Equation (7), i.e.,                    0   ,               if                   za        (   n   )         =       0                 and                   zb        (   n   )         =   0       ;               1   ,               if                   za        (   n   )         =       1                 and                   zb        (   n   )         =   0       ,         or                   za        (   n   )         =       0                 and                   zb        (   n   )         =   1       ;                     zo        (   n   )       =   2     ,               if                   za        (   n   )         =       1                 and                   zb        (   n   )         =   1       ;               3   ,               if                   za        (   n   )         =       2                 and                   zb        (   n   )         =   0       ,         or                   za        (   n   )         =       0                 and                   zb        (   n   )         =   2       ;                 4   ,               if                   za        (   n   )         =       2                 and                   zb        (   n   )         =   1       ,         or                   za        (   n   )         =       1                 and                   zb        (   n   )         =   2       ;                 5   ,             if                   za        (   n   )         =       2                 and                   zb        (   n   )         =   2.                   (   7   )                         
     The Step Size Output Circuit  293  receives the signal zo(n) and outputs the step sizes ua(n+1) and ub(n+1) for the next updates of the two adaptive filters  3  and  6 , respectively. There are six values for each step size, i.e., 
     
       
           ua   0 &gt; ua   1 &gt; ua   2 &gt; ua   3 &gt; ua   4 &gt; ua   5  for  ua ( n+ 1)  (8) 
       
     
     and 
     
       
           ub   0 &gt; ub   1 &gt; ub   2 &gt; ub   3 &gt; ub   4 &gt; ub   5  for  ub ( n+ 1).  (9) 
       
     
     The signal zo(n) is input to a Time Counter  294  which detects whether the value of zo(n) is kept unchanged consecutively over a certain period Tp of time and hence outputs a signal tho(n): 
     tho(n)=0 for zo(n) is changed during period Tp; 
     tho(n)=1 for zo(n) is kept unchanged during period Tp. 
     A Transfer Circuit  295  receives the signal tho(n) from the Time Counter  294  and the output signal zo(n) from the Voice Detection Circuit  292  and outputs two step sizes ua(n+1) and ub(n+1). The operation of the Transfer Circuit  295  is described hereafter. If the signal tho(n) equals 0, no matter what the value of signal zo(n) is, the step sizes ua(n+1) and ub(n+1) keep the previous values, i.e. 
     
       
           za ( n+ 1)= za ( n ),  
       
     
     
       
         if  tho   
       
     
     
       
         ( n )=0; 
       
     
     and 
     
       
           zb ( n+ 1)= zb ( n ),  
       
     
     
       
         if  tho ( n )=0; 
       
     
     Otherwise, if the signal tho(n) equals 1, the step sizes ua(n+1) and ub(n+1) are selected as shown in the following table: 
     
       
         
           
               
               
               
             
               
                   
               
               
                 zo(n) 
                 ua(n + 1) 
                 ub(n + 1) 
               
               
                   
               
             
            
               
                 0 
                 ua5 
                 ub0 
               
               
                 1 
                 ua4 
                 ub1 
               
               
                 2 
                 ua3 
                 ub2 
               
               
                 3 
                 ua2 
                 ub3 
               
               
                 4 
                 ua1 
                 ub4 
               
               
                 5 
                 ua0 
                 ub5 
               
               
                   
               
            
           
         
       
     
     The output step sizes ua(n+1) and ub(n+1) are used to update the adaptive filters  3  and  6 , respectively, at the next sample. 
     BIBLIOGRAPHY 
     [1] Widrow et al.: “Adaptive Noise Cancelling: Principles and Applications”; Proc. of IEEE, Vol.63, No.12, December 1975, pp.1692-1719. 
     [2] Zinser et al.: “Some Experimental and Theoretical Results Using a new Adaptive Filter Structure for Noise Cancellation in the Presence of Crosstalk”, Proc. of IEEE Intern. Conference on Acoustics, Speech and Signal Processing, Tampa, Fla., 1985, pp.32.6.1-4. 
     [3] Michandani et al.: “Performance Characteristics of a Hardware Implementation of the Cross-Talk Resistant Adaptive Noise Canceler”, Proc. of IEEE Intern. Converence on Acoustics, Speech and Signal Processing, Tokyo, Japan, 1986, pp.93-96. 
     [4] U.S. Pat. No. 4,649,505 Zinser, Jr. et al.: “Two-Input Crosstalk-Resistant Adaptive Noise Canceler”. 
     [5] U.S. Pat. No. 5,740,256 Da Costa et al.: “Adaptive Noise Cancelling Arrangement, a Noise Reduction System and a Transceiver”. 
     [6] U.S. Pat. No. 5,978,824 Ikeda: “Noise Canceler”.