I2Cバス仕様書

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