未踏IT人材発掘・育成事業:2017年度採択プロジェクト概要(照屋PJ)
1.担当プロジェクトマネージャー
- 首藤 一幸(東京工業大学 情報理工学院 准教授)
2.採択者氏名
- 照屋 大地(東京農工大学 大学院 工学府 情報工学専攻)
- 呉屋 寛裕(富士通クラウドテクノロジーズ株式会社 IoTビジネスデザイン部)
3.採択金額
- 2,304,000円
4.テーマ名
- CPU+FPGAプラットフォームのためのRubyベースの開発環境
5.関連Webサイト
- なし
6.申請テーマ概要
本プロジェクトではCPU+FPGAプラットフォームをターゲットとした、Internet of Things(IoT)/Cyber-Physical System(CPS)のための新しい組込み開発環境を開発する。本開発環境上でユーザはRubyプログラムを記述するが、これまでCPUの負担となっていた外部モジュールとの通信やセンサデータの前処理の部分は、自動的に論理回路へと合成され、Field-Programmable Gate Array(FPGA)へとオフロードされるようにする。CPUからFPGAを扱うためのドライバも本開発環境が自動生成するため、ユーザはこれまでのソフトウェア開発と変わらぬ体験でFPGAを導入することができるようになる。
汎用的なマイコンでは、I/Oの数や処理能力の問題から単一のマイコンで取り扱えるデータ量に限界が発生する。その問題の解決策の一つがFPGAを利用することだが、FPGAを用いたシステムは開発コストが非常に大きいなどの問題がある。本プロジェクトではRuby言語のフレームワークとして開発環境を提供し、ユーザはこのフレームワークに則ってソフトウェア開発を行うことで、CPU上で動作する実行ファイルとFPGAをプログラムするためのビットストリームを生成することができる。また、センサとの通信に関しては、センサに応じたインタフェイスをパッケージとして共有する仕組みを提供することで、本フレームワークのユーザが可能な限りRegister Transfer Level(RTL)の記述をしないで済むようにする。
7.採択理由
CPUとFPGA(再構成可能プロセッサ)を搭載した組み込み機器に対して、一括してソフトウェア開発できるようにしようという提案である。技術面に限っても、FPGAに求められる性能を達成できるか?プログラムの書きやすさと両立できるか?等、様々なチャレンジがある。広く使われる手法・ツールに至ることを期待している。