研究テーマ

デジタルテレビやBlu-Rayデコーダなどの情報家電製品、携帯電話、ゲーム機、あるいは、自動車や航空機などに組み込まれ、特定の処理を行う計算機システムを組込みシステム(Embedded System)と呼びます。組込みシステムの頭脳に相当するのが、システムオンチップ(System-on-Chip)と呼ばれる半導体集積回路です。システムオンチップには、複数のプロセッサ、メモリ、専用回路などが高度に集積されています。冨山研究室では、システムオンチップや組込みシステムを設計するための方法論を研究しています。システムオンチップや組込みシステムを用途に応じて最適に設計する技術や、設計を自動化する技術を、ハードウェアとソフトウェアの両面から研究しています。

メニーコアSoC設計技術

 スマートフォンに使われているシステムオンチップ(SoC)の内部に、CPUコア(以下、単にコア)が何個入っているか知っていますか? メーカーによりますが、20個以上のコアが、1つのSoCの中に入っています。その中のあるコアはGUI、あるコアは動画像処理、あるコアはパケット処理、といったように役割分担を行っています。数年後には、1個のSoCの内部に100個以上のコアが搭載されるようになります。しかしコア数が増えると、ソフトウェアのプログラミングが難しくなります。また、どの処理をどのコアに担当させるかを決定するマッピングと呼ばれる処理も難しくなります。これらの問題を解決するため、本研究室では、メニーコアSoC向けのコンパイラ、マッピング、および、シミュレーション技術の研究を行っています。また、実際にFPGAを用いたメニーコアSoCのプロトタイピング(試作)も行っています。


高位合成(CプログラムからのLSIの自動合成)

 現在、LSIの論理設計は、Verilog-HDLなどのハードウェア記述言語(HDL)を使って行われています。質問です。同じ処理(例えば、画像の圧縮)を記述する場合、Verilog-HDLとC言語のどちらを使って記述する方が楽でしょうか? 多くの人が「C言語」と答えると思います。なぜなら、C言語は「処理の手順」だけを記述すれば良いのに対し、Verilog-HDLでは「処理の手順」を実現するための「詳細な回路構造」を記述しなければならないためです。Verilog-HDLの記述量は、C言語に比べて、5~10倍多くなります。本研究室では、Cプログラムから論理回路を自動生成する「高位合成」と呼ばれる技術を研究しています。高位合成により、大規模なLSIを短期間で設計することが可能になります。


ドローンの電力制御

 ドローン(無人飛行機)は、娯楽目的だけでなく、建物(橋やビルなど)の安全検査やセキュリティなど、様々な分野で利用されています。また、ドローンを使った自動商品配送も実用化に近づいています。ドローンの自動運転を実現するためには、組込みシステムによる高度な電力制御が欠かせません(そうでなければ、バッテリ切れにより墜落する危険があります)。本研究室では、ドローンの電力制御技術について研究しています。特に、与えられた飛行計画における消費電力の予測技術や、低消費電力な飛行計画最適化について研究しています。また、これらの成果をもとにドローン制御用アプリケーションの開発も行います。


その他の最近のテーマ

 上記以外にも、様々な研究を行っています。研究業績修論/卒論タイトルのページを見てください。