`Miyamoto et al.
`
`[11] Patent Number:
`[45] Date of Patent:
`
`4,894,820
`Jan. 16, 1990
`
`[75]
`
`[54] DOUBLE-TALK DETECTION IN AN ECHO
`CANCELLER
`Inventors: Ryoichi Miyamoto; Yoshio Itoh;
`Yoshikazu Nakano; Mitsuo
`Tsujikado; Kenichiro Hosoda, all of
`Tokyo, Japan
`[73] Assignee: Old Electric Industry Co., Ltd.,
`Tokyo, Japan
`[21] Appl. No.: 171,487
`[22] Filed:
`Mar. 21, 1988
`[30]
`Foreign Application Priority Data
`Mar. 24, 1987 [JP)
`Japan .................................. 62-69589
`Mar. 26, 1987 [JP)
`Japan .................................. 62-72748
`Jun. 30, 1987 [JP)
`Japan ................................ 62-163654
`[51]
`Int. Cl.4 .................................... ; .......... H04B 3/23
`[52] U.S. Cl ..................................... 370/32.1; 379/410
`[58] Field of Search ............... 379/388, 389, 390, 406,
`379/407,410,411; 370/32, 32.1; 341/75
`References Cited
`u.s. PATENT DOCUMENTS
`3,499,999 3/1970 Sondhi ............................ 379/411 X
`3,699,271 10/1972 Berkley et al ..
`4,426,729 1/1984 Gritton ..............................•... 381/41
`4,626,825 12/1986 Burleson et al ....................... 341/75
`4,712,235 12/1987 Jones, Jr ............................. 379/410
`
`[56]
`
`FOREIGN PATENT DOCUMENTS
`0053202 6/1982 European Pat. Off ..
`0182096 5/1986 European Pat. Off ..
`219837 12/1983 Japan.
`
`56526 3/1986 Japan.
`2075313 11/1981 Unitc:d Kingdom.
`
`OTHER PUBLICATIONS
`Hayashi et al., "Echo Canceller With Double Talk
`Controller", 1983, IEEE, Global com. 1983, Session
`40.6, pp. 1389-1393.
`"Applications of Digital Signal Processing", IECE of
`Japan, Third Edition, Jul. 10th, 1983, pp. 212-221.
`Primary Examiner-Jin F. Ng
`Assistant Examiner-Randall S. Vaas
`Attorney, Agent, or Finn-Spencer & Frank
`[57]
`ABSTRACf
`In a method and apparatus for double-talk detection in
`an echo canceller that uses an adaptive digital filter to
`estimate, from a received signal and a transmitted signal
`to which an echo signal of the received signal is added,
`the characteristics of an echo path and generate a simu(cid:173)
`lated echo signal, and subtracts this echo replica from
`the transmitted signal in order to transmit a residual
`signal from which the echo signal has been removed,
`and which during the course of this operation detects
`the double-talk state according to a double-talk detec(cid:173)
`tion threshold and inhibits the estimation of adaptive
`digital filter; adaptive estimation and the double-talk
`detection threshold are controlled in accordance with
`the state of system e.g., whether it is in the single-talk
`state, whether the echo signal is active or idle, whether
`there are fluctuations in the echo path, or whether
`howling is taking place.
`
`4 Claims, 15 Drawing Sheets
`
`S34
`
`INH
`
`THRESHOLD
`CONTROL
`SECTION
`
`31
`
`XTH
`
`RTL607_1028-0001
`
`Realtek 607 Ex. 1028
`
`
`
`~ =
`~ -..
`
`-..
`.&;;..
`
`=-a
`
`\fl
`
`UI
`I-l
`9,
`I-l
`
`N
`
`B
`
`L ________________________ ~
`
`12
`
`Res( k} ~Sin(k)T I Sin
`
`Res! LJ
`
`16, ~_
`
`14
`
`Sin(k)
`
`ADAPTIVE
`
`(ADF)
`DETECTOR
`r-IFILTER
`DOUBLE-TALK IINHJDlGITAL
`
`~
`
`I-l
`
`3
`
`C
`
`15
`
`17
`
`13
`
`11
`
`~
`
`~
`
`0'\
`I-l
`
`~
`
`~ t-+-
`~ ......
`•
`rJ1
`~
`
`IoIA1 i Rout,
`
`A \ Rin: IAIDl Rin (k)
`2
`
`I
`I
`I
`I--------------~---------I
`
`I
`I(cid:173)
`-' 10:ECHO CANCELLER
`
`PRIOR ART
`FIG .1
`
`RTL607_1028-0002
`
`
`
`820
`
`816
`
`Sin(k)
`
`Res(k)
`
`SIGNAL
`TRANSMITTED'L-----t
`
`Sout
`
`824
`
`o T 0 I SIGNAL --I A 0 F
`
`INH
`
`i CONTROL
`
`AOF
`
`"
`
`I 812
`
`814
`
`822
`
`;800:ECHO CANCELLER
`
`PRIOR ART
`FIG.2
`
`SIGNAL
`RECEIVED L...----I
`
`Rin(k)
`
`Rin
`
`818
`
`RTL607_1028-0003
`
`
`
`~ =
`~
`
`....
`.&;.
`
`Ul
`~
`~
`w
`m.
`~
`
`924
`925
`
`I +6HO 1922
`I
`
`!
`921
`
`IPEAK VALUEI-L_----.J
`
`--IS ·~9110ETECTOR k923
`
`I
`
`: 917;
`
`.IA
`
`A~B?II I
`
`)~7rB : lB
`/+ }A ~H +60 I
`
`, A
`
`913 914
`
`(
`
`920
`
`~ t-+-
`
`•
`rJ).
`~
`
`~ t-+--~
`
`~
`...
`Q\
`~
`
`~
`
`iL
`
`INH
`
`AIA~S
`
`Le(k)
`
`916
`
`905
`
`902
`
`PRIOR ART
`FIG.3
`
`x(k)
`
`e(k)
`
`y(k)
`
`RTL607_1028-0004
`
`
`
`~
`-... i -...
`
`.&;0.
`
`(,J)
`~
`
`~
`
`i sa ...
`
`~
`
`~
`-.
`0\
`~
`
`~
`
`3J
`
`INH
`
`I
`
`J.;J-.J
`
`INH
`
`COMPARATOR
`
`r-
`
`TRIM(k)
`
`FLG(k)
`
`34
`
`?2
`
`S32
`
`INH
`
`S34
`
`THRESHOLD -
`
`t
`SECTION
`L.. CONTROL
`
`3/
`
`Acoms(k)
`
`;
`
`+
`
`"Y
`
`26
`
`CL1
`
`COMPARATOR
`
`VTH-
`
`
`
`13
`
`CL2
`
`XTH-COMPARATOR
`
`,
`
`IPsin(k) I LOGARITHMIO ~in(k)
`
`-ICONVERTER
`
`128
`
`DETECTORI
`IPOWER
`
`Sin(k)
`
`(25
`
`IPrin(k) I LOGARITHMIO I LrinCk) .. -+ ; + --
`
`IPres(k) ILOGARITHMIO ILres(k)
`
`I
`
`lCONVERTER
`
`Res(k
`
`f27
`
`I
`
`ICONVERTER
`
`DETECTORI
`
`DETECTOR I
`1 POWER
`{24
`Rin(k) 1 POWER
`23
`
`~ ~
`~ .....
`~
`~
`
`FIG.4
`
`RTL607_1028-0005
`
`
`
`=>
`~
`
`~ -.. i -..
`
`Ul
`~
`
`Ul e,
`m.
`ga
`
`~
`
`~
`
`-..
`0\
`~
`
`~ ...... g
`
`.......
`
`~
`~
`
`42
`
`~70c
`
`TRIM(k +1)
`
`L ____________________________ ~
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I-
`~--60
`:
`I
`I
`I
`I
`I
`I
`I
`I -
`I
`I .
`I
`:
`r---------------------------.,
`
`63
`
`+
`+
`
`62
`
`61
`
`64
`
`62
`
`L _____________________ _
`
`1-61
`
`53
`
`54
`
`61
`
`: 70/
`I
`r------------~/-------------i
`
`+ +
`
`+
`
`52
`
`,50 ,-
`
`FIG.5
`
`.. x
`
`51
`
`_J
`I
`I
`I
`I
`I
`i
`: 70b
`
`I
`
`I
`I
`
`FLG(k)
`
`40
`
`Acom5(k)~
`
`RTL607_1028-0006
`
`
`
`u.s. Patent
`
`Jan. 16, 1990
`
`Sheet 6 of 15
`
`4,894,820
`
`FIG.6
`INH ~t,-_______________ _
`
`30
`
`20
`
`10
`
`dB
`
`°0·L------~-----~----
`1.0
`2.0
`TIME
`(sec)
`
`FIG.7
`~t'-__________ ~ ____________ ·LI ____ •
`
`INH
`
`dB
`
`30
`
`20
`
`10
`
`o
`
`DOUBLE-TALK
`UNDETECT
`
`DOUBLE -TALK
`DETECT
`
`-10 ' - - - - - - - -+= - - - - - - - -+ - - - -
`1.0
`2.0
`TIME
`
`(sec)
`
`RTL607_1028-0007
`
`
`
`u.s. Patent
`
`Jan. 16, 1990
`
`Sheet 7 of IS
`
`4,894,820
`
`FIG.8
`
`INH ~ tL-___ -L-______ -L--__ _
`
`ECHO PATH
`FLUCTUA nON
`~
`
`dB
`
`30
`
`20
`
`10
`
`o
`
`ADF
`ADAPTATION
`INHIBIT
`CLEARED
`
`~
`
`-101 - - - - - - - - r - - - - - - - - - - t - - - _
`o
`2
`
`TIME
`
`(sec)
`
`RTL607_1028-0008
`
`
`
`~ =
`.".~
`
`.".,f;a.
`
`"""'" til
`~
`oo
`
`\f1 =-m-
`
`~
`
`"""'" F'
`~
`
`~ .....
`~ .....
`~
`~
`
`41
`
`63
`
`62
`
`FLG(k) ~.(
`61
`
`42
`~ TRIM(kt1)
`
`FIG.9
`
`RTL607_1028-0009
`
`
`
`~ <=
`
`~
`
`~
`
`Ul
`~
`~
`~
`sa
`~
`
`~
`
`'"
`0\
`~
`
`~
`
`-.-1-...~
`
`ADF REGISTER POWER MPOW
`
`I
`
`OTD
`
`l00-L.
`
`r--120
`
`AHD
`
`J3
`
`.COMPARA TOR
`
`Lxth
`
`'110:SIGNAL LEVEL
`
`CIRCUIT
`CALCULATION
`
`\
`
`,If
`
`118
`
`J2
`
`CONTROL
`At
`116
`
`---',
`
`CIRCUIT I-I--J
`
`A t(k) L...---r----
`
`_I
`
`I'tH
`
`COMPARATOR
`
`114
`
`Acom(k)
`
`112
`
`106
`\
`DETECTOR
`POWER ~ 10 Log Pe~e(k)
`
`I
`
`.
`
`P Lx(k)
`
`l
`Log x :
`
`1
`P>c!l<) 0
`
`DETECTOR
`POWER
`
`SIGNAL
`RECEIVED x(k)!
`
`I
`104 I
`---------------,
`
`102
`
`r----
`
`L _____ -,, _______ --__ .J
`108 i
`I
`I
`I
`\
`I r:
`:
`SIGNAL
`RESIDUAL e(k)1
`I I
`I I
`I :
`
`~ foo+.
`~ .......
`~ r.n
`
`FIG.IO
`
`RTL607_1028-0010
`
`
`
`~ =
`
`~ ,..
`QO
`,..rl/;l..
`
`(Jt
`~
`
`9,
`Q
`~
`
`m.
`ga
`
`~
`...
`0'\
`~
`~
`
`~
`
`~ f-Ioo.
`~ f-Ioo.
`•
`rJJ
`~
`
`At CONTROL CIRCUIT BLOCK DIAGRAM
`
`At CON!ROL C IR~~--116
`
`L. '216 ______ _
`
`+
`
`+
`
`-
`
`Z -I J
`
`210
`
`212
`t
`0-64 I-J3
`v 63 J-J2
`0-0 J-JI
`
`~
`
`214
`
`At(k+l )
`
`LIMITER
`
`r
`i
`I
`I"
`
`Acom(k)
`
`I--~/ + ,,+
`
`-
`
`B
`
`A
`
`CIRCUIT
`AVERAGE-VALUE
`
`l
`
`{
`208
`
`206
`
`204
`
`l
`202
`
`J 1 J2
`
`FIG.II
`
`RTL607_1028-0011
`
`
`
`u~s. Patent
`
`Jan. 16, 1990
`
`Sheet 11 of 15
`
`4,894,820
`
`FIG.12
`
`(120 ,-
`. . . ~
`r 502
`2nd-ORDER NON RECURSIVE
`J
`ADAPTIVE PREDICTIVE
`FILTER
`
`.
`
`e(k}
`(Res(k) )
`
`a1(k)
`ci2(k} l04
`
`g(k)
`
`lOG
`
`a1 . a2
`g- COEFFICIENT
`CONTROL CONTROL
`SECTION
`SECTION
`
`a2(k)
`
`g (k)
`
`ADF
`RECEIVED SIGNAL
`REGISTER POWER
`DECISION
`MPOW(k) SECTION
`
`! [508
`, L. ___ .J
`
`RTL607_1028-0012
`
`
`
`u.s. Patent
`
`Jan. 16, 1990
`
`Sheet 12 of 15
`
`4,894,820
`
`FIG.13
`
`(502
`___ .-1.1 __ --60-2 - -_ . ,
`
`e (k)
`(Res(k) )
`
`604
`
`.606
`
`rd (k)
`
`+
`
`614 x-g(k)
`
`616
`
`+
`
`r(k)
`
`612
`
`608
`
`610
`
`L . . - - - - - {x } - - - - . . . . . . J
`
`L. ___ a:2_(_k) _____ .~
`
`t
`
`RTL607_1028-0013
`
`
`
`u.s. Patent
`
`Jan. 16, 1990
`
`Sheet 13 of 15
`
`4,894,820
`
`X(k)
`
`I ..
`
`.,
`
`FIG.14
`
`91
`~
`
`ABSOLUTE - VALUE
`CIRCUIT
`
`92
`~
`INTERVAL
`DETERMINER
`
`JX(k)1
`
`At
`
`93
`J
`PARAMETER
`MEMORY
`
`a~ -b
`
`94:COMPUTATION
`( CIRCUIT
`r------:-,
`1
`951
`x
`!
`1
`";..t
`1
`I
`I
`I
`I
`I
`1
`+
`I
`+ 1
`196
`I
`1
`it
`1
`I
`1
`I
`L ___ ___ J
`
`Lx(k)
`
`RTL607_1028-0014
`
`
`
`<=
`~
`
`! .,.
`". e, ,....
`~ a ,....
`
`Ut
`
`~
`...
`0\
`~ ,....
`
`~ .....
`~ t-+-
`~
`~
`
`IX(k)/
`
`20 "
`
`15
`
`10
`
`5
`
`I
`
`~
`Lx(k) = a IX(k)1 + b i
`IN INTERVAL 1
`LINEAR APPROXIMATION
`
`Lx(k)= aIX(k)/+b
`IN INTERVAL 2
`LINEAR APPROXIMATION
`
`I
`I
`
`I
`1
`I
`
`Lx(k) = a /X(k)1 + b
`IN INTERVAL 3
`LINEAR APPROXIMATION
`
`I
`I
`I
`1
`
`INTERVAL 3
`
`INTERVAL2
`
`Lx (k) t INTERVAL 1
`
`14
`
`I
`I
`I
`I
`I
`"I
`FIG .15
`
`Px(k)=20 LoglolXCk)1
`
`-5
`
`I !
`
`o 1-
`
`5
`
`10
`
`15
`
`20
`
`(dB)
`
`25
`
`RTL607_1028-0015
`
`
`
`i --~ =
`
`,r.
`
`"""'" Ul
`~
`"""'" Ul
`~
`rJ1 =-.
`
`~
`...
`"""'" 0\
`~
`
`~ .......
`~ ......
`~
`~
`
`78 ---90
`66 ---78
`54 ---66
`
`42 --54
`30 ---42
`
`30
`
`18 -
`
`6 -18
`
`74
`62
`50
`38
`26
`
`14
`2
`
`-6 ---6
`
`-6
`
`L x(k)
`VALUE
`LOGARITHM
`
`b
`
`PARAMETER
`
`PARAMETER
`
`INPUT SIGNAL
`
`FIG.16
`
`2 -II
`2-9
`2-7
`2-5
`
`2-3
`
`2 -I
`2
`
`6
`
`a
`
`8192 ---32768
`8192
`2048 -
`512 --2048
`128 ~ 512
`32 ---
`128
`
`32
`8
`
`2
`<
`
`8-----
`2-
`
`0--
`
`>
`
`IX (k)1
`
`8
`7
`6
`5
`
`4
`
`3
`2
`
`1
`
`INTERVAL
`
`RTL607_1028-0016
`
`
`
`1
`
`4,894,820
`
`DOUBLE-TALK DETECfION IN AN ECHO
`CANCELLER
`
`2
`echo signal Sin(k) which it feeds to the subtractor 16.
`The subtractor 16 subtracts the simulated echo signal or
`echo replica signal Sin(k) from the digital echo signal
`Sin(k) and generates the difference as a residual signal
`5 Res(k). The ADF 15 cancels the echo signal Sin so as to
`force this residual signal Res(k) to converge to zero.
`The adaptive estimation function of the ADF 15
`operates normally in the single-talk state in which only
`the received signal Rin is present, but in the double-talk
`state in which there is also a transmitted signal N from
`the local party B, the estimation function of the ADF 15
`is apt to be subverted. A double-talk detector 17 there(cid:173)
`fore compares the level (average voltage, average
`power, peak voltage, or peak power, for example) of the
`residual signal Res(k) with a fixed, internally preset
`double-talk detection threshold, and outputs an inhibit
`signal INH to inhibit the estimation function of the
`ADF 15 when the level of the residual signal Res(k)
`exceeds the double-talk detection threshold. The only
`operation performed by the ADF 15 is then to generate
`the simulated echo signal Sin(k). Thus, the signal N
`transmitted by the local party B and the echo signal Sin
`are converted by the AID converter 12 to a digital
`signal Sin(k)+N(k), but after the subtractor 16 subtracts
`the simulated echo signal Sin(k) to cancel the echo
`signal Sin(k) the residual signal Res(k) consists only of
`the local party B's transmit signal N(k), which is con(cid:173)
`vertedto an analog signal by the DI A converter 14 and
`sent as the transmitted signal Res to the distant party A.
`The double-talk detection threshold in this type of
`double-talk detector 17 is fixed. Accordingly, depend(cid:173)
`ing on the value at which the threshold is fixed, this
`method of controlling the detection of double-talk is
`likely to inhibit the estimation unnecessarily, due for
`example to fluctuations on the echo path e, with atten(cid:173)
`dant reduction in the accuracy of double-talk detection.
`To solve this problem, reference (3) describes a method
`of changing the double-talk detection threshold.
`The prior art method of double-talk detection de(cid:173)
`scribed in reference (3) is to observe the ratio of the
`levels of the residual signal Res(k) and the received
`signal Rin(k):
`
`BACKGROUND OF THE INVENTION
`This invention relates to a double-talk detection
`method and apparatus employed in an echo canceller
`that cancels echo signals that would degrade speech
`quality in, for example, satellite communications and
`speaker-equipped telephones or hands-free telephones, 10
`and that takes special action when double-talk (simulta(cid:173)
`neous transmission in both directions) occurs.
`The prior art in this field has been described in (1)
`Dijitaru Shingo Shori no Oyo (Applications of Digital
`Signal Processing), IEeE of Japan, 3rd edition (July 10, 15
`1983), pp. 212-221, (2) Japanese Patent Application
`Laid-Open 1983/219837, and (3) Japanese Patent Appli(cid:173)
`cation Laid-Open 1986/56526, and will be explained
`with reference to the drawings.
`FIG. 1 is a block diagram of a prior art echo canceller 20
`as described in references (1) and (2).
`In long-distance telephone circuits, for reasons of line
`economics and easy replaceability, the two-wire config(cid:173)
`uration is generally adopted for the subscriber line 1
`connected to the subscriber's telephone set, the two- 25
`wire configuration being a configuration in which a
`single wire carries signals in both directions. On the
`long-distance line 2 to which the subscriber line is con(cid:173)
`nected, however, the four-wire configuration which
`provides separate paths for each direction is adopted, 30
`because ofthe need for amplifiers to compensate for line
`loss. To convert between the two-wire and four-wire
`configurations a hybrid coil 3 is connected at each con(cid:173)
`version point, the impedance ZL of the hybrid coil 3
`being matched to the impedance of the subscriber line 1. 35
`Subscnber lines differ, however, in type and length;
`consequently, each subscriber line 1 has its own peculiar
`impedance and it is difficult to match the impedance ZL
`of the hybrid coil 3 perfectly. As a result, the hybrid coil
`3 not only passes the signal Rin from the distant party A 40
`received via the four-wire long-distance line 2 to the
`local party B via the subscriber line 1, but also acts as an
`echo path, allowing the signal Rin to leak over to the
`transmitting side, where it becomes an echo signal Sin
`that degrades speech quality. To cancel the echo signal 45
`Sin, an echo canceller 10 is connected at the two-wire/(cid:173)
`four-wire conversion point.
`The echo canceller 10 comprises analog-to-digital
`(AID) converters 11 and 12, digital-to-analog (DI A)
`converters 13 and 14, an adaptive digital fllter (ADF) 50
`15, a subtractor 16, and a double-talk detector 17.
`When the signal Rin received from the distant party
`A enters the long-distance line 2, it is sampled by the
`AID converter 11 to generate a discrete value at a time
`k and thus converted to a digital received signal Rin(k). 55
`The digital received signal Rin(k) is converted by the
`DI A converter 13 to an analog received signal Rout
`and sent via the hybrid coil 3 and the subscriber line 1 to
`the local party B, but if the impedances are not
`matched, part of the analog received signal Rout fol- 60
`lows the echo path C and reaches the transmitting side
`as the echo signal Sin. The echo signal Sin is sampled by
`the AID converter 12 at a time k to generate a discrete
`value at the time k and is thus converted to a digital
`echo signal Sin(k) which is fed to the subtractor 16.
`The ADF 15 estimates the characteristics of the echo
`path e and from the estimated characteristics and the
`digital received signal Rin(k) generates a simulated
`
`x= -log[(1evel of Res(k»/(Ievel of Rin(k»]
`Double-talk is detected when -X exceeds the double(cid:173)
`talk detection threshold - Vt, and the dOUble-talk de(cid:173)
`tection threshold - Vt(k) at the sampling point k is
`adjusted by formula (a) or (b) below according to the
`double-talk detection result.
`(a) When double-talk is detected
`The adaptation function of the ADF is inhibited, a
`switch is operated to select a preset correc~ion value
`-Bu (Bu>O), and Vt(k) is decreased by the correction
`amount -Bu:
`
`Vt(k+ 1)= Vt(k)-Ilu
`
`(\01)
`
`This raises the threshold value Vt, making double-talk
`harder to detect.
`(b) When the received signal is active and double-talk
`is not detected.
`The inhibition of the adaptation operation of the
`ADF is removed, a switch is operated to select a preset
`correction value +BD (BD>O), and Vt(k). is increased
`65 by the correction amount +BD:
`
`VI(k+ 1)= VI(k)+oD
`
`(\02)
`
`RTL607_1028-0017
`
`
`
`4,894,820
`
`5
`
`3
`This lowers the threshold value Vt, making double-talk
`easier to detect.
`The adjustment performed in equations (101) and
`(102) improves both detection speed and detection ac-
`curacy.
`The method described in reference (3), however, has
`the following problems:
`(i) When the received signal is active and double-talk
`is not detected, since the threshold - Vt is expressed by
`a monotonically increasing formula in equation (102), 10
`double-talk detection sensitivity is low during the initial
`convergence process of the ADF 15.
`(ii) When the switch selects the - au correction the
`ADF 15 is always inhibited, so unnecessary inhibition
`occurs due to factors such as momentary power fluctua- 15
`tions and loud speech. Accordingly, the echo canceller
`10 does not perform well in tracking an echo path that
`is subject to constant minor fluctuations.
`(iii) The corrections au and aD in equations (101) and
`(102) are set empirically, so depending on the statistical 20
`properties of the received signal Rin, the appropriate
`threshold - Vt may not be obtained, in which case the
`sensitivity of threshold detection may be degraded.
`A further problem of this prior art is explained with
`reference to FIG. 2 and FIG. 3 in connection with a 25
`hands-free telephone.
`FIG. 2 is a block diagram showing the configuration
`of this prior art echo canceller shown in the reference
`(3). Reference numeral 800 in FIG. 2 denotes the echo
`canceller, and 802 denotes the hands-free telephone. In 30
`this apparatus, the echo canceller 800 cancels the leak(cid:173)
`age of the echo signal Sin(k) into the transmitted signal,
`which occurs when the voice signal Rout produced
`from the speaker 804 follows an acoustic path (called an'
`echo path or EP) within the room and enters the micro- 35
`phone 806. Reference numeral 808 denotes a speaker
`amplifier, and 810 denotes a microphone amplifier.
`The echo canceller 800 comprises an adaptive digital
`~lfer (ADF) 812 for generating a simulated echo signal
`Sin(k), a double-talk detector (DTD) 814 for control- 40
`ling the adaptive estimation function performed by the
`ADF 812, and an. adder 816 for subtracting the simu(cid:173)
`lated echo signal Sin(k) from the echo signal Sin(k) to
`generate a residual signal Res(k). The numerals 818 and
`820 denote AID converters, 822 and 824 denote D/ A 45
`converters, and k is a sampling point which is synchro(cid:173)
`nized with, for example, an 8 kHz synchronizing clock
`pulse.
`The technology disclosed in the reference (3) raised
`the detection sensitivity of the double-talk detector 814. 50
`FIG. 3 is a block diagram of this prior art double-talk
`detector. In this configuration, reference numerals 901
`to 903 and 923 denote peak value detectors, 904 to 906
`are squaring circuits, 907 and 908 are priority encoders,
`909 is an AT memory, 910, 918, 924, and 925 are adders, 55
`911,912, and 916 are comparators, 913, 914, and 917 are
`switches, 915 is a shift circuit, 919 and 920 are limiters,
`and 921 and 922 are correction memories. Detailed
`descriptions of these elements are omitted, but in this
`configuration the peak detectors 901, 902, and 903 de- 60
`tect the peak values of the received signal Rin(k), the
`echo signal Sin(k), and the residual signal Res(k) (which
`are denoted x(k), y(k), and e(k) in FIG. 3); then the
`squaring circuits 904, 905, and 906 determine their peak
`power levels. The priority encoders 907 and 908 find 65
`the values of the signal levels Lx(k) and Le(k) of the
`received signal x(k) and the residual signal e(k). If the
`comparator 912 determines that the difference between
`
`4
`the received signal level Lx(k) and the threshold value
`A T(k) exceeds the signal level Le(k) of the residual
`signal, that is, if
`
`Lx(k)-AT(k)> Le(k)
`
`then the non-double-talk state is detected and a 0 output
`is generated for the ADF adaptive function inhibit sig-
`nal INH. If, however,
`.
`
`Lx(k) -A T(k) ;§Le(k)
`
`then the double-talk state is detected and a 1 output is
`generated for the ADF adaptive function inhibit signal
`INH. In this way, the adaptive function performed by
`the ADF is controlled. The threshold value AT is con(cid:173)
`trolled according to the double-talk detection result as
`follows:
`(1) In the non-double-talk state (INH=O)
`
`AT(k+ l)=AT(k)+oD
`
`(2) In the double-talk state (INH= 1)
`
`AT(k+ l)=AT(k)-oD
`
`A feature of this system is that even when double-talk or
`a fluctuation on the echo path makes
`
`Lx(k) -A T(k)<,Le(k)
`
`and the adaptive function of the ADF 812 is inhibited,
`the threshold value A T(k) decreases with the passage of
`time until
`
`Lx(k)-A T(k) > Le(k)
`
`at which point the ADF 812 once more begins its adapt(cid:173)
`ive estimation function.
`In a hands-free telephone with an echo canceller
`having this prior art configuration, if a sudden fluctua(cid:173)
`tion on the echo path causes howling to occur, then:
`
`Lx(k) - A T(k)<,Le(k)
`
`so the adaptive function of the ADF is inhibited and the
`howling continues until the steady decrease in the
`threshold value A T(k) establishes the condition:
`
`Lx(k)-A T(k»Le(k)
`
`This was a serious defect: the howling sound could
`make conversation impossible' between the local and
`distant parties.
`
`SUMMARY OF THE INVENTION
`An object of the present invention is to provide a
`method of and apparatus for double-talk detection in an
`echo canceller that solves the above problems, present
`in the prior art, of reduced sensitivity of double-talk
`detection and unnecessary inhibition of the estimation
`function.
`Another object of the present invention is to elimi(cid:173)
`nate the defect of the prior art, the defect being that
`howling caused by a sudden fluctuation on the echo
`path would continue throughout the interval in which
`the adaptive function of the ADF was inhibited, and
`provide a method of and apparatus for double-talk de-
`
`RTL607_1028-0018
`
`
`
`5
`tection to realize an echo canceller with excellent
`speech quality.
`According to one aspect of the invention, there is
`provided a method of and apparatus for double-talk
`detection in an echo canceller that uses an ADF to 5
`estimate, from the received signal and the transmitted
`signal to which the echo signal of the received signal is
`added, the characteristics of an echo path and generate
`a simulated echo signal, and subtracts this simulated
`echo signal from the transmitted signal in order to trans- 10
`mit a residual signal from which the echo signal has
`been removed, and which during the course of this
`operation detects the double-talk state according to a
`double-talk detection threshold and inhibits the estima(cid:173)
`tion function of the ADF. The double-talk detection 15
`threshold is modified by the following control proce(cid:173)
`dure.
`A determination is made as to whether the received
`signal is active or idle. If it is idle, the ADF's estimation 20
`function is inhibited and the double-talk detection
`threshold is held constant. If the received signal is ac(cid:173)
`tive, a determination is made as to whether the echo
`signal is active or idle. If the echo signal is idle, the
`functional inhibition of the ADF is cleared, and the 25
`double-talk detection threshold is rapidly reduced. If
`the echo signal is active, the difference in level between
`the received signal and residual signal are determined, a
`margin is added to the difference between them, and the
`result is compared with the double-talk detection 30
`threshold. If the former is less than the latter, the dou(cid:173)
`ble-talk state is detected and the adaptive digital filter
`function is inhibited. If the former is greater than the
`latter, the single-talk state is detected and the inhibition
`of the adaptive digital fIlter function is cleared. The 35
`double-talk detection threshold is furthermore updated
`while the ADF is estimating, in accordance with inte(cid:173)
`gr;ition of its past values, the received signal, and the
`residual signal.
`In the method of and apparatus for controlling dou- 40
`ble-talk detection described above, the margin added to
`the difference in level between the received signal and
`the residual signal prevents the estimation function of
`the ADF from being inhibited by minor fluctuations on
`the echo path. Calculation of the threshold value by 45
`integration of the difference between the levels of the
`received signal and residual signal prevents the estima(cid:173)
`tion function of the ADF from being inhibited unneces(cid:173)
`sarily. Detection of the idle state of the received signal
`and rapid reduction of the threshold suppresses inhibi- 50
`tion of the ADF's function. These con,trol measures
`enable detection accuracy to be improved and precise
`operations to be performed, thereby solving the prob-
`lems stated earlier.
`According to another aspect of the invention there
`are provided a method of double-talk detection charac(cid:173)
`terized in that the double-talk detection threshold value
`is controlled so that:
`(i) In the single-talk state, the long-term average 60
`value of the level difference between the received signal
`and the residual signal is used for double-talk detection.
`(ii) In the double-talk state, or when fluctuations
`occur on the echo path but are insufficient to cause
`howling, and when the received signal is idle, the detec- 65
`tion threshold is held or is gradually reduced.
`(iii) When howling is detected, the detection thresh(cid:173)
`old is reduced more quickly than in case (ii).
`
`55
`
`4,894,820
`
`6
`According to a further aspect of the invention, there
`is provided a double-talk detector characterized in that
`it comprises:
`a signal level calculation circuit for calculating the
`signal levels of the received signal and the residual
`signal;
`a comparator for comparing the level difference be(cid:173)
`tween the received signal and the residual signal with a
`double-talk detection threshold value and generating a
`signal to inhibit the adaptive estimation function;
`a howling detector for detecting howling;
`an idle detector for detecting the idle state of the
`received signal; and
`a double-talk detection threshold control circuit for
`receiving the level difference signal and controlling the
`double-talk detection threshold in response to the detec(cid:173)
`tion results from the idle detector, the comparator, and
`the howling detector so that the detection threshold is
`reduced more rapidly when howling occurs than in the
`double-talk state.
`Preferably, the double-talk detector includes a se(cid:173)
`cond-order nonrecursive adaptive predictive filter for
`receiving the received signal, the echo signal or the
`residual signal, and that howling be detected by means
`of the second-order coefficient of the adaptive predic(cid:173)
`tive filter, a predictive output control coefficient, and
`the received signal register power of an adaptive digital
`fIlter for output of a simulated echo signal.
`In a double-talk detection method and apparatus de(cid:173)
`scribed above, when howling does not occur, double(cid:173)
`talk detection and control of the detection threshold
`value are performed; when howling occurs, the rate at
`which the double-talk detection threshold is' decreased
`is made faster than during double-talk to quickly clear
`the inhibition of the adaptive estimation function of the
`ADF.
`Thus when howling occurs, the ADF immediately
`performs adaptive estimation, in accordance with detec(cid:173)
`tion results, so the howling stops at once and speech
`quality is not impaired, while double-talk detection
`assures a level of speech quality equivalent to that of the
`prior art.
`According to a further aspect ofthe invention there is
`provided a logarithm calculator, suitable for use in the
`double-talk detector described above, for determining
`the logarithm value of a digital signal, comprising at
`least an absolute-value circuit for determining the abso(cid:173)
`lute value of the digital signal, an interval determiner
`for determining in which of a plurality of intervals the
`absolute value lies and generating an access signal ac(cid:173)
`cording to this determination, a parameter memory for
`storing and outputting parameters depending on the
`result of said determination as indicated by the access
`signal, and a computation circuit for calculating the
`logarithm value from the parameters and the absolute
`value.
`In a logarithm calculator described above, the abso(cid:173)
`lute-value circuit determines the absolute value of the
`digital input signal X(k), and the interval determiner
`determines the interval to which the absolute value
`belongs. The interval determiner generates an access
`signal corresponding to the result of this determination,
`and reads parameters from the parameter memory. The
`computation circuit calculates the logarithm value from
`these parameters and the absolute value. This arrange(cid:173)
`ment enables the parameter memory to be small in size
`and the control circuit to be simple in configuration.
`
`RTL607_1028-0019
`
`
`
`4,894,820
`
`7
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1 is a block diagram for explanation of a prior
`art echo canceller.
`FIG. 2 is a block diagram of another example of a
`prior art echo canceller.
`FIG. 3 is a block diagram of the configuration of the
`double-talk detector provided in the echo canceller in
`FIG. 2.
`FIG. 4 is diagram of a double-talk detector used to 10
`explain a double-talk detection method employed in an
`embodiment of the present invention.
`FIG. 5 is a schematic diagram of the threshold con(cid:173)
`trol section in FIG. 4.
`FIG. 6 illustrates signal waveforms occurring in FIG. 15
`4, in the single-talk state.
`FIG. 7 illustrates signal waveforms occurring in FIG.
`4 in the double-talk state.
`FIG. 8 illustrates signal waveforms occurring in FIG.
`4 when there is a fluctuation in the echo path.
`FIG. 9 is a block diagram showing a modification of
`threshold control section shown in FIG. 4.
`FIG. 10 is a block diagram of another embodiment of
`the present invention in a double-talk detector.
`FIG. 11 is a block diagram of an example of the con- 25
`trol circuit for the double-talk detection threshold pro(cid:173)
`vided in the double-talk detector in FIG. 10.
`FIG. 12 is a block diagram of an example of the
`adaptive howling detector used in this invention.
`FIG. 13 is a schematic diagram of an example of a 30
`second-order FIR provided in the adaptive howling
`detector shown in FIG. 12.
`FIG. 14 is a block diagram of a logarithm calculator
`that can be used in the double-talk detectors according
`to this invention.
`FIG. 15 illustrates the principle of operation of the
`logarithm calculator shown in FIG. 14.
`FIG. 16 shows an example of the interval subdivision
`and parameter values.
`
`20
`
`8
`a margin value "I to the signal Acoms (k) to generate a
`signal FLG(k), and sends it to the threshold control
`section 31. The margin "I enables the ADF 15· to per(cid:173)
`form tracking even when minor fluctuations occurs on
`5 the echo path C in FIG. 1. The threshold control sec(cid:173)
`tion 31 receives Acoms(k), FLG(k), and other signals
`and generates a variable double-talk detection threshold
`TRIM(k+l).
`Comparators 32 and 33 are connected to the outputs
`of the logarithmic converters 26 and 28. The compara(cid:173)
`tor 32 compares the signal Lrin(k) with a reference
`signal XTH, detects the idle state of the received signal
`Rin(k), and generates an estimation function inhibit
`signal INH and a control inhibit signal S32. Specifically,
`the comparator 32 detects when Lrin(k) <XTH, gener(cid:173)
`ates an inhibit signal INH with a logic value of "I" to
`inhibit updating by the estimation function of the ADF
`15 in FIG. 1, and generates a control inhibit signal S32
`to inhibit updating of the double-talk detection thresh(cid:173)
`old TRIM(k+ 1) by the threshold control section 31,
`thus preventing the estimation function of the ADF 15
`from being disrupted by idle noise (noise without
`speech) in the received signal Rin(k). The comparator
`33 compares the signal Lsin(k) with a reference signal
`YTH, detects the idle state of the signal Sin(k) when
`Lsin(k) < YTH, generates a clear signal CLI to clear the
`ADF estimation function inhibit signal INH to zero,
`and generates a clear signal CL2 to clear the double-talk
`detection threshold TRIM(k) output from the threshold
`control section 31 to a value such as zero. The function
`of the comparator 33 is thus to detect occurrences such
`as a fixed delay (the delay fixed irrespective of the fre(cid:173)
`quency) on the echo path C or a switchover of the echo
`path due to , for