基于GPS的恒溫晶振頻率校準系統的設計與實現
2 系統設計
系統以FPGA作為控制器,芯片選用Altera公司的EP3C25E144C8,內部具有豐富的邏輯資源。開發平臺是Quartus II集成開發環境,采用Vetilog HDL語言對各功能模塊進行邏輯描述,并完成了邏輯編譯、邏輯化簡、綜合及優化、邏輯布局布線,并使用Modelsim、Signalnap II進行邏輯仿真,實現系統的設計要求,系統的原理框圖如圖2所示。本文引用地址:http://www.104case.com/article/192756.htm
2.1 數字鎖相環
恒溫晶振的頻率調整功能是靠數字鎖相環(DPLL)實現的,同模擬鎖相環類似,它屬于閉環的控制系統,由鑒相器(PD)、環路濾波器(LPF)、D/A轉換器、壓控恒溫晶振(OCXO)組成。系統啟動后,在FPGA內部,數字鑒相器模塊首先以GPS接收機輸出的10 kHz時鐘信號作為基準源,對恒溫晶振整形并經過分頻后的10 kHz信號進行快速鑒相,用恒溫晶振倍頻后的300 MHz時鐘對相位差進行量化,得到具體的超前或滯后數據,進而傳遞給環路濾波器模塊,設置抖動門限參數,若相位超前或滯后量達到門限值,則迅速通過D/A轉換器,對晶振的壓控端電壓進行相應調節。此方法可令晶振頻率快速接近10 MHz,但是恒溫晶振頻率的改變需有一定的響應時間,快速調整壓控端的電壓會產生過調現象,頻率穩定度不佳。
為進一步提高晶振頻率的精度與穩定性,結合恒溫晶振短期穩定度高的特點,在數字鑒相器模塊中,以GPS的1PPS信號為基準,測量1PPS與恒溫晶振分頻出的1Hz信號的相位差。依據GPS沒有累積誤差的優點,在環路濾波器模塊中采用滑動平均濾波法來降低GPS秒脈沖對測量帶來的干擾,設計FIFO存儲器來配合計算出最近200 s的平均相位差,通過不斷對比短時的相位差及長時的平均相位差,分析相位差的長期與短期變化動態,實時調節恒溫晶振的控制電壓,保證晶振輸出穩定且準確的10 MHz時鐘信號。晶振頻率調整的過程如圖3所示,此方法簡單實用,可有效抑制1PPS抖動對晶振造成的影響。
2.2 電路設計
D/A芯片選用TI公司TLV5616,它是低功耗單片12位串行數模轉換器,分辨率為4096,該芯片采用三線制(SCLK、SYNC、DIN)串行接口,SCLK方波信號為下降沿時,TLV5616讀取DIN的電平信號,轉化成相應的電壓送往恒溫晶振,用于晶振的微調,晶振頻率調整硬件電路如圖4所示。
2.3 授時功能
在許多現實的應用中需要毫秒、微秒、納秒等這些更小的時間單位量,但是GPS接收機一般只能提供最小時間單位為秒的UTC時間,本系統在GPS基礎上設計了授時功能。
授時工作流程如圖5所示,系統在FPGA中設計串口數據模塊來接收GPs的SD01管腳發出的GPRMC格式數據,并將其存放在FPGA內部的雙口RAM中,通過串口數據模塊及數字鑒相器模塊可以判斷GPS接收機是否正常工作。若識別出準確的UTC時間和1PPS信號后,授時模塊迅速從RAM中提取最新時間數據進行處理,得到初始時間值,當下一個1PPS上升沿到來后,系統在初值的基礎上開始完全依靠高穩恒溫晶振自行走時,并每隔5秒與準確的1PPS信號進行校對,如果發現本系統的時間與1PPS不同步,那么系統時間將會短暫停滯或快速跳進,達到與1PPS同步,保證時間信息輸出的連續性與準確性;若GPS接收機非正常輸出1PPS信號,則不進行校對,直到1PPS正常后再恢復校對功能。
評論