研究概要 |
昨年度試作したSATソルバPCMGTPの改良を行った.この作業を通じて,再構成可能素子の利用に関するソフトウェア技術を蓄積した. PCMGTPは,容量約5万論理セルの1チップFPGA上に,命題論理の各問題毎に回路を再構成して充足性判定を行う.改良点は主に(1)回路記述の高速化,(2)推論方式の改善と機能拡張,(3)シュミレータの効率改善の3つである. PCMGTPにおいては問題記述からVerilogコードを得る処理が個別に必要で,そのためのソフトウェアを本研究で独自に開発している.今回の改良で,パラメタ化機能の他,配列型やfor文等の言語機能を活用することにより,スケーラブルあるいは反復的な回路記述が従来よりコンパクトになるとともに,処理機能の変更・拡張に対してより柔軟に対応できるようになった. 推論方式については,クリティカルパスにあたる処理を多クロックに分割する等,ハードウェア化固有の制約に適合した最適化を施した.また,補題生成・蓄積・利用の処理を付加することにより探索空間を大幅に削減し,推論を効率化する改良を行った.その結果,PCMGTPでは問題毎の特性に強く依存するが,素子の面積効率を数倍程度,実行速度については最大数千倍に向上させることができた. Javaによる独自開発のシュミレータについては,信号の依存関係を保ちつつ,実際に変化の生じる箇所だけに模擬実行を限定し,合わせてデータ構造を適切なものへ変更することにより,数千倍ほどの実行速度向上を達成した.その結果,PCMGTPの開発期間が大幅に短縮された. 以上のPCMGTP開発を通じて蓄積されたハードウェア記述の諸技法や関連ソフトウェア技術は,真に動的再構成可能なハードウェアの開発にあたっても有効であると考えられる.
|