Global Navigation Satellite System (GNSS) Software Defined Radio (SDR)은 Radio Frequency (RF) front-end를 제외한 모든 신호 처리부를 소프트웨어로 구성한 수신기 기술이다. 제조 과정 이후로 신호처리 구조 및 기능 등이 고정되는 하드웨어 수신기와 다르게 SDR은 소프트웨어로 구성되어 있으므로 태생적으로 재구성 기능을 갖는다. 이때 신호처리 구조 및 데이터 구조체 등의 적절한 설계를 통하여 이러한 SDR의 재구성 기능을 극대화할 수 있다. 이렇게 설계된 SDR은 구조적인 변경 없이 소스 코드 혹은 Graphical User Interface (GUI) 형태로 제공되는 사용자 설정의 변경만으로 전혀 다르게 동작하게 되므로 사용자는 본인의 목적에 적합하게 SDR을 변형하여 사용할 수 있다.
본 논문에서는 재구성 기능을 극대화하는 방향으로 설계된 완전 재구성 가능한 다중 위성군/주파수 GNSS SDR의 설계 및 개발된 내용을 소개한다. SDR의 재구성 기능에 대한 개념 소개 및 이를 강화하기 위하여 설계 시에 고려해야 할 사항 등에 대하여 설명한다. 그 후, 설계된 SDR의 소프트웨어 구성을 상세하게 설명한다. 먼저 SDR의 GUI 구성, 입력 파라미터의 종류 및 의미, 출력 가능한 신호처리 결과, SDR과 GUI 사이의 상호작용 방법 등에 대하여 설명한다. 이어서 SDR이 동작을 시작하기 위하여 수행하는 초기화와 이때 초기화되는 구조체 및 세부 필드 목록을 소개한다. SDR의 신호 획득, 신호 추적, 항법에 걸쳐서 세부 함수의 구성, 각 함수의 역할, 함수에서 사용하는 파라미터, 함수의 신호처리 방식 등에 대하여 다룬다.