システム・レベルの機能をワンチップに集積する手法として、FPGAの活用が注目されている。とくに、高性能プロセッサを内蔵したSoC FPGAが登場したこともあり、その動きに弾みを付ける。こうしたSoC FPGAを有効活用するには、ハードウェアの開発環境と並んで、ソフトウェア開発を容易にするツールのサポートが重要となる。本稿ではソフトウェアの開発効率を高めることができる「仮想プロトタイピング環境」など、最新のソフトウェア開発環境について紹介する。
前編でも述べたように、アルテラはARMベースの「SoC FPGA」ファミリとその「シミュレーション・モデル」を2011年10月に発表した(プレスリリース1/プレスリリース2/EE Times Japanニュース)。今回のSoC FPGAファミリは、28nm世代のローエンドファミリ「Cyclone® V」およびミッドレンジファミリ「Arria® V」をベースとした製品である。いずれも最大800MHzで動作するデュアルコア構成の「Cortex-A9 MPCore」プロセッサを中核としたSoCを構成することができる。NEONメディア・プロセッサ・エンジン、単精度/倍精度浮動小数点演算回路、L1およびL2キャッシュ、ECC付きメモリ・コントローラ(DDR2/3、Mobile DDR、LPDDR2、NANDフラッシュなど)やUSB 2.0などの汎用ペリフェラルといった周辺回路も含まれている。
これ以外にも、Qsysには次世代SoC FPGA設計に必要な機能がいくつか追加されている。その1つが、階層構造設計のサポートである。この機能により、IP機能のコレクションをサブシステムとして再利用しやすくなり、大規模なシステム開発やスケーラブルなシステム拡張がこれまで以上に容易に行えるようになる。
また、業界標準のバス・インタフェースをサポートしていることである。最新のQuartus II開発ソフトウェアでは、アルテラがこれまでサポートしてきたインターコネクト・ファブリック「Avalon」に加えて、「AMBA AXI」など、業界標準のオンチップバスにも対応しており、さまざまなバス仕様のIPコアをFPGA上で混載して利用することが可能となる。
ARMベースの「SoC FPGA」ファミリ向けソフトウェア開発環境としては、ARM社から提供されるエコシステムを利用することができる。それに加えて、SoC FPGAデバイスのハード・プロセッサ・システムをPC上で仮想化した「Virtual Target」の提供を新たに始めた(図1)。このVirtual Targetは、シノプシス社が既に供給している仮想プロトタイピング環境をベースとしたもので、開発ボードを置き換えてソフトウェア開発を実施することができるツールである。
Virtual Targetで最初に提供されるターゲット・ボードは、デュアルコアのARM Cortex-A9 MPCoreプロセッサとその周辺機能から構成される「ハード・プロセッサ・システム」をモデル化したものとなる。DDR SDRAMやフラッシュメモリ、バーチャルI/Oなど、ボード・レベルのコンポーネントもモデル化されて内蔵されている。
このシミュレーション・モデルは、SoC FPGAデバイスと同等の機能を備えており、かつバイナリレベルおよびレジスタレベルでの互換性を持つ。また、Virtual Targetのモデル上で、「Linux」や「VxWorks」といったOSを起動させることもできる。SoC FPGAに実装されたハードIPに対するデバイス・ドライバも含まれているため、実機が完成していない状態でも、Virtual Targetを用いれば容易にソフトウェアの開発と検証が可能となる。しかも、Virtual Target上で開発したソフトウェアを、そのまま実機に移行させることができる。
また、Virtual Targetの拡張機能「FPGAイン・ザ・ループ」を追加提供する予定である。このFPGAイン・ザ・ループを利用すれば、FPGA上のユーザーIP用のドライバ開発やハード・プロセッサ・システムとFPGAロジックとの協調検証をモ行うことができる。
Virtual TargetとFPGAイン・ザ・ループを組み合わせて利用すれば、最終的にハードウェアの完成を待たなくても、組み込みソフトウェアの開発を先行して進めることができる。このような開発ツールを利用できることは、タイムツーマーケットが強く要求される最近の組み込みシステム開発において、大きなメリットといえよう。なお、Virtual Targetの操作については、アルテラのウェブサイトで公開されているデモ動画でも確認することができる 。
第27回 Altera社、28nmのFPGA製品群を拡充 さまざまなシステムの要求に対応
第30回 「システム設計者の選択肢を広げるSoC FPGA」(前編)
第31回 「システム設計者の選択肢を広げるSoC FPGA」(後編)
第41回 システムの要求に応える28nmFPGA(その1)〜高速シリアル伝送設計のためのトランシーバ・ツール・キット〜
第42回 システムの要求に応える28nmFPGA(その2)〜28nmFPGAデザインにおける消費電力の最適化〜
第43回 組み込みシステム設計者のニーズに応える最新SoC FPGA(前編)
第44回 組み込みシステム設計者のニーズに応える最新SoC FPGA(後編)
第45回 最先端の28nmFPGAと最新のエンベデッド・ソリューション 〜ET2011リポート(前編)〜
第46回 最先端の28nmFPGAと最新のエンベデッド・ソリューション 〜ET2011リポート(後編)〜
第47回 システムの要求に応える28nm FPGA(その3) 〜パーシャル・リコンフィギュレーションの設計〜
第48回 こんなところにCPLD――産業用途でみるCPLD活用事例(前編)
関連情報
●次世代組み込みシステム向け、カスタマイズ可能なARM ベース SoC FPGA
●ソフトウェアの開発を今日から開始できる SoC FPGA Virtual Target
●「SoC FPGA Virtual Targetを活用した迅速なソフトウェア開発」
Copyright © ITmedia, Inc. All Rights Reserved.
提供:日本アルテラ株式会社
アイティメディア営業企画/制作:EDN Japan 編集部/掲載内容有効期限:2014年3月31日
FPGAについて、基礎からわかりやすく解説しています。
初級者から熟練者まで、FPGA設計技術を向上させたいすべての人のためのトレーニング講座。
オンライン講座は視聴無料です。