next up previous contents
Next: IMAP-VISIONを用いた実時間オプティカルフロー計算ソフトウェアの開発 Up: 実時間ビデオ映像処理装置の実現 Previous: 実時間ビデオ映像処理装置の実現

IMAP-VISIONデバイスドライバの開発

担当:松山 隆司,和田 俊和(京都大学)

     figure309
Figure 8: IMAPーVISION ボードの構成
Figure 7: SIMD並列映像処理LSIの構成

IMAP-VISIONは,NEC 製の画像処理用CPUアレイ(図7)とコント ロールプロセッサ LSI,および,ビデオインターフェースから成るPCIバス規 格のボード(図8)である.このボードには以下のような特長がある.

高速性:
256個のCPUアレイを用いており,例えば,マスク処理のよ うに簡単な画像処理であれば,1/30秒間に,900枚もの画像が処理できる.

開発環境:
従来のDSPを用いた画像処理ボードとは異なり,高級言語(C 言語)コンパイラ,デバッガなどのソフトウェア開発環境が整っている.

拡張性:
従来の独立型の画像処理装置とは異なり,PCIバスのマスタモー ド転送機能(DMA)を利用することによって,高速データ転送を実現すること ができ,ホスト計算機とIMAP-VISION ボードの間でデータ転送を行いながら, 両者による柔軟な処理を実現することが可能である.

IMAP-VISION ボードはこのような特長を持つが,市販されているデバイスドラ イバ・ソフトウエアはWindows95用となっており,これを用いた場合アセンブ ラしか利用できないというソフトウェア開発環境上の問題があった.さらに, 本プロジェクトではネットワークを介した協調コミュニケーションの実現を大 きな研究課題としており,OSとしてはネットワークソフトウェア開発環境の整っ たUNIXを用いており,市販ソフトではIMAP-VISIONを使ったシステムが実現で きないという大きな問題があった.

そこで,本プロジェクトでは,FreeBSDおよびNetBSDというPC-UNIX用のデバイ スドライバ・ソフトウエアを作成することにより,この問題の解決を試みた.

まず,IMAP-VISION ボード上のメモリをホスト計算機のメモリの一部として扱 う「メモリ・マップ」機能を持つデバイスドライバを作成した.

次に,IMAP-VISION ボードとホスト計算機との柔軟な連携処理を実現するため に,IMAP-VISION 側からの割り込み信号の処理が行えるようにデバイスドライ バを拡張した.この結果,IMAP-VISION 上で処理を行いながら,ホスト計算機 では別の処理を行い,IMAP-VISION 側の処理が完了した時点で,ホスト側の処 理を中断して解析結果を得たり,IMAP-VISION に次の処理を指示するといった 連携処理が実現できるようになった.このデバイスドライバをプロジェクトメ ンバに配布し,ボードおよびデバイスドライバのテストと応用プログラム開発 を行った.

開発したデバイスドライバを用いてホスト計算機とIMAP-VISION 間のデータ転 送速度を計測したところ,約3MByte/秒 となった.このスピードでは,大きさ が tex2html_wrap_inline2241 のRGBカラー画像をホスト計算機に17枚/秒でしか転送で きず,ビデオ画像をホスト計算機とIMAP-VISION の間でやり取りしながら複雑 なビデオ映像処理を実時間で行うことはできない.

この問題を解決するには,IMAP-VISION 側がバスの占有権を持ち,ホスト計算 機のCPUを介在しない「バスマスタ(DMA)転送」が行えるようハードウェアお よびデバイスドライバを改良する必要がある.1998年3月の時点で,ハー ドウェアの改良は終了し,現在はバスマスタ転送機能を組み込んだデバイスド ライバの完成を急いでいる段階である.