NI 다기능 RIO 자주 묻는 질문 (FAQ)

내용

RIO 기술이란?

NI 재구성가능한 I/O (RIO) 기술을 사용하면 재구성가능한 FPGA 칩과 NI LabVIEW 그래픽 개발 툴을 사용하여 사용자 정의 측정 하드웨어 회로를 정의할 수 있습니다. R 시리즈 다기능 재구성 가능한 I/O 디바이스는 이 FPGA 기술을 8개의 아날로그 입력, 8개의 아날로그 출력, 최대 96개의 디지털 I/O 라인과 통합하여 PCI, PCI Express, PXI/CompactPCI, USB와 같은 표준 PC 폼 팩터에서 제공되는 단일 디바이스로 최상의 가치와 성능의 조화를 제공합니다. LabVIEW FPGA Module 사용하면 하드웨어 설명 언어에 대한 깊이 있는 지식 없이 사용자 정의 데이터 수집, 고속 컨트롤, 디지털 통신 프로토콜, 센서 시뮬레이션, 온보드 신호 처리를 위한 하드웨어 특성을 생성할 수 있습니다.    

그림 1. R 시리즈 디바이스는 PCI, PCI Express, PXI/CompactPCI 및 USB와 같은 표준 PC 폼 팩터에서 제공됩니다.

 

새로운 다기능 RIO 디바이스는 무엇입니까?

최신 다기능 RIO 디바이스는 다음 제품 구매 페이지에서 찾을 수 있습니다.

새로운 R 시리즈 디바이스는 이전 세대 R 시리즈 디바이스와 비교할 수 있습니까?

새로운 R 시리즈 디바이스에는 고성능 Kintex-7 FPGA가 장착되어 있으며, 이는 이전 세대 R 시리즈 디바이스보다 더 빠른 코드 실행과 더 많은 LabVIEW 코드 용량을 제공하는 향상된 최적화 기능을 제공합니다. 새로운 Kintex-7 FPGA는 USB R 시리즈 디바이스에 이상적입니다. 이 디바이스 제품군은 이전의 고급 FPGA와 용량과 성능이 같지만 소비하는 전력은 절반입니다. 전력 감소로 인해 이전 세대 R 시리즈 디바이스의 디바이스당 디지털 신호 처리(DSP) 기능의 최대 10배까지 패킹할 수 있습니다. 로직과 DSP 리소스가 증가함에 따라 더 광범위하게 신호 처리와 리얼타임 분석을 실행하여 더 복잡한 알고리즘을 구현하고 증가하는 I/O 데이터 속도와 현재 매우 복잡한 어플리케이션에 대응할 수 있습니다. Kintex-7 FPGA에 대한 더 자세한 정보는 [Xilinx 7 시리즈 FPGA 모듈의 장점]을 참조하십시오.

또한, 새로운 NI USB-785xR 디바이스는 16비트 분해능과 선택 가능한 이득 분해능이 ±10 V, ±5 V, ±2 V, ±1 V인 모든 8개의 아날로그 입력 채널에서 최대 1 M/s까지 샘플링할 수 있습니다. FPGA 기반의 병렬 실행에서는 여러 컨트롤 루프가 프로세서 대역폭에 대해 경쟁할 필요가 없습니다. 또한 아날로그 입력 속도가 빠르면 아날로그 트리거링 정밀도 및 주파수 측정 기능도 향상됩니다. 또한 새로운 NI USB-785xR 디바이스는 고정 소수점 I/O를 기본적으로 지원하므로 FPGA에서 엔지니어링 유닛을 직접 사용할 수 있습니다.

마지막으로, 새로운 R 시리즈 디바이스는 최대 80 MHz의 속도로 토글할 수 있는 더 빠른 디지털 I/O 채널을 제공합니다.  또한 LabVIEW FPGA에서 직접 디지털 I/O 라인의 전압 레벨을 선택할 수 있습니다. 사용 가능한 로직 레벨은 3.3 V, 2.5 V, 1.8 V, 1.5 V, 1.2 V입니다.

 

NI FPGA 제품의 FPGA 비교

게이트의 개수는 전통적으로 FPGA 칩과 ASIC 기술을 비교하는 방법이지만, FPGA 내부의 개별 구성요소의 개수를 설명하지는 않습니다. 이것이 Xilinx가 FPGA에서 게이트의 개수를 지정하지 않은 이유 중 하나입니다. 대신 플립 플롭, 룩업 테이블(LUT), DSP 슬라이스, 사용 가능한 블록 RAM과 같은 몇 가지 다른 구성요소를 비교합니다. 자세한 내용은 FPGA 칩의 슬라이즈 가이드에 있는 표를 참조하십시오.

어플리케이션에 적합한 FPGA를 결정하려면 어떻게 해야 합니까?

그러나 어플리케이션이나 프로그램이 더 큰 FPGA를 필요로 하는지 아니면 더 작은 FPGA를 필요로 하는지 결정하기는 어렵습니다. LabVIEW FPGA Module 및 NI-RIO 드라이버를 사용하면 하드웨어 없이도 블록다이어그램을 컴파일할 수 있습니다. 따라서 필요한 리소스 수를 확인하는 가장 좋은 방법은 이를 시도하는 것입니다.

어플리케이션에 사용할 FPGA를 결정할 때 다음을 일반 가이드라인으로 사용할 수 있습니다: FPGA에서 기본적인 타이밍, 트리거링, 동기화를 수행하는 어플리케이션의 경우, 보다 작은 FPGA를 사용할 수 있습니다. 어플리케이션이 FPGA에서 추가적인 신호 처리(컨트롤, 디지털 필터링, 복잡한 아날로그 트리거링)와 함께 타이밍, 트리거링, 동기화를 포함하는 경우, 이러한 작업을 구현하기 위해 더 많은 리소스가 있는 더 큰 FPGA가 필요합니다.

 

Virtex-II 프로그램은 Virtex-5 또는 Kintex-7에서 사용할 수 있습니까?

일반적으로 Virtex-II 1M 게이트 FPGA를 위해 컴파일된 프로그램은 Virtex-5 LX30 또는 그 이후 버전을 위해 컴파일되어야 하며, Virtex-II 3M 게이트 FPGA를 위해 컴파일된 프로그램은 Virtex-5 LX50 또는 그 이후 버전을 위해 컴파일되어야 합니다. 두 개의 FPGA 제품군 사이의 구조적 차이로 인해 보장되지 않으며, 프로그램이 제품군 사이에서 마이그레이션되는지 확인하는 유일한 방법은 프로그램을 시도하는 것입니다. LabVIEW FPGA Module 및 NI-RIO 드라이버를 사용하면 하드웨어 없이 블록다이어그램을 컴파일할 수 있습니다.

 

LabVIEW FPGA를 사용하려면 VHDL을 알아야 합니까?

아니오. LabVIEW FPGA Module 사용하면, LabVIEW R 시리즈 디바이스의 FPGA로 직접 그래픽 코드를 통합할 수 있습니다. LabVIEW 그래픽 블록다이어그램을 VHDL로 컴파일하는 방법을 이해하면 최적화 단점을 파악하는데 도움이 될 수 있지만, LabVIEW 사용하려면 FPGA 또는 VHDL을 이해할 필요가 없습니다. LabVIEW FPGA 기술이 제공하는 하드웨어 사용자 정의가 필요하지만 VHDL 또는 Verilog와 같은 하위 레벨의 하드웨어 설명 언어를 모르는 엔지니어에게 이상적입니다.

 

R 시리즈 디바이스를 프로그래밍하려면 LabVIEW FPGA Module 필요합니까?

예. R 시리즈 디바이스를 프로그래밍하려면 LabVIEW FPGA Module 사용해야 합니다. 그러나 사용하려는 기존 VHDL IP 코어 또는 다른 VHDL 코드가 있는 경우, HDL 인터페이스 노드를 사용하여 VHDL을 LabVIEW 블록다이어그램에 통합할 수 있습니다.

VHDL을 LabVIEW 블록다이어그램에 통합하는 방법을 알아보려면 이 어플리케이션 노트를 읽으십시오.

 

C/C++에서 R 시리즈 디바이스를 프로그래밍할 수 있습니까?

FPGA-Interface C API를 사용하면, NI LabWindowsTM/CVI 및 Microsoft Visual Studio 같은 C 도구를 사용하여 NI FPGA 기반 하드웨어의 Real-Time 프로세서를 프로그래밍하고 FPGA에서 실행되는 LabVIEW FPGA 코드에 인터페이스할 수 있습니다. 즉, 호스트 머신에서 실행되는 코드는 C/C++ 또는 LabVIEW 작성될 수 있고, FPGA에 실제로 배포된 코드는 LabVIEW FPGA로 작성되어야 합니다.

FPGA-Interface C API에 대해 자세히 알아보십시오.

 

R 시리즈는 다른 데이터 수집 제품군과 어떻게 다릅니까?

디바이스 기능을 컨트롤하기 위한 고정된 ASIC 대신, R 시리즈 데이터 수집(DAQ) 디바이스는 온보드 처리 및 유연한 I/O 작업을 위한 사용자 프로그램가능한 FPGA 칩을 제공합니다. 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 (Driver Development Kit) 내에서 제공됩니다. LabVIEW FPGA 어플리케이션을 컴파일하고 R 시리즈 타겟에 다운로드한 후, NI Measurement Hardware DDK는 호스트 어플리케이션이 FPGA의 레지스터와 인터페이스할 수 있도록 문서를 제공합니다.

 

R 시리즈 온보드 프로세싱 기능은 무엇입니까?

LabVIEW FPGA Module 다음과 같은 다양한 기능이 포함된 신호 처리 팔레트가 포함되어 있습니다:

  • PID 컨트롤
  • 버터워스 필터(고역 통과 및 저역 통과)
  • 노치 필터
  • 아날로그 주기 측정
  • DC 및 RMS 측정

 

R 시리즈 디바이스에서 아날로그 입력/출력을 동시에 수행할 수 있습니까?

네. 모든 R 시리즈 다기능 디바이스에는 모든 아날로그 입력/출력 채널에 전용 ADC 및 디지털-아날로그 변환기(DAC)가 있어 모든 채널을 동시에 또는 서로 다른 속도로 샘플링/업데이트할 수 있습니다. 독립적인 ADC를 사용하면, 최대 속도(최대 1 MS/s)로 디바이스의 모든 채널을 샘플링할 수 있습니다. 독립적인 DAC를 프로그래밍하여 최대 1 MS/s의 속도로 아날로그 출력 채널을 업데이트할 수 있습니다.

그림 2의 LabVIEW FPGA 블록다이어그램은 R 시리즈 FPGA에서 동시 아날로그 입력/출력을 구현하는 것이 얼마나 쉬운지 보여줍니다. 동일한 While 루프에 있는 R 시리즈 디바이스의 8개 채널 모두에서 읽는 LabVIEW FPGA 아날로그 입력 I/O 노드를 사용하여 프로그램은 8개 채널 모두에서 동시에 샘플링합니다. 병렬로 실행되는 하위 루프는 LabVIEW FPGA 아날로그 출력 I/O 노드를 사용하며 8개의 아날로그 출력 채널을 모두 1 MS/s로 업데이트합니다.

그림 2. R 시리즈 및 LabVIEW FPGA의 동시 아날로그 입력/출력

 

Was this information helpful?

Yes

No