PCを普通に使っていると、ちょっと前までシリアル伝送といえばCOMポートでした。COMポートはコンピュータがパーソナル化する遥か以前からテレックス端末などで使用されていた由緒正しいシリアル・ポートです。COMポートが使っているのは非同期式(正確には調歩同期式)通信といわれるもので、データが来るのにあわせてぱらぱらと伝送する方法です。この方法ではデータ以外に特に信号線は不要で、ハードウェアが簡単であることが特徴です。また、送信や受信の処理が間に合わないときには相手を待たせることができますので、プログラミングは比較的気楽です。
調歩同期式の欠点は速度とタイミングです。調歩同期式ではいきなりデータそのものをぱらぱら送りますので、高速に伝送すると受信がどんどん難しくなります。また、好きなタイミングで送ることができるということは、かっちりしたタイミングは苦手だということです。
同期シリアル伝送方式は調歩同期式とちがってかっちりしたタイミングで高速にデータを送ります。高速である半面、通信タイミングが決まっているため、ソフトウェアは調歩同期式ほど気楽なものではありません。
同期式といってもいろいろな方法があります。ADSP-2191のSPORTが扱う同期方法はビット・クロック同期です。この方法の原理は簡単で、データ線とは別にビット・クロック線が用意されており、データはこのクロックにあわせて送ることになります。
下の図にその例を示します。データとは別にクロックが供給されています。データの読み取りはクロックのアップ・エッジで行われます(矢印)。クロックを使うことによってデータを取る位置が明確になり、これによってより速い速度での通信が可能になります。
クロックとデータの関係は上の図のほかにもありえます。たとえば、クロックのダウン・エッジでデータを取る方法や、データのロジックを反転する方法、クロックを常に出したり断続的に出したりするなど組み合わせは多くあります。
上の図はビットの同期を取る方法でした。これはすごくよい方法ですが、このままだとどこがワードの頭だかわかりません。伝送開始時からビットの数を数えておけばもちろんわかりますが、事故でクロックを喪失したときなど復帰が難しくなります。
そこで使うのがワード同期信号です。これはワードの最初のビットや最後のビットでだけ1になるような信号線です。これさえ使えばいつでも同期の回復が可能です。ワード同期信号は1ワード毎に作る必要はなく、複数ワード毎に来るワード同期信号をフレーム同期信号とよびます。通常はフレーム同期という呼び方が一般的です。この場合、同期信号で区切られる区間のことをフレームと呼びます。
フレーム同期にも同期信号の長さ、位置、極性などいろいろな組み合わせがあります。
複数ワードからなるフレームを考えましょう。このとき、それぞれのワードに違う役割を持たせることができます。たとえば、最初のワードは右チャンネルデータ、次のワードは左チャンネルデータ、といった具合です。このような方法をマルチチャンネル伝送とよび、それぞれのワードをチャンネル(スロット)と呼びます。厳密にはスロットという言葉にはフレーム内の位置を示す意味合いが強く、チャンネルにはスロット上に確立された論理的な通信経路の意味合いが強いですが、まぁ、細かいことは言わないことにしましょう。
マルチチャンネル伝送は少ない配線で多くの回線を使うことができるため、広く使われています。AC97コーデックもマルチチャンネル伝送を行っています。
⇒次はAC97コーデック