위성 신호의 디지털화
위성에서 수신된 신호는 원래 아날로그 신호로, 이를 처리하기 위해 디지털화 과정이 필요하다. 아날로그 신호는 A/D 변환기를 통해 디지털 신호로 변환된다. 이때, 샘플링 과정이 중요하며 샘플링 주파수는 나이퀴스트 샘플링 정리에 의해 결정된다. 즉, 신호의 최고 주파수의 두 배 이상의 샘플링 주파수를 사용해야 한다. 샘플링 주파수를 f_s라 하면 다음과 같은 조건을 만족해야 한다.
여기서 f_{\text{max}}는 신호의 최대 주파수이다.
신호의 동기화
신호를 처리하는 첫 단계는 동기화이다. 위성에서 송신된 신호는 수신기의 내부 클럭과 맞추어 동기화해야 한다. 이를 위해 캐리어 신호와 코드 신호의 동기화가 필요하다. 두 가지 동기화는 다음과 같다.
-
캐리어 동기화: 수신된 신호는 위성에서 송신될 때 이동 경로에 따라 도플러 효과로 인해 주파수 변화가 생긴다. 수신기에서는 이를 보정하여 신호의 정확한 주파수를 추출해야 한다. 이 과정을 통해 수신기는 정확한 주파수로 신호를 복원하게 된다.
-
코드 동기화: GPS 신호는 위성별로 고유의 PRN(Pseudo-Random Noise) 코드를 사용하여 송신되며, 수신기에서는 이를 사용하여 수신된 신호를 해독한다. 수신된 신호와 PRN 코드의 상관관계를 계산하여 신호의 도착 시간을 추정하고, 이로부터 거리 정보를 도출할 수 있다.
신호의 필터링
수신된 신호는 외부 잡음 및 간섭이 포함될 수 있으므로 필터링을 통해 노이즈를 제거한다. 필터링 방법으로는 저역통과 필터(Low-Pass Filter)가 주로 사용된다. 수신 신호의 대역폭이 B라고 할 때, 저역통과 필터의 차단 주파수는 B/2로 설정된다. 필터링 과정에서 다음의 전송 함수 H(f)가 적용된다.
이를 통해 대역 내 신호만 통과시키고, 외부 잡음을 제거할 수 있다.
신호의 복조
위성 신호는 캐리어 신호에 정보가 실려 전송되므로, 수신된 신호를 복조하여 데이터 신호를 추출해야 한다. GPS 시스템의 경우, 위성 신호는 두 가지 주파수 대역을 사용하여 복조된다.
- L1 대역: 1575.42 MHz
- L2 대역: 1227.60 MHz
복조 과정은 수신된 신호에서 캐리어 신호를 제거하고 정보 신호를 추출하는 과정을 포함한다. 수학적으로는 수신 신호 r(t)를 복조하는 과정에서 r(t)와 동일한 주파수를 갖는 복조 신호 \cos(2 \pi f_c t)를 곱하여 다음과 같은 형태로 표현된다.
여기서 f_c는 캐리어 주파수, s(t)는 정보 신호이다. 고주파 성분은 필터링을 통해 제거되고, 최종적으로 s(t)만 남게 된다.
상관 처리 (Correlation Processing)
GPS 수신기에서 수신된 신호는 위성에서 송신한 PRN 코드와의 상관 처리를 통해 신호를 분석하고, 각 위성으로부터의 정확한 신호 도착 시간을 측정한다. 이 과정에서 수신기에서 생성된 PRN 코드와 수신된 신호의 PRN 코드를 비교하여 상관 값을 계산한다.
상관 함수는 다음과 같은 형태로 정의된다:
여기서 r(t)는 수신된 신호, c(t)는 수신기에서 생성된 PRN 코드, 그리고 \tau는 코드 지연 시간이다. 상관 함수의 피크는 PRN 코드가 정확하게 일치하는 지점에서 나타나며, 이를 통해 위성 신호의 도착 시간을 추정할 수 있다.
코드 트래킹 루프 (Code Tracking Loop)
코드 동기화 이후, 신호가 계속해서 수신되면서 수신기의 코드 추적기가 PRN 코드의 타이밍을 지속적으로 추적해야 한다. 이를 위해 코드 트래킹 루프가 사용되며, 일반적으로 디지털 지연 잠금 루프(DLL, Delay Lock Loop)가 적용된다.
DLL은 상관 함수의 피크를 기준으로 앞서거나 뒤서 있는 두 개의 상관 값(조기 및 지연 신호)을 비교하여 PRN 코드의 정확한 타이밍을 조정한다. 조기 상관 값과 지연 상관 값을 각각 E와 L이라 하면, 두 값의 차이에 따라 타이밍 보정 신호를 계산할 수 있다.
이 타이밍 보정 값은 수신기에서 PRN 코드의 속도를 조정하여 위성 신호와의 동기화를 지속적으로 유지하게 한다.
주파수 트래킹 루프 (Frequency Tracking Loop)
도플러 효과로 인한 주파수 변화는 수신기에서 수신되는 신호의 주파수를 지속적으로 변동시킨다. 이를 보정하기 위해 주파수 트래킹 루프, 즉 주파수 잠금 루프(FLL, Frequency Lock Loop)가 사용된다. FLL은 수신 신호의 주파수 변화를 추적하여 캐리어 신호의 주파수를 동기화한다.
주파수 추적 과정에서 수신된 신호의 주파수 변화를 추정하여, 그에 맞춰 수신기의 내부 클럭을 조정한다. 주파수 변화량 \Delta f는 다음과 같은 방식으로 계산된다.
여기서 \Delta \phi는 위상 변화, \Delta t는 시간 변화이다. 이 주파수 보정 값은 수신기에서 신호의 주파수를 정확하게 추적하는 데 사용된다.
위상 트래킹 루프 (Phase Tracking Loop)
위상 동기화는 위상 잠금 루프(PLL, Phase Lock Loop)를 사용하여 이루어진다. 수신된 신호와 수신기의 캐리어 신호 간의 위상 차이를 추적하여 신호의 위상을 정확하게 추적할 수 있도록 한다. 위상 차이 \Delta \phi는 다음과 같이 표현된다.
PLL은 이 위상 차이를 보정하여, 수신기의 캐리어 신호가 수신 신호와 정확히 일치하도록 한다. PLL의 동작은 주파수 트래킹 루프와 상호 보완적으로 작용하여 위성 신호의 정확한 복원에 기여한다.
신호 검출 및 디코딩
신호의 복조와 동기화 과정을 거친 후, 수신된 정보는 실제로 디코딩되어 위치 정보를 얻기 위한 데이터로 변환된다. GPS 신호의 경우, 디코딩 과정에서는 네비게이션 메시지가 포함된 비트 스트림이 추출된다. 이 네비게이션 메시지는 위성의 위치, 시간, 궤도 정보 등을 포함하고 있으며, 이를 바탕으로 수신기는 최종적으로 위치 계산을 수행하게 된다.
네비게이션 메시지는 50 Hz의 낮은 비트 전송 속도로 송신되며, 수신기는 이를 정확하게 디코딩해야 한다. 디코딩된 데이터는 다음과 같은 주요 정보를 포함한다.
- 위성 궤도 정보(에페머리스 데이터)
- 시간 동기화 정보
- 대기 및 전리층 보정 정보
이를 기반으로 GPS 수신기는 각 위성으로부터의 신호 도착 시간을 계산하고, 이로부터 수신기의 정확한 위치를 삼변측량을 통해 추정할 수 있다.