什麼決定匯流排效能?

概觀

您正設計新的測試系統,其中的單位傳輸率至關重要。您正評估使用 GPIB、USB、乙太網路或 PCI/PXI Express (PXIe) 的多種儀器。您如何知道哪些儀器匯流排能提供足夠的系統效能?每個匯流排選項的頻寬理論都很適合用來評估效能,但在評估方面往往需要深入了解。本文將探討影響儀器匯流排選擇的四大因素:匯流排頻寬、潛時、特定廠商的驅動程式執行方式與應用。

內容

測試系統的簡化模型

即便是簡化的測試系統模型 (如圖 1 所示),仍有許多軟硬體元件會影響匯流排效能。在主機中,軟體應用程式、作業系統、CPU/RAM 組合、即時作業系統支援、多核心 CPU 最佳化、軟體堆疊、驅動程式與硬體介面都會影響匯流排效能。在儀器方面,I/O 硬體與韌體、CPU/RAM 組合以及量測速度都會影響匯流排效能。變更上述任一元件可能會改變匯流排效能,就像在不同匯流排之間切換會影響整體系統效能一樣。所有這些元件都可劃分為影響匯流排效能的四大因素之一。許多匯流排效能比較只會聚焦在匯流排頻寬上,因此忽略了其他會影響實際匯流排效能的軟硬體元件。系統設計人員不但要評估匯流排的理論效能,還要評估匯流排上的特定裝置在整個系統環境下的效能。

 
 
圖 1.主機電腦與儀器系統元件


如前所述,影響匯流排效能的四大因素是匯流排頻寬、潛時、特定廠商的驅動程式/Firmware實作與應用。頻寬是資料傳輸率。此值的量測單位通常是每秒數百萬位元 (Mbit/s)。潛時是傳輸時間。量測單位通常是秒。就乙太網路傳輸而言,大型資料區塊通常會分成較小的區段,並且以多個封包傳送出去。潛時就是傳送一個封包的時間長短。系統對資料的回應速度,無法超越匯流排的潛時。匯流排驅動程式軟體、韌體與硬體實作方式都會影響其效能。

並非所有儀器皆可相同。採用多核心處理器或即時作業系統 (RTOS) 與更多 RAM 的 PC 效能會高於較慢的處理器與較低的 RAM 的 PC。儀器也一樣。不論是 PXIe 模組化儀器還是傳統儀器,儀器設計人員在執行上所取捨的方式都會影響儀器效能。PXI Express 儀器的主要優勢之一,在於軟體定義,因此終端使用者可以決定最佳的實作取捨。有些還採用可程式化的 FPGA 架構,可提供更精確的效能,並在不影響其他系統資源的情況下選擇在儀器上進行客制處理。

影響匯流排效能的最後一個主要因素,就是應用方式或儀器使用方式。在某些應用中,量測子系統是瓶頸,而在其他應用中,瓶頸則是處理器子系統。了解哪個子系統是瓶頸,有助於提升效能。其中最重要的就是,要讓特定匯流排具備足夠的高效能,就必須符合或超越應用需求。詳細考量每個主要因素,有助於使用者更了解取捨。

 

圖 2.主流 T&M 匯流排的理論頻寬與潛時

 

 

頻寬



如前所述,潛時會根據資料傳輸規模,大幅影響匯流排效能。主流儀器控制匯流排的頻寬與潛時理論 (如圖 2 所示),有助於了解匯流排效能與傳輸大小之間的關係。以兩個通訊匯流排為例。高速乙太網路 (100M 乙太網路) 的頻寬為 100 Mbit/s,高於高速 GPIB 的 64 Mbit/s 頻寬。但在毫秒範圍內,快速乙太網路的潛時遠低於高速 GPIB 潛時 (僅為數十毫秒)。圖 3 顯示同一儀器上多個匯流排的匯流排效能 (實際傳輸率)。高速 GPIB 可提供更高的效能,以進行小於 8 Kbyte 的資料傳輸。但若傳輸規模大於 8 Kbyte,乙太網路就能發揮更高的效能。

 

 
圖 3. 使用老化示波器,比較 HS-488 與乙太網路在不同封包大小中的效能



許多工程師仍然仰賴採用 GPIB 或舊版乙太網路介面的老舊儀器,因此了解其效能特性對於維護現有系統至關重要。然而,PXI 等現代平台能大幅提升傳輸率、降低潛時,並且能簡化整合需求與架構的發展。這些升級也有助於支援測試系統,因為技術持續演進並降低長期維護的複雜度。

同理,在比較通訊匯流排與系統匯流排時,頻寬與潛時都會影響匯流排效能。GPIB、USB 與 LAN 等通訊匯流排通常會在 PC 外部使用,以便連接週邊裝置,而且潛時較長且頻寬較低。如 PCI 與 PCI Express 等系統匯流排通常會用於 PC 中,且具有較高的頻寬,延遲較佳,可針對小型與大型傳輸規模提供最佳效能。原因在於,多個通訊匯流排的資料會彙整至系統匯流排,以供主機 CPU 進行處理。


另一方面,通訊匯流排的主要價值並非效能,而是其他因素。舉例來說,USB 可讓您輕鬆連接外部裝置,而且 LAN 非常適合用來分配長距離的量測作業。但這兩種匯流排都會透過更高頻寬與較低潛時的系統匯流排 (例如 PCI Express) 連接至 CPU 與 RAM。

 
 
圖 4. 相同匯流排的實作差異會影響 2 個老化示波器的效能

實作方式

執行是影響匯流排效能的第三項主要因素。舉例來說,匯流排介面晶片的選擇、儀器韌體或儀器驅動程式的編碼,以及 CPU 與 RAM 的容量,都會影響匯流排效能。以 2 家不同廠商的標準 GPIB 與乙太網路匯流排為例。圖 4 的結果顯示了執行選擇對匯流排效能的影響。第一款示波器可針對標準 GPIB 與乙太網路的大多數傳輸規模提供更出色的效能。此基準使用 SCPI 指令的相同 PC 搭配相同的 GPIB 連接線。唯一的差異在於 GPIB 介面的儀器實作方式。(這些比較是根據老化的儀器進行,且仍有助於說明實作差異對傳輸率有何影響,即使使用相同的匯流排類型也一樣)。

由於大多數儀器廠商並未指定其儀器的匯流排效能,因此這項影響特別有問題。此外,儀器處理器類型與速度、記憶體深度、作業系統、Firmware與使用者介面軟體,都會影響匯流排效能。也就是說,在完成最終儀器選擇前,系統設計人員應先進行匯流排效能基準測試,在使用停產系統或缺乏明確傳輸率規格時更是如此。

另一個對匯流排效能的重大執行影響,就是儀器驅動程式所需的主機負載。使用 PCI/PXI、PCI Express/PXI Express 等系統匯流排的儀器,可利用直接記憶體存取 (DMA) 將資料直接從系統記憶體/系統記憶體傳輸,並將主機 CPU 的干預降至最低。在這些情況下,CPU 的角色主要在於資料串流的設定與保留記憶體。相對而言,使用通訊匯流排的 Instrument Drivers 通常需要主機 CPU 在每一次記憶體輸入與輸出傳輸時,密切管理。這些驅動程式軟體堆疊會增加資料傳輸時序的延遲與抖動,因為這些驅動程式需要額外的處理作業,而且會受作業系統的優先順序影響。根據所需的傳輸率,驅動程式軟體堆疊可能會消耗相當大的處理器容量,甚至可能會成為資料串流的瓶頸。

應用程式

要打造高效能匯流排,最後一個主要因素就是儀器在系統中的應用。某些應用需要大量的資料處理作業,例如運算 FFT 與傳輸大型波形,而其他應用則可能需要較少的處理作業,例如尋找最小或最大值。不過,其他系統可能完全不對處理需求敏感,因為量測完成後的處理作業將離線進行。應用的運算密集度與潛時敏感度越高,處理器就越容易造成瓶頸。

在這類用途中,採用 PCI/PXI 與 PCI Express/PXI Express 等系統匯流排架構的儀器能提供更好的解決方案,因為這類儀器支援以 DMA 為架構的傳輸,而且能提供較低的延遲與更高的頻寬 (請參閱圖 3)。另一方面,針對具有較低傳輸率與延遲容許性的應用,通常會使用任何匯流排。在這些情況下,儀器的選擇可能會符合其他條件,例如量測速度、準確度、精確度、距離、成本、耐用度或尺寸。

結論

從對影響效能的四大因素進行分析之後:匯流排頻寬、匯流排潛時、特定廠商的實作與應用,還有一些值得考慮的系統設計建議。首先,為了發揮最高效能,量測作業必須盡可能靠近 CPU 或搭載 PXI 的系統。如此一來,即可妥善利用搭載 DMA 與低系統匯流排潛時的高效能驅動程式,同時減少量測時序與處理器負載所造成的額外延遲。最後,請注意,即使在相同的匯流排內,也適用於相同的量測類型,不同儀器及其驅動程式的傳輸率效能與 CPU 使用率也不盡相同。因此,如果找不到明確的規格,您可能需要在進行最終選擇之前先進行潛在儀器的匯流排效能基準測試。

當匯流排效能至關重要時,PXI Express 將同級最佳的頻寬、低延遲與軟體透明度與擴充性相互結合,讓您無需重新設計整個測試系統,即可隨著需求變化升級效能並新增功能。