光トランシーバーはSNIA SFFにて仕様が’規定されているので、各メーカー毎の差は基本的に無いと。繰り返し話をしていますが、それはSNIA SFFが発行されて以降の話です。
太古の1000GBASE-TのSFPは各社実装がバラバラです。
I2Cでaddress AChにて参照できるレジスター情報によって該当1000BASE-Tトランシーバーに仕様されているPHYの種類が判別でき。加えて、そのPHYに設定されている初期の状態を調べることで仕様を判断することができます。
i2cget -y 1 0x56 2 w (byte orderは反転)
PHY chip ID | REG 2 | REG3 |
---|---|---|
MARVELL 88E1111 B0 | 0x4101 | 0xC10C |
MARVELL 88E1111 B2 | 0x4101 | 0xC20C |
MARVELL 88E1111 C2 | 0x4101 | 0x970C |
15 | 14 | 13 | 12 | 11 | 10 | 09 | 08 | 07 | 06 | 05 | 04 | 03 | 02 | 01 | 00 | 15 | 14 | 13 | 12 | 11 | 10 | 09 | 08 | 07 | 06 | 05 | 04 | 03 | 02 | 01 | 00 |
0 | 1 | 4 | 1 | 0 | C | C | 2 | ||||||||||||||||||||||||
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
vender OUI bit 3 to 24 | model | rev |
Marvell® OUI is 0x005043(0000 0000 0101 0000 0100 0011)
MARVELL 88E1111が搭載された製品の場合、HWCFGと呼ばれる電源投入時の初期設定状態が重要です。
HWCFG_MODE[3:0] register 27の下位4ビット
MAC interface | 10BASE-T | 100BASE-TX | 1000BASE-T |
---|---|---|---|
SERDES(GBIC mode) | 1000 | ||
GMII(Gigabit Media Independent Interface) | 1111 | ||
RGMII(Reduced GMII) | 1011 | 1011 | 1101 |
SGMII w clock | 0000 | 0000 | 0000 |
SGMII wo clock(Gigabit Media Independent Interface) | 0100 | 0100 | 0100 |
UTP区間の速度は10/100/1000bpsと変化するときに。トランシーバーとスイッチ間の速度が変化するのがSerial/SERDES。変化せずにpaddingするのがSGMII。
傾向としては、GBIC時代からの1Gbps専用ポートの実装を引き継いだ製品はGBIC modeの1000BASE-T SFPを要求し。10/100/1000速度自動追求をサポートした機種はSGMII modeの1000BASE-T SFPを要求します。
直接RJ-45ポートを備える場合と1000BAS-T SFPを経由する場合では異なる。
auto negosiation
SGMIIはPHYと機器の間のデータ速度は固定で、10/100Mbpsの時はdummy bitで埋める。
1000BASE-TのSFPに様々なタイプが存在するのは初期のレジスター設定の違いですので、スイッチがSFPを認識した後に積極的にレジスターの値を設定する場合は動作に差が無くなります。これらの製品はMARVELL 88E1111が使われていることを前提にしています。
例としては、旧型の機種では1Gbps固定でPHYのレジスタを操作しないためにGBIC modeのSFPを推奨しているが、新型の機種ではPHYレジスタを操作してSGMII modeへ遷移し10/100/1000の自動追従をサポートする実装があります。
受信のクロックが再生できいわゆるlink upを示す制御線(PIN 8)があります。これが変化するのか常にupかの種類があります。
トランシーバー本体の機能とは別に送信機能だけを抑制する制御線(PIN 3)があります。この信号が有効なのか。無効なのかの種類があります。
65 | 4 | TX_DISABLE is implemented and disables the high speed serial output. |
65 | 1 | Loss of Signal implemented, behavior as defined in SFF-8419 (often called "Rx_LOS"). |
reg2 | reg3 | reg27 | HWCFG | option | ||
WST-SEACIV-R6 | 0x4101 | 0xc20c | 0x8c80 | 1100 | 12 | GBIC, wo-X nego |
WST-SEACCV | 0x4101 | 0xc20c | 0x8890 | 1000 | GBIC,w-X nego | |
WST-SEAMCV | 0x4101 | 0xc20c | 0x8480 | 0100 | 1A | SGMII |
WST-SEAMIV | 0x4101 | 0xc20c | 0x8480 | 0100 | 00 | |
cisco GLC-T | 0x4101 | 0xc10c | 0x8890 | 1000 | 00 | GBIC,auto nego paypass |
cisco GLC-TE | ||||||
cisco GLC-TE-RGD | ||||||
cisco SFP-GE-T | ||||||
Finisar 8521 | 0x4101 | 0xc10c | 0x8890 | 1000 | 1000BASE-X audo nego | |
Finisar 8520 | RX LOS | |||||
0x4101 | 0xc02c | 0x8480 | 0100 | SGMII | ||
0x4101 | 0xc20c | 0x8890 | 1000 | 1A | ||
Avago ABCU-5700RZ | RX LOS | |||||
Avago ABCU-5710RZ |
Option Values [Address A0h, Bytes 64-65]
https://www2.wavesplitter.jp/index.php/191/1000base