探索LXI接口的高級(jí)功能
摘要: 最新的LXI規(guī)范能夠?yàn)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/測(cè)試">測(cè)試與測(cè)量的通信技術(shù)帶來(lái)革命性的變革。通過(guò)LXI能夠使基于LAN的測(cè)試儀器完成更復(fù)雜的測(cè)試功能。當(dāng)與最新一代的測(cè)試儀器結(jié)合使用時(shí),基于LXI的系統(tǒng)能夠完成高級(jí)的測(cè)試功能,這些功能對(duì)于非LXI測(cè)試系統(tǒng)而言是很難實(shí)現(xiàn)的。本文將通過(guò)一個(gè)測(cè)試系統(tǒng)樣機(jī)來(lái)說(shuō)明:具有嵌入式測(cè)試腳本處理功能的測(cè)試觸發(fā)技術(shù)是如何構(gòu)成功能強(qiáng)大、結(jié)構(gòu)靈活的基于LXI的測(cè)試測(cè)量工具的。
關(guān)鍵詞: LXI;接口;以太網(wǎng);測(cè)試測(cè)量
LXI 測(cè)試與測(cè)量系統(tǒng)
LXI(LAN Extensions for Instrumentation)聯(lián)盟是為制訂并推動(dòng)測(cè)試測(cè)量設(shè)備通過(guò)LAN互聯(lián)的標(biāo)準(zhǔn)而成立的一個(gè)組織,該聯(lián)盟的目標(biāo)是消除當(dāng)前測(cè)試標(biāo)準(zhǔn)中的諸多限制因素。LXI聯(lián)盟并不是圍繞某種特定的架構(gòu)制訂一種規(guī)范,其重點(diǎn)目標(biāo)是制訂一個(gè)能夠兼容各種測(cè)試測(cè)量設(shè)備(從簡(jiǎn)單模塊與綜合工具到復(fù)雜的高性能儀器系統(tǒng)),利于系統(tǒng)集成與儀器互操作性的可擴(kuò)展性框架。
LXI從幾個(gè)方面幫助測(cè)試工程師克服常規(guī)測(cè)試測(cè)量系統(tǒng)架構(gòu)的局限性。首先,LXI系統(tǒng)利用以太局域網(wǎng)作為設(shè)備的互聯(lián)通路,消除了互聯(lián)設(shè)備數(shù)量上的限制。其次,幾乎所有的電腦上都帶有以太網(wǎng)接口,因此利用已有的以太網(wǎng)基礎(chǔ)架構(gòu)進(jìn)行設(shè)備互聯(lián)能夠避免增加接口適配卡所帶來(lái)的高昂成本。另外,以太網(wǎng)接口還具有良好的擴(kuò)展性,以太網(wǎng)也能夠輕松支持物理上分布的系統(tǒng)。實(shí)現(xiàn)一個(gè)兼容LXI標(biāo)準(zhǔn)的最簡(jiǎn)以太網(wǎng)接口的成本很低,如果用戶需要還可以實(shí)現(xiàn)高性能的以太網(wǎng)接口,使得低速和高速設(shè)備能夠?qū)崿F(xiàn)無(wú)縫的系統(tǒng)集成。利用以太網(wǎng)互連技術(shù),不需要將設(shè)備和其控制器緊密放置在一起,從而減少了大型系統(tǒng)中的控制器數(shù)量,但是如果采用機(jī)架式系統(tǒng)或基于GPIB/USB/串口的互連結(jié)構(gòu)來(lái)實(shí)現(xiàn),那么必須要將設(shè)備和其控制器緊密放置在一起。
測(cè)量系統(tǒng)的架構(gòu)
單控制器測(cè)試測(cè)量系統(tǒng)
在基于單控制器的架構(gòu)中,控制器可以通過(guò)多種方式與測(cè)試設(shè)備進(jìn)行連接,采用IEEE-488(GPIB)標(biāo)準(zhǔn)是當(dāng)前最流行的做法,但是也可以通過(guò)串口、USB和其他接口來(lái)實(shí)現(xiàn)。一般的應(yīng)用只用PC機(jī)來(lái)采集和存儲(chǔ)測(cè)量數(shù)據(jù),比較復(fù)雜的應(yīng)用使用PC機(jī)來(lái)完成數(shù)據(jù)采集、處理、分析,并將結(jié)果提交給用戶等一系列的處理步驟。控制器也具有采集、分析大數(shù)據(jù)集并提交結(jié)果等額外的處理功能。由于控制器與所有的儀器相連,因此可以實(shí)現(xiàn)比較復(fù)雜的和交叉的測(cè)試序列。
在必要的時(shí)候,控制器可以向測(cè)試儀器發(fā)送控制命令,從而動(dòng)態(tài)修改測(cè)量操作及其執(zhí)行的順序,以響應(yīng)某些實(shí)時(shí)事件(例如前一次測(cè)量的結(jié)果)??刂破骺梢栽L問(wèn)測(cè)量?jī)x器的數(shù)據(jù),可以對(duì)數(shù)據(jù)進(jìn)行合并、處理和分析等操作,以得到更有意義的測(cè)量結(jié)果。
圖1 基于單個(gè)PC機(jī)的架構(gòu)
但是,這種架構(gòu)對(duì)于較大和較復(fù)雜的應(yīng)用而言卻具有一些局限性。這種系統(tǒng)中的儀器或通道的數(shù)量受限于控制器的物理容量。由于所有的數(shù)據(jù)和命令都要流過(guò)控制器的通信通道,因此最大的數(shù)據(jù)容量和數(shù)據(jù)速率就會(huì)受限于系統(tǒng)帶寬。最終,由于互連帶寬的限制,在采用GPIB、USB和其他專(zhuān)用通信接口的系統(tǒng)中,所有的設(shè)備在物理上必須緊密放置在一起。在機(jī)架式系統(tǒng)中這種互連的局限性就更強(qiáng)了。
在規(guī)模較小、功能簡(jiǎn)單的系統(tǒng)中采用這種單控制器的架構(gòu)存在諸多缺陷。僅僅為了執(zhí)行一個(gè)簡(jiǎn)單的測(cè)試序列,就在系統(tǒng)中增加一臺(tái)PC機(jī)或工作站以協(xié)同幾臺(tái)測(cè)試儀器,似乎有些小題大做。為PC機(jī)開(kāi)發(fā)軟件還會(huì)增加系統(tǒng)成本,從而使得這種架構(gòu)喪失對(duì)小規(guī)模簡(jiǎn)單系統(tǒng)的吸引力。
多控制器的測(cè)試測(cè)量系統(tǒng)
對(duì)于規(guī)模較大、物理上分散分布、或者需要處理大數(shù)據(jù)集和/或高數(shù)據(jù)速率的系統(tǒng)而言,增加更多的處理器是避免單控制器架構(gòu)問(wèn)題的一種常用方法。增加處理器可以增加系統(tǒng)中的通道數(shù)量,增大控制與數(shù)據(jù)的帶寬。將系統(tǒng)劃分成多個(gè)子系統(tǒng)降低了軟件的復(fù)雜性和開(kāi)發(fā)成本,因?yàn)槊總€(gè)子系統(tǒng)只需要考慮自身的一部分系統(tǒng)功能而不必將它們緊密放置在一起。這種多控制器的系統(tǒng)消除了單控制器系統(tǒng)存在的諸多限制。
多控制器結(jié)構(gòu)也存在某些局限性和不足,這與其架構(gòu)關(guān)系不大,而是受限于當(dāng)前測(cè)試測(cè)量的實(shí)現(xiàn)方式。實(shí)現(xiàn)測(cè)量子系統(tǒng)有兩種主要方式:采用一臺(tái)PC機(jī)或工作站,附帶一些采用GPIB/串口/USB連接的測(cè)試儀器;或者采用PXI、VXI和其他基于模塊儀器的解決方案。有時(shí)候,如果最小的子系統(tǒng)對(duì)于應(yīng)用而言過(guò)于龐大的話,那么上述兩種實(shí)現(xiàn)方式都是不合適的,它們實(shí)現(xiàn)的系統(tǒng)難以向下收縮。
圖2 多控制器系統(tǒng)實(shí)現(xiàn)
探索LXI的高級(jí)功能
我們可以采用LXI設(shè)備來(lái)實(shí)現(xiàn)現(xiàn)有的測(cè)量架構(gòu),與其它采用GPIB接口進(jìn)行設(shè)備互連的測(cè)試系統(tǒng)不同的是,LXI并不需要一個(gè)隱含的或顯式的常規(guī)控制器作為測(cè)試系統(tǒng)的一部分。從網(wǎng)絡(luò)互連的角度來(lái)看,LXI設(shè)備都是對(duì)等的,任意一臺(tái)LXI設(shè)備都可以直接向其他LXI設(shè)備發(fā)送消息,不需要配置傳統(tǒng)意義上的控制器。
LXI采用對(duì)等的通信模式來(lái)實(shí)現(xiàn)A級(jí)和B級(jí)LXI設(shè)備所需的局域網(wǎng)觸發(fā)功能(C級(jí)設(shè)備可選)。一臺(tái)LXI設(shè)備可以通過(guò)局域網(wǎng)向任意一臺(tái)或多臺(tái)LXI設(shè)備發(fā)送觸發(fā)命令。這就提供了一種與常規(guī)儀器中硬連線觸發(fā)方式類(lèi)似的同步機(jī)制,但是卻消除了硬連線信號(hào)在物理距離上的局限性。局域網(wǎng)觸發(fā)器也可以用于那些對(duì)時(shí)序要求不是很?chē)?yán)格的非分布式系統(tǒng)中。此時(shí),局域網(wǎng)觸發(fā)器的性能是可以接受的,而且相比硬連線觸發(fā)方式降低了系統(tǒng)成本和開(kāi)銷(xiāo)。
LXI規(guī)范建議:各個(gè)設(shè)備應(yīng)該實(shí)現(xiàn)統(tǒng)一的觸發(fā)模型,以提高局域網(wǎng)觸發(fā)器(和所有其他觸發(fā)器)的可用性,降低系統(tǒng)集成的開(kāi)銷(xiāo)。在統(tǒng)一的觸發(fā)模型下,我們可以通過(guò)多個(gè)不同觸發(fā)事件中的一個(gè)來(lái)啟動(dòng)某次儀器操作。
對(duì)于具有腳本處理功能的設(shè)備,在LXI局域網(wǎng)觸發(fā)消息中添加一些負(fù)載信息能夠?qū)崿F(xiàn)更大的靈活性。這種負(fù)載信息可以是一段較短的測(cè)試腳本,即一段可執(zhí)行代碼,在收到觸發(fā)消息時(shí)執(zhí)行。也可以是某個(gè)已經(jīng)預(yù)先載入目標(biāo)設(shè)備的較長(zhǎng)測(cè)試腳本的名稱(chēng),然后在收到觸發(fā)消息時(shí)執(zhí)行。
新的架構(gòu)類(lèi)型
由于LXI不需要在測(cè)試系統(tǒng)中配置傳統(tǒng)的控制器,并且定義了對(duì)等的消息發(fā)送和觸發(fā)功能,因此用戶就可以構(gòu)建出新的測(cè)試系統(tǒng)架構(gòu)。
圖3給出了一個(gè)簡(jiǎn)單的測(cè)試系統(tǒng),其中包含兩個(gè)可編程的LXI儀器和一個(gè)DUT(待測(cè)設(shè)備)。其中的LXI儀器是可編程的,載入了應(yīng)用程序。這些儀器可以利用局域網(wǎng)觸發(fā)機(jī)制來(lái)協(xié)同它們的操作(另外,如果它們是A級(jí)或B級(jí)設(shè)備,則應(yīng)利用IEEE-1588同步時(shí)鐘和/或基于時(shí)標(biāo)的觸發(fā)機(jī)制)。處理結(jié)果可以顯示在用戶接口的面板上或網(wǎng)頁(yè)上,或者通過(guò)局域網(wǎng)傳給另外一個(gè)系統(tǒng)。
圖3 簡(jiǎn)單的LXI系統(tǒng)實(shí)現(xiàn)
圖4給出了圖2中測(cè)試系統(tǒng)的一個(gè)修改版本,將其中一個(gè)子系統(tǒng)替換成圖3中的簡(jiǎn)單測(cè)試系統(tǒng)。圖4說(shuō)明了具有腳本處理功能的LXI儀器去掉了每個(gè)子系統(tǒng)所需的獨(dú)立控制器,提高系統(tǒng)的擴(kuò)展性。
圖4 采用LXI實(shí)現(xiàn)的多控制器系統(tǒng)
應(yīng)用實(shí)例
本文通過(guò)幾個(gè)系統(tǒng)實(shí)例來(lái)說(shuō)明LXI新架構(gòu)的優(yōu)勢(shì)。
生產(chǎn)測(cè)試系統(tǒng)
該系統(tǒng)由兩臺(tái)與測(cè)試夾具相連的測(cè)試儀器組成。測(cè)試夾具裝有一個(gè)機(jī)械裝置,能夠快速地輸送器件流通過(guò)夾具進(jìn)行測(cè)試。待測(cè)的器件有多種類(lèi)型,隨機(jī)混合在一起。每種類(lèi)型的器件需要兩臺(tái)測(cè)試儀器執(zhí)行不同的測(cè)試步驟和測(cè)試參數(shù)。
常規(guī)的測(cè)試系統(tǒng)需要給兩臺(tái)測(cè)試儀、測(cè)試夾具和機(jī)械裝置增加一個(gè)控制器。在測(cè)試開(kāi)始的時(shí)候,控制器向第一臺(tái)儀器發(fā)出命令,識(shí)別待測(cè)器件并讀回結(jié)果。然后,控制器向兩臺(tái)儀器發(fā)出適當(dāng)?shù)拿盍?,根?jù)器件類(lèi)型控制相應(yīng)的測(cè)試操作。發(fā)給兩臺(tái)儀器的命令流必須正確地交錯(cuò)發(fā)出,并要由控制器進(jìn)行同步協(xié)調(diào)。
相反,采用具有腳本處理功能的測(cè)試儀和基于LXI的測(cè)試系統(tǒng)不需要控制器。每臺(tái)測(cè)試儀帶有自己的身份編號(hào),能夠像智能儀器那樣,不依靠外部控制器的命令而工作。每臺(tái)儀器都可以保存變量,處理?xiàng)l件事件,啟動(dòng)外部事件。用戶可以根據(jù)應(yīng)用的特定需要定義儀器的功能。如果需要的話,也可以使用其他的局域網(wǎng)觸發(fā)機(jī)制進(jìn)行同步。
相比傳統(tǒng)的設(shè)計(jì)方案,LXI系統(tǒng)的運(yùn)行速度快得多。由于在等待控制指令從控制器發(fā)送到測(cè)試儀的時(shí)候不會(huì)產(chǎn)生延遲,因此LXI儀器可以運(yùn)行在最大速度模式下。另外,整個(gè)系統(tǒng)的成本也大大降低了,所需的編程工作也比較簡(jiǎn)單和容易,因?yàn)檎麄€(gè)系統(tǒng)實(shí)現(xiàn)被分割成了多個(gè)小規(guī)模的、相對(duì)獨(dú)立的子系統(tǒng)。
科學(xué)實(shí)驗(yàn)系統(tǒng)
該科學(xué)實(shí)驗(yàn)是用來(lái)探測(cè)宇宙粒子的,也非常適合采用基于LXI的系統(tǒng)來(lái)實(shí)現(xiàn)。整個(gè)系統(tǒng)中安裝在一個(gè)大容器內(nèi),配置了幾百個(gè)彼此獨(dú)立的探測(cè)器,每個(gè)探測(cè)器連接到一臺(tái)具有腳本處理功能的LXI儀器上。其中任何一個(gè)探測(cè)器都能夠檢測(cè)到偶發(fā)粒子,通過(guò)分析探測(cè)器的信號(hào)就加以識(shí)別。當(dāng)某次事件出現(xiàn)時(shí),系統(tǒng)必須記錄下恰好從該事件發(fā)生前到發(fā)生后幾秒時(shí)段內(nèi)所有傳感器的測(cè)量結(jié)果。每個(gè)傳感器必須以每秒100,000次測(cè)量的速度進(jìn)行采樣。測(cè)試儀器通過(guò)網(wǎng)絡(luò)連接到一個(gè)中央控制器上。
在基于LXI的實(shí)現(xiàn)方案中,一旦實(shí)驗(yàn)開(kāi)始,每臺(tái)測(cè)試儀就會(huì)按照所需的速率開(kāi)始采樣傳感器,將讀數(shù)存儲(chǔ)在一個(gè)循環(huán)緩沖器內(nèi),最老的讀數(shù)在30秒后就會(huì)被覆蓋。每個(gè)讀數(shù)都帶有IEEE-1588同步時(shí)鐘的時(shí)間戳。運(yùn)行在測(cè)試儀上的腳本能夠近乎實(shí)時(shí)地分析采樣數(shù)據(jù),判斷是否探測(cè)到粒子。當(dāng)某臺(tái)測(cè)試儀探測(cè)到粒子時(shí),它立刻發(fā)送一條局域網(wǎng)觸發(fā)信息給所有其他測(cè)試儀,其中包含了指示本次事件起始點(diǎn)的時(shí)間戳。
在收到局域網(wǎng)觸發(fā)信息后,每臺(tái)測(cè)試儀都將在該事件時(shí)間點(diǎn)加上5秒的時(shí)候停止采樣傳感器,從而凍結(jié)其緩沖器內(nèi)所需的數(shù)據(jù)。中央控制器也會(huì)收到探測(cè)出該事件的儀器發(fā)出的局域網(wǎng)觸發(fā)信息,然后開(kāi)始收集所有測(cè)試儀的相關(guān)數(shù)據(jù)。收集完成后,控制器通知所有的測(cè)試儀重新開(kāi)始測(cè)試工作,科學(xué)實(shí)驗(yàn)系統(tǒng)具有很高的效率。
基于LXI的測(cè)試方案采用局域網(wǎng)觸發(fā)機(jī)制來(lái)進(jìn)行同步和控制操作,IEEE-1588同步時(shí)鐘提供了記錄一次事件時(shí)在控制器內(nèi)重新排列數(shù)據(jù)所需的精確時(shí)間戳。如果探測(cè)器的數(shù)量非常多,數(shù)據(jù)量很大,數(shù)據(jù)率很高,那么傳統(tǒng)實(shí)現(xiàn)方案的效率就很低,并且浪費(fèi)資源。
腳本處理的LXI原型機(jī)
我們通過(guò)一個(gè)測(cè)試系統(tǒng)原型機(jī)來(lái)說(shuō)明的LXI高級(jí)傳輸功能。該原型機(jī)的硬件系統(tǒng)是一塊商用的開(kāi)發(fā)板,其中配置了Intel PXA255微處理器,運(yùn)行Windows CE 4.20。一段采用Windows sockets編程的簡(jiǎn)短C語(yǔ)言程序負(fù)責(zé)執(zhí)行測(cè)試工作并記錄測(cè)試結(jié)果。該原型機(jī)還實(shí)現(xiàn)了一種商用的嵌入式腳本語(yǔ)言。系統(tǒng)的控制器一端由一臺(tái)Windows XP的筆記本電腦(Pentium M,1.4GHz)來(lái)模擬。另外一段簡(jiǎn)短的C程序執(zhí)行控制器一端的測(cè)試工作。所有的同步時(shí)序都通過(guò)外部的局域網(wǎng)分析儀進(jìn)行了驗(yàn)證。
LXI局域網(wǎng)的觸發(fā)性能
我們測(cè)量了各種情況下一條局域網(wǎng)觸發(fā)報(bào)文從控制器傳輸?shù)皆拖到y(tǒng)所需的時(shí)間。表1給出了所測(cè)試的組合情況與測(cè)量結(jié)果。
表1的結(jié)果是100次試驗(yàn)的平均值,在繁忙網(wǎng)絡(luò)測(cè)試中控制器與原型系統(tǒng)連接到一個(gè)繁忙企業(yè)網(wǎng)絡(luò)的兩個(gè)不同區(qū)段中,在獨(dú)立網(wǎng)絡(luò)的測(cè)試中,它們僅通過(guò)集線器相互連接在一起,數(shù)據(jù)包大小包括43字節(jié)的LXI局域網(wǎng)觸發(fā)報(bào)文頭數(shù)據(jù)。
測(cè)試結(jié)果表明,該原型機(jī)傳輸一條帶有最小數(shù)據(jù)負(fù)載的局域網(wǎng)觸發(fā)報(bào)文所需的時(shí)間平均略小于0.6ms。不同的網(wǎng)絡(luò)流量、網(wǎng)絡(luò)速度和協(xié)議類(lèi)型對(duì)結(jié)果的影響不大。當(dāng)報(bào)文大小增加到512字節(jié)時(shí),這些變化的因素就產(chǎn)生了較大的影響,最明顯的是增大了網(wǎng)絡(luò)流量。
人們一般認(rèn)為,使用以太網(wǎng)實(shí)現(xiàn)測(cè)試測(cè)量系統(tǒng)通常具有很大的延時(shí)。這里,延時(shí)指的是從一個(gè)節(jié)點(diǎn)發(fā)出一條消息到目標(biāo)節(jié)點(diǎn)收到該消息之間的時(shí)間延遲。表1表明,以太網(wǎng)具有較大的首字節(jié)延時(shí)。雖然這種延時(shí)對(duì)某些應(yīng)用存在問(wèn)題,但是通過(guò)適當(dāng)?shù)南到y(tǒng)配置和測(cè)試設(shè)計(jì)可以處理這種延時(shí)。另外,表1中的數(shù)據(jù)表示的不是低延時(shí)性能的水平,而是中等性能硬件的非優(yōu)化水平。表1不但給出了由于首字節(jié)延時(shí)而產(chǎn)生的延遲,而且也說(shuō)明了采用具有腳本處理功能的儀器是如何減輕延時(shí)影響的。在傳統(tǒng)的測(cè)試系統(tǒng)中,控制器發(fā)送大量的短消息給測(cè)試儀。對(duì)于具有腳本處理功能的測(cè)試儀,控制器就可以使用較少但較長(zhǎng)的消息傳送整個(gè)腳本,然后啟動(dòng)該腳本操作。
腳本傳輸性能
如表2的結(jié)果所示,相比每次傳輸一條指令,將腳本一次性傳輸?shù)綔y(cè)試儀上所需的傳輸時(shí)間大大減少了。這意味著即使腳本必須在測(cè)試過(guò)程中進(jìn)行傳輸而不是提前加載,LXI以太網(wǎng)系統(tǒng)中具有腳本處理功能的測(cè)試儀也具有大幅度的性能提升。
時(shí)間的單位是毫秒,表2的結(jié)果是100次試驗(yàn)的平均值,所有的測(cè)試都在100 Base T獨(dú)立網(wǎng)絡(luò)中進(jìn)行,一次性發(fā)送腳本需要三個(gè)數(shù)據(jù)包,每次發(fā)送一條指令需要150個(gè)數(shù)據(jù)包。數(shù)據(jù)包大小限制為最大512字節(jié)。
結(jié)語(yǔ)
我們推薦的LXI規(guī)范定義了豐富的功能,使得基于局域網(wǎng)互連的測(cè)試儀能夠?qū)崿F(xiàn)復(fù)雜的測(cè)試與測(cè)量功能。諸如局域網(wǎng)觸發(fā)、統(tǒng)一的觸發(fā)模型、對(duì)等的消息傳遞和IEEE-1588時(shí)鐘同步等特性,為測(cè)試測(cè)量系統(tǒng)的設(shè)計(jì)者提供了全新的手段,為設(shè)計(jì)者和用戶帶來(lái)了實(shí)實(shí)在在的好處。
評(píng)論