高速數據流盤(pán)處理:編程與標定

發(fā)布時(shí)間:2010-11-8 11:03    發(fā)布者:eetech
關(guān)鍵詞: 編程 , 標定 , 高速 , 流盤(pán) , 數據
PXI Express正在改變著(zhù)工程師們設計系統的方式。本文討論了支持高速數據流處理的技術(shù)、最大化系統流處理性能的應用設計和在數據流導入磁盤(pán)與數據流導入存儲器應用中可獲得的數據速率基準。

引言

流處理是指以足夠維持連續采集或信號生成的高速率將數據傳輸至儀器或從儀器輸出。這就意味著(zhù)任一項流處理應用的性能總是受限于數據的大小和傳輸速度。許多工程師利用了“流處理”技術(shù),但是在很多應用中,數據無(wú)法以足夠快的速率被生成或采集。在這些情況下,工程師們必須折衷處理,或者以足夠低的采樣率對要通過(guò)總線(xiàn)傳輸的數據進(jìn)行采樣,或者以所需的高速率進(jìn)行采樣但所持續時(shí)間較短(這個(gè)時(shí)間受限于儀器的板載存儲器)。然而,無(wú)論哪一種的犧牲都不是我們希望的。

傳統意義上,桌面儀器系統,如示波器、邏輯分析儀和任意波形發(fā)生器等,都已經(jīng)實(shí)現了一定程度的數據流處理。雖然許多儀器具有非常高的采樣率和帶寬,但是與PC接口以返回數據給用戶(hù)的總線(xiàn)卻時(shí)常被忽略,實(shí)際上它會(huì )大大增加整體測試時(shí)間。例如,用獨立示波器進(jìn)行的大部分數據采集時(shí)間都是有限的,采集的持續時(shí)間由示波器中板載存儲器的大小所決定(一臺獨立任意波形發(fā)生器也面臨同樣的問(wèn)題,除非待發(fā)生的波形是直接下載到板載存儲器中)。數據采集完成之后,數據通過(guò)以太網(wǎng)(或者更為常用的GPIB)傳輸至控制PC。試考慮這樣一種情形,事件觸發(fā)之后以1GS/s的速率對數據進(jìn)行采樣。如果該設備每通道具有256MB的板上存儲空間,那么約250ms后存儲器就被寫(xiě)滿(mǎn)了,數據采集就會(huì )停下來(lái)。如果儀器接口使用GPIB總線(xiàn)(其帶寬約為1MB/s),那么用戶(hù)必須等待約4.5分鐘(250s),這些數據才可以傳輸至計算機供分析使用,F在,將其與具有相同采樣率和板上存儲空間的NI數字化儀/示波器相比較。相同的數據通過(guò)高帶寬的PCI/PXI總線(xiàn)傳輸僅需要不到3秒的時(shí)間——超過(guò)80倍的性能提升。PCI Express/PXI Express總線(xiàn)甚至支持更快速的數據傳輸。            

流處理技術(shù)

在PCI Express技術(shù)之上構建的PXI Express,為每臺儀器提供專(zhuān)用的帶寬。PCI Express包括x1、x4、x8和x16等幾種鏈路(讀為"乘1"、"乘4"等),提供每通道250MB/s的吞吐量并具有極低的時(shí)延。對于儀器級硬件,x1與x4選項最為常見(jiàn),它們分別提供了250MB/s和1GB/s(4×250MB/s)的專(zhuān)用吞吐量。相應地,整個(gè)系統的吞吐量隨機箱內儀器數的增加而增加。下圖著(zhù)重闡述了各種總線(xiàn)的帶寬與時(shí)延比較。時(shí)延描述的是數據傳輸中所發(fā)生的延遲,它常常在考慮系統設計時(shí)被忽略。許多人認識到,更高的帶寬是希望得到的,但高時(shí)延也會(huì )對測試時(shí)間存在不利影響,所以也應當在系統設計中被考慮。





圖1:常見(jiàn)儀器總線(xiàn)的帶寬與時(shí)延的比較。

PXI平臺,由于基于高帶寬的PCI與PCI Express總線(xiàn),因而支持儀器將數據流導入到除板上設備存儲器之外的信號源或從其導出。一個(gè)PXI/PXI Express數字化儀/示波器能夠以高采樣率持續采集數據,因為高帶寬總線(xiàn)支持將數據以高達1GB/s的速率實(shí)時(shí)傳送至PC存儲器或硬盤(pán),這意味著(zhù)數據可以在在設備存儲器中被覆蓋之前被讀取。

數據采集或信號發(fā)生的瓶頸不再是總線(xiàn),而實(shí)際上是對系統存儲器(硬盤(pán)驅動(dòng)器或者RAID陣列)進(jìn)行讀取/寫(xiě)入數據的操作。這就意味著(zhù)工程師們可以以其所需的高采樣率長(cháng)時(shí)間采集數據或發(fā)生信號,而不必影響其采樣率或測試時(shí)間。例如,利用一個(gè)PXIe-5122數字化儀與一個(gè)具有4TB容量的、12驅的RAID陣列,可以在兩個(gè)同步采樣的通道以100MS/s的最大采樣率采集數據,持續時(shí)間超過(guò)2.5小時(shí)。

所有這些意味著(zhù)什么?許多應用挑戰因需要非常昂貴的專(zhuān)有系統而在先前無(wú)法解決,但由于使用商業(yè)可用的PXI Express,解決這些挑戰變得可行。其中,一些應用包括信號智能中的RF/IF數據流處理、數據記錄與回放、面向圖像傳感器與顯示面板測試的數字視頻發(fā)生/流處理,以及其它高數據吞吐量的應用。            

數據流盤(pán)應用的最優(yōu)方法

應用從單線(xiàn)程到多線(xiàn)程架構的演進(jìn)被廣泛認為是重大的編程挑戰。LabVIEW為多核處理器提供了一個(gè)理想的編程環(huán)境,因為L(cháng)abVIEW應用在本質(zhì)上是多線(xiàn)程的。因而,LabVIEW編程人員通過(guò)幾乎很少甚至無(wú)需額外的編碼,便可以從多核處理器獲益。多線(xiàn)程應用程序非常適用于并行測試和數據流盤(pán)應用,而且,在流處理應用中運用適當的編程技術(shù),可以使PXI Express儀器發(fā)揮最大性能,這是通過(guò)代碼的并行化完成的。

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





圖2:帶有隊列結構的生產(chǎn)者/消費者循環(huán)架構。

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




圖3:對列結構的數據流編程模型。
本文地址:http://selenalain.com/thread-37254-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)在線(xiàn)工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页