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