点对点数据简介

内容

点对点数据简介

NI点对点(P2P)数据流技术采用PCI Express,可直接在多个仪器之间点对点传输数据,且无需经过主机处理器或存储器。因此系统中的设备无需额外占用系统资源即可共享信息。特定型号的PXI FPGA模块(用于FlexRIO)、FlexRIO协处理器模块、示波器/数字化仪、任意波形发生器、矢量信号分析仪、矢量信号发生器、矢量信号收发仪、高速串行模块和R系列设备均支持NI P2P技术。

在图1所示的系统中,PXIe-1075机箱中的PXIe-5622数字化仪​使用点对点数据流将数据直接传送​到PXIe-7966R FlexRIO FPGA模块。然后FPGA模块将数据传送至另一个FPGA模块以进行后续处理。由于机箱背板开关​提供与模块所占用插槽的直接连接,因此无需通过主机控制器传送数据或者使用CPU或主机内存等系统资源。

PXIe-5622数字化仪将数据流传输至两个PXI Express FlexRIO FPGA模块

图1.PXIe-5622数字化仪将数据流传输至两个PXI Express FlexRIO FPGA模块

 

应用范例

实时频域触发是RF应用中的常见需求。虽然大多数RF仪器在功率​级上触发,但该触发与频率无关。但是,借助LabVIEW FPGA模块的点对点数据流和数据处理技术,您可创建频域触发。在图2所示的应用中,PXIe-5663矢量信号分析仪利用点对点数据流将数据传送​到FlexRIO FPGA模块进行加窗,转化​为​频​域​信号,然后与掩码比较。当数据超过此掩码时,FPGA模块会在PXI背板上产生一个数字触发信号。PXIe-5663接收到此触发信号后,将使用其正态采集存储器来捕获数据记录,包括预触发采样。然后,您可通过NI-RFSA驱动从主机访问该数据记录,以进行其他处理或存储。

图 2.在此应用中,FlexRIO FPGA模块将频域触发信号添加到PXIe-5663矢量信号分析仪

 

点对点系统编程

NI-P2P驱动极大简化了点对点数据流的编程。在图3所示的应用中,1号FPGA直接将数据传送至2号FPGA。在LabVIEW FPGA中,简单的点对点读取节点与写入节点为数据交换提供基于先进先出(FIFO)的接口。这些节点类似于DMA和本地FPGA FIFO。在可进行数据交换之前,主机必须通过主机上的NI-RIO和NI-P2P API将1号FPGA的写入数据流连接到2号FPGA的读取数据流(如图3所示)。根据配置,您只需要使用一个或两个VI即可连接点对点数据流,以便进行数据交换。

两个FlexRIO FPGA模块和关联软件之间的点对点数据流

图3.两个FlexRIO FPGA模块和关联软件之间的点对点数据流

 

点对点系统基准测试

借助NI点对点技术,单个方向的数据流速率可能高达7GB/s。 最大吞吐量取决于数据流模块、机箱以及控制器(如果配置允许)。通常,这些组件速率的最低值可能是P2P的最大可能带宽。

点对点数据传输具有非常低的延迟,但会因系统配置而有所不同。 仅通过FIFO和PCIe总线进行传送数据流时,典型延迟约为2-4μs,但如果由于其他总​线​拥塞,可能会出现数十微秒的偶发性延迟高峰。 当从数字化仪输出​数据​流时,预期延迟通常约为5μs,而当数据​流​传输​到任意波形发生器时,由于板载缓冲,延迟约为10-20μs。

当通过​具有板载信号处理功能的设备(如PXIE-5622数字化仪)传输数据时,则额外的滤波器和其他处理可能会使延迟增加至高达数百微秒。 最后,在评估系统性能时,还必须考虑在FlexRIO FPGA模块上运行的用户代码的延迟。

机箱

所有数据都必须通过机箱才能从一个模块传送到另一个模块,因此机箱对于确定带宽至关重要。机箱背板上的PCI Express开关通过机箱路由数据,并提供可实现点对点数据流的高带宽点对点连接。当模块所占用的多个机箱​插​槽直接​连接​在​同​一个​PCI Express​开关​上​时​(如图4所示),带宽取决于开关。

机箱中的模块布局通过单个PCI Express开关路由所有数据

图4.机箱中的模块布局通过单个PCI Express开关路由所有数据

表1显示了给定机箱中PCI Express开关的最大带宽。此带宽可通过连接到同一开关的任意两个插槽实现,并且以特定速率支持一个开关多个连接。 机箱背板架构和带宽可在其各自的产品规范文档中找到。

 

机箱

插槽

最大点对点速率(单向)

PXIe-1062Q

3-5

取决于控制器

PXIe-1065/1066DC7, 8

取决于控制器

PXIe-1065/1066DC9-14

略低于800 MB/s

PXIe-1071

全部

取决于控制器

PXIe-1073

全部

>200 MB/s

PXIe-1075

全部

>800 MB/s

PXIe-1078

2, 3, 4

取决于控制器

PXIe-1078

5-9

>200 MB/s

PXIe-1082Q

全部

>800 MB/s

PXIe-1083全部

460 MB/s

PXIe-1084

全部

500 MB/s

PXIe-1085

全部

3.6 GB/s

PXIe-1085 Gen 3

全部

7.2 GB/s

PXIe-1086

全部

3.6 GB/s

PXIe-1088

4, 6, 8

取决于控制器

PXIe-1088

2, 3, 5, 7, 9

500 MB/s

PXIe-1090全部

895 MB/s

PXIe-1092

全部

7.2 GB/s

PXIe-1095

全部

7.2 GB/s

表1.PXI Express机箱P2P带宽

控制器

如果P2P数据流系统中的模块均未连接到机箱背板上的同一PCI Express开关,则数据必须经过主机控制器的板载开关或芯片组,而不是经过控制器的CPU或存储器。此配置如图5所示。

图5.机箱中的模块布局通过主机控制器路由数据。

表2列出了给定控制器的PCI Express开关或芯片组的最大带宽。请注意,此数字表示通过特定部分进出控制器的总带宽。如果在这些相同部分上存在多个点对点数据流,则数据​流​必须共享带宽。此外,机箱PCIe的生成和通道数量也会影响最大带宽。以下值假定机箱是控制器PCIe的同代或更新版本。

控制器开关间的最大速率备注
PXIe-81353.4 GB/s 
PXIe-81331.6 GB/s 
PXIe-8130>600 MB/s受芯片组限制
PXIe-8106>800 MB/s不支持第四条链路(NI PXIe-1075和NI PXIe-1082机箱最右侧开关的​引入/​引出)
PXIe-8105略低于800 MB/s受开关限制
PXIe-8101/8102/8108不支持开关后面的P2P仍然工作
PXIe-83016.4 GB/s (gen 3 x8)
3.2 GB/s (gen 3 x4)
 
PXIe-8360/8370略低于800 MB/s受开关限制
PXIe-8375>800 MB/s 
PXIe-83813.2 GB/s (gen 2 x8)
1.6 GB/s (gen 2 x4)
 
PXIe-8398/83996.4 GB/s (gen 3 x8)
3.2 GB/s (gen 3 x4)
 
PXIe-8821500 MB/s 
PXIe-88402 GB/s 
PXIe-88616.4 GB/s (gen 3 x8)
3.2 GB/s (gen 3 x4)
 
PXIe-8880/88816 GB/s (gen 3 x8)
3 GB/s (gen 3 x4)
 

表2.PXI Express控制器的P2P带宽

模块

如果机箱和控制器配置支持某一​特定​的带宽,PXI Express模块本身可以确定可实现的最大带宽。以下是各种可支持P2P的设备的基准性能和配置详细信息。

PXIe-7976R、PXIe-7975R、PXIe-7972R、PXIe-7971R FlexRIO FPGA模块: 这些PXI Express FlexRIO FPGA模块能够以1.5 GB/s的速率将数据流输入或输出模块。数据流的数量及其带宽由设备上FPGA的配置和编程决定。PXIe-7976使用PCIe Gen 2 x8接口,可以高达3.2GB/s的速率将数据流输入或输出模块。

PXIe-7966R、PXIe-7965R、PXIe-7962R、PXIe-7961R FlexRIO FPGA模块:这些PXI Express FlexRIO FPGA模块能够以超过800 MB/s的速率将数据流输入或输出模块。当​两​个​方向​同时​传输时,FPGA模块可以实现每个方向超过700 MB/s的速率,或超过1.4 GB/s的聚合数据速率。该数据可能包含单个数据流,最多可高达16个独立的数据流,一个数据流对应于设备的一个DMA通道。数据流的数量及其带宽由设备上FPGA的配置和编程决定。

PXIe-5622 IF数字化仪:PXIe-5622是一款速率为150MS/s的16位数字化仪,能以高达300 MB/s的速度生成数据。对于点对点数据流,该数字化仪有一个单独的写入端点,位于与板载内存并联的数据路径上。您可以将采集到的数据写入此端点,以传输至FPGA目标,并通过板载内存将其发送到主机。PXIe-5622的一个关键特征是采用正交数字下变频(DDC)的板载信号处理(OSP),能以75MS/s或150MB/s的复杂I/Q数据形式提供高达60MHz的IF带宽。在此种模式下,点对点​数据​流​的​采样​隔​行​扫描​选取​样本,​使用​先​I​采样​后Q​采样​的​方法。

使用PXIe-5622 IF数字化仪的点对点数据流

图6.使用PXIe-5622 IF数字化仪的点对点数据流

PXIe-5122高分辨率数字化仪:PXIe-5122是一款速率为100MS/s的双通道14位数字化仪,以每通道每流高达200 MB/s的速率生成数据。对于点对点数据流,数字化仪有两个位于与板载内存并联数据路径上的写入端点。您可以将采集的数据写入这些端点,并通过板载内存将其传送到主机。 

使用PXIe-5122高分辨率数字化仪的点对点数据流

图7.使用 PXIe-5122高分辨率数字化仪的点对点数据流

表​3​展示​了​有效的数据流配置示例:

有效的数据流配置

表3.有效的数据流配置

请注意,可配置模块生成数据的速率如果超过PXI Express Gen 1x4总线带宽,可能导致数据溢出。当​采样​全速​运行​(共​800 MB/​s)​时,表3的最后一个配置将达到每流400MB/s的速率。如果再向主机PC发送数据,则速率​会超出总线带宽。降低数字化仪的采样率可防止数据溢出。

模块模型最大点对点速率 
任意波形发生器
 PXIe-5450(Rev. C及更高版本)>800 MB/s
 PXIe-5451>800 MB/s
 PXIe-57457 GB/s
示波器/数字化仪
 PXIe-5122**800 MB/s
 PXIe-5160800 MB/s
 PXIe-5162800 MB/s
 PXIe-5164***3.2 GB/s
 PXIe-5170***3.2 GB/s
 PXIe-5171***3.2 GB/s
 PXIe-5172***3.2 GB/s
 PXIe-5622**800 MB/s
 PXIe-56243.2 GB/s
 PXIe-57637 GB/s
 PXIe-57647 GB/s
 PXIe-57747 GB/s
 PXIe-57757 GB/s
RF信号分析仪
 PXIe-5663* 
 PXIe-5663E* 
 PXIe-5665* 
 PXIe-5667 
 PXIe-5668R 
RF信号发生器
 PXIe-5673* 
 PXIe-5673E* 
RF矢量信号收发仪
 PXIe-5644R*** 
 PXIe-5645R*** 
 PXIe-5646R*** 
 PXIe-5840*** 
FlexRIO FPGA模块
 PXIe-7961R>800 MB/s
 PXIe-7962R>800 MB/s
 PXIe-7965R>800 MB/s
 PXIe-7966R>800 MB/s
 PXIe-7971R1.5 GB/s
 PXIe-7972R1.5 GB/s
 PXIe-7975R1.5 GB/s
 PXIe-7976R3.2 GB/s
FlexRIO协处理器模块
 PXIe-79117 GB/s
 PXIe-79127 GB/s
 PXIe-79157 GB/s
高速串行模块
 PXIe-6591R3.2 GB/s
 PXIe-6592R3.2 GB/s
 PXIe-79023.2 GB/s
NI R系列设备
 PXIe-7820R500 MB/s
 PXIe-7821R500 MB/s
 PXIe-7822R500 MB/s
 PXIe-7846R500 MB/s
 PXIe-7847R500 MB/s
 PXIe-7856R500 MB/s
 PXIe-7857R500 MB/s
 PXIe-7858R500 MB/s
 PXIe-7861500 MB/s
 PXIe-7862500 MB/s
 PXIe-7865500 MB/s
 PXIe-7866500 MB/s
 PXIe-7867500 MB/s
 PXIe-7868500 MB/s
IF收发仪
 PXIe-57857 GB/s

 

表4.可支持PXI Express模块的最大点对点带宽

 

* 上述射频信号分析仪由三部分组成:射频下变频器、本地振荡器和数字化仪。数字化仪是用于​实现​P2P数据流的组件。在这些射频信号分析仪中使用的数字化仪是PXIe-5622。同样,任意波形发生器执行RF信号发生器的P2P数据流。

 

**PXIe-5122和PXIe-5622​的​固​件​版本​必须​为​当前​最新​的​版本​才能实现点对点数据流,方法​与​NI-​SCOPE 3.6​一样。按照NI-SCOPE 3.6自述文件中的步骤操作,了解如何更新PXIe-5122或PXIe-5622设备上的固件。

 

***软件设计仪器可能不支持其仪器驱动中的P2P数据流,但通过仪器驱动FPGA扩展以及使用设备的仪器设计库进行编程时,该功能可用。查看设备特定文档描述以了解更多详情。

校准

点对点数据流采用原始二进制格式传输数据,不包括换算​或校准。归一化系数可通过NI-SCOPE查询并用于校准二进制数据,而无需换算​成​伏特​值。归一化数据符合​以下​规律,以便​您​日​后​解释二进制信息或将其换算​成​伏特​值。

  • 最大正二进制值映射到纵​向​值域的最大正向​电压。
  • 最大负二进制值映射到纵​向​值域​的最大负向电压。
  • 纵​向​值域​被​均匀​划分​以​对应​可能​的​二​进制​值。

注意:即使​用户​指定​了​NI-​SCOPE​的​纵​向​值域​是​±10 V,​最大​和​最小​二​进制​值​仍​为NI-​SCOPE​编​程​的​纵​向​值域(如 ±11 V)。​这样​操作​的​目的​是​为了​捕获​过​冲​电压,​无论​用户​是否​将​值域​设置​为​小​于​过​冲​电压。

或者,您可以查询并应用换算系数,以便在单个步骤中校准和换算数据。详细信息,请参阅高速数字化仪帮助。

 

支持设备

以下是支持P2P数据流的NI硬件列表:

机箱
 PXIe-1062Q
 PXIe-1065/1066DC
 PXIe-1071
 PXIe-1073
 PXIe-1075
 PXIe-1078
 PXIe-1082
 PXIe-1083
 PXIe-1084
 PXIe-1085
 PXIe-1085 Gen 3
 PXIe-1086
 PXIe-1088
 PXIe-1090
 PXIe-1092
 PXIe-1095
控制器
 PXIe-8105
 PXIe-8106
 PXIe-8130
 PXIe-8133
 PXIe-8135
 PXIe-8821
 PXIe-8840
 PXIe-8861
 PXIe-8880/8881
远程控制器
 PXIe-8301
 PXIe-8360 (PCIe-8361/8362)
 PXIe-8370 (PCIe-8371/8372)
 PXIe-PCIe-8375
 PXIe-PCIe 8381
 PXIe-PCIe 8398/8399
任意波形发生器
 PXIe-5450(C及更高版本)
 PXIe-5451
 PXIe-5745
示波器/数字化仪
 PXIe-5122**
 PXIe-5160
 PXIe-5162
 PXIe-5164***
 PXIe-5170***
 PXIe-5171***
 PXIe-5172***
 PXIe-5622**
 PXIe-5624R
 PXIe-5763
 PXIe-5764
 PXIe-5774
 PXIe-5775
RF信号分析仪
 PXIe-5663*
 PXIe-5663E*
 PXIe-5665*
 PXIe-5667
 PXIe-5668R
RF信号发生器
 PXIe-5673*
 PXIe-5673E*
RF矢量信号收发仪
 PXIe-5644R***
 PXIe-5645R***
 PXIe-5646R***
 PXIe-5840***
NI FlexRIO FPGA模块
 PXIe-7961R
 PXIe-7962R
 PXIe-7965R
 PXIe-7966R
 PXIe-7971R
 PXIe-7972R
 PXIe-7975R
 PXIe-7976R
FlexRIO协处理器模块
 PXIe-7911
 PXIe-7912
 PXIe-7915
NI高速串行模块
 PXIe-6591R
 PXIe-6592R
 PXIe-7902
NI R系列设备
 PXIe-7820R
 PXIe-7821R
 PXIe-7822R
 PXIe-7846R
 PXIe-7847R
 PXIe-7856R
 PXIe-7857R
 PXIe-7858R
 PXIe-7861
 PXIe-7862
 PXIe-7865
 PXIe-7866
 PXIe-7867
 PXIe-7868
IF收发仪
 PXIe-5785

表5. NI​可​支持​P2P​的​硬件

 

* 上述射频信号分析仪由三部分组成:射频下变频器、本地振荡器和数字化仪。 数字化仪是用于​实现​P2P数据流的组件。 在这些射频信号分析仪中使用的数字化仪是PXIe-5622。 同样,任意波形发生器执行RF信号发生器的P2P数据流。
 

**PXIe-5122和PXIe-5622​的​固​件​版本​必须​为​当前​最新​的​版本​才能实现点对点数据流,方法​与​NI-​SCOPE 3.6​一样。按照NI-SCOPE 3.6自述文件中的步骤操作,了解如何更新PXIe-5122或PXIe-5622设备上的固件。
 

***软件设计仪器可能不支持其仪器驱动中的P2P数据流,但通过仪器驱动FPGA扩展以及使用设备的仪器设计库进行编程时,该功能可用。查看设备特定文档描述以了解更多详情。

Was this information helpful?

Yes

No