How to set a Triple-Speed Ethernet (TSE) IP to operate in SGMII at 100 Mbps in a Cyclone V GT?
Hello.
We are using a TSE IP on a Cyclone V GT, configured as follows:
Core variation: 10/100 / 100Mb Ethernet MAC with 1000BASE-X / SGMII PCS
Interface: MII / GMII
Transceiver Type: GXB
This FPGA is on a proprietary PCB along with a KSZ9897S Microchip Ethernet switch. It is connected to port 7 of this switch (which is exclusively an SGMII interface).
TSE IP works as expected at 1Gbps. However, it is desirable for us to lock the operation at 100 Mbps. Based on what we interpreted from the user guide, we have been trying to configure the IP, however we've had no sucess changing the interface speed from 1Gbps to 100Mbps, no matter what we do.
Even disabling auto-negotiation and setting the interface speed to 100Mbps (via the “IF_Mode Register” register, PCS offset 0x14) the speed does not seem to change in the status registers (via “PCS Control Register”, offset 0x00). Such behavior can be confirmed because the interface continues operating correctly at 1 Gbps.
We've already tried different approaches. We have even tried to force the "set_1000" internal signal to '0' in the RTL at the top of the IP to see if it would operate at 100Mbps, but without success. Although the synthesis was performed without errors, Ethernet traffic does not pass in this scenario.
Could anybody confirm if it is possible to force IP operation in SGMII at 100 Mbps? If so, what is the correct procedure to achieve it?
Thank you in advance.
Regards,
Diego.