기본적으로 변환(Transform)이라는 말이 붙은 모든 것들은 기존의 풀거나 해석하기 어려웠던 형태를 보다 더 쉬운 형태로 바꿔주는 수학적 기법들이다.
Z Transform(Z 변환)은 좁게는 선형 차분 방정식(Linear Difference Equation)을 쉽게 풀 수 있게 만들어 주는 테크닉이라고 할 수도 있고, 좀 더 넓은 의미에서는 DTFT(Discrete Time Fourier Transform)의 일반화된 형태라고 할 수도 있다.
Z 변환에는 One-Sided Z-Transform, Two-Sided Z-Transform이 있다.
One-Sided Z-Transform
One side Z 변환은 +영역만을 사용하는 변환이다.
$$ X(z) = \sum_{n=0}^{\infty} x[n] z^{-n} $$
공식을 보면 0부터 무한대까지의 영역만을 더해주는 것을 볼 수 있다. 주로 대부분의 디지털 필터와 실제 시스템 해석에서 사용되며, 인과적(Causal) 시스템 분석에 사용한다. 여기서 Causal이란 현재 및 과거 입력값만을 사용하여 출력을 계산하는 시스템을 인과적 시스템(Causal System)을 의미한다.
디지털 신호처리에서는 주로 One sided Z 변환을 주로 사용하는데 이는 대부분의 시스템이 인과적(Causal)이기 때문이다.
Two-Sided Z-Transform
Two-Sided Z-Transform은 말 그대로 두 영역, +와 - 영역을 모두 변환하는 것이다.
$$ X(z) = \sum_{n=-\infty}^{\infty} x[n] z^{-n} $$
비인과적(non-causal) 신호나 양방향 신호를 다룰 때 사용된다. 일반적인 이론적 분석에서 사용되며, DTFT(이산 시간 푸리에 변환)와 연결될 때 이용된다. 여기서 non-causal이란 미래 입력값을 사용하는 것을 의미한다.
이산 신호 \( x[n] \)에 대해 변환하게 되면 아래와 같이 표현할 수 있다.
$$ Z\left[x[n]\right] = \sum_{n=-\infty}^{\infty}x[n]z^{-n} $$
여기서 \( z \)는 복소수에 해당한다.
Z 변환(Z-Transform)
Z 변환(Z-Transform)은 이산 신호(discrete-time signal)를 복소수 영역(complex plane)으로 변환하는 수학적 방법이다. Continuous system에서 라플라스 변환이 있다면, 이와 비슷한 역할을 해주는 것이 바로 Z 변환이다. 시간 영역(Time domain)의 신호를 주파수 영역(Frequency domain) 또는 복소수 영역(Complex domain)으로 옮겨서 분석하기 쉽게 한다.
$$ X(z) = \sum_{n=-\infty}^{\infty} x[n] z^{-n} \quad (ROC: ∣z∣>∣a∣) $$
원래 Z 변환은 복소수 \( z \)를 변수로 사용한다. 그런데 z에 특별히 \( z=e^{jω} \)를 대입하면, 이때는 복소수 크기가 1인 경우, 즉 단위원 위에서 값을 계산하는 것이다. 이 결과는 바로 이산 시간 푸리에 변환 (DTFT)가 된다. 즉, Z 변환을 단위원 위에서 본 것이 바로 주파수 영역 분석(ω-domain)이고, \( X(e^{jω}) \)라고 부른다.
이산시간 푸리에 변환(DTFT, Discrete-Time Fourier Transform)의 수식은 다음과 같다.
$$ X(e^{j\omega}) = \sum_{n=-\infty}^{\infty} x[n] e^{-j \omega n} $$
Z 변환과 DTFT는 이산 신호를 주파수 영역으로 변환하는 방법이다. 둘은 서로 밀접한 관계를 가지며, Z 변환을 특정 경로(단위원) 상에서 평가함으로써 DTFT를 얻을 수 있다.
단위원이 가지는 의미를 잠시 짚고 넘어가면 다음과 같다.
- \( z \)(=pole)이 단위원 안에(\( |z| < 1 \)) 있다면 신호가 시간이 지남에 따라 점점 감쇠: 안정
- pole이 단위원에 있으면(\( |z| = 1 \)) 단위신호가 변하지 않고 유지: 경계적 상태(특별 관리 필요)
- pole이 단위원 밖에 있을 때(\( |z| > 1 \)) 신호가 시간이 지남에 따라 폭주: 불안정
Z 변환을 이용해 주파수 응답을 구하는 순서는 다음과 같다.
- 신호의 Z 변환을 구한다.
- 주파수 응답을 얻기 위해 \( z=e^{jω} \) 를 대입한다.
- 결과가 바로 DTFT, 즉 주파수 응답이다.
주파수 응답을 얻기 위해서는 단위원 상에서 해석해야 하므로, 다음과 같이 전개할 수 있다.
$$ X(e^{j\omega}) = \frac{1}{1 - a e^{-j\omega}} $$
추가적으로 이 값에 절대값을 취하면 크기(진폭)을 알 수 있다.
다만, Z 변환과 DTFT의 상호 변환에 대한 내용은 다음과 같다.
- Z변환 → DTFT: 가능. (단, ROC가 단위원을 포함해야 한다.)
- DTFT → Z변환: 일반적으로 불가능. (DTFT는 단위원 상의 정보만 갖고 있어 전체 Z평면 상의 특성, 특히 ROC를 알 수 없다.)
여기서 ROC(Region of Convergence)란 이 무한급수가 수렴하는 \( z \)값들의 집합이다. 즉, ROC는 Z변환이 유효하게 정의되는 복소평면 상의 영역을 의미한다.
Z 변환은 다음과 같은 특정을 가지고 있다.
- 덧셈에 대해 선형(linear): 두 신호의 합의 z-변환은 각 신호의 z-변환의 합과 같다.
- 스칼라 배에 대해 선형(linear): 상수를 곱한 신호의 z-변환은, 그 상수만큼 결과에도 곱해진다.
이제 예제로 한 번 알아보자
예제
신호 \( x[n] \)에 대한 Z 변환을 구하라.
$$ x[n] = 2^n u[n] + 3^n u[n-2] $$
$$ u[n] =
\begin{cases}
1, & n \geq 0 \\
0, & n < 0
\end{cases} $$
1. 신호를 먼저 두 부분으로 분리한다.
첫 번째 항은 \( 2^n \)에 단위 계단이 곱해진 신호이며, 두 번째 항은 \( 3^n \)이지만 \( n = 2 \)부터 시작한다.
2. 각 항의 Z 변환 구하기
첫 번째항: \( \sum_{n=0}^{\infty} (2^n) z^{-n} = \frac{1}{1 - 2z^{-1}} \quad \text{(수렴조건: } |z| > 2 \text{)} \)
두 번째항: \(\sum_{n=0}^{\infty} (3^n) z^{-n} = \frac{1}{1 - 3z^{-1}} \quad \text{(수렴조건: } |z| > 3 \text{)} \)
수렴 조건은 등비수열의 수렴 조건을 적용한 것이다. 등비수열은 다음과 같이 생겼다. 단, 이번 등비수열은 \( |r| < 1 \)인 경우만 논하도록 한다.
$$ \sum_{n=0}^{\infty} r^n $$
만약 유한한 등비수열의 합이라면 다음과 같다.
$$ S_n = a \frac{1 - r^n}{1 - r} $$
무한한 등비수열의 합이라면 다음과 같을 것이다.
$$ S = \lim_{n \to \infty} a \frac{1 - r^n}{1 - r} = \frac{a}{1 - r} $$
Z 변환은 무한한 경우를 고려해야 한다.
따라서 첫 째항의 공비는 \( r = 2z^{-1} = \frac{2}{z} \)이 되고 따라서 수렴 조건은 \( \left| \frac{2}{z} \right| < 1 \)이 된다. 따라서 \( |z| > 2 \)이다. 만약 \( z \)가 이 범위를 벗어나면 발산하게 될 것이기 때문이다. 두 번째 항도 같은 방식으로 풀면 된다.
3. 전체 Z 변환
두 번째 항은 시간 이동(Time Shifting) 성질에 따라 \( x[n−k] \)의 Z 변환은 \( z^{−k} X(z) \)가 되는 성질에 근거한다.
따라서 Z 변환 결과를 다음과 같이 정리할 수 있다.
$$ \frac{1}{1 - 2z^{-1}} + z^{-2} \times \frac{1}{1 - 3z^{-1}} $$
위 결과를 더 깔끔하게 다음과 같이 정리할 수 있다.
$$ X(z) = \frac{1}{1 - 2z^{-1}} + \frac{z^{-2}}{1 - 3z^{-1}} $$
또한 ROC(수렴 영역)에서 공통 영역을 만족해야 한다는 원칙에 의해 \( |z| > 3 \)이 된다. 시각화하면 다음과 같다.
여기서 x 표시는 극점을 나타내고 있으며, 회색 음영의 바깥쪽이 바로 수렴 영역(ROC) \( |z| > 3 \)을 나타낸다. 중간의 노란 점선원은 단위원 \( |z| = 1 \)을 의미한다. 단위원은 DTFT 분석할 때 중요하지만 여기서는 ROC와 직접 연결되지는 않는다.
Z 변환의 주요 목적을 정리하자면 다음과 같다.
- 시스템 해석: 필터, 시스템의 거동을 간단히 분석할 수 있다.
- 차분방정식 → 대수방정식 변환: 복잡한 시간 영역 차분 방정식을 간단한 대수적 형태로 다룰 수 있다.
- 안정성 분석: 극점(poles)과 영점(zeros)을 이용해 시스템의 안정성 여부를 쉽게 확인할 수 있다.
- 주파수 응답 분석: \( z \)에 특정한 값을 대입하여 주파수 응답을 얻을 수 있다.
예: \( z=e^{jω} \) 이면 DTFT(Discrete-Time Fourier Transform)와 연결된다.
관련 포스팅
참고 자료
https://www.youtube.com/watch?v=4PV6ikgBShw
https://angeloyeo.github.io/2019/08/13/Z_transform.html
https://under-bridge.tistory.com/6