クロックの極性と位相
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/12/18 15:48 UTC 版)
「シリアル・ペリフェラル・インタフェース」の記事における「クロックの極性と位相」の解説
クロック周波数の設定に加えて、マスターはデータに対するクロックの極性と位相も設定する必要があります。Motorola SPI Block Guideは、これら2つのオプションをそれぞれCPOLおよびCPHA(クロック極性「polarity」およびクロック位相「phase」)と命名しています。これは、ほとんどのベンダーが採用している規約です。 タイミング図を右に示します。タイミングの詳細は以下に記述される通りです。このタイミングは、マスタとスレーブの両方のデバイスに適用されます。 CPOLはクロックの極性を決定します。極性は単純なNOTゲートで変換できます。CPOL=0 はアイドル状態では0で、各サイクルは1のパルスで構成される。つまり、パルスの先端エッジは立ち上がりエッジであり、末尾エッジは立ち下がりエッジである。 CPOL=1 はアイドル状態では1で、各サイクルは0のパルスで構成される。つまり、パルスの先端エッジは立ち下がりエッジであり、末尾エッジは立ち上がりエッジである。 CPHAは、データビットの、クロックパルスに対するタイミングを決定する。これら2つの間の変換は簡単ではありません。CPHA=0 では"出力"側はデータを前のクロックサイクルの末尾のエッジで変更します。一方、"入力"側はデータを現時点のクロックサイクルの先端エッジでキャプチャします。出力側は現時点のクロックサイクルの末尾のエッジまでデータが有効になるように保持します。送信の最初のサイクルでは、先端のエッジの前に、最初のビットがMOSI線上に出力されていなければならない。 CPHA=1 では"出力"側はデータを現時点のクロックサイクルの先端のエッジで変更します。一方、"入力"側は現時点のクロックサイクルの末尾のエッジでキャプチャします。出力側は、次のクロックサイクルの先端エッジまでデータが有効になるように保持します。送信の最後のサイクルでは、スレーブ側はSS線が無効の出力になるまで、MISOを保持する。 MOSIおよびMISO信号は、通常、次のクロックでの遷移まで、半サイクルの間(受信ポイントで)安定しています。SPIマスタおよびスレーブデバイスは、その半サイクルにおいて、異なるポイントでデータをサンプリングする可能性があります。 これにより、マスターとスレーブ間の通信チャネルの柔軟性が向上します。
※この「クロックの極性と位相」の解説は、「シリアル・ペリフェラル・インタフェース」の解説の一部です。
「クロックの極性と位相」を含む「シリアル・ペリフェラル・インタフェース」の記事については、「シリアル・ペリフェラル・インタフェース」の概要を参照ください。
- クロックの極性と位相のページへのリンク