Multi-FPGA based Prototyping Framework for Emerging Manycores

(邦訳:次世代メニーコアのためのマルチFPGAベースプロトタイピングフレームワーク)
 
高前田(山崎) 伸也
奈良先端科学技術大学院大学情報科学研究科 助教

[背景]CPUのコア数が増加しメニーコアへ
[問題]メニーコアの高速・簡単なシミュレーション
[貢献]高速・軽量なプロトタイピング方式の提案


 プロセッサは性能・電力効率のさらなる向上のために,単一のチップ上に複数のコアを集積するマルチコア,およびさらに大量のコアを集積するメニーコアのアプローチへ移行している.そして,メニーコアの時代における新たなアーキテクチャを採用したプロセッサの評価を高速に行うためのシミュレーション環境として,FPGAを用いたプロトタイピングが有望である.本研究では,FPGAプロトタイピングにおける課題である,シミュレーション対象プロセッサが搭載するコア数の増加に対して,スケーラブルなシミュレーション速度の達成と,対象プロセッサとFPGAシステムが持つ細粒度のハードウェアリソース量や種別の乖離に起因する,システム開発の複雑性の低減を実現する,新しいプロトタイピングフレームワークを提案した.

 まず,スケーラブルなシミュレーション速度の実現のために,クロックサイクルレベルで正確なシミュレーションを高速に行う,多数のFPGAを用いたシミュレーションシステムの構築方式,ScalableCoreシステムを提案した.これまでのFPGAベースのプロセッサシミュレータでは,対象のコア数が増加するに従って,シミュレーション速度が低下するという問題点が存在する.これに対して,あらかじめ拡張可能なFPGAアレーアーキテクチャを提案し,その上に対象のメニーコアプロセッサを分割実装することで,対象のコア数が増加しても,速度が低下することなく,高速なシミュレーションを可能にした.

 次に,システム開発の複雑性を低減するための方式として,シミュレーション対象が必要とするハードウェアリソースと,FPGAが持つリソースの間の乖離を吸収する,抽象化を用いたプロトタイピング方式のflipSyrupを提案した.提案方式では,FPGAが持つメモリシステムとFPGA間通信という2種類のリソースを,1サイクルでアクセス可能な理想的なインタフェースとして抽象化し,シミュレータ設計者に提供する.これにより,理想的なハードウェアリソースを想定して,迅速にプロセッサのモデリングができるようになった.また,抽象化を用いて設計されたプロセッサのRTLデザインを,実際のFPGA上に実装可能なデザインに変換する,RTL解析・変換ツールチェインを開発した.

 最後に,これら2つの提案方式を合わせたフレームワークを構築し,それを用いてプロセッサのシミュレーション環境を開発した.その結果,自動合成されたシステムは,手実装でチューニングされたシステムと同等の,高いシミュレーション速度を達成することを確認した.

 まとめると,本研究では,スケーラブルなシミュレーション速度と高い開発効率を両立するプロトタイピングフレームワークを提案し,実際のFPGAシステム・ツールチェインの開発を通じてその有用性を明らかにした.
 


 (2014年5月28日受付)
取得年月日:2014年3月
学位種別:博士(工学)
大学:東京工業大学



推薦文
:(計算機アーキテクチャ研究会)


本論文はスケーラブルなシミュレーション速度と高い開発効率を両立するプロトタイピングフレームワークを提案し,それを実現するFPGAプラットフォームとソフトウェアツールチェインを開発して,その有用性を確認している.国際会議でも好意的に受け止められており,今後の計算機アーキテクチャ研究に対する貢献が大きい.


著者からの一言


指導教員の吉瀬先生はもちろん,計算機アーキテクチャ研究会をはじめとする,学会でお会いした皆様には,大変お世話になりました.私に刺激ときっかけをくれる,素敵な人たちに恵まれたおかげで,こうして博士号を取得できました.これからは,世界の計算機アーキテクチャの発展に貢献すべく,楽しく研究に励んでいきます.