ZHCAEA5 August 2024 AM625 , AM6442 , AM69 , TDA4VM
AM62x、AM64x、AM69 和 TDA4VM 的基准测试结果表明,在过滤掉 CODESYS 启动或登录产生的结果的情况下,配置 1ms 周期时间是可以实现的。经过一些优化后,AM69 和 TDA4VM 等较高端的处理器可以实现低至 500µs 的周期时间,而 AM62x 和 AM64x 等较低端的处理器可以实现 1ms 的周期时间。此外,在最大周期时间方面,AM62x 的表现优于 AM64x,前者为 500µs,比后者约 900µs 低得多。AM62x 具有四个 A53 核心,运行时钟速度较高,为 1.4GHz,而 AM64x 只有两个 A53 核心,运行时钟速度为 1GHz。CODESYS EtherCAT 控制器应用程序使用的用于重新分配“IEC 任务”的核心数量更多,时钟速度更高,可以使周期时间缩短约 400µs。
预期是将从 cyclictest 结果中观察到的最坏中断延迟与运行 CODESYS EtherCAT 协议栈中观察到的周期时间对齐。实际结果表明,CODESYS 增加了大量额外的抖动。进一步的调整(例如更改时钟频率)可以改善周期时间性能;不过,更好地了解 CODESYS 相关线程如何影响调度和 CPU 负载有助于确定如何进一步优化周期时间性能。
请注意,本应用手册提供的分析来自使用通用以太网驱动程序在 Linux 上运行的 CODESYS EtherCAT 控制器协议栈。使用本机驱动程序运行 EtherCAT 控制器协议栈可以表现出更好的性能。基于 RTOS 的 EtherCAT 控制器协议栈已经展示了这一点,该协议栈具有由 IBV 开发的优化型本机驱动程序(协议栈名称为 icECAT),在基于高端 MCU 的平台上运行时周期时间达到 100µs。使用更有针对性的商业协议栈(例如 IBV icECAT),即使使用标准以太网驱动程序,在运行 Linux 的系统上也可以实现更好的性能(另请参阅 icECAT EtherCAT 主站协议栈基准测试)。