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.

[参考译文] MCU-PLUS-SDK AM243X:基于 ARM 的微控制器论坛

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1462871/mcu-plus-sdk-am243x-arm-based-microcontrollers-forum

器件型号:MCU-PLUS-SDK AM243X
主题中讨论的其他器件:SysConfig

工具与软件:

主题:AM243x LaunchPad ICSSG 第2层双 MAC 示例中有关帧检查序列(FCS)的查询

 在使用最新 SDK 探索 AM243x LaunchPad 的 ICSSG 第2层双 MAC 示例之后、我 使用 Colasoft Packet Builder 通过笔记本电脑成功发送和接收了以太网数据包。   但是、我无法在 Enet LLD 中找到用于帧校验序列(FCS)验证或利用率的函数。   此外、`EthFrame`结构缺乏 FCS 或 CRC 成员。   您能解释一下为什么没有在此结构中实现 FCS 吗?   是否有任何功能或设置可用于启用 FCS 计算和使用?

 EthFrame 结构:

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

    尊敬的 

    感谢您的提问。

    我会检查一下、然后回复给您。

    此致

    Ashwani

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

    Anand、您好!

    PRU_ICSSG 的 MII_G_RT 模块默认支持

    • TX 路径上的 CRC32生成
    • RX 路径上的 CRC32校验器

    请参阅部分  6.4.11.2.2.4接收 CRC 计算 和  6.4.11.2.2.5发送 CRC 计算 技术参考手册(TRM)的说明: https://www.ti.com/lit/ug/spruim2h/spruim2h.pdf?ts = 1737100005165&ref_url = https://253A%252F%252Fwww.ti.com%252Fproduct%252FAM2434

    • 每当 MII_G_RT 在接收到的帧上检测到 CRC 错误时、以下硬件统计计数器都会递增。
      6.4.14.12 PRU_MII_G_RT_MII_G_RT 寄存器
      MII_G_RT_RX_STAT_CRC_ERR_PRU0      RX CRC 错误帧计数(PRU0)
      MII_G_RT_RX_STAT_CRC_ERR_PRU1      RX CRC 错误帧计数(PRU1)

    • 可以在 UART 终端上查看此硬件统计信息、方法是输入菜单选项"S"以使用 ICSSG 第2层示例打印统计信息。
      或者、可以通过 CCS 中的存储器浏览器监控上述寄存器的地址。

    • 在帧传输期间、 计算 CRC 并 将其插入到  MII_G_RT 模块的输出帧中。

    因此、FCS/ CRC 不在'EthFrame'结构中实现、因为它 由 ICSSG MII GRT 模块在接收和发送帧时自动计算。 默认情况下启用该 CRC 计算、 可以从上述存储器映射寄存器获取 RX CRC 错误帧数量的统计信息。  Enet LLD 仅处理标头和有效载荷。  

    谢谢。此致
    Miriam

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

    您好!  

    感谢您的答复。

      关于 ICSSG 第2层示例、我们是否明确地使用 MII_G_RT 模块?   我提出这个问题是因为我的 SysConfig 检查显示没有明显的 MII_G_RT 模块设置。

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

    Anand、您好!

    是的、已经明确 使用 MII_G_RT 模块、否则根本就不会传输或接收数据包。
    也可以在 SysConfig 中观察 RGMII/MII 信号:
     

    您提到的部分只有一个占位符 、位于"Additional ICSS Settings"(其他 ICSS 设置)下、默认示例中生成的文件中不使用此占位符。

    谢谢。此致、
    Miriam