【コラム】
I2Cの場合、バスに関するスペックは以上でほぼ網羅した形になる。例えばバーストモードとか、アドレス固定モードといった転送方法は無いため、例えば10バイトの転送を行おうとすると10回「アドレス指定→Direction→ACK(→2ndアドレス指定→ACK)→データ転送→ACK」というシーケンスが繰り返される事になる。7bitアドレスなら1byteの転送に18bit、10bitアドレスなら27bitを必要とする計算だ(他にSTARTとSTOP/RESTARTの指定があるから、厳密には20bit/29bitとなるが、STOP/RESTARTはともかくSTARTは複数データの転送時は省けるから、19bit/28bitと見なすのが正確かもしれない)。従って、当然転送効率は良くない。10bitアドレスの場合の実効転送速度は、
といった程度。7bitアドレスの場合でも、
といったあたりで、大量のデータを送るにはまるで向いていない事が判る。
ただI2Cは、大量のデータ転送を狙ったものではない代わりに、インプリメントが簡単で高速というメリットがある。プロトコルが非常にシンプルなので、インタフェース部(特に論理層)の構築が極めて簡単である。従ってインタフェース部は非常に小さく収める事が可能だし、結果としてI2CのI/F部のIPコアは殆ど標準品の扱いとしてファウンダリやFPGAメーカーから提供されている。I/Fをインプリメントした場合のダイサイズは非常に小さいからペナルティも少ない。
またインタフェースが小規模ということは、論理層のスループットが高い(というか、レイテンシが少ない)という意味でもある。従ってバス経由でイベントの通知を行おうという場合でも、インタフェース(厳密に言えば論理層)のレイテンシが問題になることはまず考えられない。むしろ問題になるのは、他のデバイスとの競合でバスを確保するまで時間が掛かるという問題だが、これは最初に述べたとおりアドレスの振り方と、どんなトラフィックを流すかという問題だから、機器設計者が上手くデバイスの優先度を決めれば済む話であり、あまり大きな問題とはならない。
配線層に関しても2線式インタフェースだから、配線は簡単である。勿論SDAとSCKの配線長が極端に異なると問題になるので、厳密に等長配線とは言わないまでも、ある程度考慮する必要はある。が、最高でも3.4Mbpsという遅い転送速度だから、タイミングマージンはかなり大きい訳で、普通に設計している限りまず問題にはならない訳で、結果として(基板面積などの観点で)ローコストに繋がる事になる。加えて言えば、バスマスタとかコントローラといったものは必要ないから、これらもローコストに貢献していると言える。
従って、I2Cバスはそれ単体でデータ転送というよりは、他のバスと組み合わせての制御というケースが多い。例えばAdvanced TCAと呼ばれる通信向けのバスがあるが、これにI2Cバスが組み込んでホットスワップの検出やコンフィギュレーションの制御を行ったりとか、スイッチやLED、各種センサーの接続などに使われる事が非常に多い。こうした用途にはI2Cで十分間に合うからだ。ちなみにI2Cのカタログには"Flash ROMの接続も可能"とかされているが、High-Speed Modeならばともかく、10~20KB/sec程度の速度しか出ないFast Modeでは(よほど小容量のFlashで無い限り)読み込み時間がちょっと掛かりすぎる気がする。タイミング的にルーズで良いケースを除くと、SPIを使って接続する方が無難であろう。
このI2Cの派生形としてAccess.busというものがあるという話は「その90」で説明した通りだが、これとは別にI2Cを応用した例としてSMBusの存在がある。(続く)
| 【コラム】Windowsスマートチューニング 第243回 Win 8編: <既定のプログラムの選択>で発生するエラーを修正する [08:00 6/19] |
| 上海問屋、ワイヤレスでPC間のデータリンクなどが可能なUSBアダプター [23:01 6/18] |
| Amazon.co.jp被災地支援プロジェクト「第2回岩手県フェア」が開催 [20:46 6/18] |
| 東芝、「REGZA Tablet AT703」のモニター販売を実施中 - 6月19日まで [20:28 6/18] |
| 日本エイサー、漫画を読むための7.9型タブレット「マンガロイドZ」 [19:13 6/18] |
|
ピザーラ風キムチ! トーストもススム「ご飯がススム エビマヨキムチ」 [09:52 6/19] ライフ |
|
東京都銀座で、広島など6県のふるさとショップを呑み歩く「夏の酒まつり」 [09:51 6/19] 旅行 |
|
【インタビュー】WhatやWhereで尋ねるのはNG!? 意外と知らない失礼な英語表現 [09:41 6/19] ライフ |
|
マクドナルドの新クォーターパウンダーを食べてみた - BLTとハバネロトマト [09:39 6/19] ライフ |
|
【中国人妻、あるある!】--(6)「野球」に全く関心を示さない [09:36 6/19] キャリア |