久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 高速數據流盤處理:編程與標定

高速數據流盤處理:編程與標定

作者: 時間:2009-04-13 來源:網絡 收藏

數據流盤應用的最優方法

應用從單線程到多線程架構的演進被廣泛認為是重大的編程挑戰。LabVIEW為多核處理器提供了一個理想的編程環境,因為LabVIEW應用在本質上是多線程的。因而,LabVIEW編程人員通過幾乎很少甚至無需額外的編碼,便可以從多核處理器獲益。多線程應用程序非常適用于并行測試和數據流盤應用,而且,在流處理應用中運用適當的編程技術,可以使 儀器發揮最大性能,這是通過代碼的并行化完成的。

同樣,并行機制還可以應用于創建數據流盤應用或從計算機處理器獲取最大性能。在流盤應用中,兩個主要占用總線和處理器的任務是:1)從數字化儀采集數據,和2)將數據寫入到文件中。由于這一點是事先知道的,所以進程可以劃分為多個循環。利用LabVIEW隊列機構,每個循環間實現了數據共享。通常,這被稱為一個生產者-消費者算法結構。



圖2:帶有隊列結構的生產者/消費者循環架構。

在上例中,上面的循環(生產者)從一個高速數字化儀中采集數據,并將其傳遞至一個隊列。下面的循環(消費者)從隊列中讀取數據并將其寫入到磁盤。在后臺,LabVIEW為隊列在PC中分配一個存儲塊。該存儲器模塊被用作兩個循環間數據傳遞的臨時存儲FIFO。對于大多數編程語言,多個進程間的存儲器共享要求不菲的編程開銷。然而,LabVIEW處理了所有的存儲器訪問,以確保讀-寫競爭狀況不會發生。隊列結構的執行可以通過下圖可視化展示:


圖3:對列結構的數據流編程模型。


上一頁 1 2 3 下一頁

評論


相關推薦

技術專區

關閉