摘要

Compared to their single frequency counterparts, dual frequency receivers are intrinsically immune to ionospheric error and converge faster in RTK (Real Time Kinematic). Although dual frequency software receivers were reported almost a decade ago [1], there is no open-source in the public domain. This paper presents the design, implementation and test results of an open-source real-time L1/L2 software defined receiver (SDR). This work is an extension to gps-sdr [2], which is an open-source GPS L1 C/A real-time receiver. It accepts input IF (Intermediate Frequency) samples from either USRP1 (Universal Software Radio Peripheral) mother board with one DBSRX daughter board from Ettus Co., Ltd or GN3SV2 dongle from University of Colorado. Firstly, we use clock-tamer, an open-source GPS-disciplined clock to remove the instability of the on-board TCXO (Temperature Compensated Crystal Oscillator) of USRP1. TCXO of USRP daughter board is reported quite unstable [3]. For example, the TXCO on board RFX series is 2.5 ppm (parts per million) rated, equivalent to nearly 4 kHz frequency deviation. Clock-tamer outputs a clock signal with stability of 0.28 ppm (without GPS) and 50 ppb (parts per billion) (with GPS) [4]. For demonstration purposes (i.e. not used in applications such as ionosphere scintillation monitoring), the frequency error that remains using Clock-tamer is tolerable. Secondly, we coded and tested its ability to output carrier phase. Thirdly, with the official announcement of L2 CNAV broadcasting on April 28th, 2014 [5], civil users have a new signal at a different frequency from L1. New code to process L2 CNAV were also developed and tested in this regard. Finally, we coded the processing algorithms for data coming from dual channels.