通信プロトコルの全体像
デバイス同士でなにかデータをやり取りして、通信する方式は、大きく以下のように分類されます。シリアル通信・パラレル通信、さらに同期式・非同期式と分かれています。現在の通信プロトコルはシリアル通信が主流となっています。

シリアル通信とパラレル通信
通信方式は、一度に送るデータの幅(線の数)によって、パラレルとシリアルに分けられます。
パラレル通信

複数の信号線を使って、一度に複数のビット(例えば8ビットや16ビット)をまとめて送る方式です。多車線の高速道路に例えられます。一度に大量のデータを送れるためかつては主流でしたが、配線数が多くなり基板の面積を圧迫することや、高速化すると複数の配線間で信号が到達するタイミングのズレ(スキュー)が発生しやすくなるという弱点があります。
スキューとは
スキューとは、以下の図のように複数の信号線の間で、信号が受信側に到達するタイミングのズレのことです。基板上の配線の長さの微小な違いや電気的な影響により受信側に到達する時間に差が生じます。通信速度が高速になると、このズレが致命的となって、受信側が正しく読み取れなくなります。以下の図のように、送信側は0111を送信したつもりでも、若干ずれがあり、受信側では0110となってしまいます。

シリアル通信
1本の信号線を使って、データを1ビットずつ順番に送る方式です。1車線の道路に例えられます。一見するとパラレル通信より遅く見えますが、配線間のタイミングのズレを気にする必要がないため、クロック周波数を極限まで高めることができます。配線数が少なく、小型化・低コスト化に有利なため、現在は圧倒的にシリアル通信が主流となっています。

同期通信と非同期通信
通信方式は、同期式と非同期式に大きく分類されます。この2つの決定的な違いは、タイミングを合わせるための専用のクロック線が接続されているかどうかです。
同期通信(Synchronous)
送信側と受信側の間で、データ線とは別に「クロック専用の信号線」を接続する方式です。マスターが規則正しいクロック信号を出力し、そのクロックの立ち上がり、あるいは立ち下がりのタイミングに完全に同調してデータを読み書きします。
クロックピンという目印があるため、確実かつ高速にデータを転送できるのが最大のメリットです。

非同期通信(Asynchronous)
「クロック専用の信号線」を持ちません。その代わり、あらかじめお互いに「このスピードで通信しよう」と約束しておきます。データの先頭に来る「スタートビット」を合図に、それぞれが持つ独立した内部クロックを頼りにデータを読み取ります。
配線数を極限まで減らせるのがメリットですが、お互いの内部時計にズレが生じると通信エラーが発生しやすくなります。

まとめ
本記事では、通信方式の分類をしました。通信方式には、同期式・非同期式、シリアル・パラレル通信の分類分けることができることを解説しました。
コメント