楊 靜,周 軍,穆華俊
(武漢大學(xué) 電子信息學(xué)院,湖北 武漢 430072)
數(shù)字系統(tǒng)的時間同步具有非常廣泛的應(yīng)用,電信系統(tǒng)[1]、電力系統(tǒng)[2]、天文觀測[3]、金融[4]、軍事[5]等對時間同步精度都有相應(yīng)的要求[6]。以電力系統(tǒng)的行波測距為例,當(dāng)時間同步誤差為1 ms 時,所測得的故障點(diǎn)與維修人員的距離誤差為150 km,這樣的結(jié)果幾乎沒有使用價值;但當(dāng)時間同步誤差減小到1 μs 時,距離誤差僅為150 m;而巡航導(dǎo)彈的時間同步誤差只有在50 ns 以內(nèi)時,才有精確命中目標(biāo)的可能性。微小的時間同步誤差可以造成很大的測距誤差,可謂是“失之毫厘,謬以千里”。一般而言,電力傳輸、衛(wèi)星導(dǎo)航、軍事等領(lǐng)域?qū)r間同步精度要求較高,通常要達(dá)到 μs 乃至 ns 級。
傳統(tǒng)的數(shù)字電路課程鮮有涉及時間同步的內(nèi)容,且時間同步的實(shí)現(xiàn)還具有以下不同于一般數(shù)字電路實(shí)驗的特征:①數(shù)字電路實(shí)驗的結(jié)果一般是確定的,輸入輸出均為明確的“0”“1”信號,而時間同步的結(jié)果具有不確定性,所關(guān)注的是同步誤差的大小及其影響因素;②數(shù)字電路實(shí)驗多局限于單個獨(dú)立的數(shù)字系統(tǒng),而時間同步則涉及兩個或兩個以上的數(shù)字系統(tǒng),必須考慮多系統(tǒng)協(xié)同工作問題。因此,設(shè)計時間同步實(shí)驗對于數(shù)字電路課程的學(xué)習(xí)具有很好的補(bǔ)充與深化作用。
將科研融入教學(xué)是高校教學(xué)改革的發(fā)展方向[7],源于科研的實(shí)驗項目通常具有更好的系統(tǒng)性、完整性以及更明確的工程背景,更有利于培養(yǎng)學(xué)生的創(chuàng)新實(shí)踐能力[8]。我校在高頻地波雷達(dá)的系統(tǒng)研制和應(yīng)用方面已有三十多年的歷史,積累了豐富的科研成果。其中,多部同頻高頻地波雷達(dá)的組網(wǎng)探測要求雷達(dá)之間滿足高精度時間同步[9],為此我們研制了雷達(dá)同步裝置[10-11]?;诖?,我們對雷達(dá)同步裝置進(jìn)行了簡化設(shè)計,將其引入實(shí)驗教學(xué),設(shè)計了數(shù)字系統(tǒng)的時間同步實(shí)驗。該實(shí)驗利用FPGA 芯片、信號發(fā)生器、GPS 接收天線、GPS 可馴鐘等器件,模擬數(shù)字系統(tǒng)的直接同步和間接同步兩種方案,并對時間同步誤差進(jìn)行測量分析。在此基礎(chǔ)上,還探索了若干工程實(shí)際問題的解決方法。本實(shí)驗有助于學(xué)生掌握數(shù)字系統(tǒng)時間同步的基本方法,培養(yǎng)在工程背景下進(jìn)行數(shù)據(jù)統(tǒng)計分析的能力,鍛煉多系統(tǒng)協(xié)同工作的意識和思維。
雷達(dá)網(wǎng)絡(luò)中各站點(diǎn)之間的同步方法一般分為直接同步、間接同步和獨(dú)立式同步三種類型[12]。直接同步是指通過數(shù)據(jù)傳輸通道將觸發(fā)脈沖、頻率基準(zhǔn)信號和射頻編碼信號等從一個站點(diǎn)傳送至另一個站點(diǎn)。數(shù)據(jù)傳輸通道的種類包括微波中繼、衛(wèi)星通信、短波通信和有線傳輸?shù)?。間接同步法是指每個站點(diǎn)設(shè)置一個高穩(wěn)定時鐘,用來提供時間、頻率以及相位相參的基準(zhǔn)信號。這些時鐘需定期用同一個更高精度的時間基準(zhǔn)來校準(zhǔn)。獨(dú)立式同步主要適用于非合作的機(jī)會照射源的情況,接收機(jī)利用發(fā)射極的直達(dá)波信號或者地物散射波來提取同步信息,精度一般不高,只用作粗測和告警。
由于本實(shí)驗關(guān)注的是高精度時間同步問題,因此在設(shè)計實(shí)驗時,僅以雷達(dá)站的直接同步和間接同步兩種方式為原型,所設(shè)計的電路結(jié)構(gòu)框圖如圖1 所示。
圖1 實(shí)驗電路結(jié)構(gòu)框圖
上述電路中,F(xiàn)PGA1 和FPGA2 是兩片相同型號的FPGA 芯片,用以代表兩個數(shù)字系統(tǒng)。兩片F(xiàn)PGA的時間同步情況通過其產(chǎn)生的矩形脈沖波來反映。FPGA 以同步控制信號的上升沿為參考時間,延遲一定時間產(chǎn)生矩形脈沖波。兩路矩形脈沖波的上升沿時刻、周期均設(shè)置為相同的數(shù)值。將兩路矩形脈沖波接入示波器的兩個通道,觀察其上升沿時間差,即為兩片F(xiàn)PGA 的時間同步誤差。
直接同步方案里,兩片F(xiàn)PGA 的時鐘源由兩臺信號發(fā)生器提供,同步控制信號由 FPGA1 產(chǎn)生并通過一根導(dǎo)線傳送給FPGA2。由于同步控制信號由一個數(shù)字系統(tǒng)直接傳送給另一個數(shù)字系統(tǒng),因而稱為直接同步法。
間接同步方案里,時鐘源和同步控制信號由兩塊GPS 可馴鐘提供。除了這兩路信號外,可馴鐘還串行輸出時間信息包數(shù)據(jù)給 FPGA。由于這里的同步是通過可馴鐘周期性地使用 GPS 授時信號馴服本地低相噪恒溫晶振來實(shí)現(xiàn)的,因而稱為間接同步法。
GPS 可馴鐘主要由GPS 接收機(jī)和恒溫晶振組成。由于 GPS 地面控制系統(tǒng)是將各個衛(wèi)星上的原子頻標(biāo)同步于美國海軍天文臺的原子時從而建立 GPS 系統(tǒng)的,因此GPS 接收機(jī)輸出的秒脈沖信號的長期穩(wěn)定性非常好。然而,衛(wèi)星信號在傳輸過程中的累計誤差使得秒脈沖的上升沿存在隨機(jī)抖動,在衛(wèi)星失鎖或衛(wèi)星時鐘發(fā)生實(shí)驗跳變的情況下,秒脈沖的誤差可能達(dá)到數(shù)百毫秒[13-15],因此,GPS 接收機(jī)輸出的秒脈沖信號的短期穩(wěn)定性較差。與之相比,恒溫晶振的短期穩(wěn)定性非常好,而長期穩(wěn)定性卻由于老化等原因較差。所以,用衛(wèi)星授時信號對恒溫晶振進(jìn)行馴服,可以得到短期和長期穩(wěn)定性俱佳的信號,這就是GPS 可馴鐘的原理。可馴鐘的成本相對于同樣精度的原子鐘大幅降低,因而得到廣泛應(yīng)用。本實(shí)驗所采用的可馴鐘是Trimble 公司的ThunderBolt GPS 馴服時鐘模塊,輸出信號包括:① 10 MHz 標(biāo)準(zhǔn)正弦波頻率信號,此信號作為FPGA 的時鐘源;②秒脈沖,作為FPGA 的同步控制信號;③一個RS232 接口輸出一周時間內(nèi)的時、分、秒、年、月、日以及位置/狀態(tài)等信息,此端口的信號也輸入到FPGA。
實(shí)驗中,要求學(xué)生按照圖1 所示的結(jié)構(gòu)框圖搭建電路,編寫FPGA 程序?qū)崿F(xiàn)輸出矩形脈沖波,測量并分析時鐘源頻率、時鐘源頻率同步誤差、同步控制信號時間同步誤差等對數(shù)字系統(tǒng)時間同步誤差的影響,并提出改進(jìn)措施。在此基礎(chǔ)上,考慮同步控制信號短時間丟失的應(yīng)對辦法,實(shí)現(xiàn)兩個數(shù)字系統(tǒng)在預(yù)設(shè)時間到來后自動同步的功能,鍛煉學(xué)生解決實(shí)際工程問題的意識和思維。
本實(shí)驗的主要設(shè)計工作是在FPGA 中完成的,實(shí)驗的具體實(shí)施方案如圖2 和圖3 所示。
圖2 直接同步方案FPGA 內(nèi)部電路原理圖
圖3 間接同步方案FPGA 內(nèi)部電路原理圖
在直接同步方案里,F(xiàn)PGA 內(nèi)部包括矩形脈沖波產(chǎn)生模塊、雙口隨機(jī)存儲器(DRAM)模塊。FPGA1比 FPGA2 多了一個同步控制信號產(chǎn)生模塊。其中,DRAM 模塊存儲微處理器寫入的參數(shù),包括矩形脈沖波相對于同步控制信號的延遲時間、周期等;同步控制信號產(chǎn)生模塊產(chǎn)生同步控制信號;矩形脈沖波產(chǎn)生模塊根據(jù)DRAM 中的參數(shù),以同步控制信號的上升沿時刻為參考,產(chǎn)生矩形脈沖波。
在間接同步方案里,F(xiàn)PGA 內(nèi)部包括串口通信模塊、時間信息提取模塊、矩形脈沖波產(chǎn)生模塊和DRAM 模塊。其中,串口通信模塊讀取可馴鐘RS232接口輸出的數(shù)據(jù);時間信息提取模塊提取其中的年月日時分秒等當(dāng)前時間信息;矩形脈沖波產(chǎn)生模塊根據(jù)當(dāng)前時間、DRAM 中的參數(shù),以可馴鐘輸出的秒脈沖為參考,產(chǎn)生矩形脈沖波。
利用示波器可以測量兩片F(xiàn)PGA 所代表的數(shù)字系統(tǒng)的時間同步誤差,即兩個矩形脈沖波的上升沿時刻之差,如圖 4(a)所示。根據(jù)矩形脈沖波的產(chǎn)生方法,可以簡單分析其時間同步誤差來源。圖4(b)是矩形脈沖波產(chǎn)生方法的示意圖。其中tin1表示FPGA1 使用的同步控制信號的上升沿時刻,tout1表示FPGA1 產(chǎn)生的矩形脈沖波的上升沿時刻,T1為 FPGA1 使用的時鐘源周期,矩形脈沖波相對于同步控制信號延遲nT1時間產(chǎn)生(n為整數(shù)),即:
同理,F(xiàn)PGA2 產(chǎn)生的矩形脈沖波的上升沿時刻可以表示為:
將式(2)減去式(1),得到兩個矩形脈沖波上升沿時刻之差Δtout的表達(dá)式:
其中,Δtin是兩個同步控制信號的上升沿時刻之差,ΔT是兩個時鐘源周期之差,f1和f2分別是兩個時鐘源的頻率。
圖4 時間同步誤差的測量與分析
從式(3)可以看出,矩形脈沖波的時間同步誤差與兩個同步控制信號的時間同步誤差、兩個時鐘源的頻率同步誤差以及時鐘源頻率值有關(guān),對實(shí)驗數(shù)據(jù)的統(tǒng)計分析應(yīng)能得到近似相同的結(jié)果。實(shí)際上,影響時間同步誤差的因素還包括時鐘源的相位同步誤差、同步控制信號的檢測時間差等因素,雖然這些因素難以量化,但分析實(shí)驗數(shù)據(jù)時應(yīng)當(dāng)考慮進(jìn)去,這樣才能對實(shí)驗現(xiàn)象進(jìn)行正確的解釋。
實(shí)際工程中,可能會出現(xiàn)同步控制信號丟失的情況,例如在直接同步方案里,數(shù)據(jù)傳輸通道的干擾可能會導(dǎo)致同步控制信號丟失。如果不采取應(yīng)對措施,以同步控制信號為基準(zhǔn)的矩形脈沖波也將丟失。在圖5 中,輸出矩形脈沖波的1 至3 號脈沖分別以同步控制信號的1 至3 號脈沖為時間基準(zhǔn),延遲nT時間產(chǎn)生,如果同步控制信號的2 號脈沖丟失,則矩形脈沖波的2 號脈沖也將丟失。
圖5 同步控制信號丟失的處理方法示意圖
一般來說,同步控制信號短時間丟失時,時鐘源的頻率不會發(fā)生很大偏移。如果繼續(xù)按照矩形脈沖波的設(shè)定參數(shù)產(chǎn)生脈沖,仍然能夠保持時間同步。在圖5 中,以矩形脈沖波的1 號脈沖為時間基準(zhǔn),延遲mT產(chǎn)生新的脈沖,則可以補(bǔ)上矩形脈沖波的 2 號脈沖。本實(shí)驗要求學(xué)生通過設(shè)計FPGA 程序來實(shí)現(xiàn)此功能。設(shè)計的核心思想是在同步控制信號丟失和未丟失時給減法計數(shù)器設(shè)置不一樣的計數(shù)初值,當(dāng)減法計數(shù)器計數(shù)到0 時產(chǎn)生下一個脈沖。該實(shí)驗內(nèi)容有助于加深學(xué)生對計數(shù)器設(shè)計的認(rèn)識。
此項實(shí)驗內(nèi)容僅針對間接同步方案。自動化同步的含義是多個數(shù)字系統(tǒng)在約定時間到來以后自動實(shí)現(xiàn)時間同步,如果某個數(shù)字系統(tǒng)因故障等原因沒有同步,待工作正常后可以自動恢復(fù)同步。在圖 6 中,兩片F(xiàn)PGA 約定在同步控制信號的 1 號脈沖到來后延遲t0開始產(chǎn)生周期為T0的矩形脈沖波,但是當(dāng)1 號脈沖到來時,F(xiàn)PGA2 未能檢測到此脈沖,只是FPGA1 按時產(chǎn)生了矩形脈沖波。同步控制信號2 號脈沖到來時,F(xiàn)PGA2 恢復(fù)正常工作,它產(chǎn)生的矩形脈沖波的第一個脈沖是3 號脈沖,此脈沖相對于離它最近的前一個同步控制信號脈沖(2 號脈沖)的延遲時間為(同步控制信號的周期是1 秒):
從式(4)和式(5)可以看出,在不同的時間產(chǎn)生矩形脈沖波,其相對于離它最近的前一個同步控制信號脈沖的延遲時間一般是不同的。要實(shí)現(xiàn)自動化同步功能,必須知道最新收到的同步控制信號脈沖所對應(yīng)的時間,計算出它與約定起始同步時間的間隔時間,然后再計算出矩形脈沖波相對于此脈沖應(yīng)當(dāng)延遲的時間。
圖6 自動化同步原理示意圖
在間接同步方案里,可馴鐘通過串口輸出每個秒脈沖對應(yīng)的時間信息。本項實(shí)驗內(nèi)容要求學(xué)生通過設(shè)計FPGA 程序讀取串口數(shù)據(jù)并提取其中的時間信息,即實(shí)現(xiàn)圖3 中的串口通信模塊和時間信息提取模塊,再在此基礎(chǔ)上實(shí)現(xiàn)自動化同步功能。本項實(shí)驗內(nèi)容較為復(fù)雜,有助于鍛煉學(xué)生基于硬件描述語言進(jìn)行電路設(shè)計的能力。
從實(shí)驗效果來看,該實(shí)驗達(dá)到了預(yù)期目的。首先,實(shí)驗內(nèi)容涵蓋了基于硬件描述語言的時序邏輯電路設(shè)計、基于示波器的信號測試、串口通信等知識,加深了學(xué)生對于已經(jīng)學(xué)習(xí)過的電路課程的認(rèn)識。第二,通過該實(shí)驗,學(xué)生掌握了數(shù)字電路時間同步的基本方法,包括直接同步法和間接同步法,是對傳統(tǒng)的數(shù)字電路學(xué)習(xí)內(nèi)容的補(bǔ)充。第三,實(shí)驗內(nèi)容對于培養(yǎng)學(xué)生在工程背景下進(jìn)行數(shù)據(jù)統(tǒng)計分析的能力、鍛煉學(xué)生多系統(tǒng)協(xié)同工作的意識和思維具有積極作用。此外,實(shí)驗結(jié)束后還提供若干開放性問題供學(xué)生思考,例如當(dāng)兩個系統(tǒng)相距較遠(yuǎn)時如何測試時間同步誤差、已知時間同步誤差值后如何消除其影響等。這些問題激發(fā)了學(xué)生進(jìn)一步學(xué)習(xí)的興趣,提高了通過查閱資料解決問題的能力,有助于學(xué)生早日參與到大學(xué)生科研活動中去。
時間同步在數(shù)字系統(tǒng)中具有廣泛的應(yīng)用,但在傳統(tǒng)數(shù)字電路課程中沒有相關(guān)內(nèi)容。本實(shí)驗通過對高頻地波雷達(dá)同步裝置進(jìn)行簡化設(shè)計,將科研成果引入實(shí)驗教學(xué),幫助學(xué)生掌握數(shù)字系統(tǒng)時間同步的基本方法,加深對已經(jīng)學(xué)習(xí)的時序邏輯電路的硬件描述語言設(shè)計、串口通信等知識的掌握,培養(yǎng)在工程背景下進(jìn)行數(shù)據(jù)統(tǒng)計分析和電路設(shè)計的意識和能力。實(shí)驗效果表明,該實(shí)驗達(dá)到了預(yù)期目的。