最近研究光纖傳輸,發現對於SGMII、1000BASE-X的概念很容易模糊,網上各種查資料也不是很清楚,在此把搜集到的一些信息貼出來,以供參考。
來自Xilinx 論壇:https://forums.xilinx.com/t5/General-Technical-Discussion/Ethernet-1000base-X-VS-SGMII/td-p/483338
1000BASE-X is intended to go to a SFP. It was intended for point to point electical links on PCB, as well as an interface to 1000BASE-LX and 1000BASE-SX.
SGMII is a serialization of the GMII signals, and was intended to connect a MAC to a PHY.
They ended up having similar features, and many devices ended up supporting both. For example, the Xilinx core supports both. Many ethernet PHYs support both.
For 1000BASE-T SFP+ modules, it looks like there is a similar feature with some modules supporting one or both standards.
Both protocols should work between optical SFP+ modules that are controlled by the FPGA. However, you should make sure that any high/low BW pins on the SFP+ are set correctly, and that the SFP+'s don't require a specific protocol.
Otherwise you should favor the protocol that will work with other devices. This is probably 1000BASE-X.
If you are having issues with 1000BASE-X, make sure all reset/clocking is done. Note that some config values are loaded on edges of the res
來自88E1512 datasheet:
綜合上述信息得出:SGMII本身設計是用於MAC和PHY之間連接的協議。和1000BASE-X有很多共同特性,包括編碼方式等,但是自協商這部分應該不一樣。
都可以用在在光纖中傳輸,但是要想保證兼容性,和別的設備能夠對接的話,使用光纖最好還是用1000BASE-X的模式。