이산화된 디지털 신호를 시간영역에서 time shift하면 주파수영역에서는 어떤 일이 벌어질까?
신호A를 시간영역에서 shitft 하고, shift 된 신호를 B라고 하자. 신호 B를 주파수영역에서 표현하면 어떻게 되는가?
결론을 말하면
신호B를 주파수영역에 표현한 것 = 신호 A를 주파수 영역에서 표현된 신호에 복소수 사인파를 곱한 것
아날로그 신호의 퓨리에 변환으로 위 내용을 증명하면 다음과 같고, 추가로 cos 신호를 1/4초만큼(1Hz에서 위상을 pi/2만큼 이동) shift하면 주파수 영역에는 무슨 일이 일어나는지를 정리하였다.
위의 cos 신호를 1/4초만큼(1Hz에서 위상을 pi/2만큼 이동) shift하면 주파수 영역에는 무슨 일어 나는가 ?
-> sin 신호를 주파수 영역에서 표현한 것이 된다.( cos 신호의 위상을 pi/2만큼 이동한 것이 sin 신호이기 때문이다. )
시간영역의 신호를 DFT를 이용하여 주파수 영역으로 표현하면 IQ 공간에서 표현된다.
위 증명 과정을 통해
cos 신호를 주파수영역에서 표현하면 IQ 공간의 I 평면에서 표시되며,
sin 신호를 주파수 영역에서 표현하면 IQ 공간의 Q 평면에서 표시되는 것을 알 수 있다.
시간영역에서 신호를 time shift하였을 때 주파수 영역에서 어떤 변화가 생기는지 gnuradio 시뮬레이션을 통해 확인하였다.
wirelesspi - 1g timeshift effect 예제를 참고하였다.
시간영역 신호가 임펄스 신호인 경우 시뮬레이션
시간 영역 신호가 임펄스 신호인 경우 시뮬레이션이다.
보통 사용자가 보는 스펙트럼은 FFT 모듈의 계산 결과를 shift 한 것이다.
시간영역에서 신호를 time shift하면 주파수 영역에서 표현된 신호에는 복소수 사인파가 곱해진다는 것을 헷갈리지 않게 보여주기 위해서 이번 시뮬레이션에서는 FFT 모듈의 shift를 No로 하였다.
시간영역의 임펄스 신호를 주파수 영역에서 표현하면 1이다.
복소수 사인파 신호는 오일러 공식을 통해 다음과 같이 표현된다.
DFT에 입력된 신호의 데이터 개수가 32개라면, 시간영역의 임펄스 신호는 주파수 영역에서 크기가 같고, 주파수가 다른 복소수 사인파 32개로 표현되는 것을 볼 수 있다.
임펄스신호를 time shift 할 때마다 주파수영역에서는 어떤 변화가 생길까?
다음 그림과 같이 임펄스 신호를 time shift 할때마다 주파수영역에는 스펙트럼의 각 bin마다 복소수 사인파 신호를 곱한것과 같게 된다.
time shift n= 1, fft 개수 N=32이면 주파수 영역에서 다음의 복소수 사인파가 곱해진다.
time shift n= 2, fft 개수 N=32이면 주파수 영역에서 다음의 복소수 사인파가 곱해진다.
time shift n= 4, fft 개수 N=32이면 주파수 영역에서 다음의 복소수 사인파가 곱해진다.
time shift n= 16, fft 개수 N=32이면 주파수 영역에서 다음의 복소수 사인파가 곱해진다.
시간영역 신호가 cosine 신호인 경우 시뮬레이션
시간영역 신호가 cosine 신호라면 주파수 영역에서는 2개의 임펄스 신호로 표현된다. cosine 신호는 2개의 복소수 사인파로 구성되어 있다는 의미이다.
cosine 신호를 delay하면 2개의 복소수 사인파가 있다는 것은 똑같으나 2개의 임펄스 모양의 크기값과 IQ 값이 변경된다.
크기 변화는 다음 공식에 의해 결정된다.
참고자료 : The DFT Magnitude of a Real-valued Cosine Sequence - Rick Lyons (dsprelated.com)
시간영역에서 n0만큼 shift했다면 주파수 영역에서는 어떻게 될까?
다음과 같이 복소수 사인파가 곱해진다.
8번 time shift한다.
cos함수를 8번 time shift하여 cos함수의 위상을 pi/2만큼 움직였다.
주파수 영역에서는 위와 같이 복소수 사인파가 곱해졌다.
즉 sin파를 주파수 영역에서 표현한것 과 같게 된다.
위 과정을 시뮬레이션을 통해 확인해보았다.
cos함수를 8번 time shift하여 cos함수의 위상을 pi/2만큼 움직였더니
주파수영역에서는 다음과 같은 복소수 사인파가 곱해진다.
cos함수를 16번 time shift하여 cos함수의 위상을 pi만큼 움직였다.
주파수영역에서는 다음과 같은 복소수 사인파가 곱해진다.
'Gnuradio' 카테고리의 다른 글
FIR filter - window 함수 그리고 실제로 구현가능한 Low pass filter (0) | 2023.04.09 |
---|---|
Convolution 수식을 보는 2가지 관점 (0) | 2023.04.03 |
gnuradio - sampling and aliasing (0) | 2023.03.05 |
gnuradio 시뮬레이션 - fft example 4, fft 결과의 주파수 분해능은 얼마가 될까? (0) | 2023.03.01 |
gnuradio 시뮬레이션 - fft example 3 (신호의 시작 위상이 다르면 DFT 결과는?) (0) | 2023.03.01 |