ZHCADD3 November   2023 AM2431 , AM623 , AM625-Q1 , AM625SIP , AM62A1-Q1 , AM62A3 , AM62A3-Q1 , AM62A7 , AM62A7-Q1 , AM62P-Q1 , AM6412 , AM6526 , AM6528 , AM6546 , AM6548 , AM67 , AM67A , AM68 , AM68A , AM69 , AM69A , DRA821U , DRA821U-Q1 , DRA829J , DRA829J-Q1 , DRA829V , DRA829V-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1引言
  5. 2工业以太网协议软件栈
    1. 2.1 概述
    2. 2.2 EtherCAT
  6. 3评估平台和方法
    1. 3.1 硬件
    2. 3.2 软件平台
    3. 3.3 测试应用
    4. 3.4 测试拓扑
  7. 4结果
    1. 4.1 时间同步
    2. 4.2 传输时序
  8. 5总结
  9. 6参考文献

传输时序

在 RT Linux 上运行且采用 Codesys EtherCAT 主站但未进行任何调优或优化的 Sitara AM6412 的时序如图 4-2 所示。测量基于 TX_EN RGMII 信号,该信号从帧开始到结束都为高电平。该信号在传输帧的持续时间内保持高电平。例如,对于以 100Mbit/s EtherCAT 速度传输的 200 字节帧,TX_EN RGMII 信号处于高电平的持续时间为 16μs。在 TX_EN 测量中需要考虑抖动测量值。使用的周期时间为 1.5ms,放置在线路上的帧开始的抖动约为 ±120μs。在具有 2GHz Cortex A72 的 AM682 上,图 4-3 中的相同测试显示了该抖动的大约一半。

GUID-20231011-SS0I-LJ2L-NFR3-RBKRZGDJST2V-low.png图 4-2 Sitara AM6412 的基准 CODESYS EtherCAT 帧 TX_EN 时序 - 1.5ms 周期时间,示波器处于持续模式
GUID-20231011-SS0I-LGRB-D0B9-BT0JBJFPG7MT-low.png图 4-3 Sitara AM682 上的基准 Codesys EtherCAT 帧 TX_EN 时序 - 1.5ms 周期时间,示波器处于持续模式

图 4-4 显示了 AM6412 同一用例的以太网线流量的 Wireshark 捕获。

GUID-20231011-SS0I-8MVN-6QH3-TTR0RRLP6HKM-low.png图 4-4 Sitara AM6412 Wireshark 上的基准 Codesys 捕获 EtherCAT 帧 - 1ms 周期时间

这些抖动结果与典型的 RT Linux 系统中断延迟一致 [12]。可以使用 [13] [14] 中所示的步骤将其降低到几十微秒的低值。这仍然比 TTS 方法可实现的数量级至少高两个甚至三个。不使用支持 EtherCAT 的 TTS,而是使用 EST 的 TSN 特性创建了一个调度,其中所有发送门都是关闭的,但每隔 100μs,门都会打开一次以便将一个帧发送出去,如图 4-5 中的命令行片段所示。

GUID-20231011-SS0I-2Q4C-TDJQ-C79GJSNZPJKM-low.png图 4-5 用于实现“时间触发发送”的 EST 调度命令

图 4-5 中的命令最初可能看起来很复杂,但 [15] 中介绍了细节。带有“sched-entry”的两行对于实现 TTS 非常重要。这些行指定在 2848 纳秒内,所有 8 个队列(ff,8 个队列的位图)均打开,而在 97152 纳秒内,所有门均关闭 (00)。根据该调度,假设应用程序已完成其处理并已准备好发送该帧,则每次发送一个帧。为了模拟 EtherCAT 主站向从站发送数据,使用 AM625 入门套件作为端点(代替主站),并将 Sitara AM6412 配置为网桥(代替从站)。Plget 数据包生成器用于生成表示 EtherCAT 主站流量。接收以太网端口的 Plget 硬件时间戳由从站使用。按照图 4-5 中的 EST 调度运行 10k 个数据包时,数据包间隙在 -2ns 到 +10ns 之间,如图 4-6 所示。

GUID-20231011-SS0I-DZVT-K633-CKJGMVMZCLDQ-low.svg图 4-6 采用 100µs EST 整形器时,1Gbit/s 下 10k 帧数据包间隙(以微秒为单位)

图 4-7 显示了使用 EST 调度时 Codesys EtherCAT 主站设置的 TX_EN RGMII 测量。该图与图 4-2 中没有 EST 调度时的基准 TX_EN RGMII 测量结果相当。由于以 100Mbit/s 的速度发送一个帧的线路长度而产生的持续时间约为 110μs。

GUID-20231011-SS0I-5BVZ-5Z2T-VHW84P4GG0H6-low.png图 4-7 EST 形状的 Codesys EtherCAT 主站的 TX_EN 时序 - 1.5ms 周期时间,示波器处于持续模式

在抖动方面,在 TX_EN 信号中,10ns 的帧起始抖动在该分辨率下不可见。图 4-8图 4-9 显示了开始发送和结束发送帧的放大视图。这证实了抖动低于 10ns。

GUID-20231011-SS0I-D5ZK-R4TK-5FFDBGXZ9KX7-low.png图 4-8 EST 形状的 Codesys EtherCAT 主站的 TX_EN 信号开始时的放大视图 - 1.5ms 周期时间,示波器处于持续模式
GUID-20231011-SS0I-L02F-MLTN-THSNVNNQGLFF-low.png图 4-9 EST 形状的 Codesys EtherCAT 主站的 TX_EN 信号结束时的放大视图 - 1.5ms 周期时间,示波器处于持续模式