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:LRE_CNT_TX_C的PRP LRE统计接缝错误

Guru**** 2535150 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1093265/mcu-plus-sdk-am243x-prp-lre-statistics-seam-wrong-for-lre_cnt_tx_c

部件号:MCU-PLUS-SDK-AM243X

我使用的是自定义板AM243x和最后一个SDK MCU_plus_SDK_am243x_08_02_00_31

我正在按照您的文档中的建议测试PRP演示应用程序。

我想了解统计数据(见附件)

我的PC上连接了端口A,Wireshark在其中收集数据包。

端口A上的TX数据包正常,因为在Wireshark中,我计算来自电路板的相同数量的数据包

Rx数据包为零,因为我没有另一个PRP节点发送PRP帧

端口C上的TX数据包与查找错误A:它的含义是什么??

实际上,此类数据包是从我的PC发送的广播或多播数据包:为什么它们被计为TX而不是RX?

我检查了ICSSFW_HAL的代码,并发现 在hsrPrp_red.c函数 RedTxPacket中,递增的计数器为 LRE_CNT_RX_C:为什么?  这是不是LRE_CNT_TX_C的错误?

无论如何,这并不能解释 为什么LRE_CNT_TX_C计数器等于作为广播或多播接收的数据包(我预期 为LRE_CNT_RX_C)。

S T A T I S T I C S

查找错误A:0.0055万
查找错误B:0万

发送        WrongLan Rx       错误     节点   代理     唯一   双工。    多个      OwnRx
-----------------     -----------------     -----------------    -----------------     -----------------     -----------------     -----------------     -----------------     -----------------     -----------------
0万02 000000000.2万00000 000000000亿00 000000000万00000 000000000万 00000000 000000010万 00000001 000000000万 00000000 000000000.0001万 00000000 000000000万 00000000 000000000万 00000000 000000000亿 00000000</s>0万 0万00000000
0万00 000000000万00000 000000000亿00 000000000万00000 000000000万 00000000</s>0万 0万00 000000000万00000 000000000万 00000000</s>0万
0万55 000000005.5万00000 000000000亿00 000000000万00000 000000000万 00000000 000000000万 00000000</s>0万 0万0万

LRE_START     0
LRE_CNT_TX_A 5.
LRE_CNT_TX_B 0
LRE_CNT_TX_C 3e
LRE_CNT_ERRWRONGLAN_A 0
LRE_CNT_ERRWRONGLAN_B 0
LRE_CNT_ERRWRONGLAN_C 0
LRE_CNT_RX_A 0
LRE_CNT_RX_B 0
LRE_CNT_RX_C 1.
LRE_CNT_ERROR_A 0
LRE_CNT_ERROR_B 0
LRE_CNT_ERROR_C 0
LRE_CNT_Nodes 1.
LRE_CNT_PROXY_Nodes 0
LRE_CNT_UNIQUE RX_A 0
LRE_CNT_UNIQUE RX_B 0
LRE_CNT_UNIQUE RX_C 0
LRE_CNT_DUPLICATE_RX_A 0
LRE_CNT_DUPLICATE_RX_B 0
LRE_CNT_DUPLICATE_RX_C 0
LRE_CNT_MULTIPLE_RX_A 0
LRE_CNT_MULTIPLE_RX_B 0
LRE_CNT_MULTIPLE_RX_C 0
LRE_CNT_Ow_RX_A 0
LRE_CNT_Ow_RX_B 0
LRE_DUPLICATE_Discard 2.
LRE_Transparent_reception 1.
lre_node_table_lookup_error_a 3e
lre_node_table_lookup_error_B 0
lre_node_table_full 0
LRE_MULTICK_LOTTED_0
LRE_VLAN_LOTed 0
LRE_INTR_TMR_EXP 0

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

    您好,Andrea:  

    主机端收到的no:of帧的查找递增,这是不正确的。  感谢您的关注。 这将在 MCU_PLUS_SDK_am243x_08_03版本中修复。

    LRE_CNT_TX_C是主机接收到的帧数。

    此致

    Nilabh

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

    您好,Nilabh:

      感谢您的快速回复。

    为什么 LRE_CNT_TX_C代表"已接收"数据包? 我假设传输的数据包不应该是?

    展望未来。

      Andrea

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

    您好,Andrea:

    LRE_CNT_TX_C计数器由固件维护,因此对于发送到主机端口(即端口C)的数据包,固件会增加此计数器

    此致

    Nilabh

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

    非常感谢,因此TX的含义是从PRU端到主机处理器。

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

    是的。

    此致

    Nilabh