シストリックアレイは、粒度の小さい処理を行うプロセッサを多数接続して、近接プロセッサ間での大量のデータ交換ができるようにした構造で、高いスループットが得られる。しかし、シストリックアレイは、ハードウェアアルゴリズムに基づくアーキテクチャで、アプリケーションごとに構成が異なったものとなり汎用性に乏しい。本研究では、さまざまな並列アルゴリズムに対応した汎用性の高いシストリックアレイの開発を目的とする。 まず、要素プロセッサについての検討を行った。従来、要素プロセッサとして用いられてきたプログラム内蔵型プロセッサとは異なり、簡単なロジック回路とメモリを用いたハードワイア方式の要素プロセッサとし、実装には、フイールドプログラマブルゲートアレイ(EPGA)と呼ばれる、プログラム可能なロジックデバイスを用いる。EPGAを用いることでアレイの構造(通信路)や要素プロセッサの機能などのロジック回路の再プログラムがハードウェアの変更無しでできるため、さまざまな並列処理アルゴリズムに対応できる。 本研究で用いるシストリックアレイは、FPGAによる要素プロセッサを格子状に配置した構造とした。このシストリックアレイで複数の並列処理アルゴリズムを実行できることを示すために、このアレイ上に、4点FFT、バブルソート、マージソ-ト、行列のL-U分解、行列の乗算を行う処理のマッピングと要素プロセッサの設計を行い、シミュレーションにより動作の確認を行った。 そして、FPGAを用いた要素プロセッサの性能評価を行うため、行列の乗算を行う要素プロセッサの開発を行い、EPGA(4200ゲート)に実装し、実験により、クロック周波数14.5MHzでの動作確認を行った。現在、このFPGAを9個用いたシストリックアレイシステムを構築中で、このシステムにより、3×3行列の乗算、上記の並列処理アルゴリズムを実際に実装する予定である。
|