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.

[参考译文] CC3200MOD:NWP 中有多少个 TX/Rx 缓冲器

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/642976/cc3200mod-how-many-tx-rx-buffers-is-there-in-nwp

器件型号:CC3200MOD

您好!

* NWP 中的 TX 缓冲区中可以存储多少个从主机到 NWP 的数据包?

  如何检查 指示可用 Tx 缓冲器数量的状态?

* NWP 中的 Rx 缓冲器中可以存储多少台来自空气的 pakets?

  如何检查 指示可用 Rx 缓冲器数量的状态?

此致、

Haruko。

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

    您好!

    这一切都在 NWP 内部、您只能在任何命令/事件事务期间获取免费的 TX 数据包计数。

    这是主机驱动器的流控制机制。

    您可以查看 _SlDrvMsgRad()并从 从 NWP 到主机的每个事务获取 g_PCC->FlowContactCB.txPoolCnt。

    Shlomi

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

    您好、Shlomi、

     

    我还想知道:

    从 Out-side device View Wi-Fi 接收的 NWP 中可以缓冲多少个接收到的数据?

    NWP 中可以缓冲多少个传输数据以传输到外侧器件 View Wi-Fi?

     

    此致、

    Haruko。

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    对于 TX 为55、对于 RX 为59。
    但是、正如我提到过的、主机具有针对 TX 器件的流控制机制。
    Shlomi
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Shlomi、

    缓冲器单元如何? 它是字节吗?

    此致、

    Haruko。

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

    如果您查看 socket.c (在 SDK v1.3.0中)、您会注意到_SlPayloadByProtocolLUT。

    此查找表根据 IP/Datagram 层显示 TX 缓冲区的有效载荷大小。

    这是 TX 池中单个缓冲区的字节数。

    对于 RX 池、还有额外的元数据空间(内部使用)会更大一点、但对于您的问题、您可以假设大小相同(即每个缓冲区可以获得的最大值)。

    此致、

    Shlomi

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

    您好、Shlomi、

    例如,在“sl_socket_PAYLOAD_TYPE_RAW_IP6”的情况下,根据 socket.c 中的_SlPayloadByProtocolLUT,最大数据大小为1480个八位字节。 因此,Tx 缓冲区可以将数据从55*46八位位组保存到55*1480八位位组。

    我的理解 是否正确?

     

    此致、

    Haruko。

     

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

    您好!

    在您的情况下、可以存储在单个池元素中的八位位组的最大数量为1480。

    如果您决定每次使用小有效负载调用 send(),假设为100个字节,则此 TX 池利用率将较低。

    如果您选择发送一个大型缓冲区、则将在主机驱动程序本身上执行块划分(请参阅 sl_Send 实现)、然后您可以达到100%的利用率。

    此致、

    Shlomi

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

    非常感谢!!

    此致、
    Haruko。