Nios II C2H コンパイラに コンパイラに関するQ&A する 全般 Q: :Nios® II C-to-Hardware アクセラレーション・ アクセラレーション・コンパイラとは コンパイラとは何 とは何ですか? ですか? ® A:Altera Nios II C-to- Hardware アクセラレーション・コンパイラ(以下、Nios II C2H コンパイラ)とは、 Nios II ユーザ向けの生産性を高めるツールです。性能のボトルネックとなるC言語プログラムのサブル ーチンを自動的にハードウェア・アクセラレータに変換し、FPGAベースのNios II サブシステムに統合す ることで、エンベデッド・ソフトウェアの性能を著しく向上させます。詳細は、アルテラのWebサイト、 www.altera.com/c2h(日本語:www.altera.co.jp/c2h)に掲載されています。 Q: :Nios II C2H コンパイラを コンパイラを活用することで、 することで、開発者にはどのような 開発者にはどのような利点 にはどのような利点があります 利点があります か? A:これまで組込みシステム開発者が性能を向上させようとした場合、特にデザイン・サイクルの終盤で は、より高速なプロセッサを購入するか、サブルーチンをアセンブリ言語レベルで手作業により調整する しか方法がありませんでした。これらの手段は性能面で効果的だとしても、それに伴うコストと消費電力 の増大、開発の長期化、設計柔軟性の低下などとのトレードオフは往々にして受け入れ難いものです。 Nios II C2H コンパイラは、FPGAのリソースを活用して既存ソフトウェアの性能を向上させるという新た な選択肢を開発者に提供します。Nios II C2H コンパイラは、順次実行されるソフトウェア・コードよりもク ロック・サイクルあたりの演算数が多いハードウェア・アクセラレータを生成し、プロセッサのクロック周波 数を上げることなくシステムの性能を向上させることができます。また、アクセラレータの自動生成により、 アクセラレーション・ロジックを手作業で作成する必要がなくなり、開発期間を数週間から数分間に短縮し ます。 Q: :Nios II C2H コンパイラの コンパイラの動作の 動作の仕組みを 仕組みを教 えてください。 みを教えてください。 A:Nios II C2H コンパイラはANSI C の言語構造・要素を直接RTLにマッピングします。例えばCコード の加算演算子(+)はRTLの加算回路に変換され、ポインタの逆参照(間接参照)はメモリ・マスタに、 Whileループはステート・マシンに変換されます。この結果ハードウェア・アクセラレータが、クリアテキスト のVHDLまたはVerilog によるSOPC Builderコンポーネントとして生成されます。Nios II C2H コンパイラ ® はSOPC Builderが生成するAvalon インタコネクト・ファブリックを最大限に利用し、プロセッサのメモリ・ サブシステムへの広帯域なアクセスを提供します。ソフトウェアの観点から同一の機能を維持するため に、Nios II IDEにより必要なシステムとの接続やライブラリとのリンクをすべて行えます。 Q: :このツール このツールを ツールを提供する 提供する理由 する理由は 理由は何ですか? ですか? A:アルテラがNios II C2H コンパイラを提供する目的は以下の通りです。 • アルテラのシステム・レベル・インフラストラクチャを活用して、Nios II Cコードによる性能向上を 幅広いアプリケーションに提供する • 近年増加している、プロセッシング・プラットフォームにFPGAを採用する組込みシステム開発者 からの、性能向上に対するニーズに応える • ハードウェア・アクセラレーションのロジック作成を簡素化するためのツールを求める、多くの Nios II プロセッサ・ユーザの声に応える • FPGA特有の柔軟性という利点を活用し、それを開発サイクル後期において発生した変更に応 用する手段を開発者に提供する Q: :Nios IIプロセッサ プロセッサとは プロセッサとは何 とは何ですか? ですか? A:Nios II エンベデッド・プロセッサは、プログラマブル・ロジックとsystem-on-a-programmable-chip (SOPC)の統合に最適化された、汎用32ビットRISC CPUです。これまでに1万5,000個を超える開発キ ットが出荷されており、世界の上位20社に入るOEM企業にも採用されています。Niosアーキテクチャは 現在最も支持されているコンフィギュレーション可能なソフト・プロセッサです。 Nios II C2H コンパイラ Press FAQ Q: :SOPC Builderシステム システム開発 ですか? システム開発ツール 開発ツールとは ツールとは何 とは何ですか? A:SOPC Builderは、プロセッサ、周辺回路、メモリを基盤としたシステムを構築する強力なシステム開 発ツールです。SOPC Builderを活用することで、従来の手動による統合作業より、はるかに短い期間で 完 全 な System On a Programmable Chip (SOPC ) を 定 義 、 生 成 で き ま す 。 SOPC Builder は ® Quartus II 専用のソフトウェア・ツールで、すべてのアルテラ・ユーザに提供されています。SOPC Builderは、設計者がグラフィカル・ユーザ・インタフェース(GUI)を使用してシステム・コンポーネントを指 定すると、自動的にインタコネクト・ロジックを生成します。SOPC Builderはすべてのシステム・コンポー ネントを定義するHDLファイルと、すべてのコンポーネントを結びつける最上位HDLデザイン・ファイルを 出力します。 SOPC Builderの機能は以下の通りです。 • • • • SM アルテラまたはアルテラ・メガファンクション・パートナ・プログラム(AMPP )参加パートナ企業 が提供する既存のIPを統合 ユーザが作成した、再利用可能な独自のカスタム・コンポーネントをシステムに統合可能 システムごとの要件に合わせて最適化されたインタコネクト・ファブリックを構築する、HDL(ハー ドウェア記述言語)を生成 システム・テストベンチ一式を出力 Q: :Avalon インタコネクト・ インタコネクト・ファブリックとは ファブリックとは何 とは何ですか? ですか? A:Avalon インタコネクト・ファブリックは、SOPC Builderによって自動的に生成されるノンブロッキング接 続です。同時に発生する複数のマスタ/スレーブ・トランザクションをサポートするため、従来の共有バス 構造と比較してシステム全体の性能を大幅に向上させます。Avalon インタコネクト・ファブリックは最小 限のFPGAリソースで、以下の機能をサポートします。 • • • • • • • • • 同時マルチ・マスタ動作 最大4ギガバイトのアドレス空間 同期インタフェース アドレス・デコード回路の内蔵 レイテンシを考慮したリードおよびライト転送 ストリーミング・トランザクション ダイナミックにサイズ設定可能なペリフェラル・インタフェース 複数のクロック・ドメイン パイプライン動作 Q: :Nios II C2H コンパイラは 設計ツール コンパイラは汎用C-to-gates設計 汎用 設計ツールですか ツールですか? ですか? A:いいえ。Nios II C2H コンパイラは、ユーザが指定したNios II Cコード・ファンクションのみをアクセラレ ートするために設計されています。Cコード・アプリケーション全体をハードウェア設計に変換することを目 的にしていません。 Q: :Nios II C2H コンパイラは コンパイラはアルテラの アルテラのNios II プロセッサ以外 プロセッサ以外にも 以外にも使用 にも使用できますか 使用できますか? できますか A:いいえ。本ツールは現在、Nios II プロセッサのみをサポートしています。 Q: : Nios II C2H コンパイラと におけるアルテラ パートナとの コンパイラと、ESLにおける におけるアルテラEDAパートナ アルテラ パートナとの間 との間には、 には、どのよ うな関係 うな関係がありますか 関係がありますか? がありますか? A:Nios II C2H コンパイラは、設計にハードウェア・アクセラレータを追加によりソフトウェアの性能の向 上を望むNios II 開発者を支援します。アルテラのESL(エレクトロニック・システム・レベル)パートナは、 一般的なCベースの設計フローと、ハードウェア・アクセラレーションによるNios II コードのアクセラレー 2 Nios II C2H コンパイラ Press FAQ ションのどちらにも役立つツールを提供しています。これらのESLツールはFPGA設計者に、コード記述 法、ハードウェア・スケジューリング、効率性、システム設計フローにおける選択肢を提供します。C2H コ ンパイラはNios II ベースのシステム開発者に、アルテラESLパートナによる既存ソリューションを補完す る新たな選択肢を提供します。 Q: :アルテラの パートナのうち に対応した アルテラのEDAパートナ パートナのうち、 のうち、SOPC Builderに 対応したコンポーネ したコンポーネント コンポーネントを ントを提供し 提供し ている企業 ている企業はどこですか 企業はどこですか? はどこですか? A:現在、 Celoxica社とImpulse Accelerated Technologies社のツールで、C言語コードからSOPC Builder 対応のIPコアを生成することができます。アルテラが自社のアプリケーション・プログラミング・イ ンタフェース(API)をパートナに公開したことで、今後他のESLパートナによるサポートが促進されるもの と大いに期待しています。 Q: :Nios II C2H コンパイラは ファミリで コンパイラは、どのFPGAファミリ どの ファミリでサポートされ サポートされますか されますか? ますか? ® A:Nios II C2H コンパイラはNios II プロセッサと同様に、Cyclone™ FPGAシリーズ 、Stratix FPGA ® シリーズ、およびHardCopy ストラクチャードASICをサポートします。 Nios II C2H コンパイラによる コンパイラによる開発 による開発 Q:「 :「ハードウェア :「ハードウェア・ ハードウェア・アクセラレータ」 アクセラレータ」とはどういう とはどういう意味 どういう意味で 意味ですか? すか? A:ハードウェア・アクセラレータとは、エンベデッド・ソフトウェア・アプリケーションから特定のタスクをオフ ロードするために設計された、専用ロジック・ブロックです。このアクセラレータはVerilogまたはVHDLに よって記述されます。汎用CPUによる処理と異なり、機能が固定されたハードウェア回路として実装する ことで、多岐にわたる複雑な演算操作をより高速かつ効率的に実行することができます。 Q: :Nios II C2H コンパイラは コンパイラは、ANSI C 言語構造・ 言語構造・要素の 要素の何をサポートしていますか サポートしていますか? していますか? A:Nios II C2H コンパイラはANSI C規格をサポートしており、すべてのデータ・タイプ、演算子、制御フロ ーおよびループ構造、マクロ、ファンクション・コール、ポインタ配列アクセスなどを含みます。 Q: :Nios II C2H コンパイラが C 言語構造・ コンパイラがサポートしていない サポートしていないANSI していない 言語構造・要素は 要素は存在しま 存在しま すか? すか? A:最初に出荷されるNios II C2H コンパイラは、浮動小数点演算、再帰ルーチン、GOTO/LABEL文 はサポートしていません。 Q: :Nios II C2H コンパイラにより コンパイラにより、 により、どのような性能 どのような性能向上 性能向上を 向上を期待できますか 期待できますか? できますか? A:得られる結果は、アルゴリズムの実装、コーディング・スタイルを含む複数の要因に大きく依存します が、Nios II C2H コンパイラはアクセラレーションなしのソフトウェアに比べ、10~45倍の性能向上を実現 します。 Q: :Nios II C2H コンパイラはどの コンパイラはどの程度 はどの程度の 程度の規模の 規模のロジックを ロジックを生成しますか 生成しますか? しますか?設計全体の 設計全体の サイズにはどの サイズにはどの程度 にはどの程度の 程度の影響がありますか 影響がありますか? がありますか? A:性能の向上とロジック使用量の増加はトレードオフの関係にあります。演算アルゴリズムの多くは FPGA上のハードウェアにうまく変換されますが、Nios II C2H コンパイラが生成するロジックは、入力 されるCファンクションのコーディング・スタイルに大きく依存します。最良の結果を得るためには、 コー ディング・スタイルと使用ガイドラインの詳細が記載されたNios II リタラチャのページをご覧ください。 Q: :一つの設計 つの設計に 設計に複数の 複数のアクセラレータを アクセラレータを組み込むことはできますか? むことはできますか? 3 Nios II C2H コンパイラ Press FAQ A:できます。設計に組み込めるアクセラレータ数は、利用するFPGAデバイスの容量によって上限が決 まります。現実的には、性能上のボトルネックとなっていて、かつアクセラレーションの候補として理想的 なソフトウェア・サブルーチンの数は、さほど多くありません。 Q: :Nios II C2H コンパイラを コンパイラを利用するために 利用するためにコード するためにコードを コードを書き換える必要 える必要がありますか 必要がありますか? がありますか? A:Nios II C2H コンパイラを利用するためにコードを書き換える必要はありませんが、標準的な従来のC ソフトウェアの記述は、ハードウェアへの変換に最適でない場合もあります。Nios II C2H コンパイラは、 どのANSI Cソフトウェア・コードでもハードウェアに変換できますが、使用ガイドラインで推奨されている コーディング・スタイルに従うことで、結果は大幅に向上します。 Q: : 開発者は 開発者は アルゴリズムの アルゴリズム の実装先を 実装先 をハードウェアと ハードウェアと ソフトウェアの ソフトウェアの 間で変更できます 変更できます か? A:できます。Nios II IDEでは、アクセラレイテッド・ファンクション・ビューから機能の追加や削除を容易に 行うことができます。アクセラレーションの対象とするソフトウェア・ルーチンを選択した後も、開発者はア プリケーションをソフトウェア実装とハードウェア実装のどちらで実行するか選択できます。この機能は、 Nios II C2H コンパイラが生成したハードウェア・アクセラレータと、オリジナルのソフトウェア・アルゴリズ ムの機能が同一であることを検証する際によく使用されます。 Q: :Nios II C2H コンパイラを コンパイラを使用するには 使用するには、 デザイン・ソフトウェアが ソフトウェアがイン するには、Quartus® II デザイン・ ストールされている ストールされている必要 されている必要がありますか 必要がありますか? がありますか? A:はい、必要です。Nios II C2H コンパイラは、アプリケーション内の特定ソフトウェア・ルーチンを置き 換えるRTLコードを生成します。このRTLコードはSOPC BuilderによってNios II システムに組み込まれ、 Quartus II ソフトウェアによってFPGAへの合成と適合を行います。そのため、これらはいずれも必須の コ ン ポ ー ネ ン ト で す 。 Quartus II ソ フ ト ウ ェ ア は 、 www.altera.com/download ( 日 本 語 : www.altera.co.jp/download)からダウンロードできます。 出荷時期と 出荷時期とライセンス販売 ライセンス販売 Q: :Nios II C2H コンパイラの コンパイラの出荷開始はいつですか 出荷開始はいつですか? はいつですか? A:Nios II C2H コンパイラは2005年10月からベータ・カスタマに出荷されており、製品の正式リリースは 2006年5月を予定しています。 Q: :開発者は 開発者はNios II C2H コンパイラをどのように ンパイラをどのように入手 をどのように入手できますか 入手できますか? できますか? A:Nios II C2H コンパイラは、Nios II IDEに統合されたプラグインとして提供されます。Nios II IDEは Nios II エンベデット・デザイン・スイート (Nios II EDS) に含まれています。Nios II エンベデット・デザイ ン・スイートにはすべてのNios II 開発キットとQuartus II デザイン・ソフトウェアも含まれ、 www.altera.com/Niosdownload(日本語:www.altera.co.jp/Niosdownload)からダウンロードできます。 Q: :Nios II C2H コンパイラの コンパイラの価格はいくらですか 価格はいくらですか? はいくらですか? A:Nios II C2H コンパイラは、単体でのライセンスは米国販売価格2,995ドルです。前提として、Nios II サブスクリプションが有効であることが必要で、こちらは単体でのライセンスは米国販売価格495ドルで す。Nios II C2H コンパイラのライセンスには12ヶ月のアップデートが含まれており、年間メンテナンスの サブスクリプションは1 ライセンスあたり米国販売価格1,495ドルです。 Q: :Nios II C2H コンパイラはどのような コンパイラはどのようなライセンス はどのようなライセンス体系 ライセンス体系を 体系を採用していますか 採用していますか? していますか? A:Nios II C2H コンパイラを購入した開発者には、永久ライセンスが供与され、Nios II C2H コンパイラ で生成されたハードウェア・アクセラレータを含むシステムを開発、出荷することができます。このロイヤ 4 Nios II C2H コンパイラ Press FAQ リティ・フリー・ライセンスは、アルテラのFPGAまたはストラクチャードASICデバイスの設計で利用できま す。 Q: :Nios II C2H コンパイラを コンパイラを購入する 購入する前 する前に試すことはできますか? すことはできますか? A:はい、できます。Nios II C2H コンパイラの無償評価版については、アルテラの販売代理店までお問 い合わせください。 Q: :Nios II C2H コンパイラを コンパイラを使用するには 使用するには、 するには、Nios II のライセンス・ ライセンス・シートを シートを購入しなけ 購入しなけ ればいけませんか ればいけませんか? A:Nios II C2H コンパイラのライセンスを得るには、Nios II のサブスクリプションが有効期限内である必 要があります。 Q: :Nios II C2H コンパイラのような ベンダからも コンパイラのようなツール のようなツールは ツールは他のFPGAベンダ ベンダからも提供 からも提供されていま 提供されていま すか? ? すか A:いいえ。現時点では、アルテラが唯一、FPGAに搭載されたエンベデッド・プロセッサ上でCコード・アク セラレーションを実行する統合ツールを提供しています。 Q: :アルテラは アルテラは、Nios II C2H コンパイラを コンパイラを社内で 社内で開発し 開発したのですか? たのですか? A:はい。アルテラは、Nios II C2H コンパイラを社内で開発しました。開発には数年かけており、この独 自技術に含まれるいくつかの技術は特許を申請中です。 以上 5
© Copyright 2024 ExpyDoc