Transcript Document
제 6장 이산시간 시스템 1. 서론 이산시간 시스템 – 이산시간신호를 처리하기 위한 장치 – 이산시간 시스템의 구성 y(n) b1 y(n 1) a0 x(n) 여기서 (6-1) a0 와 b1는 배율기(multiplier)이고, D 는 지연요소(delay element)이다. a0 b1 그림 6-1. 이산시간 시스템의 예 2/99 2. 차분방정식(difference equation) 이산시간 시스템의 차분방정식 M N b y (n k ) a x(n k ) 0 k 0 k k 0 여기서 ak 와 k (6-2) bk 는 상수 또는 n의 함수이다. – b0 0 일 때의 차분방정식 – 초기조건(initial condition)이 포함되어야 함 N M y (n) ak x(n k ) bk y (n k ) k 0 (6-3) k 1 3/99 예제 6-1 이동평균(moving average) – 차분방정식의 간단한 예로서 다음 식을 생각하자. y(n) a0 x(n) a1x(n 1) a2 x(n 2) (6-4) • a0 a1 a2 1/ 3 인 경우, y ( n) 1 x(n) x(n 1) x(n 2) 3 – 비순환형(non-recursive) 차분방정식 – n ≥ 0 일 경우 x(-1) 및 x(-2)의 값이 초기조건으로 필요 4/99 예제 6-2 적분(integration) y(n) b1 y(n 1) a0 x(n) a1x(n 1) (6-5) • b1 1, a0 a1 1/ 2 인 경우, 사다리꼴 법칙(trapezoidal rule)이 적용됨 y (n) y (n 1) 1 x(n) x(n 1) 2 (6-6) – n ≥ 0 일 경우 x(-1) 및 y(-1)의 값이 초기조건으로 필요 5/99 3. 선형 시불변 이산시간 시스템 이산시간 시스템의 분류 – 비선형, 시불변(time-invariant), 시변(time-varying) 시스템 이산시간 시스템의 입력열과 출력열의 관계 – 상승적분 합 y ( n) h( k ) x ( n k ) (6-7) k 여기서 h(n) 은 시스템의 임펄스 응답이다. 그림 6-2. 이산시간 시스템의 기능적 관계 6/99 – 선형시스템을 위한 조건 • 이산시간 시스템이 중첩(superposition)의 성질을 나타냄 a1x1 (n) a2 x2 (n) a1 y1 (n) a2 y2 (n) (6-8) – 시불변 시스템을 위한 조건 • 이산시간시스템의 출력이 입력이 적용된 시간에 독립적 x ( n) y ( n ) x(n k ) y (n k ) (6-9) 7/99 선형 시스템과 비선형 시스템 – 선형차분방정식으로 묘사되는 시스템은 선형시스템으로 적용 y(n) ak x(n k ) y(1) (6-10) k 0 – 비선형 시스템의 예 y(n) ak x(n k ) y 2 (1) (6-11) k 0 8/99 이산시간 시스템의 형태와 전달함수 – 이산시간 시스템의 차분 방정식 N M y (n) ak x(n k ) bk y (n k ) k 0 (6-12) k 1 – z-변환 후의 차분 방정식 N M Y ( z ) ak z X ( z ) bk z kY ( z ) k 0 k (6-13) k 1 9/99 – 전달함수의 유추 N H ( z) Y ( z) X ( z) a z k 0 M k k (6-14) 1 bk z k k 0 • bk가 0일 경우 N y(n) ak x(n k ) k 0 N Y ( z) H ( z) ak z k X ( z ) k 0 여기서 (6-15) (6-16) ak 는 임펄스 응답(impulse response)를 나타내고, h(k ) 로 표시한다 – 임펄스 응답에 따른 시스템 응답의 분류 • h(k)가 유한한 LTI 시스템을 유한 임펄스 응답 (finite impulse response; FIR)이라 정의 • 분모의 계수가 적어도 한 개는 0이 아닌 경우 무한 임펄스 응답 (infinite impulse response; IIR)라 정의 10/99 – 이산 시간 시스템의 임펄스 응답 • H(z)를 역 z 변환하여 획득 h(k ) 1 H ( z) , k 0,1, 2, • H(z)가 멱급수로 표현된다면, H ( z ) h(n) z k (6-17) n 0 =h(0) h(1) z 1 h(2) z 2 – z의 계수가 임펄스 응답임 11/99 • 시스템에서의 임펄스 응답 – 임펄스 응답은 단위 임펄스(unit inpulse)에 대한 이산 시간 시스템 응 답으로 여겨짐 – 즉, x(n) (n) 일 때, y ( n) h( k ) x ( n k ) k 0 = h(k ) (n k ) k 0 =h(0) (n) h(1) (n 1) h(2) (n 2) =h(n), n 0,1, 2, (6-19) 12/99 예제 6-3 – 다음의 전달함수 H(z) 로부터 이산시간 필터의 임펄스 응답을 찾아라. 1 z 1 H ( z) 1 0.5 z 1 • 멱급수 방법을 사용한 임펄스 응답 H ( z) 1 1.5z 1 0.75z 2 0.375z 3 h(0) 1, h(1) 1.5, h(2) 0.75, h(3) 0.375, 13/99 • 차분 방정식을 사용한 임펄스 응답 Y ( z) 0.5z 1Y ( z) X ( z) z 1 X ( z) y(n) 0.5 y(n 1) x(n) x(n 1) y(n) x(n) x(n 1) 0.5 y(n 1) – 임펄스 응답을 x(n) (n) 로 두고, 초기조건은 y(-1)=0로 둠 1 n 0 0 n 0 (n) y(0) 1 y(1) x(1) x(0) 0.5 y(0) 0 1 0.5 1.5 y(2) x(2) x(1) 0.5 y(1) 0.5 (1.5) 0.75 y(3) x(3) x(2) 0.5 y(2) 0.5 0.75 0.375 – 임펄스 응답 h(0) 1, h(1) 1.5, h(2) 0.75, h(3) 0.375, 14/99 예제 6-4 – 식 (6-1)의 필터를 다시 생각해 보자. 이 필터의 전달함수와 임 펄스 응답을 구하라. • (6-1)의 z 변환과 그에 따른 정리 Y ( z) b1[ z 1Y ( z) y(1)] a0 X ( z) Y ( z)(1 b1z 1 ) a0 X ( z) b1 y(1) Y ( z) a0 X ( z ) (b1 ) y(1) 1 b1 z 1 1 b1 z 1 (6-20) • 역 z 변환 n y(n) a0 (b1 )nk x(k ) (b1 )n 1 y(1) k 0 (6-21) 15/99 • 초기 조건이 y(-1) 이 0일 경우, Y ( z) a0 X ( z ) 1 b1 z 1 (6-22) • 디지털 필터의 전달함수 H ( z ) Y ( z ) / X ( z ) a0 1 b1 z 1 (6-23) h(n) a0 (b1 )n (6-24) H ( z) • 역 z 변환 16/99 안정도(stability) – 안정도 척도 • 모든 제한된 입력은 모든 제한된 출력을 낸다 (bounded input, bounded output; BIBO) h[k ] (6-25) k 여기서 h(k ) 는 시스템의 임펄스 응답이다. • 증명 – x(n)가 유한일 때 모든 n에 대해 |x(n)|<Bx를 만족하는 +∞가 아닌 양수 Bx가 존재함으로 다음의 수식 성립 y(n) h(k ) x(n k ) h(k ) k x (n k ) (6-26) k 17/99 – x(n)이 유한(bounded)하기 때문에, x(n) Bx – 수식 (6-26)의 정리 y(n) Bx h( k ) (6-27) k – y(n)이 유한(bounded)하기 위한 필요충분조건(necessary and sufficient condition)은 다음의 수식과 같음 h( k ) k 18/99 – 안정도 판별법 • z 변환 H(z)가 인수분해 형태가 불가능한 경우 – 연속 데이터 시스템에서 루스-허위츠(Routh-Hurwitz) 판별법은 안정 도 경제 조건이 다르기 때문에 z 평면에서 적용 불가능 – 주리(Jury)의 안정도 판별법과 이를 표로 만든 레이블(Raible)의 안정 도 판별법 적용가능 • 레이블의 안정도 판별법 – 일반적인 전달함수 H ( z ) N ( z ) / D( z ) D( z) an z n an1z n1 여기서 a0 , a1 , a2 z 2 a1z a0 0 (6-28) , an은 실수 계수이며, an 은 양수이다. 19/99 • 레이블 안정도 판별법을 위한 테이블(tabulation) – 첫 번째 열의 요소는 단위 원 안과 밖의 근의 개수 » 양의 요소는 단위 원 내의 근의 개수 » 음의 요소는 단위 원 밖의 근의 개수 표 6-1. 안정도 판별을 위한 레이블의 표(Raible's tabulation) 20/99 – 특이(singular) 경우 » 첫 번째 열의 일부 혹은 모든 요소가 0 일 때, 테이블이 바로 끝 나는 경우 » 단위 원을 무한소로 확장 또는 수축하여 이를 해결 » z를 다음과 같이 치환 z (1 ) z (6-29) 여기서 은 아주 작은 실수이다. » n차일 경우, (1 )n z n (1 n ) z n (6-30) 21/99 예제 6-5 – 다음의 디지털 시스템의 특성 방정식의 안정도를 판별하라. D( z) z 2 z 0.25 0 • 레이블 테이블 적용 • 첫 번째 열의 계수 b0와 c0가 모두 양수 임으로 두 근이 단위 원 내 부에 존재 22/99 예제 6-6 – 다음의 디지털 시스템의 특성 방정식의 안정도를 판별하라. D( z) z3 3.3z 2 3z 0.8 0 (6-31) • z = -0.5, -0.8, -2,0에서 근을 가짐 • 레이블 테이블의 적용 • 특이의 경우 임으로 아래와 같이 정리 D((1 ) z) (1 3 ) z3 3.3(1 2 ) z 2 3(1 ) z 0.8 0 23/99 • 레이블 테이블의 적용 – 아래의 관계에서 가 양수이든 음수이든 첫 번째 열에서 음수 값을 가지는 요소가 하나 있기 때문에 단위 원 밖에 근이 하나 존재 하며 단위 원 위에는 근이 없음 0 : b0 0, c0 0, d0 0 0 : b0 0, c0 0, d0 0 24/99 예제 6-7 – 다음의 디지털 시스템의 특성 방정식의 안정도를 판별하라. D( z) z3 z 2 z 1 0 (6-32) • 식 (6-27)과 식 (6-28)을 이용하여 아래의 식으로 변환 D[(1 ) z] (1 3 ) z3 (1 2 ) z 2 (1 ) z 1 0 • 2 이상의 항을 무시하여 레이블 테이블 적용 – 모두 0일 때 양의 값을 가지며, 0일 때 음의 값을 가짐으로 세 개의 근은 단위 원 위에 존재함 z 1, z j, z j 25/99 4. 극점-영점의 도시 시스템 전달함수의 극점과 영점 표현 – N=M 이며, H(z)가 z = p1, p2,…,pN에서 극점을 가지고, z = z1, z2,…, zN에서 영점을 가질 때, Y ( z) X ( z) K ( z z1 )( z z2 ) ( z z N ) = ( z p1 )( z p2 ) ( z p N ) H ( z) a0 z N a1 z N 1 a2 z N 2 a N = b0 z N b1 z N b2 z N 2 bN (6-33) 여기서 K 는 이득 인수이다. – H(z)의 극점과 영점은 실수 혹은 복소수이며, 복소수는 항상 켤 레 복소수 쌍(complex conjugate pair)로 존재 26/99 – 극점 z = 0.5 ± j0.5와 z = 0.75를 가지고 z = -1에서 영점을 가지 는 H(z)의 표현 H ( z) K ( z 1) ( z 0.5 j 0.5)( z 0.5 j 0.5)( z 0.75) • K는 |H(z)|의 최대값이 1로 정규화 되도록 구해져야 함 • 안정한 시스템은 모든 극점이 단위 원 (|z| = 1) 안에 있어야 함 그림 6-3. 변환에서의 극점과 영점의 표현 27/99 예제 6-8 – 극점과 영점의 항으로 다음의 전달 함수를 표현하고, 극점-영 점을 도시하라. 1 z 1 2 z 2 H ( z) 1 1.75 z 1 1.25 z 2 0.375 z 3 • 양의 차수로 H(z)를 표현 H ( z) ( z 2)( z 1) z ( z 0.5 j 0.5)( z 0.5 j 0.5)( z 0.75) • z = 0.5 ± j0.5와 z = 0.75에서 극점을 가지고, z = 2, z = -1과 z = 0에 서 영점을 가짐 그림 6-4. 예제 6-8의 극점과 영점 28/99 예제 6-9 – 그림 6-5에 보여진 극점-영점 도시로부터 이산 시간 시스템의 전달 함수, H(z)를 결정하라. K ( z j )( z j ) K ( z 2 1) H ( z) = ( z 0.5 j 0.5)( z 0.5 j 0.5) z 2 z 0.5 K (1 z 2 ) = 1 z 1 0.5 z 2 • 영점은 z = ± j에 있고, 극점은 z = 0.5 ± j0.5에 있음 • 여기서 K=0.2236 그림 6-5. 예제 6-9의 극점과 영점 29/99 5. 주파수 응답 시스템의 주파수 응답 – 이산 필터의 설계에서 원하는 사양을 만족되는지 확인을 위해 필터 스펙트럼이 필요 – 직접 계산에 의한 방법과 기하학적 계산에 의한 방법이 사용 H ( z) h( n) z n n =H (e jT ) z e jT h( n) e jnT (6-34) n 30/99 예제 6-10 – 다음의 이산시간 시스템의 주파수 응답특성을 구하라. H ( z) z 1 z 0.5 • 전달함수 H(z)에 z e jT 를 대입 후 오일러 공식 (Euler’s formular) 적용 e jT 1 jT H (e ) jT e 0.5 1 cos(T ) j sin(T ) = cos(T ) 0.5 j sin(T ) • 0 를 대입 H (e j 0 ) 2 / 0.5 40 31/99 • s / 8 에서 T j H (e 4 ) s 8 T 4 이므로, 1 cos( / 4) j sin( / 4) cos( / 4) 0.5 j sin( / 4) =2.51 51.2 • 0 에서 s 까지의 모든 주파수에 대한 응답 계산 가능 • 편의상 s / 4, 3s / 8 과 s / 2 에서 계산을 하면 H (e H (e H (e j j j s 4 T j ) H (e 2 )=1.26 71.6 3s T 8 s 2 T ) H (e j 3 4 )=0.55 82.1 ) H (e j )=00 32/99 jT • H (e ) 은 샘플링 주파수의 반에 대하여 대칭이고, 위상 응답은 비대칭임 그림 6-6. 예제 6-10의 이산시간 시스템의 주파수 응답 33/99 – 그래프 방법을 통한 주파수 응답의 계산 • 시스템은 z = -1과 z = 0.5에서 영점과 극점을 가짐 • z0에서 H(z)를 다시 표현 H (e j0T ) A j (1 2 ) e B • 진폭 및 위상 응답 H (e j0T ) A B H (e j0T ) 1 2 그림 6-7. 극점과 영점, 기하학적인 방법을 이용한 주파수 응답 평가 34/99 6. 시스템 구현 이산 시간 시스템의 구현 – 실제 디지털 회로를 사용한 하드웨어 구현 – 일반적 컴퓨터 혹은 마이크로 프로세서를 위한 구현 일반적인 신호처리에서의 구현 그림 6-8. 이산시간 시스템 구현에서의 기본적인 기능들 (a) 단위지연, (b) 덧셈 또는 뺄셈기, (c) 상수 배율기, (d) 분기 연산, (e) 신호 배율기 35/99 – 단위 지연 연산 (unit delay) (그림 6-8(a)) y(n) x(n 1) (6-35) – 덧셈기 또는 뺄셈기 (adder/subtractor) (그림 6-8(b)) w(n) x(n) y(n) (6-36) – 상수 배율기(constant multiplier) (그림 6-8(c)) y(n) Ax(n) (6-37) – 분기 (branching) (그림 6-8(d)) y1 (n) x(n) y2 ( n ) x ( n ) (6-38) – 신호 배율기 (signal multiplier) (그림 6-8(e)) w(n) x(n) y(n) (6-39) 36/99 직접 구현 – 기본적 구현 형태를 위한 일반적 전달함수 N H ( z) Y ( z) X ( z) a z 1 i i 0 N 1 bi z 1 (6-40) i 1 – 직접형 1(direct form 1) • 일반적 전달함수의 차분 방정식 N N y(n) ai x(n i) bi y (n i ) i 0 (6-41) i 1 37/99 • 직접형 1의 구현 그림 6-9. 직접형 1의 구조 38/99 – 직접형 2(direct form 2) 혹은 정규형 (canonic form) • 분자항과 분모항의 조합 H ( z) N ( z) D( z ) Y ( z) H ( z) X ( z) N ( z) X ( z) D( z ) (6-42) • 새로운 변수 W ( z ) 를 사용한 정의 W ( z) X ( z) D( z ) Y ( z ) N ( z )W ( z ) (6-43) (6-44) • 수식 (6-43)과 (6-44)의 역변환 N w(n) x(n) bi w(n i) (6-45) i 1 N y(n) ai w(n i ) (6-46) i 0 39/99 • 직접형 2의 구현 그림 6-10. 직접형 2의 구조 40/99 예제 6-11 – 아래의 전달함수로 표현되는 시스템에 대해 (a) 직접형 1과 (b) 직접형 2로 각각 구현하라. 3 3.6 z 1 0.6 z 2 H ( z) 1 0.1z 1 0.2 z 2 • 직접형 1 구현을 위한 차분 방정식 형태 y(n) 3x(n) 3.6x(n 1) 0.6 x(n 2) 0.1y(n 1) 0.2 y(n 2) • 직접형 1의 구현 그림 6-11. 예제 6-11의 시스템 구조 (a) 직접형 1 구현, (b) 직접형 2 구현 41/99 • 직접형 2 w(n) x(n) 0.1w(n 1) 0.2w(n 2) y(n) 3w(n) 3.6w(n 1) 0.6w(n 2) • 직접형 2의 구현 그림 6-11. 예제 6-11의 시스템 구조 (a) 직접형 1 구현, (b) 직접형 2 구현 42/99 매개변수의 양자화 영향 – 일반적인 매개변수 양자화 오차 원인 (a) 입력 신호를 유한 개수의 이산 단계로 만드는 양자화 – 양자화 오차로써 입력 신호를 유한개의 이산 단계로 양자화에 의해 발생 (b) 시스템 내의 산술연산에서 반올림(rounding) 오차들의 누적 – 산술 연산 과정에서 반올림 오차의 누적에 기인 (c) 유한 개수의 비트(bit)로 표현되는 전달 함수의 계수 ai와 bi 의 양 자화 – 표본화 율이 전달함수의 주파수 범위에 비해 증가하거나 차분 방정 식의 차수가 증가하는 경우 43/99 계수의 양자화 영향 – IIR 필터의 전달함수 N Hi ( z) a z k 0 M k k 1 bk z 1 (6-47) k 1 ^ – 유한 비트수로 양자화 될 때, 양자화된 계수 a^k 와 bk 로 전환 N Hˆ i ( z ) aˆ z k 0 M k k 1 bˆk z 1 (6-48) k 1 여기서 aˆk ak ak 이고, bˆk bk bk 이다. 44/99 – 계수 양자화 오차의 영향 • 디지털 필터의 전달함수 H ( z) 1 1 0.95 z 1 – 한 개의 근이 z = 0.95 안에 있음으로 안정 – 양자화 간격의 크기를 q = 0.125로 가정 – 계수 0.95는 0.875와 1 사이에 있음으로 1로 바뀌게 되며, 전달함수는 Hˆ ( z ) 1 1 z 1 » 불안정한 시스템으로 바뀜 45/99 직렬 및 병렬 구현 – 복잡한 전달함수를 몇 개의 단순한 함수로 분해 • 제한된 계수의 정확도를 가져야 하는 특수 목적의 경우 전달 함수 의 차수가 늘어감에 따라 커지는 양자화 오차를 최소화 – 직렬형(cascade canonic form 또는 series from)의 분해 H ( z ) a0 H1 ( z ) H 2 ( z ) Hl ( z) l =a0 H i ( z ) (6-49) i 0 • 대부분의 경우 일차 혹은 이차로 표현됨 – 일차의 형태 1 ai1 z 1 Hi ( z) 1 bi1 z 1 (6-50) – 이차의 형태 1 ai1 z 1 ai 2 z 2 Hi ( z ) 1 bi1 z 1 bi 2 z 2 (6-51) 46/99 • 직렬 구현의 일반적 배치와 직접형 2 구현을 사용한 구성 그림 6-12. 직렬 구현 형태 그림 6-13. 직렬 구현에서 각 전달함수의 구현 (a) 1차, (b) 2차 구현 47/99 – 병렬형 (parallel canonic form)의 분해 H ( z ) A H1 ( z ) H 2 ( z ) H r ( z) r =A H r ( z ) (6-52) i 0 • 일차 형태 ai 0 1 bi1 z 1 (6-53) ai 0 ai1 z 1 Hi ( z) 1 bi1 z 1 bi 2 z 2 (6-54) Hi ( z) • 이차 형태 48/99 • 병렬 구현의 일반적 배치와 직접형 2 구현을 사용한 구성 그림 6-14. 병렬 구현 형태 그림 6-15. 병렬 구현에서 각 전달함수의 구현 (a) 1차, (b) 2차 구현 49/99 예제 6-12 – 다음의 시스템을 (a) 직렬 구현 및 (b) 병렬 구현하라. 3 3.6 z 1 0.6 z 2 H ( z) 1 0.1z 1 0.2 z 2 • 직렬 구현에 있어 일차 식으로 분해한 구현 – 양의 차수 사용 3z 2 3.6 z 0.6 H ( z) 2 z 0.1z 0.2 – 인수 분해 적용 H ( z) 3( z 1)( z 2) ( z 0.5)( z 0.4) – 그룹을 나눈 후 음의 차수로 변환 1 z 1 H1 ( z ) 1 0.5 z 1 1 0.2 z 1 H 2 ( z) 1 0.4 z 1 50/99 – 직접형 구현의 전달함수와 분해된 전달함수의 비교 » 분모의 계수가 원래 분모의 계수인 -0.2보다 큼으로 직렬형 구조 에서 계수 양자화 오차가 작아짐으로 직렬형 혹은 병렬형으로 분해하여 시스템 구현하는 것이 계수의 부정확성에 덜 민감 H ( z ) H1 ( z ) H 2 ( z ) 1 z 1 1 0.2 z 1 = 1 0.5 z 1 1 0.4 z 1 – 직렬형으로 구현 그림 6-16. 예제 6-12의 시스템 구현 (a) 직렬 구현, (b) 병렬 구현 51/99 • 병렬 구현 – 부분 분수 전개 A3 A A2 H ( z) 3( z 1)( z 2) 1 z z ( z 0.5)( z 0.4) z z 0.5 z 0.4 – 계수의 결정 A1 3, A2 1, A3 7 – 각 부분에 z를 곱하고 음의 차수로 변환 A 3 H1 ( z ) 1 1 0.5 z 1 H 2 ( z) 7 1 0.4 z 1 52/99 – 병렬형 구현 그림 6-16. 예제 6-12의 시스템 구현 53/99 예제 6-13 – 전달 함수의 부분 인수 분해 형태가 다음과 같이 주어진다. 일 차와 이차항을 사용하여 직렬형으로 구현하라. 2( z 1)( z 2 1.4 z 1) H ( z) ( z 0.5)( z 2 0.9 z 0.81) • 영점은 z 1 134.43 에 위치하고 극점은 z 0.9 60 위치 • 분해는 2개의 이차 다항식을 가지는 2차 항과 2개의 일차 다항식 을 가지는 1차 항으로 그룹 1 z 1 H1 ( z ) 1 0.5 z 1 1 1.4 z 1 z 2 H 2 ( z) 1 0.9 z 1 0.81z 2 54/99 • 직렬형으로의 구현 그림 6-17. 예제 6-13의 시스템 구현 55/99 예제 6-14 – 예제 6-13의 시스템을 병렬형으로 구현하라. • 부분 분수 전개 H ( z) 2( z 1)( z 2 1.4 z 1) z z ( z 0.5)( z 2 0.9 z 0.81) A z A4 A A2 = 1 2 3 (6-55) z z 0.5 z 0.9 z 0.81 • A1= - 4.94이고, A2=2.19 이다. • A3와 A4에 대해 z의 비특이(nonsingular) 값을 선택하여 연립선형방 정식 구현 – z = 1과 z = -1을 사용하여 연립방정식 획득 A3 A4 3.17 A3 A4 6.26 • A3=4.72이고, A4=-1.55 이다. 56/99 • 식의 양변에 z를 곱하고 음의 차수로 재정리하면 다음의 수식 획득 A 4.94 H1 ( z ) 2.19 1 0.5 z 1 4.72 1.55 z 1 H 2 ( z) 1 0.9 z 1 0.81z 2 그림 6-18. 예제 6-14의 시스템 구현 57/99 FIR 시스템 구현 – 직접형 구현 • 영점만을 가짐으로 다음의 차분 방정식으로 나타남 N y (n) ai x(n i ) (6-56) i 1 • 탭 지연선 (tapped delay line) 구조 또는 횡단필터(transversal filter) 라 불림 • 각 탭에서 각 계수에 의해 신호가 가중되어 출력 획득 그림 6-19. FIR 시스템의 직접형 구현 58/99 – 직렬형 구현 • 다항식의 시스템 함수를 인수분해 N H ( z ) h(n) z n 0 n Ns (a0 k a1k z 1 a2 k z 2 ) (6-57) k 1 여기서 Ns ( N 1) / 2 이다. 그림 6-20. FIR 시스템의 직렬형 구현 59/99 – 선형 위한 FIR 시스템 구조 • FIR 시스템의 임펄스 응답이 다음의 대칭성 조건 만족 시 선형 위 상 특성 가짐 h(n) h( N n) h(n) h( N n) n 0,1, n 0,1, , N , 또는 (6-58) ,N (6-59) • N이 짝수인 경우 유형 1 또는 유형 3 시스템의 표현 N y ( n) h( n) x ( n k ) k 0 N /2 1 N k 0 k N /2 1 h(k ) x(n k ) h( N / 2) x(n N / 2) N /2 1 N /2 1 k 0 k 0 h( k ) x ( n k ) h(k ) x(n k ) h( N / 2) x(n N / 2) h( N k ) x(n N k ) 60/99 – 유형 1 시스템의 경우, 식 (6-58)을 적용 후 y ( n) N /2 1 h(k ) x(n k ) x(n N k ) h( N / 2) x(n N / 2) (6-60) k 0 – 유형 3 시스템의 경우, 식 (6-59)을 적용 후 y ( n) N /21 h(k )( x(n k ) x(n N k )) (6-61) k 0 • N이 홀수인 경우 – 유형 3 시스템들의 표현 y ( n) ( N 1)/2 h(k )( x(n k ) x(n N k )) (6-62) k 0 – 유형 4 시스템들의 표현 y ( n) ( N 1)/2 k 0 h(k )( x(n k ) x(n N k )) (6-63) 61/99 • 식 (6-60)에 대한 구조는 그림 6-21(a)에, 식 (6-62)에 대한 구조는 그림 6-21(b)에 표현 그림 6-21. 선형 위상 FIR 시스템의 직접형 구조 (a) N이 짝수일 때, (b) N 이 홀수일 때 62/99 격자 구현 – FIR 필터의 격자 구조 • FIR 시스템의 전달함수 H ( z) 1 a1z 1 a2 z 2 aN z N (6-64) • 입∙출력 형태의 차분 방정식 및 변환 y(n) x(n) a1x(n 1) a2 x(n 2) aN x(n N ) (6-65) N y(n) x(n) xˆ (n) x(n) ak x(n k ) (6-66) k 1 – FIR 필터의 출력이 신호 x(n) 과 xˆ (n) 사이의 오차로 해석되어, FIR 필 터를 선형 예측기(linear predictor)로 생각할 수 있음 63/99 • x(n) 의 선형 예측 값 N xˆ (n) ak x(n k ) (6-67) k 1 여기서 ak 는 예측 계수(prediction coefficient)이다. • N=1 일 때, FIR 필터 출력 y(n) x(n) a1x(n 1) (6-68) – 출력은 1차 또는 1단 (single-stage)의 격자 필터(lattice filter)로부터 획 득 – FIR 필터에 대한 1단의 격자 구조 y(n) x(n) k1x(n 1) g (n) k1 x(n) x(n 1) 여기서 (6-69) k1 은 반사계수(reflection coefficient)라 불린다. 그림 6-22. 1단(single-stage)의 FIR 격자 구조 64/99 • N=2 일 때, 시스템 식과 구조 y2 (n) y1 (n) k2 g1 (n 1) =x( n) k1 x( n 1) k2 k1 x(n 1) x( n 2) =x( n) ( k1 k1k2 ) x(n 1) k 2 x(n 2) g 2 (n) k2 y1 (n) g1 (n 1) =k2 x( n) k1k2 x(n 1) k1 x(n 1) x(n 2) =k2 x( n) (k1 k1k2 ) x(n 1) x(n 2) (6-70) 그림 6-23. 2단(two-stage)의 FIR 격자 구조 65/99 • N=3 일 때, 시스템 식과 구조 y3 (n) x(n) (k1 k1k2 k2 k3 ) x(n 1) +(k2 k1k3 k1k2 k3 ) x(n 2) k3 x(n 3) g3 (n) k3 x(n) (k2 k1k3 k1k2 k3 ) x(n 1) +(k1 k1k2 k2 k3 ) x(n 2) x(n 3) (6-71) – b1 k1 k1k2 k2k3 , b2 k2 k1k3 k1k2k3 , b3 k3 으로 대체 y3 (n) x(n) b1x(n 1) b2 x(n 2) b3 x(n 3) g3 (n) b3 x(n) b2 x(n 1) b1x(n 2) x(n 3) 그림 6-24. 3단(three-stage) FIR 격자 구조 66/99 • N=M 일 때의 직렬 격자 구조 M yM (n) bi x(n i ) i 0 M g M (n) bM i x(n i ) 여기서 b0 1 이다. – 만약 i 0 (6-72) (6-70) x(n) (n) M YM ( z ) bi z i i 0 M GM ( z ) bM i z i (6-73) i 0 1 GM ( z ) z M YM ( ) z 그림 6-25. M 단의 FIR 격자 구조 (6-74) 67/99 예제 6-15 – 다항식이 아래와 같이 주어져 있을 때 (1)GM(z)를 구하고, (2) 계 수 k1과 k2를 구하고 격자 구조로 구현하라. Y2 ( z) 1 0.9z 1 0.8z 2 (1) M=2일 때, 1 G2 ( z ) z 2Y2 ( ) z =z 2 (1 0.9 z 0.8 z 2 ) =0.8 0.9 z 1 z 2 68/99 • (2) 필터이득 kM 은 그림 6-25와 식 (6-73)을 살펴보면 마지막 단의 이득은 계수 bM과 일치함으로 kM bM (6-75) – 따라서 k2 b2 0.8 가 되며, k1 k1k2 b1 k1 0.8k1 0.9 – 됨으로 k1 0.5 – 격자 구조로 구현 그림 6-26. 예제 6-15의 2단 FIR 격자 구조 69/99 – 필터 계수의 계산 • 식 (6-75)로 부터 M YM ( z ) bi z 1 (6-76) i 0 • 임의의 m 번째 단에서 Ym ( z) Ym1 ( z) km z 1Gm1 ( z) Gm ( z) kmYm1 ( z) z 1Gm1 ( z) (6-77) • 식 (6-77)의 두 번째 식을 Gm1 ( z) 에 대해 풀어 첫 번째 식에 대입 G ( z ) kmYm1 ( z ) Ym ( z ) Ym1 km z 1 m z 1 (6-78) 70/99 • Ym-1(z)에서 km ≠ 1 에 대해 Ym1 ( z ) Ym ( z ) kmGm ( z ) , 2 1 km km 1 (6-79) • M = m 으로 두고 식 (6-79)에 대입 Ym ( z ) km z mYm (1/ z ) Ym1 ( z ) 1 km2 (6-80) 71/99 예제 6-16 – 아래의 다항식으로부터 식 (6-80)을 사용하여 첫째 단의 필터 계수를 구하라. Y2 ( z) 1 0.9z 1 0.8z 2 • k2 = 0.8을 적용 Y2 ( z ) k2 z 2Y2 (1/ z ) Y1 ( z ) 1 k22 (1 0.9 z 1 0.8 z 2 ) 0.8 z 2 (1 0.9 z 0.8 z 2 ) = 1 (0.8)2 =1 0.5 z 1 • k1 = -0.5 72/99 – 필터 이득과 계수들을 얻는 식의 일반화 • 식 (6-73)의 표현 M YM ( z ) bMi z i (6-81) i 0 • M = m 으로 대체 m Ym ( z ) bmi z i (6-82) i 0 • z를 1/z로 대체 m Ym (1/ z ) bmi z i (6-83) i 0 m Ym (1/ z ) bm,mi z mi (6-84) i 0 73/99 • m = 3 에 대하여, Y3 ( z) b30 b31z 1 b32 z 2 b33 z 3 Y3 (1/ z) b30 b31z b32 z 2 b33 z3 • 식 (6-80)에서 Ym ( z ) km z mYm (1/ z ) Ym1 ( z ) 1 km2 • 식 (6-82)와 식 (6-83)을 대입 m m 1 i b z m1,i b i 0 mi i z km z m 1 k i 0 m m b i 0 m , m i 2 m m i b z k b z mi m m , m i = z m i i i 0 1 k i 0 2 m (6-85) 74/99 • 양변을 z-i로 나누어 정리 bm1,i bmi kmbm,mi 1 k 2 m , i 0,1, , m 1 m M , M 1, , 2,1, km 1 (6-86) – 계수의 표현 km bmm 75/99 예제 6-17 – 아래의 FIR 필터에 대하여 격자구조를 구현하고 계수를 구하 라. Y3 ( z) 1 0.5z 1 0.2z 2 0.5z 3 • m=3일때 Y3 ( z) 1 b31z 1 b32 z 2 b33 z 3 • 식 (6-86)으로부터 k3 b33 0.5 • Y2(z)에 대한 계수를 계산하기 위하여 식 (6-86)으로부터 bm1,i bmi kmbm,mi 1 k 2 m , 76/99 • m = 3과 i = 0 일 때, b30 k3b33 1 k32 b20 = 1 (0.5)(0.5) 1 1 (0.5) 2 • m = 3과 i = 1 일 때, b21 = b31 k3b32 1 (k3 )2 0.5 (0.5)(0.2) 0.8 1 (0.5)2 • m = 3과 i = 2 일 때, b22 = b32 k3b31 1 (k3 )2 0.2 (0.5)(0.5) 0.6 1 (0.5)2 77/99 • 식 (6-86)에서 k2 b22 임으로 Y2 ( z) 1 b21 z 1 b22 z 2 1 0.8z 1 0.6 z 2 • 첫 번째 단에서 b11 = – 그러므로 b21 k2b21 1 ( k2 ) 2 0.8 (0.6)(0.8) 0.5 2 1 (0.6) k1 b11 이고, Y1 ( z) 1 0.5z 1 이다. 그림 6-27. 예제 6-17의 3단 FIR 격자 구조 78/99 – IIR 필터의 격자구조 • 전극점(all-pole) 시스템에서 IIR 필터 고려 H ( z) 1 1 2 1 a1 z a2 z aN z (6-87) N • 차분 방정식 y(n) x(n) a1 y(n 1) a2 y(n 2) aN y(n N ) (6-88) – 식 (6-88)에서 입력과 출력 교환 x(n) y(n) a1x(n 1) a2 x(n 2) aN x(n N ) (6-89) N y (n) x(n) ak x(n k ) (6-90) k 1 – 시스템 함수 H(z) = A(z)를 가지는 FIR 시스템으로부터 입∙출력 역할 을 바꾸면, IIR 시스템 함수인 H(z)=1/A(z)를 획득됨을 알 수 있음 79/99 • N = 1인 경우 y(n) x(n) k1 y(n 1) g (n) k1 x(n) y(n 1) (6-91) – 첫 번째 식은 1단 전극점 IIR 시스템 – 두 번째 식은 2단 FIR 시스템 그림 6-28. 1단의 전극점 IIR 격자구조 80/99 • N = 2인 경우 y(n) k1 (1 k2 ) y(n 1) k2 y(n 2) x(n) g2 (n) k2 y(n) k1 (1 k2 ) y(n 1) y(n 2) (6-92) 그림 6-29. 2단의 전극점 IIR 격자구조 81/99 • N 차인 경우 yN (n) x(n) ym1 (n) ym (n) km gm1 (n 1), m N , N 1, , 2,1 gm (n) km ym1 (n) gm1 (n 1), m N , N 1, , 2,1 g0 (n) y(n) (6-93) 그림 6-30. N단의 전극점 IIR 격자구조 82/99 • 일반적 시스템에서 IIR 시스템 함수 고려 M H ( z) b z i 0 N i i 1 ai z 1 B( z ) A( z ) (6-94) i 1 – 1/A(z)를 전극점 격자구조로 구현하고, B(z)를 선형결합하는 사다리 (ladder)부분을 추가하여 구현하며 이를 격자-사다리(lattice-ladder)구 조라 함 – M = N으로 가정 그림 6-31. 극점-영점 IIR 시스템의 격자-사다리 구조 83/99 – 격자-사다리 구조의 시스템 출력 M y ( n) d m g m ( n) m0 (6-95) 여기서 d m 은 시스템의 영점들을 결정하는 매개변수이다. – 시스템의 전달함수 식 G ( z ) B( z ) Y ( z) M H ( z) = dm m X ( z ) m0 X ( z ) A( z ) (6-96) 84/99 – 식 (6-94)와 식 (6-96)으로부터 Gm ( z ) M G ( z ) G0 ( z ) B( z ) M dm = dm m A( z ) m0 X ( z ) m0 G0 ( z ) X ( z ) M = d mGm ( z ) m 0 여기서 Gm ( z ) 1 A( z ) (6-97) Gm ( z ) 이다. G0 ( z ) – 식 (6-97)로부터 M B( z ) d mGm ( z ) m0 (6-98) – 분자다항식 B(z)의 계수들은 사다리 매개변수 dm을 결정하고, 분모다 항식 A(z)의 계수들은 사다리 매개변수 km을 결정함 85/99 예제 6-18 – 다음의 전달함수를 가지는 IIR 시스템을 격자구조로 구현하라. H ( z) 1 1 0.5 z 1 0.2 z 2 0.5 z 3 • 전극점 IIR 시스템이며, 반사계수는 k3 0.5, k2 0.6, k1 0.5 • 격자구조의 구현 그림 6-32. 예제 6-18의 전극점 IIR 시스템의 격자 구현 86/99 예제 6-19 – 다음의 전달함수를 가지는 IIR시스템을 격자구조로 구현하라. 1 z 1 z 2 z 3 H ( z) 1 0.5 z 1 0.2 z 2 0.5 z 3 • 전극점 격자구조이며, 각 결점(node)에서의 다항식은 G3 ( z ) 0.5 0.2 z 1 0.5 z 2 z 3 G2 ( z ) 0.6 0.8 z 1 z 2 G1 ( z ) 0.5 z 1 G0 ( z ) 1 • 격자 사다리 구조 그림 6-33. 예제 6-19의 IIR 시스템의 격자 구현 87/99 • 전영점 시스템을 선형조합하는 사다리 구성 블록에서의 관계 B( z ) 1 z 1 z 2 z 3 =d0G0 ( z ) d1G1 ( z ) d 2G2 ( z ) d3G3 ( z ) =d0 d1 (0.5 z 1 ) d 2 (0.6 0.8 z 1 z 2 ) +d3 (0.5 0.2 z 1 0.5 z 2 z 3 ) =(d0 0.5d1 0.6d 2 0.5d3 ) +(d1 0.8d 2 0.2d3 ) z 1 ( d 2 0.5d3 ) z 2 d3 z 3 • 계수의 비교 d0 0.5d1 0.6d 2 0.5d3 1 d1 0.8d 2 0.2d3 1 d 2 0.5d3 1 d3 1 • 계수의 결정 d3 1, d2 0.5, d1 0.4, d0 1 88/99 7. 디지털 필터에 관한 고찰 필터 – 원하는 방법으로 파형의 모양이나 주파수에 따른 신호의 진폭 또는 위상 특성을 선택적으로 변환하는 시스템 – 목적 • 잡음을 제거해서 신호의 질을 향상시키거나 신호들로부터 정보를 추출하거나 통신 채널을 효과적으로 사용하기 위해 복합 신호를 분리 디지털 필터 – 필터처리의 목적에 맞는 디지털 신호를 출력하기 위해 디지털 입력신호에 동작하는 하드웨어 또는 소프트웨어로 구현하는 수학적인 알고리즘 – 필터처리 알고리즘을 수행하는 특정한 하드웨어 또는 소프트 웨어 루틴을 지칭 89/99 – 아날로그 입출력에서 디지털 필터의 역할 • 아날로그 신호가 주기적으로 표본화되고, x(n), n=0,1, …의 디지털 표본들로 변환 • 디지털 프로세서는 필터처리 연산을 수행하며 x(n)을 y(n)으로 변 환 • 디지털-아날로그 변환기(DAC)는 디지털로 필터처리된 출력을 아 날로그 값으로 변환하며, 고주파 성분을 평활하게 하고 제거하기 위해 다음 단에서 아날로그 필터처리 그림 6-34. 아날로그 입∙출력 신호를 가지는 디지털 필터의 간단한 블록 다이어그램 90/99 디지털 필터의 역할 – 디지털 필터는 아날로그 필터로는 불가능한 선형 위상 응답 과 같은 특성을 가질 수 있다. – 아날로그 필터와 다르게, 디지털 필터의 수행 능력은 온도 변 화와 같은 환경 변화에 크게 영향을 받지 않는다. 따라서 주 기적으로 보정을 할 필요가 없다. – 만약 프로그램 가능한 프로세서를 이용한다면 디지털 필터의 주파수 응답을 자동으로 조절할 수 있다. 이것이 바로 디지털 필터가 적응필터(adaptive filter)에 광범위하게 사용되는이 유이기도 하다. – 하나의 디지털 필터만으로 하드웨어의 복제 없이 여러 개의 입력 신호 또는 채널을 필터처리 할 수 있다. 91/99 – 필터 처리된 데이터와 그렇지 않은 데이터 모두 다음 사용을 위해 저장할 수 있다. – VLSI 기술의 발전으로 소형화, 저전력 사용, 생산 단가가 절 감된 디지털 필터가 가능해졌다. – 실제로 아날로그 필터로 가능한 정밀도는 한계가 있다. 예를 들어 일반 기성제품을 이용하여 설계된 능동필터(active filter)는 최대로 약 60-70dB의 정지대역 감쇠만이 가능하다 . 하지만 디지털 필터는 오직 사용되는 단어 길이(word length)에 의해서만 정밀도가 제한된다. – 디지털 필터의 수행은 장치에서 장치로 반복할 수 있다. – 디지털 필터는 의공학 분야에서 아날로그 필터로는 실행할 수 없는 매우 낮은 주파수에서도 사용할 수 있다. 또한 단순 히 표본화 주파수 변환만으로도 광범위한 주파수에서 사용할 수 있도록 만들 수 있다. 92/99 아날로그 필터와 비교하여 디지털 필터의 단점들 – 속도 제한: 실시간으로 디지털 필터가 제어할 수 있는 신호의 최대 대역폭은 아날로그 필터보다 현저히 낮다. 실시간의 경 우, 아날로그-디지털-아날로그 변환 과정은 디지털 필터의 실행에 속도 제한을 일으킨다. ADC의 변환시간과 DAC의 정 착시간은 처리될 수 있는 최고 주파수를 제한한다. 더구나 디 지털 필터의 연산 속도는 사용되는 디지털 프로세서의 속도 와 필터처리 알고리즘에서 반드시 수행되어야 하는 산술 연 산의 수에 좌우된다. – 유한 단어길이 효과: 디지털 필터는 연속신호의 양자화에 의 한 ADC 오차와 계산 과정에서발생하는 반올림(roundoff) 오 차에 종속적이다. 고차의 순환형 필터에 있어서 반올림 오차 의 누적은 시스템을 불안정하게 만들 수 있다. – 긴 개발 시간: 특히 하드웨어 개발에 있어서, 디지털 필터의 설계 및 개발 시간은 아날로그필터에 비해 현저히 길다. 그러 나 한번 구현된 하드웨어나 소프트웨어는 수정이 거의 없이 도 다른 필터처리나 디지털 신호처리 연산에 사용할 수 있다. 93/99 디지털 필터의 형태 – 상승적분(convolution)을 사용한 FIR 필터와 IIR 필터의 표현 • IIR 필터 y ( n) h( k ) x ( n k ) (6-99) k 0 • FIR 필터 N 1 y ( n) h( k ) x ( n k ) (6-100) k 0 • FIR에서 h(k)는 N개의 값만 가지므로 임펄스 응답은 유한하지만, IIR에서는 임펄스 응답이 무한함 94/99 • IIR 필터에 대한 순환 형태의 표현 N M y(n) h(k ) x(n k ) bk x(n k ) ak y (n k ) k 0 k 0 (6-101) k 1 여기서 ak 와 bk 는 필터의 계수이다. – 식 (6-100)과 식 (6-101) • 각각 FIR 필터와 IIR 필터의 차분방정식(difference equation) 형태 • ak와 bk 값이 필터 설계에 있어 가장 중요 • 식 (6-101)의 출력 표본 y(n)은 궤환(feed back) 시스템으로 현재와 과거 입력 분 아니라 과거 출력의 함수 • FIR의 출력 표본 y(n)은 현재와 과거의 입력 값에 대한 함수 – ak를 0으로 하면 IIR 식인 (6-101)은 FIR식인 (6-102)와 동일하게 됨 95/99 – FIR과 IIR에 대한 다른 표현 • 필터의 전달 함수로 필터의 주파수 응답을 평가하는데 유용 N 1 H ( z ) h( k ) z k (6-102) k 0 N H ( z) k b z k k 0 M 1 ak z k (6-103) k 1 96/99 FIR 과 IIR 필터의 선택 – 두 필터의 상대적인 장점 • FIR 필터는 정확한 선형 위상 응답을 가질 수 있다. 이것은 필터에 의해 신호의 위상 왜곡이 발생하지 않는다는 것을 의미하며, 데이 터 전송이나 의공학, 디지털 음성처리, 디지털 영상처리 등의 많은 응용분야에 있어서 중요한 요구사항이다. IIR 필터의 경우, 위상 응답은 특히 대역의 가장자리 부근에서 비선형적이다. • 식 (6-100)에서 바로 알 수 있듯이, 비순환형으로 구현된 FIR 필터 는 항상 안정적이다. IIR 필터의 안전성은 항상 보장되지 않는다. • 필터를 구현하는데 반올림 오차와 계수 양자화 오차화 같은 유한 개수의 비트를 사용하게되는 영향은 FIR보다는 IIR에서 훨씬 더 크다. 97/99 • 급격한 차단(cutoff) 필터에서, 즉 급격한 천이영역(transition region)을 가지기 위해 FIR은 IIR 보다 많은 계수가 요구된다. 따라 서 주어진 진폭응답 사양에 대해, FIR은 보다 많은 수행 시간과 정 보량이 요구된다. 그러나 FFT의 계산 속도와 다중속도(multirate) 기술을 사용하면 FIR 구현의 효율을 향상시킬 수 있다. • 아날로그 필터는 유사한 사양을 갖는 IIR 디지털 필터로 쉽게 바 꿀 수 있다. FIR 필터에서는 대응되는 아날로그 필터가 없다면 불 가능하다. 하지만 FIR에서는 임의의 주파수 응답을 가지는 필터 들을 합성하기는 훨씬 쉽다. • 만약 CAD의 지원이 없다면, 일반적으론 FIR 필터를 합성하기가 산술적으로 더 어렵다. 98/99 – FIR 필터와 IIR 필터에 대한 대략적인 지침 • 중요한 요구 사항이 단지 급격한 차단 필터와 높은 처리량 이라면 IIR을 사용한다. IIR 필터가 FIR 보다 적은 계수로도 가능하다. • 만약 필터 계수의 수가 너무 크지 않거나, 특히 위상왜곡을 아주 작거나 영으로 원한다면 FIR을 사용한다. 99/99