KR100796427B1 - 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 및 디지털 신호 처리 회로의 필터 계수 설정 방법 - Google Patents

에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 및 디지털 신호 처리 회로의 필터 계수 설정 방법 Download PDF

Info

Publication number
KR100796427B1
KR100796427B1 KR1020060026095A KR20060026095A KR100796427B1 KR 100796427 B1 KR100796427 B1 KR 100796427B1 KR 1020060026095 A KR1020060026095 A KR 1020060026095A KR 20060026095 A KR20060026095 A KR 20060026095A KR 100796427 B1 KR100796427 B1 KR 100796427B1
Authority
KR
South Korea
Prior art keywords
signal
input
output
impulse response
filter
Prior art date
Application number
KR1020060026095A
Other languages
English (en)
Other versions
KR20060103147A (ko
Inventor
히데끼 오하시
고조 오꾸다
다께오 이노우에
Original Assignee
산요덴키가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 산요덴키가부시키가이샤 filed Critical 산요덴키가부시키가이샤
Publication of KR20060103147A publication Critical patent/KR20060103147A/ko
Application granted granted Critical
Publication of KR100796427B1 publication Critical patent/KR100796427B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/20Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
    • H04B3/23Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a replica of transmitted signal in the time domain, e.g. echo cancellers

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Telephone Function (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

본 발명은 효과적으로 에코를 방지하는 것을 목적으로 하는 것으로, 제1 입력 신호가 입력되는 입력 단자와, 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터 및 제2 FIR 필터와, 제1 FIR 필터의 출력 신호가 출력되거나, 이 출력된 출력 신호가 입력되거나, 또는 제2 입력 신호가 입력되는 입출력 단자와, 제1 FIR 필터의 출력 신호와 제2 입력 신호를 합한 신호로부터 제2 FIR 필터의 출력 신호를 감산하는 감산 회로와, 감산 회로로부터의 출력 신호가 출력되는 출력 단자를 구비하고, 제1 FIR 필터 및 제2 FIR 필터는, 출력 단자로부터의 출력 신호가 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 갖는 것을 특징으로 한다.
에코 방지 회로, AD 컨버터, FIR 필터, 승산 회로, 임펄스 응답 저장 메모리, 레지스터, 필터 계수 저장 메모리, 이어폰 마이크

Description

에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 및 디지털 신호 처리 회로의 필터 계수 설정 방법{ECHO PROTECTION CIRCUIT, DISITAL SIGNAL PROCESSING CIRCUIT, METHOD FOR SETTING FILTER COEFFICIENTS OF ECHO PROTECTION CIRCUIT, AND METHOD OF SETTING FILTER COEFFICIENTS OF DISITAL SIGNAL PROCESSING CIRCUIT}
도 1은 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 제1 실시예를 도시하는 블록도.
도 2는 도 1에 도시하는 에코 방지 회로의 경로(A, B)를 도시하는 도면.
도 3은 도 2에 도시하는 경로 A에 이어폰 마이크(18)가 포함되는 경우를 도시하는 도면.
도 4는 도 2 또는 도 3에 도시하는 경로(A, B)의 임펄스 응답을 도시하는 도면.
도 5는 DSP(2)의 구성의 일부를 도시하는 도면.
도 6은 DSP(2)의 구성의 다른 일부를 도시하는 도면.
도 7은 FIR 필터(4, 11)의 그 밖의 일례를 도시하는 도면.
도 8은 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 처리 동작을 도시하는 플로우차트.
도 9는 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 제2 실시예를 도시하는 블록도.
도 10은 도 9에 도시하는 에코 방지 회로의 경로(C, D)를 도시하는 도면.
도 11은 도 10에 도시하는 경로 C에 이어폰 마이크(18)가 포함되는 경우를 도시하는 도면.
도 12는 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 제3 실시예를 도시하는 블록도.
도 13은 도 12에 도시하는 에코 방지 회로의 경로(E, F)를 도시하는 도면.
도 14는 도 13에 도시하는 경로 E에 이어폰 마이크(18)가 포함되는 경우를 도시하는 도면.
도 15는 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 제4 실시예를 도시하는 블록도.
도 16은 도 15에 도시하는 에코 방지 회로의 경로(G, H)를 도시하는 도면.
도 17은 도 16에 도시하는 경로 G에 이어폰 마이크(18)가 포함되는 경우를 도시하는 도면.
도 18은 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 제5 실시예를 도시하는 블록도.
도 19는 도 18에 도시하는 ADF(76)의 상세도.
도 20은 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 처리 동작을 나타내는 플로우차트.
도 21은 제6 실시예를 도시하는 블록도.
도 22는 도 21에 도시하는 제6 실시예의 경로(I, J)를 도시하는 도면.
도 23은 도 22에 도시하는 경로 I에 이어폰 마이크(18)가 포함되는 경우를 도시하는 도면.
도 24는 도 22 또는 도 23에 도시하는 경로(I, J)의 임펄스 응답을 도시하는 도면.
도 25는 DSP(202)의 구성의 일부를 도시하는 도면.
도 26은 디지털 필터(211)의 일례로서 나타내는 ARMA 필터(300)의 구성을 도시하는 블록도.
도 27은 제6 실시예에서의 처리 동작을 도시하는 플로우차트.
도 28은 FIR 필터(303)를 이용한 경우의, 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 일례를 도시하는 블록도.
도 29는 제7 실시예를 도시하는 블록도.
도 30은 도 29에 도시하는 ADF(284)의 상세도.
도 31은 DSP(202)의 구성의 일부를 도시하는 도면.
도 32는 FIR 필터(303)의 그 밖의 일례를 도시하는 도면,
도 33은 제7 실시예에서의 처리 동작을 도시하는 플로우차트.
도 34는 제8 실시예를 도시하는 블록도.
도 35는 도 34에 도시하는 제8 실시예의 경로(K, L)를 도시하는 도면.
도 36은 도 35에 도시하는 경로 K에 이어폰 마이크(18)가 포함되는 경우를 도시하는 도면.
도 37은 제9 실시예를 도시하는 블록도.
도 38은 도 37에 도시하는 제9 실시예의 경로(M, N)를 도시하는 도면.
도 39는 도 38에 도시하는 경로 M에 이어폰 마이크(18)가 포함되는 경우를 도시하는 도면.
도 40은 제10 실시예를 도시하는 블록도.
도 41은 도 40에 도시하는 제10 실시예의 경로(O, P)를 도시하는 도면.
도 42는 도 41에 도시하는 경로 O에 이어폰 마이크(18)가 포함되는 경우를 도시하는 도면.
도 43은 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 제11 실시예를 도시하는 블록도.
도 44는 도 43에 도시하는 ADF(276)의 상세도.
도 45는 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 처리 동작을 도시하는 플로우차트.
도 46은 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로를 적용하는 휴대 전화기(19)의 모식도.
도 47은 도 46에 도시하는 휴대 전화기(19)의 구성의 일례를 도시하는 블록 도.
도 48은 종래의 에코 방지 회로를 도시하는 도면.
<도면의 주요 부분에 대한 부호의 설명>
1, 24, 201 : CPU
2, 64, 83, 202, 264, 283, 295 : DSP
3, 14, 26, 66, 70, 203, 214, 266, 270 : AD 컨버터
4, 11, 286, 287, 303 : FIR 필터
5, 12, 15, 27, 67, 71, 73, 205, 212, 215, 267, 271, 273 : DA 컨버터
6, 10, 13, 101, 105, 206, 210, 213 : 증폭 회로
7, 207 : 입출력 단자
9, 209 : 차동 증폭 회로
18 : 이어폰 마이크
19 : 휴대 전화기
20 : 안테나
21 : RF부
22 : 베이스 밴드 처리부
23 : 표시부
25 : 입력부
28, 104 : 마이크
29, 106 : 스피커
30, 33, 65, 69, 230, 233, 265, 269, 296, 297 : 입력 단자
31, 32, 34, 68, 72, 74, 231, 232, 234, 268, 272, 274, 298 : 출력 단자
35, 235, 335 : 지연 회로
36, 51, 58, 236, 251, 258, 301, 336 : 승산 회로
37, 63, 237, 263, 302, 337 : 가산 회로
41 : 에코 방지 회로
42, 54, 242 : 디지털 신호용 메모리
43, 55, 243, 255 : 임펄스 응답 저장 메모리
44, 45, 244, 245 : 임펄스용 메모리
46, 48, 49, 50, 57, 246, 248, 249, 250, 257, 294 : 레지스터
47, 56, 247 : 필터 계수 저장 메모리
52, 252 : ADD
53, 253 : ACC
60, 260 : 스위치 회로
61, 107, 261 : 반전 증폭 회로
75, 108, 275 : 이득 위상 조정 회로
76, 276, 284 : ADF
77, 277, 288 : 감산 회로
78, 278, 289 : 참조 신호 입출력부
79, 279, 290 : 필터 계수부
80, 280, 291 : 승산부
81, 281, 292 : 필터 계수 갱신부
82, 282, 293 : 가산부
211 : 디지털 필터
287 : 백색 노이즈 생성 회로
300 : ARMA 필터
[특허 문헌 1] 일본 특허 제3293029호 공보
본 발명은, 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 및 디지털 신호 처리 회로의 필터 계수 설정 방법에 관한 것이다.
최근, 예를 들면 이어폰 마이크가 접속되는 휴대 전화기나 핸즈프리 전화기 등의 통신 기기에서는, 스피커로부터 마이크에 돌아 들어가는 음향 결합이나 회로 상의 전기적 반사 등에 의해 발생하는 에코를 방지하기 위한 에코 방지 회로가 내장되어 있는 것이 있다.
도 58은, 에코 방지 회로가 내장된, 예를 들면 2선 4선 변환 회로를 도시한 도면이다. 마이크(104)로부터의 입력 신호는, 증폭 회로(101)를 통하여 전화 회선에 출력된다. 그리고, 전화 회선을 통하여 상대측에 입력 신호가 송신됨으로써 음성을 전하는 것이 가능하게 된다. 그러나, 증폭 회로(101)를 통하여 전달되는 입력 신호는, 전화 회선에 출력되는 것 외에, 도 58의 파선으로 나타내는 바와 같이 2선 4선 회로 변환 회로의 전기적 반사 등에 의해 증폭 회로(105)를 통하여 스피커(106)에 출력되는 경우가 있다. 이 결과, 입력 신호에 의한 에코가 스피커(106)로부터 발생하게 된다. 따라서, 이러한 에코를 캔슬하기 위해 에코 방지 회로가 설치된다. 에코 방지 회로에서는, 도 58의 실선으로 나타내는 바와 같이, 마이크(104)로부터의 입력 신호가 증폭 회로(101)의 전단에서 분기된다. 입력 신호는 반전 증폭 회로(107)에서 반전 증폭된다. 반전 증폭 회로(107)로부터의 신호는, 이득 위상 조정 회로(G/P)(108)에서 이득 및 위상의 조정이 실시된다. 즉, 도 58의 파선으로 나타내는 바와 같이 전달되는 입력 신호와는 역 위상으로서, 진폭 레벨이 동일한 신호가 생성되게 된다. 이 결과, 도 58의 파선으로 나타내는 바와 같이 전달되는 입력 신호와, 도 58의 실선으로 나타내는 바와 같이 전달되는 신호가 상쇄됨으로써 에코를 방지하는 것이 가능하게 된다.
그러나, 상술한 에코 방지 회로에 의한 에코의 캔슬량은 -30㏈ 정도였다. 왜냐하면, 상술한 에코 방지 회로에서 에코를 고정밀도로 캔슬하기 위해서는, 각 회로 소자의 회로 상수를 고정밀도로 설정할 필요가 있다. 그러나, 실제로 각 회로 소자의 회로 상수를 고정밀도로 설정하는 것은 용이하지 않아, 이들의 회로 상 수가 상수값으로부터 변화하면, 에코의 캔슬량이 저하한다고 하는 문제가 있었다. 또한, 이득 위상 조정 회로(108)에 의한 이득 및 위상의 조정 오차 등에 의해, 도 58의 파선으로 나타내는 바와 같이 전달되는 입력 신호와, 정확하게 상쇄되는 것이 가능한 신호를 생성하는 것이 곤란하다고 하는 문제가 있었다. 이 결과, 상술한 에코 방지 회로에 의한 에코의 캔슬량은 -30㏈ 정도로 되어 있었다.
따라서, 본 발명은, 효과적으로 에코를 방지하는 것이 가능한 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 디지털 신호 처리 회로의 필터 계수 설정 방법, 에코 방지 회로의 필터 계수를 설정하기 위한 프로그램, 디지털 신호 처리 회로의 필터 계수를 설정하기 위한 프로그램을 제공하는 것을 목적으로 한다.
상기 과제를 해결하기 위한 본 발명의 에코 방지 회로는, 제1 입력 신호가 입력되는 입력 단자와, 상기 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터와, 상기 제1 입력 신호가 상기 제1 FIR 필터와 함께 입력되는 제2 FIR 필터와, 상기 제1 FIR 필터의 출력 신호가 출력되거나 또는 제2 입력 신호가 입력되는 입출력 단자와, 상기 제1 FIR 필터의 출력 신호와 상기 제2 입력 신호를 합한 신호로부터, 상기 제2 FIR 필터의 출력 신호를 감산하는 감산 회로와, 상기 감산 회로로부터의 출력 신호가 출력되는 출력 단자를 구비하고, 상기 제1 FIR 필터 및 상기 제2 FIR 필터는, 상기 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 갖는 것을 특징으로 한다.
또한, 본 발명의 디지털 신호 처리 회로는, 제1 입력 신호가 입력되는 제1 입력 단자와, 상기 제1 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터와, 상기 제1 입력 신호가 상기 제1 FIR 필터와 함께 입력되는 제2 FIR 필터와, 상기 제1 FIR 필터의 출력 신호가 출력되는 제1 출력 단자와, 상기 제2 FIR 필터의 출력 신호가 출력되는 제2 출력 단자와, 입출력 신호 공용 라인 상에서 상기 제1 출력 단자로부터의 출력 신호와 제2 입력 신호를 합한 신호로부터, 상기 제2 출력 단자로부터의 출력 신호를 감산한 신호가 입력되는 제2 입력 단자와, 상기 제2 입력 단자로부터의 신호가 출력되는 제3 출력 단자를 구비하고, 상기 제1 FIR 필터 및 상기 제2 FIR 필터는, 상기 제3 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 갖는 것을 특징으로 한다.
또한, 본 발명의 에코 방지 회로의 필터 계수 설정 방법은, 제1 입력 신호가 입력되는 입력 단자와, 상기 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터와, 상기 제1 입력 신호가 상기 제1 FIR 필터와 함께 입력되는 제2 FIR 필터와, 상기 제1 FIR 필터의 출력 신호가 출력되거나 또는 제2 입력 신호가 입력되는 입출력 단자와, 상기 제1 FIR 필터의 출력 신호와 상기 제2 입력 신호를 합한 신호로부터, 상기 제2 FIR 필터의 출력 신호를 감산하는 감산 회로와, 상기 감산 회로로부터의 출력 신호가 출력되는 출력 단자를 구비한 에코 방지 회로의 필터 계수 설정 방법으로서, 상기 제1 FIR 필터 및 상기 제2 FIR 필터에 대하여, 상기 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 설정하는 것을 특징으로 한다.
또한, 본 발명의 디지털 신호 처리 회로의 필터 계수 설정 방법은, 제1 입력 신호가 입력되는 제1 입력 단자와, 상기 제1 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터와, 상기 제1 입력 신호가 상기 제1 FIR 필터와 함께 입력되는 제2 FIR 필터와, 상기 제1 FIR 필터의 출력 신호가 출력되는 제1 출력 단자와, 상기 제2 FIR 필터의 출력 신호가 출력되는 제2 출력 단자와, 입출력 신호 공용 라인 상에서 상기 제1 출력 단자로부터의 출력 신호와 제2 입력 신호를 합한 신호로부터, 상기 제2 출력 단자로부터의 출력 신호를 감산한 신호가 입력되는 제2 입력 단자와, 상기 제2 입력 단자로부터의 신호가 출력되는 제3 출력 단자를 구비한 디지털 신호 처리 회로의 필터 계수 설정 방법으로서, 상기 제1 FIR 필터 및 상기 제2 FIR 필터에 대하여, 상기 제3 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 설정하는 것을 특징으로 한다.
또한, 본 발명의 에코 방지 회로의 필터 계수를 설정하기 위한 프로그램은, 프로세서와, 제1 입력 신호가 입력되는 입력 단자와, 상기 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터와, 상기 제1 입력 신호가 상기 제1 FIR 필터와 함께 입력되는 제2 FIR 필터와, 상기 제1 FIR 필터의 출력 신호가 출력되거나 또는 제2 입력 신호가 입력되는 입출력 단자와, 상기 제1 FIR 필터의 출력 신호와 상기 제2 입력 신호를 합한 신호로부터, 상기 제2 FIR 필터의 출력 신호를 감쇠하는 감산 회로와, 상기 감산 회로로부터의 출력 신호가 출력되는 출력 단자를 구비한 에 코 방지 회로의 필터 계수를 설정하기 위한 프로그램으로서, 상기 프로세서에, 상기 제1 FIR 필터 및 상기 제2 FIR 필터에 대하여, 상기 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 설정하는 기능을 실현시키는 것을 특징으로 한다.
또한, 본 발명의 디지털 신호 처리 회로의 필터 계수를 설정하기 위한 프로그램은, 프로세서와, 제1 입력 신호가 입력되는 제1 입력 단자와, 상기 제1 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터와, 상기 제1 입력 신호가 상기 제1 FIR 필터와 함께 입력되는 제2 FIR 필터와, 상기 제1 FIR 필터의 출력 신호가 출력되는 제1 출력 단자와, 상기 제2 FIR 필터의 출력 신호가 출력되는 제2 출력 단자와, 입출력 신호 공용 라인 상에서 상기 제1 출력 단자로부터의 출력 신호와 제2 입력 신호를 합한 신호로부터, 상기 제2 출력 단자로부터의 출력 신호를 감산한 신호가 입력되는 제2 입력 단자와, 상기 제2 입력 단자로부터의 신호가 출력되는 제3 출력 단자를 구비한 디지털 신호 처리 회로의 필터 계수를 설정하기 위한 프로그램으로서, 상기 프로세서에, 상기 제1 FIR 필터 및 상기 제2 FIR 필터에 대하여, 상기 제3 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 설정하는 기능을 실현시키는 것을 특징으로 한다.
<<제1 실시예>>
=== 에코 방지 회로, 디지털 신호 처리 회로의 구성예===
도 1을 참조하면서 본 발명에 따른 에코 방지 회로, 디지털 신호 처리 회로 에 대하여 설명한다. 도 1은, 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로(DSP(Digital Signal Processor)(2))의 일례를 도시하는 블록도이다.
에코 방지 회로는, CPU(Central Proccssing Unit)(1), DSP(2), AD 컨버터(3), DA 컨버터(5)(제1 DA 컨버터), 증폭 회로(6), 입출력 단자(7), 차동 증폭 회로(9)(감산 회로), 증폭 회로(10), AD 컨버터(14), DA 컨버터(15), DA 컨버터(12)(제2 DA 컨버터), 증폭 회로(13)를 갖고 있다. 또한, 본 실시예에서는 CPU(1)를 구성 요건으로 하고 있지만, CPU(1)를 구성 요건으로 하지 않는 것도 가능하다.
또한, DSP(2)는, 입력 단자(30)(제1 입력 단자), FIR(Finite Impulse Response) 필터(4)(제1 FIR 필터), 출력 단자(31)(제1 출력 단자), FIR 필터(11)(제2 FIR 필터), 출력 단자(32)(제2 출력 단자), 입력 단자(33)(제2 입력 단자), 출력 단자(34)(제3 출력 단자)를 갖고 있다
AD 컨버터(3)에는, 예를 들면 음성 신호(제1 입력 신호)가 입력된다. 그리고, AD 컨버터(3)는, 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를, 입력 단자(30)를 통하여 DSP(2)에 입력시킨다.
DSP(2)에 입력된 디지털 신호는, FIR 필터(4, 11)에 각각 입력된다. FIR 필터(4)는 디지털 신호에 대하여, 이 FIR 필터(4)의 필터 계수에 기초하여 후술하는 컨볼루션 연산 처리를 실시하여 출력 단자(31)에 출력한다. 또한, 동시에, FIR 필터(11)는 디지털 신호에 대하여, 이 FIR 필터(11)의 필터 계수에 기초하여 후술하는 컨볼루션 연산 처리를 실시하여 출력 단자(32)에 출력한다.
DA 컨버터(5)는, 출력 단자(31)를 통하여, FIR 필터(4)로부터의 출력 신호가 입력된다. 그리고, DA 컨버터(5)는, FIR 필터(4)로부터의 출력 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 증폭 회로(6)에 출력한다. 증폭 회로(6)는, 소정의 증폭률로 아날로그 신호를 증폭하여 출력한다.
입출력 단자(7)에는, 예를 들면 아날로그 신호에 기초하여 음성을 발생시키는 기기(예를 들면 이어폰 마이크, 스피커 등)가 접속된다. 그리고, 입출력 단자(7)를 통하여, 증폭 회로(6)로부터의 아날로그 신호가 접속된 기기에 대하여 출력된다. 또한, 입출력 단자(7)에는, 예를 들면 음성을 음성 신호로 변환하여 출력하는 기기(예를 들면 이어폰 마이크, 마이크 등)가 접속된다. 이 때문에, 입출력 단자(7)에는, 접속된 기기로부터의 음성 신호가 입력된다. 그리고, 입출력 단자(7)를 통하여, 음성 신호가 차동 증폭 회로(9)의 + 입력 단자에 입력된다. 또한, 입출력 단자(7)를 통하여 출력된 신호는, 접속된 기기를 통하여 반사되어 입출력 단자(7)로부터 입력되고, 차동 증폭 회로(9)의 + 입력 단자에 입력된다. 여기서, 반사되어 오는 신호라는 것은, 예를 들면, 이어폰 마이크 등을 통하여 되돌아오는 신호나, 이어폰 마이크로부터 출력된 음이 귓속에서 반사되고, 그 반사음이 이어폰 마이크에 의해 음성 신호로 변환된 신호 등이다. 또한, 입출력 단자(7)는, 출력 신호(예를 들면 아날로그 신호)와 입력 신호(예를 들면 음성 신호)가 배타적으로 입출력되는 것은 아니다. 예를 들면, 입출력 단자(7)는, 출력 신호와 입력 신호가 동시에 입출력되는 경우도 있다. 또한, 입출력 신호 공용 라인이라는 것은, 입출력 단자(7)에 접속되는 라인이다.
DA 컨버터(12)는, 출력 단자(32)를 통하여, FIR 필터(11)로부터의 출력 신호가 입력된다. 그리고, DA 컨버터(12)는, FIR 필터(11)로부터의 출력 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 증폭 회로(13)에 출력한다. 증폭 회로(13)는, 소정의 증폭률로 아날로그 신호를 증폭하여 차동 증폭 회로(9)의 - 입력 단자에 출력한다.
차동 증폭 회로(9)는, 입출력 단자(7)로부터의 음성 신호를 증폭 회로(10)에 출력한다. 증폭 회로(10)는, 음성 신호를 소정의 증폭률로 증폭하여 AD 컨버터(14)에 출력한다. 또한, 차동 증폭 회로(9)의 + 입력 단자에는, 증폭 회로(6)로부터의 아날로그 신호가 입력된다. 그리고, 차동 증폭 회로(9)는, + 입력 단자에 입력된 증폭 회로(6)로부터의 아날로그 신호와, - 입력 단자에 입력된 증폭 회로(13)로부터의 아날로그 신호의 차분을 증폭하여 출력한다.
AD 컨버터(14)는, 증폭 회로(10)로부터의 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를, 입력 단자(33)를 통하여 DSP(2)에 입력시킨다. 입력 단자(33)에 입력된 디지털 신호는, 출력 단자(34)로부터 출력된다. DA 컨버터(15)는, 출력 단자(34)를 통하여 DSP(2)로부터의 디지털 신호가 입력된다. 그리고, DA 컨버터(15)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 출력한다.
CPU(1)는, 에코 방지 회로를 통괄 제어한다. CPU(1)는, 예를 들면 에코 방지 회로를 리셋하기 위한 리셋 신호가 입력되면, 후술하는 임펄스 응답 취득 처리를 DSP(2)에서 실행시기 위해 지시 신호를, DSP(2)에 출력한다. 또한, CPU(1)는, 임펄스 응답 취득 처리의 초기 동작으로서, 예를 들면 다른 쪽의 논리값 '0'을 DSP(2)에 출력한다. 또한, 본 실시예에서 CPU(1)는, 리셋 신호가 입력됨으로써, 임펄스 응답 취득 처리를 DSP(2)에서 실행시키기 위한 지시 신호를 출력하고 있지만, 이것에 한정되는 것은 아니다. 예를 들면, 에코 방지 회로, DSP(2)를 동작시키기 위한 전원 투입을 CPU(1)가 검출하였을 때, 상술한 지시 신호를 DSP(2)에 출력하도록 설치해도 된다. 또한, CPU(1)는, 아날로그 회로의 전기적 변화(예를 들면 증폭 회로(10)의 출력의 진폭 변화)를 검출하였을 때, 상술한 지시 신호를 DSP(2)에 출력하도록 설치해도 된다.
===DSP(2) 및 FIR 필터(4, 11)의 구성의 상세===
이하, 도 1 내지 도 7을 참조하면서 DSP(2) 및 DSP(2)의 구성 요건인 FIR 필터(4, 11)의 구성 대하여 상세하게 설명한다. 도 2는, 도 1에 도시하는 에코 방지 회로의 경로(A, B)를 도시한 도면이다. 도 3은, 경로 A에 이어폰 마이크(18)가 포함되는 경우를 도시한 도면이다. 도 4의 (a)는, 도 2 또는 도 3에 도시하는 경로 A의 임펄스 응답 IR1'(Z)를 도시한 도면이다. 도 4의 (b)는, 도 2 또는 도 3에 도시하는 경로 B의 임펄스 응답 IR2'(Z)를 도시한 도면이다. 도 5는, DSP(2)의 구성의 일부를 도시하는 블록도이다. 상세하게 설명하면, 경로 A의 임펄스 응답 IR1'(Z)에 기초하여 FIR 필터(11)의 필터 계수를 설정하기 위한, DSP(2)의 구성의 일부를 도시하는 블록도이다. 도 6은, DSP(2)의 다른 구성의 일부를 도시하는 블록도이다. 상세하게 설명하면, 경로 B의 임펄스 응답 IR2'(Z)에 기초하여 FIR 필터(4)의 필터 계수를 설정하기 위한, DSP(2)의 다른 구성의 일부를 도시하는 블록 도이다. 도 7은, FIR 필터(4, 11)의 그 밖의 일례를 도시하는 블록도이다.
우선, 도 5를 참조하면서 DSP(2) 및 FIR 필터(11)의 구성에 대하여 상세하게 설명한다.
DSP(2)는, 도 1에 도시하는 FIR 필터(11) 등 모두, 임펄스 응답 저장 메모리(43)(필터 계수 설정부), 임펄스용 메모리(44, 45), 필터 계수 저장 메모리(47), 레지스터(46, 48, 49, 50)(필터 계수 설정부), 스위치 회로(60A~60E, 60G~60I(필터 계수 설정부), 60N, 60Q)를 갖고 있다.
또한, FIR 필터(11)는, 도 5의 일점 쇄선 내에 도시하는 디지털 신호용 메모리(42), 승산 회로(51), ADD(가산기)(52), ACC(Accumulator)(53), 스위치 회로(60M)를 갖고 있다.
레지스터(48, 49)에는, CPU(1)로부터의 상술한 다른 쪽의 논리값 '0'이 입력된다.
임펄스용 메모리(44, 45)는 각각, N개의 레지스터 0~N-1로 구성되어 있다. 그리고, 후술하는 임펄스 응답 취득 처리에서 도 2 또는 도 3의 실선으로 나타내는 경로 A의 임펄스 응답 IR1'(Z)를 취득하는 경우, 임펄스용 메모리(45)의 레지스터 0에는, 예를 들면 한 쪽의 논리값 '1'이 기억된다. 그리고, 임펄스용 메모리(45)의 다른 레지스터 1~N-1에는, 다른 쪽의 논리값 '0'이 기억된다. 또한, 레지스터(46), 임펄스용 메모리(44)의 레지스터 0~N-1에는, 다른 쪽의 논리값 '0'이 기억된다.
또한, 후술하는 임펄스 응답 취득 처리에서 도 2 또는 도 3의 실선으로 나타 내는 경로 B의 임펄스 응답 IR2'(Z)를 취득하는 경우, 임펄스용 메모리(44)의 레지스터 0에는, 예를 들면 한 쪽의 논리값 '1'이 기억된다. 그리고, 임펄스용 메모리(44)의 다른 레지스터 1~N-1에는, 다른 쪽의 논리값 '0'이 기억된다. 또한, 레지스터(46), 임펄스용 메모리(45)의 레지스터 0~N-1에는, 다른 쪽의 논리값 '0'이 기억된다.
임펄스 응답 저장 메모리(43)는, N개의 레지스터 0~N-1로 구성되어 있다. 임펄스 응답 저장 메모리(43)의 레지스터 0~N-1에는, DSP(2)가 스위치 회로(60E)를 입력 단자(33)측으로 절환함으로써, 입력 단자(33)를 통하여 경로 A에서의 샘플링 주기 단위마다의 임펄스 응답 imp(O)~(N-1)(=IR1'(Z))이 기억된다. 예를 들면, 우선 입력 단자(33)를 통하여 임펄스 응답 imp(0)가 레지스터 N-1에 기억된다. 그리고, 다음의 임펄스 응답 imp(1)는 레지스터 N-1에 기억되고, 레지스터 0에 기억되어 있던 임펄스 응답 imp(0)는 레지스터 N-2에 기억된다. 그리고, 이 처리가 반복됨으로써, 임펄스 응답 저장 메모리(43)의 레지스터 0~N-1에는, 임펄스 응답 imp(0)~(N-1)(=IR1'(Z))이 기억되게 된다. 또한, 샘플링 주기라는 것은, 도 4의 (a)에 도시하는 각 임펄스 응답 imp(0)~(N-1) 사이의 시간 간격이다. 또한, 임펄스 응답 저장 메모리(43)는, DSP(2)가 스위치 회로(60H)를 레지스터(49)측으로 절환하고, 스위치(60G)를 레지스터 0부터 레지스터 N-1로 순차적으로 절환함으로써, 레지스터(49)에 기억된 다른 쪽의 논리값 '0'에 의해 클리어된다.
필터 계수 저장 메모리(47)는, N개의 어드레스 0~N-1로 구성되어 있다. 그리고, 필터 계수 저장 메모리(47)의 어드레스 0~N-1에는, 스위치 회로(60G, 60I)를 순차적으로 절환함으로써, 레지스터(50)를 통한 임펄스 응답 저장 메모리(43)의 레지스터 0~N-1에 기억된 임펄스 응답 imp(0)~(N-1)이 순차적으로 기억된다. 이 결과, FIR 필터(11)의 필터 계수에, 경로 A의 임펄스 응답 imp(0)~(N-1)(=IR1'(Z))이 설정되게 된다. 또한, FIR 필터(11)의 필터 계수에, 경로 A에서의 임펄스 응답 imp(0)~(N-1)을 설정하는 이유에 대해서는, 후술하는 FIR 필터(4, 11)의 필터 계수에서 설명한다.
레지스터(50)에는, 임펄스 응답 저장 메모리(43)로부터의 임펄스 응답 imp(0)~(N-1)가, 필터 계수 저장 메모리(47)의 어드레스 0~N-1에 순차적으로 기억되도록, 이 임펄스 응답 imp(0)~(N-1)이 일시 기억된다.
디지털 신호용 메모리(42)는, N개의 레지스터 0~N-1로 구성되어 있다. 그리고, 디지털 신호용 메모리(42)에는, 입력 단자(30)를 통하여 AD 컨버터(3)로부터의 디지털 신호가 순차적으로 입력된다. 그리고, 레지스터 0~N-1에 디지털 신호가 순차적으로 입력됨으로써, 디지털 신호는 1 샘플링 주기 단위씩 지연되게 된다. 예를 들면 디지털 신호를 Xn으로 하면, 레지스터 O은 Xn을 1 샘플링 주기 지연시킨 Xn-1을 레지스터 1에 출력하고, 레지스터 N-2는 Xn-(N-1)을 출력한다. 또한, 디지털 신호용 메모리(42)는, DSP(2)가 스위치 회로(60Q)를 레지스터 0부터 레지스터 N-1로 순차적으로 절환함으로써, 레지스터(48)에 기억된 다른 쪽의 논리값 '0'에 의해 클리어된다.
승산 회로(51)는, DSP(2)가 스위치 회로(60M, 60N)을 각각, 레지스터 O, 어드레스 0부터 순차적으로 절환함으로써, 디지털 신호용 메모리(42)로부터의 디지털 신호 Xn, …, Xn-(N-1)과, 필터 계수 저장 메모리(47)로부터의 필터 계수 imp(0), …, (N-1)가 순차적으로 입력된다. 그리고, 승산 회로(51)는, 디지털 신호 Xn, …, Xn-(N-1)과 필터 계수 imp(0), …, (N-1)을 순차적으로 승산한 승산 결과를 ADD(52)에 출력한다. 예를 들면, 승산 회로(51)는, 디지털 신호용 메모리(42)로부터의 Xn과 필터 계수 저장 메모리(47)로부터의 imp(0)를 승산한 승산 결과를 ADD(52)에 출력한다. 다음으로, 승산 회로(51)는, 디지털 신호용 메모리(42)로부터의 Xn-1과 필터 계수 저장 메모리(47)로부터의 imp(1)를 승산한 승산 결과를 ADD(52)에 출력한다. 그리고, 이 처리가 반복됨으로써, 디지털 신호 Xn, …, Xn-(N-1)과 필터 계수 imp(0), …, (N-1)가 승산되게 된다.
ACC(53)는, ADD(52)로부터의 가산 결과가 입력되고, 이 가산 결과를 유지한다. ADD(52)는, 승산 회로(51)로부터의 승산 결과와, ACC(53)에 기억되어 있는 전회(前回)의 ADD(52)의 가산 결과를 가산한 결과를 ACC(53)에 출력한다. 이 결과, ACC(53)에는 Xn·imp(0)+…+Xn-(N-1)·imp(N-1)가 기억되게 된다. 이 결과, FIR 필터(11)는, 필터 계수 저장 메모리(47)에 기억된 필터 계수에 기초하여, 디지털 신호에 대하여 컨볼루션 연산 처리를 실시한 것으로 된다. 그리고, FIR 필터(11)는, 컨볼루션 연산 처리를 실시한 디지털 신호를, 출력 단자(32)에 출력한다.
다음으로, 도 6을 참조하면서 DSP(2) 및 FIR 필터(4)의 구성에 대하여 설명한다. 또한, 상술한 DSP(2) 및 FIR 필터(11)와 동일의 구성에 대해서는, 동일 번호를 붙이고 설명을 생략한다.
DSP(2)는, 도 1에 도시하는 FIR 필터(4) 등 모두, 임펄스 응답 저장 메모리 (55)(필터 계수 설정부), 임펄스용 메모리(44, 45), 필터 계수 저장 메모리(56), 레지스터(46, 48~50, 57)(필터 계수 설정부), 승산 회로(58)(필터 계수 설정부), 스위치 회로(60A~60D, 60F, 60J~60L(필터 계수 설정부), 60P, 60R)를 갖고 있다.
또한, FIR 필터(4)는, 도 6의 일점 쇄선 내에 도시하는 디지털 신호용 메모리(54), 승산 회로(51), ADD(52), ACC(53), 스위치 회로(60O)를 갖고 있다. 또한, 승산 회로(51), ADD(52), ACC(53)는, FIR 필터(4)와 공용하여 이용된다.
임펄스 응답 저장 메모리(55)는, N개의 레지스터 0~N-1로 구성되어 있다. 임펄스 응답 저장 메모리(55)의 레지스터 0~N-1에는, DSP(2)가 스위치 회로(60F)를 입력 단자(33)측으로 절환함으로써, 입력 단자(33)를 통하여 경로 B에서의 샘플링 주기 단위마다의 임펄스 응답 imp(0)~(N-1)(=IR2'(Z))이 기억된다. 또한, 임펄스 응답 저장 메모리(55)의 레지스터 0~N-1에의 임펄스 응답 imp(0)~(N-1)의 기억은, 상술한 임펄스 응답 저장 메모리(43)와 마찬가지이다. 또한, 임펄스 응답 저장 메모리(55)는, DSP(2)가 스위치 회로(60K)를 레지스터(49)측으로 절환하고, 스위치(60J)를 레지스터 0으로부터 레지스터 N-1에로 순차적으로 절환함으로써, 레지스터(49)에 기억된 다른 쪽의 논리값 '0'에 의해 클리어된다.
레지스터(57)에는, 임펄스 응답 저장 메모리(55)에 기억된 임펄스 응답 imp(0)~(N-1)을, 승산 회로(58)에서 위상 반전시키기 위해 -1을 나타내는 바이너리 데이터가 미리 기억되어 있다.
승산 회로(58)는, 레지스터(50)의 값과 레지스터(57)의 값을 승산한 승산 결과를 임펄스 응답 저장 메모리(56)에 출력한다. 상세하게 설명하면, DSP(2)가 스 위치 회로(60K)를 레지스터(50)측으로 절환하고, 스위치 회로(60J)를 레지스터 0부터 순차적으로 절환함으로써, 레지스터(50)에 임펄스 응답 저장 메모리(55)의 레지스터 0~N-1로부터의 임펄스 응답 imp(0)~(N-1)이 순차적으로 입력된다. 그리고, 승산 회로(58)가, 레지스터(50)의 값과 레지스터(57)의 값을 순차적으로 승산함으로써, 위상 반전된 임펄스 응답 imp(0)~(N-1)을 나타내는 승산 결과가 필터 계수 저장 메모리(56)에 출력되게 된다.
필터 계수 저장 메모리(56)는, N개의 어드레스 0~N-1로 구성되어 있다. 그리고, 필터 계수 저장 메모리(56)의 어드레스 0~N-1에는, 스위치 회로(60L)를 순차적으로 절환함으로써, 승산 회로(58)에서 위상 반전된 임펄스 응답 imp(0)~(N-1)이 순차적으로 기억된다. 이 결과, FIR 필터(4)의 필터 계수로서, 위상 반전된 경로 B의 임펄스 응답 imp(0)~(N-1)(=IR2'(Z))가 설정되게 된다. 또한, FIR 필터(4)의 필터 계수에, 위상 반전된 경로 B의 임펄스 응답 imp(0)~(N-1)을 설정하는 이유에 대해서는, 후술하는 FIR 필터(4, 11)의 필터 계수에서 설명한다.
디지털 신호용 메모리(54)는, N개의 레지스터 0~N-1로 구성되어 있다. 그리고, 디지털 신호용 메모리(54)에는, 입력 단자(30)를 통하여 AD 컨버터(3)로부터의 디지털 신호가 순차적으로 입력된다. 그리고, 레지스터 0~N-1에 디지털 신호가 순차적으로 입력됨으로써, 디지털 신호는 1 샘플링 주기 단위씩 지연되게 된다. 예를 들면 디지털 신호를 Xn으로 하면, 레지스터 O은 Xn을 1 샘플링 주기 지연시킨 Xn-1을 레지스터 1에 출력하고, 레지스터 N-2는 Xn-(N-1)을 출력한다. 또한, 디지털 신호용 메모리(54)는, DSP(2)가 스위치 회로(60R)를 레지스터 0부터 레지스터 N-1로 순차적으로 절환함으로써, 레지스터(48)에 기억된 다른 쪽의 논리값 '0'에 의해 클리어된다.
그리고, 상술한 FIR 필터(11)과 마찬가지의 승산 회로(51), ADD(52)에 의한 처리가 행해진다. 이 결과, FIR 필터(4)는, 필터 계수 저장 메모리(56)에 기억된 필터 계수에 기초하여, 디지털 신호에 대하여 컨볼루션 연산 처리를 실시한 것으로 된다. 그리고, FIR 필터(4)는, 컨볼루션 연산 처리를 실시한 디지털 신호를, 출력 단자(31)에 출력한다.
또한, 본 실시예에서는, FIR 필터(4, 11)를 상술한 구성으로 설명하고 있지만, 이것에 한정되는 것은 아니다. 예를 들면, 도 7에 도시하는 구성으로 해도 된다. 이 경우, 디지털 신호용 메모리(42, 54)에 대응한 지연 회로(35a1~35aN-1), 승산 회로(51)에 대응한 승산 회로(36a0~36aN-1), ADD(52), ACC(53)에 대응한 가산 회로(37)를 설치해도 된다. 이하, 예를 들면 FIR 필터(4)가 도 7에 도시하는 구성으로 설치된 경우에 대하여 설명한다. 도 7에 도시하는 바와 같이, FIR 필터(4)는, 종속 접속된 N-1개의 지연 회로(35a1~35aN-1)와, 입력되는 디지털 신호를 각각 승산하는 N개의 승산 회로(36a0~36aN-1)와, 승산 회로(36a0~36aN-1)로부터의 출력을 합산하는 가산 회로(37)를 갖고 있다.
지연 회로(35a1~35aN-1)는, 입력 단자(30)를 통하여 입력되는 디지털 신호 Xn을, 샘플링의 주기 단위마다 지연시켜 출력한다. 예를 들면, 지연 회로(35a1)는 디지털 신호 Xn을 1 샘플링 주기 위상 지연시킨 디지털 신호 Xn-1을 출력하고, 지연 회로(35aN-1)는 디지털 신호 Xn-(N-1)를 출력한다.
승산 회로(36a0~36aN-1)는, 스위치 회로(60P, 60S)가 순차적으로 절환됨으로써, 필터 계수 저장 메모리(56)에 기억된 임펄스 응답 imp(0)~(N-1)이 승산 계수로서 각각 설정된다. 그리고, 승산 회로(36a0~36aN-1)는, 입력되는 디지털 신호에 대하여 설정된 승산 계수로 승산한 승산 결과를 출력한다.
가산 회로(37)는, 승산 회로(36a0~36aN-1)로부터의 출력을 합산한다. 이 결과, 상술한 FIR 필터(4)와 마찬가지의 컨볼루션 연산을 실시하는 것이 가능하게 된다.
===FIR 필터(4, 11)의 필터 계수===
도 2 및 도 3을 참조하면서 FIR 필터(4, 11)의 필터 계수에 대하여 상세하게 설명한다. 또한, 이어폰 마이크(18)는 입출력 단자(7)에 접속할 수 있다. 그리고, 입출력 단자(7)로부터 출력되는 아날로그 신호가 이어폰 마이크(18)에 입력되면, 이어폰 마이크(18)는 그 아날로그 신호에 기초하여 진동판(도시 생략)을 진동시킴으로써 음성을 출력한다. 또한, 이어폰 마이크(18)는, 이어폰 마이크(18)를 귀에 장착하고 있는 사람이 음성을 냈을 때의 고막의 진동을 진동판에서 포착함으로써 아날로그 신호를 생성하여 출력한다. 그리고, 이어폰 마이크(18)로부터 출력되는 아날로그 신호가 입출력 단자(7)로부터 입력된다.
상술한 바와 같이 증폭 회로(6)로부터의 아날로그 신호는, 입출력 단자(7)로부터의 출력뿐만 아니라, 차동 증폭 회로(9)의 + 입력 단자에도 입력되는 경우가 있다. 즉, 차동 증폭 회로(9)의 + 입력 단자에는, 증폭 회로(6)로부터의 아날로그 신호와, 입출력 단자(7)에 입력된 신호를 합한 신호가 입력된다. 또한, 입출력 단 자(7)에 입력되는 신호(제2 입력 신호)라는 것은, 음성 신호뿐만 아니라, 예를 들면 전기적 노이즈 신호나 환경 노이즈 등의 신호도 포함되는 것으로서 이하 설명한다. 그리고, 이 경우, 상기 아날로그 신호에 의한 에코가 발생하게 된다. 혹은, 입출력 단자(7)로부터 입력되는 음성 신호와 증폭 회로(6)로부터의 아날로그 신호가 중첩되어 차동 증폭 회로(9)의 + 입력 단자에 입력됨으로써, 에코가 발생하게 된다. 따라서, 이 에코를 방지하기 위해 FIR 필터(4, 11)의 필터 계수를 설정한다.
따라서, 도 2 또는 도 3의 파선으로 나타내는 출력 단자(31)로부터 차동 증폭 회로(9)의 + 입력 단자까지의 임펄스 응답(전달 함수)을 IR1(Z)로 한다. 또한, 도 2 또는 도 3의 파선으로 나타내는 출력 단자(32)로부터 차동 증폭 회로(9)의 - 입력 단자까지의 임펄스 응답(전달 함수)을 IR2(Z)로 한다. 또한, 도 2 또는 도 3의 파선으로 나타내는 차동 증폭 회로(9)에서의 ± 입력 단자의 후단으로부터 입력 단자(33)까지의 임펄스 응답(전달 함수)을 W(Z)로 한다.
이 때, 도 2 또는 도 3의 실선으로 나타내는 경로 A의 임펄스 응답(전달 함수) IR1'(Z)는, IR1'(Z)=IR1(Z)·W(Z)로 된다. 또한, 도 2 또는 도 3의 실선으로 나타내는 경로 B의 임펄스 응답(전달 함수) IR2'(Z)는, IR2'(Z)=-IR2(Z)·W(Z)로 된다. 또한, IR2(Z)가 위상 반전되어 있는 것은, 차동 증폭 회로(9)의 - 입력 단자에 입력되어 있기 때문이다.
여기서는, FIR 필터(4)의 필터 계수를, IR2'(Z)를 위상 반전한 -IR2'(Z)로 하면, FIR 필터(4)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_1(Z)은,
I Rall_1(Z)=-IR2'(Z)·IR1'(Z)
=(-(-IR2(Z)·W(Z)))·IR1(Z)·W(Z))
=IR2(Z)·W(Z)·IR1(Z)·W(Z)
로 된다. 또한, FIR 필터(11)의 필터 계수를 IR1'(Z)로 하면, FIR 필터(11)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_2(Z)는,
I Rall_2(Z)=IR1'(Z)·IR2'(Z)
=IR1(Z)·W(Z)·(-IR2(Z)·W(Z))
=IR1(Z)·W(Z)·(-IR2(Z))·W(Z)
=-I Rall_1(Z)
로 된다.
즉, FIR 필터(4)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_1(Z)과, FIR 필터(11)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_2(Z)는 서로 상쇄하는 특성으로 되는 것을 알 수 있다. 이 결과, FIR 필터(4)의 필터 계수를, IR2(Z)'를 위상 반전한 -IR2'(Z)로 하고, FIR 필터(11)의 필터 계수를 IR1'(Z)로 설정하면 되는 것을 알 수 있다.
혹은, FIR 필터(4)의 필터 계수를, IR2'(Z)로 하면, FIR 필터(4)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_1(Z)은,
I Rall_1(Z)=IR2'(Z)·IR1'(Z)
=(-IR2(Z)·W(Z))·(IR1(Z)·W(Z))
=-IR2(Z)·W(Z)·IR1(Z)·W(Z)
로 된다. 또한, FIR 필터(11)의 필터 계수를, IR1'(Z)를 위상 반전한 -IR1'(Z)로 하면, FIR 필터(11)의 입력으로 입력 단자(33)까지의 특성 I Rall_2(Z)는,
I Rall_2(Z)=-IR1'(Z)·IR2'(Z)
=(-(IR1(Z)·W(Z)))·(-IR2(Z)·W(Z))
=IR1(Z)·W(Z)·IR2(Z)·W(Z))
=-I Rall_1(Z)
로 된다.
즉, FIR 필터(4)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_1(Z)와, FIR 필터(11)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_2(Z)는 서로 상쇄하는 특성으로 되는 것을 알 수 있다. 이 결과, FIR 필터(4)의 필터 계수를, IR2'(Z)로 하고, FIR 필터(11)의 필터 계수를, IR1'(Z)를 위상 반전한 -IR1'(Z)로 설정하면 되는 것을 알 수 있다.
그리고, 이와 같이 FIR 필터(4, 11)의 필터 계수를 설정함으로써, 차동 증폭 회로(9)에서 경로 A를 전달하는 신호를, 경로 B를 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(30)에 디지털 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
그리고, 도 3에 도시하는 바와 같이, 이어폰 마이크(18)가 접속된 상태에서 임펄스 응답 IR1'(Z)를 취득하고, 이 IR1'(Z)를 FIR 필터(11)의 필터 계수로 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 임펄스 응답 IR1'(Z)를 취득하고, 이 IR1'(Z)를 FIR 필터(11)의 필터 계수로 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
==임펄스 응답 취득 처리에 의한 FIR 필터(4, 11)의 필터 계수 설정==
이하, 도 1 내지 도 6, 도 8을 참조하면서 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로에 의한 임펄스 응답 취득 처리, FIR 필터(4, 11)의 필터 계수 설정의 동작에 대하여 설명한다. 도 8은, 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 동작의 일례를 도시하는 플로우차트이다.
CPU(1)는, 예를 들면, 에코 방지 회로를 리셋하기 위한 리셋 신호가 입력되면, 임펄스 응답 취득 처리를 DSP(2)에 실행시키기 위해 지시 신호를, DSP(2)에 출력한다. 또한, CPU(1)는, 임펄스 응답 취득 처리의 초기 동작으로서, 다른 쪽의 논리값 '0'을 DSP(2)에 출력한다. DSP(2)에 입력된 다른 쪽의 논리값 '0'은, 레지스터(48, 49)에 입력된다.
DSP(2)는, 스위치 회로(60R)를 디지털 신호용 메모리(54)의 레지스터 0~레지스터 N-1에로 순차적으로 절환한다. 이 결과, 레지스터(48)에 기억된 다른 쪽의 논리값 '0'에 의해, 디지털 신호용 메모리(54)의 레지스터 0~N-1의 내용이 클리어된다(S101). 마찬가지로, DSP(2)는, 스위치 회로(60Q)를 디지털 신호용 메모리(42)의 레지스터 0~레지스터 N-1에로 순차적으로 절환한다. 이 결과, 레지스터 (48)에 기억된 다른 쪽의 논리값 '0'에 의해, 디지털 신호용 메모리(42)의 레지스터 0~N-1이 클리어된다(S102). 그리고, DSP(2)는, CPU(1)로부터의 상술한 지시 신호가 입력되었는지의 여부를 판별한다(S103).
DSP(2)는, CPU(1)로부터의 지시 신호가 입력되었다고 판별하면(S103·YES), 우선 스위치 회로(60H)를 레지스터(49)측으로 절환하고, 스위치 회로(60G)를 레지스터 0~레지스터 N-1로 순차적으로 절환한다. 이 결과, 레지스터(49)에 기억된 다른 쪽의 논리값 '0'에 의해, 임펄스 응답 저장 메모리(43)의 레지스터 0~레지스터 N-1의 내용이 클리어된다(S104). 이하, 임펄스 응답 저장 메모리(43)에 기억시키는 i번째의 임펄스 응답을 imp(i)(i=0, …, N-1)로 나타내어 설명한다. 그리고, DSP(2)는, 임펄스 응답 저장 메모리(43)의 레지스터 N-1에 기억시키는 임펄스 응답 imp(0)를 취득하기 위해 i=0으로 하고(S105), 입력 단자(30)를 하이 임피던스로 한 후에, 이하의 처리를 실행한다.
DSP(2)는, 도 2 또는 도 3에 도시한 경로 A의 임펄스 응답 imp(0)를 취득하기 위해, 상기 경로 A에 출력 단자(31)로부터의 임펄스 출력이 가능한지의 여부를 판별한다(S106). 예를 들면, 이 DSP(2)에 의한 판별로서는, 출력 단자(31)로부터의 신호의 출력이나 입력 단자(33)에의 신호의 입력이 이루어져 있는 상태인지의 여부를 판별함으로써 행한다. 만일, 출력 단자(31)로부터의 신호의 출력이나 입력 단자(33)로의 신호의 입력이 이루어져 있는 상태에서 임펄스를 출력하면, 정확한 임펄스 응답 imp(O)을 취득하지 못할 가능성이 있기 때문이다.
그리고, DSP(2)는, 경로 A에의 임펄스 출력이 가능하다고 판별하면(S106· YES), i=0인지의 여부를 판별한다(S107). S105에서 i=0이기 때문에, DSP(2)는 i=0이라고 판별하게 된다(S107·YES). 그리고, DSP(2)는, 임펄스용 메모리(45)의 레지스터 0에 한 쪽의 논리값 '1'을 기억시킨다. 또한, DSP(2)는, 임펄스용 메모리(45)의 다른 레지스터 1~N-1, 레지스터(46), 임펄스용 메모리(44)의 레지스터 0~N-1에, 다른 쪽의 논리값 '0'을 기억시킨다. 그리고, DSP(2)는, 스위치 회로(60C)를 임펄스용 메모리(45)측으로 절환하고, 스위치 회로(60A)를 임펄스용 메모리(44)측으로 절환하고, 스위치 회로(60T)를 레지스터(46)측으로 절환한다. 또한, DSP(2)는, 스위치 회로(60E)를 입력 단자(33)측으로 절환한다. 다음으로, DSP(2)는, 스위치 회로(60D, 60B)를 각각, 레지스터 0으로 절환한다. 이 결과, 임펄스용 메모리(45)의 레지스터 0에 기억된 한 쪽의 논리값 '1'에 의한 임펄스가 출력 단자(31)로부터 출력되게 된다(S108). 출력 단자(31)로부터 출력된 임펄스는, 경로 A를 전달하여 입력 단자(33)에 입력된다(S109). 이 결과, 임펄스 응답 imp(0)가 취득할 수 있게 된다(도 4의 (a)·imp(0)). 그리고, 이 임펄스 응답 imp(0)는, 우선 임펄스 응답 저장 메모리(43)의 레지스터 N-1에 기억된다.
다음으로, 임펄스 응답 imp(1)를 취득하기 위해, DSP(2)는 i를 인크리멘트하여, i=i+1=1로 한다(S110). 그리고, DSP(2)는, 취득한 임펄스 응답이 아직 imp(N-1)까지 도달하지 않았기 때문에 i≥N이 아니라고 판별하고(S111·NO), 상술한 S106의 처리를 재차 반복하게 된다. 또한, S110에서 i=1≠0으로 되어 있기 때문에(S107·NO), DSP(2)는, 스위치 회로(60D, 60B)를 각각, 레지스터 1로 절환한다. 이 결과, 출력 단자(31)로부터는 임펄스가 출력되지 않는다(S112). 그 때문에, 입 력 단자(33)에는, S108에서 출력된 임펄스의 1 샘플링 주기 위상 지연된 임펄스imp(1)가 입력된다. 그리고, 이 임펄스 응답 imp(1)는 임펄스 응답 저장 메모리(43)의 레지스터 N-1에 기억되고, 레지스터 N-1에 기억되어 있던 임펄스 응답 imp(0)는 레지스터 N-2에 기억되게 된다. 이와 같이, S106 내지 S111의 처리를 i≥N까지 반복함으로써(S111·YES), 임펄스 응답 imp(0)~imp(N-1)(=IR1'(Z))가 취득된다. 이 결과, 임펄스 응답 저장 메모리(43)의 레지스터 0~N-1에, 임펄스 응답 imp(0)~imp(N-1)이 기억된 것으로 된다.
DSP(2)는, 임펄스 응답 저장 메모리(43)의 레지스터 0~N-1에 기억되어 있는 임펄스 응답 imp(0)~imp(N-1)를, 필터 계수 저장 메모리(47)의 어드레스 O~N-1에 기억시키기 위해, 스위치 회로(60H)를 레지스터(50)측으로 절환하고, 스위치 회로(60G, 60I)를 각각 레지스터 0, 어드레스 0부터 순차적으로 절환한다. 상세하게 설명하면, DSP(2)는, 우선 임펄스 응답 imp(0)를 어드레스 0에 기억시키기 위해 i=0으로 한다(S113). 그리고, DSP(2)는, 스위치 회로(60G)를 레지스터 0으로 절환하고, 스위치 회로(601)를 어드레스 0으로 절환한다. 이 결과, 필터 계수 저장 메모리(47)의 어드레스 0에 임펄스 응답 imp(0)가 기억되게 된다(S114). 다음으로, DSP(2)는, 필터 계수 저장 메모리(47)의 어드레스 1에 임펄스 응답 imp(1)를 기억시키기 위해, i=i+1=1로 한다(S115). 그리고, DSP(2)는, 필터 계수 저장 메모리(47)의 어드레스 N-1까지 임펄스 응답이 기억되어 있지 않기 때문에 i≥N이 아니라고 판별하고(S116·NO), 상술한 S114의 처리를 재차 반복하게 된다. 즉, DSP(2)는, 스위치 회로(60G)를 레지스터 1로 절환하고, 스위치 회로(60I)를 어드레스 1로 절환한다. 이 결과, 어드레스 1에 임펄스 응답 imp(1)가 기억되게 된다(S114). 그리고, 상술한 S114 내지 S116의 처리를 i≥N까지 반복함으로써(S116·YES), 필터 계수 저장 메모리(47)의 어드레스 0~N-1에 임펄스 응답 imp(0)~imp(N-1)이 기억되게 된다. 즉, FIR 필터(11)의 필터 계수가 설정되게 된다.
다음으로, DSP(2)는, 스위치 회로(60K)를 레지스터(49)측으로 절환하고, 스위치 회로(60J)를 레지스터 0~레지스터 N-1로 순차적으로 절환한다. 이 결과, 레지스터(49)에 기억된 다른 쪽의 논리값 '0'에 의해, 임펄스 응답 저장 메모리(55)의 레지스터 0~레지스터 N-1이 클리어된다(S117). 이하, 임펄스 응답 저장 메모리(55)에 기억시키는 j번째의 임펄스 응답을 imp(j)(j=0, …, N-1)로 나타내어 설명한다. 그리고, DSP(2)는, 임펄스 응답 저장 메모리(55)의 레지스터 N-1에 기억시키는 임펄스 응답 imp(0)를 취득하기 위해 j=0으로 하고(S118), 이하의 처리를 실행한다.
DSP(2)는, 도 2 또는 도 3에 도시한 경로 B의 임펄스 응답 imp(0)를 취득하기 위해, 상기 경로 B로 임펄스 출력이 가능한지의 여부를 판별한다(S119). 이 DSP(2)에 의한 판별은, 상술한 S106과 마찬가지이다.
그리고, DSP(2)는, 경로 B로의 임펄스 출력이 가능하다고 판별하면(S119·YES), j=O인지의 여부를 판별한다(S120). S118에서 j=O이기 때문에, DSP(2)는 j=O이라고 판별하게 된다(S120·YES). 그리고, DSP(2)는, 임펄스용 메모리(44)의 레지스터 0에 한 쪽의 논리값 '1'을 기억시킨다. 또한, DSP(2)는, 임펄스용 메모리(44)의 다른 레지스터 1~N-1, 레지스터(46), 임펄스용 메모리(45)의 레지스터 0~N- 1에, 다른 쪽의 논리값 '0'을 기억시킨다. 그리고, DSP(2)는, 스위치 회로(60F)를 입력 단자(33)측으로 절환한다. 다음으로, DSP(2)는, 스위치 회로(60D, 60B)를 각각 레지스터 0으로 절환한다. 이 결과, 임펄스용 메모리(44)의 레지스터 0에 기억된 한 쪽의 논리값 '1'에 의한 임펄스가 출력 단자(32)로부터 출력되게 된다(S121). 출력 단자(32)로부터 출력된 임펄스는, 경로 B를 전달하여 입력 단자(33)에 입력된다(S122). 이 결과, 임펄스 응답 imp(0)가 취득되게 된다(도 4의 (b)·imp(0)). 그리고, 이 임펄스 응답 imp(0)는, 우선 임펄스 응답 저장 메모리(55)의 레지스터 N-1에 기억된다.
다음으로, 임펄스 응답 imp(1)를 취득하기 위해, DSP(2)는 j를 인크리먼트해서, j=j+1=1로 한다(S123). 그리고, DSP(2)는, 취득한 임펄스 응답이 아직 imp(N-1)까지 도달하지 않았기 때문에 j≥N이 아니라고 판별하고(S124·NO), 상술한 S119의 처리를 재차 반복하게 된다. 또한, S123에서 j=1≠0으로 되어 있기 때문에(S120·NO), DSP(2)는, 스위치 회로(60D, 60B)를 각각, 레지스터 1로 절환한다. 이 결과, 출력 단자(32)로부터는 임펄스가 출력되지 않는다(S125). 그 때문에, 입력 단자(33)에는, S121에서 출력된 임펄스의 1 샘플링 주기 위상 지연된 임펄스imp(1)가 입력된다. 그리고, 이 임펄스 응답 imp(1)는 임펄스 응답 저장 메모리(55)의 레지스터 N-1에 기억되고, 레지스터 N-1에 기억되어 있던 임펄스 응답 imp(0)는 레지스터 N-2에 기억되게 된다. 이와 같이, S119 내지 S124의 처리를 j≥N까지 반복함으로써(S124·YES), 임펄스 응답 imp(0)~imp(N-1)(=IR2'(Z))이 취득된다. 이 결과, 임펄스 응답 저장 메모리(55)의 레지스터 0~N-1에, 임펄스 응답 imp(0)~imp(N-1)이 기억되게 된다.
DSP(2)는, 임펄스 응답 저장 메모리(55)의 레지스터 0~N-1에 기억되어 있는 임펄스 응답 imp(0)~imp(N-1)을, 위상 반전시켜 필터 계수 저장 메모리(56)의 어드레스 0~N-1에 기억시키기 위해, 스위치 회로(60K)를 레지스터(50)측으로 절환하고, 스위치 회로(60J, 60L)를 각각 레지스터 O, 어드레스 O부터 순차적으로 절환한다. DSP(2)는, 우선 위상 반전된 임펄스 응답 imp(0)를 어드레스 0에 기억시키기 위해 j=0으로 한다(S126). 그리고, DSP(2)는, 스위치 회로(60J)를 레지스터 0으로 절환하고, 스위치 회로(60L)를 어드레스 O으로 절환한다. 이 때, 레지스터 O으로부터의 imp(0)는, 승산 회로(58)에서 레지스터(57)의 값과 승산됨으로써 위상 반전된다. 이의 결과, 필터 계수 저장 메모리(47)의 어드레스 0에는, 위상 반전된 임펄스 응답 imp(0)가 기억되게 된다(S127). 다음으로, DSP(2)는, 필터 계수 저장 메모리(47)의 어드레스 1에 임펄스 응답 imp(1)를 기억시키기 위해, j=j+1=1로 한다(S128). 그리고, DSP(2)는, 필터 계수 저장 메모리(56)의 어드레스 N-1까지 임펄스 응답이 기억되어 있지 않기 때문에 j≥N이 아니라고 판별하고(S129·NO), 상술한 S127의 처리를 재차 반복하게 된다. 즉, DSP(2)는, 스위치 회로(60J)를 레지스터 1로 절환하고, 스위치 회로(60L)를 어드레스 1로 절환한다. 그리고, 레지스터 1로부터의 imp(1)는, 승산 회로(58)에서 레지스터(57)의 값과 승산됨으로써 위상 반전된다. 이 결과, 어드레스 1에 위상 반전된 임펄스 응답 imp(1)가 기억되게 된다(S127). 그리고, 상술한 S127 내지 S129의 처리를 j≥N까지 반복함으로써(S129·YES), 필터 계수 저장 메모리(56)의 어드레스 0~N-1에, 위상 반전된 임펄스 응답 imp(0)~imp(N-1)이 기억되게 된다. 즉, FIR 필터(4)의 필터 계수가 설정되게 된다.
또한, 상술한 실시예에 따르면, 상술한 처리에 대하여 하드웨어(예를 들면 스위치 회로(60) 등)를 이용하여 설명하였지만, 이것에 한하는 것은 아니다. 예를 들면, 상술한 처리를 프로그램 데이터로서 ROM(Read Only Memory) 등에 미리 기억시켜 두고, DSP(2)가 구비하는 프로세서가 이 프로그램 데이터를 읽어내어 처리하는 것도 가능하다.
<<제2 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예===
도 9는, 제2 실시예를 도시하는 도면이다. 도 9는, 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 일례를 도시하는 블록도이다. 또한, 도 9에 도시하는 에코 방지 회로에서, 상술한 제1 실시예와 동일한 구성 요건에 대해서는, 동일 번호를 붙이고 설명을 생략한다.
에코 방지 회로는, CPU(1), DSP(2), AD 컨버터(3), DA 컨버터(5), 증폭 회로(6), 입출력 단자(7), 가산 회로(63), 증폭 회로(10), AD 컨버터(14), DA 컨버터(15), DA 컨버터(12), 반전 증폭 회로(61)(반전 회로), 이득 위상 조정 회로(G/P)(75)를 갖고 있다.
즉, 본 실시예는, 제1 실시예에서의 차동 증폭 회로(9), 증폭 회로(13) 대신에, 반전 증폭 회로(61), 이득 위상 조정 회로(75), 가산 회로(63)를 설치한 구성으로 되어 있다. 또한, 본 실시예에서도 CPU(1)를 구성 요건으로 하고 있지만, CPU(1)를 구성 요건으로 하지 않는 것도 가능하다.
또한, DSP(2)는, 입력 단자(30), FIR 필터(4), 출력 단자(31), FIR 필터(11), 출력 단자(32), 입력 단자(33), 출력 단자(34)를 갖고 있다.
반전 증폭 회로(61)는, DA 컨버터(12)로부터의 아날로그 신호를, 소정의 증폭률로 반전 증폭하여 이득 위상 조정 회로(75)에 출력한다.
이득 위상 조정 회로(75)는, 반전 증폭 회로(61)로부터의 아날로그 신호에 대하여, 이득 및 위상의 조정을 실시하여 가산 회로(63)에 출력한다. 또한, 이 이득 위상 조정 회로(75)에 의한 아날로그 신호의 이득 및 위상의 조정은, 입력 단자(30)에 디지털 신호가 입력되었을 때의 후술하는 가산 회로(63)의 출력을 제로로 하기 때문에, 증폭 회로(6)로부터의 아날로그 신호와는 위상 반전된 아날로그 신호를 생성하기 위해 행해진다.
가산 회로(63)는, 증폭 회로(6)로부터의 아날로그 신호가 입력된다. 그리고, 가산 회로(63)는, 증폭 회로(6)로부터의 아날로그 신호와, 이득 위상 조정 회로(75)로부터의 아날로그 신호를 가산한 가산 결과를 증폭 회로(10)에 출력한다. 또한, 가산 회로(63)는, 입출력 단자(7)로부터의 음성 신호를 증폭 회로(10)에 출력한다.
===FIR 필터(4, 11)의 필터 계수===
도 10 및 도 11을 참조하면서 FIR 필터(4, 11)의 필터 계수에 대하여 상세하게 설명한다. 도 10은, 도 9에 도시하는 에코 방지 회로의 경로(C, D)를 도시한 도면이다. 또한, 도 11은, 경로 C에 이어폰 마이크(18)가 포함되는 경우를 도시한 도면이다.
증폭 회로(6)로부터의 아날로그 신호는, 입출력 단자(7)로부터의 출력뿐만 아니라, 가산 회로(63)에 입력되는 경우가 있다. 이 경우, 이 아날로그 신호에 의한 에코가 발생하게 된다. 혹은, 입출력 단자(7)로부터 입력되는 음성 신호와 증폭 회로(6)로부터의 아날로그 신호가 중첩되어 가산 회로(63)에 입력됨으로써, 에코가 발생하게 된다. 따라서, 이 에코를 방지하기 위해 FIR 필터(4, 11)의 필터 계수를 설정한다.
따라서, 도 10 또는 도 11의 파선으로 나타내는 출력 단자(31)로부터 가산 회로(63)의 입력 단자까지의 임펄스 응답(전달 함수)을 IR3(Z)으로 한다. 또한, 도 10 또는 도 11의 일점 쇄선으로 나타내는 출력 단자(32)로부터 반전 증폭 회로(61)의 입력까지의 임펄스 응답(전달 함수)을 IR4_1(Z)로 한다. 또한, 도 10 또는 도 11의 이점 쇄선으로 나타내는 반전 증폭 회로(61)의 입력으로부터 가산 회로(63)의 입력 단자까지의 임펄스 응답(전달 함수)을 IR4_2(Z)로 한다. 또한, 도 10 또는 도 11의 파선으로 나타내는 가산 회로(63)에서의 각 입력 단자의 후단으로부터 입력 단자(33)까지의 임펄스 응답(전달 함수)을 W2(Z)로 한다.
이 때, 도 10 또는 도 11의 실선으로 나타내는 경로 C의 임펄스 응답(전달 함수) IR3'(Z)는, IR3'(Z)=IR3(Z)·W2(Z)로 된다. 또한, 도 10 또는 도 11의 실선으로 나타내는 경로 D의 임펄스 응답(전달 함수) IR4'(Z)는, IR4'(Z)=-IR4_1(Z)·IR4_2(Z)·W2(Z)로 된다. 또한, IR4_1(Z)이 위상 반전되어 있는 것은, 반전 증폭 회로(61)에서 반전되기 때문이다.
여기에서는, FIR 필터(4)의 필터 계수를, IR4'(Z)를 위상 반전한 -IR4'(Z)로 하면, FIR 필터(4)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_3(Z)은,
I Rall_3(Z)=-IR4'(Z)·IR3'(Z)
=(-(-IR4_1(Z)·IR4_2(Z)·W2(Z)))·
(IR3(Z)·W2(Z))
=IR4_1(Z)·IR4_2(Z)·W2(Z)·IR3(Z)·W2(Z)
로 된다. 또한, FIR 필터(11)의 필터 계수를 IR3'(Z)로 하면, FIR 필터(11)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_4(Z)는,
I Rall_4(Z)=IR3'(Z)·IR4'(Z)
=IR3(Z)·W2(Z)·(-IR4_1(Z)·
IR4_2(Z)·W2(Z))
=IR3(Z)·W2(Z)·(-IR4_1(Z))·
IR4_2(Z)·W2(Z)
=-I Rall_3(Z)
로 된다.
즉, FIR 필터(4)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_3(Z)과, FIR 필터(11)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_4(Z)는 서로 상쇄하는 특성으로 되는 것을 알 수 있다. 이 결과, FIR 필터(4)의 필터 계수를 IR4'(Z)를 위상 반전한 -IR4'(Z)로 하고, FIR 필터(11)의 필터 계수를 IR3'(Z)로 설정하면 되는 것을 알 수 있다.
혹은, FIR 필터(4)의 필터 계수를, IR4'(Z)로 하면, FIR 필터(4)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_3(Z)는,
I Rall_3(Z)=IR4'(Z)·IR3'(Z)
=(-IR4_1(Z)·IR4_2(Z)·W2(Z))·
(IR3(Z)·W2(Z))
=-IR4_1(Z)·IR4_2(Z)·W2(Z)·IR3(Z)·W2(Z)
로 된다. 또한, FIR 필터(11)의 필터 계수를, IR3'(Z)를 위상 반전한 -IR3'(Z)로 하면, FIR 필터(11)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_4(Z)는,
I Rall_4(Z)=-IR3'(Z)·IR4'(Z)
=-(IR3(Z)·W2(Z))·(-IR4_1(Z)·
IR4_2(Z)·W2(Z))
=IR3(Z)·W2(Z)·IR4_1(Z)·IR4_2(Z)·W2(Z)
=-I Rall_3(Z)
로 된다.
즉, FIR 필터(4)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_3(Z)과, FIR 필터(11)의 입력으로부터 입력 단자(33)까지의 특성 I Rall_4(Z)는 서로 상쇄하는 특성으로 되는 것을 알 수 있다. 이 결과, FIR 필터(4)의 필터 계수를 IR4'(Z)로 하고, FIR 필터(11)의 필터 계수를, IR3'(Z)를 위상 반전한 -IR3'(Z)로 하면 되는 것을 알 수 있다.
그리고, 이와 같이 FIR 필터(4, 11)의 필터 계수를 설정함으로써, 가산 회로 (63)에서 경로 C를 전달하는 신호를, 경로 D를 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(30)에 디지털 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
그리고, 도 11에 도시하는 바와 같이, 이어폰 마이크(18)가 접속된 상태에서 임펄스 응답 IR3'(Z)를 취득하고, 이 IR3'(Z)를 FIR 필터(11)의 필터 계수로 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 임펄스 응답 IR3'(Z)를 취득하고, 이 IR3'(Z)를 FIR 필터(11)의 필터 계수로 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 이 FIR 필터(4)의 필터 계수에 IR4'(Z)를 위상 반전한 -IR4'(Z)를 설정하고, FIR 필터(11)의 필터 계수에 IR3'(Z)를 설정하는 처리는, 제1 실시예와 마찬가지의 처리를 행함으로써 가능하게 된다.
<<제3 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예===
도 12는, 제3 실시예를 도시하는 도면이다. 도 12는, 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로(DSP(64))의 일례를 도시하는 블록도이다. 또한, 도 12에 도시하는 에코 방지 회로에서, 상술한 제1 실시예와 동일한 구성 요건에 대해서는, 동일 번호를 붙이고 설명을 생략 한다.
에코 방지 회로는, CPU(1), DSP(64), 증폭 회로(6), 입출력 단자(7), 차동 증폭 회로(9), 증폭 회로(10), 증폭 회로(13)를 갖고 있다. 또한, 본 실시예에서도 CPU(1)를 구성 요건으로 하고 있지만, CPU(1)를 구성 요건으로 하지 않는 것도 가능하다.
또한, DSP(64)는, 입력 단자(65)(제1 입력 단자), AD 컨버터(66), FIR 필터(4), DA 컨버터(67)(제1 DA 컨버터), 출력 단자(68)(제1 출력 단자), 입력 단자(69)(제2 입력 단자), AD 컨버터(70), DA 컨버터(71), 출력 단자(72)(제3 출력 단자), FIR 필터(11), DA 컨버터(73)(제2 DA 컨버터), 출력 단자(74)(제2 출력 단자)를 갖고 있다.
즉, 본 실시예는, 제1 실시예에서의 AD 컨버터(3, 14), DA 컨버터(5, 12, 15)가 DSP(64) 내부에 설치된 구성으로 되어 있다.
AD 컨버터(66)에는, 입력 단자(65)를 통하여, 예를 들면 음성 신호가 입력된다. 그리고, AD 컨버터(66)는, 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를, FIR 필터(4, 11)에 출력한다.
FIR 필터(4)는 디지털 신호에 대하여, 이 FIR 필터(4)의 필터 계수에 기초하여 컨볼루션 연산 처리를 실시하여 DA 컨버터(67)에 출력한다. 또한 동시에, FIR 필터(11)는 디지털 신호에 대하여, 이 FIR 필터(11)의 필터 계수에 기초하여 컨볼루션 연산 처리를 실시하여 DA 컨버터(73)에 출력한다.
DA 컨버터(67)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날 로그 신호를, 출력 단자(68)를 통하여 출력시킨다. 이 결과, 증폭 회로(6)에는, DA 컨버터(67)로부터의 아날로그 신호가 입력된다.
DA 컨버터(73)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를, 출력 단자(74)를 통하여 출력시킨다. 이 결과, 증폭 회로(13)에는, DA 컨버터(73)로부터의 아날로그 신호가 입력된다.
AD 컨버터(70)에는, 입력 단자(69)를 통하여, 증폭 회로(10)로부터의 음성 신호가 입력된다. 그리고, AD 컨버터(70)는, 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를, DA 컨버터(71)에 출력한다.
DA 컨버터(71)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를, 출력 단자(72)를 통하여 출력시킨다.
===FIR 필터(4, 11)의 필터 계수===
도 13 및 도 14를 참조하면서 FIR 필터(4, 11)의 필터 계수에 대하여 상세하게 설명한다. 도 13은, 도 12에 도시하는 에코 방지 회로의 경로(E, F)를 도시한 도면이다. 또한, 도 14는, 경로 E에 이어폰 마이크(18)가 포함되는 경우를 도시한 도면이다.
증폭 회로(6)로부터의 아날로그 신호는, 입출력 단자(7)로부터의 출력뿐만 아니라, 차동 증폭 회로(9)에 입력되는 경우가 있다. 이 경우, 이 아날로그 신호에 의한 에코가 발생하게 된다. 혹은, 입출력 단자(7)로부터 입력되는 음성 신호와 증폭 회로(6)로부터의 아날로그 신호가 중첩되어 차동 증폭 회로(9)에 입력됨으로써, 에코가 발생하게 된다. 따라서, 이 에코를 방지하기 위해 FIR 필터(4, 11)의 필터 계수를 설정한다.
따라서, 도 13 또는 도 14의 파선으로 나타내는 DA 컨버터(67)의 입력으로부터 차동 증폭 회로(9)의 + 입력 단자까지의 임펄스 응답(전달 함수)을 IR5(Z)로 한다. 또한, 도 13 또는 도 14의 파선으로 나타내는 DA 컨버터(73)의 입력으로부터 차동 증폭 회로(9)의 - 입력 단자까지의 임펄스 응답(전달 함수)을 IR6(Z)으로 한다. 또한, 도 13 또는 도 14의 파선으로 나타내는 차동 증폭 회로(9)의 ± 입력 단자의 후단으로부터 AD 컨버터(70)의 출력까지의 임펄스 응답(전달 함수)을 W3(Z)으로 한다.
이 때, 도 13 또는 도 14의 실선으로 나타내는 경로 E의 임펄스 응답(전달 함수) IR5'(Z)는, IR5'(Z)=IR5(Z)·W3(Z)로 된다. 또한, 도 13 또는 도 14의 실선으로 나타내는 경로 F의 임펄스 응답(전달 함수) IR6'(Z)는, IR6'(Z)=-IR6(Z)·W3(Z)로 된다. 또한, IR6(Z)가 위상 반전되어 있는 것은, 차동 증폭 회로(9)의 - 입력 단자에 입력되고 있기 때문이다.
여기서는, FIR 필터(4)의 필터 계수를, IR6'(Z)를 위상 반전한 -IR6'(Z)로 하면, FIR 필터(4)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_5(Z)는,
I Rall_5(Z)=-IR6'(Z)·IR5'(Z)
=(-(-IR6(Z)·W3(Z)))·(IR5(Z)·W3(Z))
=IR6(Z)·W3(Z)·IR5(Z)·W3(Z)
로 된다. 또한, FIR 필터(11)의 필터 계수를 IR5'(Z)로 하면, FIR 필터(11)의 입 력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_6(Z)은,
I Rall_6(Z)=IR5'(Z)·IR6'(Z)
=IR5(Z)·W3(Z)·(-IR6(Z)·W3(Z))
=IR5(Z)·W3(Z)·(-IR6(Z))·W3(Z)
=-I Rall_5(Z)
로 된다.
즉, 경로 E의 특성 I Rall_5(Z)와 경로 F의 특성 I Rall_6(Z)은 서로 상쇄하는 특성으로 되는 것을 알 수 있다. 이 결과, FIR 필터(4)의 필터 계수를 IR6'(Z)를 위상 반전한 -IR6'(Z)로 하고, FIR 필터(11)의 필터 계수를 IR5'(Z)로 설정하면 되는 것을 알 수 있다.
혹은, FIR 필터(4)의 필터 계수를 IR6'(Z)로 하면, FIR 필터(4)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_5(Z)는,
I Rall_5(Z)=IR6'(Z)·IR5'(Z)
=(-IR6(Z)·W3(Z))·(IR5(Z)·W3(Z))
=-IR6(Z)·W3(Z)·IR5(Z)·W3(Z)
로 된다. 또한, FIR 필터(11)의 필터 계수를, IR5'(Z)를 위상 반전한 -IR5'(Z)로 하면, FIR 필터(11)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_6(Z)는,
I Rall_6(Z)=-IR5'(Z)·IR6'(Z)
=(-(IR5(Z)·W3(Z))·(-IR6(Z)·W3(Z))
=IR5(Z)·W3(Z)·IR6(Z)·W3(Z)
=-I Rall_5(Z)
로 된다.
즉, 경로 E의 특성 I Rall_5(Z)와 경로 F의 특성 I Rall_6(Z)은 서로 상쇄하는 특성으로 되는 것을 알 수 있다. 이 결과, FIR 필터(4)의 필터 계수를 IR6'(Z)로 하고, FIR 필터(11)의 필터 계수를, IR5'(Z)를 위상 반전한 -IR5'(Z)로 설정하면 되는 것을 알 수 있다.
그리고, 이와 같이 FIR 필터(4, 11)의 필터 계수를 설정함으로써, 차동 증폭 회로(9)에서 경로 E를 전달하는 신호를, 경로 F를 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(65)에 음성 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
그리고, 도 14에 도시하는 바와 같이, 이어폰 마이크(18)가 접속된 상태에서 임펄스 응답 IR5'(Z)를 취득하고, 이 IR5'(Z)를 FIR 필터(11)의 필터 계수로 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 임펄스 응답 IR5'(Z)를 취득하고, 이 IR5'(Z)를 FIR 필터(11)의 필터 계수로 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 이 FIR 필터(4)의 필터 계수에 IR6'(Z)를 위상 반전한 -IR6'(Z)를 설 정하고, FIR 필터(11)의 필터 계수에 IR5'(Z)를 설정하는 처리는, 제1 실시예와 마찬가지의 처리를 행함으로써 가능하게 된다.
<<제4 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예===
도 15는, 제4 실시예를 도시하는 도면이다. 도 15는, 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로(DSP(64))의 일례를 도시하는 블록도이다.
또한, 도 15에 도시하는 바와 같이 제4 실시예에서의 에코 방지 회로는, 상술한 제2 실시예(도 9), 제3 실시예(도 12)를 조합한 구성으로 되어 있고, 동일한 구성 요건에 대해서는 동일 번호를 붙이고 설명을 생략한다.
===FIR 필터(4, 11)의 필터 계수===
도 16 및 도 17을 참조하면서 FIR 필터(4, 11)의 필터 계수에 대하여 상세하게 설명한다. 도 16은, 도 15에 도시하는 에코 방지 회로의 경로(G, H)를 도시한 도면이다. 또한, 도 17은, 경로 G에 이어폰 마이크(18)가 포함되는 경우를 도시한 도면이다.
증폭 회로(6)로부터의 아날로그 신호는, 입출력 단자(7)로부터의 출력뿐만 아니라, 가산 회로(63)에 입력되는 경우가 있다. 이 경우, 이 아날로그 신호에 의한 에코가 발생하게 된다. 혹은, 입출력 단자(7)로부터 입력되는 음성 신호와 증폭 회로(6)로부터의 아날로그 신호가 중첩되어 가산 회로(63)에 입력됨으로써, 에코가 발생하게 된다. 따라서, 이 에코를 방지하기 위해 FIR 필터(4, 11)의 필터 계수를 설정한다.
따라서, 도 16 또는 도 17의 파선으로 나타내는 DA 컨버터(67)의 입력으로부터 가산 회로(63)의 입력 단자까지의 임펄스 응답(전달 함수)을 IR7(Z)로 한다. 또한, 도 16 또는 도 17의 일점 쇄선으로 나타내는 DA 컨버터(73)의 입력으로부터 반전 증폭 회로(61)의 입력까지의 임펄스 응답(전달 함수)을 IR8_1(Z)로 한다. 또한, 도 16 또는 도 17의 이점 쇄선으로 나타내는 반전 증폭 회로(61)의 입력으로부터 가산 회로(63)의 입력 단자까지의 임펄스 응답(전달 함수)을 IR8_2(Z)로 한다. 또한, 도 16 또는 도 17의 파선으로 나타내는 가산 회로(63)에서의 각 입력 단자의 후단으로부터 AD 컨버터(70)의 출력까지의 임펄스 응답(전달 함수)을 W4(Z)로 한다.
이 때, 도 16 또는 도 17의 실선으로 나타내는 경로 G의 임펄스 응답(전달 함수) IR7'(Z)는, IR7'(Z)=IR7(Z)·W4(Z)로 된다. 또한, 도 16 또는 도 17의 실선으로 나타내는 경로 H의 임펄스 응답(전달 함수) IR8'(Z)는, IR8'(Z)=-IR8_1(Z)·IR8_2(Z)·W4(Z)로 된다. 또한, IR8_1(Z)가 위상 반전되어 있는 것은, 반전 증폭 회로(61)에서 반전되기 때문이다.
여기서는, FIR 필터(4)의 필터 계수를, IR8'(Z)를 위상 반전한 -IR8'(Z)로 하면, FIR 필터(4)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_7(Z)는,
I Rall_7(Z)=-IR8'(Z)·IR7'(Z)
=(-(-IR8_1(Z)·IR8_2(Z)·W4(Z)))·(IR7(Z)·W4(Z))
=IR8_1(Z)·IR8_2(Z)·W4(Z)·IR7(Z)·W4(Z)
로 된다. 또한, FIR 필터(11)의 필터 계수를 IR7'(Z)로 하면, FIR 필터(11)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_8(Z)는,
I Rall_8(Z)=IR7'(Z)·IR8'(Z)
=IR7(Z)·W4(Z)·(-IR8_1(Z)·IR8_2(Z)·W4(Z))
=IR7(Z)·W4(Z)·(-IR8_1(Z))·IR8_2(Z)·W4(Z)
=-I Rall_7(Z)
로 된다.
즉, FIR 필터(4)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_7(Z)과, FIR 필터(11)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_8(Z)은 서로 상쇄하는 특성으로 되는 것을 알 수 있다. 이 결과, FIR 필터(4)의 필터 계수를 IR8'(Z)를 위상 반전한 -IR8'(Z)로 하고, FIR 필터(11)의 필터 계수를 IR7'(Z)로 설정하면 되는 것을 알 수 있다.
혹은, FIR 필터(4)의 필터 계수를, IR8'(Z)로 하면, FIR 필터(4)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_7(Z)은,
I Rall_7(Z)=IR8'(Z)·IR7'(Z)
=(-IR8_1(Z)·IR8_2(Z)·W4(Z))·(IR7(Z)·W4(Z))
=-IR8_1(Z)·IR8_2(Z)·W4(Z)·IR7(Z)·W4(Z)
로 된다. 또한, FIR 필터(11)의 필터 계수를, IR7'(Z)를 위상 반전한 -IR7'(Z)로 하면, FIR 필터(11)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_8(Z) 은,
IRdll_8(Z)=-IR7'(Z)·IR8'(Z)
=(-(IR7(Z)·W4(Z)))·(-IR8_1(Z)·IR8_2(Z)·W4(Z))
=IR7(Z)·W4(Z)·IR8_1(Z)·IR8_2(Z)·W4(Z)
=-I Rall_7(Z)
로 된다.
즉, FIR 필터(4)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_7(Z)과, FIR 필터(11)의 입력으로부터 AD 컨버터(70)의 출력까지의 특성 I Rall_8(Z)은 서로 상쇄하는 특성으로 되는 것을 알 수 있다. 이 결과, FIR 필터(4)의 필터 계수를 IR8'(Z)로 하고, FIR 필터(11)의 필터 계수를, IR7'(Z)를 위상 반전한 -IR7'(Z)로 설정하면 되는 것을 알 수 있다.
그리고, 이와 같이 FIR 필터(4, 11)의 필터 계수를 설정함으로써, 가산 회로(63)에서 경로 G를 전달하는 신호를, 경로 H를 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(65)에 음성 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
그리고, 도 17에 도시하는 바와 같이, 이어폰 마이크(18)가 접속된 상태에서 임펄스 응답 IR7'(Z)를 취득하고, 이 IR7'(Z)를 FIR 필터(11)의 필터 계수로 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 임펄스 응답 IR7'(Z)를 취득하고, 이 IR7'(Z)를 FIR 필터(11)의 필터 계수로 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 이 FIR 필터(4)의 필터 계수에 IR8'(Z)를 위상 반전한 -IR8'(Z)를 설정하고, FIR 필터(11)의 필터 계수에 IR7'(Z)를 설정하는 처리는, 제1 실시예와 마찬가지의 처리를 행함으로써 가능하게 된다.
<<제5 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예 ===
도 18은, 제5 실시예를 도시하는 도면이다. 도 18은, 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되는 디지털 신호 처리 회로(DSP(83))의 일례를 도시하는 블록도이다. 또한, 도 18에 도시하는 에코 방지 회로에서, 상술한 제1 실시예와 동일한 구성 요건에 대해서는, 동일 번호를 붙이고 설명을 생략한다. 도 19는, 도 18에 도시하는 ADF(Adaptive Digital Filter·적응 디지털 필터)(76)의 상세도이다.
DSP(83)는, 입력 단자(30), FIR 필터(4), ADF(76), 출력 단자(31), FIR 필터(11), 출력 단자(32), 입력 단자(33), 감산 회로(77), 출력 단자(34)를 갖고 있다.
감산 회로(77)의 + 입력 단자에는, 입력 단자(33)를 통하여, AD 컨버터(14)로부터의 디지털 신호가 입력된다. 또한, 감산 회로(77)의 - 입력 단자에는, ADF(76)로부터의 출력 신호가 입력된다. 그리고, 감산 회로(77)는, AD 컨버터(14)로부터의 디지털 신호와 ADF(76)로부터의 출력 신호를 감산하여 출력한다. 이하, 감산 회로(77)로부터의 출력 신호를 오차 신호라고 한다.
ADF(76)는, 도 19의 파선 내에 도시하는 바와 같이, 참조 신호 입출력부(78), 필터 계수부(79), 승산부(80), 필터 계수 갱신부(81), 가산부(82)를 갖고 있다.
참조 신호 입출력부(78)는, FIR 필터(4)로부터의 디지털 신호(이하, 참조 신호 입출력부(78)에 입력되는 디지털 신호를 참조 신호라고 함)가 입력되어, 상기 참조 신호를 유지한다. 그리고, 참조 신호 입출력부(78)는, 승산부(80), 필터 계수 갱신부(81)에 대하여 참조 신호를 출력한다.
필터 계수부(79)는, 필터 계수 갱신부(81)로부터의 필터 계수가 입력되어, 상기 필터 계수를 유지한다. 그리고, 필터 계수부(79)는, 상술한 참조 신호 입출력부(78)로부터 승산부(80)로의 참조 신호의 출력과 함께, 이 승산부(80)에 대하여 필터 계수를 출력한다. 또한, 필터 계수부(79)는, 필터 계수 갱신부(81)에 대하여 필터 계수를 출력한다.
승산부(80)는, 참조 신호와 필터 계수를 순차적으로 승산한 승산 결과를 가산부(82)에 출력한다. 가산부(82)는, 승산부(80)로부터의 출력 신호를 순차적으로 가산한 결과를 감산 회로(77)에 출력한다.
필터 계수 갱신부(81)에는, 감산 회로(77)로부터의 오차 신호가 입력된다. 그리고, 필터 계수 갱신부(81)는, 오차 신호, 참조 신호, 필터 계수에 기초하여, 예를 들면 LMS(Least Mean Square) 알고리즘이나 NLMS(Normalized Least Mean Square:학습 동정법) 등의 추정 알고리즘에 의해 필터 계수를 산출하여 필터 계수 부(79)에 출력한다. 또한, 이 필터 계수 갱신부(81)에 의한 필터 계수의 산출은, 입력 단자(30)에 디지털 신호가 입력되었을 때의, 감산 회로(77)로부터의 오차 신호의 평균값이 일정값 이하로 되도록 행해진다. 또한, 이 일정값이라는 것은, 예를 들면 오차 신호의 평균값이 일정값 이하로 되었을 때의, DA 컨버터(15)로부터 출력되는 아날로그 신호에 기초하여 발생하는 음성으로부터, 사람이 에코를 청각할 수 없는 레벨로 되도록 정해지는 값이다.
DA 컨버터(15)는, 출력 단자(34)를 통하여, 감산 회로(77)로부터의 디지털 신호가 입력된다. 그리고, DA 컨버터(15)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 출력한다.
===필터 계수부(79)의 필터 계수 갱신===
도 19, 도 20을 참조하면서, 필터 계수부(79)의 필터 계수를 갱신하기 위한 처리 동작의 일례에 대하여 설명한다. 도 20은, 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 처리 동작의 일례를 도시하는 플로우차트이다. 또한, 이하의 설명에서는, 입력 단자(30)에 디지털 신호가 입력된 시각 t에서, 감산 회로(77)의 + 입력 단자에 입력되는 디지털 신호를 Yt, 참조 신호 입출력부(78)에 입력되는 참조 신호를 Xt(={Xt(0), Xt(1), …, Xt(N-1)})로 나타낸다. 또한, 필터 계수부(79)의 필터 계수를 Ht(={Ht(0), Ht(1), …, Ht(N-1)})로 나타낸다. 또한, 필터 계수 갱신부(81)에서 산출되는 필터 계수를 Ht+1(={Ht+1(0), Ht+1(l), …, Ht+1(N-1)})로 나타내어 설명한다. 그리고, i번째의 참조 신호를 Xt(i), 필터 계수를 Ht(i), Ht+1(i)로 나타낸다.
DSP(83)는, 참조 신호 입출력부(78)에 참조 신호 Xt를 입력시키면(S201), 감산 회로(77)의 - 입력 단자에 입력시키는 신호 Y't를 생성하기 위해, 이하의 처리를 행한다. DSP(83)는, 우선 i=0으로 하고(S202), 참조 신호 입출력부(78)의 Xt(0)와 필터 계수부(79)의 Ht(0)를 각각 승산부(80)에 출력시킨다. 승산부(80)는, Xt(0)와 Ht(0)를 승산한 승산 결과(S203)를, 가산부(82)에 출력한다. 가산부(82)는, 승산부(80)로부터의 출력 신호 Xt(0)·Ht(0)과 제로를 가산한다.
다음으로, DSP(83)는, i를 인크리먼트하여 i=i+1=1로 한다(S204). 그리고, DSP(83)는, 승산부(80)의 승산 결과가 Xt(N-1)·Ht(N-1)까지 도달하지 않았기 때문에 i≥N이 아니라고 판별하고(S205·NO), 참조 신호 입출력부(78)의 Xt(1)와 필터 계수부(79)의 Ht(1)를 각각 승산부(80)에 출력시킨다. 승산부(80)는, Xt(1)과 Ht(1)를 승산한 승산 결과를(S203), 가산부(82)에 출력한다. 가산부(82)는, 승산부(80)로부터의 출력 신호 Xt(1)·Ht(1)와 Xt(0)·Ht(0)를 가산한다. 이와 같이, S203 내지 S205의 처리를 i≥N까지 반복함으로써(S205·YES), 가산부(82)의 가산 결과는, Y't(= Xt(0)·Ht(0)+…+Xt(N-1)·Ht(N-1))로 된다. 그리고, 가산부(82)로부터 감산 회로(77)의 - 입력 단자에 Y't가 출력된다(S206).
감산 회로(77)는, + 입력 단자에 입력된 Yt와, - 입력 단자에 입력된 Y't를 감산하여 출력한다(S207). 그리고, 감산 회로(77)로부터의 오차 신호가, 필터 계수 갱신부(81)에 입력된다. 또한, 이 감산 회로(77)로부터의 오차 신호를 Et(= Yt-Y't)로 나타내어 이하 설명한다.
필터 계수 갱신부(81)는, 필터 계수부(79)의 필터 계수를 갱신하기 위해 이 하의 처리를 실행한다. 우선, 필터 계수 갱신부(81)는, Ht+1(0)을 산출하기 위해 i=0으로 한다(S208). Ht+1(0)은, 소정 상수인 스텝 게인을 α, 참조 신호 Xt의 노옴(즉 제곱합)을 ∥Xt∥2로 하면,
Ht+1(0)=Ht(0)+(α·Et·Xt(0))/∥Xt∥2
로 된다. 그 때문에, 필터 계수 갱신부(81)가, 참조 신호 입출력부(78)로부터의 Xt(0), 필터 계수부(79)로부터의 Ht(0), 감산 회로(77)로부터의 Et에 기초하여, 상기 수학식을 연산함으로써, Ht+1(0)이 산출된다(S209). 다음으로, 필터 계수 갱신부(81)는, Ht+1(1)을 산출하기 위해 i를 인크리먼트하여 i=i+1=1로 한다(S210). 그리고, 필터 계수 갱신부(81)는, 산출한 필터 계수가 Ht+1(N-1)에 도달하지 않았기 때문에 i≥N이 아니라고 판별한다(S211·NO). 그리고 상술한 것과 마찬가지로, Ht+1(1)은,
Ht+1(1)=Ht(1)+(α·Et·Xt(1))/∥Xt∥2
로부터 산출된다. 이와 같이, S209 내지 S211의 처리를 i≥N까지 반복함으로써(S211·YES), Ht+1(={Ht+1(0), …, Ht+1(N-1)})이 산출되게 된다. 그리고, 필터 계수 갱신부(81)는, 필터 계수부(79)의 필터 계수 Ht(={Ht(0), …, Ht(N-1)})를 Ht+1(={Ht+1(0), …, Ht+1(N-1)})로 갱신하기 위해, 상기 Ht+1을 필터 계수부(79)에 출력한다.
DSP(83)는, 우선 필터 계수부(79)의 Ht(0)를 Ht+1(0)으로 갱신하기 위해 i=0으로 한다(S212). 이 결과, 필터 계수부(79)의 Ht(0)가 Ht+1(0)으로 갱신된다 (S213). 다음으로, DSP(83)는, Ht(1)을 Ht+1(1)로 갱신하기 위해 i를 인크리먼트하여 i=i+1=1로 한다(S214). 그리고, DSP(83)는, Ht(N-1)가 Ht+1(N-1)로 아직 갱신되어 있지 않기 때문에 N≥i가 아니라고 판별한다(S215·NO). 그리고, DSP(83)는, Ht(1)을 Ht+1(1)로 갱신한다(S213). 이와 같이, S213 내지 S215의 처리를 N≥i까지 반복함으로써(S215·YES), 필터 계수부(79)의 필터 계수 Ht(={Ht(0), …, Ht(N-1)})가 Ht+1(={Ht+1(0), …, Ht+1(N-1)})로 갱신된다.
그리고, 재차 상술한 S202 내지 S205의 처리가 행해진다. 이 결과, 필터 계수 Ht+1(={Ht+1(O), …, Ht+1(N-1)})에 기초하는 출력 신호 Y't가, 가산부(82)로부터 감산 회로(77)의 - 입력 단자에 입력된다.
이와 같이, 감산 회로(77)로부터의 오차 신호에 기초하여, 필터 계수부(79)의 필터 계수를, 이 오차 신호가 반영된 필터 계수로 갱신하는 것이 가능하게 된다. 그리고, 이 처리를 반복함으로써, 입력 단자(30)에 디지털 신호가 입력되었을 때의, 감산 회로(77)로부터의 오차 신호의 평균값을 일정값 이하로 하는 것이 가능하게 된다. 즉, 에코를 방지하는 것이 가능하게 된다. 또한, 필터 계수부(79)의 필터 계수를 갱신하는 알고리즘은, 이것에 한정되는 것은 아니다. 상술한 바와 같이 LMS 알고리즘이나 NLMS 알고리즘 등의 주지 기술인 추정 알고리즘을 이용하는 것이 가능하다. 또한, 예를 들면 일본 특개 2002-246880호에 기재된 것에 의한 처리로 필터 계수부(79)의 필터 계수를 갱신하는 것도 가능하다.
또한, 전술한 실시예에 따르면, 상술한 처리에 대하여 하드웨어(예를 들면 감산 회로(77), 승산부(80) 등)를 이용하여 설명하였지만, 이것에 한정되는 것은 아니다. 예를 들면, 상술한 처리를 프로그램 데이터로 하여 ROM 등에 미리 기억시켜 두고, DSP(83)가 구비하는 프로세서가 이 프로그램 데이터를 읽어내어 처리하는 것도 가능하다.
또한, 본 실시예에서의 FIR 필터(4)의 필터 계수, FIR 필터(11)의 필터 계수는, 상술한 제1 실시예와 마찬가지의 처리를 행함으로써 설정하는 것이 가능하다. 그리고, 이어폰 마이크(18)가 접속된 상태에서 취득된 임펄스 응답에 기초하여 FIR 필터(11)의 필터 계수를 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다. 또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 취득된 임펄스 응답에 기초하여 FIR 필터(11)의 필터 계수를 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 본 실시예는, 상술한 제1 실시예에 ADF(76), 감산 회로(77)를 설치한 것이지만, 이것에 한정되는 것은 아니다. 상술한 제2 실시예 내지 제4 실시예에도 마찬가지로, ADF(76), 감산 회로(77)를 설치하는 것도 가능하다. 상세하게 설명하면, 제2 실시예에서는, 본 실시예와 마찬가지로 ADF(76), 감산 회로(77)를 설치한다. 또한, 제3, 제4 실시예에서는, 감산 회로(77)를 AD 컨버터(70), DA 컨버터(71) 사이에 설치한다. 그리고, 감산 회로(77), DA 컨버터(71) 사이의 신호선에 나타나는 오차 신호를 ADF(76)에 입력시키고, AD 컨버터(66)로부터의 디지털 신호를 참조 신호로서 ADF(76)에 입력되도록 설치한다.
그리고, 예를 들면 임펄스 응답의 측정 오차 등에 의해, 차동 증폭 회로(9)( 가산 회로(63))에서 경로 A를 전달하는 신호를, 경로 B를 전달하는 신호로 상쇄하였을 때의 결과가, 에코를 충분히 방지할 수 없는 레벨로 되는 경우가 있다. 이 경우, 상술한 제5 실시예에 따르면, 감산 회로(77)에서 차동 증폭 회로(9)(가산 회로(63))로부터의 출력을, 가산부(82)로부터의 출력 신호 Y't로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(30(65))에 디지털 신호(음성 신호)가 입력되었을 때의, 상술한 에코를 보다 확실하게 방지하는 것이 가능하게 된다.
<<제6 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예===
도 21은, 제6 실시예를 도시하는 도면이다. 도 21은, 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로(DSP(202))의 일례를 도시하는 블록도이다.
에코 방지 회로는, CPU(201), DSP(202), AD 컨버터(203), DA 컨버터(205), 증폭 회로(206), 입출력 단자(207), 차동 증폭 회로(209), 증폭 회로(210), AD 컨버터(214), DA 컨버터(215), DA 컨버터(212), 증폭 회로(213)를 갖고 있다. 또한, 본 실시예에서는 CPU(201)를 구성 요건으로 하고 있지만, CPU(201)를 구성 요건으로 하지 않는 것도 가능하다.
또한, DSP(202)는, 입력 단자(230), 출력 단자(231), 디지털 필터(ARMA:Auto-Regressive Moving Average)(211)(300)(이하, 디지털 필터(211)라고 함)(211), 출력 단자(232), 입력 단자(233), 출력 단자(234)를 갖고 있다.
AD 컨버터(203)에는, 예를 들면 음성 신호가 입력된다. 그리고, AD 컨버터 (203)는, 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를, 입력 단자(230)를 통하여 DSP(202)에 입력시킨다.
DSP(202)에 입력된 디지털 신호는, 출력 단자(231)를 통하여 출력됨과 함께, 디지털 필터(211)에 입력된다. 디지털 필터(211)는 디지털 신호에 대하여, 상기 디지털 필터(211)의 필터 계수에 기초하여 필터 처리를 실시하여 출력 단자(232)에 출력한다.
DA 컨버터(205)는, 출력 단자(231)를 통하여 DSP(202)로부터의 디지털 신호가 입력된다. 그리고, DA 컨버터(205)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 증폭 회로(206)에 출력한다. 증폭 회로(206)는, 소정의 증폭률로 아날로그 신호를 증폭하여 출력한다.
입출력 단자(207)에는, 예를 들면 아날로그 신호에 기초하여 음성을 발생시키는 기기(예를 들면 이어폰 마이크, 스피커 등)가 접속된다. 그리고, 입출력 단자(207)를 통하여, 증폭 회로(206)로부터의 아날로그 신호가, 접속된 기기에 대하여 출력된다. 또한, 입출력 단자(207)에는, 예를 들면 음성을 음성 신호로 변환하여 출력하는 기기(예를 들면 이어폰 마이크, 마이크 등)가 접속된다. 그리고, 입출력 단자(207)에는, 접속된 기기로부터의 음성 신호가 입력된다. 이 결과, 입출력 단자(207)를 통하여, 음성 신호가 차동 증폭 회로(209)의 + 입력 단자에 입력된다. 또한, 입출력 단자(207)를 통하여 출력된 신호는, 접속된 기기를 통하여 반사되어 입출력 단자(207)로부터 입력되고, 차동 증폭 회로(209)의 + 입력 단자에 입력된다. 여기서, 반사되어 오는 신호라는 것은, 예를 들면, 이어폰 마이크 등을 통하여 되돌아 오는 신호나, 이어폰 마이크으로부터 출력된 음이 귓속에서 반사하고, 그 반사음이 이어폰 마이크에 의해 음성 신호로 변환된 신호 등이다. 또한, 입출력 단자(207)는, 출력 신호(예를 들면 아날로그 신호)와 입력 신호(예를 들면 음성 신호)가 배타적으로 입출력되는 것은 아니다. 예를 들면, 입출력 단자(207)는, 출력 신호와 입력 신호가 동시에 입출력되는 경우도 있다. 또한, 입출력 신호 공용 라인이라는 것은, 입출력 단자(207)에 접속되는 라인이다.
DA 컨버터(212)는, 출력 단자(232)를 통하여, 디지털 필터(211)로부터의 출력 신호가 입력된다. 그리고, DA 컨버터(212)는, 디지털 필터(211)로부터의 출력 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 증폭 회로(213)에 출력한다. 증폭 회로(213)는, 소정의 증폭률로 아날로그 신호를 증폭하여 차동 증폭 회로(209)의 - 입력 단자에 출력한다.
차동 증폭 회로(209)는, 입출력 단자(207)로부터의 음성 신호를 증폭 회로(210)에 출력한다. 증폭 회로(210)는, 음성 신호를 소정의 증폭률로 증폭하여 AD 컨버터(214)에 출력한다. 또한, 차동 증폭 회로(209)의 + 입력 단자에는, 증폭 회로(206)로부터의 아날로그 신호가 입력된다. 그리고, 차동 증폭 회로(209)는, + 입력 단자에 입력된 증폭 회로(206)로부터의 아날로그 신호와, - 입력 단자에 입력된 증폭 회로(213)로부터의 아날로그 신호의 차분을 증폭하여 출력한다.
AD 컨버터(214)는, 증폭 회로(210)로부터의 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를, 입력 단자(233)를 통하여 DSP(202)에 입력시킨다. 입력 단자(233)에 입력된 디지털 신호는, 출력 단자(234)로부터 출력된다. DA 컨버터(215)는, 출력 단자(234)를 통하여 DSP(202)로부터의 디지털 신호가 입력된다. 그리고, DA 컨버터(215)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 출력한다.
CPU(201)는, 에코 방지 회로를 통괄 제어한다. CPU(201)는, 예를 들면 에코 방지 회로를 리셋하기 위한 리셋 신호가 입력되면, 후술하는 임펄스 응답 취득 처리를 DSP(202)에서 실행시키기 위해 지시 신호를, DSP(202)에 출력한다. 또한, CPU(201)는, 임펄스 응답 취득 처리의 초기 동작으로서, 예를 들면 다른 쪽의 논리값 '0'을 DSP(202)에 출력한다. 또한, 본 실시예에서 CPU(201)는, 리셋 신호가 입력됨으로써, 임펄스 응답 취득 처리를 DSP(202)에서 실행시키기 위한 지시 신호를 출력하고 있지만, 이것에 한정되는 것은 아니다. 예를 들면, 에코 방지 회로, DSP(202)를 동작시키기 위한 전원 투입을 CPU(201)가 검출하였을 때, 상술한 지시 신호를 DSP(202)에 출력하도록 설치해도 된다. 또한, CPU(201)는, 아날로그 회로의 전기적 변화(예를 들면 증폭 회로(210)의 출력의 진폭 변화)를 검출하였을 때, 상술한 지시 신호를 DSP(202)에 출력하도록 설치해도 된다.
===디지털 필터(211)의 필터 계수===
이하, 도 22 및 도 23을 참조하면서 디지털 필터(211)의 필터 계수에 대하여 상세하게 설명한다. 도 22는, 도 21에 도시하는 에코 방지 회로의 경로(I, J)를 도시한 도면이다. 도 23은, 경로 I에 이어폰 마이크(18)가 포함되는 경우를 도시한 도면이다. 또한, 이어폰 마이크(18)는, 입출력 단자(207)에 접속할 수 있다. 그리고, 입출력 단자(207)로부터 출력되는 아날로그 신호가 이어폰 마이크(18)에 입력되면, 이어폰 마이크(18)는 그 아날로그 신호에 기초하여 진동판(도시 생략)을 진동시킴으로써 음성을 출력한다. 또한, 이어폰 마이크(18)는, 이어폰 마이크(18)를 귀에 장착하고 있는 사람이 음성을 냈을 때의 고막의 진동을 진동판에서 포착함으로써 아날로그 신호를 생성하여 출력한다. 그리고, 이어폰 마이크(18)로부터 출력되는 아날로그 신호가 입출력 단자(207)로부터 입력된다.
상술한 바와 같이 증폭 회로(206)로부터의 아날로그 신호는, 입출력 단자(207)로부터의 출력뿐만 아니라, 차동 증폭 회로(209)의 + 입력 단자에도 입력되는 경우가 있다. 즉, 차동 증폭 회로(209)의 + 입력 단자에는, 증폭 회로(206)로부터의 아날로그 신호와, 입출력 단자(207)에 입력된 신호를 합한 신호가 입력된다. 또한, 입출력 단자(207)에 입력되는 신호(제2 입력 신호)라는 것은, 음성 신호뿐만 아니라, 예를 들면 전기적 노이즈 신호나 환경 노이즈 등의 신호도 포함되는 것으로서 이하 설명한다. 그리고, 이 경우, 상기 아날로그 신호에 의한 에코가 발생하게 된다. 혹은, 입출력 단자(207)로부터 입력되는 음성 신호와 증폭 회로(206)로부터의 아날로그 신호가 중첩되어 차동 증폭 회로(209)의 + 입력 단자에 입력됨으로써, 에코가 발생하게 된다. 따라서, 이 에코를 방지하기 위해 디지털 필터(211)의 필터 계수를 설정한다.
따라서, 도 22 또는 도 23의 파선으로 나타내는 출력 단자(231)로부터 차동 증폭 회로(209)의 + 입력 단자까지의 임펄스 응답(전달 함수)을 IR9(Z)로 한다. 또한, 도 22 또는 도 23의 파선으로 나타내는 출력 단자(232)로부터 차동 증폭 회로(209)의 - 입력 단자까지의 임펄스 응답(전달 함수)을 IR10(Z)로 한다. 또한, 도 22 또는 도 23의 파선으로 나타내는 차동 증폭 회로(209)에서의 ± 입력 단자의 후단으로부터 입력 단자(233)까지의 임펄스 응답(전달 함수)을 W5(Z)로 한다.
여기서는, 디지털 필터(211)의 필터 계수를 Q(Z)로 한 경우, 차동 증폭 회로(209)의 + 입력 단자에 입력되는 신호를 - 입력 단자에 입력되는 신호로 상쇄시키기 위해서는,
IR9(Z)=IR10(Z)·Q(Z)
의 식이 성립되도록 Q(Z)를 설정하게 된다. 즉, Q(Z)는,
Q(Z)=IR9(Z)/IR10(Z)
로 되도록 설정하면 된다. 그러나, DSP(202)가 취득 가능한 임펄스 응답은, 도 22 또는 도 23의 실선으로 나타내는 경로 I의 임펄스 응답(전달 함수) IR9'(Z)(=IR9(Z)·W5(Z))와, 경로 J의 임펄스 응답(전달 함수) IR10'(Z)(=-IR10(Z)·W5(Z))이다. 또한, IR10(Z)가 위상 반전되어 있는 것은, 차동 증폭 회로(209)의 - 입력 단자에 입력되고 있기 때문이다.
이 경우, 경로 I를 전달하는 신호와 경로 J를 전달하는 신호가 서로 상쇄되는 것을 가능하게 하는 수학식은,
-IR9'(Z)=IR10'(Z)·Q(Z)
로 된다. 즉, Q(Z)를,
Q(Z)=-IR9'(Z)/IR10'(Z)
로 설정하면 된다는 것을 알 수 있다. 즉, 디지털 필터(211)의 특성은, 전달 특성 IR9'(Z)를 위상 반전한 것에, IR10'(Z)의 역필터의 특성을 부가한 특성으로 함으로 써 실현 가능하게 된다. 그리고, 이와 같이 디지털 필터(211)의 필터 계수를 설정함으로써, 차동 증폭 회로(209)에서 경로 I를 전달하는 신호를, 경로 J를 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(230)에 디지털 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
그리고, 도 23에 도시하는 바와 같이, 이어폰 마이크(18)가 접속된 상태에서 임펄스 응답 IR9'(Z)를 취득하고, 이 IR9'(Z)를 위상 반전한 것에, IR10'(Z)의 역필터의 특성을 부가한 필터 계수를 디지털 필터(211)에 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 되다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 임펄스 응답 IR9'(Z)를 취득하고, 이 IR9'(Z)를 위상 반전한 것에, IR10'(Z)의 역필터의 특성을 부가한 필터 계수를 디지털 필터(211)에 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
그리고, 상술한 필터 계수를 디지털 필터(211)에 설정하기 위해, DSP(202), 디지털 필터(211)는 하기의 구성으로 되어 있다.
===DSP(202) 및 디지털 필터(211)의 구성의 상세===
이하, 도 21 내지 도 26을 참조하면서 DSP(202) 및 DSP(202)의 구성 요건인 디지털 필터(211)의 구성에 대하여 상세하게 설명한다. 도 24의 (a)는, 도 22 또는 도 23에 도시하는 경로 I의 임펄스 응답 IR9'(Z)를 도시한 도면이다. 도 24의 (b)는, 도 22 또는 도 23에 도시하는 경로 J의 임펄스 응답 IR10'(Z)를 도시한 도 면이다. 도 25는, DSP(202)의 구성의 일부를 도시하는 블록도이다. 상세하게 설명하면, 임펄스 응답 IR9'(Z), IR10'(Z)에 기초하여 디지털 필터(211)의 필터 계수를 설정하기 위한, DSP(202)의 구성의 일부를 도시하는 블록도이다. 도 26은, 디지털 필터(211)의 일례로서 도시하는 ARMA 필터(300)의 구성을 도시하는 블록도이다. 상세하게 설명하면, ARMA 필터(300)는, IR9'(Z)를 위상 반전한 것에, IR10'(Z)의 역필터의 특성을 부가한 특성을 갖는 필터의 일례이다. 또한, 본 실시예에서는, ARMA 필터를 이용하고 있지만, 이것에 한정되는 것은 아니다. 상술한 필터 계수를 설정 가능한 디지털 필터이면 된다.
DSP(202)는, 도 25에 도시하는 바와 같이 임펄스 응답 저장 메모리(243, 255), 임펄스용 메모리(244, 245), 레지스터(246, 249, 250, 257), 스위치 회로(260A~260K), 승산 회로(258)를 갖고 있다.
또한, ARMA 필터(300)는, 도 26에 도시하는 바와 같이 지연 회로(235a1~235aN-1), 승산 회로(236a0~236aN-1, 301b1~301bN-1), 가산 회로(237a0~237aN-1, 302b0~302bN-1), 스위치 회로(260L, 260M)를 갖고 있다.
레지스터(249)에는, CPU(201)로부터의 상술한 다른 쪽의 논리값 '0'이 입력된다.
임펄스용 메모리(244, 245)는 각각, N개의 레지스터 0~N-1로 구성되어 있다. 그리고, 후술하는 임펄스 응답 취득 처리에서 도 22 또는 도 23의 실선으로 나타내는 경로 I의 임펄스 응답 IR9'(Z)를 취득하는 경우, 임펄스용 메모리(245)의 레지스터 0에는, 예를 들면 한 쪽의 논리값 '1'이 기억된다. 그리고, 임펄스용 메모리 (245)의 다른 레지스터 1~N-1에는, 다른 쪽의 논리값 '0'이 기억된다. 또한, 레지스터(246), 임펄스용 메모리(244)의 레지스터 0~N-1에는, 다른 쪽의 논리값 '0'이 기억된다.
또한, 후술하는 임펄스 응답 취득 처리에서 도 22 또는 도 23의 실선으로 나타내는 경로 J의 임펄스 응답 IR10'(Z)를 취득하는 경우, 임펄스용 메모리(244)의 레지스터 0에는, 예를 들면 한 쪽의 논리값 '1'이 기억된다. 그리고, 임펄스용 메모리(244)의 다른 레지스터 1~N-1에는, 다른 쪽의 논리값 '0'이 기억된다. 또한, 레지스터(246), 임펄스용 메모리(245)의 레지스터 0~N-1에는, 다른 쪽의 논리값 '0'이 기억된다.
임펄스 응답 저장 메모리(243)는, N개의 레지스터 0~N-1로 구성되어 있다. 임펄스 응답 저장 메모리(243)의 레지스터 0~N-1에는, DSP(202)가 스위치 회로(260F)를 입력 단자(233)측으로 절환하고, 스위치 회로(260G)를 이 임펄스 응답 저장 메모리(243)측으로 절환함으로써, 입력 단자(233)를 통하여 경로 I에서의 샘플링 주기 단위마다의 임펄스 응답 imp(0)~(N-1)(=IR9'(Z))가 기억된다. 예를 들면, 우선 입력 단자(233)를 통하여 임펄스 응답 imp(0)가 레지스터 N-1에 기억된다. 그리고, 다음의 임펄스 응답 imp(1)는 레지스터 N-1에 기억되고, 레지스터 0에 기억되어 있던 임펄스 응답 imp(0)는 레지스터 N-2에 기억된다. 그리고, 이 처리가 반복됨으로써, 임펄스 응답 저장 메모리(243)의 레지스터 0~N-1에는, 임펄스 응답 imp(0)~(N-1)(=IR9'(Z))가 기억되게 된다. 또한, 샘플링 주기라는 것은, 도 24의 (a)에 도시하는 각 임펄스 응답 imp(0)~(N-1) 사이의 시간 간격이다. 또한, 임펄스 응답 저장 메모리(243)는, DSP(202)가 스위치 회로(260H)를 레지스터 0부터 레지스터 N-1로 순차적으로 절환함으로써, 레지스터(249)에 기억된 다른 쪽의 논리값 '0'에 의해 클리어된다.
또한, 임펄스 응답 저장 메모리(255)는, N개의 레지스터 0~N-1로 구성되어 있다. 임펄스 응답 저장 메모리(255)의 레지스터 0~N-1에는, DSP(202)가 스위치 회로(260F)를 입력 단자(233)측으로 절환하고, 스위치 회로(260G)를 이 임펄스 응답 저장 메모리(255)측으로 절환함으로써, 입력 단자(233)를 통하여 경로 J에서의 샘플링 주기 단위마다의 임펄스 응답 imp(0)~(N-1)(=IR10'(Z))이 기억된다. 또한, 임펄스 응답 저장 메모리(255)의 레지스터 0~N-1에의 임펄스 응답 imp(0)~(N-1)의 기억은, 상술한 임펄스 응답 저장 메모리(243)와 마찬가지이다. 또한, 임펄스 응답 저장 메모리(255)는, DSP(202)가 스위치 회로(260I)를 레지스터 0부터 레지스터 N-1로 순차적으로 절환함으로써, 레지스터(249)에 기억된 다른 쪽의 논리값 '0'에 의해 클리어된다.
레지스터(250)에는, 임펄스 응답 저장 메모리(243)로부터의 임펄스 응답 imp(0)~(N-1)이 일시 기억된다. 또한, 레지스터(254)에는, 임펄스 응답 저장 메모리(255)로부터의 임펄스 응답 imp(0)~(N-1)이 일시 기억된다.
레지스터(257)에는, 임펄스 응답 저장 메모리(243)에 기억된 임펄스 응답 imp(0)~(N-1)을, 승산 회로(258)에서 위상 반전시키기 위해 -1을 나타내는 바이너리 데이터가 미리 기억되어 있다.
승산 회로(258)는, 레지스터(250)의 값과 레지스터(257)의 값을 승산한 승산 결과를 ARMA 필터(300)에 출력한다. 상세하게 설명하면, DSP(202)가 스위치 회로(260K)를 레지스터 0부터 순차적으로 절환함으로써, 레지스터(250)에 임펄스 응답 저장 메모리(243)의 레지스터 0~N-1로부터의 임펄스 응답 imp(0)~(N-1)이 순차적으로 입력된다. 그리고, 승산 회로(258)가, 레지스터(250)의 값과 레지스터(257)의 값을 순차적으로 승산함으로써, 임펄스 응답 imp(0)~(N-1)이 위상 반전된 임펄스 응답 -imp(0)~(N-1)이 ARMA 필터(300)에 출력되게 된다.
지연 회로(235a1~235aN-1)는, 입력 단자(230)를 통하여 입력되는 디지털 신호 Xn을, 샘플링의 주기 단위마다 지연하여 출력한다. 예를 들면, 지연 회로(235a1)는 디지털 신호 Xn을 1 샘플링 주기 위상 지연시킨 디지털 신호 Xn-1을 승산 회로(236a1, 301b1), 지연 회로(235a2)에 출력한다. 또한, 지연 회로(235aN-1)는 디지털 신호 Xn-(N-1)을, 승산 회로(236aN-1, 301aN-1)에 출력한다.
승산 회로(301b1~301bN-1), 감산 회로(302b0~302bN-1)는, 상술한 IR10'(Z)의 역필터를 구성하는 것이다.
승산 회로(301b1~301bN-1)는, 임펄스 응답 저장 메모리(255)의 레지스터 1~N-1로 유지되어 있는 임펄스 응답 imp(1)~(N-1)이 승산 계수로서 각각 설정된다. 상세하게 설명하면, DSP(202)가 스위치 회로(260J)를 레지스터 1부터 순차적으로 절환하고, 스위치 회로(26OM)를 승산 회로(3O1b1)로부터 순차적으로 절환함으로써, 임펄스 응답 imp(1)~(N-1)이 순차적으로 입력되고, 승산 회로(301b1~301bN-1)의 승산 계수가 설정되게 된다. 그리고, 승산 회로(301b1~301bN-1)는, 지연 회로(235a1~235aN-1)로부터의 디지털 신호 Xn-1~Xn-(N-1)에 대하여 설정된 승산 계수로 승산하고, 승산 결과를 감산 회로(302b1~302bN-1)에 출력한다.
감산 회로(302b1~302bN-1)는, 승산 회로(301b1~301bN-1)로부터 입력되는 디지털 신호를 감산한 감산 결과를, 도 26의 화살표로 나타내는 방향으로 출력한다. 또한, 감산 회로(302b0)는, 감산 회로(302b1)로부터의 감산 결과와 입력 단자(230)를 통하여 입력되는 디지털 신호를 감산한다. 이 결과, 감산 회로(302b0)의 감산 결과는, 입력 단자(230)를 통하여 입력되는 디지털 신호를, 승산 회로(301b1~301bN-1)의 승산 결과로 감산한 것으로 된다.
승산 회로(236a0~236aN-1)는, 승산 회로(258)로부터의 위상 반전된 임펄스 응답 -imp(0)~(N-1)가 승산 계수로서 각각 설정된다. 상세하게 설명하면, DSP(202)가 스위치 회로(260L)를 승산 회로(236a0)로부터 순차적으로 절환함으로써, 위상 반전된 임펄스 응답 -imp(0)~(N-1)이 순차적으로 입력되고, 승산 회로(236a0~236aN-1)의 승산 계수가 설정되게 된다. 그리고, 승산 회로(236a1~236aN-1)는, 지연 회로(235a~235aN-1)로부터의 디지털 신호 Xn-1~Xn-(N-1)에 대하여 설정된 승산 계수로 승산하고, 승산 결과를 가산 회로(237a1~237aN-1)에 출력한다. 또한, 승산 회로(236a0)에는, 상술한 감산 회로(302b0)로부터의 감산 결과가 입력되고, 이 감산 결과에 대하여 승산 계수(-imp(O))로 승산한 승산 결과를 가산 회로(237a0)에 출력한다.
가산 회로(237a1~237aN-1)는, 승산 회로(236a1~236aN-1)로부터 입력되는 디지털 신호를 가산한 가산 결과를, 도 26의 화살표로 나타내는 방향으로 출력한다. 또한, 가산 회로(237a0)는, 가산 회로(237a1)로부터의 가산 결과와, 승산 회로 (236a0)로부터의 승산 결과를 가산한다. 이 결과, 가산 회로(237aO)의 가산 결과는, 입력 단자(23O)에 디지털 신호가 입력되었을 때의, 상술한 필터 계수가 설정된 ARMA 필터(300)에서 필터 처리가 이루어진 결과로 된다.
==임펄스 응답 취득 처리에 의한 ARAM(300)의 필터 계수 설정==
이하, 도 21 내지 도 27을 참조하면서 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로에 의한 임펄스 응답 취득 처리, ARAM(300)의 필터 계수 설정의 동작에 대하여 설명한다. 또한, 본 실시예에서는, 디지털 필터(211)의 필터 계수 설정의 일례로서, 상술한 ARMA 필터(300)의 승산 회로(236a0~236aN-1, 301b1~301bN-1)의 승산 계수 설정을 이용하여 설명한다. 도 27은, 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 동작의 일례를 도시하는 플로우차트이다.
CPU(201)는, 예를 들면, 에코 방지 회로를 리셋하기 위한 리셋 신호가 입력되면, 임펄스 응답 취득 처리를 DSP(202)에서 실행시키기 위해 지시 신호를, DSP(202)에 출력한다. 또한, CPU(201)는, 임펄스 응답 취득 처리의 초기 동작으로서, 다른 쪽의 논리값 '0'을 DSP(202)에 출력한다. DSP(202)에 입력된 다른 쪽의 논리값 '0'은, 레지스터(249)에 입력된다.
DSP(202)는, CPU(201)로부터의 상술한 지시 신호가 입력되었는지의 여부를 판별한다(S301). 그리고, DSP(202)는, CPU(201)로부터의 지시 신호가 입력되었다고 판별하면(S301·YES), 우선 스위치 회로(260H)를 레지스터 0~레지스터 N-1로 순차적으로 절환한다. 이 결과, 레지스터(249)에 기억된 다른 쪽의 논리값 '0'에 의 해서, 임펄스 응답 저장 메모리(243)의 레지스터 0~레지스터 N-1의 내용이 클리어된다(S302). 이하, 임펄스 응답 저장 메모리(243)에 기억시키는 i번째의 임펄스 응답을 imp(i)(i=0, …, N-1)로 나타내어 설명한다. 그리고, DSP(202)는, 임펄스 응답 저장 메모리(243)의 레지스터 N-1에 기억시키는 임펄스 응답 imp(0)를 취득하기 위해 i=0으로 하고(S303), 입력 단자(230)를 하이 임피던스로 한 후에, 이하의 처리를 실행한다.
DSP(202)는, 도 22 또는 도 23에 도시한 경로 I의 임펄스 응답 imp(0)를 취득하기 위해, 상기 경로 I에 출력 단자(231)로부터의 임펄스 출력이 가능한지의 여부를 판별한다(S304). 예를 들면, 이 DSP(202)에 의한 판별로서는, 출력 단자(231)로부터의 신호의 출력이나 입력 단자(233)에의 신호의 입력이 되어 있는 상태인지의 여부를 판별함으로써 행한다. 만일, 출력 단자(231)로부터의 신호의 출력이나 입력 단자(233)에의 신호의 입력이 되어 있는 상태에서 임펄스를 출력하면, 정확한 임펄스 응답 imp(O)를 취득하지 못할 가능성이 있기 때문이다.
그리고, DSP(202)는, 경로 I에의 임펄스 출력이 가능하다고 판별하면(S304·YES), i=0인지의 여부를 판별한다(S305). S303에서 i=0이기 때문에, DSP(202)는 i=0이라고 판별하게 된다(S305·YES). 그리고, DSP(202)는, 임펄스용 메모리(245)의 레지스터 0에 한 쪽의 논리값 '1'을 기억시킨다. 또한, DSP(202)는, 임펄스용 메모리(245)의 다른 레지스터 1~N-1, 레지스터(246), 임펄스용 메모리(244)의 레지스터 0~N-1에, 다른 쪽의 논리값 '0'을 기억시킨다. 그리고, DSP(202)는, 스위치 회로(260C)를 임펄스용 메모리(245)측으로 절환하고, 스위치 회로(260A)를 임펄스 용 메모리(244)측으로 절환하고, 스위치 회로(260E)를 레지스터(246)측으로 절환한다. 또한, DSP(202)는, 스위치 회로(260F)를 입력 단자(233)측으로 절환하고, 스위치 회로(260G)를 임펄스 응답 저장 메모리(243)측으로 절환한다. 다음으로, DSP(202)는, 스위치 회로(260D, 260B)를 각각 레지스터 0으로 절환한다. 이 결과, 임펄스용 메모리(245)의 레지스터 0에 기억된 한 쪽의 논리값 '1'에 의한 임펄스가 출력 단자(231)로부터 출력되게 된다(S306). 출력 단자(231)로부터 출력된 임펄스는, 경로 I를 전달하여 입력 단자(233)에 입력된다(S307). 이 결과, 임펄스 응답 imp(0)가 취득되게 된다(도 24의 (a)·imp(0)). 그리고, 이 임펄스 응답 imp(0)는, 우선 임펄스 응답 저장 메모리(243)의 레지스터 N-1에 기억된다.
다음으로, 임펄스 응답 imp(1)를 취득하기 위해, DSP(202)는 i를 인크리먼트하여, i=i+1=1로 한다(S308). 그리고, DSP(202)는, 취득한 임펄스 응답이 아직 imp(N-1)까지 도달하지 않았기 때문에 i≥N이 아니라고 판별하고(S309·NO), 상술한 S304의 처리를 재차 반복하게 된다. 또한, S308에서 i=1≠0으로 되어 있기 때문에(S305·NO), DSP(202)는, 스위치 회로(260D, 260B)를 각각 레지스터 1로 절환한다. 이 결과, 출력 단자(231)로부터는 임펄스가 출력되지 않는다(S310). 그 때문에, 입력 단자(233)에는, S306에서 출력된 임펄스의 1 샘플링 주기 위상 지연된 임펄스 imp(1)가 입력된다. 그리고, 이 임펄스 응답 imp(1)는 임펄스 응답 저장 메모리(243)의 레지스터 N-1에 기억되고, 레지스터 N-1에 기억되어 있던 임펄스 응답 imp(0)는 레지스터 N-2에 기억되게 된다. 이와 같이, S304 내지 S309의 처리를 i≥N까지 반복함으로써(S309·YES), 임펄스 응답 imp(0)~imp(N-1)(=IR9'(Z))이 취 득된다. 이 결과, 임펄스 응답 저장 메모리(243)의 레지스터 0~N-1에, 임펄스 응답 imp(0)~imp(N-1)이 기억되게 된다.
다음으로, DSP(202)는, 스위치 회로(260I)를 레지스터 0~레지스터 N-1로 순차적으로 절환한다. 이 결과, 레지스터(249)에 기억된 다른 쪽의 논리값 '0'에 의해서, 임펄스 응답 저장 메모리(255)의 레지스터 0~레지스터 N-1이 클리어된다(S311). 이하, 임펄스 응답 저장 메모리(255)에 기억시키는 j번째의 임펄스 응답을 imp(j)(j=0, …, N-1)로 나타내어 설명한다. 그리고, DSP(202)는, 임펄스 응답 저장 메모리(255)의 레지스터 N-1에 기억시키는 임펄스 응답 imp(0)를 취득하기 위해 j=0으로 하고(S312), 이하의 처리를 실행한다.
DSP(202)는, 도 22 또는 도 23에 도시한 경로 J의 임펄스 응답 imp(0)를 취득하기 위해, 상기 경로 J로 임펄스 출력이 가능한지의 여부를 판별한다(S313). 이 DSP(202)에 의한 판별은, 상술한 S304와 마찬가지이다.
그리고, DSP(202)는, 경로 J에의 임펄스 출력이 가능하다고 판별하면(S313·YES), j=O인지의 여부를 판별한다(S314). S312에서 j=O이기 때문에, DSP(202)는 j=0이라고 판별하게 된다(S314·YES). 그리고, DSP(202)는, 임펄스용 메모리(244)의 레지스터 0에 한 쪽의 논리값 '1'을 기억시킨다. 또한, DSP(202)는, 임펄스용 메모리(244)의 다른 레지스터 1~N-1, 레지스터(246), 임펄스용 메모리(245)의 레지스터 0~N-1에, 다른 쪽의 논리값 '0'을 기억시킨다. 그리고, DSP(202)는, 스위치 회로(260G)를 임펄스 응답 저장 메모리(255)측으로 절환한다. 다음으로, DSP(202)는, 스위치 회로(260D, 260B)를 각각 레지스터 0으로 절환한다. 이 결과, 임펄스 용 메모리(244)의 레지스터 0에 기억된 한 쪽의 논리값 '1'에 의한 임펄스가 출력 단자(232)로부터 출력되게 된다(S315). 출력 단자(232)로부터 출력된 임펄스는, 경로 J를 전달하여 입력 단자(233)에 입력된다(S316). 이 결과, 임펄스 응답 imp(0)가 취득되게 된다(도 24의 (b)·imp(0)). 그리고, 이 임펄스 응답 imp(0)는, 우선 임펄스 응답 저장 메모리(255)의 레지스터 N-1에 기억된다.
다음으로, 임펄스 응답 imp(1)를 취득하기 위해, DSP(202)는 j를 인크리먼트하여, j=j+1=1로 한다(S317). 그리고, DSP(202)는, 취득한 임펄스 응답이 아직 imp(N-1)까지 도달하지 않았기 때문에 j≥N이 아니라고 판별하고(S318·NO), 상술한 S313의 처리를 재차 반복하게 된다. 또한, S317에서 j=1≠0으로 되어 있기 때문에(S314·NO), DSP(202)는, 스위치 회로(260D, 260B)를 각각 레지스터 1로 절환한다. 이 결과, 출력 단자(232)로부터는 임펄스가 출력되지 않는다(S319). 그 때문에, 입력 단자(233)에는, S315에서 출력된 임펄스의 1 샘플링 주기 위상 지연된 임펄스 imp(1)가 입력된다. 그리고, 이 임펄스 응답 imp(1)는 임펄스 응답 저장 메모리(255)의 레지스터 N-1에 기억되고, 레지스터 N-1에 기억되어 있던 임펄스 응답 imp(0)는 레지스터 N-2에 기억되게 된다. 이와 같이, S313 내지 S318의 처리를 j≥N까지 반복함으로써(S318·YES), 임펄스 응답 imp(0)~imp(N-1)(=IR10'(Z))가 취득된다. 이 결과, 임펄스 응답 저장 메모리(255)의 레지스터 0~N-1에, 임펄스 응답 imp(0)~imp(N-1)이 기억되게 된다.
DSP(202)는, 임펄스 응답 저장 메모리(243)의 레지스터 0~N-1에 기억되어 있는 임펄스 응답 imp(0)~imp(N-1)을 위상 반전시키기 위해, 스위치 회로(260K)를 레 지스터 0부터 순차적으로 절환한다. 이 결과, 임펄스 응답 저장 메모리(243)의 레지스터 0~N-1로부터의 임펄스 응답 imp(0)~imp(N-1)가, 레지스터(250)를 통하여 순차적으로 승산 회로(258)에 입력된다. 승산 회로(258)는, 레지스터(250)의 값과 레지스터(257)의 값을 순차적으로 승산한 승산 결과를 ARMA 필터(300)에 출력한다. 이 결과, 임펄스 응답 imp(0)~(N-1)이 위상 반전된 임펄스 응답 -imp(0)~(N-1)이 승산 회로(258)로부터 ARMA 필터(300)에 순차적으로 출력되게 된다.
그리고, DSP(202)는, 승산 회로(258)로부터의 임펄스 응답 -imp(0)~(N-1)을 승산 회로(236a0~236aN-1)의 승산 계수로 설정하기 위해 이하의 처리를 행한다. 우선, DSP(202)는, 승산 회로(258)로부터의 임펄스 응답 -imp(0)를 승산 회로(260a0)의 승산 계수로 설정하기 위해 i=0으로 하고(S320), 스위치 회로(260L)를 승산 회로(236a0)측으로 절환한다. 이 결과, 승산 회로(236a0)의 승산 계수에 임펄스 응답 -imp(0)가 설정된다(S321). 다음으로, DSP(202)는, 승산 회로(258)로부터의 임펄스 응답 -imp(1)를 승산 회로(260a1)의 승산 계수로 설정하기 위해 i를 인크리먼트하여, i=i+1=1로 한다(S322). 그리고, DSP(202)는, 승산 회로(236aN-1)까지 승산 계수를 설정하지 않았기 때문에 i≥N이 아니라고 판별하고(S323·NO), 스위치 회로(260L)를 승산 회로(236a1)측으로 절환한다. 이 결과, 승산 회로(236a1)의 승산 계수에 임펄스 응답 -imp(1)가 설정된다(S321). 이와 같이 S321 내지 S323의 처리를 i≥N까지 반복함으로써(S323·YES), 승산 회로(258)로부터의 임펄스 응답 -imp(0)~(N-1)이 승산 회로(236a0~236aN-1)의 승산 계수로 설정되게 된다.
또한, DSP(202)는, 임펄스 응답 저장 메모리(255)의 레지스터 1~N-1에 기억되어 있는 임펄스 응답 imp(1)~(N-1)을 ARMA 필터(300)에 출력시키기 위해, 스위치 회로(260J)를 레지스터 1부터 순차적으로 절환한다. 이 결과, 임펄스 응답 저장 메모리(255)의 레지스터 1~N-1로부터의 임펄스 응답 imp(1)~(N-1)이, ARMA 필터(300)에 순차적으로 출력되게 된다.
그리고, DSP(202)는, 임펄스 응답 저장 메모리(255)로부터의 임펄스 응답 imp(1)~(N-1)을 승산 회로(301b1~301bN-1)의 승산 계수로 설정하기 위해 이하의 처리를 행한다. 우선, DSP(202)는, 임펄스 응답 저장 메모리(255)로부터의 임펄스 응답 imp(1)를 승산 회로(301b1)의 승산 계수로 설정하기 위해 j=1로 하고(S324), 스위치 회로(260M)를 승산 회로(301b1)측으로 절환한다. 이 결과, 승산 회로(301b1)의 승산 계수로 임펄스 응답 imp(1)가 설정된다(S325). 다음으로, DSP(202)는, 임펄스 응답 저장 메모리(255)로부터의 임펄스 응답 imp(2)를 승산 회로(301b2)의 승산 계수로 설정하기 위해 j를 인크리먼트하여, j=j+1=1로 한다(S326). 그리고, DSP(202)는, 승산 회로(301bN-1)까지 승산 계수를 설정하지 않았기 때문에 j≥N이 아니라고 판별하고(S327·NO), 스위치 회로(260M)를 승산 회로(301b2)측으로 절환한다. 이 결과, 승산 회로(301b2)의 승산 계수로 임펄스 응답 imp(2)가 설정된다(S325). 이와 같이 S325 내지 S327의 처리를 j≥N까지 반복함으로써(S327·YES), 임펄스 응답 저장 메모리(255)로부터의 임펄스 응답 imp(1)~(N-1)이 승산 회로(301b1~301bN-1)의 승산 계수로 설정되게 된다.
또한, 상술한 실시예에 따르면, 상술한 처리에 대하여 하드웨어(예를 들면 스위치 회로(260) 등)를 이용하여 설명하였지만, 이것에 한정되는 것은 아니다. 예를 들면, 상술한 처리를 프로그램 데이터로서 ROM 등에 미리 기억시켜 두고, DSP(202)가 구비하는 프로그램이 이 프로그램 데이터를 읽어내어 처리하는 것도 가능하다.
<<제7 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예 ===
이하, 도 28 도 32를 참조하여 제7 실시예에 대하여 설명한다. 또한, 본 실시예는, 상술한 제6 실시예에서 취득한 임펄스 응답 IR9'(Z), IR10'(Z)에 기초하여, 디지털 필터(211)의 필터 계수 설정에 대한 다른 형태를 나타내는 것이다. 그리고, 본 실시예에서는, 디지털 필터(211)의 일례로서 FIR 필터(303)를 이용하였을 때의, 필터 계수 설정에 대하여 설명한다. 본 실시예에서 제6 실시예와 동일한 구성 요건에 대해서는 동일 번호를 붙이고 설명을 생략한다.
도 28은, FIR 필터(303)를 이용한 경우의, 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로(DSP(202))의 일례를 도시하는 블록도이다. 도 29는, 임펄스 응답 IR9'(Z), IR10'(Z)에 기초하여 FIR 필터(303)의 필터 계수를 설정하기 위한 DSP(295)의 일례를 도시하는 블록도이다. 도 30은, 도 29에 도시하는 ADF(284)의 상세도이다. 도 31은, DSP(202)의 구성의 일부를 도시하는 블록도이다. 도 32는, FIR 필터(303)의 그 밖의 일례를 도시하는 도면이다. 또한, 본 실시예에서는, DSP(295)를 DSP(202)와는 별도로 설치하여, FIR 필터(303)의 필터 계수를 설정하기 위한 처리를 행하고 있지만, 이것에 한정되는 것은 아니다. 예를 들면, DSP(295)의 후술하는 처리를, DSP(202)의 내부에서 행하도록 설치하는 것도 가능하다.
DSP(295)는, 백색 노이즈 생성 회로(287), 입력 단자(296, 297), FIR 필터(285, 286), 감산 회로(288), ADF(284), 출력 단자(298)를 갖고 있다.
백색 노이즈 생성 회로(287)는, 전체 주파수대의 레벨이 대략 일정하게 되는 백색 노이즈를 생성한다. 예를 들면, 백색 노이즈 생성 회로(287)는, 선형 피드백 레지스터 방식에 의해, 백색 노이즈로서의 M(Maximum length sequence의 헤드 문자) 계열 난수를 생성한다. 또한, 이 M 계열 난수의 생성에 대해서는, 예를 들면 일본 특개평 5-241795 등의 주지 기술을 이용하는 것이 가능하다. 또한, 본 실시예에서는 백색 노이즈를 이용하고 있지만, 이것에 한정되는 것은 아니다. 주기성이 없는 노이즈이면 가능하고, 예를 들면 유색 노이즈를 이용하는 것도 가능하다. 그리고, 백색 노이즈 생성 회로(287)는, 생성한 M 계열 난수 L(N)(N은 샘플수이고, FIR 필터(285, 286)의 탭수와 동일 수임)을 FIR 필터(285, 286)에 출력한다.
FIR 필터(285)는, 스위치 회로(260N)를 레지스터 0부터 순차적으로 절환함으로써, 입력 단자(296)를 통하여, 레지스터 0~N-1에 기억되어 있는 경로 J의 임펄스 응답 imp(0)~(N-1)(=IR10'(Z))이 순차적으로 입력된다. 이 결과, FIR 필터(285)의 필터 계수로서, 경로 J의 임펄스 응답 imp(0)~(N-1)가 설정된다. 그리고, FIR 필터(285)는, 설정된 필터 계수에 기초하여, 백색 노이즈 생성 회로(287)로부터의 M 계열 난수 L(N)에 대하여 컨볼루션 연산을 실시하여 ADF(284)에 출력한다. 또한, 본 실시예에서는, FIR 필터(285)로부터의 출력 신호를 참조 신호 Xt(={Xt(0), …, Xt(N-1)}, i번째를 Xt(i)로 나타냄)로 나타내어 이하 설명한다.
또한, FIR 필터(286)는, 스위치 회로(260K)를 레지스터 0부터 순차적으로 절환함으로써, 입력 단자(297)를 통하여, 임펄스 응답 저장 메모리(243)의 레지스터 0~N-1에 기억되어 있는 경로 I의 임펄스 응답 imp(0)~(N-1)(=IR9'(Z))가 순차적으로 입력된다. 이 결과, FIR 필터(286)의 필터 계수로서, 경로 I의 임펄스 응답 imp(0)~(N-1)이 설정된다. 그리고, FIR 필터(286)는, 설정된 필터 계수에 기초하여, 백색 노이즈 생성 회로(287)로부터의 M 계열 난수 L(N)에 대하여 컨볼루션 연산을 실시하여 감산 회로(288)에 출력한다. 또한, 본 실시예에서는, FIR 필터(286)에 의한 컨볼루션 연산 결과를 Yt로 나타내어 이하 설명한다. 또한, 상술한 FIR 필터(285, 286)는, 주지의 FIR 필터를 이용하는 것이 가능하다.
감산 회로(288)의 + 입력 단자에는, FIR 필터(286)로부터의 Yt가 입력된다. 또한, 감산 회로(288)의 - 입력 단자에는, 후술하는 ADF(284)로부터의 출력 신호 Y't가 입력된다. 그리고, 감산 회로(288)는, FIR 필터(286)로부터의 Yt와 ADF(288)로부터의 Y't를 감산하여 출력한다. 이하, 감산 회로(288)로부터의 출력 신호를 오차 신호 Et로 나타내어 이하 설명한다.
ADF(284)는, 도 30의 일점 쇄선 내에 도시하는 바와 같이, 참조 신호 입출력부(289), 필터 계수부(290), 승산부(291), 필터 계수 갱신부(292), 가산부(293), 레지스터(294), 스위치 회로(260Q~260U)를 갖고 있다.
참조 신호 입출력부(289)는, FIR 필터(285)로부터의 참조 신호 Xt가 입력되어, 상기 참조 신호 Xt를 유지한다. 그리고, 참조 신호 입출력부(289)는, 승산부 (291), 필터 계수 갱신부(292)에 대하여 참조 신호 Xt를 출력한다.
필터 계수부(290)는, N개의 레지스터 0~N-1로 구성되어 있다. 그리고, 필터 계수부(290)의 레지스터 0~N-1에는, 스위치 회로(260Q, 260R)를 필터 계수 갱신부(292)측으로 절환하고, 스위치 회로(260S)를 승산부(291)측으로 절환하고, 스위치 회로(260T)를 레지스터 0부터 순차적으로 절환함으로써, 이 필터 계수 갱신부(292)로부터의 필터 계수가 순차적으로 입력된다. 레지스터 0~N-1은, 순차적으로 입력된 필터 계수를 유지한다. 그리고, 필터 계수부(290)는, 스위치 회로(260R)를 승산부(291)측으로 절환하고, 스위치 회로(260T)를 레지스터 0부터 순차적으로 절환함으로써, 레지스터 0~N-1의 필터 계수를 승산부(291)로 순차적으로 출력한다. 또한, 필터 계수부(290)는, 스위치 회로(260U)를 레지스터 0부터 순차적으로 절환함으로써, 레지스터 0~N-1의 필터 계수를 필터 계수 갱신부(292)에 순차적으로 출력한다. 또한, 본 실시예에서는, 필터 계수부(290)의 필터 계수를 Ht(={Ht(0), …, Ht(N-1)}, i번째를 Ht(i)로 나타냄)로 나타내고, 레지스터 0~N-1에는 필터 계수 Ht(0)~Ht(N-1)이 유지되어 있는 것으로서 이하 설명한다.
승산 회로(291)는, 참조 신호 입출력부(289)로부터의 참조 신호 Xt와 필터 계수부(290)로부터의 필터 계수 Ht를 순차적으로 승산한 승산 결과를 가산부(293)에 출력한다.
가산부(293)는, 승산부(291)로부터의 출력 신호를 순차적으로 가산한 결과를 감산 회로(288)에 출력한다. 또한, 이 가산부(293)로부터의 출력 신호가 상술한 Y't로 된다.
필터 계수 갱신부(292)에는, 감산 회로(288)로부터의 오차 신호 Et가 입력된다. 그리고, 필터 계수 갱신부(292)는, 오차 신호 Et, 참조 신호 Xt, 필터 계수 Ht에 기초하여, 후술하는 예를 들면 LMS 알고리즘이나 NLMS 알고리즘 등에 의해 필터 계수 Ht+1(={Ht+1(0), …, Ht+1(N-1)}, i번째를 Ht+1(i)로 나타냄)을 산출하여 필터 계수부(290)에 출력한다. 또한, 이 필터 계수 갱신부(292)에 의한 필터 계수의 산출은, 감산 회로(288)로부터의 오차 신호 Et의 평균값이 일정값 이하로 되도록 행해진다. 또한, 이 일정값이라는 것은, 예를 들면 오차 신호의 평균값이 일정값 이하로 되었을 때의, DA 컨버터(215)(도 22)로부터 출력되는 아날로그 신호에 기초하여 발생하는 음성으로부터, 사람이 에코를 청각할 수 없는 레벨로 되도록 정해지는 값이다.
레지스터(294)는, DSP(295)로부터의 예를 들면 다른 쪽의 논리값 '0'의 논리값이 입력되어, 이 다른 쪽의 논리값 '0'을 유지한다.
DSP(202)는, 제6 실시예에서 나타낸 구성 외에, 도 28, 도 31에 도시하는 바와 같이 FIR 필터(303), 필터 계수 저장 메모리(247), 레지스터(248), 스위치 회로(260N, 260P~260R)를 갖고 있다.
또한, FIR 필터(303)는, 도 31의 일점 쇄선 내에 도시하는 디지털 신호용 메모리(242)(파선), 승산 회로(251), ADD(252), ACC(253), 스위치 회로(260O)를 갖고 있다.
레지스터(248)에는, CPU(201)로부터의 상술한 다른 쪽의 논리값 '0'이 입력된다.
필터 계수 저장 메모리(247)는, N개의 어드레스 0~N-1로 구성되어 있다. 그리고, 필터 계수 저장 메모리(247)의 어드레스 0~N-1에는, 스위치 회로(260Q)를 어드레스 0부터 순차적으로 절환함으로써, ADF(284)로부터의 필터 계수(Ht(0), …, Ht(N-1))가 순차적으로 기억된다. 상세하게 설명하면, 상술한 ADF(284)의 스위치 회로(260T)가 레지스터 0부터 순차적으로 절환됨과 함께, 스위치 회로(260Q)가 어드레스 0부터 순차적으로 절환됨으로써, 어드레스 0부터 순차적으로 필터 계수(Ht(0), …, Ht(N-1))가 순차적으로 기억되게 된다.
디지털 신호용 메모리(242)는, N개의 레지스터 0~N-1로 구성되어 있다. 그리고, 디지털 신호용 메모리(242)에는, 입력 단자(230)를 통하여 AD 컨버터(203)(도 22)로부터의 디지털 신호가 순차적으로 입력된다. 그리고, 레지스터 0~N-1에 디지털 신호가 순차적으로 입력됨으로써, 디지털 신호는 1 샘플링 주기 단위씩 지연되게 된다. 예를 들면 디지털 신호를 Xn으로 하면, 레지스터 O은 Xn을 1 샘플링 주기 지연시킨 Xn-1을 레지스터 1에 출력한다. 또한, 디지털 신호용 메모리(242)는, DSP(202)가 스위치 회로(260R)를 레지스터 0부터 레지스터 N-1로 순차적으로 절환함으로써, 레지스터(248)에 기억된 다른 쪽의 논리값 '0'에 의해 클리어된다.
승산 회로(251)는, DSP(202)가 스위치 회로(260O, 260P)를 각각, 레지스터 0, 어드레스 0부터 순차적으로 절환함으로써, 디지털 신호용 메모리(242)로부터의 디지털 신호(Xn, …, Xn-(N-1))와, 필터 계수 저장 메모리(247)로부터의 필터 계수(Ht(0), …, Ht(N-1))가 순차적으로 입력된다. 그리고, 승산 회로(251)는, 디지털 신호(Xn, …, Xn-(N-1))와 필터 계수(Ht(0), …, Ht(N-1))를 순차적으로 승산한 승 산 결과를 ADD(252)에 출력한다. 예를 들면, 승산 회로(251)는, 디지털 신호용 메모리(242)로부터의 Xn과, 필터 계수 저장 메모리(247)로부터의 필터 계수 Ht(0)를 승산한 승산 결과를 ADD(252)에 출력한다. 다음으로, 승산 회로(251)는, 디지털 신호용 메모리(242)로부터의 Xn-1과, 필터 계수 저장 메모리(247)로부터의 필터 계수 Ht(1)를 승산한 승산 결과를 ADD(252)에 출력한다. 그리고, 이 처리가 반복됨으로써, 디지털 신호(Xn, …, Xn-(N-1))와 필터 계수 Ht(={Ht(0), …, Ht(N-1)}가 순차적으로 승산되게 된다.
ACC(253)는, ADD(252)로부터의 가산 결과가 입력되어, 이 가산 결과를 유지한다. ADD(252)는, 승산 회로(251)로부터의 승산 결과와, ACC(253)에 기억되어 있는 전회의 ADD(252)의 가산 결과를 가산한 결과를 ACC(253)에 출력한다. 이 결과, ACC(253)에는 (Xn·Ht(0)+…+(Xn-(N-1))·Ht(N-1)))이 기억되게 된다. 이 결과, FIR 필터(303)는, 필터 계수 저장 메모리(247)에 기억된 필터 계수에 기초하여, 디지털 신호에 대하여 컨볼루션 연산 처리를 실시한 것으로 된다. 그리고, FIR 필터(303)는, 컨볼루션 연산 처리를 실시한 디지털 신호를, 출력 단자(232)에 출력한다.
그리고, 이와 같이 FIR 필터(303)의 필터 계수를 설정함으로써, 차동 증폭 회로(209)에서 경로 I를 전달하는 신호를, 경로 J를 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(230)에 디지털 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
또한, 본 실시예에서는, FIR 필터(303)를 상술한 구성으로 설명하고 있지만, 이것에 한정되는 것은 아니다. 예를 들면, 도 32에 도시하는 구성으로 해도 된다. 이 경우, 디지털 신호용 메모리(242)에 대응한 지연 회로(335a1~335aN-1), 승산 회로(251)에 대응한 승산 회로(336a0~336aN-1), ADD(252), ACC(253)에 대응한 가산 회로(337)를 설치해도 된다. 이하, FIR 필터(303)가 도 26에 도시하는 구성으로 설치된 경우에 대해 설명한다. 도 32에 도시하는 바와 같이, FIR 필터(303)는, 종속 접속된 N-1개의 지연 회로(335a1~335aN-1)와, 입력되는 디지털 신호를 각각 승산하는 N개의 승산 회로(336a0~336aN-1)와, 승산 회로(336a0~336aN-1)로부터의 출력을 합산하는 가산 회로(337)을 갖고 있다.
지연 회로(335a1~335aN-1)는, 입력 단자(230)를 통하여 입력되는 디지털 신호 Xn을, 샘플링의 주기 단위마다 지연하여 출력한다. 예를 들면, 지연 회로(335a1)는 디지털 신호 Xn을 1 샘플링 주기 위상 지연시킨 디지털 신호 Xn-1을 출력하고, 지연 회로(335aN-1)는 디지털 신호 Xn-(N-1)를 출력한다.
승산 회로(336a0~336aN-1)는, 스위치 회로(260P, 260N)가 순차적으로 절환됨으로써, 필터 계수 저장 메모리(247)에 기억된 필터 계수(Ht(0), …, Ht(N-1))가 승산 계수로서 각각 설정된다. 그리고, 승산 회로(336a0~336aN-1)는, 입력되는 디지털 신호에 대하여 설정된 승산 계수로 승산한 승산 결과를 출력한다.
가산 회로(337)는, 승산 회로(336a0~336aN-1)로부터의 출력 신호를 합산한다. 이 결과, 상술한 FIR 필터(303)와 마찬가지의 컨볼루션 연산을 실시하는 것이 가능하게 된다.
===FIR 필터(303)의 필터 계수 설정===
도 28 내지 도 33을 참조하면서, FIR 필터(303)의 필터 계수를 설정하기 위한 처리 동작의 일례에 대하여 설명한다. 도 33은, FIR 필터(303)의 필터 계수를 설정하는 처리 동작의 일례를 나타내는 플로우차트이다.
DSP(295)는, 예를 들면 CPU(201)로부터의 지시 신호에 의해, 우선 필터 계수부(290)의 필터 계수를 클리어시키기 위해, 레지스터(294)에 다른 쪽의 논리값 '0'을 입력시킨다. 그리고, DSP(295)는, 스위치 회로(260S)를 레지스터(294)측으로 절환하고, 스위치 회로(260T)를 레지스터 0부터 순차적으로 절환한다. 이 결과, 레지스터(294)에 유지되어 있는 다른 쪽의 논리값 '0'에 의해, 필터 계수부(290)의 레지스터 0~N-1이 클리어된다(S401).
그리고, DSP(295)는, 입력 단자(296)를 통하여 입력되는, 임펄스 응답 저장 메모리(255)로부터의 경로 J의 임펄스 응답 imp(0)~(N-1)(=IR10'(Z))을 FIR 필터(285)의 필터 계수로 설정한다(S402). 또한, DSP(295)는, 입력 단자(297)를 통하여 입력되는, 임펄스 응답 저장 메모리(243)로부터의 경로 I의 임펄스 응답 imp(0)~(N-1)(=IR9'(Z))을 FIR 필터(286)의 필터 계수로 설정한다(S403).
백색 노이즈 생성 회로(287)는, 예를 들면 선형 피드백 레지스터 방식에 의해, 백색 노이즈로서의 M 계열 난수 L(N)을 생성하고, FIR 필터(285), FIR 필터(286)에 출력한다(S404).
FIR 필터(285)는, 설정된 필터 계수에 기초하여, 백색 노이즈 생성 회로(287)로부터의 M 계열 난수 L(N)에 대하여 컨볼루션 연산을 실시하여, 연산 결과인 참조 신호 Xt(={XL(0), …, Xt(N-1)})를 ADF(284)에 출력한다(S405).
또한, FIR 필터(286)는, 설정된 필터 계수에 기초하여, 백색 노이즈 생성 회로(287)로부터의 M 계열 난수 L(N)에 대하여 컨볼루션 연산을 실시하여, 연산 결과인 Yt를 감산 회로(288)의 + 입력 단자에 출력한다(S406).
DSP(295)는, 감산 회로(288)의 - 입력 단자에 입력시키는 Y't를 생성하기 위해, 이하의 처리를 행한다. DSP(295)는, 우선 i=0으로 하고(S407), 스위치 회로(260R, 260S)를 승산 회로(291)측으로 절환하고, 스위치 회로(260T)를 레지스터 0 측으로 절환한다. 그리고, DSP(295)는, 참조 신호 입출력부(289)의 Xt(0)과 필터 계수부(290)의 Ht(0)을 각각 승산부(291)에 출력시킨다. 승산부(291)는, Xt(0)과 Ht(0)을 승산하고(S408), 승산 결과 Xt(0)·Ht(0)을 가산부(293)에 출력한다.
다음으로, DSP(295)는, i를 인크리먼트하여 i=i+1=1로 한다(S409). 그리고, DSP(295)는, 승산부(291)의 승산 결과가 Xt(N-1)·Ht(N-1)까지 도달하지 않았기 때문에 i≥N이 아니라고 판별한다(S410·NO). 그리고, DSP(295)는, 스위치 회로(260T)를 레지스터 1측으로 절환하여 필터 계수부(290)의 Ht(1)를 출력시킴과 함께, 참조 신호 입출력부(289)의 Xt(1)를 각각 승산부(291)에 출력시킨다. 승산부(291)는, Xt(1)과 Ht(1)을 승산하고(S408), 승산 결과 Xt(1)·Ht(1)을 가산부(293)에 출력한다. 이와 같이, S408 내지 S410의 처리를 i≥N까지 반복함으로써(S410·YES), 승산부(291)의 승산 결과 Xt(0)·Ht(0)…Xt(N-1)·Ht(N-1)이 가산부(293)에 순차적으로 출력되게 된다. 가산부(293)가 승산부(291)로부터의 승산 결과를 순차적으로 가산함으로써(S411), 가산부(293)의 가산 결과는, Y't(=Xt(0)·Ht(0)+…+Xt(N-1)·Ht(N-1))로 된다. 그리고, 가산부(293)으로부터 감산 회로(288)의 - 입 력 단자로 Y't가 출력된다.
감산 회로(288)는, + 입력 단자에 입력된 Yt와, - 입력 단자에 입력된 Y't를 감산하고(S412), 감산 결과인 오차 신호 Et를 필터 계수 갱신부(292)에 출력한다.
그리고, 필터 계수 갱신부(292)는, 오차 신호 Et에 기초하는 필터 계수를 산출하기 위해 이하의 처리를 실행한다. 우선, 필터 계수 갱신부(292)는, Ht+1(0)을 산출하기 위해 i=0으로 한다(S413). Ht+1(0)은, 소정 상수인 스텝 게인을 α, 참조 신호 Xt의 노옴(즉 제곱합)을 ∥Xt∥2로 하면,
Ht+1(0)=Ht(O)+(α·Et·Xt(0)/∥Xt∥2
로 된다. 그 때문에, 필터 계수 갱신부(292)가, 참조 신호 입출력부(289)로부터의 Xt(0), 필터 계수부(290)로부터의 Ht(0), 감산 회로(288)로부터의 Et에 기초하여, 상기 수학식을 연산함으로써, Ht+1(0)이 산출된다(S414). 다음으로, 필터 계수 갱신부(292)는, Ht+1(1)을 산출하기 위해 i를 인크리먼트하여 i=i+1=1로 한다(S415). 그리고, 필터 계수 갱신부(292)는, 산출한 필터 계수가 Ht+1(N-1)에 도달하지 않았기 때문에 i≥N이 아니라고 판별한다(S416·NO). 상술한 것과 마찬가지로, Ht+1(1)은,
Ht+1(1)=Ht(1)+(α·Et·Xt(1)/∥Xt∥2
로부터 산출된다. 이와 같이, S414 내지 S416의 처리를 i≥N까지 반복함으로써(S416·YES), Ht+1(N)(={Ht+1(0), …, Ht+1(N-1)})이 산출되게 된다. 다음으로, DSP(295)는, 오차 신호 Et의 평균값이 일정값 미만인지의 여부를 판별한다(S417). 그리고, DSP(295)는, 오차 신호 Et의 평균값이 일정값 미만이 아니라고 판별하면(S417·NO), 상술한 S404 이후의 처리를 재차 반복하게 된다.
이와 같이, 감산 회로(288)로부터의 오차 신호 Et의 평균값이 일정값 미만이 아닌 경우, 이 오차 신호 Et에 기초한 필터 계수 Ht+1가 산출되게 된다. 그리고, 이 처리를 반복함으로써, FIR 필터(285)의 필터 계수에 경로 J의 임펄스 응답이 설정되고, FIR 필터(286)의 필터 계수에 경로 I의 임펄스 응답이 설정된 상태에서, 백색 노이즈 생성 회로(287)로부터 M 계열 난수 L(N)이 FIR 필터(285, 286)에 입력되었을 때의, 감산 회로(288)로부터의 오차 신호 Et를 일정값 미만으로 하는 것이 가능하게 된다. 그리고, 오차 신호 Et가 일정값 미만인 경우의 필터 계수 Ht+1(N)은, 경로 I를 전달하는 신호와, 경로 J를 전달하는 신호가 서로 상쇄하는 것을 가능하게 하는 필터 계수인 것을 알 수 있다. 즉, 에코를 방지하는 것이 가능하게 된다.
그리고, DSP(295)는, 오차 신호 Et의 평균값이 일정값 미만이라고 판별하면(S417·YES), 필터 계수부(290)의 필터 계수를 갱신하기 위해 이하의 처리를 실행한다. DSP(295)는, 우선 필터 계수부(290)의 레지스터 O의 필터 계수 H(0)을, Ht+1(0)로 갱신하기 위해 i=0으로 한다(S418). 그리고, DSP(295)는, 스위치 회로(260R)를 필터 계수 갱신부(292)측으로 절환하고, 스위치 회로(260T)를 레지스터 0 측으로 절환한다. 이 결과, 필터 계수부(290)의 레지스터 0으로 유지되어 있는 필터 계수 Ht(0)이 Ht+1(0)로 갱신된다(S419). 다음으로, DSP(295)는, Ht(1)을 Ht+1(1)로 갱신하기 위해 i를 인크리먼트하여 i=i+1=1로 한다(S420). 그리고, DSP(295)는, 레지스터 N-1의 필터 계수 Ht(N-1)가 Ht+1(N-1)로 아직 갱신되어 있지 않기 때문에 N≥i가 아니라고 판별한다(S421·NO). 그리고, 스위치 회로(260T)를 레지스터 1측으로 절환함으로써, 상술한 바와 같이 레지스터 1로 유지되어 있는 필터 계수 Ht(1)을 Ht+1(1)로 갱신한다(S419). 이와 같이, S419 내지 S421의 처리를 N≥i까지 반복함으로써(S421·YES), 필터 계수부(290)의 레지스터 0~N-1의 필터 계수 Ht(={Ht(0), …, Ht(N-1)})가, Ht+1(N)(={Ht+1(0), …, Ht+1(N-1)}로 갱신되게 된다.
그리고, DSP(295)는, 스위치 회로(260Q)를 출력 단자(298)측으로 절환하고, 스위치 회로(260T)를 레지스터 0측부터 순차적으로 절환함으로써, 필터 계수부(290)의 필터 계수 Ht(={Ht(0), …, Ht(N-1)}를, 출력 단자(298)를 통하여 필터 계수 저장 메모리(247)에 출력하는 것이 가능하게 된다. 그리고, DSP(202)가 스위치 회로(260Q)를 어드레스 0부터 순차적으로 절환함으로써, FIR 필터(303)의 필터 계수에, 필터 계수부(290)의 필터 계수 Ht(={Ht(0), …, Ht(N-1)}를 설정하는 것이 가능하게 된다.
또한, 상술한 필터 계수부(290)의 필터 계수 H(N)를 갱신하는 알고리즘은, 이것에 한정되는 것은 아니다. 상술한 바와 같이 LMS 알고리즘이나 NLMS 알고리즘 등의 주지 기술인 추정 알고리즘을 이용하는 것이 가능하다. 또한, 예를 들면 일본 특개 2002-246880호에 기재된 것에 의한 처리로 필터 계수부(290)의 필터 계수 H(N)를 갱신하는 것도 가능하다.
또한, 상술한 실시예에 따르면, 상술한 처리에 대하여 하드웨어(예를 들면 감산 회로(288), 승산부(291) 등)를 이용하여 설명하였지만, 이것에 한정되는 것은 아니다. 예를 들면, 상술한 처리를 프로그램 데이터로서 ROM 등에 미리 기억시켜 두고, DSP(202)가 구비하는 프로세서가 이 프로그램 데이터를 읽어내어 처리하는 것도 가능하다,
<<제8 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예==
도 34는, 제8 실시예를 도시하는 도면이다. 도 34는, 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 일례를 도시하는 블록도이다. 또한, 도 34에 도시하는 에코 방지 회로에서, 상술한 제6, 제7 실시예와 동일한 구성 요건에 대해서는, 동일 번호를 붙이고 설명을 생략한다.
에코 방지 회로는, CPU(201), DSP(202), AD 컨버터(203), DA 컨버터(205), 증폭 회로(206), 입출력 단자(207), 가산 회로(263), 증폭 회로(210), AD 컨버터(214), DA 컨버터(215), DA 컨버터(212), 반전 증폭 회로(261), 이득 위상 조정 회로(G/P)(275)를 갖고 있다.
즉, 본 실시예는, 제6, 제7 실시예에서의 차동 증폭 회로(209), 증폭 회로(213) 대신에, 반전 증폭 회로(261), 이득 위상 조정 회로(275), 가산 회로(263)를 설치한 구성으로 되어 있다. 또한, 본 실시예에서도 CPU(201)를 구성 요건으로 하고 있지만, CPU(201)를 구성 요건으로 하지 않는 것도 가능하다.
또한, DSP(202)는, 입력 단자(230), 출력 단자(231), 디지털 필터(211), 출력 단자(232), 입력 단자(233), 출력 단자(234)를 갖고 있다.
반전 증폭 회로(261)는, DA 컨버터(212)로부터의 아날로그 신호를, 소정의 증폭률로 반전 증폭하여 이득 위상 조정 회로(275)에 출력한다.
이득 위상 조정 회로(275)는, 반전 증폭 회로(261)로부터의 아날로그 신호에 대하여, 이득 및 위상의 조정을 실시하여 가산 회로(263)에 출력한다. 또한, 이 이득 위상 조정 회로(275)에 의한 아날로그 신호의 이득 및 위상의 조정은, 입력 단자(230)에 디지털 신호가 입력되었을 때의 후술하는 가산 회로(263)의 출력을 제로로 하기 위해, 증폭 회로(206)로부터의 아날로그 신호와는 위상 반전된 아날로그 신호를 생성하도록 행해진다.
가산 회로(263)은, 증폭 회로(206)로부터의 아날로그 신호가 입력된다. 그리고, 가산 회로(263)는, 증폭 회로(206)로부터의 아날로그 신호와, 이득 위상 조정 회로(275)로부터의 아날로그 신호를 가산한 가산 결과를 증폭 회로(210)에 출력한다. 또한, 가산 회로(263)는, 입출력 단자(207)로부터의 음성 신호를 증폭 회로(210)에 출력한다.
===디지털 필터(211)의 필터 계수===
도 35 및 도 36을 참조하면서 디지털 필터(211)의 필터 계수에 대하여 상세하게 설명한다. 도 35는, 도 34에 도시하는 에코 방지 회로의 경로(K, L)를 도시한 도면이다. 또한, 도 36은, 경로 K에 이어폰 마이크(18)가 포함되는 경우를 도시한 도면이다.
상술한 바와 같이 증폭 회로(206)로부터의 아날로그 신호는, 입출력 단자(207)로부터의 출력뿐만 아니라, 가산 회로(263)에도 입력되는 경우가 있다. 이 경우, 이 아날로그 신호에 의한 에코가 발생하게 된다. 혹은, 입출력 단자(207)로부터 입력되는 음성 신호와 증폭 회로(206)로부터의 아날로그 신호가 중첩되어 가산 회로(263)에 입력됨으로써, 에코가 발생하게 된다. 따라서, 이 에코를 방지하기 위해 디지털 필터(211)의 필터 계수를 설정한다.
따라서, 도 35 또는 도 36의 파선으로 나타내는 출력 단자(231)로부터 가산 회로(263)의 입력 단자까지의 임펄스 응답(전달 함수)을 IR11(Z)로 한다. 또한, 도 35 또는 도 36의 일점 쇄선으로 나타내는 출력 단자(232)로부터 반전 증폭 회로(261)의 입력까지의 임펄스 응답(전달 함수)을 IR12_1(Z)로 한다. 또한, 도 35 또는 도 36의 이점 쇄선으로 나타내는 반전 증폭 회로(261)의 입력으로부터 가산 회로(263)의 입력 단자까지의 임펄스 응답(전달 함수)을 IR12_2(Z)로 한다. 그리고, IR12(Z)=-IR12_1(Z)·IR12_2(Z)로 한다. 또한, 도 35 또는 도 36의 파선으로 나타내는 가산 회로(263)에서의 각 입력 단자의 후단으로부터 입력 단자(233)까지의 임펄스 응답(전달 함수)을 W6(Z)로 한다.
여기서는, 디지털 필터(211)의 필터 계수를 Q(Z)로 한 경우, 가산 회로(263)에서, 증폭 회로(206)로부터의 신호를 이득 위상 조정 회로(275)로부터의 신호로 상쇄하기 위해서는,
IR11(Z)=IR12(Z)·Q(Z)
의 수학식이 성립되도록 Q(Z)를 설정하게 된다. 즉, Q(Z)는,
Q(Z)=IR11(Z)/IR12(Z)
로 되도록 설정하면 된다. 그러나, DSP(202)가 취득 가능한 임펄스 응답은, 도 35 또는 도 36의 실선으로 나타내는 경로 K의 임펄스 응답(전달 함수) IR11'(Z)(=IR11(Z)·W6(Z))와, 경로 L의 임펄스 응답(전달 함수) IR12'(Z)(=-IR12_1(Z)·IR12_2(Z)·W6(Z))이다. 또한, IR12_1(Z)이 위상 반전되어 있는 것은, 반전 증폭 회로(261)에서 반전되기 때문이다.
이 경우, 경로 K를 전달하는 신호와 경로 L을 전달하는 신호가 서로 상쇄하는 것을 가능하게 하는 수학식은,
-IR11'(Z)=IR12'(Z)·Q(Z)
로 된다. 즉, Q(Z)를,
Q(Z)=-IR11'(Z)/IR12'(Z)
로 설정하면 되는 것을 알 수 있다. 즉, 디지털 필터(211)의 특성은, 전달 특성 IR11'(Z)를 위상 반전한 것에, IR12'(Z)의 역필터의 특성을 부가한 특성으로 함으로써 실현 가능하게 된다. 그리고, 이와 같이 디지털 필터(211)의 필터 계수를 설정함으로써, 가산 회로(263)에서 경로 K를 전달하는 신호를, 경로 L을 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(230)에 디지털 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
그리고, 도 36에 도시하는 바와 같이, 이어폰 마이크(18)가 접속된 상태에서 임펄스 응답 IR11'(Z)를 취득하고, 이 IR11'(Z)를 위상 반전한 것에, IR12'(Z)의 역필터의 특성을 부가한 필터 계수를 디지털 필터(211)에 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 임펄스 응답 IR11'(Z)를 취득하고, 이 IR11'(Z)를 위상 반전한 것에, IR12'(Z)의 역필터의 특성을 부가한 필터 계수를 디지털 필터(211)에 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 이 디지털 필터(211)의 특성을, 전달 특성 IR11'(Z)를 위상 반전한 것에, IR12'(Z)의 역필터의 특성을 부가한 특성으로 하는 처리는, 제6 실시예와 마찬가지의 처리를 행함으로써 가능하게 된다.
또한, 경로 K의 임펄스 응답 IR11'(Z)를 FIR 필터(286)(도 29)의 필터 계수로 설정하고, 경로 L의 임펄스 응답 IR12'(Z)를 FIR 필터(285)(도 29)의 필터 계수로 설정하여, 제7 실시예와 마찬가지의 처리를 행함으로써, 디지털 필터(211)의 필터 계수를 설정하는 것도 가능하다.
<<제9 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예===
도 37은, 제9 실시예를 도시하는 도면이다. 도 37은, 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로(DSP(264))의 일례를 도시하는 블록도이다. 또한, 도 37에 도시하는 에코 방지 회로에서, 상술한 제6, 제7 실시예와 동일한 구성 요건에 대해서는, 동일 번호를 붙이고 설명을 생략한다.
에코 방지 회로는, CPU(201), DSP(264), 증폭 회로(206), 입출력 단자(207), 차동 증폭 회로(209), 증폭 회로(210), 증폭 회로(213)를 갖고 있다. 또한, 본 실시예에서도 CPU(201)를 구성 요건으로 하고 있지만, CPU(201)를 구성 요건으로 하 지 않는 것도 가능하다.
또한, DSP(264)는, 입력 단자(265), AD 컨버터(266), DA 컨버터(267), 출력 단자(268), 입력 단자(269), AD 컨버터(270), DA 컨버터(271), 출력 단자(272), 디지털 필터(211), DA 컨버터(273), 출력 단자(274)를 갖고 있다.
즉, 본 실시예는, 제6, 제7 실시예에서의 AD 컨버터(203, 214), DA 컨버터(205, 212, 215)가 DSP(264) 내부에 설치된 구성으로 되어 있다.
AD 컨버터(266)에는, 입력 단자(265)를 통하여, 예를 들면 음성 신호가 입력된다. 그리고, AD 컨버터(266)는, 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를, DA 컨버터(267), 디지털 필터(211)에 출력한다.
디지털 필터(211)는 디지털 신호에 대하여, 상기 디지털 필터(211)의 필터 계수에 기초하여 필터 처리를 실시하여 DA 컨버터(273)에 출력한다.
DA 컨버터(267)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를, 출력 단자(268)를 통하여 출력시킨다. 이 결과, 증폭 회로(206)에는, DA 컨버터(267)로부터의 아날로그 신호가 입력된다.
DA 컨버터(273)는, 디지털 필터(211)로부터의 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를, 출력 단자(274)를 통하여 출력시킨다. 이 결과, 증폭 회로(213)에는, DA 컨버터(273)로부터의 아날로그 신호가 입력된다.
AD 컨버터(270)에는, 입력 단자(269)를 통하여, 증폭 회로(210)로부터의 음성 신호가 입력된다. 그리고, AD 컨버터(270)는, 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를, DA 컨버터(271)에 출력한다.
DA 컨버터(271)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를, 출력 단자(272)를 통하여 출력시킨다.
===디지털 필터(211)의 필터 계수===
도 38 및 도 39를 참조하면서 디지털 필터(211)의 필터 계수에 대하여 상세하게 설명한다. 도 38은, 도 37에 도시하는 에코 방지 회로의 경로(M, N)를 도시한 도면이다. 또한, 도 39는, 경로 M에 이어폰 마이크(18)가 포함되는 경우를 도시한 도면이다.
상술한 바와 같이 증폭 회로(206)로부터의 아날로그 신호는, 입출력 단자(207)로부터의 출력뿐만 아니라, 차동 증폭 회로(209)의 + 입력 단자에도 입력되는 경우가 있다. 이 경우, 이 아날로그 신호에 의한 에코가 발생하게 된다. 혹은, 입출력 단자(207)로부터 입력되는 음성 신호와 증폭 회로(206)로부터의 아날로그 신호가 중첩되어 차동 증폭 회로(209)의 + 입력 단자에 입력됨으로써, 에코가 발생하게 된다. 따라서, 이 에코를 방지하기 위해 디지털 필터(211)의 필터 계수를 설정한다.
따라서, 도 38 또는 도 39의 파선으로 나타내는 DA 컨버터(267)의 입력으로부터 차동 증폭 회로(209)의 + 입력 단자까지의 임펄스 응답(전달 함수)을 IR13(Z)으로 한다. 또한, 도 38 또는 도 39의 파선으로 나타내는 DA 컨버터(273)의 입력으로부터 차동 증폭 회로(209)의 - 입력 단자까지의 임펄스 응답(전달 함수)을 IR14(Z)로 한다. 또한, 도 38 또는 도 39의 파선으로 나타내는 차동 증폭 회로(209)의 ± 입력 단자의 후단으로부터 AD 컨버터(270)의 출력까지의 임펄스 응답( 전달 함수)을 W7(Z)로 한다.
여기서는, 디지털 필터(211)의 필터 계수를 Q(Z)로 한 경우, 차동 증폭 회로(209)에서, 증폭 회로(206)로부터의 신호를 증폭 회로(213)로부터의 신호로 상쇄하기 위해서는,
IR13(Z)=IR14(Z)·Q(Z)
의 식이 성립되도록 Q(Z)를 설정하게 된다. 즉, Q(Z)는,
Q(Z)=IR13(Z)/IR14(Z)
로 되도록 설정하면 된다. 그러나, DSP(264)가 취득 가능한 임펄스 응답은, 도 38 또는 도 39의 실선으로 나타내는 경로 M의 임펄스 응답(전달 함수) IR13'(Z)(=IR13(Z)·W7(Z))와, 경로 N의 임펄스 응답(전달 함수) IR14'(Z)(=-IR14(Z)·W7(Z))이다. 또한, IR14(Z)가 위상 반전되어 있는 것은, 차동 증폭 회로(209)의 - 입력 단자에 입력되어 있기 때문이다.
이 경우, 경로 M을 전달하는 신호와 경로 N을 전달하는 신호가 서로 상쇄하는 것을 가능하게 하는 수학식은,
-IR13'(Z)=IR14'(Z)·Q(Z)
로 된다. 즉, Q(Z)를,
Q(Z)=-IR13'(Z)/IR14'(Z)
로 설정하면 되는 것을 알 수 있다. 즉, 디지털 필터(211)의 특성은, 전달 특성 IR13'(Z)를 위상 반전한 것에, IR14'(Z)의 역필터의 특성을 부가한 특성으로 함으로써 실현 가능하게 된다. 그리고, 이와 같이 디지털 필터(211)의 필터 계수를 설 정함으로써, 차동 증폭 회로(209)에서 경로 M을 전달하는 신호를, 경로 N을 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(265)에 음성 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
그리고, 도 39에 도시하는 바와 같이, 이어폰 마이크(18)가 접속된 상태에서 임펄스 응답 IR13'(Z)를 취득하고, 이 IR13'(Z)를 위상 반전한 것에, IR14'(Z)의 역필터의 특성을 부가한 필터 계수를 디지털 필터(211)에 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 임펄스 응답 IR13'(Z)를 취득하고, 이 IR13'(Z)를 위상 반전한 것에, IR14'(Z)의 역필터의 특성을 부가한 필터 계수를 디지털 필터(211)에 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 이 디지털 필터(211)의 특성을, 전달 특성 IR13'(Z)를 위상 반전한 것에, IR14'(Z)의 역필터의 특성을 부가한 특성으로 하는 처리는, 제6 실시예와 마찬가지의 처리를 행함으로써 가능하게 된다.
또한, 경로 M의 임펄스 응답 IR13'(Z)를 FIR 필터(286)(도 29)의 필터 계수로 설정하고, 경로 N의 임펄스 응답 IR14'(Z)를 FIR 필터(285)(도 29)의 필터 계수로 설정하여, 제7 실시예와 마찬가지의 처리를 행함으로써, 디지털 필터(211)의 필터 계수를 설정하는 것도 가능하다.
<<제10 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예===
도 40은, 제10 실시예를 도시하는 도면이다. 도 40은, 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로(DSP(264))의 일례를 도시하는 블록도이다.
또한, 도 40에 도시하는 바와 같이 제10 실시예에서의 에코 방지 회로는, 상술한 제8 실시예(도 34), 제9 실시예(도 37)를 조합한 구성으로 되어 있고, 동일한 구성 요건에 대해서는 동일 번호를 붙이고 설명을 생략한다.
===디지털 필터(211)의 필터 계수===
도 41 및 도 42를 참조하면서 디지털 필터(211)의 필터 계수에 대하여 상세하게 설명한다. 도 41은, 도 40에 도시하는 에코 방지 회로의 경로(O, P)를 도시한 도면이다. 또한, 도 42는, 경로 O에 이어폰 마이크(18)가 포함되는 경우를 도시한 도면이다.
상술한 바와 같이 증폭 회로(206)로부터의 아날로그 신호는, 입출력 단자(207)로부터의 출력뿐만 아니라, 가산 회로(263)에도 입력되는 경우가 있다. 이 경우, 이 아날로그 신호에 의한 에코가 발생하게 된다. 혹은, 입출력 단자(207)로부터 입력되는 음성 신호와 증폭 회로(206)로부터의 아날로그 신호가 중첩되어 가산 회로(263)에 입력됨으로써, 에코가 발생하게 된다. 따라서, 이 에코를 방지하기 위해 디지털 필터(211)의 필터 계수를 설정한다.
따라서, 도 41 또는 도 42의 파선으로 나타내는 DA 컨버터(267)의 입력로부터 가산 회로(263)의 입력 단자까지의 임펄스 응답(전달 함수)을 IR15(Z)로 한다. 또한, 도 41 또는 도 42의 일점 쇄선으로 나타내는 DA 컨버터(273)의 입력으로부터 반전 증폭 회로(261)의 입력까지의 임펄스 응답(전달 함수)을 IR16_1(Z)로 한다. 또한, 도 41 또는 도 42의 이점 쇄선으로 나타내는 반전 증폭 회로(261)의 입력으로부터 가산 회로(263)의 입력 단자까지의 임펄스 응답(전달 함수)을 IR16_2(Z)로 한다. 그리고, IR16(Z)=-IR16_1(Z)·IR16_2(Z)로 한다. 또한, 도 41 또는 도 42의 파선으로 나타내는 가산 회로(263)의 각 입력 단자의 후단으로부터 AD 컨버터(270)의 출력까지의 임펄스 응답(전달 함수)을 W8(Z)로 한다.
여기서는, 디지털 필터(211)의 필터 계수를 Q(Z)로 한 경우, 가산 회로(263)에서, 증폭 회로(206)로부터의 신호를 이득 위상 조정 회로(275)로부터의 신호로 상쇄하기 위해서는,
IR15(Z)=IR16(Z)·Q(Z)
의 식이 성립되도록 Q(Z)를 설정하게 된다. 즉, Q(Z)는,
Q(Z)=IR15(Z)/IR16(Z)
로 되도록 설정하면 된다. 그러나, DSP(264)가 취득 가능한 임펄스 응답은, 도 41 또는 도 42의 실선으로 나타내는 경로 O의 임펄스 응답(전달 함수) IR15'(Z)(=IR15(Z)·W8(Z))와, 경로 P의 임펄스 응답(전달 함수) IR16'(Z)(=-IR16_1(Z)·IR16_2(Z)·W8(Z))이다. 또한, IR16_1(Z)이 위상 반전되어 있는 것은, 반전 증폭 회로(261)에서 반전되기 때문이다.
이 경우, 경로 O를 전달하는 신호와 경로 P를 전달하는 신호가 서로 상쇄하는 것을 가능하게 하는 수학식은,
-IR15'(Z)=IR16'(Z)·Q(Z)
로 된다. 즉, Q(Z)를,
Q(Z)=-IR15'(Z)/IR16'(Z)
로 설정하면 되는 것을 알 수 있다. 즉, 디지털 필터(211)의 특성은, 전달 특성 IR15'(Z)를 위상 반전한 것에, IR16'(Z)의 역필터의 특성을 부가한 특성으로 함으로써 실현 가능하게 된다. 그리고, 이와 같이 디지털 필터(211)의 필터 계수를 설정함으로써, 가산 회로(263)에서 경로 O를 전달하는 신호를, 경로 P를 전달하는 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(265)에 음성 신호가 입력되었을 때의, 상술한 에코를 방지하는 것이 가능하게 된다.
그리고, 도 42에 도시하는 바와 같이, 이어폰 마이크(18)가 접속된 상태에서 임펄스 응답 IR15'(Z)를 취득하고, 이 IR15'(Z)를 위상 반전한 것에, IR16'(Z)의 역필터의 특성을 부가한 필터 계수를 디지털 필터(211)에 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 임펄스 응답 IR15'(Z)를 취득하고, 이 IR15'(Z)를 위상 반전한 것에, IR16'(Z)의 역필터의 특성을 부가한 필터 계수를 디지털 필터(211)에 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 이 디지털 필터(211)의 특성을, 전달 특성 IR15'(Z)를 위상 반전한 것에, IR16'(Z)의 역필터의 특성을 부가한 특성으로 하는 처리는, 제6 실시예와 마찬 가지의 처리를 행함으로써 가능하게 된다.
또한, 경로 O의 임펄스 응답 IR15'(Z)를 FIR 필터(286)(도 29)의 필터 계수로 설정하고, 경로 P의 임펄스 응답 IR16'(Z)를 FIR 필터(285)(도 29)의 필터 계수로 설정하여, 제7 실시예와 마찬가지의 처리를 행함으로써, 디지털 필터(211)의 필터 계수를 설정하는 것도 가능하다.
<<제11 실시예>>
===에코 방지 회로, 디지털 신호 처리 회로의 구성예===
도 43은, 제11 실시예를 도시하는 도면이다. 도 43은, 에코 방지 회로, 상기 에코 방지 회로에 포함되는 디지털 신호 처리 회로(DSP(283))의 일례를 도시하는 블록도이다. 또한, 도 43에 도시하는 에코 방지 회로에서, 상술한 제6 실시예와 동일한 구성 요건에 대해서는, 동일 번호를 붙이고 설명을 생략한다. 도 44는, 도 43에 도시하는 ADF(276)의 상세도이다.
DSP(283)는, 입력 단자(230), ADF(276), 출력 단자(231), 디지털 필터(211), 출력 단자(232), 입력 단자(233), 감산 회로(277), 출력 단자(234)를 갖고 있다.
감산 회로(277)의 + 입력 단자에는, 입력 단자(233)를 통하여, AD 컨버터(214)로부터의 디지털 신호가 입력된다. 또한, 감산 회로(277)의 - 입력 단자에는, ADF(276)로부터의 출력 신호가 입력된다. 그리고, 감산 회로(277)는, AD 컨버터(214)로부터의 디지털 신호와 ADF(276)로부터의 출력 신호를 감산하여 출력한다. 이하, 감산 회로(277)로부터의 출력 신호를 오차 신호라고 한다.
ADF(276)는, 도 44의 파선 내에 도시하는 바와 같이, 참조 신호 입출력부 (278), 필터 계수부(279), 승산부(280), 필터 계수 갱신부(281), 가산부(282)를 갖고 있다.
참조 신호 입출력부(278)는, 입력 단자(230)를 통하여 AD 컨버터(203)로부터의 디지털 신호(이하, 참조 신호 입출력부(278)에 입력되는 디지털 신호를 참조 신호라고 함)가 입력되어, 상기 참조 신호를 유지한다. 그리고, 참조 신호 입출력부(278)는, 승산부(280), 필터 계수 갱신부(281)에 대하여 참조 신호를 출력한다.
필터 계수부(279)는, 필터 계수 갱신부(281)로부터의 필터 계수가 입력되어, 상기 필터 계수를 유지한다. 그리고, 필터 계수부(279)는, 상술한 참조 신호 입출력부(278)로부터 승산부(280)로의 참조 신호의 출력과 함께, 이 승산부(280)에 대하여 필터 계수를 출력한다. 또한, 필터 계수부(279)는, 필터 계수 갱신부(281)에 대하여 필터 계수를 출력한다.
승산부(280)는, 참조 신호와 필터 계수를 순차적으로 승산한 승산 결과를 가산부(282)에 출력한다.
가산부(282)는, 승산부(280)로부터의 출력 신호를 순차적으로 가산한 결과를 감산 회로(277)에 출력한다.
필터 계수 갱신부(281)에는, 감산 회로(277)로부터의 오차 신호가 입력된다. 그리고, 필터 계수 갱신부(281)는, 오차 신호, 참조 신호, 필터 계수에 기초하여, 예를 들면 LMS 알고리즘이나 NLMS 알고리즘 등의 추정 알고리즘에 의해 필터 계수를 산출하여 필터 계수부(279)에 출력한다. 또한, 이 필터 계수 갱신부(281)에 의한 필터 계수의 산출은, 입력 단자(230)에 디지털 신호가 입력되었을 때의, 감산 회로(277)로부터의 오차 신호의 평균값이 일정값 이하로 되도록 행해진다. 또한, 이 일정값이라는 것은, 예를 들면 오차 신호의 평균값이 일정값 이하로 되었을 때의, DA 컨버터(215)로부터 출력되는 아날로그 신호에 기초하여 발생하는 음성으로부터, 사람이 에코를 청각할 수 없는 레벨로 되도록 정해지는 값이다.
DA 컨버터(215)는, 출력 단자(234)를 통하여, 감산 회로(277)로부터의 디지털 신호가 입력된다. 그리고, DA 컨버터(215)는, 디지털 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 출력한다.
===필터 계수부(279)의 필터 계수 갱신===
도 44, 도 45를 참조하면서, 필터 계수부(279)의 필터 계수를 갱신하기 위한 처리 동작의 일례에 대하여 설명한다. 도 45는, 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 처리 동작의 일례를 도시하는 플로우차트이다. 또한, 이하의 설명에서는, 입력 단자(230)에 디지털 신호가 입력된 시각 t에서, 감산 회로(277)의 + 입력 단자에 입력되는 디지털 신호를 Yt, 참조 신호 입출력부(278)에 입력되는 참조 신호를 Xt(={Xt(0), Xt(1), …, Xt(N-1)})로 나타낸다. 또한, 필터 계수부(279)의 필터 계수를 Ht(={Ht(0), Ht(1), …, Ht(N-1)})로 나타낸다. 또한, 필터 계수 갱신부(281)에서 산출되는 필터 계수를 Ht+1(={Ht+1(0), Ht+1(1), …, Ht+1(N-1)})로 나타내어 설명한다. 그리고, i번째의 참조 신호를 Xt(i), 필터 계수를 Ht(i), Ht+1(i)로 나타낸다.
DSP(283)는, 참조 신호 입출력부(278)에 참조 신호 Xt를 입력시키면(S501), 감산 회로(277)의 - 입력 단자에 입력시키는 신호 Y't를 생성하기 위해, 이하의 처 리를 행한다. DSP(283)는, 우선 i=0으로 하고(S502), 참조 신호 입출력부(278)의 Xt(0)과 필터 계수부(279)의 Ht(0)을 각각 승산부(280)에 출력시킨다. 승산부(280)는, Xt(0)과 Ht(0)을 승산한 승산 결과(S503)를, 가산부(282)에 출력한다. 가산부(282)는, 승산부(280)로부터의 출력 신호 Xt(0)·Ht(0)과 제로를 가산한다.
다음으로, DSP(283)는, i를 인크리먼트하여 i=i+1=1로 한다(S504). 그리고, DSP(283)는, 승산부(280)의 승산 결과가 Xt(N-1)·Ht(N-1)까지 도달하지 않았기 때문에 i≥N이 아니라고 판별하고(S505·NO), 참조 신호 입출력부(278)의 Xt(1)과 필터 계수부(279)의 Ht(1)을 각각 승산부(280)에 출력시킨다. 승산부(280)는, Xt(1)과 Ht(1)을 승산한 승산 결과를(S503), 가산부(282)에 출력한다. 가산부(282)는, 승산부(280)로부터의 출력 신호 Xt(1)·Ht(1)과 Xt(0)·Ht(0)를 가산한다. 이와 같이, S503 내지 S505의 처리를 i≥N까지 반복함으로써(S505·YES), 가산부(282)의 가산 결과는, Y't(=Xt(0)·Ht(0)+…+Xt(N-1)·Ht(N-1))로 된다. 그리고, 가산부(282)로부터 감산 회로(277)의 - 입력 단자로 Y't가 출력된다(S506).
감산 회로(277)는, + 입력 단자에 입력된 Yt와,- 입력 단자에 입력된 Y't를 감산하여 출력한다(S507). 그리고, 감산 회로(277)로부터의 오차 신호가, 필터 계수 갱신부(281)에 입력된다. 또한, 이 감산 회로(277)로부터의 오차 신호를 Et(=Yt-Y't)로 나타내어 이하 설명한다.
필터 계수 갱신부(281)는, 필터 계수부(279)의 필터 계수를 갱신하기 위해 이하의 처리를 실행한다. 우선, 필터 계수 갱신부(281)는, Ht+1(0)을 산출하기 위해 i=0으로 한다(S508). Ht+1(0)은, 소정 상수인 스텝 게인을 α, 참조 신호 Xt의 노옴(즉 제곱합)을 ∥Xt∥2로 하면,
Ht+1(0)=Ht(0)+(α·Et·Xt(0))/∥Xt∥2
로 된다. 그 때문에, 필터 계수 갱신부(281)가, 참조 신호 입출력부(782)로부터의 Xt(0), 필터 계수부(279)로부터의 Ht(0), 감산 회로(277)로부터의 Et에 기초하여, 상기 수학식을 연산함으로써, Ht+1(0)이 산출된다(S509). 다음으로, 필터 계수 갱신부(281)는, Ht+1(1)을 산출하기 위해 i를 인크리먼트하여 i=i+1=1로 한다(S510). 그리고, 필터 계수 갱신부(281)는, 산출한 필터 계수가 Ht+1(N-1)에 도달하지 않았기 때문에 i≥N이 아니라고 판별한다(S511·NO). 그리고 상술한 것과 마찬가지로, Ht+1(1)은,
Ht+1(1)=Ht(1)+(α·Et·Xt(0))/∥Xt∥2
로부터 산출된다. 이와 같이, S509 내지 S511의 처리를 i≥N까지 반복함으로써(S511·YES), Ht+1(={Ht+1(0), …, Ht+1(N-1))이 산출되게 된다. 그리고, 필터 계수 갱신부(281)는, 필터 계수부(279)의 필터 계수 Ht(={Ht(0), …, Ht(N-1)})를 Ht+1(=Ht+1(0), …, Ht+1(N-1)})로 갱신하기 위해, 상기 Ht+1을 필터 계수부(279)에 출력한다.
DSP(283)는, 우선 필터 계수부(279)의 Ht(0)를 Ht+1(0)로 갱신하기 위해 i=0으로 한다(S512). 이 결과, 필터 계수부(279)의 Ht(0)가 Ht+1(0)로 갱신된다(S513). 다음으로, DSP(283)는, Ht(1)를 Ht+1(1)로 갱신하기 위해 i를 인크리먼트하여 i=i+1=1로 한다(S514). 그리고, DSP(283)는, Ht(N-1)이 Ht+1(N-1)로 아직 갱 신되어 있지 않기 때문에 N≥i가 아니라고 판별한다(S515·NO). 그리고, DSP(283)는, Ht(1)을 Ht+1(1)로 갱신한다(S513). 이와 같이, S513 내지 S515의 처리를 N≥i까지 반복함으로써(S515·YES), 필터 계수부(279)의 필터 계수 Ht(={Ht(0), …, Ht(N-1)})이 Ht+1(={Ht+1(0), …, Ht+1(N-1)}로 갱신된다.
그리고, 재차 상술한 S502 내지 S505의 처리가 행해진다. 이 결과, 필터 계수 Ht+1(={Ht+1(0), …, Ht+1(N-1)})에 기초하는 출력 신호 Y't가, 가산부(282)로부터 감산 회로(277)의 - 입력 단자에 입력된다.
이와 같이, 감산 회로(277)로부터의 오차 신호에 기초하여, 필터 계수부(279)의 필터 계수를, 이 오차 신호가 반영된 필터 계수로 갱신하는 것이 가능하게 된다. 그리고, 이 처리를 반복함으로써, 입력 단자(230)에 디지털 신호가 입력되었을 때의, 감산 회로(277)로부터의 오차 신호의 평균값을 일정값 이하로 하는 것이 가능하게 된다. 즉, 에코를 방지하는 것이 가능하게 된다. 또한, 필터 계수부(279)의 필터 계수를 갱신하는 알고리즘은, 이것에 한정되는 것은 아니다. 상술한 바와 같이 LMS 알고리즘이나 NLMS 알고리즘 등의 주지 기술인 추정 알고리즘을 이용하는 것이 가능하다. 또한, 예를 들면 일본 특개 2002-246880호에 기재된 것에 의한 처리로 필터 계수부(279)의 필터 계수를 갱신하는 것도 가능하다.
또한, 상술한 실시예에 따르면, 상술한 처리에 대하여 하드웨어(예를 들면 감산 회로(277), 승산부(280) 등)를 이용하여 설명하였지만, 이것에 한정되는 것은 아니다. 예를 들면, 상술한 처리를 프로그램 데이터로서 ROM 등에 미리 기억시켜 두고, DSP(283)가 구비하는 프로세서가 이 프로그램 데이터를 읽어내어 처리하는 것도 가능하다.
또한, 본 실시예에서의 디지털 필터(211)의 필터 계수는, 상술한 제6 실시예 내지 제10 실시예와 마찬가지의 처리를 행함으로써 설정하는 것이 가능하다. 그리고, 이어폰 마이크(18)가 접속된 상태에서 취득된 임펄스 응답에 기초하여 FIR 필터(211)의 필터 계수를 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다. 또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 취득된 임펄스 응답에 기초하여 FIR 필터(211)의 필터 계수를 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다,
또한, 본 실시예는, 상술한 제6 실시예에 ADF(276), 감산 회로(277)를 설치한 것이지만, 이것에 한정되는 것은 아니다. 상술한 제7 실시예 내지 제10 실시예에도 마찬가지로, ADF(276), 감산 회로(277)를 설치하는 것도 가능하다. 상세하게 설명하면 제7, 제8 실시예에서는, 본 실시예와 마찬가지로 ADF(276), 감산 회로(277)를 설치한다. 또한, 제9, 제10 실시예에서는, 감산 회로(277)를 AD 컨버터(270), DA 컨버터(271) 사이에 설치한다. 그리고, 감산 회로(277), DA 컨버터(271) 사이의 신호선에 나타나는 오차 신호를 ADF(276)에 입력시키고, AD 컨버터(266)로부터의 디지털 신호를 참조 신호로서 ADF(276)에 입력되도록 설치한다.
그리고, 예를 들면 임펄스 응답의 측정 오차 등에 의해, 차동 증폭 회로(209)(가산 회로(263))에서 경로 I를 전달하는 신호를, 경로 J를 전달하는 신호로 상쇄하였을 때의 결과가, 에코를 충분히 방지할 수 없는 레벨로 되는 경우가 있다. 이 경우, 상술한 제11 실시예에 따르면, 감산 회로(277)에서 차동 증폭 회로(209)(가산 회로(263))로부터의 출력을, 가산부(282)로부터의 출력 신호 Y't로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(230(265))에 디지털 신호(음성 신호)가 입력되었을 때의, 상술한 에코를 보다 확실하게 방지하는 것이 가능하게 된다.
<<에코 방지 회로, 디지털 신호 처리 회로의 에코 방지 적용예>>
도 1, 도 2, 도 5, 도 6, 도 46, 도 47을 참조하면서, 본 발명에 따른 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로의 적용예에 대하여 설명한다. 또한, 본 실시예에서는, 예를 들면 제1 실시예에서의 에코 방지 회로, 상기 에코 방지에 포함되는 디지털 신호 처리 회로(DSP(2))를, 가령 도 46에 도시하는 휴대 전화기(19)에 적용한 경우에서의 구성 및 동작에 대하여 설명한다. 도 46은, 본 발명에 따른 에코 방지 회로(41)가 적용되는 휴대 전화기(19)의 모식도이다. 도 47은, 도 46에 도시하는 휴대 전화기(19)의 구성의 일례를 도시하는 블록도이다. 또한, 휴대 전화기(19)에는, 도 46, 도 47에 도시하는 바와 같이 이어폰 마이크(18)가 접속되어 있다. 이 이어폰 마이크(18)는, 휴대 전화기(19)가 수신한 음성 신호에 기초하여, 진동판(도시 생략)을 진동시킴으로써 음성을 발생시키는 스피커 기능을 갖는다. 또한, 이어폰 마이크(18)는, 상기 이어폰 마이크(18)를 장착하고 있는 사람이 음성을 냈을 때의 고막의 진동을 진동판의 진동으로 바꿈으로써 음성 신호를 생성하여 출력하는 마이크 기능도 갖는 것이다. 또한, 이 이어폰 마이크(18)는 주지의 기술로서, 예를 들면 일본 특개 2003-9272 등에 기 재되어 있다. 또한, 이어폰 마이크(18)와 휴대 전화기(19)는 접속되어 유선 통신하도록 설치되어 있지만, 무선 통신(HomeRF(Radio Frequency) 등)하도록 설치해도 된다.
휴대 전화기(19)는, 안테나(20), RF(Radio Frequency)부(21), 베이스 밴드 처리부(22), CPU(24), 표시부(23), 입력부(25), AD 컨버터(26), DA 컨버터(27), 마이크(28), 스피커(29), 에코 방지 회로(41)를 갖는다. 또한, 도 47에 도시하는 휴대 전화기(19)의 구성은 일례이며, 에코 방지 회로(41), 디지털 신호 처리 회로(DSP(2))가 적용되는 휴대 전화기는, 이들의 구성으로 이루어지는 휴대 전화기에 한정되는 것은 아니다.
안테나(20)는 휴대 전화기(19)에 대하여 송신되는 음성 신호를 수신한다. 또한, 안테나(20)는, RF부(21)로부터의 음성 신호를 송신한다.
RF부(21)는, 안테나(20)가 수신한 음성 신호 중, 소정 주파수 대역의 음성 신호에 대한 복조 처리 등의 디코드 처리를 행한다. 또한, RF부(21)는, 베이스 밴드 처리부(22)로부터의 음성 신호에 대한 변조 처리, 예를 들면 TDMA 방식(Time Division Multiplex Access)에 의한 인코드 처리 등을 행한다.
베이스 밴드 처리부(22)는, RF부(21)에서 베이스 밴드 신호까지 복조된 음성 신호에 대하여 소정의 신호 처리를 실시하여, CPU(1)에 출력한다. 또한, 베이스 밴드 처리부(22)는, CPU(1)로부터의 음성 신호에 대하여 소정의 신호 처리를 실시하여 RF부(21)에 출력한다.
CPU(24)는, 휴대 전화기(19)를 통괄 제어한다. CPU(24)는, 베이스 밴드 처리부(22)로부터의 음성 신호에 따른 음성을 스피커(29) 혹은 이어폰 마이크(18)로 재생하기 위해, 상기 음성 신호를 DA 컨버터(27)에 출력한다. 또한, CPU(24)는, AD 컨버터(26)로부터의, 마이크(28) 혹은 이어폰 마이크(18)로부터의 음성 신호를 베이스 밴드 처리부(22)에 출력한다. 또한, CPU(24)는, 예를 들면 휴대 전화기(19)가 패킷 통신을 행하고 있는 경우, 수신한 패킷 데이터에 기초하는 화상을 표시하기 위해 표시부(23)에 신호를 출력한다. 또한, CPU(24)는, 입력부(25)에서 입력된 입력 데이터를 표시부(23)에 표시시키거나, 패킷 통신으로 이 입력 데이터를 송신하기 위해 소정의 처리를 실시하여, 베이스 밴드 처리부(22)에 출력한다.
AD 컨버터(26)는, 마이크(28) 혹은 이어폰 마이크(18)로부터의 음성 신호에 대하여 아날로그/디지털 변환 처리한 디지털 신호를 CPU(24)에 출력한다. DA 컨버터(27)는, CPU(24)로부터의 음성 신호에 대하여 디지털/아날로그 변환 처리한 아날로그 신호를 스피커(29) 혹은 에코 방지 회로(41)에 출력한다. 또한, 본 실시예에서는, 이어폰 마이크(18)가 휴대 전화기(19)에 접속되어 있는 경우, DA 컨버터(27)로부터의 아날로그 신호는 에코 방지 회로(41)에 입력되는 것으로서 이하 설명한다.
다음으로, 에코 방지 회로(41)의 동작에 대하여 설명한다. 또한, 본 적용예에서는, 제1 실시예에서 설명한 바와 같은 FIR 필터(4, 11)의 필터 계수의 설정이 이미 실시되어 있는 것으로 하여 이하 설명한다.
안테나(20)가 수신한 음성 신호는, 휴대 전화기(19)의 각 구성에 의한 상술한 처리가 행해져 DA 컨버터(27)로부터 에코 방지 회로(41)의 AD 컨버터(3)에 출력 된다.
AD 컨버터(3)에 입력된 음성 신호는, 상기 AD 컨버터(3)에서 아날로그/디지털 신호 처리가 실시되어 디지털 신호로 되고, 입력 단자(30)를 통하여, FIR 필터(4, 11)에 입력된다. 이 결과, AD 컨버터(3)로부터의 디지털 신호는, FIR 필터(4, 11)를 구성하는 디지털 신호용 메모리(42, 54)에 입력되게 된다.
이하, 우선 FIR 필터(4)에 입력되는 디지털 신호에 대하여 설명한다. 디지털 신호용 메모리(54)에 입력된 디지털 신호(Xn으로 나타냄)는, 레지스터 0~N-1에 순차적으로 입력됨으로써, 1 샘플링 주기 단위씩 지연된다. 그리고, DSP(2)가 스위치 회로(60O)를 레지스터 0부터 순차적으로 절환함으로써, 디지털 신호용 메모리(54)로부터의 디지털 신호 Xn~Xn-(N-1)가, 승산 회로(51)에 순차적으로 입력된다. 또한, DSP(2)가 스위치 회로(60P)를 어드레스 0부터 순차적으로 절환함으로써, 필터 계수 저장 메모리(56)에 기억된 위상 반전된 임펄스 응답 imp(0)~imp(N-1)(=-IR2'(Z))가, 승산 회로(51)에 순차적으로 입력된다. 승산 회로(51)는, 순차적으로 입력되는 디지털 신호 Xn~Xn-(N-1)와 위상 반전된 임펄스 응답 imp(0)~imp(N-1)을 순차적으로 승산한 승산 결과를 ADD(52)에 출력한다.
ADD(52)에 입력된 승산 회로(51)의 승산 결과는, ACC(53)에 기억되어 있는 전회의 ADD(52)의 가산 결과와 가산되어, 상기 ACC(53)에 출력된다. 이 결과, 필터 계수 저장 메모리(56)에 기억되어 있는 위상 반전된 임펄스 응답 imp(0)~imp(N-1)과 디지털 신호 Xn~Xn-(N-1)의 컨볼루션 연산이, FIR 필터(4)에서 실시된 것으로 된다. 즉, 후술하는 FIR 필터(11)로부터의 출력 신호와 차동 증폭 회로(9)에서 서 로 상쇄하는 신호가 FIR 필터(4)로부터 출력되게 된다.
FIR 필터(4)로부터 출력되는 출력 신호는, 출력 단자(31)를 통하여 DA 컨버터(5)에 입력된다. 그리고, 출력 신호는, DA 컨버터(5)에서 디지털/아날로그 변환 처리가 실시되어 아날로그 신호로 되어 증폭 회로(6)에 입력된다. 증폭 회로(6)에 입력된 아날로그 신호는, 소정의 증폭률로 증폭되어 출력된다. 증폭 회로(6)로부터의 아날로그 신호는, 입출력 단자(7)를 통하여 이어폰 마이크(18)에 출력된다. 이 결과, 이어폰 마이크(18)의 스피커 기능에 의해, 진동판이 진동하여 음성이 발생한다. 그러나, 증폭 회로(6)로부터의 아날로그 신호가 차동 증폭 회로(9)의 + 입력 단자에 입력되는 경우가 있다. 이 차동 증폭 회로(9)의 + 단자에 입력되는 아날로그 신호를 상쇄하기 위해 이하의 처리가 이루어진다.
FIR 필터(11)의 디지털 신호용 메모리(42)에 입력되는 디지털 신호는, 상술한 바와 같이 FIR 필터(4)와 마찬가지로, 레지스터 0~N-1에 입력됨으로써, 1 샘플링 주기 단위씩 지연된다. 그리고, DSP(2)가 스위치 회로(60M)를 레지스터 0부터 순차적으로 절환함으로써, 디지털 신호용 메모리(42)로부터의 디지털 신호 Xn~Xn-(N-1)가, 승산 회로(51)에 순차적으로 입력된다. 또한, DSP(2)가 스위치 회로(60N)를 어드레스 0부터 순차적으로 절환함으로써, 필터 계수 저장 메모리(47)에 기억된 임펄스 응답 imp(0)~imp(N-1)(=IR1'(Z))이, 승산 회로(51)에 순차적으로 입력된다. 승산 회로(51)는, 순차적으로 입력되는 디지털 신호 Xn~Xn-(N-1)와 임펄스 응답 imp(0)~imp(N-1)을 순차적으로 승산한 승산 결과를 ADD(52)에 출력한다.
ADD(52)에 입력된 승산 회로(51)의 승산 결과는, ACC(53)에 기억되어 있는 전회의 ADD(52)의 가산 결과와 가산되어, 상기 ACC(53)에 출력된다. 이 결과, 필터 계수 저장 메모리(47)에 기억되어 있는 임펄스 응답 imp(0)~imp(N-1)과 디지털 신호 Xn~Xn-(N-1)의 컨볼루션 연산이, FIR 필터(11)에서 실시된 것으로 된다. 즉, 상술한 FIR 필터(4)로부터의 출력 신호와 차동 증폭 회로(9)에서 서로 상쇄하는 신호가 FIR 필터(11)로부터 출력되게 된다.
FIR 필터(11)로부터 출력되는 출력 신호는, 출력 단자(32)를 통하여 DA 컨버터(12)에 입력된다. 그리고, 출력 신호는, DA 컨버터(12)에서 디지털/아날로그 변환 처리가 행해져 아날로그 신호로 되어 증폭 회로(13)에 입력된다. 증폭 회로(13)에 입력된 아날로그 신호는, 소정의 증폭률로 증폭되어, 차동 증폭 회로(9)의 - 입력 단자에 입력된다.
따라서, 차동 증폭 회로(9)에서, + 입력 단자에 입력된 증폭 회로(6)로부터의 아날로그 신호를, - 입력 단자에 입력됨으로써 반전되는 증폭 회로(13)로부터의 아날로그 신호로 상쇄하는 것이 가능하게 된다. 이 결과, 입력 단자(30)에 디지털 신호가 입력되었을 때의, 에코를 방지하는 것이 가능하게 된다. 또한, 이어폰 마이크(18)의 마이크 기능에 의한 음성 신호와, 증폭 회로(6)로부터의 아날로그 신호가 중첩하여 차동 증폭 회로(9)의 + 입력 단자에 입력된 경우에도, - 입력 단자에 FIR 필터(11)로부터의 신호가 입력됨으로써, 중첩된 신호로부터 에코의 원인으로 되는 신호분(즉, 증폭 회로(6)로부터의 아날로그 신호)만을 빼는 것이 가능하게 된다.
또한, 상술한 적용예에서는, 제1 실시예에서의 에코 방지 회로, 상기 에코 방지 회로에 포함되는 디지털 신호 처리 회로를 적용한 경우에 대해 설명하였지만, 이것에 한정되는 것은 아니다. 제2 실시예 내지 제11 실시예에서 설명한 에코 방지 회로, 상기 에코 방지 회로에 포함되어 있는 디지털 신호 처리 회로에서도, 에코를 마찬가지로 방지하는 것이 가능하게 된다.
또한, 상술한 적용예에서는, 에코 방지 회로, 상기 에코 방지 회로에 포함되는 디지털 신호 처리 회로를 휴대 전화기(19)에 적용한 경우에 대해 설명하였지만, 이것에 한정되는 것은 아니다. 상술한 에코가 발생할 가능성이 있는 것에 대해서, 본 발명에 따른 에코 방지 회로, 디지털 신호 처리 회로는 적용 가능하다. 예를 들면, IT(Information Technology) 통신 기기(예를 들면 PC(Personal Computer) 등), 통화 기기(전화기, 트랜시버, 차량 탑재기 등)에 적용하는 것이 가능하다.
상술한 실시예에 따르면, 입력 단자(30(65))에 디지털 신호(음성 신호)가 입력되었을 때, 차동 증폭 회로(9)(또는 가산 회로(63))에서, FIR 필터(4)의 출력 신호와 입출력 단자(7)에 입력된 신호를 합한 신호를, FIR 필터(11)의 출력 신호로 상쇄하는 것이 가능하게 된다. 즉, 이어폰 마이크 사용자가 발성하고 있지 않은 경우에는, 차동 증폭 회로(9)(또는 가산 회로(63))의 출력 신호가 제로로 되도록 FIR 필터(4, 11)의 필터 계수를 설정함으로써 상쇄하는 것이 가능하게 된다. 그리고, DSP(2(64, 83))의 출력 단자(34(72))로부터 출력되는 출력 신호를, FIR 필터(4)의 출력 신호를 제거 또는 감쇠한 신호로 하는 것이 가능하게 된다. 이 결과, 입력 단자(30(65))에 디지털 신호(음성 신호)가 입력되었을 때의, 에코를 방지하는 것이 가능하게 된다.
FIR 필터(4, 11)의 필터 계수의 일례로서, FIR 필터(11)의 출력으로부터 차동 증폭 회로(9)(또는 가산 회로(63))의 출력까지의 임펄스 응답을 위상 반전한 것을 FIR 필터(4)의 필터 계수로 설정하고, FIR 필터(4)의 출력으로부터 차동 증폭 회로(9)(또는 가산 회로(63))의 출력까지의 임펄스 응답을 FIR 필터(11)의 필터 계수로 설정하는 것이 가능하게 된다. 또한, FIR 필터(11)의 출력으로부터 차동 증폭 회로(9)(또는 가산 회로(63))의 출력까지의 임펄스 응답을 FIR 필터(4)의 필터 계수로 설정하고, FIR 필터(4)의 출력으로부터 차동 증폭 회로(9)(또는 가산 회로(63))의 출력까지의 임펄스 응답을 위상 반전한 것을 FIR 필터(11)의 필터 계수로 설정하는 것으로 해도 된다. 이 결과, 입력 단자(30(65))에 디지털 신호(음성 신호)가 입력되었을 때의, 에코를 확실하게 방지하는 것이 가능하게 된다.
또한, DA 컨버터(12(73))의 입력으로부터 AD 컨버터(14(70))의 출력까지의 임펄스 응답을 위상 반전한 것을 FIR 필터(4)의 필터 계수로 설정하고, DA 컨버터(5(67))의 입력으로부터 AD 컨버터(14(70))의 출력까지의 임펄스 응답을 FIR 필터(11)의 필터 계수로 설정하는 것이 가능하게 된다. 또한, DA 컨버터(12(73))의 입력으로부터 AD 컨버터(14(70))의 출력까지의 임펄스 응답을 FIR 필터(4)의 필터 계수로 설정하고, DA 컨버터(5(67))의 입력으로부터 AD 컨버터 (14(70))의 출력까지의 임펄스 응답을 위상 반전한 것을 FIR 필터(11)의 필터 계수로 설정하는 것으로 해도 된다. 이 결과, 입력 단자(30(65))에 디지털 신호(음성 신호)가 입력되었을 때의, 에코를 확실하게 방지하는 것이 가능하게 된다.
또한, DA 컨버터(12(73))의 입력으로부터 차동 증폭 회로(9)(또는 가산 회로(63))의 입력까지의 임펄스 응답과, 차동 증폭 회로(9)(또는 가산 회로(63))의 입력으로부터 AD 컨버터(14(70))의 출력까지의 임펄스 응답의 곱(컨볼루션)을 위상 반전한 것을 FIR 필터(4)의 필터 계수로 설정하고, DA 컨버터(5(67))의 입력으로부터 차동 증폭 회로(9)(가산 회로(63))의 입력까지의 임펄스 응답과, 차동 증폭 회로(9)(또는 가산 회로(63))의 입력으로부터 AD 컨버터(14(70))의 출력까지의 임펄스 응답의 곱(컨볼루션)을 FIR 필터(11)의 필터 계수로 설정하는 것이 가능하게 된다. 또한, DA 컨버터(12(73))의 입력으로부터 차동 증폭 회로(9)(또는 가산 회로(63))의 입력까지의 임펄스 응답과, 차동 증폭 회로(9)(또는 가산 회로(63))의 입력으로부터 AD 컨버터(14(70))의 출력까지의 임펄스 응답의 곱(컨볼루션)을 FIR 필터(4)의 필터 계수로 설정하고, DA 컨버터(5)(67)의 입력으로부터 차동 증폭 회로(9)(가산 회로(63))의 입력까지의 임펄스 응답과, 차동 증폭 회로(9)(또는 가산 회로(63))의 입력으로부터 AD 컨버터(14(70))의 출력까지의 임펄스 응답의 곱(컨볼루션)을 위상 반전한 것을 FIR 필터(11)의 필터 계수로 설정하는 것으로 해도 된다. 이 결과, 차동 증폭 회로(9)(또는 가산 회로(63))와 AD 컨버터(14(70)) 사이에 설치된 증폭 회로(10)의 특성을 포함한 필터 계수를 FIR 필터(4, 11)에 설정하는 것이 가능하게 된다. 따라서, 입력 단자(30(65))에 디지털 신호(음성 신호)가 입력되었을 때의, 에코를 보다 확실하게 방지하는 것이 가능하게 된다.
그리고, 이어폰 마이크(18)가 접속된 상태에서 취득된 임펄스 응답에 기초하여 FIR 필터(11)의 필터 계수를 설정함으로써, 이어폰 마이크(18)의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 접속된 이어폰 마이크(18)를, 귓구멍에 삽입하거나, 귓바퀴를 덮거나 함으로써 귀에 장착한 상태에서 취득된 임펄스 응답에 기초하여 FIR 필터(11)의 필터 계수를 설정함으로써, 이어폰 마이크(18)의 전달 특성 및 사용자의 귓속의 전달 특성에 따른 효과적인 에코 방지가 가능하게 된다.
또한, 에코 방지 회로를 구성하는 임펄스 응답 저장 메모리(43, 55), 레지스터(50, 57), 스위치 회로(60G~60I, 60I~60L), 승산 회로(58)에 의해 FIR 필터(4, 11)의 필터 계수를 확실하게 설정하는 것이 가능하게 된다.
또한, 입력 단자(30(65))에 디지털 신호(음성 신호)가 입력되었을 때의, 증폭 회로(6)로부터의 아날로그 신호와 FIR 필터(11)로부터의 출력 신호를 차동 증폭 회로(9)에서 확실하게 감산하는 것이 가능하게 된다.
또한, 입력 단자(30(65))에 디지털 신호(음성 신호)가 입력되었을 때의, 증폭 회로(6)로부터의 아날로그 신호와 FIR 필터(11)로부터의 출력 신호를, 반전 증폭 회로(61), 이득 위상 조정 회로(75)를 통하여 가산 회로(63)에서 확실하게 감산하는 것이 가능하게 된다.
또한, 상술한 에코 방지 회로 및 디지털 신호 처리 회로(DSP(2, 64, 83))의 동작을 제어하기 위한 프로그램을 메모리에 기억시켜 제공하는 것도 가능하다.
또한, 상술한 실시예에 따르면, 차동 증폭 회로(9), 가산 회로(63)를 이용하여 경로 A(C, E, G)를 전달하는 신호와, 경로 B(D, F, H)를 전달하는 신호를 상쇄하고 있지만, 이것에 한정되는 것은 아니다. 경로 A(C, E, G)의 임펄스 응답 IR1'(Z)(IR3'(Z), IR5'(Z), IR7'(Z))과, 경로 B(D, F, H)의 임펄스 응답 IR2'(Z)(IR4'(Z), IR6'(Z), IR8'(Z))이 상쇄하는 아날로그 회로이면 된다.
이상, 본 발명에 따른 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 디지털 신호 처리 회로의 필터 계수 설정 방법, 에코 방지 회로의 필터 계수를 설정하기 위한 프로그램, 디지털 신호 처리 회로의 필터 계수를 설정하기 위한 프로그램에 대하여 설명하였지만, 상기한 설명은, 본 발명의 이해를 용이하게 하기 위한 것으로, 본 발명을 한정하는 것은 아니다. 본 발명은, 그 취지를 일탈하지 않지 않고, 변경, 개량될 수 있다.
본 발명에 따르면, 효과적으로 에코를 방지하는 것이 가능한 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 디지털 신호 처리 회로의 필터 계수 설정 방법, 에코 방지 회로의 필터 계수를 설정하기 위한 프로그램, 디지털 신호 처리 회로의 필터 계수를 설정하기 위한 프로그램을 제공하는 것이 가능하게 된다.

Claims (40)

  1. 제1 입력 신호가 입력되는 입력 단자와,
    상기 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터와,
    상기 제1 입력 신호가 상기 제1 FIR 필터와 함께 입력되는 제2 FIR 필터와,
    상기 제1 FIR 필터의 출력 신호가 출력되거나 또는 제2 입력 신호가 입력되는 입출력 단자와,
    상기 제1 FIR 필터의 출력 신호와 상기 제2 입력 신호를 합한 신호로부터, 상기 제2 FIR 필터의 출력 신호를 감산하는 감산 회로와,
    상기 감산 회로로부터의 출력 신호가 출력되는 출력 단자
    를 구비하고,
    상기 제1 FIR 필터 및 상기 제2 FIR 필터는,
    상기 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 갖는 것을 특징으로 하는 에코 방지 회로.
  2. 제1항에 있어서,
    상기 제2 FIR 필터의 필터 계수는, 상기 제1 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제1 임펄스 응답이고,
    상기 제1 FIR 필터의 필터 계수는, 상기 제2 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제2 임펄스 응답을 위상 반전한 것인 것을 특징으로 하는 에코 방지 회로.
  3. 제1항에 있어서,
    상기 제2 FIR 필터의 필터 계수는, 상기 제1 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제1 임펄스 응답을 위상 반전한 것이고,
    상기 제1 FIR 필터의 필터 계수는, 상기 제2 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제2 임펄스 응답인 것을 특징으로 하는 에코 방지 회로.
  4. 제2항 또는 제3항에 있어서,
    상기 입출력 단자로부터 출력되는 상기 제1 FIR 필터의 출력 신호는, 상기 제1 FIR 필터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크에 의해 반사되어 상기 입출력 단자에 입력 가능하고,
    상기 제1 임펄스 응답은, 상기 이어폰 마이크가 상기 입출력 단자에 접속된 상태에서의, 상기 제1 FIR 필터의 출력으로부터 상기 이어폰 마이크를 경유하여 상기 감산 회로의 출력까지의 임펄스 응답인 것을 특징으로 하는 에코 방지 회로.
  5. 제2항 또는 제3항에 있어서,
    상기 제1 FIR 필터의 출력 신호를 디지털/아날로그 변환하는 제1 DA 컨버터 와,
    상기 제2 FIR 필터의 출력 신호를 디지털/아날로그 변환하는 제2 DA 컨버터와,
    상기 감산 회로의 출력 신호를 아날로그/디지털 변환하는 AD 컨버터를 구비하고,
    상기 제1 임펄스 응답은, 상기 제1 DA 컨버터로부터 상기 AD 컨버터까지의 임펄스 응답이고,
    상기 제2 임펄스 응답은, 상기 제2 DA 컨버터로부터 상기 AD 컨버터까지의 임펄스 응답인 것을 특징으로 하는 에코 방지 회로.
  6. 제5항에 있어서,
    상기 제1 임펄스 응답은, 상기 제1 DA 컨버터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크가 상기 입출력 단자에 접속된 상태에서의, 상기 제1 DA 컨버터로부터 상기 이어폰 마이크를 경유하여 상기 AD 컨버터까지의 임펄스 응답인 것을 특징으로 하는 에코 방지 회로.
  7. 제5항에 있어서,
    상기 감산 회로의 출력과 상기 AD 컨버터의 입력 사이에 상기 감산 회로로부터의 출력 신호를 증폭하는 증폭 회로를 구비하고,
    상기 제1 임펄스 응답은, 상기 제1 DA 컨버터로부터 상기 감산 회로까지의 임펄스 응답 및 상기 감산 회로로부터 상기 AD 컨버터까지의 임펄스 응답의 곱이고,
    상기 제2 임펄스 응답은, 상기 제2 DA 컨버터로부터 상기 감산 회로까지의 임펄스 응답 및 상기 감산 회로로부터 상기 AD 컨버터까지의 임펄스 응답의 곱인 것을 특징으로 하는 에코 방지 회로.
  8. 제7항에 있어서,
    상기 제1 임펄스 응답은, 상기 제1 DA 컨버터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크가 상기 입출력 단자에 접속된 상태에서의, 상기 제1 DA 컨버터로부터 상기 이어폰 마이크를 경유하여 상기 감산 회로까지의 임펄스 응답 및 상기 감산 회로로부터 상기 AD 컨버터까지의 임펄스 응답의 곱인 것을 특징으로 하는 에코 방지 회로.
  9. 제5항에 있어서,
    상기 제1 임펄스 응답에 기초하여 상기 제2 FIR 필터의 필터 계수를 설정함과 함께, 상기 제2 임펄스 응답에 기초하여 상기 제1 FIR 필터의 필터 계수를 설정하는 필터 계수 설정부를 구비한 것을 특징으로 하는 에코 방지 회로.
  10. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 감산 회로는,
    상기 제1 FIR 필터의 출력 신호와 상기 제2 입력 신호를 합한 신호와, 상기 제2 FIR 필터의 출력 신호가 입력되는 차동 증폭 회로인 것을 특징으로 하는 에코 방지 회로.
  11. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 감산 회로는,
    상기 제2 FIR 필터의 출력 신호를 반전하는 반전 회로와,
    상기 반전 회로의 출력 신호의 이득 및 위상을 조정하는 이득 위상 조정 회로와,
    상기 제1 FIR 필터의 출력 신호와 상기 제2 입력 신호를 합한 신호와, 상기 이득 위상 조정 회로의 출력 신호를 가산하는 가산 회로
    를 갖는 것을 특징으로 하는 에코 방지 회로.
  12. 제4항에 있어서,
    상기 제1 임펄스 응답은, 상기 이어폰 마이크가 귀에 장착된 상태의 것인 것을 특징으로 하는 에코 방지 회로.
  13. 제1 입력 신호가 입력되는 제1 입력 단자와,
    상기 제1 입력 단자로부터의 제1 입력 신호가 입력되는 제1 FIR 필터와,
    상기 제1 입력 신호가 상기 제1 FIR 필터와 함께 입력되는 제2 FIR 필터와,
    상기 제1 FIR 필터의 출력 신호가 출력되는 제1 출력 단자와,
    상기 제2 FIR 필터의 출력 신호가 출력되는 제2 출력 단자와,
    입출력 신호 공용 라인 상에서 상기 제1 출력 단자로부터의 출력 신호와 제2 입력 신호를 합한 신호로부터, 상기 제2 출력 단자로부터의 출력 신호를 감산한 신호가 입력되는 제2 입력 단자와,
    상기 제2 입력 단자로부터의 신호가 출력되는 제3 출력 단자
    를 구비하고,
    상기 제1 FIR 필터 및 상기 제2 FIR 필터는,
    상기 제3 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 갖는 것을 특징으로 하는 디지털 신호 처리 회로.
  14. 제13항에 있어서,
    상기 제1 FIR 필터의 필터 계수는, 상기 제2 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제2 DA 컨버터로부터, 상기 제2 입력 단자에 입력되기 전의 신호를 아날로그/디지털 변환하는 AD 컨버터까지의 제2 임펄스 응답을 위상 반전한 것이고,
    상기 제2 FIR 필터의 필터 계수는, 상기 제1 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제1 DA 컨버터로부터, 상기 AD 컨버터까지의 제1 임펄스 응답인 것을 특징으로 하는 디지털 신호 처리 회로.
  15. 제13항에 있어서,
    상기 제1 FIR 필터의 필터 계수는, 상기 제2 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제2 DA 컨버터로부터, 상기 제2 입력 단자에 입력되기 전의 신호를 아날로그/디지털 변환하는 AD 컨버터까지의 제2 임펄스 응답이고,
    상기 제2 FIR 필터의 필터 계수는, 상기 제1 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제1 DA 컨버터로부터, 상기 AD 컨버터까지의 제1 임펄스 응답을 위상 반전한 것인 것을 특징으로 하는 디지털 신호 처리 회로.
  16. 제14항 또는 제15항에 있어서,
    상기 제1 임펄스 응답은, 상기 제1 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제1 DA 컨버터로부터, 상기 제1 DA 컨버터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크를 경유하여, 상기 AD 컨버터까지의 임펄스 응답인 것을 특징으로 하는 디지털 신호 처리 회로.
  17. 제14항 또는 제15항에 있어서,
    상기 제1 FIR 필터의 출력 신호를 디지털/아날로그 변환하는 제1 DA 컨버터와,
    상기 제2 FIR 필터의 출력 신호를 디지털/아날로그 변환하는 제2 DA 컨버터와,
    상기 감산한 신호를 아날로그/디지털 변환하는 AD 컨버터
    를 구비하고,
    상기 제1 임펄스 응답은, 상기 제1 DA 컨버터로부터 상기 AD 컨버터까지의 임펄스 응답이고,
    상기 제2 임펄스 응답은, 상기 제2 DA 컨버터로부터 상기 AD 컨버터까지의 임펄스 응답인 것을 특징으로 하는 디지털 신호 처리 회로.
  18. 제17항에 있어서,
    상기 제1 임펄스 응답은, 상기 제1 DA 컨버터로부터, 상기 제1 DA 컨버터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크를 경유하여, 상기 AD 컨버터까지의 임펄스 응답인 것을 특징으로 하는 디지털 신호 처리 회로.
  19. 제14항 또는 제15항에 있어서,
    상기 제1 임펄스 응답에 기초하여 상기 제2 FIR 필터의 필터 계수를 설정함과 함께, 상기 제2 임펄스 응답에 기초하여 상기 제1 FIR 필터의 필터 계수를 설정 하는 필터 계수 설정부를 구비한 것을 특징으로 하는 디지털 신호 처리 회로.
  20. 제16항에 있어서,
    상기 제1 임펄스 응답은, 상기 이어폰 마이크가 귀에 장착된 상태의 것인 것을 특징으로 하는 디지털 신호 처리 회로.
  21. 입력 단자에 제1 입력 신호를 입력하는 단계와,
    상기 입력 단자로부터 제1 FIR 필터에 상기 제1 입력 신호를 입력하는 단계와,
    상기 제1 FIR 필터와 함께 제2 FIR 필터에 상기 제1 입력 신호를 입력하는 단계와,
    상기 제1 FIR 필터의 출력 신호를 입출력 단자에 출력하거나 상기 입출력 단자에 제2 입력 신호를 입력하는 단계와,
    상기 제1 FIR 필터의 출력 신호와 상기 제2 입력 신호를 합한 신호로부터, 상기 제2 FIR 필터의 출력 신호를 감산 회로에 의해 감산하는 단계와,
    상기 감산 회로로부터의 출력 신호를 출력 단자에 출력하는 단계를 포함하는 에코 방지 회로의 필터 계수 설정 방법으로서,
    상기 제1 FIR 필터 및 상기 제2 FIR 필터에 대하여, 상기 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 설정하는 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  22. 제21항에 있어서,
    상기 제2 FIR 필터에 대하여, 상기 제1 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제1 임펄스 응답으로 되는 필터 계수를 설정하고,
    상기 제1 FIR 필터에 대하여, 상기 제2 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제2 임펄스 응답의 위상 반전으로 되는 필터 계수를 설정하는 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  23. 제21항에 있어서,
    상기 제2 FIR 필터에 대하여, 상기 제1 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제1 임펄스 응답의 위상 반전으로 되는 필터 계수를 설정하고,
    상기 제1 FIR 필터에 대하여, 상기 제2 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제2 임펄스 응답으로 되는 필터 계수를 설정하는 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  24. 제22항 또는 제23항에 있어서,
    상기 입출력 단자로부터 출력되는 상기 제1 FIR 필터의 출력 신호는, 상기 제1 FIR 필터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크에 의해 반사되어 상기 입출력 단자에 입력 가능하고,
    상기 제1 임펄스 응답은, 상기 이어폰 마이크가 상기 입출력 단자에 접속된 상태에서의, 상기 제1 FIR 필터의 출력으로부터 상기 이어폰 마이크를 경유하여 상기 감산 회로의 출력까지의 임펄스 응답인 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  25. 제24항에 있어서,
    상기 제1 임펄스 응답은, 상기 이어폰 마이크가 귀에 장착된 상태의 것인 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  26. 제21항에 있어서,
    상기 제1 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제1 임펄스 응답을 취득하고,
    상기 제2 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제2 임펄스 응답을 취득하고,
    상기 제1 FIR 필터에 대하여 상기 제2 임펄스 응답의 위상 반전으로 되는 필터 계수를 설정하고,
    상기 제2 FIR 필터에 대하여 상기 제1 임펄스 응답으로 되는 필터 계수를 설정하는 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  27. 제21항에 있어서,
    상기 제1 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제1 임펄스 응답을 취득하고,
    상기 제2 FIR 필터의 출력으로부터 상기 감산 회로의 출력까지의 제2 임펄스 응답을 취득하고,
    상기 제1 FIR 필터에 대하여 상기 제2 임펄스 응답으로 되는 필터 계수를 설정하고,
    상기 제2 FIR 필터에 대하여 상기 제1 임펄스 응답의 위상 반전으로 되는 필터 계수를 설정하는 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  28. 제26항 또는 제27항에 있어서,
    상기 제1 임펄스 응답은, 상기 제1 FIR 필터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크가 상기 입출력 단자에 접속된 상태에서의, 상기 제1 FIR 필터의 출력으로부터 상기 이어폰 마이크를 경유하여 상기 감산 회로의 출력까지의 임펄스 응답인 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  29. 제28항에 있어서,
    상기 제1 임펄스 응답은, 상기 이어폰 마이크가 귀에 장착된 상태의 것인 것을 특징으로 하는 에코 방지 회로의 필터 계수 설정 방법.
  30. 제1 입력 단자에 제1 입력 신호를 입력하는 단계와,
    상기 제1 입력 단자로부터 제1 FIR 필터에 상기 제1 입력 신호를 입력하는 단계와,
    상기 제1 FIR 필터와 함께 제2 FIR 필터에 상기 제1 입력 신호를 입력하는 단계와,
    상기 제1 FIR 필터의 출력 신호를 제1 출력 단자에 출력하는 단계와,
    상기 제2 FIR 필터의 출력 신호를 제2 출력 단자에 출력하는 단계와,
    입출력 신호 공용 라인 상에서 상기 제1 출력 단자로부터의 출력 신호와 제2 입력 신호를 합한 신호로부터, 상기 제2 출력 단자로부터의 출력 신호를 감산한 신호를 제2 입력 단자에 입력하는 단계와,
    상기 제2 입력 단자로부터의 신호를 제3 출력 단자에 출력하는 단계를 포함하는 디지털 신호 처리 회로의 필터 계수 설정 방법으로서,
    상기 제1 FIR 필터 및 상기 제2 FIR 필터에 대하여, 상기 제3 출력 단자로부터의 출력 신호가 상기 제1 FIR 필터의 출력 신호만을 제거 또는 감쇠한 신호로 되는 필터 계수를 설정하는 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  31. 제30항에 있어서,
    상기 제1 FIR 필터에 대하여, 상기 제2 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제2 DA 컨버터로부터, 상기 제2 입력 단자에 입력되기 전의 신호를 아날로그/디지털 변환하는 AD 컨버터까지의 제2 임펄스 응답의 위상 반전으로 되는 필터 계수를 설정하고,
    상기 제2 FIR 필터에 대하여, 상기 제1 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제1 DA 컨버터로부터, 상기 AD 컨버터까지의 제1 임펄스 응답으로 되는 필터 계수를 설정하는 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  32. 제30항에 있어서,
    상기 제1 FIR 필터에 대하여, 상기 제2 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제2 DA 컨버터로부터, 상기 제2 입력 단자에 입력되기 전의 신호를 아날로그/디지털 변환하는 AD 컨버터까지의 제2 임펄스 응답으로 되는 필터 계수를 설정하고,
    상기 제2 FIR 필터에 대하여, 상기 제1 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제1 DA 컨버터로부터, 상기 AD 컨버터까지의 제1 임펄스 응답의 위상 반전으로 되는 필터 계수를 설정하는 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  33. 제31항 또는 제32항에 있어서,
    상기 제1 임펄스 응답은, 상기 제1 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제1 DA 컨버터로부터, 상기 제1 DA 컨버터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크를 경유하여, 상기 AD 컨버터까지의 임펄스 응답인 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  34. 제33항에 있어서,
    상기 제1 임펄스 응답은, 상기 이어폰 마이크가 귀에 장착된 상태의 것인 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  35. 제30항에 있어서,
    상기 제1 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제1 DA 컨버터로부터, 상기 제2 입력 단자에 입력되기 전의 신호를 아날로그/디지털 변환하는 AD 컨버터까지의 제1 임펄스 응답을 취득하고,
    상기 제2 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제2 DA 컨버터로부터, 상기 AD 컨버터까지의 제2 임펄스 응답을 취득하고,
    상기 제1 FIR 필터에 대하여 상기 제2 임펄스 응답의 위상 반전으로 되는 필터 계수를 설정하고,
    상기 제2 FTR 필터에 대하여 상기 제1 임펄스 응답으로 되는 필터 계수를 설정하는 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  36. 제30항에 있어서,
    상기 제1 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제1 DA 컨버터로부터, 상기 제2 입력 단자에 입력되기 전의 신호를 아날로그/디지털 변환하는 AD 컨버터까지의 제1 임펄스 응답을 취득하고,
    상기 제2 출력 단자로부터 출력된 후의 신호를 디지털/아날로그 변환하는 제 2 DA 컨버터로부터, 상기 AD 컨버터까지의 제2 임펄스 응답을 취득하고,
    상기 제1 FIR 필터에 대하여 상기 제2 임펄스 응답으로 되는 필터 계수를 설정하고,
    상기 제2 FIR 필터에 대하여 상기 제1 임펄스 응답의 위상 반전으로 되는 필터 계수를 설정하는 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  37. 제35항 또는 제36항에 있어서,
    상기 제1 임펄스 응답은, 상기 제1 DA 컨버터로부터, 상기 제1 DA 컨버터의 출력 신호를 음성으로 변환하여 출력함과 함께, 입력되는 음성을 상기 제2 입력 신호로 변환하여 출력하는 이어폰 마이크를 경유하여, 상기 AD 컨버터까지의 임펄스 응답인 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  38. 제37항에 있어서,
    상기 제1 임펄스 응답은, 상기 이어폰 마이크가 귀에 장착된 상태의 것인 것을 특징으로 하는 디지털 신호 처리 회로의 필터 계수 설정 방법.
  39. 삭제
  40. 삭제
KR1020060026095A 2005-03-23 2006-03-22 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 및 디지털 신호 처리 회로의 필터 계수 설정 방법 KR100796427B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2005084963 2005-03-23
JPJP-P-2005-00084963 2005-03-23
JPJP-P-2006-00009064 2006-01-17
JP2006009064A JP4734126B2 (ja) 2005-03-23 2006-01-17 エコー防止回路、デジタル信号処理回路、エコー防止回路のフィルタ係数設定方法、デジタル信号処理回路のフィルタ係数設定方法、エコー防止回路のフィルタ係数を設定するためのプログラム、デジタル信号処理回路のフィルタ係数を設定するためのプログラム

Publications (2)

Publication Number Publication Date
KR20060103147A KR20060103147A (ko) 2006-09-28
KR100796427B1 true KR100796427B1 (ko) 2008-01-21

Family

ID=37036454

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060026095A KR100796427B1 (ko) 2005-03-23 2006-03-22 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 및 디지털 신호 처리 회로의 필터 계수 설정 방법

Country Status (5)

Country Link
US (1) US8934621B2 (ko)
JP (1) JP4734126B2 (ko)
KR (1) KR100796427B1 (ko)
CN (1) CN1838704B (ko)
TW (1) TW200635250A (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200830706A (en) 2007-01-12 2008-07-16 Sanyo Electric Co Filter coefficient setting device and echo prevention device
JP4887181B2 (ja) * 2007-02-28 2012-02-29 オンセミコンダクター・トレーディング・リミテッド エコー防止装置及びプログラム
JP2010171880A (ja) 2009-01-26 2010-08-05 Sanyo Electric Co Ltd 音声信号処理装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905717A (en) 1995-11-29 1999-05-18 Nec Corporation Echo canceller for a packet signal
JP2001195085A (ja) 1999-11-05 2001-07-19 Alpine Electronics Inc 音声認識用オーディオキャンセル装置
KR20020036542A (ko) * 2000-11-10 2002-05-16 김승범 반향 제거 장치
JP2002232329A (ja) 2001-01-30 2002-08-16 Ricoh Co Ltd エコーキャンセラ
KR20040083109A (ko) * 2003-03-21 2004-10-01 (주)씨앤에스 테크놀로지 간섭신호에 강인한 음향 반향 제거장치

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5860835A (ja) * 1981-10-08 1983-04-11 Nippon Telegr & Teleph Corp <Ntt> 反響打消し装置
EP0287742B1 (en) * 1987-04-22 1993-01-13 International Business Machines Corporation Echo cancelling device for data transmission over two-wire line
US5307405A (en) * 1992-09-25 1994-04-26 Qualcomm Incorporated Network echo canceller
US5796819A (en) * 1996-07-24 1998-08-18 Ericsson Inc. Echo canceller for non-linear circuits
US5757933A (en) * 1996-12-11 1998-05-26 Micro Ear Technology, Inc. In-the-ear hearing aid with directional microphone system
US6147979A (en) * 1997-08-12 2000-11-14 Lucent Technologies, Inc. System and method for echo cancellation in a communication system
JP3293029B2 (ja) * 1999-08-20 2002-06-17 株式会社マイクロエムズ 通信装置用2線4線変換回路
JP3566158B2 (ja) * 1999-12-07 2004-09-15 三菱電機株式会社 エコーキャンセラ装置
US7881483B2 (en) * 2003-11-11 2011-02-01 Matech, Inc. Two-way communications device having a single transducer

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905717A (en) 1995-11-29 1999-05-18 Nec Corporation Echo canceller for a packet signal
JP2001195085A (ja) 1999-11-05 2001-07-19 Alpine Electronics Inc 音声認識用オーディオキャンセル装置
KR20020036542A (ko) * 2000-11-10 2002-05-16 김승범 반향 제거 장치
JP2002232329A (ja) 2001-01-30 2002-08-16 Ricoh Co Ltd エコーキャンセラ
KR20040083109A (ko) * 2003-03-21 2004-10-01 (주)씨앤에스 테크놀로지 간섭신호에 강인한 음향 반향 제거장치

Also Published As

Publication number Publication date
CN1838704A (zh) 2006-09-27
CN1838704B (zh) 2012-01-25
JP4734126B2 (ja) 2011-07-27
JP2006304260A (ja) 2006-11-02
US8934621B2 (en) 2015-01-13
KR20060103147A (ko) 2006-09-28
TW200635250A (en) 2006-10-01
US20060218214A1 (en) 2006-09-28
TWI373928B (ko) 2012-10-01

Similar Documents

Publication Publication Date Title
US6404886B1 (en) Method and apparatus for echo cancelling with multiple microphones
US20080219463A1 (en) Acoustic echo cancellation system
CN103077726A (zh) 用于线性声学回声消除系统的预处理和后处理
KR100864571B1 (ko) 에코 방지 회로, 필터 계수 설정 방법, 및 프로그램이 기록되어 있는 컴퓨터 판독가능 기록 매체
KR100796427B1 (ko) 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 및 디지털 신호 처리 회로의 필터 계수 설정 방법
KR100796910B1 (ko) 에코 방지 회로, 디지털 신호 처리 회로, 에코 방지 회로의 필터 계수 설정 방법, 및 디지털 신호 처리 회로의 필터 계수 설정 방법
JP3381112B2 (ja) エコー除去装置
KR100828277B1 (ko) 에코 방지 회로 및 디지털 신호 처리 회로
JP4396053B2 (ja) エコー抑圧装置
JPH07121027B2 (ja) 拡声電話機
JP2581763B2 (ja) エコーキャンセラ
KR100350628B1 (ko) 주기성 잡음 제거장치
JPH0342918A (ja) 防側音回路
KR100747330B1 (ko) 무선헤드셋의 반향 제거기능을 갖는 통신단말기 및 그 반향제거방법
JPS6251528B2 (ko)
JP2010273249A (ja) 側音キャンセル方法および側音キャンセラ
JP2005159941A (ja) エコーキャンセル制御装置および方法
JPH1041860A (ja) エコーキャンセラ
JPS6171727A (ja) エコ−キヤンセラ
JPH0758828A (ja) 電話機のエコー低減装置
JP2002016996A (ja) ノイズ・コントロール方法と回路
JP2002101023A (ja) エコーキャンセラ

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20111228

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20121227

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee