高速インターフェース規格ガイド ――Serial ATA,3GIO,InfiniBandから10GビットEthernetまで

tag: 組み込み 半導体

技術解説 2002年6月17日

●2種類のデータ転送方式と2種類の通信プロトコルを採用

 1394aはアシンクロナス転送とアイソクロナス転送の2種類のデータ転送方式に対応しています.また,プロトコルには,ストレージ機器で使用されるSBP-2(Serial Bus Protocol-2)と,DVビデオ・カメラなどで使われているAV/Cプロトコルがあります.

 アシンクロナス転送は非同期通信であり,数バイトのヘッダ情報と実データを特定のノードに転送します.データを受信したノードは,必ずアクノリッジを返さなければなりません.この転送では,一定のバス帯域幅を要求しません.そのためバスを定期的に使用しませんが,長期的には平等なアクセスが可能です.アシンクロナス転送ではSBP-2プロトコルが用いられます(図5).1394aのデータリンク層(ハードウェア)では,読み出し/書き込みといった低レベルのプロトコルを規定しています.さらに上位のプロトコルとして定義されているのがSBP-2です.SBP-2にはSCSIコマンド・セットが用いられています.このため周辺機器メーカは,デバイス・ドライバやソフトウェアなどを比較的容易に開発することができます.

 アイソクロナス転送は,パケットを規則的な間隔(125μs)で転送します.アシンクロナス転送よりも高いバス優先度を持ち,リアルタイム性を保証したデータ転送が可能です.特定のノードに転送するのではなく,チャネル・アドレスを使用してバス全体に送信するので,アドレスは単純化されています.データを受信したノードは,アクノリッジを返す必要がありません.

f05_01.gif
〔図5〕 SBP-2コマンド取得手順
まず,イニシエータはターゲットのORB(Operation Request Block)ポインタ・レジスタにコマンドORBのアドレスを書き込む.ターゲットは書き込まれたコマンドORBデータからCDB(Command Descriptor Block)データ・フィールドにあるSCSIコマンドを読み出し,解析する.ORBには,制御情報としてデータの方向や格納形式を示すビットなどがある.次にターゲットはORBで指定されたバッファ・アドレスからデータ・アドレスとデータ・サイズが格納されたページ・テーブルを読み出し,そのサイズ分のデータを転送する.コマンド処理が終了したら,ターゲットはイニシエータへステータス・データを書き込み,データ転送は終了する.

参考・引用*文献
 (1) Don Anderson,『FireWireシステムアーキテクチャ』,ピアソン・エデュケーション,2000年12月.
 (2) 北山洋幸,大庭政司,吉本廣雅,有田大作,『IEEE1394の徹底研究』,CQ出版,p.17,p.28,2000年10月.


みかみ・ゆうじ
セイコーエプソン(株)

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日