SFF-8024(コード表)
SFF-8024(SFF Module Management Reference Code Tables)は、他のすべての管理仕様が参照する 1バイトコードの共有レジストリです。メモリレイアウトを記述するものではなく、値に意味を割り当てます。モジュール種別 18h が何を指すか、コネクター 0Ch が何を意味するか、拡張コンプライアンスコード 06h が何を表すか、といった具合です。このレジストリが1つの文書にまとまっているおかげで、SFF-8472、SFF-8636、CMIS、 MIS、INF-8077i はすべて同じバイトを同じ意味で解釈でき、新しいフォームファクターや PMD も一度登録するだけで済みます。この文書は年に数回改定されるため、デコードの際は常に最新のリビジョンを基準にしてください。
各テーブルの使用箇所
| テーブル | 名称 | SFP(SFF-8472) | QSFP(SFF-8636) | CMIS |
|---|---|---|---|---|
| 4-1 | 識別子 | A0h バイト 0 | バイト 0 / 128 | バイト 0 / 128 |
| 4-2 | 符号化方式 | バイト 11 | バイト 139 | —(アプリケーションにより暗黙的に決まる) |
| 4-3 | コネクター | バイト 2 | バイト 130 | ページ 00h バイト 203 |
| 4-4 | 拡張仕様準拠 | バイト 36 | バイト 192 | — |
| 4-5 | ホスト電気インターフェース ID | — | — | アプリケーション記述子(バイト 86 + 4n) |
| 4-6 … | メディアインターフェース ID(MMF、SMF、パッシブ銅線、アクティブケーブル、BASE-T) | — | — | アプリケーション記述子(バイト 87 + 4n)、テーブルはメディア種別バイト 85 で選択 |
Table 4-1 — 識別子の値
| コード | モジュール | コード | モジュール |
|---|---|---|---|
| 00h | 不明 / 未指定 | 11h | QSFP28(SFF-8636) |
| 01h | GBIC | 12h | CXP2 / CXP28 |
| 02h | マザーボードにはんだ付けされたモジュール | 13h | CDFP style 1/2 |
| 03h | SFP / SFP+ / SFP28(SFF-8472) | 14h | シールド付きミニマルチレーン HD 4X ファンアウト |
| 04h | 300ピン XBI | 15h | シールド付きミニマルチレーン HD 8X ファンアウト |
| 05h | XENPAK | 16h | CDFP style 3 |
| 06h | XFP(INF-8077i) | 17h | microQSFP |
| 07h | XFF | 18h | QSFP-DD(CMIS) |
| 08h | XFP-E | 19h | OSFP 8X(CMIS) |
| 09h | XPAK | 1Ah | SFP-DD(MIS) |
| 0Ah | X2 | 1Bh | DSFP |
| 0Bh | DWDM-SFP / SFP+(SFF-8472 非準拠) | 1Ch | x4 MiniLink / OcuLink |
| 0Ch | QSFP(INF-8438) | 1Dh | x8 MiniLink |
| 0Dh | QSFP+(SFF-8636 / SFF-8436) | 1Eh | QSFP+ 以降、CMIS 対応 |
| 0Eh | CXP | 1Fh | SFP-DD、CMIS 対応 |
| 0Fh | シールド付きミニマルチレーン HD 4X | 20h | SFP+ 以降、CMIS 対応(SFP112 など) |
| 10h | シールド付きミニマルチレーン HD 8X | 21h | OSFP-XD、CMIS 対応 |
新しいリビジョンでは、21h 以降にも CMIS 管理下のフォームファクターが追加されます。コード 80h–FFh はベンダー固有です。どのフォームファクターがどれに当たるかは、 フォームファクターを参照してください。
Table 4-2 — 符号化方式
| コード | SFF-8472(SFP、バイト 11) | SFF-8636(QSFP、バイト 139) |
|---|---|---|
| 00h | 未指定 | 未指定 |
| 01h | 8B/10B | 8B/10B |
| 02h | 4B/5B | 4B/5B |
| 03h | NRZ | NRZ |
| 04h | Manchester | SONET scrambled |
| 05h | SONET scrambled | 64B/66B |
| 06h | 64B/66B | Manchester |
| 07h | 256B/257B(トランスコードされた FEC) | 256B/257B |
| 08h | PAM4 | PAM4 |
この2つの列は 04h–06h で異なっており、QSFP 用のテンプレートを SFP に流用した際によくある「符号化方式の誤り」の原因になります。
Table 4-3 — コネクター種別
| コード | コネクター | コード | コネクター |
|---|---|---|---|
| 00h | 不明 | 0Ch | MPO 1×12 |
| 01h | SC | 0Dh | MPO 2×16 |
| 02h | Fibre Channel style 1 銅線 | 20h | HSSDC II |
| 03h | Fibre Channel style 2 銅線 | 21h | 銅線ピグテール |
| 04h | BNC/TNC | 22h | RJ45 |
| 05h | Fibre Channel 同軸ヘッダー | 23h | 分離可能なコネクターなし(DAC、AOC、ピグテールモジュール) |
| 06h | Fiber Jack | 24h | MXC 2×16 |
| 07h | LC | 25h | CS |
| 08h | MT-RJ | 26h | SN(旧 mini CS) |
| 09h | MU | 27h | MPO 2×12 |
| 0Ah | SG | 28h | MPO 1×16 |
| 0Bh | 光ピグテール | — | — |
写真とファイバーの組み合わせについては、 コネクターと光ファイバーを参照してください。
Table 4-4 — 拡張仕様準拠(抜粋)
SFP バイト 36 と QSFP バイト 192 で使用され、ビットフィールドではなく単一の値です。
| コード | 意味 | コード | 意味 |
|---|---|---|---|
| 01h | 100G AOC / 25GAUI C2M AOC(BER 5·10⁻⁵) | 1Fh | 40G SWDM4 |
| 02h | 100GBASE-SR4 / 25GBASE-SR | 20h | 100G SWDM4 |
| 03h | 100GBASE-LR4 / 25GBASE-LR | 21h | 100G PAM4 BiDi |
| 04h | 100GBASE-ER4 / 25GBASE-ER | 22h–24h | 4WDM-10 / -20 / -40 MSA |
| 05h | 100GBASE-SR10 | 25h | 100GBASE-DR |
| 06h | 100G CWDM4 | 26h | 100G-FR / 100GBASE-FR1 |
| 07h | 100G PSM4 | 27h | 100G-LR / 100GBASE-LR1 |
| 08h | 100G ACC / 25GAUI C2M ACC(BER 5·10⁻⁵) | 30h–33h | 50G/100G/200G のアクティブ銅線および AOC(規定された BER) |
| 0Bh | 100GBASE-CR4 / 25GBASE-CR CA-25G-L / 50GBASE-CR2(RS-FEC) | 40h | 50GBASE-CR / 100GBASE-CR2 / 200GBASE-CR4 |
| 0Ch | 25GBASE-CR CA-25G-S / 50GBASE-CR2(BASE-R FEC) | 41h | 50GBASE-SR / 100GBASE-SR2 / 200GBASE-SR4 |
| 0Dh | 25GBASE-CR CA-25G-N / 50GBASE-CR2(FEC なし) | 42h | 50GBASE-FR / 200GBASE-DR4 |
| 10h | 40GBASE-ER4 | 43h | 200GBASE-FR4 |
| 11h | 4×10GBASE-SR | 44h | 200G 1550 nm PSM4 |
| 12h | 40G PSM4 | 45h | 50GBASE-LR |
| 13h–15h | ITU-T G.959.1 P1I1-2D1 / P1S1-2D2 / P1L1-2D2 | 46h | 200GBASE-LR4 |
| 16h | 10GBASE-T(SFI 使用) | 47h | 400GBASE-DR4 |
| 17h | 100G CLR4 | 48h | 400GBASE-FR4 |
| 18h | 100G AOC / 25GAUI AOC(BER 10⁻¹²) | 49h | 400GBASE-LR4-10 |
| 19h | 100G ACC / 25GAUI ACC(BER 10⁻¹²) | 4Ah | 400GBASE-ZR |
| 1Ah | 100GE-DWDM2 | 7Fh | 256GFC-SW4 |
| 1Bh | 100G 1550 nm WDM(4 λ) | 80h | 64GFC に対応 |
| 1Ch–1Eh | 10GBASE-T SR / 5GBASE-T / 2.5GBASE-T | 81h | 128GFC に対応 |
25G や 100G の識別をそもそも可能にしているのがこのテーブルです。SFF-8472 バイト 3–10 の従来型のビットフィールドには、これらを収める余地がありません。2つの仕組みがどう組み合わさるかは、 コンプライアンスコードを参照してください。
Table 4-5 以降 — CMIS インターフェース ID(抜粋)
CMIS は、モジュールができることをアプリケーションとして記述します。これは、ホスト電気インターフェースとメディアインターフェースを組み合わせたものです。どちらの半分も SFF-8024 のコードです。
| ホスト電気インターフェース(4-5) | コード |
|---|---|
| 1000BASE-CX | 01h |
| XAUI | 02h |
| XFI | 03h |
| SFI | 04h |
| 25GAUI C2M | 05h |
| XLAUI C2M | 06h |
| XLPPI | 07h |
| LAUI-2 C2M | 08h |
| 50GAUI-2 C2M | 09h |
| 50GAUI-1 C2M | 0Ah |
| CAUI-4 C2M | 0Bh |
| 100GAUI-4 C2M | 0Dh |
| 100GAUI-2 C2M | 0Eh |
| 200GAUI-8 C2M | 0Fh |
| 200GAUI-4 C2M | 10h |
| 400GAUI-16 C2M | 11h |
| 400GAUI-8 C2M | 12h |
| 400GAUI-4 C2M | 13h–14h(短距離 / 長距離) |
| 800G C2M(8 × 100G) | 15h–16h |
| メディアインターフェース | MMF テーブル | SMF テーブル |
|---|---|---|
| 10GBASE-SR / 10GBASE-LR | 02h | 04h |
| 25GBASE-SR / 25GBASE-LR | 03h | 07h |
| 40GBASE-SR4 / 40GBASE-LR4 | 04h | 09h |
| 100GBASE-SR4 / 100GBASE-LR4 | 09h | 0Dh |
| 100G SWDM4 / 100G CWDM4 | 0Ah | 10h |
| 100GBASE-SR2 / 100GBASE-DR | 0Ch | 14h |
| 100G-SR / 100G-FR | 0Dh | 15h |
| 200GBASE-SR4 / 200GBASE-DR4 | 0Eh | 17h |
| 400GBASE-SR8 / 400GBASE-DR4 | 10h | 1Ch |
| 400G-SR4 / 400G-FR4 | 11h | 1Dh |
| 800G-SR8 / 800G-DR8 | 12h | (800G のコードが続く) |
パッシブ銅線、アクティブケーブル、BASE-T のメディアにはそれぞれ専用の短いテーブルがあります。どのテーブルが適用されるかは CMIS のメディア種別バイト 85 で決まります(01h MMF、02h SMF、03h パッシブ銅線、04h アクティブケーブル、05h BASE-T)。完全なリストは SFF-8024 のリビジョンごとに変わるため、上記はレジストリそのものではなく、あくまで目安として扱ってください。アプリケーションがどのように通知され選択されるかは、CMISを参照してください。
実務上の注意点
- 古いファームウェアで動作しているホストは、認識できないコードを不明として表示します。読み取り自体に支障はありませんが、種別を特定できないモジュールの起動を拒否するプラットフォームもあります。
- モジュールをコーディングする際は、実際のハードウェアを表すコードを選びます。ホストは識別子、コネクター、符号化方式、コンプライアンスコードを互いに照合します(速度とレート)。
- 予約済みおよびベンダー固有の範囲(80h–FFh)は正当な値ですが、デコードしても有用な情報は得られません。
CodingBox では
CodingBox は SFF-8024 のテーブルを内蔵しており、EEPROM editor と Check transceiver で識別子、コネクター、符号化方式、拡張準拠、CMIS アプリケーションの各フィールドにラベルを付けるのに使っています。そのため、QSFP-DD のアプリケーション記述子にある生の 12h は400GAUI-8 C2Mと表示されます。
識別子 21h の実例は OSFP-XD。レーンあたり 200G の OSFP は 19h のままです。OSFP224 も参照してください。