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.

[参考译文] DP83867IR:如何知道哪些数据包是1588

Guru**** 2465890 points
Other Parts Discussed in Thread: DP83867IS

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/593223/dp83867ir-how-to-know-which-packets-are-1588

器件型号:DP83867IR
主题中讨论的其他器件:DP83867IS

大家好、

我有一位同事问了一些有关使用 DP83867实施1588的问题。 我知道、使用 SFD、我们可以生成一个信号、通知 MAC 有新帧出现。 我还看到、 在这篇文章中:https://e2e.ti.com/support/interface/ethernet/f/903/p/471008/1698162?tisearch=e2e-quicksearch&keymatch=1588#1698162 、他们提到 MAC 和上层将需要检查帧是否为1588。

问题是当数据包到达 MAC 时、另一个数据包(该 MAC 可能接受也可能不接受)将触发另一个脉冲、现在无法确定哪个数据包属于1588数据包。 此外、当数据包快速连续时、所有现代 MAC 都使用一个缓冲环运行、脉冲将完成 PHY 上的每个数据包、但并非所有数据包都最终到达 MAC 并得到处理。 因此、缓冲区中的数据包与在 PHY GPIO 线路上 SDF 脉冲上捕获的时间戳之间没有1:1连接。

 

您是否有1588实现示例、或者至少有描述设计人员在1588应用中使用此 PHY 的方式的示例?

 

谢谢、

不需要

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Nate、

    我将在下面发布我们的电子邮件对话、以便此问题更直观。

    [1] DP83867IS 有三个用于 DA (目标地址)匹配的模式匹配数据寄存器。 如果我使用该寄存器在接收到 IEEE 1588数据包的多播目标地址包时在中断线路上发出脉冲、我会收到一个与1588数据包到达相对应的中断、还是仅用于单个地址? 我是否应该使用 RXFCFG (0x0134)寄存器中的 WAKE_ON_PLOCAL 位来启用此事件上的中断?

    [回答]如果他们将其配置为仅匹配其地址、那么它将为定向到该目标 PHY 的所有数据包生成中断。 用于客户模式检测的 WOL 将是更好的选择。

    [2] DP83867IS 具有32个 RXFPATx 寄存器、用于接收64字节数据包;4个 RXFPBMx 寄存器用于比较64字节;RXFPATC (0x161)用于判断 SFD 中哪些字节开始与提供的模式进行比较。 当图形与数据包事件成功匹配时、应使用 RXFCFG (0x0134)寄存器中的哪个位?

    [回答]要进行自定义模式检测、需要设置寄存器0x0134的位1、7和8。 位8将 WOL 中断从脉冲模式更改为电平模式。 在使用 WOL 中断后、它们必须通过位11将其清除。

    [3]是仅用于 WOL、还是可以使用这些寄存器定义1588数据包的模式?

    [ANSWER]必须启用 WOL 才能使模式匹配正常工作。 自定义模式匹配用于比较数据包的内容、以便可用于1588数据包。

    [4]模式匹配数据寄存器和 RXFPATx 如何相互配合工作?

    [回答]模式匹配数据寄存器(RXFPMD-X)用于存储所需的64字节魔术包数据。 这不应用于触发1588数据包。 RXFPAT X 寄存器将包含所需的自定义接收数据包信息。 接收模式字节屏蔽寄存器(RXFPBM-X)将屏蔽 RXFPAT-X 中不用于与传入数据包进行比较的信息。 RXFPAT X 和 RXFPBM-X 寄存器应用于其应用。

    此致、

    Aniruddha