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.

[参考译文] TMS570LS3137-EP:TMS570LS3137-EP

Guru**** 2589280 points
Other Parts Discussed in Thread: HALCOGEN

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1057283/tms570ls3137-ep-tms570ls3137-ep

器件型号:TMS570LS3137-EP
主题中讨论的其他器件:HALCOGEN

您好!  

根据处理器数据表、有2组不同的寄存器可用于配置 MAC 地址。

MACSRCADDRLO 和 MACSRCADDRHI

2、  每个通道的 MACADDRLO 和 MACADDRHI。

这些地址是否相同? 如果不是,发件人会做什么。 与该 DSP 连接的子系统、是否填入 MAC 目标地址? 如何 使用这些寄存器过滤接收到的消息?

谢谢、

Sundaram

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="473648" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1057283/tms570ls3137-ep-tms570ls3137-ep "]这些地址是否相同?

    通过快速阅读 《TMS570LS31x/21x 16/32位 RISC 闪存微控制器技术参考手册》、我的理解是:

    1.   每个通道的 MACADDRLO 和 MACADDRHI 用于 接收地址匹配
    2.  MACSRCADDRLO 和 MACSRCADDRHI 用于发送时的暂停帧。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的快速响应。

    如果  MACSRCADDRLO 和 MACSRCADDRHI 用于发送时的暂停帧、那么从 DSP 发送的正常帧中的 MAC 源地址是多少?

    Sundaram

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="473648" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1057283/tms570ls3137-ep-tms570ls3137-ep/3910990 #3910990"]

    从 DSP 传输的正常帧中的 MAC 源地址是什么?

    [/报价]

    正常帧中的 MAC 源地址位于 软件编程到存储器中的数据包缓冲区中、并指向 发送缓冲区描述符中。

    从 HALCoGen emac.h 头文件中:

    /* Struct used to take packet data input from the user for transmit APIs. */
    typedef struct pbuf_struct {
      /** next pbuf in singly linked pbuf chain */
      struct pbuf_struct *next;
    
      /**
      * Pointer to the actual ethernet packet/packet fragment to be transmitted.
      * The packet needs to be in the following format:
      * |Destination MAC Address (6 bytes)| Source MAC Address (6 bytes)| Length/Type (2 bytes)| Data (46- 1500 bytes)
      * The data can be split up over multiple pbufs which are linked as a linked list.
      **/
      uint8 *payload;
    
      /**
       * total length of this buffer and all next buffers in chain
       * belonging to the same packet.
       *
       * For non-queue packet chains this is the invariant:
       * p->tot_len == p->len + (p->next? p->next->tot_len: 0)
       */
      uint16 tot_len;
    
      /** length of this buffer */
      uint16 len;
    
    }pbuf_t;