ブロック読み出しは、事前定義されたアドレスから実行できます。事前定義されたアドレスごとに、特定のコマンド コードが予約されています。コマンド コードの詳細については、「セクション 6.3.1.5.2」を参照してください。このタイプのブロック読み出しで発生するイベントのシーケンスは以下のとおりです。
- マスタはこのトランザクションを開始するために START を送信します。
- マスタは、7 ビットのスレーブ アドレスとそれに続く書き込みビット (下位) を送信します。
- スレーブは ACK をアサートします。
- マスタは固定ブロック コマンド コード (F2h-FDh) を送信し、スレーブは ACK をアサートします。
- マスタは繰り返しSTART を送信します。
- マスタは、7 ビットのスレーブ アドレスとそれに続く読み出しビット (上位) を送信します。
- スレーブは ACK をアサートします。
- マスタはバイト数 (使用されている固定ブロック コマンド コードに依存) を受信し、ACK をアサートします。
- マスタは最初のデータ バイトを受信し、ACK をアサートします。
- マスタはデータ バイトを受信し続け、ACK をアサートします。
- マスタは最後のデータ バイトを受信します。
- マスタは NACK をアサートします。
- マスタはこのトランザクションを終了するために STOP を発行します。
1 | 2 | | 3 | 4 | | 5 | 6 | | 7 | 8 | | 9 | | 10 | 11 | 12 | 13 |
S | スレーブ アドレス | W | A | 固定 ブロック コマンド コード (F2h–FDh) | A | S | スレーブ アドレス | R | A | バイト 数 (N) | A | データ バイト 1 | A | ∼ | データ バイト N | /A | P |
注:
- 通常のアドレス空間外のアドレスが読み出されると、LM94 は 00h を返します。
- ブロック読み出しは、アドレス FFh から 00h へのラップアラウンドは行いません。
- 要求したバイト数以上をマスタがアクノリッジした場合、LM94 はマスタがバイトをアクノリッジしなくなるまで、データを供給し続けます。
- マスタがバイトをアクノリッジしないで、ブロック読み出しを早期に中止する場合、LM94 はバスから離れ、マスタが STOP 信号を発行できるようにします。