質問やフィードバックがありましたら、フォームからお願いします
本文は台湾華語で、ChatGPT で翻訳している記事なので、不確かな部分や間違いがあるかもしれません。ご了承ください
前回は、Manchester コーディングがデータストリームがすべて 0 または 1 の場合に効果的に解決できる一方で、同様のデータを送信するには二倍の帯域幅が必要であることを述べました。これは、高速伝送において望ましくない条件です。
今日は、4B/5B コーディングについて紹介します。このコーディングは、データストリームがすべて 0 または 1 の場合に効果的に解決し、必要以上の帯域幅を犠牲にしません。
4B/5B
4B/5B は、元のデータを 4 ビットのグループに分け、5 ビットのグループに変換する方式です。これにより、0000
や 1111
といったデータストリームがエンコードされ、すべてが 0 または 1 になることを防ぎ、クロックを復元できなくなる事態を回避します。
4bit | 5bit |
---|---|
0000 | 11110 |
0001 | 01001 |
0010 | 10100 |
0011 | 10101 |
0100 | 01010 |
0101 | 01011 |
0110 | 01110 |
0111 | 01111 |
1000 | 10010 |
1001 | 10011 |
1010 | 10110 |
1011 | 10111 |
1100 | 11010 |
1101 | 11011 |
1110 | 11100 |
1111 | 11101 |
0000
と 1111
を観察すると、5 ビットに変換された後には必ず 1 回のトランジション(高電位から低電位への変化、またはその逆)があることがわかります。ビットが1つ増え、同じ伝送量には 20% 余分な帯域幅が必要になりますが、Manchester と比較すればまだ大きな改善です。1000BASE-X は 8B/10B コーディングを使用しており、概念的には 4B/5B と同じですが、8 ビットを一度にエンコードします。8B/10B は、1000BASE-X の他にも、PCI1.0/2.0 や USB3 などのさまざまな高速伝送プロトコルでも使用されています。
8B1Q4
2023年の私たちにとって、有線ネットワークの速度は一般的に 1Gbps であり、さらなる帯域幅を求めると 10Gbps になります。
一般的なイーサネットケーブルは、内部に絶縁されたペアのワイヤが互いに巻きついています。この巻きつけ方は、ノイズを効果的に減少させることができます。それにもかかわらず、高い周波数の状況下では、ノイズの干渉を受けやすくなります。
100BASE-TX 以上の伝送では、8B1Q4(8 binary to 1 quinary 4)を使用してコーディングされます。主要な原理は、同じ周期内で複数のビットを送信し、データ量を増やすことです。例えば、CAT-6 の伝送周波数は 125MHz ですが、伝送速度は 1Gbps です。
8B1Q4 は、8 ビットと 1 ビット(チェックコード)を 4 グループに分けることで構成されており、上の図にあるように合計 4 グループのワイヤがあります。グループ分けの後、それぞれ異なる電位で表現されます。
では、実際には 9 ビットのデータをどのように4グループに分けるのでしょうか?まず、チェックコードとデータの最初の 2 ビット、合計 3 ビットを見て対応する変換表を探し、残りの 6 ビットはその変換表からエンコードします。特に注目すべき点は、各ケーブルの電位が 5 つあることで、高電位と低電位だけではありません。この方法により、1 サイクル内で 2 ビットを送信できるため、同じ帯域幅内での伝送量は二倍になります。
これが、CAT-6 の伝送周波数が 125MHz でありながら、伝送速度が 1Gbps である理由です。
この記事が役に立ったと思ったら、下のリンクからコーヒーを奢ってくれると嬉しいです ☕ 私の普通の一日が輝かしいものになります ✨
☕Buy me a coffee