アルテラの Quartus® II デザイン・ソフトウェアには SOPC Builder システム・レベル・デザイン・ツールが含まれており、オプションの DSP Builder システム・レベル・デザイン・ツールをサポートしています。 システム・レベル・デザイン・ツールを使用することにより、SOPC (system-on-a-programmable-chip) アーキテクチャの迅速なデザインと評価、および生産性を向上するより高い抽象化レベルでの設計が可能になります。
SOPC Builder のデザイン・フロー
Quartus II SOPC Builder の特長
- 標準 IP とカスタム・ロジックを統合
- 内部接続を自動構築
- システム内のコンポーネントに基づいてソフトウェア開発キットを作成
SOPC Builder のコンポーネントには、ソフトコア・エンベデッド・プロセッサおよびペリフェラル(IP (Intellectual Property) コアやカスタマ作成のペリフェラルを含む)があり、また ASSP や ASIC などのオフチップ・デバイスやFPGA外部のエンベデッド・プロセッサとのインタフェースがあります。 SOPC Builder は、ヘッダ・ファイルやペリフェラル・ドライバをエクスポートすることによって、アプリケーション・ソフトウェアの開発を加速します。 SOPC Builder により、設計者はシステム統合作業に要するエンジニアリング時間を省略できるので、システムの主要コンポーネントの設計に集中して、より迅速にアプリケーションの開発を行うことができます。図 1 は、SOPC Builder によるハイレベル・デザイン・フローを示しています。
図.1 SOPC Builder のデザイン・フロー

SOPC Builder の特長
SOPC Builder を使用することで、間違い易い手作業によるシステム統合作業にかかる時間を削減でき、システム・デザインとその差別化に集中できます。SOPC Builderには以下の利点があります。
- 迅速な「Time-To-Market」
- 使いやすさ
- デザインの再利用
表 1 に SOPC Builder の特長をまとめます。
| 表 1. SOPC Builder の特長 | |
| 特長 | 説明 |
|---|---|
| デザイン・コンポーネントの選択とパートナの選択 |
標準 IP と独自のカスタム SOPC Builder コンポーネントのプッシュボタン統合が可能。次のような標準 IP があります。
|
| ハードウェア記述言語 (HDL) とインタコネクト・ファブリック自動生成 | 各システムの要件に応じて最適化されたインタコネクト・ファブリックを構築し、合成可能なHDL を生成します。SOPC Builder は次のような統合に関する作業を自動的に実行します。
|
| カスタム・ロジック統合 | 独自のカスタム SOPC Builder コンポーネントを作成できます。SOPC Builder システム・インタコネクト・ファブリック用に設計されたコンポーネントは再利用可能で、ボタンをクリックするだけでどの SOPC Builder プロジェクトにもドロップできます。 |
| テストベンチの生成 | 生成されたシステムをテストするテストベンチを出力します。 |
| ソフトウェア開発キット (SDK)生成 |
生成されるシステムのメモリ・マップとコンポーネントに基づいて、カスタム SDK を出力します。システムが更新されるごとに新しい SDK を生成し、迅速にソフトウェア開発者に渡すことができます。 |
DSP Builder と SOPC Builder の統合
アルテラの DSP Builder を使用することで、The MathWorks 社の MATLAB /Simulink ソフトウェア上で、高い抽象化レベルのアルゴリズム的 DSP デザインを作成し、ボタンをクリックすることで、HDL ファイルにデザインをエクスポートできます。DSP Builder には SOPC Builder 対応の DSP ブロックを生成する機能があり、この機能で生成した DSP ブロックは、SOPC Builder を使って SOPC システム・デザインに容易に組み込むことができます。図 2 は、DSP Builder によるハイレベル・デザイン・フローを示しています。
図 2. DSP Builder のデザイン・フロー
ハードウェアとソフトウェアのコ・シミュレーション
システム・レベル・デザイン・ツールを使用することで、ハードウェアのプロトタイプを作成前のデザイン・プロセスの初期段階で、テストベンチ・ファイルとシミュレーション・モデルを通して、ハードウェアとソフトウェア間のやり取りをテストすることができます。また、迅速なシステム生成やハードウェアとソフトウェアのコ・シミュレーションを使用して、ハードウェアに実装する機能とエンベデッド・ソフトウェアに実装する機能とのトレードオフ解析を実行することも可能です。
