工具与软件:
团队成员、您好!
当使用器件的长菊花链(20个以上节点)时、客户在以太网交换机上遇到 PTP 同步偏差。 链末端 PTP 硬件时钟的偏移在我们范围内、目标为数百 ns。
谢谢!
Aida
其他信息:
*使用 Linux 内核版本6.1.93
*菊花链最末端的漂移适用于菊花链中的10个节点。 一旦获得20个以上的节点、他们就会在菊花链的末端开始看到几微秒的漂移。
*每个设备都是一个边界时钟
*漂移在3-4秒的时间段内会变大
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具与软件:
团队成员、您好!
当使用器件的长菊花链(20个以上节点)时、客户在以太网交换机上遇到 PTP 同步偏差。 链末端 PTP 硬件时钟的偏移在我们范围内、目标为数百 ns。
谢谢!
Aida
其他信息:
*使用 Linux 内核版本6.1.93
*菊花链最末端的漂移适用于菊花链中的10个节点。 一旦获得20个以上的节点、他们就会在菊花链的末端开始看到几微秒的漂移。
*每个设备都是一个边界时钟
*漂移在3-4秒的时间段内会变大
您好、Aida、
菊花链中的每个器件都是使用 AM6442 SoC 设计的定制电路板。
Unknown 说:*菊花链最末端的漂移对于菊花链中的10个节点是可以接受的。 一旦获得20个以上的节点、他们就会在菊花链的末尾看到几微秒的漂移。[/QUOT]第19至20个器件与第20至21个器件之间的偏移/漂移是否有跳跃? 换句话说、我想知道从19至20器件的 ns 标度偏移到您描述的第20至21器件的 us 标度漂移的变化是否立即发生。
客户总共测试了多少个菊花链器件? 您提到20余个、它们是否有确切的目标或阈值?
它们是否使用 linuxptp (ptp4l)进行同步?
同步时是否立即看到该 us 标度漂移? 或者、Us 漂移发生是否需要一些时间?
Unknown 说:*漂移在3-4秒内变大如果他们使用的是 ptp4l、当漂移增加时、会显示哪些 ptp4l 控制台消息?
-道林
[/quote]
你好、Daolin
测试设置包括基于 AM6442处理器的定制器件。 每个设备都运行 Linux 版本6.1.83和 ptp4l 服务。 每个器件均配置为 PTP 边界时钟。 这些器件以菊花链形式连接、第一个器件充当 Grandmaster (GM)。
以下是由 GM 器件和14个定制 AM6442器件组成的设置的测试结果:
PMC 工具在 Grandmaster 设备上运行了两次、间隔为几秒、以观察链中节点上的 offsetFromMaster 值。 结果如下: 

对于一个包含20个设备的较大链、offsetFromMaster 呈指数级增长、没有任何特定的设备对会引起较大的偏移。 第20个节点的 offsetFromMaster 值约为1–2微秒。
在 ptp4l 日志中、每个节点上的 offsetFromMaster 抖动级别在初始时钟调整阶段后保持稳定。
BR, Viktar
您好 Viktar、
对于一个包含20个器件的更大链、offsetFromMaster 呈指数级增长、其中没有任何特定的器件对引发较大偏移。 第20个节点的 offsetFromMaster 值约为1–2微秒。[/QUOT]简而言之、在由20个器件组成的网络中、前14个器件的 offsetFromMaster 还是比仅14个器件网络中的 offsetFromMaster 更大? 换句话说、您是否还可以显示20个器件测试用例的 offsetFromMaster 测量结果(假设您分享的屏幕截图已用于14个器件测试用例)?
将链中的每个器件配置为 PTP 边界时钟是否有特定的原因? 为什么不将其作为透明时钟呢? 根据我的理解、链中的每个边界时钟都会与上行时钟同步、并根据其本地时钟分配时间。 因此、链中的每个边界时钟都取决于前一个时钟与主控方的同步程度。 您添加的边界时钟数量越多、时钟的精度就越低。
在 ptp4l 日志中、每个节点上的 offsetFromMaster 抖动级别在初始时钟调整阶段后保持稳定。您能否具体分享主站设备和时钟跟随器设备上运行的 ptp4l 命令(包括您选择的选项)?
-道林
[/quote]
您好、Daolin
对于较短和较长的菊花链、前14个节点的 offsetFromMaster 相同。 在我们获得必要数量的可用器件后、我们将收集20节点链的 PMC 和 PTP4L 的日志。
之所以使用边界时钟模式、是因为每个节点上都需要与 PTP 主站同步的 PPS 信号。
AM6442器件上使用了 CPSW 以太网接口。
边界时钟配置:
[全局]
仅限 slaveOnly 0
延迟机制 自动
network_transfer L2
时间戳 电流环路
STEP_THRESHOLD 0.0004
DSCP_EVENT 0x2E
DSCP_GENERAL 0x2E
TX_TIMESTAMP_TIMEOUT 300
Sanity_freq_limit 0
优先级1. 247.
[eth0]
egressLatency 100
IngressLatency 300
[ETH1]
egressLatency 100
IngressLatency 300
Grand Master 配置:
[全局]
仅限 slaveOnly 0
延迟机制 自动
network_transfer L2
时间戳 电流环路
STEP_THRESHOLD 1.0
DSCP_EVENT 0x2E
DSCP_GENERAL 0x2E
TX_TIMESTAMP_TIMEOUT 300
[eth0]
–
BR, Viktar
您好 Viktar、
您是否能够分享客户在长菊花链器件网络上测试 PTP 同步的最终用例? 换句话说、客户想要构建什么?
您能否具体分享哪个 ptp4l 命令 (包括 在主主设备和时钟跟随器设备上运行以在每个设备上设置 PTP 边界时钟模式的命令选项)?
[报价 userid="5869" url="~/support/processors-group/processors/f/processors-forum/1447674/am6442-ptp-synchronization-with-long-daisy-chains/5567242 #5567242"]边界时钟配置:此内容是否是 ptp4l 命令引用的 PTP 配置文件的一部分?
-道林
尊敬的 Viktar:
您能否 检查 以下 linuxptp 配置是否也显示了长设备链末端的 us-range 偏移?
在通过以太网电缆连接 eth0和 eth1端口的所有器件上运行"ptp4l -P -2 -H -I eth0 -I eth1 -f gPTP.cfg --step_threshold=1 -m -q -p /dev/ptp0。
在主站器件上运行"ptp4l -P -2 -H -I ethX -f gPTP.cfg --step_threshold=1 -m -q -p /dev/ptp0、在链中仅连接以太网端口的最后一个从器件(ethX 可以是 eth0或 eth1、具体取决于所连接的器件)。
gPTP.cfg 如下所示、其中 priority1仅针对主设备为100、而对于所有跟随者设备、应更改为240。
# 802.1AS example configuration containing those attributes which # differ from the defaults. See the file, default.cfg, for the # complete list of available options. # [global] gmCapable 1 priority1 100 priority2 248 logAnnounceInterval 0 logSyncInterval -3 syncReceiptTimeout 3 neighborPropDelayThresh 800 min_neighbor_prop_delay -20000000 assume_two_step 1 path_trace_enabled 1 follow_up_info 1 transportSpecific 0x1 ptp_dst_mac 01:80:C2:00:00:0E network_transport L2 delay_mechanism P2P ingressLatency 88 egressLatency 288
-道林
您好 Viktar、
感谢您进行测试。
使用 gPTP.cfg 配置时、offsetFromMaster 值变小。
您是否仍在菊花链末端看到漂移行为?
但是、我现在看到每隔几分钟出现一次"选定最佳主时钟"消息。
这条消息来自跟随者器件还是主站器件的日志? 我假设它来自某个跟随器器件。
如果它来自从器件、我认为这应该在预料之内、因为它只是指示端口(端口2)是连接到一个器件的端口、该器件作为相对于器件端口2打开的主时钟。
-道林