seegongsik
내 단어장
SC · 샘플링·이산

DTFT 와 DFT

DTFT 는 이산 신호의 진짜 주파수 스펙트럼이고, z 변환을 단위원 위에서 본 것이다. DFT 는 그 연속 스펙트럼을 컴퓨터가 셈할 수 있도록 N 개 주파수에서 표본한 것이다. 신호 주파수를 움직여, 그것이 DFT 눈금에 딱 맞으면 깨끗한 한 점, 눈금 사이에 끼면 여러 칸으로 새는 누설을 직접 본다.

눈금에 맞추면 한 점, 어긋나면 누설

위는 길이 N=16 의 이산 코사인 x[n] = cos(ω₀n) 이다. 아래 금색 곡선이 그 DTFT 크기, 곧 ω 를 연속으로 훑은 진짜 스펙트럼이고, 파란 막대가 ω = 2πk/N 의 N 개 DFT 눈금에서 그 곡선을 표본한 값이다. 점선은 신호의 진짜 주파수 ω₀ 다. ω₀ 슬라이더를 움직여, ω₀ 가 파란 눈금 하나에 딱 맞으면 그 칸만 솟고 나머지는 0 이 되는 깨끗한 한 점을 만들어라. 눈금 사이에 끼면 옆 칸들로 에너지가 샌다.

이산 코사인 x[n] = cos(ω₀n), N=16
DTFT 크기(금 곡선)와 DFT 눈금(파란 막대)
신호 주파수 ω₀0.98 rad
신호 주파수와 DFT 눈금
ω₀ = 0.98 · N = 16 · bin Δ = 2π/N = 0.39
nearest bin k = 2 at ω = 0.79
신호 주파수 ω₀ 가 두 DFT 눈금 사이에 끼었다. 어느 눈금도 신호의 봉우리에 맞지 않아, 에너지가 여러 칸으로 넓게 샌다. 이것이 스펙트럼 누설이다. DFT 가 DTFT 곡선의 옆 봉우리들까지 표본하고 있는 것이다.
눈금 사이 (누설)

단위원 위에서 본 스펙트럼

이산 신호 x[n] 의 DTFT 는 X(e^(jω)) = Σₙ x[n] e^(−jωn) 다. 이것은 E3 의 z 변환 X(z) = Σ x[n] z⁻ⁿ 에서 z 를 단위원 위 z = e^(jω) 로 놓은 것과 똑같다. 그래서 DTFT 는 z 평면 단위원 한 바퀴 위에서 본 스펙트럼이고, 시스템의 주파수 응답이 된다. 한 가지 특징은 주기성이다. e^(−jωn) 이 ω 에 대해 2π 주기라, DTFT 는 ω 가 2π 마다 똑같이 되풀이된다. 이는 E1 에서 본 표본화가 스펙트럼을 fs 마다 복제한다는 사실의 다른 얼굴이다. 그래서 이산 신호의 스펙트럼은 −π 에서 π 까지 한 구간만 보면 충분하다.

관찰DTFT X(e) = Σₙ x[n] e−jωn
DTFT 는 이산 신호의 스펙트럼.
고르기DTFT = X(z) at z = ?
DTFT 는 단위원 위의 z 변환.
빈칸DFT X[k] = X(e) at ω = ?
DFT 는 DTFT 를 N 점에서 표본.
스스로fast algorithm for the DFT = ?
FFT 는 DFT 를 N log N 으로 셈한다.

컴퓨터가 셈하는 DFT

DTFT 는 ω 가 연속이라 값이 무한히 많다. 컴퓨터는 무한을 셈할 수 없으니, 한 주기 2π 를 N 등분한 ω = 2πk/N (k=0..N−1) 에서만 값을 골라낸다. 이것이 DFT X[k] = Σₙ x[n] e^(−j2πkn/N) 이고, 유한한 N 개 입력에서 유한한 N 개 출력을 낸다. 곧 DTFT 곡선을 N 개 눈금에서 표본한 것이다. DFT 를 곧이곧대로 계산하면 N² 번 곱셈이 들지만, 1965 년 쿨리–튜키의 FFT 가 N log N 으로 줄여, 디지털 신호 처리 전체를 실용으로 만들었다. 시간 영역의 합성곱이 DFT 영역에서는 다시 곱셈이 되어, 긴 필터도 FFT 로 빠르게 돌린다.

눈금에 어긋난 주파수의 누설

신호를 유한한 N 개만 잘라 쓰면, 그 자른 창 때문에 DTFT 가 폭이 있는 봉우리(주엽)와 옆으로 늘어선 작은 봉우리들(부엽)을 가진 모양이 된다. 신호 주파수 ω₀ 가 눈금 2πk/N 에 딱 맞으면, 그 눈금은 주엽 꼭대기에, 나머지 눈금은 정확히 부엽 사이 0 점에 놓여 깨끗한 한 점이 된다. 그러나 ω₀ 가 눈금 사이에 끼면, 모든 눈금이 부엽을 표본해 에너지가 여러 칸으로 새는 스펙트럼 누설이 일어난다. 이를 줄이려고 자를 때 양끝을 부드럽게 깎는 창 함수(해닝·해밍 등)를 쓰면, 부엽이 낮아져 누설이 줄지만 주엽이 넓어져 가까운 두 주파수를 구분하는 힘은 떨어진다. 분해능과 누설의 맞교환이다.

첫 화면으로 돌아가서

길이 N 의 이산 코사인 하나를 두고 그 스펙트럼을 보았다. 금색 DTFT 곡선은 ω 를 연속으로 훑은 진짜 스펙트럼이었고, 파란 DFT 막대는 그 곡선을 N 개 눈금에서 표본한 값이었다. 신호 주파수 ω₀ 를 눈금 2πk/N 에 딱 맞추자, 한 칸만 솟고 나머지는 0 인 깨끗한 한 점이 나왔다. 눈금 사이로 옮기자 에너지가 여러 칸으로 새는 누설이 보였다. DFT 는 DTFT 의 표본일 뿐이고, DTFT 는 z 변환을 단위원 위에서 본 것이다. 신호 기초에서 시작한 사슬이 시간, 합성곱, 푸리에, 라플라스, 표본화를 지나 여기 이산 스펙트럼에서 한 바퀴를 맺는다.

DTFT X(e) = Σₙ x[n] e−jωn 는 이산 신호의 스펙트럼으로, z 변환을 단위원 z = e 에서 본 것이며 ω 에 대해 2π 주기다(이산화의 결과). DFT X[k] = Σ x[n] e−j2πkn/N 는 그 DTFT 를 ω = 2πk/N 의 N 점에서 표본한 유한·계산 가능 버전이고, FFT 가 N log N 으로 빠르게 셈한다. 신호 주파수가 눈금에 맞으면 깨끗한 한 점, 눈금 사이면 스펙트럼 누설이 일어난다(유한 창의 부엽). 창 함수로 누설을 줄이면 분해능과 맞교환된다.
다음 챕터로

여기서 신호와 시스템의 분석 도구가 모두 갖춰졌다. 시간으로 보고, 푸리에와 라플라스와 z 로 변환하고, 표본화해 디지털로 다루는 법까지 익혔다. 이제 마지막 챕터에서 방향이 분석에서 설계로 바뀐다. 다음 유닛 안정도와 라우스 판별법에서는, 시스템을 안정하게 만드는 것이 첫 질문이다. 극을 직접 구하지 않고도 특성방정식의 계수만으로 모든 극이 좌반면에 있는지 가려내는 라우스 표를 세운다. 극을 풀기 어려운 고차 시스템에서도 안정 여부를 손으로 판정하고, 이어서 근궤적과 보드선도로 제어기를 설계해 나간다.