主题中讨论的其他器件:DP83826E、 DP83869
工具/软件:
您好、
我尝试通过主以太网/IP 设置 100Mb — 全双工。
当我设置 10MB — 全双工时,我没有任何问题。
当我尝试设置 100Mb — 全双工时,PHY 似乎停止响应、但应用程序仍然可以正常运行。


ODVA 认证需要此功能。
你有什么建议吗? 我将使用 DP83826E 物理层和从 SDK 11.08 获取的驱动程序。
再见
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.
工具/软件:
您好、
我尝试通过主以太网/IP 设置 100Mb — 全双工。
当我设置 10MB — 全双工时,我没有任何问题。
当我尝试设置 100Mb — 全双工时,PHY 似乎停止响应、但应用程序仍然可以正常运行。


ODVA 认证需要此功能。
你有什么建议吗? 我将使用 DP83826E 物理层和从 SDK 11.08 获取的驱动程序。
再见
尊敬的 Pourya:
我正在使用 DUT 和 PC 之间的交换机(主以太网/IP)。
当 DUT 启动时、PHY 为 100M - FD — 自动协商开启,一切正常。
当我更改为 10M 时 — 全双工链路关闭几秒钟,然后打开,所有链路都正常工作。
但当我尝试更改为 100m(自动协商总是关闭)时,链接会停机几分钟,通信停止工作,但应用程序仍然工作。
如果我更改交换机上的配置、PHY 会启动并正常工作。
您是否有一些提示、以避免在不更改开关设置的情况下出现 100M 和自动关闭时的问题?
我正在通过 0xF6 类更改设置
尊敬的 Pourya:
这就是您提出的问题。 在我的情况下,如果我禁用模块上的自动负,为了工作,我必须在开关上固定速度和模式。

e2e.ti.com/.../ethernetip_5F00_ICSS_5F00_EMAC-_2D00_-Copy.txt
尊敬的 Stefano:
它们确实是不同的 PHY、但这应该无关紧要、因为您为 dp83826e 使用的定制驱动程序与其他电路板相同。
此致、
Pourya
尊敬的 Pourya:
我已经测试了两种情况:
尊敬的 Stefano:
我有一个后续问题。 我注意到本主题中的相关讨论:
AM2432:定制电路板上的 Profinet 链路状态停用 — 基于 Arm 的微控制器论坛 — 基于 Arm 的微控制器 — TI E2E 支持论坛
此外、PHY 接口是否涉及任何介质转换器?
此致、
Pourya
A “ring",“,由、由 PC - Switch -[TJ11A01 - DP83826E (DUT)]- LP 上的 DP82869 组成。 启动时(100M - FD - AutoNeg 打开)、我可以到达两个设备。 当我设置为 0xF6(属性 6)100M - FD - AutoNeg 关闭时、DP83826E8(我的 DUT)和 DP82869 (LP) 之间的链路会停止、看起来从不上电。 有几秒钟的时间链接已打开、但随后它会长时间关闭。
尊敬的 Stefano:
我有一个问题:您是否已将 LP 板 (DP82869) 上的 PHY 设置配置为也使用固定设置(100M,全双工,自动协商关闭)?
我知道、通过“环形“配置、您意味着 LP 板也通过单独的端口连接到您的 PC。 这建议您应该能够通过这个单独的连接(我们可以调用路径 B)配置 LP PHY 设置。
如果具有自动协商关闭配置的 100M 全双工正常工作、我预计在实施这些设置后、您应该能够通过 Path A 建立通信(遵循以下路径:PC→Switch→TJ11A01→DP83826E→DP82869 [LP Board])。
您能否确认在这种情况下链路是否已正确建立?
此致、
Pourya
尊敬的 Stefano:
我认为该问题与关于并行检测的 IEEE 802.3 第 28 条有关:
我们没有发现 LP 板出现此问题的原因(在我这边)是由于一个名为“phymdix 任务“的后台进程。 自动协商关闭时、此过程在发生链路断开事件时激活、尝试调整 TI PHY 上的 MDIX 设置、以帮助与链路伙伴建立连接。 但是、此功能仅在以下情况下有效 两者可兼得 PHY 支持该寄存器、但您的硬件并非如此。 当它检测到另一个 PHY 缺少自动 MDIX 支持时、任务终止。
目前、“phymdix 任务“仅支持以下 TI PHY 模型:DP83867、DP83869、DP83826E 和 DP83826B
此致、
Pourya
尊敬的 Stefano:
为了说明我之前的观点:Auto-MDIX 不能解决双工不匹配问题。 它解决的问题是使用不同类型的电缆(直通电缆与交叉电缆)引起的问题。 自动 MDIX 会在内部自动交换发送和接收信号、以纠正这种情况。
我提到的原因是、即使存在双工不匹配、我仍然希望一些数据包通过、但您会看到数据包丢失、吞吐量差和冲突。 发生这种情况的原因是全双工 PHY 假定它可以同时发送和接收而不会发生冲突、而半双工 PHY(启用自动协商)在发送前会侦听、如果两端同时通话、则会预期冲突。
如果您甚至无法建立链路、这可能与自动 MDIX 有关(因此值得尝试使用不同的电缆来排除它)、可能是因为另一个 PHY (TJA1101) 使用单线对以太网;不过我不确定这里有多大的因素。
回到你的主要问题:我认为你只有两个可靠的选择:
强制两个 PHY 使用相同的速度和双工设置。
在两个 PHY 上启用自动协商。
此致、
Pourya
尊敬的 Pourya:
我曾问过、因为我无法更改 TJA1101 的设置、因为我的 EtherNet/IP 从设备上的 TJA1101 用于与另一台仅支持 100M - FD 的交换机连接。
事实上 、当我通过这个新器件在 DUT 和 PC 之间建立连接来运行 CT21 时、例如当工具尝试设置 10MB 时、我遇到错误。
因此、总结一下、在采用 TI 栈的 DP83826E 上运行 100M - FD(强制关闭自动 NEG 功能)的唯一方法是:
1 — 使用列表中的一个 PHY、而不是 TJA1101。
一个 PHY、而 TJA1101 支持自动 MDIX。
一个 PHY、支持所有配置、而不是 TJA1101。
对吗?
尊敬的 Pourya:
我曾问过、因为我无法更改 TJA1101 的设置、因为我的 EtherNet/IP 从设备上的 TJA1101 用于与另一台仅支持 100M - FD 的交换机连接。
事实上 、当我通过这个新器件在 DUT 和 PC 之间建立连接来运行 CT21 时、例如当工具尝试设置 10MB 时、我遇到错误。
因此、总结一下、在采用 TI 栈的 DP83826E 上运行 100M - FD(强制关闭自动 NEG 功能)的唯一方法是:
1 — 使用列表中的一个 PHY、而不是 TJA1101。
一个 PHY、而 TJA1101 支持自动 MDIX。
一个 PHY、支持所有配置、而不是 TJA1101。
对吗?
尊敬的 Stefano:
发生此问题的原因是、一致性测试尝试将 Interface Control–Attribute 6 设置为 10M、例如。 但是、由于 0xF6 是栈内的黑名单对象、它假定 PHY 支持 10M、因此它接受请求、导致测试随后失败。
您提到、应使用前面讨论的其中一个 TI PHY、而不是 TJA1101。 (请注意,当前的协议栈需要两个 PHY。 如果用户希望仅使用一个 PHY 开发产品、这也是可行的、但当前的 Stack+PRU 不支持该 PHY。 对于此场景,请参阅下一个选项。)
请联系您当地的 TI 销售办事处、以讨论满足您需求的定制解决方案(例如,通过提供新的 API 来修改 Ethernet-Link 对象行为等)。
此致、
Pourya
尊敬的 Stefano:
是的、使用当前的硬件和标准堆栈时、无法通过测试。 自动 MDIX 与 TJA1101 无关、因为它是一个单线对以太网 PHY;至少我的理解就是这样。
尊敬的 Stefano:
我不认为仅仅停用 Attribute-6 表单 SOC 文件就能解决问题、因为一致性测试将在单独的测试部分中通过属性 0-99 进行迭代。 由于 Ethernet-Link 对象将响应 Attribute-6、因此您将遇到一个错误(或多个错误!)。
有关一致性测试工具在以太网链路测试阶段执行的详细信息、请参阅 CT21 安装目录中名为“EtherNetIP_PCts.pdf"的“的文件。
PHY 硬件实际上支持以太网链路对象关于 PHY 支持 10/100 速度、半双工/全双工模式和自动协商的假设。
“phymdix"任务“任务可以自动解决反向布线问题(但此任务仅在两个 PHY 都属于前面提到的 PHY 列表时运行)。 双工不匹配问题仍然适用于 LP 板(或任何 PHY)、但数据包仍可通过、并降低吞吐量。 该行为还取决于所使用的开关、某些开关可能会实施非标准策略来缓解该问题(例如,在并行检测期间,假设为全双工而不是半双工,或者在检测到冲突时在模式之间动态切换)。 然而、这些只是假设。 双工不匹配是应尽可能避免的一般问题。
此致、
Pourya