在继续本文档的任何操作之前,请确保RDMA接口的物理连接是正常的。查看您将使用的每个目标的“系统设置”选项卡。如果您已正确连接硬件,“IP地址”部分下应该会列出多个IP地址。在列表中找到分配给RDMA模块的IP地址。请记下这些地址,因为我们将需要它们来配置RDMA Data Sharing Framework plugin。

在新添加的Data Sharing Framework custom device页面上,单击“New” ,弹出对话框,通过设置DSF配置中的值来配置custom device。配置如下:
- 配置插件级别设置
目的:配置每个插件的顶层设置(具体来说,是时间设置)。就本教程而言,仅需配置一个插件:RDMA。请按如下方式配置plugins数组的第一个元素:
- name :设置此值以指定插件在System Explorer中的显示方式。此字段的值不限,只要不为空即可。
- components :将第一个元素设置为“RDMA”
- cycle timing:将抽取设置为 0,以确保插件与PCL同步运行。
- component settings:将此字段留空,因为没有RDMA插件的组件设置。

- 线程
RDMA插件目前不支持多线程配置。请编辑插件配置,使单个线程包含所需的会话数。

- 配置传输组
目的:传输组负责对应以相同cycle timing值执行的传输进行分组,同时添加有关传输方向(TX 或 RX)的信息。
我们需要创建两个传输组:一个用于发送,另一个用于接收。每个传输组将由transfer groups数组中的一个元素表示。
按如下方式配置每个传输组:
- core.name :使用它来指定传输组在System Explorer中的显示方式。
- core.direction :指定此组中的传输是TX还是RX。
- core.cycle timing:根据您的需要进行配置,或使用以下所示值。请记住,decimation为0时,传输组将与PCL保持一致,活动引擎缓冲区将为内联缓冲区。任何其他decimation都将使传输异步,活动缓冲区将为异步缓冲区。
- core.timeout 行为:选择您喜欢的任何值。
core.enable conversion :选择您喜欢的任何值。- component setting:留空,因为没有RDMA传输组的组件设置。
注意:为了确保数据传输的确定性,每次数据传输结束的有效时序必须相等。有效时序可以按如下方式计算:
[Effective Timing] = [Target PCL Rate] / ([DSF Custom Device Decimation] * [DSF Plugin Decimation] * [DSF Transfer Group Decimation])
如果TX和RX端点配置了不同的有效时序,则有效运行速度更快的端点上的传输组late count监控通道(位于每个传输组下)将在部署时开始上升。

- 配置每个传输组中的传输
用途:传输表示要传输或接收的单个通道数据。传输由一个或多个通道组成。对于RDMA而言,单次传输包含使用单个RDMA缓冲区更新的所有通道的数据。
按如下方式配置每个传输:
- core.name :用于指定如何在System Explorer中显示。
- component setting:
-
- component:“RDMA”
- values:
- 元素 0
- key:“本地地址”
- value :输入之前指定的RDMA模块的IP地址(“本地”表示用于此传输的模块的IP地址)
- 元素 1
- key:“本地端口”
- value :选择一个可用的本地端口
- 元素 2(仅TX传输组中的传输需要)
- key:“目标地址”
- value:输入用作RX端点的RDMA模块的IP地址
- 元素 3(仅TX传输组中的传输需要)
- key:“目标端口”
- value:在“目标地址”指定的地址处选择一个可用的目标端口(RX 传输组内的传输不需要)


- 配置通道
通道无需特殊配置。您可以根据需要进行配置,但有一些限制:
- 您可以根据需要在每次传输中添加任意数量的通道。但请记住,给定连接的每个端点必须具有相同数量的通道。就本教程而言,我们建议每次传输使用单个通道。注意: RX传输中的
channels [n]是从相应TX传输中的channels [n]发送的。 - 确保每个端点之间的
engine data type和string data type匹配。
RDMA通道没有component settings ,因此将该字段留空。

- 完成配置
- 仔细检查您输入的所有值是否正确,因为一旦应用设置,您将无法返回到界面来修改配置。
- 单击“Apply”将此配置添加到VeriStand System Definition,然后关闭对话框。注意:虽然传输组、传输、通道等的数量是固定的,但您仍然可以使用VeriStand System Definition修改系统定义中每个节点的配置。
- 导出配置(可选,但强烈推荐)
点击Data Sharing Framework custom device页面上的Export...按钮,导出您刚刚创建的JSON格式的配置。这将使您能够快速配置类似的DSF custom device,或者通过编辑JSON格式的配置文件并使用“ Import...功能快速修改现有配置。
注意:如果您想快速配置插件而不与DSF配置界面交互,附件中有一个TX和RX示例配置文件。请修改字段以匹配您的设置,并使用Import...功能。

- 对系统定义中的每个目标重复Data Sharing Framework custom device配置
- 将想要与对端目标共享数据的通道映射到My TX Transfer下的通道。将My RX Transfer下的通道映射到想要使用对端目标共享的数据的通道。


- 保存并关闭VeriStand System Explorer窗口