数据包流加速器诊断软件和其他实用程序概述
您可以使用数据包流加速器诊断软件验证 QFX-PFA-4Q 模块和 QFX5100-24Q-AA 交换机的完整性。数据包流加速器诊断软件包含标准诊断、编排诊断、精确时间协议 (PTP) 和同步诊断以及其他实用程序。数据包流加速器诊断软件在 QFX5100-24Q-AA 交换机上的来宾虚拟机 (VM) 中运行,并要求您在 Junos OS CLI 中配置来宾 VM 选项。
QFX-PFA-4Q 模块包含四个 40 千兆以太网 QSFP+ 接口、一个 FPGA 模块以及定时输入和输出接口,以支持精确时间协议应用。FPGA 模 块 包含 可 自定义 的 逻辑, 用于 处理 计算 密集型、 延迟 敏感 的 大 容量 事务。
在运行数据包流加速器诊断软件和实用程序之前,请确保您已执行以下任务:
确认已安装在 QFX5100-24Q-AA 交换机上的 QFX-PFA-4Q 模块。有关更多信息,请参阅 在 QFX5100 设备中安装扩展模块
确保在 QFX5100-24Q-AA 交换机上安装了具有增强自动化功能的 Junos OS 14.1X53-D27 版。有关更多信息,请参阅 在 QFX 系列设备上安装软件包。
安装数据包流加速器诊断软件。有关更多详细信息,请参阅../topic-map/packet-flow-accelerator-diagnostics-software.html#id-installing-packet-flow-accelerator-diagnostics-software。
外部和内部端口以及网络接口卡端口
数据包流加速器诊断软件和实用程序可验证 QFX5100-24Q-AA 交换机和 QFX-PFA-4Q 模块上外部和内部端口之间的数据路径。 图 1 说明了 QFX5100-24Q-AA 交换机和 QFX-PFA-4Q 模块上的端口名称及其连接方式。

表 1 提供有关 QFX5100-24Q-AA 交换机和 QFX-PFA-4Q 模块上的外部和内部端口以及 NIC 端口的信息。
A 端口 |
QFX5100-24Q-AA 交换机的数据包转发引擎 (PFE) 上的接口 xe-0/0/24 到 xe-0/0/39 连接到 QFX-PFA-4Q 扩展模块上 FPGA 模块上的 B 端口。A 端口需要 FPGA 模块上相应的 B 端口。您可以通过 Junos OS 管理这些接口。 |
B 端口 |
内部 10 千兆以太网端口连接到 QFX-PFA-4Q 模块上的 FPGA 模块,然后连接到 QFX5100-24Q-AA 交换机 PFE 上的 A 端口。这些端口的命名约定由来宾 VM 确定。来宾虚拟机控制 FPGA 模块。 |
C 端口 |
QFX-PFA-4Q 模块上的四个前置 40 千兆以太网端口连接到运行在 QFX5100-24Q-AA 交换机上的 FPGA 模块和 QFX5100-24Q-AA 交换机上的 F 端口。来宾虚拟机控制 FPGA 模块。 |
D 端口 |
QFX5100-24Q-AA 交换机的数据包转发引擎上的两个 10 千兆以太网内部端口连接到 QFX5100-24Q-AA 交换机上的以太网 NIC。这些端口的命名约定与用于 F 端口的命名约定相同。您可以通过 Junos OS 管理这些端口。 |
F 端口 |
QFX5100-24Q-AA 交换机上有 24 个前置 40 千兆以太网端口。在 40 千兆以太网模式下,这些端口包含“et”前缀。如果对这些接口进行通道化,则前缀为“xe”。您可以通过 Junos OS 管理这些端口。 |
网卡端口 |
QFX5100-24Q-AA 交换机上的内部接口 xe-0/0/40 和 xe-0/0/41 连接到 PFE,以便在来宾虚拟机上使用。NIC 端口执行的功能与任何其他 Linux 操作系统 NIC 端口相同。除非安装了 QFX-PFA-4Q 模块,否则网卡端口不起作用。 |
数据包流加速器诊断软件测试和脚本
您可以运行数据包流加速器诊断软件来测试 QFX-PFA-4Q 模块上的以下子系统:
FPGA
QDR SRAM 内存
内存
DRAM SPD
连接 FPGA 的 PCI Express 链路
FPGA 连接的以太网数据(QSFP 接口)
QSFP I2C I/O
PTP I/O
在运行任何测试或脚本之前,需要连接到来宾 VM 的控制台连接。.
以下测试集可用:
快速测试 - 允许您对所有 FPGA 连接的功能执行基本测试。这些测试需要一到两分钟才能完成。
老化—允许您执行所有连接 FPGA 的功能。这些测试需要几个小时才能完成。
单个测试模式 - 允许您使用额外的配置选项测试单个子系统。
Ikondiag 命令
若要运行任何测试,请使用以下参数发出 ikondiag 命令:
在运行测试之前,需要连接到来宾 VM 的控制台连接。
-t (快速测试 | 老化 | <测试名称>)
此参数标识测试。
-h
此参数提供测试的用法详细信息。
-V
此参数为测试提供详细输出。
例如,要运行 PTP 测试,请在客户机虚拟机提示符处发出 ikondiag -t PTP 命令:
ikondiag -t PTP
[2015-05-07 03:12:20][BEGIN TEST - PTP] ************************************************************************* PTP PHY interrupt: PASS 1G Ethernet PHY packet loopback test: PASS PTP clock generation/check: PASS UART (ToD) loopback: PASS ************************************************************************* [2015-05-07 03:13:30][END TEST PTP RESULT PASS]
基本功能测试
您可以测试 PCI Express 接口和内存组件上的基本功能。 表 2 列出了测试的名称及其函数。
测试名称 |
Description |
详细信息 |
可选参数 |
测试集 |
故障行为 |
---|---|---|---|---|---|
FPGABasic |
测试基本的 FPGA 操作。 |
配置 FPGA 并通过 PCI Express 读取一些简单的寄存器。 |
没有。 |
快速测试和老化 |
此测试中的任何失败都会导致 ikondiag 命令生成正常的测试状态和错误消息,然后终止并显示另一条错误消息。您无法继续测试,因为所有测试都依赖于此测试测试的功能。 |
PCIe |
验证 PCIe 数据批量传输的功能和稳定性。 |
反复将 CPU 上生成的伪随机数据循环回 FPGA,然后再回 CPU。返回的数据在 CPU 上进行验证。 |
-i <n> 重复次数(默认值 = 1 次快速测试,10,000 次老化) -j <n> 单个传输的大小(以 MB 为单位)(默认值 = 100 MiB)。 |
快速测试和老化 |
此测试报告数据传输中的错误数据值和偏移量。此测试中的任何失败都将导致 ikondiag 命令输出正常的测试状态和错误消息,然后终止并显示进一步的错误。您无法继续进一步测试,因为所有测试都依赖于此测试测试的功能。 |
DIMM |
检查 SPD 查询功能并验证是否安装了正确的 DIMM。 |
从DIMM模块上的SPD设备读取数据,报告内容,检查错误值并验证:
|
没有。 |
快速测试和老化 |
如果任何值是意外值,测试将报告错误的值并提供预期值和范围。 |
DRAMMemory |
测试 FPGA 连接的 DRAM 存储设备的数据传输功能和稳定性。 |
|
-i <n> 不同的迭代次数)默认值 = 1 表示快速测试,500 表示老化) |
快速测试和老化 |
此测试报告验证期间的错误数。错误数指定为每个字节通道和 DIMM 模块的累积错误数。 |
以太网测试和脚本
以太网测试和脚本测试 C 端口以及 A 端口和 B 端口之间的流量。通过在 F 端口上传递数据来测试 A 端口和 B 端口之间的流量。对于 C 端口,您需要环回在 C 端口上发送的流量。为此,您可以使用物理铜质环回电缆。对于 F 端口,您需要环回在 F 端口上发送的流量。为此,您可以使用铜质环回电缆。在 VLAN 中包含 F 端口。您可以使用python PFAD_exec.py -t 1脚本以及下面的测试。python PFAD_exec.py -t 1 脚本验证外部 QSFP 端口上的端到端 L2 流量,并检查 Junos OS 中接口的统计信息以及数据包流诊断软件 VM 中接口的统计信息。如果在任何接口上看到流量丢失,则此测试将失败。此外,还规定了测试 QSFP 端口的所有组合。
表 3 列出了以太网测试的名称及其功能。有关如何安装脚本的信息,请参见 ../topic-map/packet-flow-accelerator-diagnostics-software.html#id-installing-packet-flow-accelerator-diagnostics-software。
测试名称 |
Description |
详细信息 |
可选参数 |
测试集 |
故障行为 |
---|---|---|---|---|---|
QSFPEthernet |
验证以太网 (QSFP) 链路的功能。 |
通过 FPGA 模 块生成、接收和验证以太网帧的线速。数据包的内容和长度由伪随机数据组成。 在运行期间,QSFP 连接全部通道化,以使用 10 千兆以太网,所有 32 个以太网通道在全双工模式下并行运行。 |
-i <n> 不同的迭代次数(快速测试默认 = 1,000,老化为 1e9) |
快速测试和老化 |
如果正确发送或接收的数据包数被验证为不相等,则此测试被视为失败,并报告这些数量之间的差异。如果未为环回配置外部以太网连接,则此测试将失败。 |
QSFPI2C |
检查是否可以访问位于 QFX-PFA-4Q 模块前面的四个 QSFP 模块。 |
读取 I2C 模块中的寄存器,并验证结果是否符合预期。要通过此测试,必须将 QSFP 介质插入 QFX-PFA-4Q 模块上的所有四个端口。可以使用任何类型的外部介质(例如,DAC 电缆、铜缆环回、模块和光学模块)。 |
没有。 |
快速测试和老化 |
如果无法检测到 QSFP 模块的存在,或者读回的值是意外的,则此测试将失败。 |
在成功运行以太网测试和脚本之前,需要执行以下任务:
从外部环回 QFX-PFA-4Q 模块上的所有以太网连接 (QSFP)。
要环回 QFX-PFA-4Q 模块上的 QSFP 接口,请在 QFX-PFA-4Q 模块上安装的四个 QSFP+ 接口上连接铜质环路模块。
在 QFX5100-24Q-AA 交换机上安装的 QSFP+ 接口(端口 10 到端口 13)上连接铜质环路模块。
通道化 QFX5100-24Q-AA 交换机上的端口 10 到 13。
使用等效的 Junos OS 接口名称将 16 个 ikonDiag 通道中的每一个与从 QFX5100-24Q-AA 交换机上的端口 10 到 13 通道化的每个相应 Junos OS 接口配对。
注:每个 VLAN 必须独立包含两个关联的端口 — 一个 10 千兆以太网端口是 F 端口,另一个 10 千兆以太网端口是 A 端口。
表 4 显示了 QFX-PFA-4Q 模块 F 端口上 10 千兆以太网通道的映射。
表 4: QFX-PFA-4Q 模块 F 端口上的 10 千兆以太网通道映射 ikondiag 名称
Description
JDFE_XE32_10G
xe-0/0/32
JDFE_XE33_10G
xe-0/0/33
JDFE_XE34_10G
xe-0/0/34
JDFE_XE35_10G
xe-0/0/35
JDFE_XE24_10G
xe-0/0/24
JDFE_XE25_10G
xe-0/0/25
JDFE_XE26_10G
xe-0/0/26
JDFE_XE27_10G
xe-0/0/27
JDFE_XE28_10G
xe-0/0/28
JDFE_XE29_10G
xe-0/0/29
JDFE_XE30_10G
xe-0/0/30
JDFE_XE31_10G
xe-0/0/31
JDFE_XE36_10G
xe-0/0/36
JDFE_XE37_10G
xe-0/0/37
JDFE_XE38_10G
xe-0/0/38
JDFE_XE39_10G
xe-0/0/39
表 5 显示了 QFX-PFA-4Q 模块 C 端口上 10 千兆以太网通道的映射。
表 5: QFX-PFA-4Q 模块 C 端口上的 10 千兆以太网通道映射 ikondiag 名称
Description
JDFE_QSFP0_10G_PORT0
QSFP 端口 #0 10G 子通道 0
JDFE_QSFP0_10G_PORT1
QSFP 端口 #0 10G 子通道 1
JDFE_QSFP0_10G_PORT2
QSFP 端口 #0 10G 子通道 2
JDFE_QSFP0_10G_PORT3
QSFP 端口 #0 10G 子通道 3
JDFE_QSFP1_10G_PORT0
QSFP 端口 #1 10G 子通道 0
JDFE_QSFP1_10G_PORT1
QSFP 端口 #1 10G 子通道 1
JDFE_QSFP1_10G_PORT2
QSFP 端口 #1 10G 子通道 2
JDFE_QSFP1_10G_PORT3
QSFP 端口 #1 10G 子通道 3
JDFE_QSFP2_10G_PORT0
QSFP 端口 #2 10G 子通道 0
JDFE_QSFP2_10G_PORT1
QSFP 端口 #2 10G 子通道 1
JDFE_QSFP2_10G_PORT2
QSFP 端口 #2 10G 子通道 2
JDFE_QSFP2_10G_PORT3
QSFP 端口 #2 10G 子通道 3
JDFE_QSFP3_10G_PORT0
QSFP 端口 #3 10G 子通道 0
JDFE_QSFP3_10G_PORT1
QSFP 端口 #3 10G 子通道 1
JDFE_QSFP3_10G_PORT2
QSFP 端口 #3 10G 子通道 2
JDFE_QSFP3_10G_PORT3
QSFP 端口 #3 10G 子通道 3
表 6 在 C 端口和 A 端口之间提供精确的连接。
表 6: C 端口和 A 端口之间的精确连接 QSFP 端口号
通道编号
Junos OS 接口
QSFP 端口 #0
通道 0
xe-0/0/32
QSFP 端口 #0
通道 1
xe-0/0/33
QSFP 端口 #0
通道 2
xe-0/0/34
QSFP 端口 #0
通道 3
xe-0/0/35
QSFP 端口 #1
通道 0
xe-0/0/24
QSFP 端口 #1
通道 1
xe-0/0/25
QSFP 端口 #1
通道 2
xe-0/0/26
QSFP 端口 #1
通道 3
xe-0/0/27
QSFP 端口 #2
通道 0
xe-0/0/28
QSFP 端口 #2
通道 1
xe-0/0/29
QSFP 端口 #2
通道 2
xe-0/0/30
QSFP 端口 #2
通道 3
xe-0/0/31
QSFP 端口 #3
通道 0
xe-0/0/36
QSFP 端口 #3
通道 1
xe-0/0/37
QSFP 端口 #3
通道 2
xe-0/0/38
QSFP 端口 #3
通道 3
xe-0/0/39
将这些接口添加到 VLAN。
使用 Junos CLI 通道化端口 10 到 13。
将 PIC 1 上的端口 10 到 13 配置为作为 10 千兆以太网端口运行。
[edit chassis fpc 0 pic 1] user@switch# set port-range 10 13 channel-speed 10g
查看配置并发出
commit
命令。[edit] user@switch# commit commit complete
将刚刚配置的 16 个通道化接口添加到 16 个 VLAN。
要添加 16 个通道化接口,请执行以下操作:
创建 16 个 VLAN。
[edit vlans] user@switch# set v0_0 vlan-id 10 user@switch# set v0_1 vlan-id 11 user@switch# set v0_2 vlan-id 12 user@switch# set v0_3 vlan-id 13 user@switch# set v1_0 vlan-id 14 user@switch# set v1_1 vlan-id 15 user@switch# set v1_2 vlan-id 16 user@switch# set v1_3 vlan-id 17 user@switch# set v2_0 vlan-id 18 user@switch# set v2_1 vlan-id 19 user@switch# set v2_2 vlan-id 20 user@switch# set v2_3 vlan-id 21 user@switch# set v3_0 vlan-id 22 user@switch# set v3_1 vlan-id 23 user@switch# set v3_2 vlan-id 24 user@switch# set v3_3 vlan-id 25
将通道化接口添加到 VLAN。
[edit interfaces] user@switch# set xe-0/0/24 unit 0 family ethernet-switching vlan members v0_0 user@switch# set xe-0/0/25 unit 0 family ethernet-switching vlan members v0_1 user@switch# set xe-0/0/10:0 unit 0 family ethernet-switching vlan members v0_0 user@switch# set xe-0/0/10:1 unit 0 family ethernet-switching vlan members v0_1 user@switch# set xe-0/0/10:2 unit 0 family ethernet-switching vlan members v0_2 user@switch# set xe-0/0/10:3 unit 0 family ethernet-switching vlan members v0_3 user@switch# set xe-0/0/11:0 unit 0 family ethernet-switching vlan members v1_0 user@switch# set xe-0/0/11:1 unit 0 family ethernet-switching vlan members v1_1 user@switch# set xe-0/0/11:2 unit 0 family ethernet-switching vlan members v1_2 user@switch# set xe-0/0/11:3 unit 0 family ethernet-switching vlan members v1_3 user@switch# set xe-0/0/12:0 unit 0 family ethernet-switching vlan members v2_0 user@switch# set xe-0/0/12:1 unit 0 family ethernet-switching vlan members v2_1 user@switch# set xe-0/0/12:2 unit 0 family ethernet-switching vlan members v2_2 user@switch# set xe-0/0/12:3 unit 0 family ethernet-switching vlan members v2_3 user@switch# set xe-0/0/13:0 unit 0 family ethernet-switching vlan members v3_0 user@switch# set xe-0/0/13:1 unit 0 family ethernet-switching vlan members v3_1 user@switch# set xe-0/0/13:2 unit 0 family ethernet-switching vlan members v3_2 user@switch# set xe-0/0/13:3 unit 0 family ethernet-switching vlan members v3_3
查看配置并发出
commit
命令。[edit] user@switch# commit commit complete
压力测试
压力测试并行执行所有高速 I/O。压力测试需要与以太网测试相同的外部介质。表 7 列出测试的名称及其函数。
测试名称 |
Description |
详细信息 |
可选参数 |
测试集 |
故障行为 |
---|---|---|---|---|---|
强调 |
并行执行所有高速 I/O。 |
并行执行连接到 FPGA 的所有高速 I/O,包括:
如前所述,每个测试子系统的执行方式与各个测试类似。 |
-i <n> 不同的迭代次数)默认值 = 1 表示快速测试,1,000 表示老化) |
快速测试和老化 |
如果任何一个子系统失败,测试将停止。报告检测到的第一个子系统出现故障。 注:
如果多个子系统发生故障,则仅报告第一个发生故障的子系统。 |
PTP 测试
您可以为与 PTP 一起使用的硬件运行 PTP 。如果要创建计时应用程序,这些测试非常有用。若要运行测试,需要为时钟 I/O、ToD 串行端口和 1 千兆以太网连接器连接超小型版本 B (SMB) 电缆、以太网环回电缆和 ToD 环回电缆。您必须在 10M 和 PPS 输出和输入连接器之间连接 SMB、以太网、ToD 环路电缆。ToD 环回电缆是标准 RJ45 电缆,引脚 3(发射数据)连接到引脚 6(接收数据)。除了 PTP 测试之外,您还可以运行数据包流加速器诊断软件中包含的脚本来测试 PTP。有关 PTP 脚本的信息,请参阅 表 9 。PTP 脚本要求您在 QFX5100-24Q-AA 交换机上安装具有增强自动化功能的 Junos OS 映像。有关如何安装脚本的信息,请参见 ../topic-map/packet-flow-accelerator-diagnostics-software.html#id-installing-packet-flow-accelerator-diagnostics-software。
表 8 列出了 PTP 测试的名称及其功能:
测试名称 |
Description |
详细信息 |
可选参数 |
测试集 |
故障行为 |
---|---|---|---|---|---|
PTP |
检查 QFX-PFA-4Q 模块的各种 FPGA 连接时间同步功能的功能。 |
对 QFX-PFA-4Q 模块的时间同步功能执行各种测试。 此测试涵盖的子测试包括:
|
没有。 |
快速测试和老化 |
上述任何子系统中的故障都会导致整个测试失败,并在测试结束时生成一份报告,指示子测试的通过和失败状态。 |
表 9 列出了脚本的名称及其功能。此脚本不是命令的一部分 ikondiag 。您可以运行此命令 Junos OS。
脚本名称 |
Description |
详细信息 |
可选参数 |
测试集 |
故障行为 |
---|---|---|---|---|---|
./run_ptp_test |
检查 QFX-PFA-4Q 模块的各种 FPGA 连接时间同步功能的功能。 |
对 QFX-PFA-4Q 模块的时间同步功能执行各种测试。 此测试涵盖的子测试包括:
|
没有。 |
没有。此测试必须手动运行。 |
上述任何子系统中的故障都会导致整个测试失败,并在测试结束时生成一份报告,指示子测试的通过和失败状态。 |
QFX-PFA-4Q 模块 LED 测试
LED 测试检查 QFX-PFA-4Q 模块上的 LED。
要运行 LED 测试,请发出 ikon_led_toggle 命令。测试可能需要几秒钟才能开始,因为正在配置 FPGA。当您看到消息 Toggling LEDs. Send SIGINT (^C) to exit
时,测试开始。若要终止测试,请键入 Ctrl-C。 表 10 列出了测试的名称及其函数。
测试名称 |
Description |
详细信息 |
可选参数 |
测试集 |
故障行为 |
---|---|---|---|---|---|
ikon_led_toggle |
闪烁 QFX-PFA-4Q 模块上的 LED 以进行目视检查。 |
QFX-PFA-4Q 模块上的以下 LED 将重复显示以下模式: 注:
AL 和 ST LED 不包括在此测试中。
|
没有。 |
没有。此测试必须手动运行。 |
指示灯可能不会闪烁。 |
数据包流加速器诊断实用程序
除了数据包流加速器诊断软件测试之外,数据包流加速器诊断软件中还包括一些实用程序,可用于进一步诊断 QFX-PFA-4Q 模块上的问题。
在运行实用程序之前,需要连接到来宾 VM 的控制台。有关如何访问客户机虚拟机的详细信息,请参见 ../topic-map/packet-flow-accelerator-diagnostics-software.html#id-installing-packet-flow-accelerator-diagnostics-software。
表 11 列出了实用程序的名称及其功能。
测试名称 |
描述 |
详细信息 |
预期输出和行为 |
---|---|---|---|
麦克斯托普 |
报告 FPGA 状态。 |
显示有关 FPGA 模块当前配置的状态以及模块是否正在运行的信息。检查以确保非常基本的驱动程序和FPGA PCI Express链路操作正常工作。如果此实用程序因错误而退出,则任何进一步的FPGA操作都不太可能起作用。 |
输出应类似于如下所示。如果未显示此输出,则诊断软件环境中可能存在严重故障,或者FPGA的PCI Express链接无法正常工作。
|
ikon_snake |
在所有 10 千兆以太网通道之间实现蛇形连接。 |
将 FPGA 模块(QSFP 接口)上所有 32 个 10 千兆以太网通道的 Rx 通道连接到相应相邻连接的 Tx 通道。这样,只需使用 10 千兆以太网接口外部数据包发生器、铜质环路模块和 QSFP < > 4xSFP 分支电缆即可测试所有 32 个通道。 |
发出此测试后,所有以太网数据将在显示消息 注:
在打印操作消息之前的一段时间内,FPGA 模块可能正在配置过程中,因此不会转发任何数据。按“输入”将退出该实用程序。 测试完成后,数据包数据将继续转发,直到运行另一个以太网实用程序或测试。 |
ikon_eth_util全部 --数字回传 |
在所有 QFX-PFA-4Q 模块 10 千兆以太网通道之间启用“蛇形”连接,上的所有 10 千兆以太网接口上启用数字环回。 |
将 FPGA 模块 (QSFP) 上所有 32 个 10 千兆以太网通道的 Rx 端连接到同一通道的 Tx 端。 |
发出此测试后,将按照显示消息 注:
在显示操作消息之前,FPGA模块可能正在配置过程中,不会转发任何数据。按回车键退出该实用程序。 测试完成后,数据包数据将继续转发,直到运行另一个以太网实用程序或测试。 |
ikon_eth_util |
使数据能够通过 QFX-PFA-4Q 模块 QSFP 端口传输。 |
允许数据通过 QFX-PFA-4Q 模块上的 QSFP 端口。 注:
由于所有 QSFP 端口都通道化为 10 千兆以太网,因此在连接外部介质时必须使用 SFP 分支电缆。 |
发出此测试后,所有以太网数据都将按照显示消息“正在运行按回车键退出”后的说明进行转发。 注:
在显示操作消息之前,FPGA 模块可能正在配置过程中,不会转发任何数据。按“输入”将退出该实用程序。 测试完成后,数据包数据将继续转发,直到运行另一个以太网实用程序或测试。 |
Maxnet -V 链路显示 |
转储 FPGA 数据包统计信息。 |
显示有关在 FPGA 中的 MAC 和 PHY IP 核心的所有 (QSFP) 链路上发送和接收的数据包的统计信息。使用“v”选项可提供详细输出。 以下是一些需要注意的重要事项:
|
单个 10 千兆以太网链路的示例输出如下所示: MaxTop Tool 2015.1 Found 1 card(s) running MaxelerOS 2015.1 Card 0: QFX-PFA-4Q (P/N: 241124) S/N: 96362301684266423 Mem: 24GB Load average: 0.00, 0.00, 0.00 DFE %BUSY TEMP MAXFILE PID USER TIME COMMAND 0 0.0% - 2fcf249cc7... - - - - |
host2mem I <文件名> -o <文件名> -t <DDR |QDR0 |QDRPARITY0 |QDR1 |QDRPARITY1> |
写入,然后从 QDR SRAM 或 DRAM 读取任意数据。 |
通过将二进制文件的内容通过 FPGA 流式传输到 QFX-PFA-4Q 模块上的某个内存资源,然后将相同的数据从内存流式传输回另一个文件。 注:
您不能只从 RAM 回读数据,因为在运行多个测试之间不会保留内容。 |
报告“通过”或“失败”,具体取决于返回的数据是否与输入数据匹配。 |
表 12 列出了 host2mem 实用程序的命令行参数。
论点 |
Description |
---|---|
-- 帮助 |-h |
打印出使用情况并退出。 |
-我 <input file> |
输入数据文件。 |
-o <output file> |
输出数据文件。 |
-- 测试 |-t <测试名称> |
测试资源。有关资源的信息,请参阅 表 13 。 |
-- 详细 |-v |
启用详细模式。 |
输入和输出文件的文件格式相同。数据根据下面测试模式表中指定的宽度连续打包为单词。输入文件的大小可以更小,但不得超过要测试的资源的总大小。输出文件的大小与输入文件的大小相同,并且如果没有错误,则具有相同的内容。
测试模式 |
资源 |
字宽 |
测试数据的大小 |
---|---|---|---|
复员方案 |
DDR SDRAM |
192 字节 |
24 GB |
QDR0 |
QDR0 数据 |
16 字节 |
32兆字节 |
QDRPARITY0 |
QDR0 奇偶校验位 |
2 字节 |
4 兆字节 |
QDR1 |
QDR1 数据 |
16 字节 |
32兆字节 |
QDRPARITY1 |
QDR1 奇偶校验位 |
2 字节 |
4 兆字节 |
QFX-PFA-4Q 模块上的动态随机存取存储器 (DRAM) 包含三个双列直插式内存模块(DIMM3、DIMM4、DIMM6),每个数据字分布在所有三个 DIMM 上。表 14 列出了到 DIMM 的字节数分配。
0 |
DIMM3 |
63% |
64 |
DIMM4 |
127 |
128 |
DIMM6 |
191 |
数据包加速器诊断软件的示例输出
本节提供基本测试、以太网测试、PTP 测试和实用程序的一些示例输出。
ikondiag -t FPGABasic
[2015-05-07 03:00:17][BEGIN TEST - FPGABasic] [2015-05-07 03:00:17][END TEST FPGABasic RESULT PASSED]
ikondiag -t DIMM
[2015-05-07 03:01:09][BEGIN TEST - DIMM] [2015-05-07 03:01:09][END TEST DIMM RESULT PASSED]
ikondiag -t QSFPEthernet
[2015-05-07 03:02:33][BEGIN TEST - QSFPEthernet] *********************************************** Test Failed: QSFP0_10G_PORT0: FAIL - packets received = 0/1000 QSFP0_10G_PORT1: FAIL - packets received = 0/1000 QSFP0_10G_PORT2: FAIL - packets received = 0/1000 QSFP0_10G_PORT3: FAIL - packets received = 0/1000 QSFP1_10G_PORT0: FAIL - packets received = 0/1000 QSFP1_10G_PORT1: FAIL - packets received = 0/1000 QSFP1_10G_PORT2: FAIL - packets received = 0/1000 QSFP1_10G_PORT3: FAIL - packets received = 0/1000 QSFP2_10G_PORT0: FAIL - packets received = 0/1000 QSFP2_10G_PORT1: FAIL - packets received = 0/1000 QSFP2_10G_PORT2: FAIL - packets received = 0/1000 QSFP2_10G_PORT3: FAIL - packets received = 0/1000 QSFP3_10G_PORT0: FAIL - packets received = 0/1000 QSFP3_10G_PORT1: FAIL - packets received = 0/1000 QSFP3_10G_PORT2: FAIL - packets received = 0/1000 QSFP3_10G_PORT3: FAIL - packets received = 0/1000 QSFP4_10G_PORT0: PASS - packets received = 1000/1000 QSFP4_10G_PORT1: PASS - packets received = 1000/1000 QSFP4_10G_PORT2: PASS - packets received = 1000/1000 QSFP4_10G_PORT3: PASS - packets received = 1000/1000 QSFP5_10G_PORT0: PASS - packets received = 1000/1000 QSFP5_10G_PORT1: PASS - packets received = 1000/1000 QSFP5_10G_PORT2: PASS - packets received = 1000/1000 QSFP5_10G_PORT3: PASS - packets received = 1000/1000 QSFP6_10G_PORT0: PASS - packets received = 1000/1000 QSFP6_10G_PORT1: PASS - packets received = 1000/1000 QSFP6_10G_PORT2: PASS - packets received = 1000/1000 QSFP6_10G_PORT3: PASS - packets received = 1000/1000 QSFP7_10G_PORT0: PASS - packets received = 1000/1000 QSFP7_10G_PORT1: PASS - packets received = 1000/1000 QSFP7_10G_PORT2: PASS - packets received = 1000/1000 QSFP7_10G_PORT3: PASS - packets received = 1000/1000 *********************************************** [2015-05-07 03:02:41][END TEST QSFPEthernet RESULT PASSED]
ikondiag -t DRAMMemory -i 3
[2015-05-07 03:03:37][BEGIN TEST - DRAMMemory] [2015-05-07 03:04:21][END TEST DRAMMemory RESULT PASSED]
ikondiag -t QDRMemory -p -i 3
[2015-05-07 03:10:38][BEGIN TEST - QDRMemory] [2015-05-07 03:10:45][END TEST QDRMemory RESULT PASSED]
ikondiag -t 应力 -p -i 10
[2015-05-07 03:11:24][BEGIN TEST - Stress] *********************************************** Test Failed: QSFP0_10G_PORT0: PASS - packets received = 650000/650000 QSFP0_10G_PORT1: PASS - packets received = 650000/650000 QSFP0_10G_PORT2: PASS - packets received = 650000/650000 QSFP0_10G_PORT3: PASS - packets received = 650000/650000 QSFP1_10G_PORT0: PASS - packets received = 650000/650000 QSFP1_10G_PORT1: PASS - packets received = 650000/650000 QSFP1_10G_PORT2: PASS - packets received = 650000/650000 QSFP1_10G_PORT3: PASS - packets received = 650000/650000 QSFP2_10G_PORT0: PASS - packets received = 650000/650000 QSFP2_10G_PORT1: PASS - packets received = 650000/650000 QSFP2_10G_PORT2: PASS - packets received = 650000/650000 QSFP2_10G_PORT3: PASS - packets received = 650000/650000 QSFP3_10G_PORT0: PASS - packets received = 650000/650000 QSFP3_10G_PORT1: PASS - packets received = 650000/650000 QSFP3_10G_PORT2: PASS - packets received = 650000/650000 QSFP3_10G_PORT3: PASS - packets received = 650000/650000 QSFP4_10G_PORT0: PASS - packets received = 650000/650000 QSFP4_10G_PORT1: PASS - packets received = 650000/650000 QSFP4_10G_PORT2: PASS - packets received = 650000/650000 QSFP4_10G_PORT3: PASS - packets received = 650000/650000 QSFP5_10G_PORT0: PASS - packets received = 650000/650000 QSFP5_10G_PORT1: PASS - packets received = 650000/650000 QSFP5_10G_PORT2: PASS - packets received = 650000/650000 QSFP5_10G_PORT3: PASS - packets received = 650000/650000 QSFP6_10G_PORT0: PASS - packets received = 650000/650000 QSFP6_10G_PORT1: PASS - packets received = 650000/650000 QSFP6_10G_PORT2: PASS - packets received = 650000/650000 QSFP6_10G_PORT3: PASS - packets received = 650000/650000 QSFP7_10G_PORT0: PASS - packets received = 650000/650000 QSFP7_10G_PORT1: PASS - packets received = 650000/650000 QSFP7_10G_PORT2: PASS - packets received = 650000/650000 QSFP7_10G_PORT3: PASS - packets received = 650000/650000 ***********************************************
ikondiag -t PTP
[2015-05-07 03:12:20][BEGIN TEST - PTP] ************************************************************************* PTP PHY interrupt: PASS 1G Ethernet PHY packet loopback test: PASS PTP clock generation/check: PASS UART (ToD) loopback: PASS ************************************************************************* [2015-05-07 03:13:30][END TEST PTP RESULT PASS]
ikondiag -t 应用程序 -i 2
iterations = 2 [2015-05-07 03:14:11][BEGIN TEST - Application Test] [2015-05-07 03:17:33][END TEST Application Test RESULT PASSED]
麦克斯托普
MaxTop Tool 2015.1 Found 1 card(s) running MaxelerOS 2015.1 Card 0: (P/N: 241124) S/N: 96362301684266423 Mem: 24GB Load average: 0.00, 0.00, 0.00 DFE %BUSY TEMP MAXFILE PID USER TIME COMMAND 0 0.0% - 7e2198e5c0... - - - -
ikon_eth_util --全直通
Ikon Ethernet Pass Through Utility setting portConnect_QSFP4_10G_PORT0_QSFP0_10G_PORT0 to 1 setting portConnect_QSFP4_10G_PORT1_QSFP0_10G_PORT1 to 1 setting portConnect_QSFP4_10G_PORT2_QSFP0_10G_PORT2 to 1 setting portConnect_QSFP4_10G_PORT3_QSFP0_10G_PORT3 to 1 setting portConnect_QSFP1_10G_PORT0_QSFP5_10G_PORT0 to 1 setting portConnect_QSFP1_10G_PORT1_QSFP5_10G_PORT1 to 1 setting portConnect_QSFP1_10G_PORT2_QSFP5_10G_PORT2 to 1 setting portConnect_QSFP1_10G_PORT3_QSFP5_10G_PORT3 to 1 setting portConnect_QSFP2_10G_PORT0_QSFP6_10G_PORT0 to 1 setting portConnect_QSFP2_10G_PORT1_QSFP6_10G_PORT1 to 1 setting portConnect_QSFP2_10G_PORT2_QSFP6_10G_PORT2 to 1 setting portConnect_QSFP2_10G_PORT3_QSFP6_10G_PORT3 to 1 setting portConnect_QSFP3_10G_PORT0_QSFP7_10G_PORT0 to 1 setting portConnect_QSFP3_10G_PORT1_QSFP7_10G_PORT1 to 1 setting portConnect_QSFP3_10G_PORT2_QSFP7_10G_PORT2 to 1 setting portConnect_QSFP3_10G_PORT3_QSFP7_10G_PORT3 to 1 running press return key to exit