イーサネットの物理層(15)個別規格 100BASE-TX 4B5B変換 / Parallel to Serial 変換

4B5B 変換

従来の 10BASE5/2/-T は、伝送路上のフレーム間ギャップは無信号状態になっている。これは、1本の伝送路を複数ノードで共有する方式のため、信号の衝突を避けるためにはデータを送信していない期間を無信号にしなければならないからだ。10BASE5/2/-T では、プリアンブル受信でフレームの開始を知り、プリアンブルの最後に付加される SFD(Start Frame Delimiter)でフレーム有効データの先頭を知ることができる。フレーム終了は無信号に変わることで検知で きる仕組みだ。

100BASE-TX では撚対線を使用し全2重通信ができるようになり、ノード間は 1対1 で接続される。複数のノードで1つの媒体を共有することは無く、フレーム間ギャップを無信号にする必要もなくなった。「埋込クロック方式」で確実にクロックを再現するためにも、100BASE-TX で はフレーム間ギャップを「1」の連続信号に変えた。このため、フレーム間ギャップの無信号期間がなくなり、フレームの開始・終了を検出する何らかの「区切りコード」が必要になった。

さらに、NRZI 符号と MLT3 符号は、「0」が連続すると信号の反転が起きずクロックを抽出できない。この問題を解消する必要がある。そこで、オリジナルの4ビットデータを5ビットデータに変換し、5ビットの中で必ず信号反転が起きる組み合わせに変える方式を採用した。4ビットを5ビットコードグループに置き換えることで、置き換え候補が2倍に増える。この中から適切なコードを選ぶことで問題を解消する仕組みだ。

4B5B 変換は RS 副層で生成した4ビットデータ(ニブル)を送信用の5ビットコードグループに変換する階層だ。図1 の様に変換コードは3つのグループに分かれる。4ビットデータを変換する「データコードグループ」、送信フレームの区切りを示すコードやフレーム間ギャップを示すコード等を規定する「制御コードグループ」と残りは未定義コードだ。

図1 データコードグループの 5B コードを見ると、適度に「1」と「0」の反転が起きる組み合わせになっている。制御コードグループの主な役目は、フレームの開始と終了を識別できるようにすることと、かつて無信号だったフレーム間ギャップを定義することだ。

図1 4B5B 変換コード一覧
図1 4B5B 変換コード一覧

図2 の様に、送信時にプリアンブルの最初の8ビットを図1 の J/K コードペア( 11000 10001)に置き換えることで、フレーム先頭(プリアンブル開始)を検出できるように変えた。 J/K コードペアを SSD(Start of Stream Delimiter) と呼ぶ。これに続くプリアンブルとフレーム本体の4ビット(ニブル)データを、5ビットの「データコードグループに」に順次置き換える。フレーム末尾の FCS の送信が完了すると、フレームの終わりを示す T/R コードペア(01101 00111)を挿入する。T/R コードペアを ESD(End of Stream Delimiter) と呼ぶ。受信ノードは J/K コードペアでフレームの開始を検出し、 T/R コードペアを受信することで、フレームの終了を知ることができる。T/R コードペア送信後から次の送信フレームが検出されるまでの間は IFG(Inter Frame Gap:フレーム間ギャップ) だが、従来の無信号ではなく I (Idle)コード(11111)を継続送信する。ESD と Idle コードを合わせた長さは 12バイト(96 ビット)以上で、従来の 10BASE5/2/-T のギャップ長と同じ長さになる。

図2 100BASE-TX 物理層フレーム構造
図2 100BASE-TX 物理層フレーム構造

4ビットを5ビットに変換するとデータ量が 1.25 倍になる。このため、 100BASE-TX はビット レートの 1.25 倍の 125MHz で送受信を行い、ビットレート 100Mbps を維持している。コードを 1ビット増やすことで、コード変換の選択幅を広げ「1」と「0」の数の均衡を保つことと、 SSD/ESD/Idle 等の制御コードを追加することができるようになった。未定義な Invalid コードを受信すると「フレームエラー」と判断することで、エラー検出能力の強化にも役立っている。

Parallel to Serial 変換

4B5B 変換後、5ビットパラレルデータは NRZ 形式のシリアルデータに変換(Parallel to Serial 変換)され、スクランブラに引き渡される。

スクランブラでは、データが適度に0または1に散らばるよう,つまり0と1が出現するタイミングがランダムになるようにスクランブル処理を行う。スクランブラについては、次回以降説明する。

イーサネットの物理層

この記事を書いた人

岩崎 有平

早稲田大学 理工学部 電子通信学科にて通信工学を専攻。
安立電気(現 アンリツ)に入社後、コンピュータ周辺機器の開発を経てネットワーク機器の開発やプロモーションに従事する。
おもにEthernetを利用したリアルタイム監視映像配信サービスの実現や、重要データの優先配信、映像ストリームの安定配信に向けた機器の開発行い、Video On Demandや金融機関のネットワークシステム安定化に注力した。
現在は、Ethernetにおけるリアルタイム機能の強化・開発と普及に向けて、Ethernet TSNの普及活動を行っている。