4B5B符号化

From Wikipedia, the free encyclopedia

4b/5b符号化 (4B5B, 4B/5B とも) は、シリアル通信に用いられる伝送路符号の1つ。ISO/IEC 9314-1が規定したもので、この名称は4ビットのデータを5ビットのデータに変換して転送することに由来する[1]

特徴

1つの通信路上でクロックとデータを同時に送信する際、受信側が正しくクロックを同期するには一定の期間内に必ず遷移が起こる必要がある。 例えばNRZなどで 0000 のような連続する4ビットは、伝送路の物理量が Low を出力し続け High への遷移を含まないため、同期に失敗する恐れがある。 この対策のために、4b/5bでは、5ビット中に最低2回の遷移が起こるようなものに変換して送る。

副作用として、4ビットをそのまま送るよりも多くのビットが必要となる。 利点として、5ビットで表現できるビット列の中にはデータとして使われないものがあるため、規格によってはこのようなビット列を制御用に定義したり、不使用なパターンを受信したらリンク上の不具合として検出したりもできる。

一般に4b/5b という名称はFDDIによる実装を指すが、他の実装として群符号化記録 (GCR) による4b/5b符号もある。 また、4b/5b符号と同様の目的のものとして、8b/10bスクランブラ(擬似乱数)を使う方法がある。

用例

4b/5b は以下の規格で採用されている。

光ファイバ上では、 NRZIを用いて4b/5b符号を伝送する。 FDDI over copper (CDDI) や 100BASE-TX では、ツイストペアケーブル上にMLT-3を用いて4b/5b符号を伝送する[2][4]

変換方式

以下に変換テーブルの代表的な実装を示す。 データを表現する16種類の符号(シンボル)のほか、制御用のシンボルがFDDIファーストイーサネットで使われている[2][6]。 このビット変換に決まった法則はなく、事前に用意したテーブルによる変換が行われる。これら5ビット符号は左から順に通信路上に送られる。

さらに見る データ, 5b符号 ...
4b/5bによるデータ変換
データ 5b符号
十六進数二進数
0000011110
1000101001
2001010100
3001110101
4010001010
5010101011
6011001110
7011101111
8100010010
9100110011
A101010110
B101110111
C110011010
D110111011
E111011100
F111111101
閉じる
さらに見る シンボル名, 5b符号 ...
4b/5bの制御シンボル
シンボル名 5b符号 意味 FDDI 100BASE-X
H00100Halt (停止)YesYes
I11111Idle (アイドル状態)YesYes
J11000Start (開始1)YesYes
K10001Start (開始2)YesYes
L00110Start (開始3)NoNo
P00000Sleep (EEE用途)NoYes
QQuiet (Loss of signal)YesNo
R00111ResetYesYes
S11001SetYesNo
T01101Terminate (終了)YesYes
閉じる

制御シンボルを複数組み合わせて以下のように制御シーケンスとして使うことがある。

さらに見る シンボル名, 5b 符号 ...
FDDIイーサネットで用いる制御シーケンス
シンボル名 5b 符号 用途
JK 11000 10001 開始デリミタ
TT 01101 01101 終了デリミタ(FDDI)
TR 01101 00111 終了デリミタ(Fast Ethernet)
閉じる
さらに見る シンボル名, 5b 符号 ...
USB PDで用いる制御シーケンス[7]
シンボル名 5b 符号 用途
JJJK11000 11000 11000 10001 SOP (Start Of Packet)
JJLL11000 11000 00110 00110 SOP'
JLJL11000 00110 11000 00110 SOP"
JSSL11000 11001 11001 00110 SOP'_Debug
JSLK11000 11001 00110 10001 SOP"_Debug
RRRS00111 00111 00111 11001 ハードウェアリセット
RJRL00111 11000 00111 00110 ケーブルリセット
T01101 終了デリミタ
閉じる

出典

外部リンク

Related Articles

Wikiwand AI