• 検索結果がありません。

FPGA 用ソフトプロセッサ向け自動最適化コンフィグレータ

N/A
N/A
Protected

Academic year: 2021

シェア "FPGA 用ソフトプロセッサ向け自動最適化コンフィグレータ"

Copied!
2
0
0

読み込み中.... (全文を見る)

全文

(1)情報処理学会第 77 回全国大会. 3A-02. FPGA 用ソフトプロセッサ向け自動最適化コンフィグレータ 宮内 哲夫†. 田中 清史†. 北陸先端科学技術大学院大学 情報科学研究科. 1.はじめに 近年, FPGA の集積度が向上し,FPGA 内にプ ロセッサコアを構成することが可能となってい るが,SoC(System on Chip)を実現するために は総資源量の観点からプロセッサ規模が小さい ことが望まれる.そこで本研究では FPGA 資源の 有効活用のために,FPGA 上のプロセッサで実行 対象となるアプリケーションプログラムで利用 される命令を解析し,実際に使用される機能の みを自動的に選択してプロセッサ回路を生成す るコンフィグレータを構築した.いくつかのア プリケーションに対する本コンフィグレータの 効果を報告する.. 図 1 コンフィグレーション環境. (1) ハードウェア記述言語(Verilog HDL) によ り,汎用ソフトプロセッサコアを実装した. 2.背景 このソフトプロセッサコアは MIPS 命令セットア FPGA 内に構成されるプロセッサコアとしては, ーキテクチャを採用する 5 段パイプライン構成 Xilinx 社の一部の FPGA における PowerPC コアの [2]である.図 2 に示す主要な命令を実装した. ように,あらかじめ埋め込みハードウェアとし 容易にコンフィグレーションを可能とするため て搭載されているものと,FPGA 内のプログラマ に,Verilog ソースファイル上で,命令,機能単 ブル資源を利用して構成されるソフトプロセッ 位でモジュール分けを行った. サがある.ソフトプロセッサは,一般に,ハー (2) アプリケーションプログラムのオブジェク ドウェア埋め込み型より低速であるが,回路構 トコードから使用される命令を取得し,(1) で 成を変更することで FPGA 内の資源の最適な活用, 作成したモジュール群から必要なモジュールを 周辺回路との柔軟な接続性があるといった利点 選択するソフトウェア(コンフィグレータ)を実 がある.この柔軟性に着目し,アプリケーショ 装した. ン毎に FPGA の限られた資源を最適に活用する 算術命令, add, addu, addi, addiu, ために,アプリケーションに応じて最適なプロ 論理命令 and, andi, nor, or, ori, セッサを自動的に構成することにより,FPGA 資 sub, subu, xor, xori 源を有効に活用することができる. 定数操作命令 lui 比較命令 slt, sltu, slti, sltiu 3.自動最適化コンフィグレーション環境 シフト命令 sll, sra, srl, sllv, srav, srlv の実現方法 分岐命令 beq, bne, bgez, bltz, blez, bgtz 3.1 構成 ジャンプ命令 j, jal, jalr, jr 本研究で実現したコンフィグレーション環境 ロード命令 lb, lbu, lh, lhu, lw を図 1 に示す. ストア命令 sb, sh, sw A Configurator to Optimize Soft Processors for 乗算命令 mult, multu FPGA 除算命令 div, divu †Japan Advanced Institute of Science and レジスタ転送命令 mfhi, mflo Technology 図 2 命令セット. 1-23. Copyright 2015 Information Processing Society of Japan. All Rights Reserved..

(2) 情報処理学会第 77 回全国大会. (3) (2) により,対象アプリケーションに対し て,最適なソフトプロセッサコアの Verilog コ ードが生成される.. セットのプロセッサ実装) 合成後の回路規模と動作速度について,図 3 の 結果が得られた.. 3.2 モジュール選択の実現 フルセットのプロセッサは,下記のモジュー ルを全て含む.本コンフィグレータは,実装対 象をアプリケーションが使用する命令に限定す ることにより,実際に使用されるモジュールの みを選択して,プロセッサを構成する. (1) 各マルチプレクサ要素 (2) ストール検出ユニット (3) フォワーディング検出ユニット (4) 条件分岐時の比較回路 (5) 乗算器 (6) 除算器. Register LUT Slice IO DSP48A1 最小周期 (ns) 最大周波 数(MHz). 行列積 653 1179 403 167 8. Qsort 585 1720 525 167 -. SHA1 588 1770 529 167 -. Full 737 9257 3216 167 8. 12.939. 11.921. 10.964. 13.898. 77.286. 83.886. 91.358. 71.953. 図 3 合成後の回路規模. この結果から,アプリケーションの違いによ り,実際に使われる命令の種類や,フォワーデ ィングユニットなどの使用状況が異なり,プロ 実際のアプリケーションでは図 2 のすべての セッサの実装を変更することの効果があること 命令が使われる訳ではない.また,命令毎に使 が示された. われるデータパスや制御信号が異なる.そのた また,アプリケーションプログラムで使われ め,実際に使用される,各マルチプレクサ要素, る命令を人手で確認し,上記のようなプロセッ 条件分岐時の比較回路,乗算器,除算器を命令 サの最適化を手作業で行うことも可能であるが, 毎に分類し, 使用されない機能については,そ 開発期間の長期化が予想される.本コンフィグ の回路を生成しないようにする. レータはこれを自動的に行うことができるため, さらに,命令列の並びを解析し,ストールや 時間的なコストを要しない最適化を可能とする. フォワーディングが実際に発生するかを検出す る.ストールやフォワーディングにはいくつか の種類があるが,それらが発生する可能性がな 5.おわりに ければ,関連するストール検出ユニットや,フ 本研究は,アプリケーションに対して最適と ォワーディング検出ユニットを生成しない. なる FPGA 用ソフトプロセッサコアを,自動的 にコンフィグレーションできる環境を構築する 4.評価 ことを目的とした.実際に MIPS プロセッサコア を設計し,アプリケーションにしたがってコン C 言語で記述されたアプリケーションプログラ フィグレーションすることにより,その効果が ムをコンパイルして生成されたプログラムに対 確認された.今後は,マルチプロセッサを対象 して,本コンフィグレータを実行し,その結果 として最適な回路を生成するコンフィグレータ 生成されるプロセッサのハードウェア記述言語 に発展させる予定である. (Verilog HDL) で記述された回路を,Xilinx 社製 の開発環境 PlanAhead 14.7 により Sprtan-6 FPGA 参考文献 をターゲットとして合成,インプリメントし, [1] Embedded Processor Block in Virtex-5 回路規模の比較を行った.(ここで生成された FPGAs Reference Guide, Xilinx, Inc. プロセッサの回路は,アプリケーションと共に PlanAhead のシミュレータ上で実行した結果,正 [2] パターソン&ヘネシー,コンピュータの構成 しい回路であることを確認した.) と設計, 第 4 版,日経 BP 社,ISBN978-4-8222今回の評価では,下記の(1)~(3)のアプリケー 8478-7. ションプログラムに最適化された構成と,(4)の [3] 第2回 ARC/CPSY/RECONF 高性能コンピュー タシステム設計コンテスト アプリケーション フルセット構成を対象とした. プログラム http://aquila.is.utsunomiya(1) 行列積 (4 x 4) u.ac.jp/contest/ (2014 年 12 月 27 日閲覧) (2) クイックソート(Qsort)[3] [4]SHA1: http://tools.ietf.org/html/rfc3174 (3) SHA1 [4] (2014 年 12 月 27 日閲覧) (4) Full (コンフィグレータで生成される前のフル. 1-24. Copyright 2015 Information Processing Society of Japan. All Rights Reserved..

(3)

参照

関連したドキュメント

このような状況下、当社グループは、主にスマートフォン市場向け、自動車市場向け及び産業用機器市場向けの

※ 硬化時 間につ いては 使用材 料によ って異 なるの で使用 材料の 特性を 十分熟 知する こと

であり、最終的にどのような被害に繋がるか(どのようなウイルスに追加で感染させられる

2)海を取り巻く国際社会の動向

【その他の意見】 ・安心して使用できる。

脱型時期などの違いが強度発現に大きな差を及ぼすと

わかりやすい解説により、今言われているデジタル化の変革と

鉄道駅の適切な場所において、列車に設けられる車いすスペース(車いす使用者の