IEEE1588/PTP 协议是实时工业软件的一个重要的协议,本博文讨论该协议在Xilinx Zynq 系统·上如何实现IEEE1588 协议。
ZYNQ 系统的以太网
Zynq 系统中有两类Ethernet 接口,一种是PS 端的硬件千兆以太网,另一种是PL 实现的以太网接口。

PS 端以太网
zynq 中带有两个硬核千兆以太网MAC,ENET0,ENET1。与普通SOC 芯片不同,zynq PS 断地外设可以通过MIO连接到芯片的引脚上,也可以通过EMIO 接口连接到PL 端。连接到PL端后,带来了灵活性,可以转换成各种接口。比如设计一个交换机。定义端其它的引脚。
PS 端MIO 引出的以太网接口是RGMII接口,可以连接具有RGMII 的Phy 芯片。

PS 端的Ethernet 透过EMIO 连接各种接口(通过1000BASE-X/SGMII PCS/PMA IP)

PL 端以太网
PL 端的以太网是通过IP核实现的。vivado 中有下列几种以太网IP。
- tri mode Ethernet MAC
- AXI 1G/2.5G Ethernet Subsystem
- 100M/1G TSN Subsystem

本文详细介绍了Zynq系统中实现IEEE1588/PTP协议的两种主要方法:通过MAC控制器或PHY芯片。重点讨论了Zynq的PS端和PL端以太网接口,以及不同IP核如trimodeEthernetMAC、AXI1G/2.5GEthernetSubsystem和100M/1GTSNSubsystem的特点。建议使用带有IEEE1588功能的PHY芯片如DP83640,因其实现相对简单。还提供了Linux下访问MDIO的测试程序。
2836

被折叠的 条评论
为什么被折叠?



