文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2011)10-0060-03
現(xiàn)有的射頻頻率源大多采用恒溫晶振作為頻標(biāo),,以獲得比較好的頻率短期穩(wěn)定度,但是恒溫晶振的長(zhǎng)期穩(wěn)定度不能保證,,存在累積誤差,,需要定期校準(zhǔn),。本設(shè)計(jì)利用GPS秒脈沖沒(méi)有累計(jì)誤差的特點(diǎn),通過(guò)測(cè)量本地晶振與GPS秒脈沖的頻率以及相位誤差,,將誤差進(jìn)行卡爾曼濾波后送入PI調(diào)節(jié)器,,并將得到的誤差轉(zhuǎn)為DAC的輸入值來(lái)調(diào)整本地晶振的輸出頻率,從而獲得一個(gè)長(zhǎng)期與短期穩(wěn)定度都很好的頻標(biāo)[1],。該模塊的alce主要在FPGA內(nèi)部實(shí)現(xiàn),降低了規(guī)模,,便于其集成于與其他通信,、測(cè)量系統(tǒng)中。
1 系統(tǒng)設(shè)計(jì)
系統(tǒng)總體設(shè)計(jì)方案如圖1所示,,其中GPS接收模塊可以輸出由GPS信號(hào)中的秒脈沖信號(hào),。在FPGA模塊中,實(shí)現(xiàn)了一個(gè)由計(jì)數(shù)器和數(shù)字延遲線構(gòu)成的高精度鑒頻鑒相器和一個(gè)由卡爾曼濾波以及PI控制器構(gòu)成的數(shù)字環(huán)路濾波器,。DAC模塊將環(huán)路濾波器的輸出轉(zhuǎn)換為對(duì)晶振頻率的控制量,,從而構(gòu)成一個(gè)數(shù)字鎖相環(huán)。在環(huán)路鎖定的情況下,,本地振蕩器的振蕩頻率即可與GPS星載原子鐘保持嚴(yán)格同步,。
2 電路設(shè)計(jì)
2.1 高精度鑒頻鑒相器的設(shè)計(jì)
在傳統(tǒng)的鑒相器設(shè)計(jì)中,通常只是利用一個(gè)計(jì)數(shù)器對(duì)輸入信號(hào)進(jìn)行計(jì)數(shù),,受到電路的工作頻率限制,,其精度大約在10 ns量級(jí)。由此產(chǎn)生的量化誤差,,將對(duì)系統(tǒng)的準(zhǔn)確度造成很大影響,。為了達(dá)到1e-10甚至更高的準(zhǔn)確度,就需要提高時(shí)間測(cè)量的精度,。在以往的設(shè)計(jì)中,,通常采用專用TDC芯片測(cè)量,但其成本高,,對(duì)PCB設(shè)計(jì)很敏感,。為此,本系統(tǒng)在采用計(jì)數(shù)器進(jìn)行粗測(cè)量的同時(shí),,利用Xilinx公司的FPGA內(nèi)部的高速進(jìn)位資源,,構(gòu)建了一個(gè)數(shù)字延遲線,實(shí)現(xiàn)了100 ps量級(jí)的細(xì)測(cè)量,,即在FPGA內(nèi)部實(shí)現(xiàn)了一個(gè)TDC單元,,從而降低了頻率量化對(duì)系統(tǒng)準(zhǔn)確度的影響。另外,,從相位噪聲的角度分析,,提高鑒相器的量化位數(shù),,也可以有效地降低量化噪聲對(duì)系統(tǒng)相位噪聲的影響。
由于秒脈沖的時(shí)間相對(duì)測(cè)量精度比較長(zhǎng),,為了實(shí)現(xiàn)大范圍的測(cè)量,,設(shè)計(jì)中采用了鑒頻鑒相器測(cè)量GPS秒脈沖與本地振蕩器的偏差。如圖2所示,,其中由100 MHz時(shí)鐘驅(qū)動(dòng)的粗計(jì)數(shù)器實(shí)現(xiàn)了頻率的測(cè)量,,而由數(shù)字延遲線構(gòu)成的鑒相器,可以測(cè)量遠(yuǎn)小于一個(gè)時(shí)鐘周期的相位誤差,。
如圖2,,同步器的功能是將異步的秒脈沖信號(hào)與時(shí)鐘同步,,作為計(jì)數(shù)器的同步置零輸入,,由兩級(jí)D觸發(fā)器的級(jí)聯(lián)構(gòu)成,,用于保證時(shí)序裕量可以讓潛在的亞穩(wěn)態(tài)可能性降到最低,即保證當(dāng)觸發(fā)信號(hào)在時(shí)鐘信號(hào)的保持建立窗口中到達(dá)時(shí),,可以讓觸發(fā)器有足夠時(shí)間恢復(fù)到穩(wěn)定狀態(tài),。計(jì)數(shù)器為一個(gè)同步置零計(jì)數(shù)器。為了在大約1 s的時(shí)間內(nèi)對(duì)100 MHz時(shí)鐘進(jìn)行計(jì)數(shù),,計(jì)數(shù)器的位寬被設(shè)計(jì)為27 bit,。
數(shù)字延遲線則是用于測(cè)量同步觸發(fā)信號(hào)與異步秒脈沖之間的時(shí)間差,是本測(cè)量模塊的關(guān)鍵,。為了實(shí)現(xiàn)高精度時(shí)間測(cè)量,,本系統(tǒng)采用了一種基于抽頭延遲線的方法,其中延遲線由多個(gè)延遲單元組成,,每個(gè)延遲單元都有相同的傳輸時(shí)延τ,。通過(guò)采樣初始脈沖在線路中傳播時(shí)線路的狀態(tài),利用內(nèi)插法,,完成對(duì)兩個(gè)觸發(fā)脈沖時(shí)間間隔的測(cè)量,,從而獲得秒脈沖與本地振蕩器的相位差。
在FPGA中,,有乘法器,、比較器、加法器,,可以將專用進(jìn)位連線連接成進(jìn)位鏈,。由于加法器實(shí)現(xiàn)簡(jiǎn)單,可以清晰地顯示出進(jìn)位信號(hào)的邏輯關(guān)系,。因此加法器是最適合實(shí)現(xiàn)延遲線內(nèi)插器的方案,。
為實(shí)現(xiàn)對(duì)輸入信號(hào)的時(shí)間內(nèi)插,就需要使待測(cè)信號(hào)沿進(jìn)位鏈傳播。串行進(jìn)位加法器的表達(dá)式如下:
Sum=A⊕B⊕Cin
Cout=AB+(A+B)Cin
如圖3所示,,設(shè)置輸入A為全1,,輸入B最低位為待測(cè)量信號(hào),其余為0,。當(dāng)外部信號(hào)輸入為0時(shí),,加數(shù)的最低位為0,所有輸出都為1,,進(jìn)位鏈上沒(méi)有信號(hào),。當(dāng)外部輸入變成1時(shí),B的最低位變成1,,這時(shí)最低位輸出0,,進(jìn)位信號(hào)變?yōu)?,進(jìn)入進(jìn)位鏈傳播,。輸入信號(hào)沿進(jìn)位鏈傳播的同時(shí),,也被逐級(jí)延時(shí),,這時(shí),,加法器的輸出中0的個(gè)數(shù),代表了輸入信號(hào)經(jīng)過(guò)的延遲單元的個(gè)數(shù),。這樣,,就實(shí)現(xiàn)了對(duì)輸入信號(hào)的內(nèi)插。
可以看出,,從加法器的輸出中可以獲得需要的延遲信息,,這就需要在加法器的輸出端每一位后加一個(gè)鎖存器,用以測(cè)量結(jié)束時(shí)保存進(jìn)位鏈的狀態(tài),。在本設(shè)計(jì)中鎖存器的時(shí)鐘端需要嚴(yán)格同步,,這樣采集到的信息才有意義,才能代表時(shí)間延遲信息,。同時(shí),,在鎖存器的時(shí)鐘信號(hào)即結(jié)束信號(hào)的保持建立窗口中,加法器的輸出會(huì)發(fā)生改變,,會(huì)帶來(lái)亞穩(wěn)態(tài)的問(wèn)題,。為了解決這個(gè)問(wèn)題,本設(shè)計(jì)在第一個(gè)鎖存器之后又加入兩個(gè)由工作時(shí)鐘驅(qū)動(dòng)的鎖存器構(gòu)成的同步器,。
本設(shè)計(jì)中最關(guān)鍵之處是利用進(jìn)位鏈實(shí)現(xiàn)延遲線的布局與布線,。以Spartan 3系列FPGA為例[2],CLB是FPGA內(nèi)的基本邏輯單元,,每個(gè)CLB都包含一個(gè)可配置開(kāi)關(guān)矩陣,,此矩陣由4個(gè)輸入、一些選型電路(多路復(fù)用器等)和觸發(fā)器組成。 開(kāi)關(guān)矩陣是高度靈活的,,可以對(duì)其進(jìn)行配置以便處理組合邏輯,、移位寄存器或RAM。
一個(gè)CLB由4個(gè)相同的SLICE組成,。SLICE中的進(jìn)位邏輯包括一個(gè)進(jìn)位專用多路復(fù)用器和一個(gè)進(jìn)位專用異或門(mén)組成,。 進(jìn)位邏輯的延時(shí)在CLB中和相鄰的CLB中都有專用連接,這些連接的延遲幾乎為零,。這就為利用進(jìn)位鏈構(gòu)成內(nèi)插延遲線創(chuàng)造了條件,。
在Spartan3系列FPGA中,CLB中的左側(cè)兩個(gè)SLICE的CIN/COUT直接與垂直相鄰的CLB中左側(cè)的兩個(gè)SLICE的COUT/CIN相連,,右側(cè)亦然,。以Spartan3系列的XC3S200 FPGA為例,該FPGA共有24行20列共480個(gè)CLB,,1 920個(gè)SLICE,,故FPGA上在最大情況下共可配置40個(gè)96 bit的進(jìn)位鏈。
經(jīng)過(guò)實(shí)驗(yàn),,在ISE環(huán)境下直接調(diào)用加法器的IP核,,并將XST綜合選項(xiàng)設(shè)置為面積優(yōu)先。在布局布線后用FPGA Editor檢查底層結(jié)構(gòu),,就可以得到理想中的內(nèi)插器結(jié)構(gòu),。經(jīng)過(guò)MODELSIM后仿真,結(jié)果可以看出該延遲線是均勻的,。在實(shí)際測(cè)試中,,由于相鄰的兩個(gè)延遲單元可能會(huì)同時(shí)落入鎖存器的保持建立窗口中,導(dǎo)致分辨率的降低,,最終數(shù)字延遲線的分辨率約為200 ps,。
最后,在同步觸發(fā)信號(hào)到達(dá)時(shí),,鎖存延遲線信息,,就可以得到溫度計(jì)碼的結(jié)果,再經(jīng)過(guò)優(yōu)先編碼以后,,送出中斷,,通知microBlaze讀取結(jié)果。
2.2 環(huán)路濾波器
不同于一般ADPLL,,由于GPS秒脈沖信號(hào)頻率低,、信號(hào)在傳輸中易受到干擾的特點(diǎn),本系統(tǒng)不能使用通常的N-before-M等數(shù)字環(huán)路濾波器,。
本系統(tǒng)采用的LEA-5S GPS模塊輸出的秒脈沖信號(hào)精度有效值為30 ns,,99%精度小于60 ns,。在進(jìn)行濾波之前,首先要根據(jù)上文所述進(jìn)行數(shù)據(jù)有效性判斷,,再進(jìn)行數(shù)據(jù)合成(用本次計(jì)數(shù)器值為高位,,內(nèi)插器結(jié)果為低位,減去前一次內(nèi)插器結(jié)果)以及硬限幅處理[3],,將與理想秒脈沖相差過(guò)大的數(shù)據(jù)剔除后,,將結(jié)果送入卡爾曼濾波器。
在濾波器設(shè)計(jì)上,,采用了卡爾曼濾波+PI控制方法,,有效濾除了噪聲,減小了系統(tǒng)超調(diào)與震蕩,,同時(shí)將零差降到最小[4-5],。
卡爾曼濾波器是一個(gè)最優(yōu)化自回歸數(shù)據(jù)處理算法??柭鼮V波是一種遞歸的估計(jì),,利用獲知上一采樣狀態(tài)的估計(jì)值以及當(dāng)前狀態(tài)的觀測(cè)值就可以計(jì)算出當(dāng)前狀態(tài)的估計(jì)值,因此不需要記錄觀測(cè)或者估計(jì)的歷史信息,。相比FIR或滑動(dòng)平均等濾波器,,卡爾曼濾波可以節(jié)約大量的存儲(chǔ)空間,更利于在低密度FPGA上的實(shí)現(xiàn),。
由于卡爾曼濾波需要大量矩陣運(yùn)算,,且需要浮點(diǎn)數(shù)來(lái)保持其精度以保證最后的收斂,,同時(shí),,本系統(tǒng)對(duì)濾波計(jì)算的時(shí)間并非十分嚴(yán)格,故本系統(tǒng)中的卡爾曼濾波器在MicroBlaze核中利用C語(yǔ)言實(shí)現(xiàn),。KALMAN濾波流程圖如圖4所示,。
在卡爾曼濾波中,動(dòng)態(tài)系統(tǒng)維數(shù),、觀測(cè)系統(tǒng)維數(shù)均設(shè)為1,。同時(shí),應(yīng)對(duì)X0進(jìn)行初步估計(jì),,可以使濾波器收斂速度加快,。
濾波后得到當(dāng)前時(shí)刻誤差的估計(jì)值,將其送入PI模塊,。在鎖相環(huán)系統(tǒng)設(shè)計(jì)中,,通常在VCO外再添加一個(gè)積分項(xiàng),來(lái)構(gòu)成一個(gè)2類鎖相環(huán),,以保證系統(tǒng)的收斂,,同時(shí)消除零差[6]。在PI控制器整定的過(guò)程中,先調(diào)整比例系數(shù),,再調(diào)整積分系數(shù),,通過(guò)實(shí)驗(yàn)找出最優(yōu)值。
2.3 DAC及晶振電路設(shè)計(jì)
本設(shè)計(jì)中,,晶振選擇的型號(hào)為T(mén)CEBBCS-10.000TCXO,,其牽引范圍為±8 ppm,在使用中能夠基本滿足要求,,在未來(lái),,如將TCXO替換為OCXO,可以進(jìn)一步提高系統(tǒng)的穩(wěn)定度。另外可以選擇牽引范圍更窄的晶振,,以進(jìn)一步提高系統(tǒng)的最小分辨率,。
在DAC選擇上,需要滿足低噪聲的要求,。本設(shè)計(jì)DAC選擇16 bit高性能的AD5541,,其采用R-2R結(jié)構(gòu)設(shè)計(jì),噪聲可滿足全16 bit精度輸出,,非緩沖輸出可以直接驅(qū)動(dòng)晶振的控制端,。
3 測(cè)試結(jié)果及分析
圖5是利用CHIPSCOPE抓取的秒脈沖偏差與卡爾曼濾波后的結(jié)果??梢钥闯?,卡爾曼濾波器對(duì)GPS信號(hào)的跳變有比較好的濾除作用。
系統(tǒng)的測(cè)試結(jié)果如表1所示,。
本文介紹的晶振頻率同步系統(tǒng),,利用數(shù)字鎖相環(huán)將晶振的輸出頻率同步于GPS星載時(shí)標(biāo),從而獲得了一個(gè)高穩(wěn)定度,、高準(zhǔn)確度的本地振蕩器,。其中,高分辨率數(shù)字鑒頻鑒相器可以減小系統(tǒng)的量化誤差,,提高精度,。環(huán)路濾波器中的卡爾曼濾波器可以很好地抑制GPS秒脈沖對(duì)系統(tǒng)造成的干擾。此外,,系統(tǒng)的測(cè)量單元集成在FPGA之內(nèi),,降低了系統(tǒng)的成本、體積,,提高了穩(wěn)定性,。該系統(tǒng)可以廣泛應(yīng)用于通信網(wǎng)絡(luò)、測(cè)試測(cè)量等各個(gè)領(lǐng)域,,為其提供高質(zhì)量免校準(zhǔn)的頻率基準(zhǔn),。
參考文獻(xiàn)
[1] 曾祥君,,尹項(xiàng)根,林干,,等.晶振信號(hào)同步GPS信號(hào)產(chǎn)生高精度時(shí)鐘的方法及實(shí)現(xiàn)[J].電力系統(tǒng)自動(dòng)化,,2003,27(8).
[2] Xilinx.Spartan-3 generation FPGA user guide.2010.
[3] 黨曉圓,,單慶效,,肖昌言,等.基于GPS與北斗雙模授時(shí)的壓控晶振校頻系統(tǒng)的研究與設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,,2009,,17(11).
[4] Cui Baojian.An improved time synchronous system based on GPS disciplined rubidium[C].International Conference on Intelligent Computation Technology and Automation,2009,,29.
[5] 張瑩,,周渭,梁志榮.基于GPS鎖定高穩(wěn)晶體振蕩器技術(shù)研究[J].宇航計(jì)測(cè)技術(shù),,2005(2).
[6] FLOYD M G,,姚劍清.鎖相環(huán)技術(shù)(第3版)[M],北京:人民郵電出版社,,2007.