FIR 필터란?

임펄스 응답이 유한한 길이로 끝나는 디지털 필터(유한 임펄스 응답 필터). 현재와 과거의 N개 입력에 계수를 곱해 더하는 y[n] = Σh[k]x[n − k]로 계산하며, 출력의 귀환을 갖지 않는다. 극점이 z = 0에만 있으므로 계수와 관계없이 항상 안정하며, 계수를 좌우 대칭으로 하면 모든 주파수 성분이 (N − 1)/2샘플만큼 지연되는 선형 위상이 된다. 한편 급준한 특성을 얻으려면 많은 탭이 필요하며, 출력 1샘플마다 탭 수와 같은 횟수의 곱셈-누산 연산을 수행한다.

일본어 명칭: FIRフィルタ

FIR 필터은(는) 디지털 신호 처리의 기초, A/D·D/A 변환 등 2개 분야의 연습 문제 9개에 나와요.

분야: 디지털 신호 처리의 기초

구조와 연산량

입력을 1샘플씩 지연시키는 지연 소자를 늘어놓고 각 단의 값에 계수를 곱해 더하는 구조로, 지연 소자의 열을 탭 지연선이라고 부릅니다. N탭이면 출력 1샘플당 N회의 곱셈-누산이 필요하며, 예를 들어 256탭을 44.1 kHz로 동작시키면 1초당 약 1130만 회의 곱셈-누산이 됩니다. DSP가 1사이클에 곱셈-누산을 수행하는 명령이나 전용 곱셈-누산기를 갖추고 있는 것은 이 때문입니다.

설계 방법

이상적인 특성의 임펄스 응답(저역 통과라면 sinc 함수)을 유한한 길이로 잘라 내고, 창 함수를 곱해 끝의 영향을 완화하는 창 함수법이 가장 기본적인 방법입니다. 지정한 주파수 특성으로부터의 오차의 최댓값을 최소화하는 파크스-매클렐런법도 자주 사용됩니다. 어느 쪽이든 탭 수를 늘릴수록 이상적인 특성에 가깝게 할 수 있습니다.

선형 위상과 지연

계수가 대칭인 FIR 필터는 모든 주파수 성분이 같은 시간만큼 지연되므로, 펄스나 음성의 파형 모양을 무너뜨리지 않습니다. 그 지연은 (N − 1)/2샘플로, 101탭을 48 kHz로 동작시키면 약 1.04 ms가 됩니다. 지연이 문제가 되는 용도에서는 선형 위상을 포기하고 지연이 작은 최소 위상 FIR 필터를 사용하기도 합니다.

도전해 보기: FIR 필터 관련 문제

샘플링 주파수 8 kHz로 동작하는, 전달 함수 H(z) = 1 + z⁻²(y[n] = x[n] + x[n − 2])인 FIR 필터가 있다. 출력이 0이 되는 사인파 입력의 주파수로 올바른 것은?

  1. A1 kHz
  2. B2 kHz
  3. C4 kHz
정답과 해설 보기

정답: B. 2 kHz

1 + z⁻² = 0의 해, 즉 영점은 z² = −1에서 z = ±j이며, 단위원 위의 ω = ±π/2에 있습니다. ω = π/2는 f = ω·fs/(2π) = fs/4 = 2 kHz에 해당하며, 2 kHz의 사인파는 2샘플 전의 값과 정확히 부호가 반대이므로 더하면 0이 됩니다. 영점이 단위원 위에 있으면 그 주파수를 완전히 제거하는 노치(홈)가 생깁니다. 4 kHz(나이퀴스트 주파수)에서는 z⁻² = 1이므로 이득은 2가 됩니다.

FIR 필터(유한 임펄스 응답 필터)의 특징으로 올바른 것은?

  1. A출력을 입력 쪽으로 되돌리는 귀환을 가지므로, 적은 계수로 급준한 특성을 얻을 수 있다
  2. B임펄스 응답이 무한히 계속되므로, 계수 양자화에 의해 불안정해지기 쉽다
  3. C귀환을 갖지 않으므로 항상 안정하며, 계수를 대칭으로 하면 선형 위상으로 만들 수 있다
정답과 해설 보기

정답: C. 귀환을 갖지 않으므로 항상 안정하며, 계수를 대칭으로 하면 선형 위상으로 만들 수 있다

FIR 필터는 현재와 과거의 입력에 계수를 곱해 더할 뿐이며, 출력의 귀환을 갖지 않습니다. 임펄스 응답은 계수의 개수(탭 수)에서 끝나고 극점은 z = 0에만 있으므로, 계수가 어떤 값이든 안정합니다. 계수를 좌우 대칭으로 하면 모든 주파수 성분이 같은 시간만큼 지연되는 선형 위상이 되어, 파형의 모양을 무너뜨리지 않습니다. 그 대신 급준한 특성을 얻으려면 IIR 필터보다 많은 탭이 필요합니다.

자주 묻는 질문

FIR 필터와 IIR 필터는 어떻게 구분해서 사용하나요?

위상을 선형으로 하고 싶은 경우, 확실하게 안정하게 하고 싶은 경우, 계수 양자화의 영향을 받기 어렵게 하고 싶은 경우에는 FIR 필터가 적합합니다. 적은 연산량과 작은 지연으로 급준한 특성을 얻고 싶은 경우에는 IIR 필터가 적합하지만, 위상은 선형이 되지 않으며 계수 양자화로 인한 불안정에 주의해야 합니다.

탭 수는 어떻게 정해지나요?

천이 대역(통과 대역에서 저지 대역까지의 폭)이 좁을수록, 또 저지 대역의 감쇠를 크게 할수록 많은 탭이 필요합니다. 기준으로서 탭 수는 '샘플링 주파수 ÷ 천이 대역의 폭'에 비례하며, 필요한 감쇠량이 클수록 그 비례 계수도 커집니다.

해설 속 FIR 필터

FIR 필터이(가) 나오는 문제 (9)

  1. 샘플링 주파수 8 kHz로 동작하는, 전달 함수 H(z) = 1 + z⁻²(y[n] = x[n] + x[n − 2])인 FIR 필터가 있다. 출력이 0이 되는 사인파 입력의 주파수로 올바른 것은?
  2. FIR 필터(유한 임펄스 응답 필터)의 특징으로 올바른 것은?
  3. 다음 계수를 갖는 5탭 FIR 필터 중에서 선형 위상(직선 위상) 특성을 갖는 것은?
  4. 101탭 선형 위상 FIR 필터(계수가 좌우 대칭)의 군지연으로 올바른 것은?
  5. 256탭 FIR 필터를 샘플링 주파수 44.1 kHz로 실시간 동작시킨다. 1초당 필요한 곱셈-누산 연산(MAC)의 횟수로 올바른 것은?
  6. 샘플링 주파수 48 kHz에서 1샘플마다 FIR 필터의 출력을 계산한다. 클록 200 MHz로 1사이클에 1회의 곱셈-누산을 할 수 있는 프로세서를 사용하고 다른 처리의 시간을 무시할 때, 실시간으로 처리할 수 있는 탭 수의 상한에 가장 가까운 것은?
  7. 16비트 고정 소수점 데이터와 계수의 곱을 32비트로 나타내고, 그 곱을 256개 더하는 FIR 필터 계산이 있다. 도중에 오버플로가 일어나지 않음을 보장하는 데 필요한 누산기 비트 수의 최솟값으로 올바른 것은?
  8. ΔΣ형 ADC에서 고속의 거친 양자화 출력을 낮은 샘플링 주파수의 고분해능 데이터로 변환하는 디지털 회로는 무엇인가?
  9. 차수가 높은 IIR 필터를 계수의 비트 수가 제한된 고정 소수점으로 구현할 때의 주의점으로 올바른 것은?

관련 용어

선형 위상(Linear Phase) IIR 필터 고정 소수점(Fixed-point) 나이퀴스트 주파수(Nyquist frequency) 임펄스 응답(Impulse Response) 군지연(Group Delay) 인터럽트(Interrupt) 포화 연산(Saturating Arithmetic) ΔΣ형 ADC 데시메이션(Decimation)

용어집으로 돌아가기