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.

AM6442: ICSSG Ethernet questions

Part Number: AM6442
Other Parts Discussed in Thread: DP83869

Hi TI team,

A few questions regarding Ethernet on AM6442:

1) MCU+SDK v08.01 docs say DUAL-EMAC driver on ICSSG only supports 100Mbps. Is this correct? Does Enet LLD support 1Gbps?

2) Does TI publish latency benchmarks for Enet LLD via ICSSG configured in switch mode or dual-mac mode?

3) We are considering ICSSG -> RGMII -> DP83869 PHY in 1000BASE-X mode (fiber-optic). Is there any reason 1000BASE-X wouldn't be supported?

4) When using 1000BASE-X fiber-optic, there is the option of forming a non-redundant ring topology by daisy-chaining the TX/RX fibers (upstream device comes in to RX, TX goes out to downstream device). With such a configuration, is it possible to set up the ICSSG in switch mode such that incoming layer 2 packets are cut-through forwarded to the TX of the same port? In MCU+SDK 08.01 documentation, it looks like ICSSG can be configured to cut-through packets from port0 to port1, but I am asking if we can cut-through from port0 RX to port0 TX (one PHY, using only 1 port on PRU instead of 2) without CPU intervention.

  • Adding some clarification...

    We'd like to send Layer 2 Ethernet packets @ 1000Mbps for a distributed control application. To minimize latency, we need a cut-through gigabit switch that can auto-forward incoming packets according to filter rules and drop duplicates that have already been seen. I assumed ICSSG was the best peripheral for this, but I see conflicting info about what speeds are supported by ICSSG firmware (100Mbps vs 1000Mbps). If ICSSG cannot support gigabit speeds due to firmware limitations, we could possibly use CPSW3G instead.

    Remaining questions are:

    1) Does ICSSG support gigabit speeds as a switch? If not, is this possible with CPSW3G?

    2) Latency benchmarks for gigabit switch operation on AM6442 (checked MCU+SDK documentation, couldn't find any benchmarks)

    3) Is there any reason 1000BASE-X fiber-optic mode wouldn't work with CPSW3G or ICSSG? (via RGMII w/ DP83869 PHY)

    4) Is there any documentation showing how to configure switch behavior on AM6442? Specifically I'd like to understand how to auto-forward incoming packets to a specific port, and how to automatically DMA incoming packets to MSRAM or TCM.

    5) Is there any support for HSR/PRP at 1000Mbps?

  • I asked quite a few questions here, and over the past few days I was able to answer most of these on my own.

    My remaining question: is 1000BASE-X is supported via RGMII w/ DP83869 PHY? I believe this should work, but since 1000BASE-X has a few differences compared to 1000BASE-T (no auto-negotiation, link-detect timing differences, etc) I was hoping someone could confirm yea or nay.

  • Hi Steven,

    Apologies for delay in answering the queries. 

    1) Does ICSSG support gigabit speeds as a switch? If not, is this possible with CPSW3G?
    ICSSG switch support 1G mode

    2) Latency benchmarks for gigabit switch operation on AM6442 (checked MCU+SDK documentation, couldn't find any benchmarks)
    We don't have the benchmarking data as of now. This will be part of future releases

    3) Is there any reason 1000BASE-X fiber-optic mode wouldn't work with CPSW3G or ICSSG? (via RGMII w/ DP83869 PHY)

    There is no limitation from enet lld or PRU firmware on supporting 1000Base-X. DP83869 PHY also supports the mode from the PHY data sheet - https://www.ti.com/lit/ds/symlink/dp83869hm.pdf?ts=1675071794977&ref_url=https%253A%252F%252Fwww.google.com%252F

    4) Is there any documentation showing how to configure switch behavior on AM6442? Specifically I'd like to understand how to auto-forward incoming packets to a specific port, and how to automatically DMA incoming packets to MSRAM or TCM.
    Is the use case here to forward the packets irrespective of the Forwarding checks? Can you refer to the Enet lld APIs for the configuration options. https://software-dl.ti.com/mcu-plus-sdk/esd/AM64X/08_05_00_24/exports/docs/api_guide_am64x/ENET_LLD.html

    5) Is there any support for HSR/PRP at 1000Mbps?
    Can you please let me know which OS do you need the functionality? 

    Regards,
    Prajith