3. 이산 푸리에 변환

Download Report

Transcript 3. 이산 푸리에 변환

제4장
이산시간신호와 변환
1. 서론

이산푸리에 변환 (discrete Fourier transform; DFT)
– 연속 함수의 표본들에 적용가능
푸리에 변환  아날로그 시스템
이산푸리에 변환  디지털 시스템
– 이산푸리에 변환
• 푸리에 적분에 대한 근사화
• 푸리에 변환과 표본화 정리에 대한 관계
• 이산푸리에 역변환과 표본화된 파형의 복원
• 표본 신호의 스펙트럼 추정에서 절단의 효과와 이에 기인한 누출,
이를 보정하기위한 데이터 창, 이산상승적분
– 고속 푸리에 변환(fast Fourier transform; FFT)
• 이산푸리에 변환을 빠르게 계산하는 알고리즘
2/50
2. 이산시간신호

이산신호
– 연속시간의 신호를 표본화 주기, T의 간격으로 신호를 표본화
한 신호
x(nT ),
n  0,1, 2,
x(n),
n  0,1, 2,
xn ,
n  0,1, 2,
여기서 xn 은 각 n에 해당하는 신호의 값을 나타낸다.
그림 4-1. 연속시간 신호와 그의 이산시간 신호
3/50
3. 이산 푸리에 변환

표본화된 푸리에 변환을 사용한 이산 푸리에 변환
– 연속 푸리에 변환

X ( j )   x(t )e jt dt

(4-1)
– 임펄스 열을 사용한 이산시간 형태의 x(t)
xs (t )  x(t ) s (t )

 x(t )   (t  nT )
n 


 x(nT ) (t  nT )
n 


 x(t ) (t  nT )
(4-2)
n 
여기서 S(t) 는 주기 T를 가지는 임펄스 열이다.
4/50
– 표본화된 신호 xs(t) 의 푸리에 변환을 통한 이산푸리에 변환

X s ( j )   xs (t )e  jt dt






 jt
dt
n 


n 

 x(t ) (t  nT )e


x(t ) (t  nT )e  jt dt

 x(nT )e
 jnT
n 
X s ( j ) 

xe
n 
n
 jnT
(4-3)
여기서 x(nt) = xn .
5/50

이산 푸리에 변환의 특성
– 실수부와 허수부의 분리를 통한 특성 관찰
X s ( j ) 

x
n 
n

cos(nT )  j  xn sin(nT )
(4-4)
n 
• x(t) 가 표본점들에서 우함수이면, 즉 xn=x-n이면, X s ( j) 는 실수
이며 우함수이다. 그 역도 성립된다.
• x(t) 가 표본점들에서 기함수이면, 즉 xn=-x-n이면, X s ( j) 는 허수
이며 기함수이다. 그 역도 성립된다.
• X s ( j) 와 X s ( j) 는 켤레복소수(complex conjugate)이다.
• X s ( j) 는 주기 2 / T 로써
는 다음의 수식과 같다.
 에 대해 주기적임을 알 수 있다. 이
X s ( j )  X s ( j  jk
2
)
T
6/50

이산 푸리에 변환의 계산
– 유한의 합을 사용한 계산
• 주기적 신호에 대해서는 0이 아닌 한정된 구간의 표본화 필요
• 임의의 신호에 대해서는 데이터 창을 사용한 유한구간 한정
N 1
X s ( j )   xn e jnT
(4-5)
n 0
여기서 N 은 주기적 신호에 대해서 한 주기 동안의 표본화된 수를 나타내고,
임의의 신호에 대해서는 데이터 창을 사용한 구간에서 표본화된 수를 나타낸다.
7/50
– 이산푸리에 변환의 독립적인 값들을 계산하기 위한 공식
• N개의 표본들만 존재 함으로 X ( j ) 의 부분들은 독립적
– T  0에서 2 까지만 계산 되어야 함
m 
2 m
,
NT
m  0,1,
, N  1.
(4-6)
– 이산푸리에 변환의 독립적인 값의 계산
N 1
X m  X s ( j 2 m / NT )   xn e j 2 mn / N ,
m  0,1,
, N 1
(4-7)
n 0
• 이산푸리에 변환의 특성
X m  X *m
(4-8)
X  m  X  m N
(4-9)
X m  X N* m
(4-10)
8/50

이산푸리에 역변환
– 정의
1
xn 
N
N 1
X
m 0
m
e j 2 mn / N ,
n  0,1,
, N 1
(4-11)
– 이산 푸리에 변환을 이용한 증명
1
xn 
N
N 1 N 1
 x e
m0 k 0
 j 2 mk / N
k
e j 2 mn / N
1 N 1 N 1 j 2 m ( n  k )/ N
  xk  e
N k 0 m0
1
  Nxn   xn
N
여기서
0,
e j 2 m( nk )/ N  
1,
kn
.
k n
(4-12)
(4-13)
9/50

이산푸리에 변환쌍
N 1
X m   xn e j 2 mn / N ,
m  0,1,
, N 1
(4-14)
n 0
1
xn 
N
여기서
N 1
X
m 0
m
e j 2 mn / N ,
n  0,1,
, N 1
(4-15)
m 과 관련한 주파수는   2 m / NT 이며,
N 과 T 는 각각 표본의 수와 표본사이의 시간 간격을 의미한다.
10/50

예제 4-1
– 이산시간 신호 열 {1, 0, 0, 1}을 DFT하라.
• 다음의 이산푸리에 변환 이용
3
X m   xn e j 2 mn /4 ,
m  0,1, 2,3
n 0
• m=0에 대해
X 0  x0  x1  x2  x3  1  0  0  1  2
• m=1에 대해
X1  x0  x1e
j

2
 x2e
 j
 x3e
j
3
2
 1  0  0  1 e
j
3
2
3 
3 
1  cos     j sin     1  j
2 
2 
• m=2에 대해
X2  0
• m=3에 대해
X3  1 j
11/50

예제 4-2
– 그림 4-2에 주어진 이산시간 신호에 대해 DFT를 구하고 그
의 스펙트럼을 구하라.
T  0.025[sec]
N 4
s  2  40[rad / sec]
x0  0.6, x1  0.8, x2  0.6, x3  0.8
그림 4-2. 정현파 이산시간 신호
12/50
• n=4에 대한 푸리에 변환
3
X m   xn e j 2 mn /4 ,
m  0,1, 2,3
n 0
– m=0에 대하여
X 0  x0  x1  x2  x3
– m=1에 대하여
 0.6  0.8  0.6  0.8  0
X1  x0  x1e
j

2
 x2e
 j
 x3e
j
3
2
 0.6(1  0)  0.8(0  j1)  0.6(1  0)  0.8(0  j1)
 1.2  j1.6
– m=2 와 m=3에 대하여
X2  0
X 3  1.2  j1.6
13/50
– 이산주파수 계산
0  0, 1  210, 2  2 20, 3  2 30
– 스펙트럼의 계산
잡음 주파수
그림 4-3. 이산푸리에 변환 스펙트럼
14/50
4. 푸리에 변환과의 관계

X ( j ) 와 X s ( j) 의 관계
– 푸리에변환 X ( j ) 가 존재하는 경우 X ( j ) 는 언제든지 존재
하며 이 둘간의 관계는 근사화 관계로 여겨짐으로 이에 대한 정
확성의 근거 필요
• 적분기호 안의 e
항은  가 변함에 따라 급격히 커짐으로 T
가 매우 작아져야 하며, 1/T는 x(t)의 최고 주파수 보다 2배 이상이
되어야 함을 표본화 정리가 요구함
 jt
15/50
– 푸리에 역변환을 적용한 증명
• 임펄스 함수를 적용한 xs(t)
N 1
xs (t )   xn (t  nT )
(4-16)
n 0
• x(t)와 임펄스 열(unit impulse train) 사용한 xs(t)
N 1
xs (t )  x(t )  (t  nT )  x(t ) s(t )
(4-17)
n 0
여기서
s(t ) 

ce
n 
n
j 2 nt /T
이며 임펄스 열을 타나내고,
1 T2
cn   T s (t )e  j 2 nt /T dt
T 2
1  T2
   T  (t  mt )e  j 2 nt /T dt
T m   2
1
 .
T
(4-18)
(4-19)
16/50
• 식 (4-18)과 (4-19)를 사용한 xs(t)의 계산
1  j 2 nt /T
s(t )   e
T n 
(4-20)
1 
xs (t )   x(t )e j 2 nt /T
T n
(4-21)
• xs(t)에 대한 푸리에 변환

X s ( j )   xs (t )e  jt dt

1

T


  x(t )e

j 2 nt / T
e  jt dt
n 
2 n
 j ( 
)t
1  
T
   x(t )e
dt
T n  
1 
2 n
  X ( j  j
)
T n 
T
(4-22)
17/50
– 푸리에 변환과 이순푸리에 변환 사이의 관계
• 이산 푸리에 변환은 크기가 1/T로 곱해진 무한 개수의 푸리에 변
환에 대한 중첩
• 중복에 대하여   1/ T 의 바깥 구간은 푸리에 변환으로도 복원
될 수 없음
(a)
(b)
(c)
그림 4-4. 2개의 T 값에 대한 이산 푸리에 변환
(a) x(t)의 푸리에 변환, (b) T=T1일 때의 이산 푸리에 변환, (c) T=T2(T2=2T1)일 때의 이산 푸리에 변환
18/50
5. 절단 및 스펙트럼 누출

절단(truncation)
– 실용적 처리를 위하여 무한 신호에 대하여 스펙트럼이 크게 영
향을 받지 않는 범위 내에서 자름
(a)
그림 4-5. 절단의 영향
(a) x(t)=2e-t의 표본들, (b) x(t)의 진폭 스펙트럼, (c) NT=2[sec]로 절단했을 때의 진폭 스펙트럼
19/50
(b)
그림 4-5. 절단의 영향
(a) x(t)=2e-t의 표본들, (b) x(t)의 진폭 스펙트럼, (c) NT=2[sec]로 절단했을 때의 진폭 스펙트럼
20/50

절단의 영향
– x(t)의 절단
x(t )  Aet
(4-23)
– t = NT 를 적용한 절단된 x(t) 푸리에 변환
X ( j )  
NT
0

x(t )e jt dt   x(t )e jt dt
NT
 X1 ( j )  X e ( j )
(4-24)
여기서 X1 ( j) 은 에러로써 스펙트럼 파상(ripple)로 나타난다.
21/50
– 그림을 통한 x(t)의 절단에 대한 영향 분석
• 절단은 x(t)에 구형파를 곱한 것과 같음
• 이는 스펙트럼 영역에서 구형파의 푸리에 변환인 싱크함수(sinc
function)을 X ( j ) 에 상승적분한 결과임
• 싱크함수의 부엽(side lobe)들이 파상을 나타내며 이를 누출
(leakage) 이라고 함
(a)
그림 4-6. 시간영역과 주파수 영역에서의 절단의 영향
(a) x(t)와 그의 진폭 스펙트럼, (b) NT=2의 크기에 해당하는 구형함수 w(t)와 그의 스펙트럼,
(c) 구형함수 w(t) 가 곱해진 x(t)와 그의 진폭 스펙트럼
22/50
(b)
(c)
그림 4-6. 시간영역과 주파수 영역에서의 절단의 영향
(a) x(t)와 그의 진폭 스펙트럼, (b) NT=2의 크기에 해당하는 구형함수 w(t)와 그의 스펙트럼,
(c) 구형함수 w(t) 가 곱해진 x(t)와 그의 진폭 스펙트럼
23/50
6. 스펙트럼 누출의 감소를 위한 창
함수의 역할

데이터 창
– 누출의 원인은 급격한 변화를 가지는 구형창(rectangular
window)으로 절단을 함에 따라 나타나는 원인임
– 이를 감소 시키기 위한 간단한 방법으로 급격한 부분을 부드럽
게 한 창을 데이터 창 (w(t))라 함
24/50
Table. 4-1. 창함수와 그의 스펙트럼
창종류
창함수
구형창
(Rectangular)
1, t  12
w(t )  
1
0, t  2
바틀렛창
(Bartlett)
해닝창
(Hanning)
해밍창
(Hamming)
1  2 t ,
w(t )  
0,
창 스펙트럼 함수
W( f ) 
t  12
t  12
1  sin( f / 2) 
W( f )  
2   f / 2 
 12  12 cos(2 t ), t  12
w(t )  
t  12
 0,
W( f ) 
2
sin( f )
2 f (1  f 2 )
(1.08  0.16 f 2 )sin( f )
W( f ) 
2 f (1  f 2 )
0.54  0.46 cos(2 t ), t  12

w(t )  
t  12

 0,
파풀리스창
(Papoulis)
 1 sin(2 t )  (1  2 t ) cos(2 t ),
w(t )  
0,
블랙맨창
(Blackman)
1

0.42  0.5cos(2pt )  0.08cos(4pt ), t  2
w(t )  
t  12

0,
파젠창
(Parzen)
sin( f )
f
t  12
t  12
1  24 t 2 (1  2 t ), t  14

1
1
w(t )   2(1  2 t )3 ,
4  t  2
0,
t  12

W( f ) 
2  2cos( f )
 2 (1  f 2 )2
(0.18 f 2  1.68)sin( f )
W( f ) 
 f (1  f 2 )( f 2  4)
3  sin( f / 4) 
W( f )  
8   f / 4 
4
25/50
– 해닝창(Hanning window)
• 데이터 창의 대표정인 예
• 해닝창의 정의
w(t ) 
1
2 t
(1  cos
),
2
NT
0  t  NT
(4-25)
• 이산 시간에서의 해닝창
1
2 n 
wn  1  cos

2
N 
1 1
  e j 2 n / N  e  j 2 n / N 
2 4
(4-26)
26/50
– 해닝 창과 구형 창과의 비교
• 해닝창은 누출을 감소시켜 스펙트럼에 나타나는 파상을 상당히
감소 시킴
(a)
(b)
그림 4-7. 표본들로부터 계산된 스펙트럼과 창함수의 영향
(a) 창함수가 단순한 구형창일 때(절단의 효과), (b) 해닝 창함수를 사용하였을 때의 효과
27/50
• 해닝창의 이산 푸리에 변환
N 1
Wm   wn e j 2 mn / N
n 0
1 N 1  j 2 mn / N 1 N 1  j 2 ( m1) n / N
 e
  (e
 e j 2 ( m 1) n / N )
2 n 0
4 n 0
(4-27)
– m=-1, 0,1 에 대한 해닝 창의 스펙트럼 값
N
 N N
Wm    , ,  
4
 4 2
그림 4-8. 해닝창의 이산푸리에 변환
(4-28)
28/50
7. 이산상승적분

이산상승적분
– 입력열로 임펄스 응답(시스템의 전달한수)를 상승적분하는 것
– 주파수 영역에서 이산 푸리에 변환들의 곱

시간영역에서 이산상승적분정리
– 연속신호의 상승적분의 경우 X ( j ) H ( j ) 의 역변환은 x(t)와
h(t)의 상승적분으로 표현됨
– 이산상승적분의 경우 X m H m 의 역변환은 표본 집합인 xn과 다
른 표본 집합의 주기적 연장인 hn의 상승적분으로 나타남
• 주기적 표본집합
hnkN  hn ,
n  0,1,
, N 1
k  0, 1,
, 
(4-29)
29/50

시간영역에서의 이산 상승적분
– 이산푸리에 역변환은 주기적 상승적분(periodic 또는 circular
convolution)이다
Ym  X m Hm ,
m  0,1,
, N 1
(4-30)
• 시간에서의 이산상승적분
N 1
N 1
m 0
m 0
(4-31)
yn   xm hnm   hm xn m
• 이산푸리에 역변환 공식을 사용한 증명
1 N 1 j 2 ni / N 1 N 1
yn   Yi e
  X i H i e j 2 ni / N
N i 0
N i 1
(4-32)
30/50
– Xi와 Hi를 대체한 후 재배치
N 1
1 N 1  N 1
 j 2 mi / N
 j 2 ki / N  j 2 ni / N
yn     xm e
h
e

k
e
N i 0  m0
k 0

1

N
N 1 N 1
N 1
 x h  e
m0 k 0
m k
 j 2 ( m  k  n ) i / N
i 0
0,
 j 2 ( m k  n ) i / N
e



i 0
N,
N 1
여기서
(4-33)
mk n  0
mk n  0
(4-34)
• 이산상승적분
N 1
yn   xm hnm
(4-35)
m0
(a)
(b)
그림 4-9. 주기적 상승 적분
(a) 두 표본 집합 xn과 hn, (b) 주기적인 상승적분을 위한 두 표본집합 xm과 hn-m
31/50
– 주기적 상승적분의 예
• 수식 (4-35)를 적용한 N=4에 대한 주기적 상승적분
y0  x0 h0  x1h1  x2 h2  x3 h3
y1  x0 h1  x1h0  x2 h1  x3 h2
y2  x0 h2  x1h1  x2 h0  x3 h1
y3  x0 h3  x1h2  x2 h1  x3 h0
• 주기적 성질을 이용한 이산상승적분
– h-1=h3, h-2=h2, and h-3=h1
y0  x0 h0  x1h3  x2 h2  x3h1
y1  x0 h1  x1h1  x2 h3  x3h2
y2  x0 h2  x1h1  x2 h0  x3h3
y3  x0 h3  x1h2  x2 h1  x3h0
(a)
(b)
그림 4-10. 표본집합에 영의 값을 첨가함으로써 얻어진 연속상승적분의 추정
(a) 입력 표본집합 xn, (b) 영이 첨가된 주기적 표본 집합 hn
32/50

예제 4-3
– 다음 두 표본 값들에 대해 통상적인 상승적분을 구하라. 한편,
이들로부터 주기적인 상승적분을 구하고 서로 비교하라.
xn  {4, 5}, hn  {1, 2, 3}
• 이산상승적분
1 2 3
5 4 
4 13 22 15
yn  4, 13, 22, 15
• 주기적 상승적분
1 2
3
5
1 2 3 1 2 3
4 
19 13 22 19 13 22
yn  19, 13, 22
• 0의 참가를 이용한 이산상승적분으로 부터의 통상적인 상승적분
1 2 3
0
5
1 2 3 0 1 2 3 0
4

4 13 22 15 4 13 22 15
yn  4, 13, 22,15
33/50

주파수영역에서의 이산 상승적분
– 두 개 표본 집합들의 곱의 이산푸리에 변환
yn  xn hn ,
n  0,1,
, N 1
(4-36)
• 주파수 영역에서의 표현
1 N 1
1 N 1
Ym   X n H mn   H n X mn
N n 0
N n 0
(4-37)
• 시간영역 상승적분을 이용한 증명
N 1
Ym   yi e  j 2 mi / N
i 0
 1 N 1 N 1

   2  X n H k  e  j 2 ( m  n  k )i / N
i 0  N n 0 k 0

N 1
1 N 1 N 1
 2  X n H k  e  j 2 ( m  n  k )i / N
N n 0 k 0
i 0
N 1
1

N
N 1
X
n 0
n
H mn
(4-38)
34/50
8. 고속푸리에 변환

고속푸리에 변환(fast Fourier transform; FFT)
– 이산푸리에 변환공식에서 반복되는 계산의 제거를 통해 빠르
게 변환 함

이산푸리에 변환에서의 중복항
– 이산푸리에 변환
• 지수함수의 주기적 특성으로 인하여 일부 혹은 전체 계산과정이
한번 또는 그 이상 중복(redundancy) 계산됨
N 1
X m   xn e j 2 mn / N ,
m  0,1,
, N 1
(4-39)
n 0
여기서 m 은 주파수를 나타내는 상수 지수로써   2 m / NT [rad / sec] 를 나타내는데 사용되며
xn 은 x(t) 의 n 번째 표본이고,
N 은 표본의 개수를 나타낸다.
35/50
– 지수항의 변하지 않는 항목을 표현한 이산푸리에 변환
• 지수항의 변하지 않는 항목
– 주기적인 특성을 나타냄
WN  e j 2
N
(4-40)
• 이산푸리에 변환
N 1
X m   xnWNmn , m  0,1,
, N 1
(4-41)
n 0
그림 4-11. N=8인 경우 WN의 주기적 특성
36/50
– N=8에 대한 이산푸리에 변환
• 주기적 특성을 이용하기 위한 짝수항과 홀수항의 분해
Xm 

N 2 1

n0
n0

x2 nW

x2 nW
2 mn
N
W
N 2 1

N 2 1
2 mn
N
n0
x2 n 1W N(2 n 1) m
N 2 1
m
N

n0
x2 n 1W N2 mn
(4-42)
, p 1
(4-43)
• 각 합에 대한 이산푸리에 변환
p 1
X   x2 nW pmn
e
m
n0
p 1
X   x2 n 1W pmn ,
o
m
m  0,1,
n0
여기서 Wp  e j 2
p
 e j 2
2 N
 (e j 2 N )2  WN2
(4-44)
– 짝수항과 홀수항으로의 분할
X m  X me WNm X mo ,
m  0,1,
, p 1,
(4-45)
37/50
– 반복성을 이용한 m  p에 대한 이산푸리에 변환
X me  X me  p
X mo  X mo  p
(4-46)
– N개 표본들에 대한 완전한 이산푸리에 변환
X m  X me WNm X mo ,
m  0,1,
, N 1
(4-47)
» 각 푸리에 변환은 (N/2)2의 곱을 요구
» 모두 2ⅹ(N/2)2+N=N(N/2+1)의 곱을 필요
» 원래의 N2의 원래 연산양에서 N으로 연산량 줄임
38/50

시간 영역 분해의 고속 푸리에 변환
– N=8의 예제를 통한 에 대한 고속 푸리에 변환
7
X m   xnW8mn ,
m  0,1, 2,
,7
n0
 x0W80 m  x1W81m  x2W82 m  x3W83m  x4W84 m  x5W85 m  x6W86 m  x7W87 m (4-48)
• 짝수항과 홀수항의 분리
xm  x0W80 m  x2W82 m  x4W84 m  x6W86 m
 W8m ( x1  x3W82 m  x5W84 m  x7W86 m )
X m  X me W8m X mo
(4-49)
X me  x0  x2W82 m  x4W84 m  x6W86 m
X mo  x1  x3W82 m  x5W84 m  x7W86 m
(4-50)
39/50
e
– 짝수항 X m에 대한 짝수항과 홀수항의 분리
X me  x0  x4W84m  W82m ( x2  x6W84m )
X me  X mee  W82m X meo
(4-51)
X mee  x0  W 84 m x4
(4-52)
X meo  x2  W 84 m x6
» 최대 분해 항인 X mee 에 대한 특성
X 0ee  x0  x4
X
ee
1
 x0  W x
4
8 4
주기성
X 2ee  x0  W88 x4  x0  x4  X 0ee
X 3ee  x0  W812 x4  x0  W84 x4  X 1ee
X 4ee  x0  W816 x4  x0  x4  X 0ee
(4-53)
40/50
» 최대 분해 항인 X meo 에 대한 특성
X 0eo  x2  x6
X
eo
1
 x2  W x
4
8 6
주기성
X 2eo  X 0eo
X 3eo  X 1eo
(4-54)
41/50
X me 에 대한 특성
» X mee 와 X meo 의 주기성을 이용
– 짝수항
X 0e  X 0ee  X 0eo
X 1e  X 1ee  W 82 X 1eo
X 2e  X 2ee  W84 X 2eo  X 0ee  W 84 X 0eo
주기성
X 3e  X 3ee  W 86 X 3eo  X 1ee  W 86 X 1eo
X 4e  X 4ee  W 88 X 4eo  X 0ee  X 0eo  X 0e
X 5e  X 5ee  W 810 X 5eo  X 1ee  W 82 X 1eo  X 1e
(4-55)
42/50
o
– 홀수항 X m 에 대한 특성
X 0o  X 0oe  X 0oo
X 1o  X 1oe  W 82W1oo
X 2o  X 2oe  W 84 X 2oo  X 0oe  W 84 X 0oo
주기성
X 3o  X 3oe  W 86 X 3oo  X 1oe  W 86 X 1oo
X 4o  X 0o
X 5o  X 1o
(4-56)
43/50
» 홀수항의 짝수항( X moe )과 홀수항( X moo )에 대한 특성
X 0oe  x1  x5
X
oe
1
주기성
 x1  W x
4
8 5
X 2oe  X 0oe
X 3oe  X 1oe
(4-57)
X 0oo  x3  x7
X
oo
1
 x3  W x
4
8 7
주기성
X 2oo  X 0oo
X 3oo  X 1oo
(4-58)
44/50
• N=2 에 대한 신호 흐름도(signal-flow graph)
– 흐름은 왼쪽에서 오른쪽으로 나타남
– 선분위의 숫자는 WN의 멱지수를 나타냄
– 끊어지지 않는 선분은 영의 지수를 나타냄
– 이산푸리에 변환공식으로 3번 적용 후 함축된 합과 곱
그림 4-12. N=2인 경우의 이산푸리에 변환 또는 고속푸리에 변환을 위한 신호 흐름도
45/50
• N=8에 대한 신호 흐름도(signal-flow graph)
– 신호통로를 추적하여 이산푸리에 변환 합 증명
– 입력표본들에 대하여 홀수항과 짝수항으로 마지막 2개의 짝이 남을
때 까지 완전 분해 (decomposition)
» 정수 값들은 기호를 간략화 하기 위한 표본의 위치
그림 4-13. 입력 비트 역전의 시간영역분해를 사용한 고속푸리에 변환( N=8)
46/50
– N=8에 대한 완전 분해(decomposition)
그림 4-14. 표본들의 분해
47/50
• 비트 역전(Bit reversal)
– N의 개수가 큰 경우 완전 분해의 짝이 어려운 경우 사용
– 분해 과정을 N=2k 인 2의 멱이 되는데 기초를 둠
– K=3인 경우의 분해 과정에 예
그림 4-15. 비트 역전을 보여주는 표본들의 완전분해(N=8의 경우)
48/50
• 비트 역전(Bit reversal)의 응용
– K가 1 증가되는 경우 각 지수들을 두 배로 하고 현재 신호도의 옆과
밑에 같은 신호도를 그대로 반복 수 오른쪽 끝에 네 번째 구간 넣음
– K가 1 감소되는 경우 4개의 절점과 3개의 행(column)을 같은 위쪽 좌
측 신호도 망을 취하고 지수를 각각 2로 나눔
49/50
– 복소곱(Complex multiplication)의 고속푸리에 변환
• 하나의 지수로 표현됨으로 K 행의 곱들이 중복
• n≥ N/2 일 때, WNn  WNn N /2 이기 때문에 각 행에서 곱의 반은 중복
• 복소곱들의 수
복소곱들의 수 
NK N
 log 2 N
2
2
(4-59)
• 이산푸리에 변환에서의 복소곱들의 수인 N2과 비교
고속푸리에 변환곱의 수
1

log 2 N
이산푸리에 변환곱의 수 2 N
(4-60)
• 복소곱들의 연산비교
Table. 4-2. 복소곱 연산수의 비교
이산푸리에 변환
N
고속푸리에 변환
2
4
1
8
64
12
32
1024
80
64
4096
192
512
262144
2304
1024
1048576
5120
50/50