기준 자료: Samir S. Soliman, Mandyam D. Srinath, Continuous and Discrete Signals and Systems, 2nd ed., Prentice Hall, 1998. 1장 Representing Signals.
신호와 시스템을 수학으로 다루는 전자공학과 2학년 과목. 이후 통신, 제어, 회로 과목이 여기서 배운 표기와 변환을 그대로 가져다 쓰기 때문에, 전자공학 전공자라면 사실상 피해 갈 수 없는 과목이다. 특별한 언급이 없는 이상 이 글의 신호는 전부 독립변수가 시간 하나뿐인 연속시간 신호다. 이산시간 신호는 DSP1의 몫이라 정의만 짚고 넘어간다. 아래 내용은 교재 1.1절부터 1.3절, 강의 슬라이드2 2번부터 9번까지에 해당한다.
신호의 정의
‘신호(signal)‘란 정보를 전달하기 위한, 검출 가능한 물리량을 말한다. 정의를 뜯어 보면 조건이 세 개다.
- 물리량이거나 물리량을 나타내는 변수여야 한다. 음성의 진폭, 화면 픽셀의 밝기, 회로의 전류 따위가 전부 여기에 든다.
- 검출 가능해야 한다3. 즉 받는 쪽에서 그 물리량을 측정할 수 있어야 한다.
- 정보를 담고 있어야 한다. 검출은 되지만 아무 정보도 없는 물리량은 신호로 치지 않는다.
쉽게 말해 물리적 의미가 붙은 함수라는 이야기다. 독립변수(함수의 입력)가 몇 개인지4는 신호마다 다르다.
| 신호 | 표기 | 독립변수 |
|---|---|---|
| 음성, 회로의 전류 $i(t)$, 전압 $v(t)$ | $A(t)$ | 시간 $t$ 하나 |
| 이미지 | $p(x, y)$ | 좌표 $x, y$ 둘 |
| 전기장 | $E(x, y, z, t)$ | 공간 좌표 셋과 시간 |
이 과목에서 다루는 것은 어디까지나 독립변수가 시간 $t$ 하나인 $x(t)$에 국한된다. 이미지 $p(x, y)$는 영상처리 과목으로 넘어가고, 동영상은 여기에 시간이 하나 더 붙은 $p(x, y, t)$가 된다.
연속시간 신호와 이산시간 신호
‘연속시간(continuous-time) 신호’는 독립변수가 실수 구간 전체에서 정의된 신호다. 여기서 continuous라는 말이 함수값이 아니라 독립변수에 붙는다는 점에 주의해야 한다5. 라디오 신호 $v(t)$는 시간 $t$가, 대기압 $p(h)$는 고도 $h$가 독립변수인데, 둘 다 실수 전체를 훑으므로 연속시간 신호가 된다. 고도처럼 시간이 아닌 독립변수라도 연속이기만 하면 같은 부류다.
‘이산시간(discrete-time) 신호’는 독립변수가 띄엄띄엄한 값만 갖는 신호다. 연속시간 신호 $x(t)$에서 $t = kT_s$인 자리의 값만 뽑아내면 $x(kT_s)$가 되는데, 이때 $T_s$6는 고정된 양의 실수이고 $k$는 정수($0, \pm 1, \pm 2, \dots$)다. 가령 $T_s = 2$면 $t = 0, \pm 2, \pm 4, \dots$에서만 값이 있다. 아래 그림에서 cyan 곡선이 모든 실수 $t$에서 값을 갖는 $x(t)$이고, magenta 점이 $t = kT_s$에서만 값을 갖는 $x(kT_s)$다. 둘을 가를 때는 함수값이 얼마나 높은지가 아니라 점이 $t$축 어디에 찍혔는지를 보면 된다.
함수의 연속성
신호는 함수이므로 신호의 연속성도 고등학교에서 배운 함수의 연속성을 그대로 가져다 쓰면 된다. 애초에 새로 배울 것이 없는 자리다. $x(t)$가 $t = t_1$에서 연속이려면 다음 두 조건이 차례로 성립해야 한다.
- 좌극한 $x(t_1^-)$와 우극한 $x(t_1^+)$가 같다. 이때 비로소 $t_1$에서 극한이 존재한다.
- 그 극한값이 함수값 $x(t_1)$과 같다.
모든 $t$에서 연속이면 continuous 신호라 하고, 불연속점이 유한 개면 ‘piecewise continuous(조각 연속)’7 신호라 한다. 바꿔서 말하자면 불연속점이 무한 개면 piecewise continuous도 아니라는 이야기다.
불연속점에서의 함수값
흔히 불연속점에서는 함수값이 없다고 배우는데, 일반 수학에서는 실제로 그 값을 비워 둔다. 그런데 이 교재는 불연속점 $t_1$의 함수값을 좌극한과 우극한의 평균8으로 못 박는다.
$$ x(t_1) = \frac{1}{2}\left[x(t_1^+) + x(t_1^-)\right] $$‘단위계단함수(unit step function)’ $u(t)$는 $t < 0$에서 0, $t > 0$에서 1인 함수다. $t = 0$에서 좌극한 0과 우극한 1이 다르니 극한이 없고, continuous가 아니라 piecewise continuous가 된다. 여기에 평균 약속을 적용하면 $u(0) = \tfrac{1}{2}$다. 아래 그림 왼쪽에서 빈 원 두 개가 좌극한 $a$와 우극한 $b$이고, 채운 점이 교재가 정한 함수값 $\tfrac{a + b}{2}$다. 오른쪽에 같은 규칙을 대면 $a = 0$, $b = 1$이라 $u(0) = \tfrac{1}{2}$가 나오는 것이다.
예를 들어 $x(t) = 2u(t - 1) - u(t - 3)$은 $t < 1$에서 0, $1 < t < 3$에서 2, $t > 3$에서 1이다. 불연속점은 $t = 1, 3$이고, $x(1) = \tfrac{0 + 2}{2} = 1$, $x(3) = \tfrac{2 + 1}{2} = \tfrac{3}{2}$가 된다. 불연속점이 두 개뿐이므로 piecewise continuous다.
사각 펄스와 펄스 트레인
‘사각 펄스(rectangular pulse)’ $\mathrm{rect}(t/\tau)$는 $|t| < \tfrac{\tau}{2}$에서 1, $|t| > \tfrac{\tau}{2}$에서 0인 함수다.
$$ \mathrm{rect}(t/\tau) = \begin{cases} 1, & |t| < \tau/2 \\ 0, & |t| > \tau/2 \end{cases} $$높이는 1로 고정이고, 파라미터 $\tau$9가 밑변 폭을 정한다. 이름이 사각 펄스지 실제로 조절할 수 있는 것은 폭 하나다. 참고로 rect 함수의 정의는 책마다 조금씩 달라서, 밑변이 $\tau$이고 원점을 중심으로 좌우 $\tfrac{\tau}{2}$씩 벌어진 이 형태는 이 교재의 약속이다. 불연속점은 $t = \pm\tfrac{\tau}{2}$ 두 곳이므로 piecewise continuous이고, $t$는 실수 전체에서 정의되므로 연속시간 신호다.
$\mathrm{rect}(t/\tau)$를 일정 간격으로 시간 이동시켜 죽 더하면 ‘펄스 트레인(pulse train)’10이 된다. 폭 1인 펄스를 간격 2로 반복한 트레인은 다음과 같다. $n$은 모든 정수를 돈다.
$$ x(t) = \sum_{n=-\infty}^{\infty} \mathrm{rect}(t - 2n) $$불연속점이 $t = 2n \pm \tfrac{1}{2}$에 무한 개 있으니 continuous도, piecewise continuous도 아니다. 물론 $t$는 실수 전체에서 정의되므로 연속시간 신호인 것은 변함없다. 펄스를 유한 개로 잘라내면 불연속점도 유한 개가 되어 piecewise continuous로 돌아온다.
continuous와 continuous-time의 구분
두 용어는 이름만 비슷할 뿐 보는 축이 다르다. 이름이 비슷하다는 이유 하나로 그야말로 매번 헷갈리는 자리이니 주의하자.
| 용어 | 축 | 판정 기준 |
|---|---|---|
| continuous / piecewise continuous | 세로축(함수값 $x$) | 극한 조건이 깨지는 점의 개수 |
| continuous-time / discrete-time | 가로축(독립변수 $t$) | $t$가 실수 구간 전체에서 정의되는가, $t = kT_s$에서만 정의되는가 |
| 신호 | 함수값 성질 | 독립변수 성질 |
|---|---|---|
| $\sin t$ | continuous | continuous-time |
| 사각 펄스, $u(t)$ | piecewise continuous | continuous-time |
| 무한 펄스 트레인 | 불연속점 무한 개, piecewise continuous 아님 | continuous-time |
| $x(kT_s)$ | 함수값 성질은 따지지 않음 | discrete-time |
즉 불연속점이 몇 개든 $t$축이 실수 전체이면 연속시간 신호다. 이 과목의 신호는 전부 연속시간 신호이고, 그 안에서 continuous냐 piecewise continuous냐만 따지게 된다. 괜히 두 용어를 나란히 놓고 비교하는 것이 아니다.
연습 문제 1
$x(t) = 3\,\mathrm{rect}\!\left(\frac{t - 4}{2}\right)$에 대해 다음을 구한다.
(a) 값이 3인 $t$ 구간 (b) 불연속점 (c) 교재의 정의에 따른 불연속점에서의 함수값 (d) $T_s = 1$로 샘플링한 $x(kT_s)$에서 값이 0이 아닌 정수 $k$ 전부
풀이. $\mathrm{rect}(t/\tau)$의 정의에서 $\tau = 2$이고 $t$ 자리에 $t - 4$가 들어갔으므로 $|t - 4| < 1$, 즉 $3 < t < 5$에서 값이 3이다. 불연속점은 $t = 3, 5$다. 두 점 모두 좌극한과 우극한이 0과 3이므로 $x(3) = x(5) = \tfrac{0 + 3}{2} = \tfrac{3}{2}$가 된다. $T_s = 1$이면 $t = k$이니 $k = 3, 4, 5$에서 값이 각각 $\tfrac{3}{2}, 3, \tfrac{3}{2}$이고, 나머지 $k$에서는 0이다.
주기 신호와 기본 주기
‘주기(periodic) 신호’란 어떤 양수 $T$에 대해 모든 $t$에서 다음이 성립하는 연속시간 신호를 말한다.
$$ x(t) = x(t + nT), \qquad n = 1, 2, 3, \dots $$모든 $t$에서 성립해야 하므로 신호가 $-\infty$부터 $+\infty$까지 있다고 가정할 수밖에 없다11. $T$가 주기면 $2T$, $3T$, $4T$도 당연히 주기다. 정의대로라면 주기가 무한히 많은 셈이라 대표를 하나 골라야 하는데, 그중 가장 작은 양수 $T$를 ‘기본 주기(fundamental period)’12라 하고 $T_0$로 쓴다. 기본 주기가 2인 신호는 4와 6도 주기로 갖는 것이다. 이런 $T$가 아예 없는 신호는 ‘비주기(aperiodic) 신호’라 한다.
사인파
실수값 사인파는 파라미터 셋으로 정해진다.
$$ x(t) = A\sin(\omega_0 t + \phi) $$$A$는 진폭이고, $x(t)$는 $-A$와 $A$ 사이를 오간다. $\omega_0$는 ‘각주파수(radian frequency)‘로 단위는 rad/s다. $\phi$는 초기 위상13이고 단위는 rad다. 각주파수와 주파수 $f_0$(단위 Hz)14의 관계, 그리고 기본 주기는 다음과 같다.
$$ \omega_0 = 2\pi f_0, \qquad T_0 = \frac{1}{f_0} = \frac{2\pi}{\omega_0} $$아래 그림에서 $A$는 세로 범위를, $T_0$는 위상이 같은 두 점 사이의 가로 거리를, $\phi$는 $t = 0$에서 곡선이 출발하는 높이 $A\sin\phi$를 정한다. 다시 말해 사인파 하나를 특정하려면 이 셋을 전부 알아야 하고, 반대로 셋을 알면 사인파는 하나로 정해진다.
하모닉
기본 각주파수 $\omega_0$가 있을 때, 각주파수가 정확히 $k\omega_0$인 사인파를 ‘$k$번째 하모닉(harmonic)’15이라 한다. $k$가 곧 하모닉 번호이고 1부터 센다.
$$ \omega_k = k\,\omega_0, \qquad f_k = k f_0, \qquad T_k = \frac{2\pi}{k\,\omega_0} = \frac{T_0}{k} $$$\omega_0 = 2\pi$면 첫째, 둘째, 셋째 하모닉의 각주파수는 $2\pi$, $4\pi$, $6\pi$이고 주기는 $1$, $\tfrac{1}{2}$, $\tfrac{1}{3}$ s다. 아래 그림에서 보듯 $k$가 커질수록 같은 $T_0$ 안에서 $k$번 진동하고, $t = T_0$에서 세 곡선이 한꺼번에 출발점으로 돌아온다. 따라서 하모닉을 몇 개를 더하든 합의 기본 주기는 $T_0$인 것이다.
그렇다면 사인파 여러 개를 더한 신호가 주기 신호인지, 기본 주기가 얼마인지는 어떻게 아는가? 각주파수만 보면 된다. 주기 쪽으로 가면 분수의 최소공배수를 쌩으로 구해야 해서 계산이 길어지고, 각주파수 쪽으로 가면 정수의 최대공약수 하나로 끝나는 것이 이유다. 합의 기본 각주파수는 각 항 각주파수의 최대공약수16이고, 각 항의 하모닉 번호는 그 항의 각주파수를 $\omega_0$로 나눈 값이다.
$$ x(t) = \cos(4\pi t) + \sin(6\pi t): \quad \omega_0 = 2\pi, \quad T_0 = 1 \text{ s}, \quad k = 2, 3 $$참고로 각주파수의 비가 무리수면 최대공약수가 없고, 이 경우 합은 비주기 신호가 된다. 겉보기에는 멀쩡한 사인파 두 개를 더해 놓고도 주기가 없다고 답해야 하는 경우가 바로 이것이다.
조화 관계 복소지수
하모닉을 사인파 대신 복소지수17로 쓰면 다음 집합이 된다. 굳이 복소수까지 끌어들이는 것은 $\cos$과 $\sin$을 식 하나에 담기 위해서다.
$$ \phi_k(t) = e^{\,jk\omega_0 t}, \qquad k = 0, \pm 1, \pm 2, \dots $$$k \neq 0$이면 각주파수 $|k|\omega_0$, 기본 주기 $\tfrac{2\pi}{|k|\omega_0}$인 주기 신호다. 절댓값은 $k$가 음수일 때도 각주파수와 주기를 양수로 두기 위한 것이고, $k$가 양수면 하모닉 식과 똑같다. 모든 $\phi_k(t)$는 $T_0 = \tfrac{2\pi}{\omega_0}$를 공통 주기로 갖는다. $k = 0$18이면 $\phi_0(t) = 1$, 즉 상수라서 주기라는 것 자체가 정의되지 않는다.
오일러 공식으로 실수부와 허수부를 갈라 놓으면 복소평면(가로축 실수부, 세로축 허수부) 위의 점 하나가 된다.
$$ e^{\,j\omega_0 t} = \cos\omega_0 t + j\sin\omega_0 t $$시각 $t$의 점은 $(\cos\omega_0 t, \sin\omega_0 t)$이고 크기는 $\sqrt{\cos^2 + \sin^2} = 1$이다. $t = 0$에서 $(1, 0)$을 출발해 $t$가 늘수록 반시계 방향으로 돌다가 $\omega_0 t = 2\pi$가 되는 순간 출발점으로 돌아온다. 어느 $t$에서든 반지름 1인 단위원 위에 있으므로, 극좌표로 쓰면 크기 1에 각도 $\omega_0 t$라고 생각하면 된다.
연습 문제 2
$x(t) = 2\cos(6\pi t) + \sin(9\pi t)$에 대해 다음을 구한다.
(a) 기본 각주파수 $\omega_0$와 기본 주기 $T_0$ (b) 각 항의 하모닉 번호 (c) 첫째 하모닉의 각주파수 $\omega_1$과 주기 $T_1$
풀이. 각주파수 $6\pi$와 $9\pi$의 최대공약수는 $3\pi$이므로 $\omega_0 = 3\pi$ rad/s, $T_0 = \tfrac{2\pi}{3\pi} = \tfrac{2}{3}$ s다. $\tfrac{6\pi}{3\pi} = 2$, $\tfrac{9\pi}{3\pi} = 3$이니 $2\cos(6\pi t)$가 둘째, $\sin(9\pi t)$가 셋째 하모닉이다. 첫째 하모닉은 $\omega_1 = \omega_0 = 3\pi$ rad/s, $T_1 = T_0 = \tfrac{2}{3}$ s가 된다.
Digital Signal Processing, 디지털 신호처리. 이산시간 신호의 샘플링, 이산 푸리에 변환, z 변환을 다루는 후속 과목이다. ↩︎
슬라이드 번호는 강의 슬라이드 “1. Representing Signals”(임승찬, 홍익대학교 전자전기공학부)의 우측 상단 인쇄 번호다. ↩︎
검출 가능하다는 것은 측정 장치나 감각 기관이 그 양을 읽어낼 수 있다는 뜻이다. 음성은 귀와 마이크가, 화면 밝기는 눈과 카메라가, 전류는 전류계가 검출한다. ↩︎
독립변수의 개수가 곧 신호의 차원이다. 음성은 시간 하나, 이미지는 좌표 둘, 동영상은 좌표 둘에 시간, 전기장은 공간 좌표 셋에 시간이다. 전자기학이 벡터 미적분과 여러 좌표계를 요구하는 이유가 바로 이 독립변수 개수 때문이다. ↩︎
판정 기준은 가로축이다. 함수값이 세로축에서 아무리 많이 끊겨도 정의역이 실수 전체면 연속시간이고, 정의역이 $kT_s$처럼 띄엄띄엄이면 이산시간이다. ↩︎
$T_s$는 sampling period(샘플링 주기)이고, 역수 $f_s = \tfrac{1}{T_s}$가 sampling frequency(샘플링 주파수, 초당 샘플 수)다. 교재는 $T_s$를 “a fixed positive real number"라고만 적어 둔다. ↩︎
교재 원문은 “piecewise continuous if it has only finite discontinuities"다. 이 수업은 finite를 불연속점의 개수로 읽는다. 수학 문헌에서는 각 불연속점의 점프 크기가 유한하다는 뜻으로도 쓰이는데, 그 해석대로라면 무한 펄스 트레인도 piecewise continuous에 든다. ↩︎
일반 해석학은 불연속점의 값을 정의하지 않고 비워 둔다. 좌우극한의 평균으로 정하는 약속은 푸리에 급수가 점프 불연속점에서 수렴하는 값과 정확히 같아서, 뒤 장에서 급수와 원 신호가 모든 점에서 일치하게 해 준다. 약속 하나로 뒤의 골치 아픈 예외가 전부 사라지는 셈이다. ↩︎
$\tau = 10^8$이면 밑변이 $-5 \times 10^7$부터 $5 \times 10^7$까지이고, $\tau = 10^{-7}$이면 $\pm 5 \times 10^{-8}$이며, 높이는 두 경우 모두 1이다. 폭을 0으로 보내면서 높이를 $\tfrac{1}{\tau}$로 키워 넓이 1을 유지한 극한이 슬라이드 26번의 단위 임펄스다. ↩︎
슬라이드 5번의 트레인은 폭 1인 펄스가 간격 2로 반복되어 $t = 0, \pm 1, \pm 2, \dots$에서 불연속이다. 여섯 개까지 그린 그림은 불연속점이 12개라 piecewise continuous이지만, 무한히 이어지는 신호는 불연속점이 무한 개라 piecewise continuous가 아니다. 그림이 어디서 잘렸는지에 따라 답이 갈리는 것이다. ↩︎
유한 구간만 그린 그래프로는 주기 여부를 판정할 수 없다. 그래프 밖에서도 같은 모양이 이어진다는 가정이 있어야 $x(t) = x(t + T)$를 모든 $t$에 대해 말할 수 있는 것이다. ↩︎
기본 주기의 역수 $f_0 = \tfrac{1}{T_0}$가 ‘기본 주파수(fundamental frequency)‘이고, $\omega_0 = \tfrac{2\pi}{T_0}$가 기본 각주파수다. 아래첨자 0은 하모닉 번호가 아니라 기본이라는 표시일 뿐이며, 첫째 하모닉의 주기 $T_1$과 $T_0$는 같은 값이다. ↩︎
$\phi$는 곡선을 시간축에서 $-\tfrac{\phi}{\omega_0}$만큼 옮긴다. $\phi > 0$이면 왼쪽으로 옮겨지므로 $t = 0$에서 이미 $A\sin\phi$만큼 올라가 있다. ↩︎
Hz는 1/s, 즉 1초당 반복 횟수다. 각주파수 $\omega_0$는 1초당 진행하는 각도(rad/s)이므로 한 바퀴 $2\pi$ rad으로 나누면 1초당 바퀴 수 $f_0$가 된다. 두 단위는 $2\pi$를 곱했는지로만 갈린다. ↩︎
음악에서 기본음의 정수배 진동수를 갖는 배음을 harmonic이라 부르던 데서 온 말이다. 괜히 정수배로 정의하는 것이 아니며, 이유는 공통 주기에 있다. $T_k = \tfrac{T_0}{k}$는 $T_0$의 약수이므로 하모닉을 어떻게 더해도 $T_0$가 합의 주기로 남는다. 2.5배처럼 정수가 아닌 배수는 $T_0$를 공통 주기로 갖지 못한다. 3장의 푸리에 급수는 주기 신호를 이 하모닉들의 가중합으로 쓰는 것이다. ↩︎
각주파수에 $\pi$가 붙어 있으면 $\pi$를 떼고 정수의 최대공약수를 구한 뒤 다시 붙이면 된다. $4\pi$와 $6\pi$는 4와 6의 최대공약수 2에 $\pi$를 붙여 $2\pi$다. 주기 쪽으로 계산하면 두 주기의 최소공배수가 되고, 결과는 같다. ↩︎
사인파는 함수값이 실수(real-valued)이고 복소지수는 함수값이 복소수(complex-valued)다. 복소지수 하나에 $\cos$과 $\sin$이 실수부와 허수부로 같이 들어 있기 때문에, 3장 푸리에 급수는 $\cos$과 $\sin$ 대신 $e^{jk\omega_0 t}$를 항으로 쓴다. 음수 $k$를 허용하는 것도 $e^{jk\omega_0 t}$와 $e^{-jk\omega_0 t}$를 더해 실수 $\cos$을 만들기 위해서다. ↩︎
$k = 0$을 넣으면 지수가 0이라 $e^0 = 1$이다. 상수는 어떤 $T$에 대해서도 $x(t) = x(t + T)$를 만족하므로 주기가 없는 게 아니라 전부 주기인 셈이고, 그래서 가장 작은 양의 주기를 고를 수 없다. 교재는 주기 성질을 $k \neq 0$에만 적용한다. ↩︎