0 引言
步入信息化時代最顯著的標志是信息網(wǎng)絡在各行業(yè)中的滲透和普及,其中數(shù)以太網(wǎng)最為典型。以太網(wǎng)作為一種成本低廉、吞吐能力強、適應性好、網(wǎng)絡管理能力日益提高的網(wǎng)絡,在各個領域都得到了廣泛的應用?;贚AN的新型LXI(LAN eXtensions for Instrumentation)儀器總線正是利用了以太網(wǎng)的這些特點,構成了一種適應自動測試系統(tǒng)的儀器模塊組建標準。
LXI總線標準是由安捷倫公司和VXI技術公司于2004年9月聯(lián)合推出的,并于同年成立了技術聯(lián)盟。一年后聯(lián)盟制定了LXI 1.0標準,此標準對LXI的物理特性、觸發(fā)同步、儀器模塊間通信、模塊網(wǎng)絡接口特性和配置以及發(fā)現(xiàn)機制等方面作出了詳細規(guī)定,并且在其他方而也給出了聯(lián)盟的建議。2006年8月LXI聯(lián)盟正式公布LXI的1.1標準,糾正了1.0標準中存在的大量排版和語句上的錯誤,并修改了部分內(nèi)容,包括修改了 HTTP和HTML請求、刪除14節(jié)的MAC地址規(guī)則等等。期間第一批通過LXI聯(lián)盟認證的LXI儀器面世,也揭開了LXI產(chǎn)品迅速升溫的序幕。2007 年10月聯(lián)盟又推出了1.2標準,直至2008年9月推出最新的1.3版標準,不同版的標準都對其上一版進行修改和完善。在過去兩年里,LXI產(chǎn)品逐步成為市場熱點,到目前為止,超過50家國際頂尖儀器生產(chǎn)廠商共推出85種儀器類型的540余種產(chǎn)品。其中僅在2007年上半年時的銷售額就超過了1億美元。
在中國,LXI聯(lián)盟成員已經(jīng)包括中國大學、研究機構和廠商在內(nèi)的約100多家單位。北京航天測控公司等三家中國企業(yè)加入了LXI聯(lián)盟。2007年在北京召開的首屆LXI亞洲峰會上聯(lián)盟主席也誠摯地邀請中國的企業(yè)單位參與標準的制定和完善。在我國的各軍兵種和國防工業(yè)部門為武器裝備研制配套的 ATS(Automatic Test System)系統(tǒng),也離不開LXI總線的發(fā)展。
1 B類LXI同步原理
1.1 LXI產(chǎn)品分類和B類儀器的優(yōu)勢
LXI聯(lián)盟充分利用了以太網(wǎng)觸發(fā)、網(wǎng)絡時間協(xié)議(NTP和IEEEl588)和硬件連線觸發(fā)功能。在此基礎上LXI提供精度由低劍高的三種觸發(fā)機制:基于 NTP的觸發(fā)方式;基于IEEEl588的觸發(fā)方式;基于LXI觸發(fā)總線(LXITrigger Bus)的硬件觸發(fā)。并根據(jù)這三種不同的機制將產(chǎn)品分為三類:C、B和A類。分別如下:
C類:具有通過LAN的編程控制能力,能夠與其他廠家的儀器協(xié)同工作;
B類:擁有C類的所有能力,并支持IEEEl588精確時間協(xié)議同步;
A類:擁有B類的所有能力,同時具備觸發(fā)總線硬件觸發(fā)機制。
顯然A類具備最高的同步精度是靠增加了硬件觸發(fā)功能,然而根據(jù)LXI標準可知,此類觸發(fā)是通過在儀器模塊之間另外增加觸發(fā)總線實現(xiàn)的,且該觸發(fā)總線的長度又不超過3m,故極大地限制了LXI儀器的靈活性,而靈活性又是LXI和VXI等儀器所具備的特點。B類儀器所支持的IEEEl588精確時間協(xié)議不需要額外硬件開銷,同樣也是通過LAN傳送觸發(fā)信號,靈活方便。所以對B類同步觸發(fā)精度的研究具有極大的現(xiàn)實意義。
2. 2 IEEEl588時間協(xié)議同步原理
IEEEl588又稱為精確同步時間協(xié)議(Precision Time Protocol,PTP),它在LXI儀器模塊中的實現(xiàn)是要求硬件和軟件共同支持,它的同步原理如下圖l所示。在由LXI儀器模塊所組成的ATS 中,IEEEl588時間協(xié)議同步的理想目標是使分散在各個LXI儀器模塊中的時鐘達到絕對的一致,但由于同步誤差的存在,現(xiàn)實中只能接近這個理想值。這里將系統(tǒng)中的LXI設備分為主、從機,基本同步原理是:在系統(tǒng)初始化階段,通過對主從機之間時鐘偏移量(offset)的測量修正主機和從機之間的時鐘偏差,在設定的時間間隔內(nèi)(一般默認1~2s),主機循環(huán)發(fā)送一個唯一的同步信息到相關的從機;主機測量發(fā)送的準確時間,從機測量接收的準確時間,之后從機發(fā)送攜有接收準確時間信息的數(shù)據(jù)包至主機,主機產(chǎn)生一個接收時間標記,接收的時間在延遲響應包中返回給從機。偏移測量和延遲(delay)測量完成了主機與各從機之間的同步,使系統(tǒng)使用統(tǒng)一的時鐘協(xié)調(diào)完成任務。
根據(jù)上述闡述,假設在主、從時鐘接發(fā)信息包的時刻分別為T1、T2、T3、T4、T5;主時鐘到從時鐘和從時鐘到主時鐘的延時間隔分別為delayl和delay2。詳見圖l。
故我們得到如下式子:
假設網(wǎng)絡是對稱的,即主機到從機和從機到主機的延時是一樣的,可以得到:
如此便得到了offset和delay。
2.3 同步誤差來源和糾正方法
分析整個同步過程,可以將誤差來源歸結為兩大類:a.系統(tǒng)或儀器內(nèi)部因素;b.系統(tǒng)或儀器外部因素。
內(nèi)部因素主要來自傳輸線路的延時、系統(tǒng)的網(wǎng)卡中斷的響應、消息排隊等。從網(wǎng)絡和系統(tǒng)的角度看,可以將上述因素歸結為線路的不對稱性,從而直接影響到對 offset和delay值的計算。offset和delay值是相互影響的,即得到準確的offset值就同樣得到了準確的delay值,所以可只研究 offset值。
在offset值的計算過程中,由于上述線路傳輸、路由功能、等待排隊等等現(xiàn)象的存在,導致對offset值的測量和計算結果有偏差。在此我們可以將上述誤差原因看作影響噪聲,故當offset值初步穩(wěn)定(初始化后第一次同步時計算出來的offset值不定)后可以采用濾波算法將其濾除。當進行完晶振同步之后,可以簡化理解為offset偏差直接反映傳輸線路的不對稱,即直接反應內(nèi)部因素導致的誤差。
由于得到delay值后對offset值的計算是根據(jù)式(1)中的第一個式子得到,所以由圖2N分析可得,offset值可以比精確值偏大,也可以比精確值偏小,且從概率上來講應為等概的,故可采用較為簡單的均值濾波算法進行平滑即可。
其次,引起誤差的外部因素主要來自環(huán)境對系統(tǒng)和儀器的影響和時間印章(時間戳)的準確性,前者主要反映在晶振的速率上,而后者主要反映在IEEEl588時間協(xié)議的實現(xiàn)上。
在晶振速率方面,由于儀器的時鐘是由普通晶振提供的,所以環(huán)境(如溫度)的變化將極大地影響晶振的速率,常用品振精度不高,大概在100ppm左右,而對一般的LXI模塊則每隔2s進行一次同步,那么可以計算得到兩個模塊之間最大的偏差是400μs,故不可忽略。通常高精度儀器的晶振可以安在恒溫槽中(如 OCXO),但考慮到成本和儀器簡化等因素,采用晶振同步自適應方法改進。設R,R′分別為主機和從機的品振速率,△t表示兩次測量晶振速率的時間問隔。那么分別計算一段時間內(nèi)每臺從機記錄的本地時鐘時間,然后從機與主機進行比較來調(diào)整時鐘計數(shù)值,調(diào)準方案如下式所示,M,N分別為存△t的時間間隔內(nèi)主從機的時鐘計數(shù)值。
為了使其更具自適應能力,可以根據(jù)上述方法計算t1′,t2′…tn′多個時間點時鐘計數(shù)調(diào)整值,并據(jù)此由曲線擬合的方法得到下一時間段[tn′,tn+l′]內(nèi)的晶振速率,起到不斷校正品振偏差,使從機時鐘達到跟隨主機時鐘變化的目的。
實現(xiàn)IEEEl588(PTP)時鐘協(xié)議的方法有通過FPGA實現(xiàn)、通過集成有PTP協(xié)議的網(wǎng)絡收發(fā)芯片實現(xiàn)等幾種。通過FPGA實現(xiàn)的方法是最常用的,但方法繁瑣、實現(xiàn)精度不高。而最近出現(xiàn)的集成有PTP時鐘協(xié)議的實現(xiàn)方案方便快捷、實璣精度高,因此迅速被廣大設計者所接受。其硬件框圖如圖3所示。
在上述FPGA實現(xiàn)PTP的方案中,信息包加時間戳這一關鍵步驟也有幾種實現(xiàn)方法,每種方法產(chǎn)生不同的同步精度。見圖4所示。
在圖4中,最簡單的IEEEl588實現(xiàn)包括在網(wǎng)絡協(xié)議堆棧頂端的應用層加上通用的時間戳,實現(xiàn)過程中會出現(xiàn)最大的協(xié)議堆棧延遲波動,會產(chǎn)生最大偏差,這種情況下最差精度將被引入到時間戳中。并且在不同的操作系統(tǒng)中,偏差值會在幾百微秒到毫秒之問,嚴重影響同步精度。
第二種是在中斷層實現(xiàn)時間戳,其實現(xiàn)精度比應用層更高,但實現(xiàn)難度也隨之增大。硬件輔助的方式可以得到最精確的同步時鐘,產(chǎn)生的時間戳和物理層總線上事件的非常接近。使用專用以太網(wǎng)收發(fā)芯片的實現(xiàn)方案就是以這種方法實現(xiàn)PTP協(xié)議的,從而為得到最高的同步精度打好堅實基礎。
3 基于專用芯片DP83640的實現(xiàn)方案
通過上述的分析得知,基于專用網(wǎng)絡芯片的方案能獲得最高的實時同步精度,同時又能簡化設計。其中DP83640就是其中的典型代表。
DP83640是NS公司在2007年推出的集成有IEEEl588時鐘協(xié)議的全新網(wǎng)絡收發(fā)芯片,它呈現(xiàn)如下三個關于IEEEl588的關鍵特性:信息包中包含用于時間同步的時間戳、IEEEl588時鐘產(chǎn)生器、通過GPIO口的同步事件觸發(fā)。并且NS公司還創(chuàng)新性地賦予了它獨特的特性,其中包括基于錯誤預測的鏈接質量動態(tài)監(jiān)測等。
具體而言,DP83640的特點主要有:支持IEEE1588V1和V2;支持UDP/IPv4和UDP/IPv6;IEEEl588時鐘同步;8ns時間戳;12個觸發(fā)和捕獲IEEEl588的GPIO;可檢測的低的傳輸和接收時延;鏈接質量動態(tài)監(jiān)測;全雙工/半雙工和10/100Mb/s傳輸;支持雙絞線和光纖接口等等。以上這些也保證了該芯片能很好地滿足B類LXI儀器的同步要求。DP83640的功能模塊框圖詳見圖5。
本方案中采用最為常見的基于ARM9核的S3C2410作為處理器,在數(shù)據(jù)的發(fā)送和接收端采用集成有IEEEl588的網(wǎng)絡收發(fā)芯片DP83640,兩者之間是MAC層芯片,這里選用AX88196。圖6給出的是S3C2410、AX88196和DP83640的主要連接框圖。在DP83640 中,TX_CLK、TXD[0..3]和TXD_EN共同構成了以太網(wǎng)絡的數(shù)據(jù)發(fā)送接口。TX_CLK在100Mb/s模式下能輸出25MHz的時鐘信號,在10Mb/s模式下則能輸出2.5MHz的時鐘信號,該時鐘信號來源于25MHz的系統(tǒng)參考時鐘;同理,RX_CLK、RXD[0..3]、 RX_DV和RX_ER構成了以太網(wǎng)絡的數(shù)據(jù)接收接口,其中不同的是RX_DV和RX_ER反映了接收數(shù)據(jù)的有效或錯誤;COL則是用于網(wǎng)絡中碰撞檢測的。在處理器端,將地址總線、數(shù)據(jù)總線分別和MAC芯片的地址和數(shù)據(jù)總線相連,實現(xiàn)數(shù)據(jù)互通,詳見圖6。
在上述功能的軟件實現(xiàn)中,充分利用DP83640能提取數(shù)據(jù)包中的時間戳并發(fā)送給上層軟件的特點,可在應用程序的改計中方便地實現(xiàn)同步、觸發(fā)、延時響應等功能。再利用上文分析的算法提高模塊的同步觸發(fā)精度。軟件流程見圖7。
在模塊初始化中,包含了主從時鐘的設定、外圍部件初始化(如DP83640初始化)等等。上文中提出的對offset值的濾波、品振速率的計算和晶振偏差自適應算法也可利用上述框圖實現(xiàn),所不同的是兩者利用不同的數(shù)據(jù)和不同的子程序。
4 結束語
LXI儀器借助以太網(wǎng)的強大功能和web的靈活性,使得在ATS中實現(xiàn)遠程式、分布式成為可能。LXI基本不受帶寬、軟件和背板插槽的限制。其更廣的覆蓋范圍、更好的繼承性能、更長的生命周期和更低的成本使其具有更為廣闊的應用與發(fā)展前景。其中B類儀器以其低廉的價格(相對于A類儀器)和較強的靈活性(相對于C類儀器),更能適應市場的需求。加之采用本文所提出的方法能提高同步觸發(fā)精度和降低成本,使其具有更強的市場競爭力。