この研究では、MPEG符号化された動画像の解析を、直接MPEGビット列を操作することにより実現するプロセッサを構築することを目的とし、以下の手順で開発を行った。 MPEGビット列を直接操作するプロセッサのアーキテクチャを決定する方法として、MPEGビット列の性質を検討して人間がアーキテクチャを構築する手法をとる換わりに、MPEGビット列を直接操作するアプリケーションを解析することによって、それを実行するのに適したアーキテクチャを自動的に生成する手法を開発した。 a.アプリケーションプログラムからそのデータフローを抽出し、それを解析することで命令列のクリティカルパスを抽出し、クリティカルパス上の命令を複数まとめて複合命令とするべきかどうかをデータベースを用いて決定する。これを複数回繰り返して、ハードウェア制約条件内で最大の実行速度を持つアーキテクチャを決定する。 b.a.で決定したアーキテクチャ用のコンパイラを自動生成し、アプリケーションプログラムを機械語に変換する。 c.b.で構築したコンパイラの出力である機械語プログラムを解析してスケジューリングを行いプログラムの並列度を向上させる。 d.a.でアーキテクチャを決定する際に、ハードウェアコンポーネントの遅延時間とASIC上での面積を考慮して最適化を行う。 さらに、画像処理に要求されるリアルタイム性の向上を目指して、リアルタイムOSのタスク毎にレジスタセットを切り替えるアーキテクチャを構築し、そのアーキテクチャ上で動作するリアルタイムOSを開発した。そしてリアルタイムOSをマルチプロセッサ環境で実現するために必要なOSの問題点を検討し問題を解決したOSを開発した。 以上の結果を踏まえ、MPEGビット列を直接操作するのに必要なアーキテクチャを開発した。
|