學術專區 關於NI NI活動訊息 NI Developer Zone 技術支援服務 使用者解決方案 產品與服務 連絡NI MyNI

檔案類型: 線上教學
接受 NI 支援: 是
發表日期: Mar 26, 2008


意見反應




相關目錄

技術

相關連結 - Developer Zone

相關連結 - Products and Services

以平行測試技術提升傳輸率

0 評分 | 0.00 之 5
列印 | PDF

概觀

當測試系統架構設計、開發,並建置測試系統時,必須搭配某些發展中的技術,如多核心處理器與高速資料匯流排。 20 世紀的建築大師 Frank Lloyd Wright 即說過:「每幢偉大的建築…必來自於建築師所耗費的大量時間與心血。」測試系統架構亦然。當設計、開發,並建置測試系統時,必須搭配如多核心處理器的發展中技術、如 PCI Express 的高速資料匯流排,以相輔相成完成系統。透過 NI LabVIEW 軟體與 NI TestStand 測試管理軟體的整合,測試工程師可建立高效能的測試系統,以進行平行處理、平行量測,甚至可於生產線上進行完全的平行測試作業。

平行處理

在傳統的 CPU 設計中,效能往往受限於如高時脈所產生的高溫問題。為了確保電腦平台可趕上處理需求,晶片製造商現正開發多重處理核心的處理器。為了讓自動化測試應用能夠充分利用多核心技術的效能與輸出率,軟體應用程式必須針對多處理核心,建立可於處理核心中執行的多執行緒。


[+] 放大圖


圖 1. LabVIEW 編譯器針對程式碼的平行區段建立獨立執行緒,且使用者不需進行設定。

 

然而,對大部分的設計與測試工程師而言,均需以文字架構的程式設計語言 (如 C 語言) 撰寫多執行緒的應用,同時必須具備建立語法的專業知識,再以執行緒的安全性為前提,管理執行緒並傳輸資料。使用如 LabVIEW 的圖形化程式設計環境,工程師即可完全利用多核心的處理功能。如圖 1 所示,LabVIEW 中的 2 個迴路並未共用資料相依性 (Data dependency),且個別於執行緒中自動執行,同時省去工程師的執行緒管理細節作業。

平行量測

除了處理元件之外,平行量測作業更需要測試系統的所有子元件,以支援平行模型。此包含資料擷取與轉換作業。

 

 

圖 2. PCI Express 提供專屬頻寬,而非共用的資料傳輸作業;可大幅提升所擷取的資料量,並將之串流至磁碟。

 

由於匯流排上的裝置均共用系統頻寬,因此現今模組化儀控最常見的資料傳輸匯流排,包含 PCI、USB、乙太網路,與 GPIB – 並不支援完全平行的資料傳輸模型。若 I/O 裝置擷取或產生的累計速率 (Cumulative rate),高於該匯流排的速率,則可能發生資料流失。此問題的一般解決方式,即是依序執行量測作業,並整合 I/O 裝置內建記憶體的大型緩衝區,讓資料在等待通訊匯流排時不致遺失。

相對來說,PCI Express 為最新的高效能資料傳輸匯流排,可對各裝置提供專屬頻寬,而該傳輸率仍可高於前述的其他匯流排。PCI Express 具有 x1、x4、x8,與 x16 的通道 (Lane),每通道可達 250 MB/s 傳輸率。x1 與 x4 為儀器硬體的常見選項,並分別提供 250 MB/s 與 1 GB/s (4 通道可達 250 MB/s) 專屬頻寬。

 


[+] 放大圖

圖 3. PCI Express 與模組化儀控具有平行量測的可調整式模型架構。

 

當 PCI Express 機板擷取資料時,將透過專屬的 PCI Express 通道自內建記憶體開始傳輸,並串流硬碟或系統記憶體。一旦進入系統記憶體,LabVIEW 應用即可存取資料。若搭配使用多核心處理器,則可完成從訊號到最後量測的平行量測作業。

 

平行測試

透過多核心處理、PCI Express,與 LabVIEW,測試工程師可建立平行的量測系統,以同時測試單一在測單元 (UUT)。然而,平行測試的定義卻為能夠同步測試多個 UUT。該替代方式則能夠達到依序測試 UUT。雖然平行測試可縮短測試總次數、提升測試輸出率,並改善儀器使用效率 (參閱圖 4),卻仍無法降低開發平行測試系統的複雜度。若要開發可單次測試多重 UUT 的測試管理軟體,則需要初步了解作業系統搭配平行作業的方式,如 Windows Critical Sections。且需在沒有衝突或停頓 (Deadlock) 的情況下,仔細考量能讓儀器共用多重 UUT 的方式。

 


[+] 放大圖

 

圖 4. 平行測試多重 UUT,可縮短總測試時間並提升儀器效率。

 

另 1 個開發客制平行測試系統的替代方法,即是使用現成的測試管理軟體,如 NI TestStand。NI TestStand 內建的功能,可避免開發低階測試系統時的複雜性,可於多執行緒中執行平行測試序列,並同時管理作業系統與儀器資源。

 

建置平行的測試架構

多核心處理器與 PCI Express 正改變電腦的應用領域,亦根據應用邏輯的資料流,使 LabVIEW 圖形化程式設計達到真正的平行處理與量測。只要搭配使用 NI TestStand,則亦完成了平行測試架構。最後則可歸納出:使用 PCI Express 的測試系統可提升資料傳輸率;使用 LabVIEW 與多核心處理功能則可提升處理效能;使用 NI TestStand 則可降低每 UUT 的總測試成本。

 

©National Instruments Corporation. All rights reserved. LabVIEW, National Instruments, NI, NI TestStand, and ni.com are trademarks of National Instruments. Other product and company names listed are trademarks or trade names of their respective companies.

0 評分 | 0.00 之 5
列印 | PDF

合法
此教學由美商國家儀器 (以下簡稱 NI) 開發。此教學受 NI 技術支援,但未經完整測試及檢驗。NI 不保證品質,亦不為其更新版本、相關產品及驅動程式等後續支援負責。此教學不具任何形式保證,且不受任何特定用途規範。(http://ni.com/legal/termsofuse/unitedstates/us/)