I2Cバス 仕 様 書 バージョン 2.1 2000年 1月 目 次 1 序 文 ............................................................................................................... 1.1 バージョン1.0 ン1.0 ‑ 1992年 1992 年 ........................................................................................ 1.2 バージョン2.0‑1998 ン2.0‑1998年 年 ............................................................................................ 1.3 フィリップのI ップのI 2 C バス・デバイスの購入 ................................................................................ 1 1 1 1 2 I 2 C バスの設計および装置製造上の利点 .................................................................................. 2 2.1 システム設計を行なう上での利点 .................................................................................. 2 2.2 装置製造を行なう上での利点 ...................................................................................... 4 3 I 2C バス仕様の概略 ................................................................................................... 4 4 I 2C バスの概念 ....................................................................................................... 4 5 一般的な特徴 ........................................................................................................ 6 6 ビット転送 ........................................................................................................... 6 6.1 データの有効性 ................................................................................................. 6 6.2 『START 『START』 』 条件と 『STOP』 『STOP 』 条件 ........................................................................................ 7 7 データ転送 .......................................................................................................... 8 7.1 バイトのフォーマット .............................................................................................. 8 7.2 アクノリッジ .................................................................................................... 8 8 アービトレーションとクロック生成 ........................................................................................ 9 8.1 同期 ........................................................................................................... 9 8.2 アービトレーション .............................................................................................. 10 8.3 クロック同期メカニズムを利用したハンドシェーク (協調手順) .......................................................... 11 (協調手順).......................................................... 9 7ビット・アドレスのフォーマット.......................................................................................... ト .......................................................................................... 11 10 7ビット・アドレス指定 ................................................................................................ 10.1 第一バイト内の各ビットの定義 ................................................................................... 10.1.1 ゼネラル・コール・アドレス .............................................................................. 10.1.2 『START 『START』 』 バイト .......................................................................................... 10.1.3 CBUSとの互換性 CBUS との互換性 ......................................................................................... 11 13 13 14 15 16 I 2 C バス仕様の拡張 .................................................................................................. 17 12 ファースト・モード .................................................................................................... 17 13 Hsモー Hsモード ........................................................................................................... 13.1 高速転送 ..................................................................................................... 13.2 Hsモー Hsモードにおけるシリアル・データ転送フォーマット .................................................................. 13.3 F/Sモー F/SモードからHs ドからHsモー モードへの切り替えおよびその逆 ................................................................... 13.4 低速モードにおけるHs ドにおけるHsモー モード・デバイス ............................................................................ 13.5 1つのシリアル・バス・システム上の混在スピードモード ............................................................... 13.5.1 混在スピード・バス・システムにおける 混在スピード・バス・システムにおけるF/S F/Sモード転送 モード転送 ....................................................... 13.5.2 混在スピード・バス・システムにおける 混在スピード・バス・システムにおけるHs Hsモード転送 モード転送 ........................................................ 13.5.3 混在システムにおけるブリッジに対するタイミング要求 ...................................................... 18 18 19 21 22 22 23 23 25 14 10ビッ 10ビット・アドレス指定 ................................................................................................ 14.1 第 第11 および第 および第22 バイトのビットの定義 ............................................................................... 14.2 10ビッ 10ビット・アドレスのフォーマット .................................................................................. 14.3 10ビッ 10ビット・アドレス指定されたゼネラル・コール・アドレスおよび開始 (START) (START ) バイト ......................................... 25 25 25 28 15 I/Oステージおよびバス I/O ステージおよびバス・ラインの電気的仕様およびタイミング ............................................................. 28 15.1 標準およびファースト・モード・デバイス ............................................................................ 28 15.2 Hsモー Hsモード・デバイス ............................................................................................. 32 16 I 2 C バス・デバイスとバス・ライン間の電気的接続 ......................................................................... 35 16.1 標準モードI ドI 2 C バス・デバイスの抵抗Rp デバイスの抵抗Rpと とRsの最大値および最小値 Rs の最大値および最小値 ..................................................... 37 17 アプリケーション情報 ................................................................................................ 17.1 ファースト・モードI ドI 2 C バス・デバイスの出力段のスロープ制御 .......................................................... 17.2 ファースト・モードI ドI 2 C バス・デバイスのスイッチ付きプルアップ回路 ..................................................... 17.3 バス・ラインの配線パターン ..................................................................................... 17.4 ファースト・モードI ドI 2 C バス・デバイスの抵抗Rp デバイスの抵抗Rpおよび およびRs Rsの最大値と最小値 の最大値と最小値 ................................................ 17.5 Hsモー HsモードI ドI 2 C バス・デバイスの抵抗Rp デバイスの抵抗Rpおよび およびRs Rsの最大値と最小値 の最大値と最小値 ....................................................... 39 39 39 40 40 40 18 40 41 42 43 44 F/Sモー F/SモードI2C ドI2Cバス バス・システム用の双方向レベル・シフタ ..................................................................... 18.1 異なったロジック・レベルとのデバイス接続 ......................................................................... 18.1.1 レベル・シフタの動作 .................................................................................... 19 フィリップスから供給される開発ツール .................................................................................. 20 参考資料 .......................................................................................................... Philips Semiconductors I2Cバス仕様書 1.2 序 文 1 1.1 バージョン2.0‑1998 バージョン 2.0‑1998年 年 I 2 C バスはデファクトのワールド・スタンダードになっており、現在、 1000個以上の異なった 1000 個以上の異なったIC ICに応用され、 に応用され、 50社以上の会社でライセン 50 社以上の会社でライセン スされています。 しかしながら、今日の多くのアプリケーションにお いては、 より高速のバス・スピードおよびより低い動作電圧が要求 されています。I 2C バス仕様の改定を行ない、 これらの要求を満足 させました。 このバージョンでは次のような変更を行いました。 バージョン1.0 バージョン 1.0 ‑ 1992年 1992 年 1992年 I2Cバス仕様のバージョンには次のような改定が行なわれ 1992年 ています。 ・ ソフトウエアによるスレーブ・アドレスのプログラミングが省略され ました。 この機能の実現はやや複雑であり、 これまでに使用され たことがありません。 ・ ハイ・スピード・モード (Hsモー (Hs モード) が追加されました。 これにより、 ビット・レートが3.4Mbit/s が3.4Mbit/sまで増加しま まで増加しました。0〜3.4Mbit/s 3.4Mbit/sの の ビット・レートで、一つのI 一つのI2Cバス・システム上で、 ファースト・モード および標準モードと組み合わせ、Hs Hsモー モード・デバイスを使用する ことができるようになりました。 ・ 低速モード が省略されました。実際には、 このモードはトータル I 2 C 仕様の一部であり、明確に定義される必要はありません。 ・ ファースト・モード が追加されました。 これにより、 ビット・レートが 4倍の400kbit/s 倍の400kbit/sまで増加しま まで増加しました。高速デバイスは低速デバイ スとダウン・コンパチです、つまり、 これを0〜100kbit/s これを0 100kbit/sの のI2C バ ス・システムに使用することもできます。 ・ 2V 2V以下の電源電圧において必要なノ 以下の電源電圧において必要なノイズ・マージン (雑音余裕 度) を得るために、デバイスの出力レベルを低くし、 さらに、 ヒステ リシス特性を付加しました。 ・ 10 10ビッ ビット・アドレス指定が追加されました。 これにより、1024 1024のス のス レーブ・アドレスが付加されました。 ・ ファースト・モード・デバイスの出力段に要求される0.6V デバイスの出力段に要求される0.6V(6mA 6mAに に て)の条件が省略されました。 ・ EMC (電磁干渉) (電磁干渉) 性能を改善するために、 ファースト・モード・デバ イスに対するスロープ・コントロールと入力フィルタが定義されま した。 ・ 新しいデバイスに対する固定入力レベルはバス電圧に依存す るレベルに置き換わりました。 注: 100kbit/s I 2Cバス・システムおよび バス・システムおよび100kbit/s 100kbit/sデバイ デバイ スのいずれの変更もありません。 ・ 双方向性レベル・シフターのアプリケーション情報が付加されま した。 1.3 フィリップのII 2 C バス・デバイスの購入 フィリップの フィリップス製I ップス製I2Cバス・コンポーネントを購入した場合、 フィリップスの持つI ップスの持つI2C特許権の下、I2Cバス・システム内 でこれらのコンポーネントを仕様するためのライセンスが与えられます。ただしそのバス・システムが、 フィリップス の規定するII 2C 仕様に準拠している場合に限ります。 の規定する 1 Philips Semiconductors I2Cバス仕様書 2 2.1 I 2 C バスの設計および装置製造上の利点 システム設計を行なう上での利点 I2Cバス対応 バス対応IC ICを利用することで、 を利用することで、機能ブロック図から直接プロトタ イプへシステム設計をすぐに発展させることができます。 さらに、外 部インターフェースを必要とせずにこれらのIC ンターフェースを必要とせずにこれらのICを直接 を直接II2Cバスに接 続、 または、バスから取り除くことによって、プロトタイプ・システムの 設計変更や改善を簡単に行なうことができます。特に、 システム設 計者にとって有利なII2Cバス対応 計者にとって有利な バス対応IC ICの特徴のいくつかを以下に紹 の特徴のいくつかを以下に紹 介します。 家庭用機器、通信機器および産業用機器では、一見無関係に見 える設計の中に多くの類似点がしばしば見受けられます。例えば、 ほとんどの場合、 どのようなシステムにも下記の回路が含まれてい ます。 ・ 情報制御処理回路。通常はシングルチップのマイクロコントロー ラ。 ・ LCDドライバ、 リモートI/O トI/Oポー ポート、RAM RAM、 、 EEPROM EEPROMあるいはデータ あるいはデータ・コ ンバータのような汎用回路。 ・ ブロック図上の機能ブロックが実際の ブロック図上の機能ブロックが実際のIC ICと対応しているため、 と対応しているため、 ブ ロック図から最終的な配線図への移行を短時間で行なうことが 可能。 ・ ラジオやビデオ・システム用のディジタル・チューニング回路や 信号処理回路または、 トーン・ダイヤル機能を持つ電話機用の DTMF生成回路のような用途別専用回路。 DTMF 生成回路のような用途別専用回路。 ・ I2Cバス接続用のインターフェースがすでにチップ上に組み込ま れているため、バス・インターフェースの設計が不要。 ・ アドレス指定およびデータ転送手順が提供されているため、 ソフ トウエアによるシステムの定義が可能。 フィリップスは、 これらの類似点をシステム設計や装置製造に対し て有利に活かすことができるように、 また、ハードウエアの効率を最 大限に引き上げ、回路の簡素化を図るために、IC 間相互のコント ロールを効率よく行なうことを目的とした、2 本のワイヤーからなる 簡単な構造の双方向性バスを開発しました。 このバスは、IC IC間相 間相 互バス (I2Cバス) (I と呼ばれています。現在、 フィリップスのIC ップスのIC製品群 製品群 は、150 150種類以上の 種類以上のCMOS CMOSおよびバイ およびバイポーラのI ポーラのI2Cバス対応デバイス を用意しており、上記3 上記3種類の用途の全てに使用されています。全 てのII2Cバス対応デバイスはオンチップ・インターフェースを持って ての おり、 これによってI 2C バスを介して直接他のデバイスとの相互通 これによってI 信を行なうことができます。 このような設計思想のおかげで、 これま でディジタル・コントロール回路を設計する上で生じていた多くの 問題が解決されるようになりました。 ・ 多くの場合、同じタイプのIC 同じタイプのICを多く を多くの異なった用途に利用するこ とが可能。 ・ 設計者が、多用されているI 多用されているI 2C バス対応 バス対応IC ICに代表される機能ブ に代表される機能ブ ロックにすぐに馴染むことができるため、設計時間の短縮が可 能。 ・ バス上の他の回路に一切影響を与えることなく、 システム内での ICの追加または除去が可能。 IC の追加または除去が可能。 ・ 故障診断およびデバックを容易に行なうことができるため、不良 個所の究明が簡単。 ・ よく使用するプログラム・モジュールを集めたライブラリを作って おくことで、 ソフトウエア開発に必要な時間を短縮することが可 能。 I 2C バスの特徴をいくつか以下に挙げます。 ・ シリアル・データ・ライン (SDA) (SDA ) とシリアル・クロック・ライン (SCL) (SCL ) の 2 本のバス・ラインのみで構成。 さらに、 I2Cバス対応デバイス・シリーズの一つであるCMOS ーズの一つであるCMOS ICは、 ICは、上 記のような特徴に加えて下記のように、特に、ポータブル機器や バッテリ・バックアップのシステムを設計する上で有利な特徴を備 えています。 ・ バスに接続されている各デバイスはそれぞれ固有のアドレスを 持ち、 それをもと にソフトウエアによる各デバイスのアドレス指 定が可能。 また、デバイス間には、マスターとスレーブという簡単 な関係が常に成立。マスターはマスター・ トランスミッタまたはマス ター・レシーバとして機能。 ・ 消費電力が非常に低い。 ・ 万一、複数のマスターが同時にデータ転送を開始しようとした場 合でも、データ破壊を防ぐために衝突検出機能およびアービト レーションを備えた本格的なマルチ・マスター・バス。 ・ 対ノイズ性が高い。 ・ 電源電圧範囲が広い。 ・ 動作温度範囲が広い。 ・ 8 ビットの双方向シリアル・データ転送を標準モードでは最高 100kbit/s、 100kbit/s 、 ファースト・モードでは400kbit/s ドでは400kbit/s、 、ハイスピード (Hs) (Hs ) モードでは3.4Mbit/s ドでは3.4Mbit/sで行なうことが可能。 で行なうことが可能。 ・ オンチップ・フィルタによりバス上のスパイクを防ぎ、データの信 頼性を維持。 ・ バスの静電容量が バスの静電容量が400pF 400pF以下であれば、 以下であれば、1 つのバス上に つのバス上にIC ICをい をい くつでも接続することが可能。 図1にI 2C バスの バスの22 つの応用例を示します。 2 Philips Semiconductors I2Cバス仕様書 図1 I 2C バスを応用した バスを応用した22 つの製品例 (a ) 高性能高集積テレビ (b ) DECT DECTコードレス電話基地局 コードレス電話基地局 3 Philips Semiconductors I2Cバス仕様書 2.2 ・ このようなシステムは一般に制御機能を実行するためのもので あって、高速データの転送は不要です。 装置製造を行なう上での利点 I2Cバス対応 バス対応IC ICは、 は、 システム設計を行なう上で便利なだけではなく、 装置設計においても以下のような理由により、多くの便宜を提供し ています。 ・ 全体としての効率は、使用されるデバイスとそれらのデバイスを 相互に結合するバス構造の性質によって決定されます。 ・ 2本のワイヤーによって構成されるシリアルI アルI2Cバスは、構造が簡 単なため内部接続を最小限に抑えることが可能。従って、 ピン数 や基盤上の配線数も少なくてすみ、 その結果、低コストの基盤作 成が可能。 これらの基準を満足するシステムを構築するには、 シリアル・バス 構造が必要です。 シリアル・バスのスループットはパラレル・バスよ り劣っていますが、 ワイヤーの接続数や接続ピン数が少なくてすみ ます。 しかし、バスは単にデバイスを接続する配線ではなく、 システ ム内で ム内 での通信を行 の通信を行な なうためのフ ためのフォー ォーマ マットと手順を全て含ん と手順を全て含んでいま す。 ・ I2Cバス・プロトコル (通信手順) が組み込まれているため、 アドレ ス・デコーダやその他の バス接続用論理回路 が不要。 ・ I2Cバスはマルチ・マスター・バスであるため、 アセンブリ・ライン・ コンピュータとの外部接続を介してエンド・ユーザー装置のテス トや調整を簡単に実施することが可能。 シリアル・バスで互いに通信するデバイスは、情報に矛盾が生じた りデータが失われることがないように、一定の通信手段(プロトコ ル) を持たなければなりません。高速デバイスと低速デバイスが相 互に通信する機能も必要になります。接続されるシステムに依存す るようなシステムの構成は避けなければなりません。そうでなけれ ばシステムを変更したり改善することが不可能になるからです。 ま た、プロトコルは、いつ、 どのデバイスによってバスがコントロールさ れるかを決定できるものでなければなりません。 さらに、 クロック速 度が異なるデバイスがバスに接続されている場合には、バスのク ロック・ソースの定義が必要になります。 このI2Cバス仕様では、 このI これ らの全ての点に関して説明しています。 ・ SO(スモール (スモール・アウトライン) 、VSO (ベリイ・スモール・アウトライン) (ベ お よびDIL よび DIL(デュアル (デュアル・イン・ライン) のデバイス内でI ス内でI 2C バス対応 バス対応IC IC を利用することができるため、 より一層の小型化が可能。 以上は、I 2C バスの優れた特徴の一部にすぎません。 さらに、I 2C バ ス対応IC ス対応 ICを利用することにより、 を利用することにより、装置設計の自由な変更や最新の 設計基準に合わせるためのシステム・グレードアップを簡単に行な うことができるので、 より柔軟なシステム設計が可能になります。 こ のことにより、 1つの基本的なモデルを元にしてシリーズの全モデ ルの開発を行なうことができます。従って、新型モデルへのアップ グレードや機能拡張 (メモリー拡張、 リモート・コントロールなど) は、 必要なIC 必要な ICをバスに追加するだけで簡単に行なう をバスに追加するだけで簡単に行なうことができます。 よ り大容量のメモリー (ROM) (ROM ) が必要になった場合には、 フィリップスの 幅広いデバイス群から必要サイズのROM ス群から必要サイズのROMを搭載したマイ を搭載したマイクロコント ローラを選択するだけですみます。新型のIC 新型のICは古いものに比べて は古いものに比べて 機能的に優れているため、単に、旧型のIC 旧型のICをバスから取り除いて、 をバスから取り除いて、 新型IC 新型 ICと交換するだけで、 と交換するだけで、装置に新しい機能を加えたり、装置の 性能向上を図ることが簡単に行なえます。 3 4 I 2 Cバスの概念 I2Cバスは全ての バスは全てのIC ICフ ファブ・プロセス (NMOS、 (NMOS 、CMOS CMOS、 、バイポーラ) をサ ポートしています。2 本のワイヤー (シリアル・データSDA データSDAと とシリアル・ クロックSCL クSCL) ) によって、バスに接続されているデバイス間での情報 伝達が行なわれます。各デバイスは、マイクロコントーラ、LCD LCDドライ ドライ バ、 メモリーあるいはキーボード・インターフェース如何に拘わらず、 固有のアドレスによって認識され、機器の機能に応じてトランスミッ タまたはレシーバとして動作できるようになっています。 あきらかに LCDドライバはレシーバとしてしか動作しませんがメモリーはデータ を受信することや送信することができます。 これらのデバイスはトラ ンスミッタまたはレシーバとして考えることができるだけではなく、 データ転送を行なうときにはマスターまたはスレーブとして考えるこ ともできます (表1参照) 。 マスターとは、バス上でデータ転送を開始 するデバイスであり、転送を可能にするクロック信号を生成します。 そのときマスターによってアドレス指定されるほとんどのデバイスも スレーブとなります。 I 2 Cバス仕様の概略 シングル・チップ・マイクロコントローラを必要とするような8 ローラを必要とするような8ビット・ア プリケーションにおいて、次のような一定の設計基準を確立するこ とができます。 ・ 一般的に完全なシステムは、少なくとも一つのマイクロコントロー ラとメモリーや入出力エクスパンダなどの他の周辺デバイスから 構成されています。 ・ システムに各デバイスを接続するためのコストはなるべく低く抑 えることが必要です。 4 Philips Semiconductors I2Cバス仕様書 表1 ・ マイクロコントローラA ローラA(マスター・ トランスミッタ) がマイクロコント ローラBB(スレーブ・ ローラ (スレーブ・レシーバ) にデータを送信。 I2Cバスで使用される用語の定義 用 語 説 明 ・ マイクロコントローラA ローラA によってデータ転送が終了。 トランスミッタ データをバスに送信するデバイス レシーバ データをバスから受信するデバイス 2 )マイクロコントローラA ローラAがマイクロコントローラB ローラBから情報を受信す る場合。 マスター データ転送を開始し、クロック信号を生成 し、データ転送を終了するデバイス ・ マイクロコントローラA ローラA(マスター) (マスター) がマイクロコントローラB ローラB(スレー (スレー ブ) のアドレスを指定。 スレーブ マスターからアドレス指定されるデバイス マルチ・ マスター メッセージを失うことなく、複数のマス ターが同時にバスをコントロールすること ・ マイクロコントローラA ローラ(マス ( A マスター・レシーバ) がマイクロコントローラ B(ス (スレーブ・ トランスミッタ) からデータを受信。 ・ マイクロコントローラA ローラA によってデータ転送が終了。 ア ー ビ ト レ ー 複数のマスターが同時にバスをコントロー ション ルしようとするときに、1つのマスターだ けがバスをコントロールできるようにし、 さらに、メッセージが失われたり内容が変 更されないようにする手順 同期化 後者の場合でも、データ転送のタイミングをとりデータ転送を終了 するのは、マスター (マイクロコントローラA ローラA ) なります。 I2Cバスに複数のマイクロコントローラを接続できるということは、同 時に複数のマスターがデータ転送を開始しようとする可能性があ ることになります。 そこで、 このような現象が発生するのを防ぐため に、通信調整手順 (アービトレーション) が開発されました。 この通信 手順では、I 2 C バスと全ての バスと全てのII 2 C バス・インターフェースの間のワイ ヤードAND ドAND接続が利用されています。 接続が利用されています。 複数デバイスのクロック信号の同期をとる ための手順 I2Cバスはマルチ・マスター・バスです。マルチ・マスター・バスとは、 バスをコントロールする複数のデバイスを接続することができるバ スのことです。一般にマスターとなるのはマイクロコントーラですの で、I2Cバスに接続されている2個のマイクロコントローラ間でデータ 転送を行なう場合について考えてみます(図2参照) 。 複数のマスターがバスに情報を送信しようとした場合、他のマス ターが 0 を生成したときに最初に 1 を生成したマスターは通信 を行なうことができなくなります。 アービトレーション中のクロック信 号は、SCL SCLライ ラインとAND ンとAND接続されているマスターによって生成される 接続されているマスターによって生成される クロックを組み合わせて同期されたものが使用されます (アービト レーションの詳細については8 ンの詳細については 8 節を参照してください) 。 この図では、I2Cバスのマスターとスレーブおよびレシーバとトランス ミッタの間の関係が示されています。ただし、 これらの関係は一時 的なものであり、その時点でのデータ転送の方向によってのみ決 定されます。データの転送は次の順序で行なわれます。 I2Cバスでは、常にマスターデバイスによってクロック信号が生成さ れます。従って、バス上でデータの送受信が行なわれる場合には、 マスターがそれぞれ独自のクロックを生成することになります。マ スターが生成するバス・クロック信号は、周期を延ばすためにクロッ ク・ラインを L に保持する低速のスレーブ・デバイス、 または、 アー ビトレーション中に他のマスターによって変更されることがあるのみ です。 1)マイクロコントローラA ローラAがマイクロコントローラB ローラBに情報を送信する 場合。 ・ マイクロコントローラA ローラA(マスター) (マスター) がマイクロコントローラB ローラB(スレー (スレー ブ) のアドレスを指定。 図2 2つのマイクロコントローラを使ったI トローラを使ったI 2C バス構成例 5 Philips Semiconductors I2Cバス仕様書 5 一般的な特徴 6 図3 ビット転送 I2Cバスには異なる技術を利用したデバイス (CMOS、 (CMOS 、NMOS NMOS、 、バイポー ラ) を接続することができますので、論理値の 0( L ) と 1( H ) レベルは一定ではなく、VDDのレベルによって決定されます (電気的 な仕様については15 な仕様については 15節を参照) 節を参照) 。 転送される各データ・ビットごとに 1つのクロック・パルスが生成されます。 SDAとSCL SDAと SCLはどちらも双方向ライ はどちらも双方向ラインであり、並列抵抗を介して正の電 源電圧に接続されています (図3参照) (図3 。バスが開放されているとき には、 どちらのラインも H の状態になります。バスに接続されてい るデバイスの出力段には、AND AND接続機能を実行するためにオープ 接続機能を実行するためにオープ ン・ドレインまたはオープン・コレクタが必要になります。I 2C バスで は、標準モード時に最大100kbit/s ド時に最大100kbit/s、 、 ファースト・モード時に最大 400kbit/s、 400kbit/s 、高速モード時には3.4Mbit/s ド時には3.4Mbit/sの高速でデータを転送す の高速でデータを転送す ることができます。バスに接続されるインターフェースの数は、バス の最大静電容量 (400pF) (400pF ) によってのみ制限されることになります。 高速モードのマスター・デバイスの情報に関しては13 スの情報に関しては13節を参照して 節を参照して ください。 6.1 データの有効性 クロックが H の間には の間にはSDA SDAライ ラインの状態は一定でなければなりま せん。データ・ラインが H と L の間で状態を変更できるのは、 SDL ラインのクロック信号が L のときに限られます (図4参照) 。 標準およびファースト・モード・デバイスのI デバイスのI 2C バスへの接続 6 Philips Semiconductors I2Cバス仕様書 図4 I 2C バス上でのビット転送 『STOP STOP』 』 条件の代わりに反復 『START』 『START 』 条件 (Sr) (Sr ) が生成した場合に は、バスはビジー状態を保持します。 この点において、 『START START』 』 条件 (S ) と反復『START 『START』 』 条件 (Sr) (Sr ) は機能的には同じものです (図6参 照) 。 従って、 このドキュメントの以下の部分において 『START』 『START 』 条件 (S) と反復 『START』 『START 』 条件 (Sr) (Sr ) の両方を表すために、一般的な記号 として記号S して記号Sを用いています。ただし、特にSr 特にSrを使用する場合はこ を使用する場合はこ の限りではありません。 6.2 『 START START』 』条件と 『STOP』 『STOP 』条件 I2Cバスの通信手順では 『START』 『START 』 条件および 『STOP』 『STOP 』 条件という固 有の状況が発生します (図5参照) 。 SCLが SCL が H のときに H から からSDA SDAライ ラインが L に変化すると、 このような 状況が発生します。 この場合は 『START』 『START 』 条件と呼ばれます。 SCLが SCL が H のときに きにSDA SDAライ ラインが ンが L から H に変化 に変化する すると、同じような 状況が発生します。 状況が発生し この場合は 『STOP』 『STOP 』 条件と呼ばれます 条件と呼ばれま す。 バスに接続さ バスに接続 されている いるデ デバイスが必要 スが必要な なインター ターフ フェースを備 を備え えて いれば、 『START START』 』 条件と 『STOP』 『STOP 』 条件の検出を容易に行なうことが できます。 しかし、 このようなインターフェースを備えていないデバ イスでは、状態の変化を検出するために、各クロック・パルスごとに 少なくとも2回ずつ 回ずつSDA SDAラ ラインをサンプリングしなければなりません。 『START START』 』 条件と 『STOP』 『STOP 』 条件は常にマスターによって生成されます。 『S T A R T 』 条件が発生した後には、バスがビジー状態になります。 『STOP STOP』 』 条件が生成されると、 その後しばらく、バスは再びフリー状態 になります。 このようにバスが開放されているフリー状態について は15 15節で詳しく説明します。 節で詳しく説明します。 図5 『 『START START』 』 条件と 『STOP』 『STOP 』 条件 7 Philips Semiconductors I2Cバス仕様書 7 7.1 通常、 アドレス指定されたレシーバは、 メッセージがCBUSア メッセージがCBUS アドレスか ら始まる場合を除いて、各バイ トが終了するたびにアクノリッジを生 成しなければなりません。 (10.1.3 10.1.3参照) 参照) 。 データ転送 バイトのフォーマット SDAライ SDA ラインに出力される各バイ トの長さは必ず8 の長さは必ず8ビットになります。 1回 の転送で伝送できるバイ ト数には制限がなく、何バイ トでも送ること ができます。各バイ トの後にはアクノリッジ・ビットが必要になります。 データは最上位ビット (MSB ) (MSB から順に送信されます(図6 (図6 参照) 。 レ シーバが他の機能、例えば、内部割込みのサービスなどの実行を 終了するまで、データを構成する全バイ トを受信することができな い場合、 レシーバ側でクロック・ラインSCL ンSCLを を L に保持し、 トランス ミッタを待ちの状態にすることができます。 レシーバがデータ・バイ トを受信できる状態になり、 クロック・ラインSCL ンSCLを開放する を開放すると、データ 転送が再開されます。 スレーブ・レシーバがアドレス確認を行なうことができない場合 (例 えば、 リアルタイム機能を実行しているために受信できないような 場合) 、 そのスレーブはデータ・ラインを H の状態に保持しなけれ ばなりません。 この時、マスターは 『STOP』 『STOP 』 条件を生成してデータ転 送を中止したり、新しい転送を始めるために反復 『START』 『START 』 条件を生 成することができます。 スレーブ・レシーバがアドレスを確認した場合でも、転送途中で データ・バイ トを受信できなくなった時には、マスターによって転送 が途中で打ち切られることが必要になります。 このようにスレーブ がデータを受信することができない場合、 スレーブは次に送られて くる最初のバイ トに対してアクノリッジを生成しないことによってそ のことを示します。スレーブはデータ・ラインを H の状態に保ち、マ スターは 『STOP』 『STOP 』 または反復 『START』 『START 』 条件を生成できるようにする必 要があります。 場合によっては、 I2Cバスと異なるフォーマットを使用することもでき ます (例えば、CBUS CBUSと互換性のあるデバイ と互換性のあるデバイスの場合など)。 バイ ト伝 送中でも、 『STOP STOP』 』 条件を生成すれば、 このようなアドレスから始ま るメッセージを終了することができます。 この場合にはアクノリッジ は生成されません (10.1.3参照) (10.1.3 参照) 。 7.2 マスターがレシーバとなる場合、スレーブから送信された最後の データ・バイトに対してアクノリッジをしないことによって、マスター はスレーブ・ トランスミッタにデータの終わりを知らせます。 このとき、 スレーブ・ トランスミッタはデータ・ラインを開放し、マスターが 『STOP』 『STOP 』 停止または反復 『START』 『START 』 条件を生成できるようにする必要がありま す。 アクノリッジ データ転送を行なう場合、必ずアクノリッジが必要になります。 アク ノリッジ用のクロック・パルスはマスターによって生成されます。 ア クノリッジ・クロック・パルスが生成されると、 トランスミッタはSDA タはSDAライ ライ ンを開放します( H の状態になります) 。 レシーバは、 アクノリッジ・クロック・パルスが H 状態のときに、 SDA ラインが L 状態で安定するように、 アクノリッジ・クロック・パルスの 出力にあわせてSS D Aライ 出力にあわせて Aラインを L にしなければなりません (図7参 照) 。 もちろん、セットアップ時間とホールド時間 ( L の状態を保持 する期間) も考慮する必要があります (これらについては15節で解 (これらについては15 節で解 説します) 。 START or repeated START condition STOP or repeated START condition 図6 I 2C バス上のデータ転送 8 Philips Semiconductors I2Cバス仕様書 DATA OUTPUT BY TRANSMITTER DATA OUTPUT BY RECEIVER SCL FROM MASTER 図7 8 8.1 I 2C バス上のアクノリッジ アービトレーションとクロック生成 全てのデバイスが L 期間を終了すると、 クロック・ラインが開放さ れて、H 状態になります。 これでデバイスのクロックとSCL スのクロックとSCLライ ラインが 同じ状態になり、 どちらも H 期間のカウントを開始します。SCL SCLライ ライ ンは、H 期間を最初に終了したデバイスによって再び L 状態に されます。 同期 どのマスターも、I 2C バスでメッセージを転送するためのクロックを SCLライ SCL ライン上で独自に生成します。データはクロックが H の間だけ 有効となります。従って、 アービトレーションが1ビットごとに実行され る場合には、 クロックを統一するためのなんらかの規定が必要にな ります。 このように、L 期間の最も長いデバイスによって L 期間が、H 期間の最も短いデバイスによって H 期間がそれぞれ決定され、 SCLライ SCL ラインの同期がとられます。 クロック信号の同期は、SCL SCLライ ラインとデバイスをAND ンとデバイスをAND接続することに 接続することに よって実行されます。 これによってSCLライ これによってSCL ラインが H から L の状態 に変化すると、関連するデバイスは L 期間のカウントを開始しま す。 あるデバイスのクロックが L になると、 そのデバイスは自分の クロックが H の状態になるまで の状態になるまでSCL SCLライ ラインを L に保持します (図8 参照) 。 しかし、 このデバイスのクロックが L から H に変化しても 他のデバイスのクロックがまだ L 期間内にある場合、SCL SCLライ ラインの 状態は変化しません。従って、SCL SCLライ ラインの L 期間は、L 期間の 最も長いデバイスによって決定されることになります。 この間、L 期間の短いデバイスは、H のまま待ち状態になります。 図8 アービトレーション中のクロックの同期化 9 Philips Semiconductors I2Cバス仕様書 8.2 図9は2つのマスターの間での通信許可 (アービトレーション) 手順 を示したものです。 もちろん、 より多くのマスター間 (最大数はバス に接続されているマスターの数によって決定)で通信許可手順 が行なわれることもあります。DATA1を生成するマスターの内部デー タ・レベルとSDAラインとの実レベルが異なっているとき、 このマス ターのデータ出力はオフになります。 その後、 このマスターの H 出 力レベルがバスに接続されます。 これは通信許可を得たマスター によって開始されたデータ転送には、いかなる影響も与えません。 アービトレーション マスターは、バスが開放状態の時にのみデータ転送を開始するこ とができます。 『START』 条件の最小持続時間 (tHD;STA) 内に複数のマ スターが『S T A R T 』条件を生成する場合があります。 この場合、 『START』 条件は一定の許可手順に従ってバスに送信されます。 SCLラインが H レベルにある時、SDAライン上に H レベルを送信し ているマスターは、他のマスターがSDAライン上に L レベルを送信 していれば自分のレベルがバスのレベルと一致しないために、 データ出力段をオフにします。 このようにして、SDAライン上での アービトレーションが行われます。 I2Cバスのコントロールは、同時に通信を開始しようとするマスター の送信するアドレスとデータ情報のみに基づいて決定されるため、 バス上では優先マスター・デバイスや優先順位などは存在しませ ん。 アービトレーションは、多くのビットについて行なわれる場合があり ます。 この手順で最初に行なわれるのはアドレス・ビットの比較で す (アドレス指定については10節および14節で解説します) 。全て のマスターが同じデバイスをアドレス指定しようとしている場合に は、 アービトレーションが行なわれてデータの比較が行われます。 こ こ の時I2Cバス上のアドレス情報とデータ情報が使用されるので、 の処理によって情報が失われることはありません。 通信を許可されなかったマスターは、 そらが決定されたバイ トの終 わりまでクロック・パルスを生成することができます。 Hsモード・マスターはユニークな8ビット・マスター・コードを持ってい ますので、常に第1バイ ト中のアービトレーションを終了します (13節 参照) 。 シリアル転送の際、反復 『START』 条件または 『STOP』 条件が 『START』 条件がI2Cバスに送られた時点でアービトレーション手順がまだ実 行中である場合には、特に注意が必要です。 もし、 このような状況 が発生する可能性がある場合は、 これに関係するマスターは、 この 反復 『START』 条件または 『STOP』 条件をフォーマット・フレーム内の 同一の場所で送ることが必要になります。換言すれば、以下の2者 間でではプロトコルが機能しないことになります。 ・ 反復 『START』 条件とデータ・ビット ・『STOP』 条件とデータ・ビット ・ 反復 『START』 条件と 『STOP』 条件 スレーブは、 アービトレーションの手順とは無関係です。 アドレス指定の段階で、 あるマスター・デバイスの通信不許可が決 定し、 かつ、 そのマスターがスレーブ機能を持っている場合、 そのマ スター・デバイスは通信を許可されたマスターによってアドレス指定 の対象になっていることが考えられます。従って、通信不許可と なったこのデバイスはすぐにスレーブ・レシーバ・モードに切り替わ る必要があります。 図9 2つのマスターのアービトレーション手順 10 Philips Semiconductors I2Cバス仕様書 8.3 クロック同期メカニズムを利用したハンドシェーク クロック同期メカニズムは、 アービトレーション手順内で使用するだ けではなく、 レシーバをバイト・レベルまたはビット・レベルで高速 データ転送に対応できるようにするためにも利用されます。 デバイスはバイト・レベルで高速レートのデータのバイ トを受信しま すが、受信したデータを貯蔵したり、 あるいは、送信されるべき他の バイ トを用意するのにもっと多くの時間を必要とします。 1バイ トのア クノリッジを受信した後にSCL ジを受信した後にSCLライ ラインの L レベルをフォールドしま す。マスターは、一種のハンドシェーク手順で次ぎのバイ トの送信を 行なうためにこのスレーブが準備されるまで、待ち受け状態になり ます (図6 参照) (図6 。 9 7ビット・アドレスのフォーマット データ転送では、図10 図10に示されているフォーマッ に示されているフォーマットが使用されます。 『START START』 』 条件 (S) (S の後、スレーブのアドレスが送信されます。 このア ドレスは7ビットで構成され、 8ビット目にはデータ方向ビット (R/W) (R/W ) が 続きます。 このデータ方向ビットが 0 であれば送信 (書き込み) 、 1 であればデータ要求 (読み込み) を示します。データ転送は、必 ずマスターが生成する 『STOP』 『STOP 』 条件 (P ) (P によって終了します。 しか し、マスターがまだバス上での通信を続けたい場合には、先に 『STOP STOP』 』 条件を生成することなく、反復 『START』 『START 』 条件 (Sr) (Sr ) を生成して 別のスレーブのアドレスを指定することができます。 このようなデー タ転送において、いろいろな組み合わせの読み込み、および書き 込みフォーマットが可能になります。 ビット・レベルではI レベルではI2Cインターフェース・ハードウエアを持たない、 ま たは、限られたハードウエアしか持たないマイクロコントローラなど のデバイスは、各クロックの L 期間を延長することにより、バス・ク ロックのスピードを遅くすることができます。 このようにして、マス ターのスピードを、 このデバイス内の内部動作スピードに適合させ ることが可能になります。 Hsモードにおいて、 Hsモー このハンドシェークの機能はバイト・レベルでの み使用されます (13節参照) (13 節参照) 。 図10 完全なデータ転送 11 Philips Semiconductors I2Cバス仕様書 以下のようなデータ転送フォーマットが可能です。 注: ・ マスター・ トランスミッタからスレーブ・レシーバへのデータ送信。 転送方向は変わりません (図11参照) (図11 参照) 。 1. 例えば複合フォーマットは、 シリアル・メモリーのコントロールなど に利用されます。最初のデータ・バイト中に、内部メモリー・ロ ケーションが書き込まなければなりません。 『S T A R T 』 条件とス レーブ・アドレスが再び送信されると、データの送信が可能にな ります。 ・ マスターが1 ーが1バイ ト目の直後から、 スレーブのデータを読み込む場 合 (図12参照) (図12 参照) 。最初のアクノリッジ時に、マスター・ トランスミッタ はマスター・レシーバに、スレーブ・レシーバはスレーブ・ トランス ミッタに変化します。 この場合にもアクノリッジはスレーブが生成 し、 『STOP STOP』 』 条件はマスターが生成するという状況は変わりませ ん。 この 『停止』 条件はマスターによって生成されており、 この状 態はすでに非アクノリッジ (A ) (A を送出しています。 2. 以前にアクセスされたメモリー・ロケーションの自動加算または 自動減算についての決定は、全てデバイスの設計者が行ない ます。 3. 上記手順においてA 上記手順においてAまたは またはAAによって示されているように、各バ イ トの後にアクノリッジが続きます。 ・ 複合フォーマット (図13参照) (図13 参照) 。 一回の転送中に方向が変化する ときには、 『START START』 』 条件とスレーブ・アドレスの双方が送信されま す。ただし、R/W R/Wビッ ビットの方向は逆になります。マスター・レシーバ が反復 『START』 『START 』 条件を送信していな場合には、 このレシーバ がすでに非アクノリッジ (A ) (A を送出していたことになります。 4. I 2 C バス対応のデバイスは、適切なフォーマットに従って 『START START』 』 条件がセットされた場合においても、 『START START』 』 条件ま たは反復『S 『S T A R T 』条件を受信した時点でバス・ロジックをリ セットし、 この 『START』 『START 』 条件が適切なフォーマットに従った場所 に無い場合においてすら、スレーブ・アドレスの送信を予測でき るようにしておかなければなりません。 5.『 .『S T A R T』 T』 条件のすぐ後に停止条件(無効条件) が続くのは不 法なフォーマットです。 図11 マスター・ トランスミッタによる7ビット・アドレスを持つスレーブ・レシーバのアドレス。 転送方向は無変化。 図12 第一バイトの後、マスターがすぐにスレーブからのデータを読む場合。 12 Philips Semiconductors I2Cバス仕様書 * not shaded because transfer direction of data and acknowledge bits depends on R/W bits. 図13 10 複合フォーマット 7ビット・アドレス指定 通常I 2C バスのアドレス指定手順では、マスターがどのスレーブを 通常I 選択するかが 『START』 『START 』 条件に続く最初のバイ トで判断できるように 考えられています。ただし、 『ゼネラル・コール』 アドレスは例外であ り、全てのデバイスのアドレスを指定することができます。 このアド レスが使用される場合には、理論的には全てのデバイスがアクノ リッジを行わなければなりません。 しかし、 このアドレスを無視する ようにデバイスを設定することも可能です。ゼネラル・コール・アドレ スの22バイ スの ト目に 目によっ よって て、実行す 実行すべき動作が指定されます。ゼネラル・ コール・アドレスについては スについては10.1.1 10.1.1でさ でさらに詳しく述べられていま す。 また、10 10ビッ ビット・アドレス指定については14 レス指定については14節を参照してくださ 節を参照してくださ い。 LSB MSB R/W slave address 図14 10.1 第一バイト内の各ビットの定義 開始手順後の第一バイト I2C バスによって バスによってII 2Cアドレスの割り当て調整が行われます。 より詳 細な情報については、 このドキュメントの裏カバーに記載したフィ リップスの代理店からお求めになれます。それぞれ、8 種類の組み 合わせを持つ22組のアドレス 合わせを持つ (0000xxxと (0000xxx と1111xxx 1111xxx) ) は、表2 表2の目的の ために予約されています。スレーブ・アドレスの組み合わせ 11110xxは 11110xx は10 10ビッ ビット・アドレス指定用に予約されているために使用 できません (14節参照) (14 節参照) 。 このバイ トの最初の7ビットは、スレーブ・アドレスを示します (図14参 (図14 参 照) 。8 番目のビットはLSB はLSB(最下位ビッ (最下位ビット) と呼ばれ、 メッセージの方 向を決定するためのビットです。第一バイ トの最下位ビットが 0 であるということは、マスターから指定されたスレーブに向かって情 報の書き込みが行なわれることを示しています。 このビットが 1 で あるということは、マスターがスレーブからの情報を読み込むことを 示しています。 アドレスが送信されると、 システム内の各デバイスは 『START』 『START 』 条件 の後の最初 の7ビットをそれぞれ各自のアドレスと比較します。 ア ドレスが一致した場合、 そのデバイスはスレーブ・レシーバまたはス レーブ・ トランスミッタ (R/Wビッ (R/W ビットに応じて決定) としてマスターからア ドレス指定されたと判断します。 スレーブ・アドレスは、変更不能な固定部分とプログラム可能な部 分から構成されている場合があります。1つのシステム内には同一 のデバイスが複数個使用されることが考えられるため、 このような 場合にはスレーブ・アドレスのプログラム可能な部分を変更するこ とにより、可能な限り多くのデバイスを1 可能な限り多くのデバイスを1 つの つのII 2C バスに接続できる ようになります。 デバイスのアドレス・ビット中のプログラム可能なビットの数は、利用 可能なピンの数によって決定します。例えば、 あるデバイスのアドレ ス・ビットの中で4 の中で4ビットが固定部分であり、3ビットがプログラム可能 である場合には、 1つのバスに最大8 つのバスに最大8つの同種のデバイスを接続す ることが可能になります。 13 Philips Semiconductors I2Cバス仕様書 表2 第一バイトの定義 スレーブ アドレス R/W ビット 0000 000 0 ゼネラル・コール・アドレス 0000 000 1 スタート・バイト(1 ) 0000 001 X C B U S アドレス( 2 ) 0000 010 X 異なるバス・フォーマット用に予約されている 説 LSB 明 0 0 0 0 0 0 0 first byte (general call address) 図15 0 A X X X X X X X B A second byte ゼネラル・コール・アドレスのフォーマット アドレス (3 ) 0000 011 X 将来の利用のために予約 0000 1XX X Hsモー Hs モード・マスター・コード 1111 1XX X 将来の利用のために予約 1111 0XX X 10ビッ 10 ビット・スレーブ・アドレス指定 注 1.『START START』 』 バイ トの受信時には、 どのデバイスもアクノリッジを送る ことができません。 2. CBUS対応デバイ CBUS対応デバイスとI とI 2C 対応デバイスを1 を1 つのシステム内に混 在させることができるように、C B U Sア S アドレスが予約されていま す。 このアドレスを受信したときには、 I 2C バス・デバイスは応答 することができません。 3. I2C バスの通信手順と他の通信手順を混在させることができる ように、異なるバス・フォーマット用に予約されているアドレスも 含まれています。 このようなフォーマットおよび通信手段を使っ て動作することができるII 2C バス対応デバイスだけが、 て動作することができる このアド レスに応答することができるようになっています。 10.1.1 最下位ビットB トB が 0 の場合、2 バイ ト目は以下の内容になります。 ・ 00000110 (H06 H06) ) :スレーブ・アドレスのプログラム可能な部分の ハードウエアによるリセットおよび書き込み指示。 この2バイ この2 トを受 信すると、 ゼネラル・コール・アドレスに応答されるように設定され た全てのデバイスがアドレスのプログラム可能な部分をリセット し、 そこに新しいアドレスを書き込みます。電源電圧の供給後、 こ れらのラインが L レベルになることでバスがブロックされるた め、デバイスがSDA デバイスがSDAライ ラインまたはSCL ンまたはSCLライ ラインを L レベルにしないよ うに注意することが必要です。 ・ 00000100 (H04 H04) ) : スレーブ・アドレスのプログラム可能な部分の ハードウエアによる書き込み指示。自身のアドレスのプログラム 可能な部分をハードウエアによって定義している全てのデバイ ス (およびゼネラル・コール・アドレスに応答するデバイス) は、 こ の連続する22 バイ の連続する トを受け取ることによってそのプログラム可能 な部分の状態を保持します。デバイスのリセットは行われません。 ・ 00000000 (H01 H01) ) :このコードを2 ドを2 バイ ト目として使用することはで きません。 ゼネラル・コール・アドレス ゼネラル・コード・アドレスは、 I2Cに接続されている全てのデバイス をアドレス指定するために使用されるアドレスです。 しかし、ゼネラ ル・コールで送信される情報の中に必要なデータが全く含まれて いない場合には、デバイスはアクノリッジを送信しないことによって このアドレスを無視することができます。ゼネラル・コール送信によ るデータを必要とするデバイスは、ゼネラル・コール・アドレス指定 に対してアクノリッジを送信し、スレーブ・レシーバとして機能しま す。2番目以降のバイ トは、 このデータを処理することができる全て のスレーブ・レシーバによって受信確認されることになります。ス レーブ・デバイスがこれらのバイ ト中の一部を処理できない場合に は、 アクノリッジを送信しないことによってそのバイトを無視しなけ ればなりません。ゼネラル・コール・アドレスの内容は、必ず2バイ ト 目で定義されています (図15参照) (図15 参照) 。 アドレス・プログラミングのプログラミングについては、 それぞれの デバイスのデータ・シートを参照してください。 他のコードは一定ではないため、デバイスはこれらのコードを無視 しなければなりません。 最下位ビットB トBが 1 の場合、 この2バイト・シーケンスは 『ハードウエ ア・ゼネラル・コール』 となります。つまり、 このシーケンスは、キー ボード・スキャナなどの希望するスレーブ・アドレスを送信するよう にプログラミングできないハードウエア・マスター・デバイスによっ て送信されることになります。ハードウエア・マスターは、 メッセージ をどのデバイスに送信すべきかを前もって知らないため、 このハー ドウエア・ゼネラル・コールと自分自身のアドレスを生成してシステ ムに自分を認識させることしかできません (図16参照) (図16 参照) 。 第2バイ トの残りの7ビットは、ハードウエア・マスターのアドレスを表 します。 このアドレスは、バスに接続されているインテリジェント・デ バイス (マイクロコントローラなど) によって認識され、ハードウエア・ マスターからの情報は、 このバスを通して送られます。ハードウエ ア・マスターがスレーブとしても機能できる場合、 スレーブ・アドレス はマスター・アドレスと同じになります。 以下の22 つの場合が考えられます。 以下の ・ 最下位ビットB トB が 0 の場合 ・ 最下位ビットB トB が 1 の場合 14 Philips Semiconductors I2Cバス仕様書 図16 ハードウエア・マスター・ トランスミッタからのデータ転送 一部のシステムでは、 システム・リセットの後でハードウエア・マス ター・ トランスミッタがスレーブ・レシーバ・モードになることがありま す。 このようにすれば、 システムを構成するマスターはどのアドレス にデータを送信しなければならないのかをハードウエア・マスター・ トランスミッタ (現在はスレーブ・レシーバ・モード) に指示することが できます (図17参照) (図17 参照) 。 このプログラミング手順の後もハードウエア・ マスターは、マスター・ トランスミッタ・モードのままになります。 10.1.2 『 『START START』 』 バイト このような場合には、データ転送の前に通常よりかなり時間がかか る開始手順が必要となる場合があります(図18 (図18) ) 。 この開始手順は 以下のような内容から構成されています。 ・『START START』 』 条件 (S ) (S マイクロコントローラは、 I2Cバスに バスに22通りの方法で接続することがで きます。オンチップ・ハードウエアI ドウエアI2Cバス・インターフェースを持つマ イクロコントローラの場合、バスから要求を受けたときのみ割り込み がかかるようにプログラムすることができます。 このようなインター フェースを持たないデバイスは、 ソフトウエアを介して常にバスを監 視していなければなりません。 図17 図 17 当然、マイクロコントローラがバスを監視、つまり、ポーリングする時 間が長くなればなるほど、本来実行しなければならない機能のた めに費やすことのできる時間は少なくなります。従って、高速ハー ドウエア・デバイスと、 ソフトウエア・ポーリングを行なう比較的低速 のマイクロコントローラではスピードに差がでます。 ・『START START』 』 バイ ト (00000001 (00000001) ) ・ アクノリッジ・クロック・パルス (ACK) (ACK ) ・ 反復 『START』 『START 』 条件 (Sr) (Sr ) スレーブ・デバイスに直接データをダンプすることができるハードウエア・ トランスミッタのデータ転送 (a ) 構成マスターがハードウエア・マスターにダンプ・アドレスを送信する場合。 (b ) ハードウエア・マスターが指定されたスレーブにデータを送信する場合。 15 Philips Semiconductors I2Cバス仕様書 図18 『START 『 START』 』 バイト手順 10.1.3 バスへのアクセスを必要とするマスターから 『START』 『START 』 条件Sが送信 条件S された後、 『START START』 』 バイ ト (00000001) (00000001 ) が送信されます。別のマイクロ コントローラは、 『START START』 』 バイ ト中の7つの0 つの0のいずれかを検出するま で、低いサンプリング・スピードでSDA ドでSDAライ ラインのサンプリングを行いま す。SDA SDAライ ライン上で L レベルが検出されると、マイクロコントローラ は同期をとるために使用される反復 『START』 『START 』 条件 (Sr) (Sr ) を検出する ために、 さらに速いサンプリング・スピードに切り替わります。 CBUSとの互換性 CBUS との互換性 CBUSレシーバを CBUS レシーバをII 2C バスに接続することができます。 しかし、 このよ うな場合には、DLEN DLENと呼ばれる と呼ばれる33 番目のバス・ラインを確認し、 アク ノリッジ・ビットを省略するようにしなければなりません。通常、I2C上 でのデータ転送は、8ビットから構成されるバイ トの送信によって行 われますが、CBUS CBUSデバイ デバイスの場合にはフォーマットが異なっていま す。 ハードウエア・レシーバは、反復 『START』 『START 』 条件 (Sr) (Sr ) を受信すると、 こ れをリセットして、以後 『START』 『START 』 バイ トを無視します。 『START START』 』 バイ トの後に、 アクノリッジ用のクロック・パルスが生成され ます。 このクロック・パルスは、バス上で使用されるバイ ト処理フォーマッ トの準拠するためにだけに生成されます。 どのデバイスも 『START』 『START 』 バイトに対してアクノリッジを応答することはできません。 複合バス構造において、I2Cデバイスが デバイスがCBUS CBUSメ メッセージに応答しな いようにすることが必要です。 そのため、I2Cデバイスが応答するこ とができない特殊なCBUS とができない特殊な CBUSア アドレス (0000001x) (0000001x ) が確保されていま す。CBUS CBUSア アドレスが送信された後でDLEN レスが送信された後でDLENライ ラインをアクティブ状態に すれば、CBUS CBUSフォーマッ フォーマットでのデータ転送を実行することができま す (図19参照) (図19 参照) 。 『STOP STOP』 』 条件の後、再び全てのデバイスがデータを 受け取れる状態になります。 マスター・ トランスミッタはCBUS タはCBUSア アドレスを送信した後、CBUS CBUSフォー フォー マットを送信することができます。送信は、全てのデバイスが 『STOP』 『STOP 』 条件を認識した時に終了します。 注:設計者は、CBUS CBUS構成がわかってお 構成がわかっており、CBUS CBUSデバイ デバイスがこれ以上 追加されないことがわかっている場合、 その時使用するデバイス の条件に合わせてホールド時間を設定することができます。 16 Philips Semiconductors I2Cバス仕様書 START condition CBUS address 図19 11 R/W ACK bit related clock pulse n - data bits STOP CBUS load pulse condition CBUSトランスミッタ/レシーバを使ったデータ転送のフォーマット I 2 Cバス仕様の拡張 データ転送レートが最高100kbit/s が最高100kbit/sで、 で、7ビット・アドレス指定が可能 なI 2C バスは、仕様変更することなく1980 1980年以来利用されてき 年以来利用されてきまし た。 この規格は事実上の標準として世界中で受け入れられ、数百 種類ものII2Cバス対応の 種類もの バス対応のIC ICが、 が、 フィリップスや他のメーカーによって 販売されています。 より高速の要求を満たすため、新しいデバイス において増加しているスレーブ・アドレスをもっと多く得るために、 現在、I 2 C バスの仕様が拡張され、次の3 次の3 つの機能が加えられまし た。 ファースト・モードまたはHs ドまたはHsモー モードのI ドのI2Cバス・インターフェースを持つ デバイスには、 7ビットまたは10 または10ビッ ビットのスレーブ・アドレスのどちらで も割り当てることができます。 しかし、ハードウエア・コストがもっとも 安価であり、 メッセージの長さも最短になる7ビット・アドレスが好ま れています。F/S F/Sモー モードまたはHs ドまたはHsモー モード・システムのいずれの場合に おいても、同じI 同じI2Cバス上に7ビットおよび10 トおよび10ビッ ビット・アドレスを混在さ せることが可能です。 既存のマスター・デバイスおよび今後開発されるマスター・デバイ スは、 7ビット・アドレスまたは10 レスまたは10ビッ ビット・アドレスのいずれかを生成す ることができます。 ・ ファースト・モード:ビット・レート400kbit/s ト400kbit/sまで。 まで。 12 ・ ハイ・スピード (Hs) (Hs ) モード:ビット・レート3.4Mbit/s ト3.4Mbit/sまで。 まで。 ファースト・モード I2Cバスのファースト・モードでも、SDA SDAおよび およびSCL SCLライ ラインの通信手段、 フォーマット、 ロジック・レベルおよび最大容量正負荷は、従来のI 従来のI2C 2 バス仕様と同一です。I Cバス・インターフェースを持つ新しいデバ イスは、 ファースト (F) (F またはハイスピード (Hs) (Hs ) ・モード仕様の最低必 要条件を満足しなければなりません (13節参照) (13 節参照) 。 ・ 10 10ビッ ビット・アドレス指定:これにより最大1024 これにより最大1024のア のアドレスを追加利 用することが可能になります。 I2C バス仕様をこのように拡張した理由は、以下のように2つありま す。 ・ 新しいアプリケーションでは、 より多くのシリアル・データを送る必 要があるので、100kbit/s(標準モー (標準モード) あるいは400kbit/s あるいは400kbit/s (ファースト・モード) よりも高速でのビット転送が求められるように なったため。IC ICの製造技術の進歩によ の製造技術の進歩により、インターフェース回路 の製造コストを上げることなく、 3.4Mbit/s(Hs Hsモー モード) までの 高速化が実現できました。 ・7ビット・アドレス指定方式では112 レス指定方式では112のア のアドレスのほとんどはすで に2回以上利用され、今後、新しいデバイスに対するアドレスの割 り当てを問題なく行なうためには、 より多くのアドレスの組み合わ せが必要となったため。新しい10 新しい10ビッ ビット・アドレス指定方式では、 利用可能なアドレスの数を約10 レスの数を約10倍に増やすことができます。 倍に増やすことができます。 17 ファースト・モード・デバイスは、400kbit/s 400kbit/sまでのデータを受信した までのデータを受信した り送信することができます。 この最低要求条件は400kbit/sのデー この最低要求条件は400kbit/s のデー タ転送に同期できることであり、 この転送スピードを落とすために SCL信号の SCL 信号の L 期間を延長することができます。 ファースト・モード・ デバイスは、0〜100kbit/s I2Cバス・システムの標準モード・デバ イスとダウン・コンパチであり、 このバス・システムとの通信を行なう ことができます。一方、標準モード・デバイスはファースト・モード・シ ステムとアップ・コンパチではなく、高速のデータ転送スピードに追 随できず、 また、 どのような状態が生じるかも想定できないので、 こ のモードをファースト・モード・バス・システムの中に組み入れること はできません。 Philips Semiconductors I2Cバス仕様書 従来のII 2C バス仕様と異なる点は次の通りです。 従来の ・ 最大ビット・レートが400kbit/s が400kbit/sに増大しま に増大しました。 ・ シリアル・データ (SDA) (SDA ) およびシリアル・クロック (SCL) (SCL ) 信号のタイ ミングが変更されました。CBUS CBUSなどの高いビッ などの高いビット・レートに対応し ていない他のバス・システムとの互換性を考慮する必要がなく なりました。 ・ ファースト・モード・デバイスの入力に、SDA SDAおよび およびSCL SCL入力におい 入力におい てスパイク防止対策およびシュミット・トリガが必要になりました。 ・ ファースト・モード・デバイスの出力バッファにSDA スの出力バッファにSDAおよび およびSCL SCL信号 信号 の立ち下り・エッジ・スロープ・コントロールの組み込みが必要に なりました。 ・ ファースト・モード・デバイスへの電源供給が切れた場合、バス・ ラインを妨げることがないようにSDA にSDAおよび およびSCL SCLの のI/O I/Oピンと電源 ピンと電源 との接続が外れるようになっていなければなりません。 ・ バス・ラインに接続された外部並列デバイスは、 ファースト・モード I2Cバスに対応するために、 より短い許容可能立ち上がり時間を 可能にするように変更される必要があります。バスの負荷が最高 200pFまでの場合、 200pF までの場合、各バス・ラインの並列デバイスを抵抗として使 用することができます。 また、負荷が200pF 負荷が200pF〜 〜400pF 400pFの場合には、 の場合には、 並列デバイスを電流供給源 (最大3mA) (最大3mA ) または図43に示すよ または図43 に示すように スイッチ付き抵抗として利用することができます。 13 ・ オプションとして、Hs Hsモー モード・マスター・デバイスはビルトインのブ リッジ(1)を持っています。Hs Hsモー モード転送の間、Hs Hsモー モード・デバイス のハイスピード・データ (SDAH) (SDAH ) およびハイスピード・シリアル・ク ロック (SCLH) (SCLH ) がF/Sモー がF/S モード・デバイスのSDA スのSDAおよび およびSCL SCLライ ラインからの ブリッジによって分離されます。 このことにより、SDAH SDAHと とSCLH SCLHライ ライン の容量性負荷が減少して、立ち上がり時間と立ち下り時間が速 くなります。 ・ Hs Hsモー モード・スレーブ・デバイスとF/S とF/Sモー モード・スレーブ・デバイスとの 唯一の相違は動作時のスピードです。Hs Hsモー モード・スレーブはSCLH レーブはSCLH およびSDAH および SDAH出力にオープン 出力にオープン・ドレインの出力バッファを持ってい ます。SCLH SCLH信号の 信号の L レベルの期間を延ばすために レベルの期間を延ばすためにSCLH SCLHピン上 ピン上 にオプションとしてのトランジスタが用いられますが、 これはH s これはH モード転送時のアクノリッジ・ビット後にのみ実効されます。 ・ Hs Hsモー モード・デバイスの入力回路において、SDAH SDAHおよび およびSCLH SCLH入力 入力 段にスパイク抑圧回路とシュミット・ トリガー回路を内蔵していま す。 ・ Hs Hsモー モード・デバイスの出力バッファにはSDAH スの出力バッファにはSDAHおよび およびSCLH SCLHの立ち下 の立ち下 りエッジのスロープ・コントロール回路があります。 図20 20は はHs Hsモー モード・デバイスのみのシステムにおける物理的なI スのみのシステムにおける物理的なI2Cバ ス構成を示します。マスター・デバイスのSDA スのSDAおよび およびSCL SCLピンは混在 ピンは混在 スピード・バス・システムの時にのみ使用され、Hs Hsモー モードのみのシス テムの時には接続されません。 このような場合、 これらのピンは他 の目的に使用されます。 Hsモード Hs モード オプションとしてのシリーズ抵抗Rs ーズ抵抗Rsにより、 により、バス・ラインの高電圧ス パイクからI/O クからI/O段を保護して、 段を保護して、 リンギングおよび干渉を最小にしま す。 ハイスピード (Hs) (Hs ) モード・デバイスは飛躍的なI は飛躍的なI 2C バス・転送スピー ドを提供します。 Hsモー Hs モード・デバイスは3.4Mbit/s デバイスは3.4Mbit/sまでのビッ までのビット・レー トの情報を転送することができ、ファースト (F )モードおよび標準 (F モード・デバイスと完全にダウンコンパチであり、複合スピード・バ ス・システム内での双方向通信を行なうことができます。Hs Hsモー モード 転送中でアービトレーションおよびクロックの同期化ができないこ とは例外ですが、F/S F/Sモー モード・システムの場合と同じシリアル・バス・ プロトコルおよびデータ・フォーマットが得られます。非常に多くのア プリケーションにおいてHs ンにおいてHsモー モード・デバイスをデザイン・インすること が望まれていますが、アプリケーションにより、新しいデバイスは ファーストまたはハイスピードI ドI 2C バス・インターフェースを持ってい ます。 プルアップ抵抗R pは、 プルアップ抵抗R p は、バスがフリーな状態である時S ーな状態である時 S D A Hおよび H および SCLHライ SCLH ラインを H レベルに維持し、必要な立ち上がり時間の間にこ の信号を L から H レベルへ確実にプルアップします。 これより大 きな容量性バス・ライン (100pF以上) (100pF 以上) の時、抵抗Rp 抵抗Rpを外部電流ソー を外部電流ソー ス・プルアップと置き換えて、立ち上がり時間の要求を満足させる こともできます。 アクノリッジ・ビットが先行しているとき以外には、Hs モード転送時におけるSCLH ド転送時におけるSCLHク クロック・パルスの立ち上がり時間は、 アクティブ・マスターの内部電流ソース・プルアップ回路MCS プルアップ回路MCSによっ によっ て短くされます。 13.1 高速転送 3.4Mbit/sまでのビット転送を達成するには、通常のI 3.4Mbit/sまでのビッ 通常のI 2C バス仕様 に対して次の改良が必要です。 ・ Hs Hsモー モード・マスター・デバイスは、SDAH SDAH信号に対してはオープン 信号に対してはオープン・ ドレインの出力バッファが必要であり、SCLH SCLHに対してはオープン に対してはオープン・ ドレインのプルダウンと電流ソースのプルアップ回路(1)が必要で す。 この電流ソース回路によりSCLH りSCLH信号の立ち上がり時間が短 信号の立ち上がり時間が短 くなります。 1つのマスターの電流ソースだけが一度だけHs つのマスターの電流ソースだけが一度だけHsモー モー ドの時にのみイネーブルされます。 ・ マルチ・マスター・システムにおいてHs システムにおいてHsモー モード転送時にアービト レーションおよびクロック同期は行われず、 ビット処理機能のス ピードアップが図られます。 アービトレーションは、常に、F/S F/Sモー モード において先行するマスター・コード転送の直後におこなわれま す。 ・ Hs Hsモー モード・マスター・デバイスは1 デバイスは1:2の H 期間と L 期間との比を 有するシリアル・クロック信号を生成します。 ( 1 ) パテントの申請中。 18 Philips Semiconductors I2Cバス仕様書 ( 1 ) S D Aおよび A およびS S C Lはここに示 L はここに示していませんが他の機能に使用することもできます。 ( 2 ) 入力フィルタへ ( 3 ) アクティブ・マスターのみが電流ソース・プルアップ回路をイネーブルすることができます。 ( 4 ) 点線で示したトランジスタはオプションであり、 シリアル・クロック信号SCLH クロック信号SCLHの時間を延ばすことができます。 の時間を延ばすことができます。 図20 Hsモー Hs モード・デバイスのみの場合のI デバイスのみの場合のI 2C バス構成 はテストまたは自己診断用に予約されています) 。Hs モード・マス ター・デバイスに対するマスター・コードはソフトウエア・プログラマ ブルであり、 システム設計者によって選択されます。 選ばれたマスターがアクティブになった後、マスター・コードと非ア クノリッジ・ビット (A) (A の転送中にアービトレーションおよびクロック同 期化が行なわれます。 このマスター・コードは、H s モード転送がス タートしたことを他のデバイスに知らせますが、接続されたデバイス はHs Hsモー モードの仕様を満足しなければなりません。マスター・コードの アクノリッジを行なわないデバイスがないので、マスター・コードの 後には非アクノリッジ (A ) (A が続きます。 13.2 Hsモードにおけるシリアル・データ転送 Hs モードにおけるシリアル・データ転送 フォーマット Hsモー Hs モードにおけるシリアル・データ転送フォーマットは標準モードI ドI2C バス仕様に適合します。 Hsモー Hs モードの条件の後にのみスタートします (これらの全てはF/S (これらの全ては F/Sモー モード) 。 ・『START START』 』 条件 (S ) (S ・ 8ビットのマスター・コード (00001XXX) (00001XXX ) ・ 非アクノリッジ・ビット (A ) (A 図21 21および図 および図22 22はこれをさ はこれをさらに詳しく示しています。 このマスター・ コードには次の2 ドには次の2 つの機能があります。 ・ F/S F/Sモー モードのスピードで競合するマスター間でアービトレーション およびクロック同期を行って、 1つのマスターを選び出します。 ・ これは これはHs Hsモー モード転送の開始を表示します。 Hsモー Hs モード・マスター・コードには8 ドには8ビット・コードが割り当てられますが、 これはスレーブのアドレス指定およびその他の目的には使用され ません。 さらに各マスターは独自のユニークなマスター・コードを 持っていますので、8つ間での つ間でのHs Hsモー モード・マスターが1 マスターが1つの つのII2Cバス・ システム内に存在することができます (マスター・コード0000 ド0000 1000 19 非アクノリッジ・ビット (A) (A の後、 およびSCLHライ およびSCLH ラインがずっと H レベル にプルアップされているとき、 このアクティブ・マスターによってHs マスターによってHs モードに切り替えられてSCLH ドに切り替えられてSCLH信号の電流ソース 信号の電流ソース・プルアップ回路を イネーブルします(時間t (時間t Hにおいて、図22 図22参照) 参照)。他のデバイスに よって、SCLH SCLH信号の 信号の L 期間が引き延ばされて 期間が引き延ばされてttH以前のシリアル転 送が遅延させられるので、全てのデバイスがSCLH スがSCLHライ ラインを開放して SCLH信号が SCLH 信号が H レベルになったとき、 このアクティブ・マスターに よって電流ソース・プルアップ回路がイネーブルされます。 その後、 アクティブ・マスターがR/W マスターがR/Wビッ ビット・アドレスを持った7 レスを持った7ビット・ スレーブ・アドレス (または、 10ビッ 10 ビット・スレーブ・アドレス、14 14節参照) 節参照) に先行する反復 『START』 『START 』 条件を送出して、選択されたスレーブか らアクノリッジ・ビット (A ) (A を受信します。 Philips Semiconductors I2Cバス仕様書 各アクノリッジ・ビット (A ) (A または非アクノリッジ・ビット (A ) (A の後、アク ティブ・マスターはその電流ソース・プルアップ回路をディスエーブ ルします。 このことによって、他のデバイスのSCLH スのSCLH信号の 信号の L 期間 が延びてシリアル転送の遅延が達成されます。全てのデバイスが 開放されてSCLH 開放されて SCLH信号が 信号が H レベルになると、 アクティブ・マスターが 再び電流ソース・プルアップ回路をイネーブルしますので、SCLH SCLH信 信 号の立ち上がり時間の最後の部分のスピードアップが図られます。 次の反復 『START』 『START 』 条件 (Sr) (Sr ) 後に、Hs Hsモー モードのデータ転送が継続し 図21 て、 『STOP STOP』 』 条件 (P) (P の後でF/Sモー の後でF/S モードにもどされます。マスター・コー ドのオーバーヘッドを低減するために、反復 『START』 『START 』 条件 (Sr) (Sr ) で分 離されたHs 離された Hsモー モード転送の多くとマスターをリンクさせることができま す。 Hsモー Hs モードのデータ転送フォーマット = MCS current source pull-up = Rp resistor pull-up 図22 完全なHs 完全な Hsモー モード転送 20 Philips Semiconductors I2Cバス仕様書 非アクティブまたは選ばれていないマスター; 13.3 F/Sモードから F/S モードからHs Hsモードへの切り替えおよび モードへの切り替えおよび その逆 1. SDAH SDAHおよび およびSCLH SCLH入力フ 入力フィルタをHs ルタをHsモー モードでのスパイク抑圧の 要求を満たすように調整する。 リセットおよび初期化の後に、Hs Hsモー モード・デバイスはファースト・モー ドになっている必要があります(これは、 ファースト・モードが標準 モードとダウン・コンパチと同じようにF コンパチと同じようにF / S モードとダウン・コンパ チ)。各Hs 各Hsモー モード・デバイスはファースト・モードからHs ドからHsモー モードへ (また はその逆) 切り替えられますが、 これはI2Cバス上のシリアル転送に これはI よってコントロールされます。 2. バスが再びフリーになった時を検出するために 『STOP』 『STOP 』 条件を 待つ。 全てのスレーブに対して; 1. SDAH SDAHおよび およびSCLH SCLH入力フ 入力フィルタをHs ルタをHsモー モードでのスパイク抑圧の 要求を満たすように調整する。 図22 22において、 において、時間t 時間t1以前に、各接続デバイスはファースト・モード で動作しています。時間t 時間t1とtHとの間 (この時間間隔は任意のデバ イスによって引き伸ばすことが可能) それぞれの接続デバイスは 「S00001XXXA S00001XXXA」 」 シーケンスを認識して、 その内部回路をファースト・ モードからHs ドからHsモー モードの設定に切り替えなければなりません。時間t 時間t 1 とtHとの間、接続されたマスターおよびスレーブ・デバイスは次の動 作によってこのスイッチングを行います。 アクティブの (選ばれた) マスター: 1. S D A Hおよび H およびSS C L H 入力フィルタをH ルタをH s モードでのスパイク抑圧 の要求を満たすように調整する。 2. Hsモー Hs モードの要求に適合するようにセットアップ時間およびホー ルド時間を調整する。 この要求は、すでに入力フィルタの調整に よって実施されている場合があります。 3. 必要に応じて、SDAH SDAH出力段のスロープ・ 出力段のスロープ・コントロールを調整す る。スレーブ・デバイスのとき、スロープ・コントロールはSDAH ロールはSDAH 出 力段についてのみ適応されますが、 これは回路の状態に依存 します。 ファースト・モードおよびHs ドおよびHs(ハイ (ハイスピード) モードに対し て、内部回路を切り替えることなしにその要求事項を満たすこ とができます。 図22 22において、 において、時間t 時間tFSの後、 それぞれの接続デバイスは 『STOP』 『STOP 』 条 件 (P) (P を認識して、時間t1 時間t1以前に存在した場合と同様に、 以前に存在した場合と同様に、 その内部 回路をHs 回路を Hsモー モード設定からファースト・モード設定に切り替える必要が あります。 これは、 ファースト・モードに従って表5 ドに従って表5 で規定されている ように最小バス・フリー時間内に終了しなければなりません。 2. Hsモー Hs モードの要求に適合するようにセットアップ時間およびホー ルド時間を調整する。 3. Hsモー Hs モードの要求に適合するようにSDAH ドの要求に適合するようにSDAHおよび およびSCLH SCLH出力段の 出力段の スロープ・コントロールを調整する。 4. 時間 時間ttHの後に要求される の後に要求されるHs Hsモー モード・ビット・レートに切り替える。 5. 時間t 時間t H の後に の後にSCLH SCLH 出力段の電流ソース・プルアップ回路をイ ネーブルする。 21 Philips Semiconductors I2Cバス仕様書 おり、F/S F/Sス スピードでディスエーブルされた電流ソースとの通信を行 ないます。SDAH SDAHおよび およびSCLH SCLHピンは ピンはF/S F/Sモー モード・バス・システムに接続 されるために使用されて、 Hsモー Hs モード・マスター・デバイスのSDA デバイスのSDAおよび および SCLピン SCL ピン (実在している場合) を他の機能に使用することができま す。 13.4 低速モードにおける 低速モードにおけるHs Hsモード・デバイス モード・デバイス Hsモー Hs モード・デバイスはF/S デバイスはF/Sモー モードI ドI2Cバス・システムと完全にダウンコ ンパチであり、 このシステムに接続することができます(図2 (図2 3 参 照) 。 このような構成ではマスター・コードが転送されませんので、 すべてのHs すべての Hsモー モード・マスター・デバイスがF/S デバイスがF/Sモー モードのままになって ( 1 )ブリッジは使用していません。S D Aおよび A およびS S C Lは他の機能に使用することもできます。 Lは他の機能に使用することもできます。 ( 2 ) 入力フィルタへ ( 3 ) 電流ソース・プルアップ回路はディスエーブルされたまま。 ( 4 ) 点線で示したトランジスタはオプションであり、 シリアル・クロック信号SCL クロック信号SCL の時間を延ばすことができます。 図23 F/Sモー F/S モード・スピードのHs ドのHsモー モード・デバイス 13.5 1つのシリアル・バス・システム上の混在 スピード・モード あるシステムがHsモー あるシステムがHs モード、 ファースト・モードおよび/あるいは標準 モード・デバイスが混在されている場合、相互接続ブリッジを用い て、異なったデバイス間を異なったビット・レートで通信することが 可能です(図24 (図24および および25 25参照) 参照) 。 両方が H レベルに上昇したとき、 それぞれのスイッチ・オンされた トランジスタのドレインとソースのインピーダンスが H になります。後 者の場合、 トランジスタはレベル・シフタとして動作し、SDAH SDAHおよび および SCLHは SCLH はV DD1に、SDA SDAおよび およびSCL SCLは はV DD2にプルアップされます。 F/Sモー F/S モード・スピードの間、Hs Hsモー モード・マスターの一方のブリッジによ り、SDAH SDAHおよび およびSCLH SCLHライ ラインを該当するSDA ンを該当するSDAおよび およびSCL SCLライ ラインに接続し て、Hs Hsモー モード・デバイスがF/S スがF/Sモー モード・デバイスと低い方のスピードで 適切な時間で、Hs Hsモー モード・セクションからF/S ンからF/Sモー モード・セクションへ、 ま 通信を行なうことができます。 8節で記述されているように、全ての たはその逆方向へ、接続したりあるいは接続を外したりすることを 接続デバイス間で全F/S 接続デバイス間で全 F/Sモー モードの転送中にアービトレーションおよ 一つのブリッジで行なうことができます。 このブリッジには、異なっ び同期化を行なうことができます。 しかしながら、Hs Hsモー モード転送中 た電源電圧を持ったデバイスに接続するためのレベル・シフトの機 に、2つのバス部を分離するためにブリッジが開いて、Hs Hsモー モード・デ 能があります。例えば5V 例えば5Vの のVDD2を持った を持ったF/S F/Sモー モード・デバイスを、3V 3Vま ま バイスが互いに3.4Mbit/s バイスが互いに 3.4Mbit/sで通信をおこないます。 で通信をおこないます。 Hsモー Hs モード・デバ たはそれ以下のVVDD1を持った たはそれ以下の を持ったHs Hsモー モード・デバイス (ただし、 VDD2≧VDD1) イスとF/S とF/Sモー モード・デバイスとの間のアービトレーションはマスター・ に接続してSDA に接続して SDAと とSCL SCLピンを ピンを5V 5Vとイ とインターフェースできるようにするこ コード (00001XXX) (00001XXX ) 中においてのみ実行され、スレーブ・アドレスに とができます。 このブリッジは ジはHs Hsモー モード・マスター・デバイスに内蔵さ は4つの立ち上がりゼロがないので、通常、 1つのH つのH s モード・マス れており、 シリアル信号SDAH アル信号SDAH、 、SCLH SCLH、 、SDA SDAおよび およびSCL SCLによって完全に によって完全に ターだけが選ばれます。他のマスターは予約された8 他のマスターは予約された8ビット・コード コントロールされます。 このようなブリッジはフレキシブルなデバイス (00000XXX 00000XXX) ) が送られたときにアービトレーションを選びます。 このよ として、すべてのデバイスに取り込むことができます。 うな場合、 ブリッジは閉じられたままであり、転送はF/S 転送はF/Sモー モードで進行 します。表3 表3 にこのようなシステムの考えられる通信を示します。 TR1、 TR1 、TR2 TR2、 、TR3 TR3は はNチャンネル・ トランジスタです。TR1 TR1、 、TR2 TR2は伝達ゲー は伝達ゲー ト機能を持っており、T R 3にはオープン 3 にはオープン・ドレインのプルダウン・ス テージがあります。TR1 TR1、 、TR2 TR2がスイ がスイッチ・オンされると、 これらは双方 向に L レベルを伝達します。 さもなければ、 ドレインおよびソースの 22 Philips Semiconductors I2Cバス仕様書 ( 1 )ブリッジは使用していません。S D Aおよび A およびS S C Lは他の機能に使用することもできます。 Lは他の機能に使用することもできます。 ( 2 ) 入力フィルタへ ( 3 )アクティブ・マスターのみが電流ソース・プルアップ回路にイネーブルすることができます。 ( 4 ) 点線で示したトランジスタはオプションであり、 シリアル・クロック信号S クロック信号S C Lおよび L およびSS C L H の時間を延ばすことができます。 図24 表3 Hsおよび Hs およびF/S F/Sモー モード・スピードの転送を行なうバス・システム 混在スピード・バスシステムにおけるビット・レートの通信 シリアル・バス・システム構成 転送モード Hs + FAST + スタンダード Hs + FAST Hs スタンダード FAST スタンダード Hs <―> Hs 0〜3.4 Mbit/s 0〜3.4 Mbit/s 0〜3.4 Mbit/s ― Hs <―> Fast 0〜100 kbit/s 0〜400 kbit/s ― ― Hs <―> Standard 0〜100 kbit/s ― 0〜100 kbit/s ― Fast <―> Standard 0〜100 kbit/s ― ― 0〜100 kbit/s Fast <―> Fast 0〜100 kbit/s 0〜400 kbit/s ― 0〜100 kbit/s Standard <―> Standard 0〜100 kbit/s ― 0〜100 kbit/s 0〜100 kbit/s 13.5.1 13.5.2 混在スピード・バス・システムにおけるF/S 混在スピード・バス・システムにおける F/S 混在スピード・バス・システムにおけるHs 混在スピード・バス・システムにおける Hsモード モード 転送 モード転送 図25 25には、 には、 『START START』 』 条件、マスター・コードおよび非アクノリッジA ジAに よって (F/Sモー (F/S モード・スピード) スタートした完全なHs した完全なHsモー モード転送のタ イミング図が示されています。 このタイミング図は2 ング図は2つの部分に分け られますが、一つのタイミング図の中で時点t ング図の中で時点t Hが両部分で共通に なるように描かれています。 図24 24に示されているブリ に示されているブリッジは該当するシリアル・バス・ラインと相 互接続して、一つのシリアル・バス・システムを構築します。マス ター・コード (00001XXX) (00001XXX ) が転送されませんので、電流ソース・プル アップ回路はディスエーブルされたままであり、全ての出力段は オープン・ドレインになっています。Hs Hsモー モード・デバイスを含む全て のデバイスは、F/S F/Sモー モードI ドI2Cバス仕様のプロトコル、 フォーマットおよ びスピードで 互いに通信を行います。 23 Philips Semiconductors I2Cバス仕様書 = MCS current source pull-up = Rp resistor pull-up 図25 混在スピード・バス・システムにおける完全なHs 混在スピード・バス・システムにおける完全な Hsモー モード転送 マスター・コードはアクティブまたは非アクティブ・マスター内のブ リッジによって認識されます(図24 (図24参照) 参照) 。 このブリッジは次の動作 を行います。 1. t1とtHとの間 (図25参照) (図25 参照) で、SDA SDAライ ラインをV ンをVSSにプルダウンするた めにトランジスタT タT R 3が閉じた後で、 3 が閉じた後で、S D Aおよび A およびSCL SCLライ ラインを分 離するためにトランジスタTR1 タTR1がオープンにな がオープンになります。 2. SCLH SCLHと とSCL SCLの両方が の両方がHIGH HIGH (図25における (図25 におけるtt H) になると、SCLH SCLHおよ およ びSCL SCLライ ラインを分離するためにトランジスタTR1 タTR1がオープンになり がオープンになり ます。Sr Srの後、 の後、SCLH SCLHが がLOW LOWになる前に になる前にTR2 TR2がオープンになってい がオープンになってい る必要があります。 t Hの後、反復『START 『START』 』 条件(Sr (Sr) ) でHsモー でHs モード転送が始まります。Hs モード転送の間、SCL SCLライ ラインは H 定常状態レベルに、SDL SDLライ ラインは L の定常状態レベルになったままであり、 これらは『STOP 『STOP』 』 条件 (P ) の転送のために準備されます。 各アクノリッジ (A ) (A または非アクノリッジ (A ) (A の後、 アクティブ・マス ターはその電流ソース・プルアップ回路をディスエーブルします。 こ のことにより、他のデバイスのSCLH スのSCLH信号の 信号の L 期間を延長すること によって、 そのシリアル転送の遅延が行なわれます。全てのデバイ スが開放されてSCLH スが開放されて SCLH信号が 信号が H レベルに到達したとき、 アクティブ・ マスターによってその電流ソース・プルアップ回路を再びイネーブ ルにし、SCLH SCLH信号の立ち上がり時間の最後の部分をス 信号の立ち上がり時間の最後の部分をスピードアップ 24 Philips Semiconductors I2Cバス仕様書 します。正常でない場合、例えば、バスのハングアップから回復す るために、1 μs 以上の間 以上の間SCL SCLライ ラインをプルダウンして、任意の時間 にF/S F/Sモー モード・デバイスによってブリッジ (TR1および (TR1 およびTR2 TR2はクローズ、 はクローズ、 TR3はオープン) TR3 はオープン) を閉じることができます。 14.1 第 1 および第 および第22 バイトのビットの定義 1 0ビッ 0 ビットのスレーブ・アドレスは、 『S T A R T 』条件(S (S ) または反復 『START START』 』 条件 (Sr) (Sr ) に続く最初の2 最初の2 バイ トから構成されます。 第1 バイ トの8 番目のビットはメッセージの方向を決定するR/W トの8 はメッセージの方向を決定するR/Wビッ ビット です。第1 第1 バイトの最下位ビット (LSB) (LSB ) が0 であるということは、マス が0 ターが選択されたスレーブからの情報を読み取ることを意味してい ます。 『STOP STOP』 』 条件でHsモー 条件でHs モード終了し、 そのバス・システムをF/S システムをF/Sモー モードに戻 します。 SDAHにおいて SDAH において 『STOP』 『STOP 』 条件 (P) (P が検出されたとき (図25にお (図25 にお けるtFS) 、 アクティブ・マスターはその電流ソースMCS マスターはその電流ソースMCSをディ をディスエーブ ルします。 このブリッジは、 また、 この 『STOP』 『STOP 』 条件を認識して次のア クションをとります。 R/Wビットが0 R/Wビッ が0 の場合には、第2 第2 バイ トが10 が10ビッ ビット・アドレス指定の残り の8ビット (XXXXXXXX) (XXXXXXXX ) を含みます。R/W R/Wビッ ビットが1 が1の場合にはスレーブ からマスターへ送信された次のバイ トが含まれます。 1. tFS の後トランジスタT ジスタT R 2 がクローズになって、S C L Hを H をS C Lに接 L に接 続します。 この時、両方とも H になっています。 tFSの後トランジスタTR3 タTR3が が オープンになり、SDA SDAライ ラインを開放してプルアップ抵抗Rp ンを開放してプルアップ抵抗Rpによっ によっ て H にプルアップされます。 これはF / S モード・デバイスの これはF 『STOP STOP』 』 条件です。 『STOP STOP』 』 条件間でバス・フリーを保証するた めにTR3 めに TR3は十分に速く は十分に速くオープンにならなければならず、最も速い 次の 『STOP』 『STOP 』 条件はファースト・モード仕様を満足しなければな りません(表5 (表5 のt BUF参照) 。 14.2 10 10ビッ ビット・アドレスのフォーマット 10ビット・アドレス指定を含むデータ転送では、 10ビッ さまざまな組み合わ せの読み込み/書き出しの形式が考えられます。データ転送の形 式として以下の例があげられます。 2. SDAが SDA が H に到達した時 (図25の (図25 のt 2 ) 、 トランジスタTR1 タTR1がクロー がクロー ズしてSS D A Hを ズして H をS D A に接続します。 (注:全てのラインが H の 時相互接続が行われ、バス・ラインのスパイクを回避します。) ファースト・モードの仕様に従って、最小バス・フリー時間の間に TR1および TR1 およびTR2 TR2がクローズされなければな がクローズされなければなりません(表5 (表5 のt BUF 参照) 。 13.5.3 混在システムにおけるブリッジに対する タイミング要求 t1,tHおよび およびttFSの時、 ブリッジのアクションが非常に速いので、SDAH およびSCLHライ およびSCLH ラインに影響を及ぼさないということが図25 とが図25から見て取 から見て取 れます。 さらに、 このブリッジはSDA ッジはSDAおよび およびSCL SCLライ ラインに対するファー スト・モード仕様の関連タイミング条件に適合していなければなりま せん。 14 10ビット・アドレス指定 10 ビット・アドレス指定 このセクション (節)では、10 10ビッ ビットアドレス指定について記述し、7 ビットアドレス指定のみが使用されているケースは省略していま す。 10ビット・アドレス指定を利用しても、I 2C バス仕様のフォーマットが 10ビッ 変わることはありません。10 10ビッ ビット・アドレス指定では、 『START START』 』 条件 (S ) または反復 『START』 『START 』 条件 (Sr) (Sr ) に続く第1バイ トの最初の7ビット に、10.1 10.1節で説明している予約ア 節で説明している予約アドレス1111XXX レス1111XXXの組み合わせを の組み合わせを 利用することができます。 10ビッ 10 ビット・アドレス指定によって、既存の7 ビット・1 0ビッ 0 ビット・アドレス指定が影響を受けることはありません。 7 ビット・アドレスを持つデバイスおよび10 レスを持つデバイスおよび10ビッ ビット・アドレス指定を持つ デバイスを1つの同じI つの同じI 2 C バスを接続することが可能です。 また、 7 ビットおよび10 および10ビッ ビット・アドレス指定をF/S レス指定をF/Sモー モード・システムまたはHs システムまたはHs モード・システムのいずれでも使用することができます。 予約アドレス・ビット1111XXX ト1111XXXでは では8種類の組み合わせが可能です が、10 10ビッ ビット・アドレス指定では4種類の組み合わせ11110XX 種類の組み合わせ11110XXのみ利 のみ利 用可能となります。残りの4種類の組み合わせ11111XX 種類の組み合わせ11111XXは、 は、将来の I2Cバス拡張で必要となる可能性があるため、 それを考慮して予約 されます。 ・ マスター・ トランスミッタからスレーブ・レシーバへの転送が10 レシーバへの転送が10ビッ ビッ ト・スレーブ・アドレス指定によって行なわれる場合。転送方向は 変化しません (図26参照) (図26 参照) 。 『START START』 』 条件に続いて10ビッ 条件に続いて10 ビット・アド レス指定が行なわれる時、各スレーブはスレーブ・アドレスの第1 バイ ト中の最初の7ビット ト中の最初の7 (11110XX) (11110XX ) を自分自身のアドレスと比較 し、8 番目のビット (R/W) (R/W ) 方向ビット) が0 であるかどうかを調べま が0 す。 この時、複数のデバイスがアドレスの一致を確認し、 それぞ れがアクノリッジを行なう場合もあります (A1) (A1 ) 。一致を確認した全 てのスレーブは、スレーブ・アドレスの第2バイト中の8ビット (XXXXXXXX XXXXXXXX) ) を自分のアドレスと比較します。 しかし、 この時に適 合を確認してアクノリッジを行なうことができるスレーブは1つだ けになります (A2) (A2 ) 。 その後、 このスレーブが 『STOP』 『STOP 』 条件 (P ) (P また は異なるスレーブ・アドレスに先行する反復 『START』 『START 』 条件 (Sr) (Sr ) を 受け取るまで、マスターによるこのスレーブへのアドレス指定が 継続します。 ・ 10 10ビッ ビット・アドレス指定によってマスターレシーバがスレーブ・ トラ ンスミッタからのデータを読む場合。2 つ目の つ目のR/W R/Wビッ ビット (図27) (図27 ) の 後で転送方向が変更されます。 アクノリッジA2 ジA2が送られるまでの が送られるまでの 手順は、先に説明したマスター・ トランスミッタがスレーブ・レシー バにアドレスする場合と同様です。反復 『START』 『START 』 条件 (Sr) (Sr ) が生 成された時、 アドレスの一致を確認したスレーブは以前にアドレ ス指定されたことを記憶しています。一致スレーブは、Sr Srに続く に続くス レーブ・アドレスの第1バイ トの最初の7ビットが 『START』 『START 』 条件 (S ) (S 後に、続いたものと同じかどうかを調べ、次いで第8 次いで第8ビット (R/W) (R/W ) が1 であるかどうかを確認します。 もし、一致した場合には、 この スレーブは自分が送信側としてアドレスされたと考えてアクノリッ ジA3 A3を送り を送ります。 マスターによるスレーブ・ トランスミッタへのアドレ ス指定は、スレーブが 『STOP』 『STOP 』 条件 (P) (P 、 あるいは異なるスレーブ・ アドレスに先行する反復 『START』 『START 』 条件 (Sr) (Sr ) が生成された時、他 の全てのスレーブ・デバイスも同様にスレーブ・アドレスの第1バ イ トの最初の7ビット トの最初の7 (11110XX) (11110XX ) を自分のアドレスと比較し、第8 第8 ビット (R/W) (R/W ) の状態を調べます。 しかし、R/W R/W= =1であるため (10ビッ (10 ビッ ト・デバイスの場合) またはスレーブ・アドレス11110XX レス11110XXが適合しな が適合しな いため (7ビット・デバイスの場合) (7 、 他のスレーブが応答すること はありません。 ・ 混合フォーマット。マスターがスレーブに対してデータを転送した 後、同じスレーブからのデータを読みます (図28) (図28 ) 。1つのマスター がバスを常に独占します。送信方向は2 送信方向は2 番目の 番目のR/W R/Wビッ ビットが送ら れた後に変更されます。 25 Philips Semiconductors I2Cバス仕様書 ・ 混合フォーマット。マスターが1 マスターが1つのスレーブにデータを送り、次い で別のスレーブにデータを送ります(図2 (図2 9 ) 。バスは1 バスは1 つのマス ターによって常に占有されます。 注: 1. 複合フォーマットは、例えば、 シリアル・メモリーをコントロールす る場合に利用されます。最初のデータ・バイ ト中に、内部メモリー の場所が書かれなければなりません。 『S T A R T 』条件(S (S ) とス レーブ・アドレスが再送された後、データの送信が可能になりま す。 ・ 混合フォーマット。1 回のシリアル転送で10 アル転送で10ビッ ビットおよび7 および7ビットの アドレス指定が共におこなわれます (図30) (図30 ) 。 『START START』 』 条件 (S) (S が 生成された後、 または、反復 『START』 『START 』 条件 (Sr) (Sr ) が生成された後、 10ビッ 10 ビットまたは7 または7ビットのスレーブ・アドレスの送信が可能となりま す。図27 図27はマスターが はマスターが11 つのスレーブに7ビット・アドレス指定で データを送った後、 どのようにして2 して2つ目のスレーブに つ目のスレーブに10 10ビッ ビット・ア ドレス指定でデータ送信を行なうかを示しています。バスは1 バスは1 つ のマスターによって、常に占有されます。 2. 以前 以前にア にアク クセスされたメモリーの位置 の位置な などを自動的に加算 を自動的に加算ま また は減算するか は減算 するかに について いての判断は、 の判断は、設計者に 設計者によって行 て行なわれま なわれま す。 3. 各バイ トに続いて、上の図中でA 上の図中でAまたは またはAA で表示されているアク ノリッジ・ビットが送信されます。 4. I2Cバス対応デバイスは、スレーブ・アドレスの送信を予測できる ように、 『S T A R T』 T』 条件または反復 『S T A R T』 『S T』 条件を受け取った 時点で各自のバス・ロジックをリセットする必要があります。 図26 マスター・トランスミッタが10 トランスミッタが10ビッ ビット・アドレスを持つスレーブ・レシーバをアドレス指定する場合 図27 マスター・レシーバが10 レシーバが10ビッ ビット・アドレスを持つスレーブ・ トランスミッタをアドレス指定する場合 26 Philips Semiconductors I2Cバス仕様書 図28 複合フォーマット。マスターが10 マスターが10ビッ ビット・アドレスを持つスレーブをアドレス指定した後、 このスレーブにデータを転送し、次にマスターがスレーブからのデータを読む場合 図29 複合フォーマット。マスターが10 マスターが10ビッ ビット・アドレスを持つスレーブにデータを送る場合 (共に10ビッ (共に10 ビット・アドレス) 図30 複合フォーマット。マスターが2 マスターが2 つのスレーブにデータを送る場合 (片方が7ビット・アドレス、もう一方は10 もう一方は10ビッ ビット・アドレス) 27 Philips Semiconductors I2Cバス仕様書 14.3 10ビッ 10ビット・アドレス指定されたゼネラル・コール・ アドレスおよび開始(START (START) )バイト I 2C バスにおける バスにおける10 10ビッ ビット・アドレス指定では、通常、 『START START』 』 条件 (S ) の後に続く最初の2 最初の2 バイ トによって、 どのスレーブがマスターに 選択されるかが決定されます。唯一の例外が、マスター・ トランスミッ タが全デバイスに対してアドレスを行なう時の 「ゼネラル・コール・ アドレス」 00000000(00H 00H) ) です。10 10ビッ ビット・アドレス指定を持つスレー ブ・デバイスは、スレーブが7ビット・アドレス指定を持ったデバイス と同じような方法で「ゼネラル・コール・アドレス」 に反応します (10.1.1 10.1.1節参照) 節参照) 。 15 I/O ステージおよびバス・ラインの電気 I/Oステージおよびバス・ラインの電気 的仕様およびタイミング 15.1 標準およびファースト・モード・デバイス I2Cバスの バスのI/O I/Oレベル、 レベル、I/O I/O電流、 電流、スパイク抑圧、出力スロープ・コン トロールおよびピンの静電容量を表4に示します。表5 表5には にはI I 2C バス のタイミングを記載しています。図31 図31は はI2Cバスのタイミングの定義 を示したものです。 表5に示す に示すSCL SCLクロックの クロックの H および L 状態の最小ホールド・タイム によって、標準モードの最大転送レートである100kbit/s トである100kbit/sおよび および ファースト・モードの最大転送レートである400kbit/s トである400kbit/sが決定されま が決定されま す。標準モードあるいはファースト・モードを問わず、 どのI2Cバス・デ どのI バイスも、上記のスピードでそのままデータ送信または受信を行な う能力を持つか、 あるいは、8 節で述べたクロック同期方式(マス ターを強制的に待ち受け状態にし、SCL SCL信号の 信号の L 状態のホールド 時間を延長する) を利用することにより、それぞれの最大ビット・ レートでの転送に対応できなければなりません。 もちろん後者の場 合、転送スピードは遅くなります。 「ゼネラル・コール・アドレス」 の後、ハードウエア・マスターが10 マスターが10ビッ ビッ ト・アドレスを送信します。 この場合、 この 「ゼネラル・コール・アドレ ス」 の後にマスター・ トランスミッタのアドレスを含む連続した2つの バイ トが続きます。 このフォーマットを図16 を図16に示します。 に示します。 この内、最初 のデータ・バイ トにマスターのアドレスの8 レスの8つの最下位ビットが含まれ ます。 (マスター・アドレスには11110XXX レスには11110XXXが入 が入ります。) 7ビット・アドレス指定の場合と同様に (10/1/2参照) (10/1/2 参照) 、10 10ビッ ビット・アド レス指定の前に 『START』 『START 』 バイ ト00000001 ト00000001 (01H 01H) ) が送られることがあ ります。 28 Philips Semiconductors I2Cバス仕様書 表4 I2Cバス・デバイスのSDL デバイスのSDLおよび およびSCL SCL I/O段の特性 I/O段の特性 パラメータ 記 L レベル入力電圧: 入力レベルが一定な場合 入力レベルがVV DDに応じて変化する場合 入力レベルが VIL H レベル入力電圧: 入力レベルが一定な場合 入力レベルがVV DDに応じて変化する場合 入力レベルが VIH シュミット・ トリガ入力のヒステリシス: V D D >2 V V D D <2 V V hys 標準モード 号 MIN. 高速モード MAX. MIN. MAX. 単位 -0.5 -0.5 1.5 0 . 3 VDD n/a -0.5 n/a 0 . 3 VDD V V 3.0 0 . 7 VDD (2) n/a 0.7V DD ( 1 ) n/a V V n/a n/a n/a n/a 0 . 0 5 VDD 0 . 1 VDD – – V V (2) (2) L レベル出力電圧 (オープン・ ドレインまた はオープン・コレクタ) :シンク電流3 シンク電流3 m A 時 V D D >2 V V D D <2 V VOL1 VOL3 0 n/a 0.4 n/a 0 0 0.4 0 . 2 VDD V V バスの静電容量が10pF バスの静電容量が 10pF〜 〜400pF( V OL2の並 列抵抗を通して最大6 して最大6 m Aまで) A まで)の場合、V I H m i n からVV ILmax への出力立ち下り時間: から to f – 250 ( 4 ) 20 + 0.1C b ( 3 ) 250 ( 4 ) ns 入力フィルタによって抑圧されるスパイクの パルス幅 tSP n/a n/a 0 50 ns 入力電圧0.1〜 入力電圧0.1 〜0.9V DDmax 時、各I/O 各I/Oピンの入 ピンの入 力電流 Ii -10 10 -10 ( 5 ) 10 ( 5 ) µA 各I/O I/Oピンの静電容量 ピンの静電容量 Ci – 10 – 10 pF 注 1. 想定された 想定されたII2Cバス・システム・レベルに適合しない非標準の電源電圧を使用しないデバイスによって、 それらの入力レベルがプルアッ プ抵抗Rp プ抵抗 Rpが接続されている が接続されているVV DD電圧に一致するようにしなければなりません。 2. 最大 最大VVIH=VDDmax+0.5V 3. Cb Cb= =1つのバス・ラインの静電容量 (単位pF) (単位pF ) 4. 表5で示されている で示されているSDA SDAおよび およびSCL SCL・バス・ラインの最大t ンの最大t( 300ns) ) は出力段での最大t OF(250ns は出力段での最大t 250ns) ) より大きくなります。 このことによって、 F 300ns 図36 36に示すように、 に示すように、最大規定t 最大規定t Fを超えることなくSDA/SCL SDA/SCLバス バス・ラインの間に直列保護抵抗 (Rs) (Rs ) を接続することが可能になります。 5. VDDの供給が切れた時に、 ファースト・モード・デバイスのI/O スのI/Oピンが ピンがSDA SDAおよび およびSCL SCLバス バス・ラインを妨害しないようにする必要があります。 n/a=規定せず n/a =規定せず 29 Philips Semiconductors I2Cバス仕様書 表5 F/Sモー F/S モードI ドI2Cバス・デバイス(1)に対する に対するSDA SDAおよび およびSCL SCLバス バス・ラインの特性 パラメータ S C Lクロック周波数 L クロック周波数 記 標準モード 号 f SCL MIN. 高速モード MAX. MIN. MAX. 単位 0 100 0 400 kHz ホールド時間(反復) 『S T A R T 』条件 t HD;STA この期間の後、最初のクロック・パルスを生成 4.0 – 0.6 – µs S C Lクロックの L クロックの L 期間 f LOW 4.7 – 1.3 – µs S C Lクロックの L クロックの H 期間 t HIGH 4.0 – 0.6 – µs 反復『S 『S T A R T 』条件のセットアップ時間 t SU;STA 4.7 – 0.6 – µs データ・ホールド時間: t HD;DAT CBUSコ CBUS コンパチのマ チのマス スター用(注、10.1.3 10.1.3参照) 参照) I2C バス・デバイス用 5.0 0(2) – 3.45 ( 3 ) – 0(2) – 0.9 ( 3 ) µs µs データ・セットアップ時間 t SU;DAT 250 – 100 ( 4 ) – ns S D A および およびSS C L 信号の立ち上がり時間 tr – 1000 20 + 0.1C b ( 5 ) 300 ns S D A および およびSS C L 信号の立ち下がり時間 tf – 300 20 + 0.1C b ( 5 ) 300 ns t SU;STO 4.0 – 0.6 – µs 4.7 – 1.3 – µs – 400 – 400 pF 各接続デバイスの L レベルにおけるノイズ・ V n L マージン (ヒステリシスを含む) 0 . 1 VDD – 0 . 1 VDD – V 各接続デバイスの H レベルにおけるノイ ズ・マージン(ヒステリシスを含む) 0 . 2 VDD – 0 . 2 VDD – V 『S T O P 』条件のセットアップ時間 『S T O P 』条件と 『S T A R T 』条件との間のバス・ t BUF 『S フリー時間 それぞれのバス・ラインの容量性負荷 Cb V nH 注 1. 全ての値は 全ての値はVV IHmin および およびVV ILmaxレベル基準(表4参照) 。 2. デバイスは内部的にSDA デバイスは内部的にSDA 信号に対して 信号に対して300nS 300nS以上のホール 以上のホールド時間 (SCL 信号の (SCL 信号のVV IHminに比較して) を有し、SCL の立ち下りエッジでの 不確定な状態を回避しなければなりません。 3. 最大 最大tt HD;DATは少なくとも、デバイスのSCL スのSCL 信号の L 期間 (t LOW ) (t を延長していないということを満たしていなければなりません。 4. ファースト・モードI ドI 2C バス・デバイスを標準モードI ドI 2Cバス・システムに使用することができますが、要求される条件t 要求される条件t SU;DAT≧250nS 250nSを満足 を満足 しなければなりません。 このことは、自動的に、そのデバイスがSCL そのデバイスがSCL 信号の L 期間を延長しない状態になります。 あるデバイスがSCL あるデバイスがSCL 信号の L 期間を延長しない場合には、SCL SCLライ ラインが開放されよりt りt rmax+t SU;DAT=1000 1000+ +250 250= =1250ns (標準モード次のデータ・ビットを (標準モー I 2 C バス仕様に従って)以前に、次のデータをSDA 次のデータをSDAライ ラインに出力しなければなりません。 5. Cb= Cb =1 つのバス・ラインのトータル容量 (単位pF) (単位pF ) 。Hs Hsモー モード・デバイスと混在された場合には表6 と混在された場合には表6 に従って、 より高速の立ち下りも許容 できます。 n/a=規定せず n/a =規定せず 30 Philips Semiconductors I2Cバス仕様書 図31 I 2C バス上における バス上におけるF/S F/Sモー モード・デバイスのタイミングの定義 31 Philips Semiconductors I2Cバス仕様書 15.2 Hs Hsモー モード・デバイス I2Cバス バスHs Hsモー モード・デバイスのI/O スのI/Oレベル、 レベル、I/O I/O電流、 電流、 スパイク抑圧、ス ロープ・コントロールおよびピン容量を表6 ロールおよびピン容量を表6に示します。バス・ライン の H レベルと L レベルのノイズ・マージンは、 F/Sモー F/S モードI ドI2Cバス・ デバイスで規定した値と同じです。 図32 32に にHs Hsモー モード・タイミングに関する全てのタイミング・パラメータを 示します。 『normal normal』 』 開始条件SはHs 開始条件S Hsモー モードにはありません。アドレ ス・ビット、R/W R/Wビッ ビット、アクノリッジ・ビットおよびDATA トおよびDATAビッ ビットのタイミン グ・パラメータは全て同じ値です。外部Rp 外部Rpは内部電流源を使用し は内部電流源を使用し ないでSCLH ないで SCLHをプルアップする必要がありますので、 をプルアップする必要がありますので、 アクノリッジ・ ビット後の第1SCLH SCLHクロック信号の立ち上がりエッジのみが異なっ クロック信号の立ち上がりエッジのみが異なっ ています。 バス・ラインのHs ンのHsモー モード・タイミング・パラメータを表7 パラメータを表7 で規定してい ます。SCLH SCLHクロック信号の クロック信号の H および L の最小期間ならびに最大 立ち上がり時間、立ち下り時間によって最大ビット・レートが決定さ れます。 内部発生のSCLH信号の 内部発生のSCLH 信号の L および H レベルの期間が、 それぞれ、 200nsおよび 200ns および100ns 100nsであれば であればHs Hsモー モード・マスターは、3.4Mbit/s 3.4Mbit/sの最 の最 大ビット・レートのとき、外部SCLH 外部SCLHク クロック・パルス (立ち上がりおよび 立ち下り時間を考慮) に対する要求条件を満足します。従って、Hs モ−ド・マスターによってSCLH マスターによってSCLH信号を生成するために 信号を生成するために10MHz 10MHzの基本 の基本 周波数または10MHz 周波数または 10MHzの高調波周波数を使用することができます。 の高調波周波数を使用することができます。 SCLHク SCLH クロックの最大 H および L 期間には制限がなく、最低ビッ ト・レートにも制限がありません。 タイミング・パラメータは、各バス・ラインについて100pF ンについて100pFまでの容量 までの容量 性負荷の値に無関係であり、最大3.4Mbit/s 最大3.4Mbit/sまでのビッ までのビット・レートが 可能です。バス・ラインの負荷容量値がこれより高くなると、 ビット・ レートが徐々に低下します。400pF 400pFの容量性バス負荷の場合のタイ の容量性バス負荷の場合のタイ ミング・パラメータは表7 パラメータは表7 で規定されており、 そのときの最大ビット・ レートは1.7Mbit/s は1.7Mbit/sになっています。 になっています。100pF 100pFと と400pF 400pFの間の容量性バ の間の容量性バ ス負荷の場合、 タイミング・パラメータは直線的に補間される必要が あります。立ち上がりおよび立ち下り時間は、送信ラインSDAH ンSDAHおよび および SCLHの最大伝搬遅延時間に依存しており SCLH の最大伝搬遅延時間に依存しており、開放された終端からの 反射を回避しています。 32 Philips Semiconductors I2Cバス仕様書 表6 Hsモー Hs モードI ドI2Cバス・デバイスのSDAH デバイスのSDAH、 、SCLH SCLH、 、SDA SDAおよび およびSCL SCL I/O段の特性 I/O段の特性 記 パラメータ Hsモード Hs モード 号 最 大 最 小 単 位 L レベル入力電圧 VIL -0.5 0.3VDD(1) V H レベル入力電圧 VIH 0.7VDD(1) VDD + 0.5(2) V シュミット・ トリガー入力のヒステリシス Vhys 0.1VDD(1) – V L レベル出力電圧 (オープン・ ドレイン) 、SDAH SDAH、 、SDA SDAおよび およびSCLH SCLHにおいて において 3mAのシンク電流 3mAのシンク電流 VDD>2V VDD<2V VOL 0 0 0.4 0.2VDD V V トランスファー・ゲートのON トのON抵抗、 抵抗、3mA 3mAにおいて においてSDA SDAと とSDAH SDAHとの間または との間またはSCL SCLと と SCLHとの間の SCLH との間のVV OLレベルでの両電流方向 RonL – 50 ½ トランスファー・ゲートのON トのON抵抗、 抵抗、SDA SDAと とSDAH SDAHとの間または との間またはSCL SCLと とSCLH SCLHとの間、 との間、 両方ともVV DDレベル 両方とも RonH(2) 50 – k½ SCLH電流源のプルアップ電流。 SCLH 電流源のプルアップ電流。 0.3VDDと0.7V DDとの間の との間のSCLH SCLH出力レベルに適用。 出力レベルに適用。 ICS 3 12 mA 10〜 10 〜100pF 100pFの容量性負荷を持った の容量性負荷を持ったSCLH SCLHにおける出力立ち上がり時間 における出力立ち上がり時間(電流 源はイネーブル) および立ち下り時間 trCL, tfCL 10 40 ns 3mAの外部プルアップ電流源および 3mA の外部プルアップ電流源および400pF 400pFの容量性負荷を持った の容量性負荷を持ったSCLH SCLHにお にお ける出力立ち上がり時間(電流源はイネーブル) および立ち下り時間 trCL(3), tfCL(3) 20 80 ns 10〜 10 〜100pF 100pFの容量性負荷を持った の容量性負荷を持ったSDAH SDAHにおける出力立ち下がり時間 における出力立ち下がり時間 tfDA 20 80 ns 400pFの容量性負荷を持った 400pF の容量性負荷を持ったSDAH SDAHにおける出力立ち下がり時間 における出力立ち下がり時間 tfDA(3) 40 160 ns 入力フィルタによって抑圧されるSDAH 入力フィルタによって抑圧される SDAHおよび およびSCLH SCLHにおけるスパイクのパル におけるスパイクのパル ス幅 tSP 0 10 ns 0.1V DDと0.9V DDとの間の入力電圧を持った各 との間の入力電圧を持った各I/O I/Oピンの入力電流 ピンの入力電流 Ii(4) – 10 µA 各I/O I/Oピンの静電容量 ピンの静電容量 Ci – 10 pF 注 1. 規定された I 2C バス・システム・レベルに準拠しない非標準の電源電圧を使用するデバイスにおいて、 その入力レベルはプルアップ 抵抗RR p が接続される 抵抗 が接続されるVV DD 電圧に比例します。 2. レベル・シフターの機能を持つデバイスは、SDL SDLおよび およびSCL SCLにおいて において5.5V 5.5Vの最大入力電圧まで許容する必要があ の最大入力電圧まで許容する必要があります。 3. 100pF 100pFと と400pF 400pFとの間の容量性バス負荷に対して、 との間の容量性バス負荷に対して、立ち上がり時間および立ち下り時間は直線的に補間されなければなりません。 4. 電源電圧がスイッチ・オフされたときには、Hs Hsモー モード・スレーブ・デバイスのSDAH スのSDAHおよび およびSCLH SCLH I/Oはフローティ I/Oはフローティング状態になっていな ければなりません。電流源出力回路には、通常、V DDとの間にクリッピング・ダイオードがありますが、 この回路があるために、Hs Hsモー モード・ マスター・デバイスのSCLH デバイスのSCLHまたは またはSDAH SDAH I/O段にとって上記のことは必ずしも必須な条件ではありません。 I/O 段にとって上記のことは必ずしも必須な条件ではありません。 このことは、SDAH SDAHおよび および SCLHライ SCLH ラインに影響を与えることなしにHs ンに影響を与えることなしにHsモー モード・マスター・デバイスの電源電圧をスイッチ・オフする必要がないということを意味して います。 33 Philips Semiconductors I2Cバス仕様書 表7 Hsモー Hs モードI ドI2Cバス・デバイスのSDAH デバイスのSDAH、 、SCLH SCLH、 、SDA SDAおよび およびSCL SCLバス バス・ラインの特性(1) パラメータ 記 C b = 400 pF( 2 ) C b = 100 pF( 最 大 ) 号 最 小 最 大 最 小 最 大 単 位 SCLHクロック周波数 SCLH クロック周波数 fSCLH 0 3.4 0 1.7 MHz 開始条件のセットアップ時間 (繰り返し) tSU;STA 160 – 320 – ns 開始条件のホールド時間 (繰り返し) tHD;STA 160 – 320 – ns SCLHクロックの SCLH クロックの L 期間 fLOW 160 – 320 – ns SCLHクロックの SCLH クロックの H 期間 tHIGH 60 – 120 – ns データ・セットアップ時間 tSU;DAT 10 – 10 – ns データ・ホールド時間 tHD;DAT 0(3) 70 0(3) 150 ns SCLH信号の立ち上がり時間 SCLH 信号の立ち上がり時間 frCL 10 40 20 80 ns アクノリッジ・ビット後のSCLH ト後のSCLH信号の立ち上が 信号の立ち上が り時間 frCL1 20 80 40 160 ns SCLH信号の立ち下がり時間 SCLH 信号の立ち下がり時間 ffCL 10 40 20 80 ns SDAH信号の立ち上がり時間 SDAH 信号の立ち上がり時間 trDA 20 80 40 160 ns SDAH信号の立ち下がり時間 SDAH 信号の立ち下がり時間 tfDA 20 80 40 160 ns 停止条件のセットアップ時間 tSU;STO 160 – 320 – ns SDAHおよび SDAH およびSCLH SCLHラインの容量性負荷 ラインの容量性負荷 Cb – 100 – 400 pF SDAH+SDAラインおよびSCLH+SCL SDAH+SDAラインおよび SCLH+SCLラインの容 ラインの容 量性負荷 Cb – 400 – 400 pF 各接続デバイスの L レベル・ノイズ・マージ ン (ヒステリシスを含む) VnL 0.1VDD – 0.1VDD – V 各接続デバイスの H レベル・ノイズ・マージ ン (ヒステリシスを含む) VnH 0.2VDD – 0.2VDD – V 注 1. 全ての値は 全ての値はVV IHminおよび およびVV ILmaxレベル基準 (表6 参照) (表6 。 2. 100pF 100pF〜 〜400pF 400pFのバス のバス・ライン負荷に対して、 タイミング・パラメータは直線的に補間されなければなりません。 3. 一つのデバイスにおいて、SCLH SCLH信号の立ち下りエッジの 信号の立ち下りエッジのVV IHとV ILとの間の規定できない個所をブリッジするために、データ・ホールド・ ラインを内部で供給しなければいけません。SCLH SCLH信号の立ち下りエッジの入力回路のスレッシュホール 信号の立ち下りエッジの入力回路のスレッシュホールド値をできるだけ小さくして、 このホールド時間を最小にする必要があります。 34 Philips Semiconductors I2Cバス仕様書 = MCS current source pull-up = Rp resistor pull-up (1) Rising edge of the first SCLH clock pulse after an acknowledge bit. 図32 16 I 2C バス上における バス上におけるHs Hsモー モード・デバイスのタイミングの定義 新しい高速およびHs 新しい高速および Hsモー モード・デバイスは、表4 表4および表 および表66で規定され たように、入力レベルに関連した電源電圧を持っていなければな りません。 I 2 Cバス・デバイスとバス・ライン間の 電気的接続 I2Cバス・デバイスのI/O スのI/Oに関する電気的仕様およびこれらに接続 に関する電気的仕様およびこれらに接続 されたバス・ラインの特性は15 ンの特性は15節に記述しています。 節に記述しています。 入力レベルは次の方法で規定されます。 ・ L レベルのノイズ・マージンが0.1V マージンが0.1V DD である。 1.5Vおよび3V 1.5Vおよび 3Vの固定入力レベルを持った の固定入力レベルを持ったII2Cバス・デバイスには、 それぞれ独自の最適な電源電圧があります。5V 5V± ±10% 10%電源にはプ 電源にはプ ルアップ抵抗を接続しなければなりません (図33) (図33 ) 。V DDに関連した 入力レベルを持ったII2Cバス・デバイスは共通の電源ラインを持ち、 入力レベルを持った そのラインにはプルアップ抵抗を接続する必要があります (図34) (図34 ) 。 固定入力レベルを持ったデバイスがV スがVDDに関連した入力レベルと複 合された場合には、後者は5V 後者は5V± ±10% 10%の共通電源ライ の共通電源ラインに接続され、 かつ図35 かつ図 35に示されるように、 に示されるように、 SDAおよび SDA およびSCL SCLピンにプルアップ抵抗を ピンにプルアップ抵抗を 接続する必要があります。 35 ・ H レベルのノイズ・マージンが0.2V マージンが0.2V DD である。 ・ 図36 36に示されたよう に示されたように、SDA SDAおよび およびSCL SCLライ ライン上の高電圧スパイ ク (例えば、テレビ受像管のフラッシュ・オーバーによって発生) を回避するために、300 300Ωのシ Ωのシリーズ抵抗 (Rs) (Rs ) を用いることがで きます。 Philips Semiconductors I2Cバス仕様書 図33 図34 図35 I 2C バスに接続された固定入力レベル・デバイス I 2C バスに接続された、広い電源電圧レンジを持つデバイス I 2C バス上で固定入力レベル・デバイス(電源 電源V DD2,3)と混合されたV DD(電源V DD1 ) に関連した 入力レベルを持ったデバイス 36 Philips Semiconductors I2Cバス仕様書 図36 高電圧スパイクに対する保護用のシリーズ抵抗(Rs) 高電圧スパイクに対する保護用のシリーズ抵抗 (Rs) バス容量はワイヤー、接続部およびピンのトータルの静電容量で す。 この容量により、立ち上がり時間が規定されているため、Rpの最 大値が制限されます。 Rp maxとバス容量との関係を図 とバス容量との関係を図39 39に示します。 に示します。 16.1 標準モードI ドI2Cバス・デバイスの抵抗Rp デバイスの抵抗Rpと とRs Rsの の 最大値および最小値 標準モードI ドI 2Cバス・システムに対して、図35 図35内の抵抗 内の抵抗Rp Rpおよび およびRs Rs の値は次のパラメータに依存します。 各入出力接続の最大 H レベル入力電流の規定最大値は レベル入力電流の規定最大値は10 10μ μA です。H レベルのときの必要ノイズ・マージンが レベルのときの必要ノイズ・マージンが0.2V 0.2V DD であるの で、 この入力電流によってRpの最大値が制限されます。 この入力電流によってR トータル H レベル入力電流とRR p maxとの関係を図 レベル入力電流と との関係を図40 40に示します。 に示します。 ・電源電圧 ・バスの静電容量 ・接続デバイス数 (入力電流+リーク電流) 出力段にてV OL 出力段にてV =0.4Vでの規定最小シンク電流が での規定最小シンク電流が3mA 3mAなので、 なので、電 OLmax max=0.4V 源電圧によってRR pの最小値が制限されます。V DDとR pminとの関係を 源電圧によって 図37 37に示します。 に示します。L レベルのときの レベルのときの0.1V 0.1VDDの必要ノイズ・マージン により、Rs Rsの最大値が制限されます。 の最大値が制限されます。 Rs maxとRpとの関係を図 との関係を図38 38に示 に示 します。 37 Philips Semiconductors I2Cバス仕様書 図37 Rs値をパラメータと Rs 値をパラメータとしたときのRp したときのRpの最小値と の最小値と 図39 標準モードI ドI 2C バスにおける バスにおけるRp Rpの最大値と の最大値と 供給電圧との関係 図38 バス容量との関係 供給電圧をパラメータとしたときのRs したときのRsの の 図40 最大値とRp 最大値と Rpとの関係 との関係 供給電圧をパラメータとしたときの H レベル合計入力電流と レベル合計入力電流とRp Rpの最大値との関係 の最大値との関係 38 Philips Semiconductors I2Cバス仕様書 17 アプリケーション情報 17.2 ファースト・モードI ドI2Cバス・デバイスのスイッチ付き プルアップ回路 17.1 ファースト・モードI ドI2Cバス・デバイスの出力段のス ロープ制御 並列抵抗Rp 並列抵抗 Rpの最小値は供給電圧 の最小値は供給電圧 (VDD) (V および最大出力 L レベル によって決定されます (16.1節参照) (16.1 節参照) 。 例えば、供給電圧V 供給電圧VDD=5V 5V± ± 10%、 10% 、3mA 3mAで でVOLmax=0.4V =0.4Vの場合、 の場合、 Rpmin=(5.5‑0.4 5.5‑0.4) ) /0.003=1.7kΩと /0.003=1.7k Ωと なります。 このRp値の場合、図43 このRp 図43から分かるように、 から分かるように、最大t 最大tR値300ns という条件を満たすためのバスの最大静電容量は約200pF という条件を満たすためのバスの最大静電容量は約 200pFになり になり ます。 もし、バスの静電容量がこれを超える場合には、図43 図43に示す に示す スイッチ付きプルアップ回路を利用することができます。 I2Cバス・デバイスのI/O スのI/O部の電気的仕様およびそこに接続されて 部の電気的仕様およびそこに接続されて いるバス・ラインの特性は15 ンの特性は15節に記述されています。 節に記述されています。 図41 41および図 および図42 42は、 は、 それぞれ、CMOS CMOSおよびバイ およびバイポーラIC ポーラICにおける出 における出 力段でのスロープ・コントロール例を示したものです。立ち下りエッ ジのスロープはミラー (Miller) (Miller ) コンデンサ (C1) (C1 ) および抵抗 (R1) (R1 ) に よって決定されます。C1 C1と とR1 R1の標準的な値が図に表記されていま の標準的な値が図に表記されていま す。表4 表4において、出力立ち下り時間t 出力立ち下り時間tOFの許容誤差が大きいという ことは、回路設計がそれほど大きく影響しないということを意味し ています。立ち下り時間は、外部バス負荷(C (C b ) と外部並列抵抗 (Rp Rp) ) によってわずかに影響を受けるのみです。 しかし、表5 表5に示す 立ち上がり時間 (t R ) (t は、主としてバスの容量性負荷と並列抵抗の 値によって決定されます。 図43 43のスイ のスイッチ付きプルアップ回路は、供給電圧V 供給電圧VDD=5V 5V± ±10% 10%、 、最 大容量性負荷が400pF 大容量性負荷が 400pF の場合のためのものです。 この回路はバ ス・レベルによってコントロールされているため、スイッチング・コン トロール信号を別途追加する必要はありません。立ち上がり/立ち 下がり時、 HCT4066内のバイ HCT4066 内のバイラテラル・スイッチは、 0.8V〜 0.8V 〜2.0V 2.0Vのバ のバ ス・レベルで並列抵抗R レベルで並列抵抗Rp2をON,OFF ON,OFFコ コントロールします。抵抗R 抵抗Rp1およ びRp2を組み合わせて使用することによって、バス・ラインを最大規 定立ち上がり時間 (tR ) である300ns以内に引き上げることが可能 である300ns 以内に引き上げることが可能 になります。 コントロールを行っているI ロールを行っているI2Cバス・デバイスの最大シン ク電流が、VOL2=0.6V =0.6Vの時 の時6mA 6mA、 、 または、 VOL1=0.4V =0.4Vの時 の時3mA 3mAをそれぞれ をそれぞれ 超えることはありません。 直列抵抗Rsは必ずしも必要ではありません。 直列抵抗Rs は必ずしも必要ではありません。 これらの直列抵抗は I2Cバス・デバイスのI/O スのI/Oステージをバス ステージをバス・ライン上での高電圧スパ イクから保護するため、 またはバス・ライン信号のクロストークやア ンダーシュート (目的の場所まで届かないこと) を抑えるために利用 します。Rs Rsの最大値は、 の最大値は、R p2をオフにするためにバス・ラインを L レ ベルに設定された状態で、 この抵抗を介した電圧降下の最大許 容値によって決定します。 図41 CMOSテクノロジーにおける出力段の CMOS テクノロジーにおける出力段の スロープ・コントロール 図42 バイポーラ・テクノロジーにおける出力段の スロープ・コントロール 図43 39 スイッチ付きプルアップ回路 Philips Semiconductors I2Cバス仕様書 17.3 バス・ラインの配線パターン 一般にバス・ラインへの、 またはバス・ラインからの干渉やクロストー クが最小になるような配線が必要です。並列デバイスのインピーダ ンスが比較的高いため、バス・ラインは H レベル時にクロストーク や干渉を最も受けやすくなります。 PCBまたはリボン・ケーブル上のバス・ラインの長さが10cmを超え、 か つV DD やV SSラインが含まれている場合には、以下のような配線パ ターンにする必要があります。 SDA ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ VDD ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ VSS ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ SCL ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ VSSラインのみが含まれている場合には、以下の配線パターンにな ります。 SDA ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ V SS ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ 図44 ファースト・モードI2CバスにおけるRpの最大値と SCL ̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲̲ trmax要求を満たすバス容量との関係 これらの配線パターンでは、SDAおよびSCLの容量性負荷が同一と なります。VSSまたはVSSレイヤーを持つPCBが使われている場合は、 VSSおよびVDDラインを省略することができます。 17.5 HsモードI2Cバス・デバイスの抵抗RpおよびRsの最 大値と最小値 バス・ラインがツイスト線である場合には、各バス・ラインに必ずVSSリ ターンをツイストする必要があります。 あるいは、 その代わりに、SCL ラインにVSSリターン、SDAラインにVDDリターンをツイストしてもかまいま せん。後者の場合には、 ツイスト線の両端でVSSラインとVDDラインを切 り離すためにコンデンサが必要になります。 HsモードI2Cバスに接続された抵抗RpおよびRsの最大値と最小値 は表6および表7から計算することができます。 これは、異なった立 ち上がり時間、立ち下り時間、バス・ラインの負荷、電源電圧、混在 スピード・システムおよびレベル・シフトに依存しますのでいろいろ な組み合わせ値が得られます。従って、 この仕様にはグラフを記載 していません。 バス・ラインがシールド付きの場合 (VSSにシールド接続されている場 合) は、干渉を最小に抑えることができます。 しかし、 クロストークを 最小に抑えるために、SDAラインとSCLラインの間でシールド付きケー ブルに低容量のカップリング・コンデンサを付けておく必要があり ます。 18 F/S モード I 2C バス・システム用の F/Sモード モードI 双方向性レベル・シフタ 双方向性 レベル・シフタ 0.5μm以下の誤差を持った集積回路に関する最新テクノロジー のプロセスでは最大電源電圧が制限されますので、ディジタル I/ O信号のロジック・レベルも制限されます。 これらの低電圧回路を従 来の5Vデバイスとインターフェースさせるにはレベル・シフタが必要 になります。I2Cバスのような双方向性バスにおいて、 このようなレ ベル・シフタもまた方向コントロール信号(1)を用いずに双方向性で ある必要があります。 この問題を解消する最も簡単な方法は各バ ス・ラインにディスクリートMOS‑FETを接続することです。 2 17.4 ファースト・モードI Cバス・デバイスの抵抗Rpおよび Rsの最大値と最小値 ファースト・モードI2Cバスに接続された抵抗RpおよびRsの最大値と 最小値は16.1節の表37,表38および表40から計算することができ (tr) は標準モー ます。 ファースト・モードI2Cバスの立ち上がり時間 ドに比べて小さいので、バスの静電容量によって決定されるRpの 値は図39で示された値より小さくなります。 ファースト・モードI2Cバ スにおけるバスの静電容量 (Cb) とRpの最大値との関係を図39 (Rs とRpの関係)の代わりに図44に示します。 (1) US5,689,196認証;関連するパテントは未出願。 40 Philips Semiconductors I2Cバス仕様書 このことにより製造がより高価になります。 しかしながら、双方向性 レベル・シフタを使用することにより、各セクションが異なった電源 電圧と異なったロジック・レベルを持ったI レベルを持ったI2Cバス・システムの2 システムの2セク ション間の相互接続が可能になります。 このような構成例を図45に このような構成例を図45 に 示します。左側の 『低電圧』 セクションにはデバイスと3.3V と3.3V電源の間 電源の間 にプルアップ抵抗があり、右側の 『高電圧』 セクションにはデバイス と5V 5V電源の間にプルアップ抵抗があ 電源の間にプルアップ抵抗があります。各セクションにはロジッ ク入力レベルに関連したI/O ク入力レベルに関連した I/Oとオープン とオープン・ドレインの出力段がありま す。 このように非常に簡単なソリューションであるにもかかわらず、方向 コントロール信号を用いない双方向性レベル・シフトの要求を満た すだけではなく、次のような条件をも満たしています。 ・ 残りのバス・システムからパワー・ダウンされたバス部を絶縁す る。 ・『高電圧』 側からの高電圧スパイクに対して 『低電圧』 側を保護 する。 この双方向性レベル・シフタは、標準モード (100kbit/sまで) (100kbit/s まで) およ びファースト・モード (400kbit/s) (400kbit/s ) のI2Cバス・システムのいずれにも のI この双方向性レベル・シフタを使用することができます。 これは、Hs モード・システム用にはデザインされておらず、 レベル・シフトの機能 を持ったブリッジとして利用することができます(13.5 (13.5節参照) 節参照) 。 18.1 異なったロジック・レベルとのデバイス接続 16節には電源電圧へのプルアップ抵抗を用いて、異なった電圧の 16節には電源電圧へのプルアップ抵抗を用いて、 デバイスをどのようにして同一バス上で接続することができるかと いうことを記述しています。 これは最も簡単な方法ですが、低い電 圧のデバイスのI/O スのI/Oは は5V 5Vとイ とインターフェースできる必要があります。 図45 各バス・ラインのレベル・シフタは同じタイプであり、ディスクリートN トN チャンネル・エンハンストメントMOS‑FET トMOS‑FET(シリ (シリアル・データ・ラインSDA ンSDA 上のTR1 上の TR1およびシ およびシリアル・クロック・ラインSCL ンSCL上の 上のTR2 TR2) ) で構成され ています。 ゲート (g)は最低の電源電圧 (g) は最低の電源電圧VVDD1に、 ソース (s)は (s) は 『低い電 圧』 側のバス・ラインに、 そしてドレイン (d)は (d) は 『高い電圧』 側のバス・ ラインに接続される必要があります。多くのMOS‑FET のMOS‑FETはソースに内部 はソースに内部 接続されたサブストレートを持っていますが、 これ以外の場合には 外部接続する必要があります。各MOS‑FET 各MOS‑FETの のドレインとサブストレー トの間には内部ダイオード (N‑P接合) (N‑P 接合) があります。 I 2C バス・システム内の2箇所の異なった電源電圧に接続された双方向性レベル・シフタ回路 41 Philips Semiconductors I2Cバス仕様書 18.1.1 レベル・シフタの動作 レベル・シフタの動作中には次の3つの状態を考慮する必要があ ります。 1. いかなるデバイスもバス・ラインにプルダウンしてはいけません。 『低い電圧』 セクションはプルアップ抵抗Rp ンはプルアップ抵抗Rpによって によって3.3V 3.3Vにプル にプル アップされます。 MOS‑FETのゲー MOS‑FET のゲートとソースは共に3.3V とソースは共に3.3Vである である ので、 このV GSはスレッシュホールド電圧以下であり、MOS‑FET このV は導通しません。 このことにより、 『高い電圧』 セクションのバス・ ラインをプルアップ抵抗Rp ンをプルアップ抵抗Rp経由で 経由で5V 5Vにプルアップすることがで にプルアップすることがで きるようになります。従って、両セクションのバス・ラインは H に なっていますが、両ラインとも別々の電圧レベルになっていま す。 2. 3.3Vデバイ 3.3Vデバイスのバス・ラインは L レベルにプルダウンされます。 MOS‑FETのソースもまた MOS‑FET のソースもまた L レベルになりますが、ゲート電圧は 3 . 3 V のままです。V G Sはスレッシュホールド以上になり、M O S ‑ FETの導通が開始します。 FET の導通が開始します。 それから、 『高い電圧』 セクションもま た、導通しているMOS‑FET 導通しているMOS‑FET経由で 経由で3.3V 3.3Vデバイ デバイスによって L レ ベルにプルダウンされます。従って、両セクションのバス・ライン が L になって同じ電圧レベルになります。 42 3. 5V 5Vデバイスのバス デバイスのバス・ラインは L レベルにプルダウンされます。 VGS がスレッシュホールドを超えてMOS‑FET を超えてMOS‑FETが導通し始めるまで が導通し始めるまでMOS‑ MOS‑ FETの FET のドレイン・サブストレート・ダイオードは『低い電圧』 セクショ ンにプルダウンされます。 『低い電圧』 セクションのバス・ライン は、 さらに、導通しているMOS‑FET 導通しているMOS‑FET経由で 経由で5V 5Vデバイスによって デバイスによって L レベルにプルダウンされます。従って、両セクションのバス・ライ ンが L になって同じ電圧レベルになります。 この3 つの状態は、駆動しているデバイスの如何にかかわらず、 この3 ロ ジック・レベルがバス・システムの両方向に転送されるということを 表しています。状態1 状態1はレベル・シフトの機能を実行しています。状 態2および および33は、I2Cバス仕様で要求されるように、両セクションのバ ス・ライン間の 『ワイヤードAND ドAND』 』 の機能を実行しています。 VDD1としての3.3V しての3.3Vおよび およびVVDD2としての5V しての5V以外の電源電圧にも適応す 以外の電源電圧にも適応す ることができます、つまり、V DD1としての2V しての2Vおよび およびVV DD2としての10V しての10Vの の 電源電圧を利用することもできます。通常動作においてV 通常動作においてVDD2 はVDD1 に等しいか、 これ以上の電圧である必要があります (電源ON/OFFの (電源ON/OFF の とき、V DD2 はV DD1 以下まで低下してもかまいません) 。 Philips Semiconductors I2Cバス仕様書 19 フィリップスから供給される開発ツール 表8 I2C評価ボード プロダクト 内 容 OM4151/S87C00KSD マイクロコントローラ、LCD LCD、 、LED LED、 、パラレルI/O パラレルI/O、 、SRAM SRAM、 、EEPROM EEPROM、 、 クロック、 DTMF発生器、 DTMF 発生器、AD/DA AD/DAコンバータを持っ コンバータを持っ たI 2C バス評価ボード OM5027 低電圧・低電力IC 低電力ICおよびソフ およびソフトウエア用のI トウエア用のI 2C バス評価ボード OM5500 PCF2166 LCDドライバと ドライバとPCD3756A PCD3756A テレコム・マイクロコントローラ用のデモ・キット 表9 80C51ベース 80C51 ベース・システム用の開発ツール プロダクト PDS51 表10 内 容 ボード・レベルのフル装備ICE レベルのフル装備ICE(イ (イン・サーキット・エミュレータ) : PC へのRS232 PCへの RS232インターフェース、 インターフェース、ユニバーサル・マザーボード、 ターミナル・エミュレーション経由でコントロー ル 68000ベース 68000 ベース・システム用の開発ツール プロダクト 内 OM4160/2 SCC68070を持ったマイクロ SCC68070 を持ったマイクロ・コア‑2 コア‑2デモ/評価ボー デモ/評価ボード OM4160/4 90CE201を持ったマイクロ 90CE201 を持ったマイクロ・コア‑4 コア‑4デモ/評価ボー デモ/評価ボード OM4160/5 90CE301を持ったマイクロ 90CE301 を持ったマイクロ・コア‑5 コア‑5デモ/評価ボー デモ/評価ボード 表11 容 I2Cアナライザ プロダクト 内 容 OM1022 マルチ・マスターの機能を持ったPC マスターの機能を持った PC I2C バス・アナライザ。I 2C バスによる実験およびその動作を分析するた めのハードウエアおよびソフトウエア (IBMまたはこれとコンパチの (IBM またはこれとコンパチのPC PCで動作) で動作) 。 ドキュメントを含む。 OM4777 OM1022と類似であるがシングル OM1022 と類似であるがシングル・マスターのみ。 PF8681 PM3580ロジック PM3580 ロジック・アナライザ・ファミリ用のI リ用のI 2C バス・アナライザ・サポート・パッケージ 43 Philips Semiconductors I2Cバス仕様書 20 参考資料 表12 データ・ハンドブック タイトル オーダー・コード IC01: Semiconductors for Radio, Audio and CD/DVD Systems 9397 750 02453 IC02: Semiconductors for Television and Video Systems 9397 750 01989 IC03: Semiconductors for Wired Telecom Systems (parts a & b) 9397 750 00839, 9397 750 00811 IC12: I2C Peripherals 9397 750 01647 IC14: 8048‑based 8‑bit microcontrollers 9398 652 40011 IC17: Semiconductors for wireless communications 9397 750 01002 IC18: Semiconductors for in‑car electronics(日本で供給不可) 9397 750 00418 IC19: ICs for data communications 9397 750 00138 IC20: 80C51‑based 8‑bit microcontrollers + Application notes and Development tools 9397 750 00963 IC22: Multimedia ICs 9397 750 02183 表13 カタログ、 リーフレット、ラボ・レポート、本等 タイトル オーダー・コード 2 2 Can you make the distance... with I C‑bus (information about the P82B715 I C‑bus extender IC) 9397 750 00008 I2C‑bus multi‑master & single‑master controller kits 9397 750 00953 Desktop video (CD‑ROM) 9397 750 00644 80C51 core instructions quick reference 9397 510 76011 80C51 microcontroller selection guide 9397 750 01587 2 OM5027 I C‑bus evaluation board for low‑voltage, low‑power ICs & software 9398 706 98011 P90CL301 I2C driver routines AN94078 2 User manual of Microsoft Pascal I C‑bus driver (MICDRV4. OBJ) ETV/IR8833 C routines for the PCF8584 AN95068 Using the PCF8584 with non‑specified timings and other frequently asked questions AN96040 User s guide to I2C‑bus control programs ETV8835 The I2C‑bus from theory to practice (book and disk) Author: D. Paret Publisher: Wiley ISBN: 0‑471‑96268‑6 Bi‑directional level shifter for I2C‑bus and other systems AN97055 OM5500 demo kit for the PCF2166 LCD driver and PCD3756A telecom microcontroller 9397 750 0054 44 Philips Semiconductors I2Cバス仕様書 メ モ 45
© Copyright 2024 Paperzz