NI 多功能 RIO 常見問題 (FAQ)

內容

什麼是 RIO 技術?

透過 NI 可重設 I/O (RIO) 技術,即可使用可重設的 FPGA 晶片與 NI LabVIEW 圖形化開發工具,定義所需的客製化量測硬體電路。NI R 系列多功能 RIO 介面卡,透過單一介面卡整合 FPGA 技術、8 個類比輸入、8 個類比輸出與高達 96 個數位 I/O 通道,同時符合 PCI、PCI Express、PXI/CompactPCI 與 USB 等標準電腦規格,堪稱價值與效能的完美結合。只要搭配 LabVIEW FPGA Module,就可以建置自己的硬體屬性,進而執行客制化資料擷取、高速控制、數位通訊協定、感測器模擬、內建訊號處理等作業,完全不需要硬體描述語言 (HDL) 的深入知識。   

圖 1。R 系列介面卡符合 PCI、PCI Express、PXI/CompactPCI 與 USB 等標準電腦規格。

 

什麼新的多功能 RIO 裝置?

您可以在下列商店頁面上找到最新的多功能 RIO 裝置:

相較一代 R 系列介面卡,新的 R 系列介面卡有何不同?

全新的 R 系列介面卡搭載高效能 Kintex-7 FPGA,相較於上一代 R 系列介面卡,可提供較快的程式碼執行速度,並容納更多 LabVIEW 程式碼,進一步提升整體效能。全新的 Kintex-7 FPGA 非常適合 USB R 系列介面卡,此系列裝置的容量與效能可媲美上一代的高階 FPGA,但是耗電量只有一半。大幅降低耗電量之後,相較於上一代 R 系列介面卡,每個介面卡的數位訊號處理 (DSP) 效能即可提高兩倍。有了更多的邏輯與 DSP 資源之後,使用者即可實作更複雜的演算法,運用更豐富的訊號處理與即時分析功能,解決目前應用持續增加的 I/O 資料率與複雜度需求。如要深入了解 Kintex-7 FPGA,請參閱 [Xilinx 7 系列 FPGA 模組的優勢一文]。

此外,全新的 NI USB-785xR 裝置可針對所有八個類比輸入通道,以 16 位元解析度進行最高 1 M/s 的取樣,且可選擇的增益解析度為 ±10 V、±5 V、±2 V 與 ±1 V。透過 FPGA 架構的平行執行,多個控制迴路不必競爭處理器頻寬。更快的類比輸入速率也可提升類比觸發準確度與頻率量測功能。全新的 NI USB-785xR 介面卡還可支援定點 I/O,以便在 FPGA 直接使用工程單位。

最後,新的 R 系列介面卡具有更快的數位 I/O 通道,可在最高 80 MHz 的速度下切換。  此外,您可以直接從 LabVIEW FPGA 選擇數位 I/O 通道的電壓準位。可用的邏輯準位為 3.3 V、2.5 V、1.8 V、1.5 V 與 1.2 V。

 

NI FPGA 產品的 FPGA 比較

閘道 (Gate) 數量為 FPGA 晶片與 ASIC 技術常見的比較方式,但卻無法實際反應出 FPGA 個別元件的數量。這也是 Xilinx 並未指定 FPGA 閘道數量的原因之一。反而使用一些不同元素做為比較標準,包含正反器、查找表 (LUT)、DSP 分割區和可用的 Block RAM。查看「FPGA 晶片指南的分割」(Slices on an FPGA Chip guide) 上的表格,以取得更多資訊。

如何針對個人應用選擇正確的 FPGA?

事實上,極難以決定應用到底需要較大或較小的 FPGA。有了 LabVIEW FPGA Module 與 NI-RIO 驅動程式,即可在沒有硬體的情況下編譯程式方塊圖;所以如果要知道自己需要多少資源,最好的方法就是實際測試。

如要判斷自己所需的 FPGA,可採用下列一般指南:如果要在 FPGA 上執行基本時序、觸發與同步化等應用,可選用小型 FPGA。如果應用項目包含時序、觸發、同步化作業,以及其他的訊號處理作業 (控制、數位濾波、複雜的類比觸發),就會需要可提供較多資源的大型 FPGA,以便實作這些作業。

 

Virtex-II 程式可以在 Virtex-5 或 Kintex-7 中執行嗎?

一般來說,針對 Virtex-II 1M gate FPGA 所編譯的程式,也可針對 Virtex-5 LX30 或更大尺寸進行編譯;而針對 Virtex-II 3M gate FPGA 編譯的程式也可針對 Virtex-5 LX50 或更大尺寸進行編譯。由於 2 組 FPGA 系列之間的結構差異,並沒有人能夠保證可完全相容。而要知道程式是否能夠轉移的唯一方法,即是進行測試。透過 LabVIEW FPGA Module 與 NI-RIO 驅動程式,不需安裝任何硬體即可編譯程式區。

 

是否必須了解 VHDL 才能使用 LabVIEW FPGA?

不需要。透過 LabVIEW FPGA Module,即可於 R 系列介面卡中直接合成 LabVIEW 至 FPGA 的圖形化程式碼。如果能夠知道 LabVIEW 把圖形化程式方塊圖編譯至 VHDL 的方式,即可有效取捨並達成最佳效能,但不一定要知道 FPGA 或 VHDL 才能使用 LabVIEW。若工程師不了解 VHDL 或 Verilog 等初階的硬體描述語言,卻又需要 FPGA 技術的硬體客制化功能,那麼 LabVIEW 可說是最理想的軟體工具。

 

是否需要 LabVIEW FPGA Module 才能設計 R 系列介面卡程式?

是的。必須要有 LabVIEW FPGA Module 才能進行 R 系列介面卡的程式設計。然而,若使用者已經擁有現成的 VHDL IP Core ,或其他需要的 VHDL 程式碼,亦可透過 HDL Interface Node,將 VHDL 整合至 LabVIEW 程式區中。

閱讀此應用說明,了解如何把 VHDL 整合至 LabVIEW 程式方塊圖。

 

使用 C/C++ 來設計 R 系列介面卡程式嗎?

有了 FPGA-Interface C API,即可使用 NI LabWindowsTM/CVI 與 Microsoft Visual Studio 等 C 工具,設定 NI FPGA 架構硬體的即時處理器,並且銜接至在 FPGA 上運作的 LabVIEW FPGA 程式碼。換句話說,可以 C/C++ 或 LabVIEW 撰寫在主機電腦上執行的程式碼,但是必須使用 LabVIEW FPGA 撰寫實際佈署至 LabVIEW FPGA 的程式碼。

深入了解FPGA-Interface C API

 

R 系列其他資料擷取系列產品有何差異?

不同於可控制介面卡功能的固定式 ASIC,R 系列資料採集 (DAQ) 採用使用者可設定的 FPGA 晶片,提供內建處理與靈活的 I/O 操作功能。R 系列介面卡每個通道均具備專屬的類比數位轉換器 (ADC),適用於獨立的時序與觸發作業。這樣一來即可提供多取樣率與個別通道觸發等特定功能,這是一般資料擷取硬體無法匹敵的。使用者可於 R 系列介面卡中,將硬體時脈的數位 I/O 定義為計數器、PWM 通道、彈性編碼器,或數位通訊協定的通道。

 

使用 NI-DAQmx、NI-DAQmx Base 或 NI Measurement Hardware DDK 來設定 R 系列介面卡程式嗎?

所有的 R 系列多功能 RIO 介面卡均使用 NI-RIO 驅動軟體,無法與 NI-DAQmx 或 NI-DAQmx Base 相容。然而,NI Measurement Hardware DDK 可支援暫存器層級的程式設計功能,以便開發客制化的驅動程式。一旦編譯並下載 LabVIEW FPGA 應用程式至 R 系列系統之後,NI Measurement Hardware DDK 即提供主機應用程式的建檔功能 (Documentation),進一步銜接 FPGA 的暫存器。

 

R 系列內建處理功能哪些?

LabVIEW FPGA Module 包含訊號處理面板,提供豐富的功能,比如說:

  • PID 控制
  • Butterworth 濾波器 (高通與低通)
  • Notch 濾波器
  • 類比定期量測
  • DC 與 RMS 量測

 

R 系列介面卡用來執行同步類比輸入/輸出嗎?

可以。所有 R 系列多功能介面卡的每個類比輸出/入通道均具有專屬的 ADC 與數位類比轉換器 (DAC),能夠同步或以不同速率執行所有通道的取樣/更新作業。有了獨立式 ADC,即可以最高 1 MS/s 的速度擷取所有通道的樣本。此外還可設定獨立式 DAC,以最高 1 MS/s 的速度更新類比輸出通道。

如圖 2 的 LabVIEW FPGA 程式方塊圖所示,在 R 系列 FPGA 中建置同步類比輸入/輸出作業非常簡單。只要使用在相同 While Loop 中,R 系列介面卡所有 8 個通道所讀取的 LabVIEW FPGA Analog Input I/O Node,此程式即可同時擷取所有 8 個通道的樣本。平行執行的 Lower loop 將使用 LabVIEW FPGA Analog Output I/O Node,並以 1 MS/s 傳輸率更新所有 8 個類比輸出通道。

圖 2.透過 R 系列與 LabVIEW FPGA 的同步化類比輸入/輸出

 

Was this information helpful?

Yes

No