1. 概述
對于許多應用,如RF記錄和回放,電子設備驗證和高通道數數據采集都會產生大量的數據。 傳統上,示波器、邏輯分析儀和任意波形發生器等臺式儀器系統只能實現有限的數據串流。 隨著儀器的不斷演進,儀器可能具有令人難以置信的快速采樣率和高信號帶寬,但是儀器與PC之間負責向用戶返回數據以便進行處理或存儲的連接總線卻往往是個瓶頸。 數據通信總線的吞吐量可直接影響儀器帶寬接入,進而影響整體測試和測量時間。
隨著基于PC的測量硬件不斷采用更高性能的數據總線,這些硬件不僅可以更有效地解決現有應用需求,而且還可解決以前無法滿足新的應用需求。 PCI Express到PXI Express總線的演進進一步提高了數據傳輸速率。 從儀器經由控制器到達硬盤的數據串流將儀器的可用內存從百兆字節提高到千兆字節。 利用高帶寬PXI Express總線架構,數據能夠以足夠高的速率實現硬盤,以支持高端儀器。 現在,隨著讀/寫速度和存儲容量的提高,數據流可在比以往更長的測試時間周期內實現更快速的采樣率。
2. 典型的串流架構
典型串流架構的主要目標是為了通過儀器高速來回傳輸數據以便連續生成或采集信號。 執行信號生成任務時,上位機會從內存獲取數據,然后通過通信總線傳輸至儀器。 接著儀器會根據這些數據生成物理信號。 信號采集任務則是反向實現:儀器生成的數據通過總線傳輸至上位機,最后存儲在內存中。 取決于基本組件與總線接口所搭載的技術,很多元件都會給系統帶來吞吐量瓶頸,進而降低串流速率。
?
圖1.評估每個系統接口,以便實現最高串流性能來滿足應用需求,例如存儲和回放已記錄的RF數據。
3. 串流架構的發展
PXI-1標準采用外設部件互連標準(Peripheral Component Interconnect, PCI)總線來實現機箱內的PXI模塊與PXI控制器的數據交換。 PCI是一種平行總線,其中最常見的是32位位寬*33 MHz頻率。 PXI模塊所采集的數據會通過PCI總線、I/O控制器與內部總線,從板載設備內存傳送至系統內存(RAM)。 接著再通過內部總線從系統內存傳輸至硬盤。 PXI模塊所產生的數據則會以相反的方向傳輸。
?
圖2.PCI系統的數據流架構,位于PXI嵌入式控制器和機箱之間。
根據規范,理論上PCI總線的最大帶寬為132 MB/s,可轉換為110 MB/s的實際持續吞吐量。 由于所有的PCI設備僅通過一條鏈路與主機控制器進行數據通信,因此所有設備都會共享110 MB/s的實際帶寬。 因此就PXI系統而言,PXI機箱內的所有模塊都會共用PCI總線帶寬。 隨著PXI儀器的性能不斷提高,應用也隨之不斷演變,而且模塊與控制器之間需要傳輸的數據量也將持續增加。 對于這些應用,PCI總線的吞吐量將很快就不夠用。
作為PCI總線的進化版,PCI Express保留與PCI的軟件兼容性,并將并行總線替換為高速(2.5 Gb/s)串行總線。它借助稱為“巷道(lane)”的差分信號線對發送數據,使各條巷道在各個方向上具有250 MB/s的帶寬。 多條巷道可組合在一起形成x1(乘一)、x4、x8、x16等典型鏈路帶寬。 x16 Gen1鏈路可提供4 GB/s的單向帶寬。 而且,PCI Express設備不像PCI那樣與總線上的所有設備共享帶寬,而是具有專用帶寬。 因此可使用更多的PXI模塊持續在嵌入式控制器來回傳輸數據。
?
圖3:鏈路根據組合中的通道數量進行定義,并且標示為“xN”,N代表巷道數量。 例如,PCI Express Gen1巷道支持250 MB/s的速率,而PCI Express Gen2巷道則可支持500 MB/s的速率。
PXI Express機箱可容納PXI或PXI Express模塊,因此可輕松適應不同的應用。 但由于儀器功能越來越豐富,總線技術也越來越精進,因此隨著PCI Express 2.0規范(也稱為PCI Express Gen2)的推出,PCI總線可提供更高的帶寬。 PCI Express Gen2總線的比特率增加了一倍,從2.5 GT/s提高到5.0 GT/s,因而提供了兩倍于PCI Express Gen1的數據傳輸速率,同時保留與PCI Express Gen1的完整軟硬件向后兼容性。 PXI Express也在不斷地利用最先進的PCI Express技術進步。
例如,NI PXIe-8133嵌入式控制器采用了PCI Express 2.0,提供了4組x4 Gen 2 PCI Express鏈路來連接PXI機箱背板。 PXIe-8133嵌入式控制器的系統總帶寬高達6.4 GB/s,相較于采用PCI Express Gen1鏈路的前一代嵌入式控制器,足足提高了一倍。
?
圖4.利用PCI Express Gen2,用戶可同時串流更大量的I/O通道,進而構建更大型、更復雜的數據記錄/回放應用。
PXIe-8133嵌入式控制器連接著處理器與板載PCIe開關之間的x16 Gen2鏈路, 板載PCIe開關提供了4組x4 PCIe鏈路,連接至帶寬為6.4 GB/s的PXIe-1075機箱。 PXIe-8133的內存控制器搭載最先進的處理器技術,可連接DDR3 1333 MHz DRAM的兩個通道,并且提供8 GB/s的總內存吞吐量。強大的PCIe Gen2技術與高內存容量均提高了系統總帶寬。 通過這一配置,PXIe-8133搭配PXIe-1075機箱即可充分利用機箱帶寬,實現6.4 GB/s的系統總帶寬?;谶@一架構,機箱與嵌入式控制器的組合現在可匹配相應的機箱帶寬容量,并且隨著機箱設計的演變,將可實現更高的數據吞吐量。
4. 點對點串流架構
有些高吞吐量應用對于通信延遲和數據帶寬容量有嚴苛的要求, 對于這類應用,利用最新的P2P串流技術是不錯的選擇。 NI P2P串流技術采用PCI Express,可直接在多個儀器之間點對點傳輸數據,不需經過主處理器或內存。 因此系統中的設備無需額外占用系統資源即可共享信息。
?
圖5. 使用P2P技術,數據包無需再經過系統主控制器內存,這樣設備之間便可確定地傳輸數據。
5. 優化串流架構
一般來說,對于需要高速數據串流的應用,必須從整體上審視整個數據傳輸架構,包括模塊、背板以及控制器,這樣才能全面了解平臺的性能。 在以前的串流架構選項中,NI PXI Express嵌入式控制器內置的PCI Express鏈路提供足夠的帶寬來盡可能多地傳輸來自機箱的數據。 在評估其他廠商的設計方案時,廠商的某些選擇可能會影響系統的整體帶寬容量。
?
圖6. 評估嵌入式控制器與機箱選項時,需要考慮架構設計選項,以盡可能避免系統瓶頸。
以圖7為例,其他廠商的PXI Express嵌入式控制器在CPU與板載PCIe開關之間采用了PCI Express x8 Gen1鏈路,因此限制了機箱與處理器之間的帶寬。 雖然其余系統部分可處理高達8 GB/s的串流需求,但是所選用的嵌入式控制器架構仍會導致系統總帶寬僅限于2.0 GB/s。因此在設計串流系統時,必須確保系統元件之間能彼此配合,以實現各自的帶寬規范級別。
相較之下,NI最新的PXI Express平臺產品、機箱、嵌入式控制器都已針對這些高吞吐量應用進行了優化。 PXIe-1085采用最新的PCI Express Gen3技術,并與搭載Intel Xeon八核心處理器的PXIe-8880配合使用。 NI PXIe-1085的插槽均為混合插槽,以便支持PXI 或PXI Express模塊。 總之,這款機箱可為測試/測量應用提供出色的性能和靈活性。
?
圖7. PXI Express系統利用PC總線的技術優勢來持續提高數據帶寬容量,進而滿足最新的測試應用需求。
PXIe-8880嵌入式控制器通過x16 和x8 PCIe Gen 3 鏈路連接至帶寬為25.6 GB/s的PXIe-1085機箱。 PXIe-8880內存控制器采用最先進的處理器技術,可連接至DDR4 1866 MHz DRAM的三個通道,提供了高達30 GB/s的總內存吞吐量。強大的PCIe Gen2技術與高內存容量使得系統總帶寬比上一代產品提高了一倍,而相比其他廠商的產品則高出三倍之多。 這些PXI Express平臺產品集成于單個機箱之中,能夠以最大速率實現更高性能的儀器串流。
6. 結論
應用的串流性能取決于系統的多個因素。 評估串流架構的每個鏈路對于獲得最大整體系統吞吐量至關重要。 利用最新的PXI Express技術優勢,系統的帶寬最高可達到25.6 GB/s。高帶寬容量結合機箱的靈活性可支持多種PXI或PXI Express模塊,滿足各種應用的需求,同時也可適應未來不斷演變的儀器。
評論