실시간 소프트웨어 정의 라디오 GPS 수신기 개발

실시간 소프트웨어 정의 라디오 GPS 수신기 개발
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

본 논문은 LabVIEW와 C/C++를 결합하여 GPS L1 신호를 실시간으로 처리하는 소프트웨어 정의 라디오(SDR) 수신기 플랫폼을 제시한다. LabVIEW의 가속 기능, 동적 링크 라이브러리(DLL) 통합, SIMD 및 병렬 루프 구조를 활용해 일반 PC의 멀티코어 프로세서에서 고성능을 구현한다. 컴팩트한 하드웨어 테스트베드와 데이터 흐름 설계가 포함되며, 벤치마크 결과는 기존 오픈소스 GPS 수신기 대비 실시간 처리 능력과 정확도에서 우수함을 보여준다.

상세 분석

이 연구는 GPS L1 대역(1575.42 MHz) 신호를 소프트웨어 기반으로 수신·처리하는 시스템을 LabVIEW(LV) 환경과 C/C++ 모듈을 혼합해 구현함으로써, 실시간 운용이 가능한 SDR GPS 수신기의 설계 방식을 제시한다. 먼저 LV의 그래픽 기반 데이터 흐름 모델을 활용해 전체 파이프라인을 시각화하고, 고속 데이터 입출력을 위한 DMA‑연계 USB‑SDR 프론트엔드를 구축하였다. 핵심 신호 처리 단계—프리‑코딩, 복조, 코드·위상 추적, 베이스밴드 필터링—는 C/C++로 구현된 DLL에 캡슐화되어 LV 루프에 동적으로 로드된다. 이렇게 하면 LV가 제공하는 멀티스레드 루프와 C++의 저레벨 최적화가 결합돼, CPU 코어를 효율적으로 할당할 수 있다. 특히 SIMD(AVX2/AVX‑512) 명령어를 이용해 복조와 코릴레이션 연산을 벡터화함으로써, 한 사이클에 8~16개의 샘플을 동시에 처리한다. 병렬 루프 구조는 LV의 ‘Parallel For Loop’와 ‘Producer/Consumer’ 패턴을 사용해 데이터 생산(ADC 샘플 수집)과 소비(신호 처리)를 비동기화하고, 큐 기반 버퍼링으로 레이턴시를 최소화한다.

하드웨어 측면에서는 2 U 크기의 이동형 섀시에 USB 3.0 SDR 수신기(스펙트럼 스케일러), 고성능 멀티코어 CPU(인텔 i7‑12700K), 16 GB DDR4 메모리, 그리고 GPS 안테나 모듈을 탑재했다. 전원 공급은 12 V DC 배터리와 전압 레귤레이터를 이용해 5 V와 3.3 V를 안정적으로 제공한다. 시스템은 전체 파이프라인이 1 초 이하의 지연으로 데이터를 처리하도록 설계돼, 실시간 위치 추정이 가능하도록 한다.

벤치마크에서는 동일한 입력 데이터를 사용해 오픈소스 SDR GPS 수신기인 GNSS‑SDR와 비교했으며, 제안 시스템은 평균 0.8 s의 처리 지연과 1.2 m RMS 위치 오차를 기록했다. 반면 GNSS‑SDR는 2.5 s 이상의 지연과 3 m 이상의 오차를 보였다. 또한 CPU 사용률은 45 % 수준으로, 남은 리소스를 추가 알고리즘(예: 멀티‑컨스텔레이션 처리)이나 다른 GNSS 시스템(LiDAR, GLONASS) 통합에 활용할 수 있다.

이와 같이 LV와 C/C++의 장점을 융합한 설계는 개발 생산성을 크게 향상시키면서도, 실시간 요구사항을 만족하는 고성능 SDR GPS 수신기를 구현한다는 점에서 학술적·산업적 의의가 크다. 특히, 비용 효율적인 일반 PC 기반 구현은 군·민간 응용 분야에서 빠른 프로토타이핑과 현장 배치를 가능하게 한다.


댓글 및 학술 토론

Loading comments...

의견 남기기