해결책
GPS 위성은 2만 킬로미터 떨어진 곳에서 가정용 전구 정도의 전력으로 송신한다. 신호가 지구에 도달할 무렵에는 열잡음 바닥보다 약 50dB 낮아, 주변의 잡음보다 10만 배 약하다. 그래서 수신은 불가능해 보이며, 누구나 쓸 수 있는 항법 시스템은 작동하지 말았어야 했다. 그러나 신호는 어떤 날씨와 고도에서도 우리 주변에 있으며, 비행기에서도 지도 앱은 여전히 작동한다.
GPS는 이 문제를 하나의 트릭으로 해결한다. 각 위성은 느린 50비트/초 데이터 스트림을 초당 천 번 반복되는 빠른 의사난수 C/A 코드에 섞고, 수신기는 이미 그 코드를 알고 있다. 공개된 IS-GPS-200L 명세의 표 3-I에는 모든 위성의 칩핑 시퀀스가 나열되어 있다. 로컬 복제본을 생성해 들어오는 잡음과 상호상관시키면 무작위 잡음은 0으로 평균화되는 반면 실제 신호는 누적되어, 잡음 속에서 속삭임을 끌어낸다. 위성마다 다른 코드를 사용하는 코드분할 다중접속 방식 덕분에 약 30개가 하나의 대역을 공유할 수 있다.
민간용 코드가 공개되어 있고 위성이 그저 방송하고 잊는 방식이기 때문에, 누구도 접근에 요금을 매길 수 없고, 청취자의 자격을 취소할 수 없으며, 누군가 듣고 있는지조차 알 수 없다. 물리적으로 수신 가능한 속삭임에 요금소가 없다는 이 조합이, 군용 수신기를 위한 저해상도 디딤돌로 설계된 C/A 코드가 대부분의 민간 GPS의 기반이 되게 했다. 더 정밀한 군용 P 코드는 경제성이 아니라 오직 시퀀스의 비밀성으로만 보호된다.
이룬 것
민간용 코드를 공개하라: 어떤 수신기든 잡음 속에서 속삭임을 상호상관으로 끌어낼 수 있다, 무료로
왜 통했는가
수신된 잡음을 알려진 코드의 로컬 복제본과 상호상관시키면 잡음은 0으로 평균화되는 반면 신호는 누적되어, 잡음보다 50dB 낮은 방송을 들을 수 있는 수준으로 끌어올린다.
명세는 공개되어 있다: IS-GPS-200L은 각 위성의 C/A 칩핑 시퀀스를 나열하므로, 수신기를 만드는 데 역설계나 라이선스, 지불이 필요 없다.
방송하고 잊는 방식에는 계량 지점이 없다. 구독도, 인가도, 누가 듣는지 알 방법도 없으므로, 채택을 막을 수 있는 요금소가 존재하지 않는다.
초당 100만 칩 코드 아래의 느린 50비트/초 데이터 전송률은 알려진 시퀀스를 락온할 수 있을 만큼 오래 안정적으로 유지시켜, 약한 민간 채널이 쓸 만한 항법 메시지를 실어 나르게 한다.
열린 포맷은 핵심이 허가가 아닌 공개된 지식일 때 복리처럼 커진다. 요금소도 라이선스도 없다는 것은 모든 제작자가 그것에 맞춰 만들 수 있다는 뜻이며, 그 표준은 인프라가 된다.
그 후
공개 신호는 GPS를 기본 측위 유틸리티로 만들었다. 약 30개의 위성이 전 지구를 담당하며, 그 글은 세계 인구의 절반 이상이 GPS 없이 살아본 적이 없다고 언급한다. 인터페이스 명세는 공개로 유지되었다. IS-GPS-200L의 표 3-I은 여전히 모든 위성의 코드를 나열하므로, 수신기는 언제나 처음부터 만들 수 있었다. 취미 개발자들이 지금 바로 그렇게 한다. Phillip Tennen의 소프트웨어 정의 석고(gypsum) 수신기 시리즈는 2024년 4월 Hacker News에서 552점과 128개의 댓글을 받았으며, GPS를 누구나 청취할 수 있는 공개 방송으로 다루었다.
근거 확인하기
출처
- Building a GPS Receiver, Part 1: Hearing Whispers axleos.com · axleos.com ·
- Building a GPS Receiver, Part 1: Hearing Whispers (Hacker News discussion) Hacker News · news.ycombinator.com ·